@parcel/packager-react-static 2.13.4-canary.3410 → 2.13.4-canary.3414

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.
@@ -160,6 +160,7 @@ var _default = exports.default = new (_plugin().Packager)({
160
160
  }
161
161
  let meta = pageMeta((0, _nullthrows().default)(bundle.getMainEntry()).meta);
162
162
  let props = {
163
+ key: 'page',
163
164
  pages,
164
165
  currentPage: {
165
166
  url: (0, _utils().urlJoin)(bundle.target.publicUrl, bundle.name),
@@ -171,10 +172,12 @@ var _default = exports.default = new (_plugin().Packager)({
171
172
  let bootstrapModules = [];
172
173
  let entry;
173
174
  for (let b of bundleGraph.getReferencedBundles(bundle, {
174
- includeInline: false
175
+ includeInline: false,
176
+ includeIsolated: false
175
177
  })) {
176
178
  if (b.type === 'css') {
177
179
  resources.push(React.createElement('link', {
180
+ key: b.id,
178
181
  rel: 'stylesheet',
179
182
  href: (0, _utils().urlJoin)(b.target.publicUrl, b.name),
180
183
  precedence: 'default'
@@ -182,6 +185,7 @@ var _default = exports.default = new (_plugin().Packager)({
182
185
  } else if (b.type === 'js' && b.env.isBrowser()) {
183
186
  bootstrapModules.push((0, _utils().urlJoin)(b.target.publicUrl, b.name));
184
187
  resources.push(React.createElement('script', {
188
+ key: b.id,
185
189
  type: 'module',
186
190
  async: true,
187
191
  src: (0, _utils().urlJoin)(b.target.publicUrl, b.name)
@@ -248,7 +252,7 @@ async function loadBundleUncached(bundle, bundleGraph, getInlineBundleContents)
248
252
  let packagedBundle = await (0, _nullthrows().default)(packagingBundles.get(entryBundle));
249
253
  let contents = await (0, _utils().blobToString)(packagedBundle.contents);
250
254
  contents = `module.exports = ${contents}`;
251
- return [[entryBundle.id, [(0, _nullthrows().default)(entryBundle.getMainEntry()), contents]]];
255
+ return [[entryBundle.id, [entryBundle, (0, _nullthrows().default)(entryBundle.getMainEntry()), contents]]];
252
256
  });
253
257
  } else if (entryBundle) {
254
258
  queue.add(async () => {
@@ -260,20 +264,28 @@ async function loadBundleUncached(bundle, bundleGraph, getInlineBundleContents)
260
264
  }
261
265
  } else if (node.type === 'asset') {
262
266
  let asset = node.value;
263
- queue.add(async () => [[asset.id, [asset, await asset.getCode()]]]);
267
+ queue.add(async () => [[asset.id, [bundle, asset, await asset.getCode()]]]);
264
268
  }
265
269
  });
270
+ for (let b of bundleGraph.getReferencedBundles(bundle)) {
271
+ queue.add(async () => {
272
+ let {
273
+ assets: subAssets
274
+ } = await loadBundle(b, bundleGraph, getInlineBundleContents);
275
+ return Array.from(subAssets);
276
+ });
277
+ }
266
278
  let assets = new Map((await queue.run()).flatMap(v => v));
267
279
  let assetsByFilePath = new Map();
268
280
  let assetsByPublicId = new Map();
269
- for (let [asset] of assets.values()) {
281
+ for (let [, asset] of assets.values()) {
270
282
  assetsByFilePath.set(getCacheKey(asset), asset.id);
271
283
  assetsByPublicId.set(bundleGraph.getAssetPublicId(asset), asset.id);
272
284
  }
273
285
 
274
286
  // Load an asset into the module system by id.
275
287
  let loadAsset = id => {
276
- let [asset, code] = (0, _nullthrows().default)(assets.get(id));
288
+ let [bundle, asset, code] = (0, _nullthrows().default)(assets.get(id));
277
289
  let cacheKey = getCacheKey(asset);
278
290
  let cachedModule = moduleCache.get(cacheKey);
279
291
  if (cachedModule) {
@@ -348,9 +360,9 @@ async function loadBundleUncached(bundle, bundleGraph, getInlineBundleContents)
348
360
  let {
349
361
  assets: subAssets
350
362
  } = await loadBundle(bundle, bundleGraph, getInlineBundleContents);
351
- for (let [id, [asset, code]] of subAssets) {
363
+ for (let [id, [bundle, asset, code]] of subAssets) {
352
364
  if (!assets.has(id)) {
353
- assets.set(id, [asset, code]);
365
+ assets.set(id, [bundle, asset, code]);
354
366
  assetsByFilePath.set(getCacheKey(asset), asset.id);
355
367
  assetsByPublicId.set(bundleGraph.getAssetPublicId(asset), asset.id);
356
368
  }
@@ -413,7 +425,6 @@ async function loadBundleUncached(bundle, bundleGraph, getInlineBundleContents)
413
425
  };
414
426
  }
415
427
  function runModule(code, filename, id, require, parcelRequire) {
416
- // code = code.replace(/import\((['"].*?['"])\)/g, (_, m) => `parcelRequire.load(${m[0] + m.slice(3)})`);
417
428
  let moduleFunction = _vm().default.compileFunction(code, ['exports', 'require', 'module', '__dirname', '__filename', 'parcelRequire'], {
418
429
  filename
419
430
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@parcel/packager-react-static",
3
- "version": "2.13.4-canary.3410+9d4799570",
3
+ "version": "2.13.4-canary.3414+ee9c3e4c3",
4
4
  "license": "MIT",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -17,16 +17,16 @@
17
17
  "source": "src/ReactStaticPackager.js",
18
18
  "engines": {
19
19
  "node": ">= 16.0.0",
20
- "parcel": "^2.0.0-canary.1785+9d4799570"
20
+ "parcel": "^2.0.0-canary.1789+ee9c3e4c3"
21
21
  },
22
22
  "dependencies": {
23
- "@parcel/node-resolver-core": "3.4.4-canary.3410+9d4799570",
24
- "@parcel/plugin": "2.0.0-canary.1787+9d4799570",
25
- "@parcel/rust": "2.13.4-canary.3410+9d4799570",
26
- "@parcel/types": "2.0.0-canary.1787+9d4799570",
27
- "@parcel/utils": "2.0.0-canary.1787+9d4799570",
23
+ "@parcel/node-resolver-core": "3.4.4-canary.3414+ee9c3e4c3",
24
+ "@parcel/plugin": "2.0.0-canary.1791+ee9c3e4c3",
25
+ "@parcel/rust": "2.13.4-canary.3414+ee9c3e4c3",
26
+ "@parcel/types": "2.0.0-canary.1791+ee9c3e4c3",
27
+ "@parcel/utils": "2.0.0-canary.1791+ee9c3e4c3",
28
28
  "nullthrows": "^1.1.1",
29
29
  "rsc-html-stream": "^0.0.4"
30
30
  },
31
- "gitHead": "9d4799570916170906aca646f5c55353f8e19fc5"
31
+ "gitHead": "ee9c3e4c3f4054e66bded33dd92c521e19da6af3"
32
32
  }
@@ -124,6 +124,7 @@ export default (new Packager({
124
124
 
125
125
  let meta = pageMeta(nullthrows(bundle.getMainEntry()).meta);
126
126
  let props: PageProps = {
127
+ key: 'page',
127
128
  pages,
128
129
  currentPage: {
129
130
  url: urlJoin(bundle.target.publicUrl, bundle.name),
@@ -137,10 +138,12 @@ export default (new Packager({
137
138
  let entry;
138
139
  for (let b of bundleGraph.getReferencedBundles(bundle, {
139
140
  includeInline: false,
141
+ includeIsolated: false,
140
142
  })) {
141
143
  if (b.type === 'css') {
142
144
  resources.push(
143
145
  React.createElement('link', {
146
+ key: b.id,
144
147
  rel: 'stylesheet',
145
148
  href: urlJoin(b.target.publicUrl, b.name),
146
149
  precedence: 'default',
@@ -150,6 +153,7 @@ export default (new Packager({
150
153
  bootstrapModules.push(urlJoin(b.target.publicUrl, b.name));
151
154
  resources.push(
152
155
  React.createElement('script', {
156
+ key: b.id,
153
157
  type: 'module',
154
158
  async: true,
155
159
  src: urlJoin(b.target.publicUrl, b.name),
@@ -235,7 +239,7 @@ async function loadBundleUncached(
235
239
  ) => Async<{|contents: Blob|}>,
236
240
  ) {
237
241
  // Load all asset contents.
238
- let queue = new PromiseQueue<Array<[string, [Asset, string]]>>({
242
+ let queue = new PromiseQueue<Array<[string, [NamedBundle, Asset, string]]>>({
239
243
  maxConcurrent: 32,
240
244
  });
241
245
  bundle.traverse(node => {
@@ -259,7 +263,7 @@ async function loadBundleUncached(
259
263
  return [
260
264
  [
261
265
  entryBundle.id,
262
- [nullthrows(entryBundle.getMainEntry()), contents],
266
+ [entryBundle, nullthrows(entryBundle.getMainEntry()), contents],
263
267
  ],
264
268
  ];
265
269
  });
@@ -275,23 +279,36 @@ async function loadBundleUncached(
275
279
  }
276
280
  } else if (node.type === 'asset') {
277
281
  let asset = node.value;
278
- queue.add(async () => [[asset.id, [asset, await asset.getCode()]]]);
282
+ queue.add(async () => [
283
+ [asset.id, [bundle, asset, await asset.getCode()]],
284
+ ]);
279
285
  }
280
286
  });
281
287
 
282
- let assets = new Map<string, [Asset, string]>(
288
+ for (let b of bundleGraph.getReferencedBundles(bundle)) {
289
+ queue.add(async () => {
290
+ let {assets: subAssets} = await loadBundle(
291
+ b,
292
+ bundleGraph,
293
+ getInlineBundleContents,
294
+ );
295
+ return Array.from(subAssets);
296
+ });
297
+ }
298
+
299
+ let assets = new Map<string, [NamedBundle, Asset, string]>(
283
300
  (await queue.run()).flatMap(v => v),
284
301
  );
285
302
  let assetsByFilePath = new Map<string, string>();
286
303
  let assetsByPublicId = new Map<string, string>();
287
- for (let [asset] of assets.values()) {
304
+ for (let [, asset] of assets.values()) {
288
305
  assetsByFilePath.set(getCacheKey(asset), asset.id);
289
306
  assetsByPublicId.set(bundleGraph.getAssetPublicId(asset), asset.id);
290
307
  }
291
308
 
292
309
  // Load an asset into the module system by id.
293
310
  let loadAsset = (id: string) => {
294
- let [asset, code] = nullthrows(assets.get(id));
311
+ let [bundle, asset, code] = nullthrows(assets.get(id));
295
312
  let cacheKey = getCacheKey(asset);
296
313
  let cachedModule = moduleCache.get(cacheKey);
297
314
  if (cachedModule) {
@@ -373,9 +390,9 @@ async function loadBundleUncached(
373
390
  bundleGraph,
374
391
  getInlineBundleContents,
375
392
  );
376
- for (let [id, [asset, code]] of subAssets) {
393
+ for (let [id, [bundle, asset, code]] of subAssets) {
377
394
  if (!assets.has(id)) {
378
- assets.set(id, [asset, code]);
395
+ assets.set(id, [bundle, asset, code]);
379
396
  assetsByFilePath.set(getCacheKey(asset), asset.id);
380
397
  assetsByPublicId.set(bundleGraph.getAssetPublicId(asset), asset.id);
381
398
  }
@@ -453,7 +470,6 @@ function runModule(
453
470
  require: (id: string) => any,
454
471
  parcelRequire: (id: string) => any,
455
472
  ) {
456
- // code = code.replace(/import\((['"].*?['"])\)/g, (_, m) => `parcelRequire.load(${m[0] + m.slice(3)})`);
457
473
  let moduleFunction = vm.compileFunction(
458
474
  code,
459
475
  [