@astralsight/astroforge-rsbuild-plugin 0.0.9 → 0.0.10

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.
Files changed (2) hide show
  1. package/dist/index.mjs +18 -2
  2. package/package.json +2 -2
package/dist/index.mjs CHANGED
@@ -7,10 +7,25 @@ import { parse } from "@babel/parser";
7
7
  function collectAssets(root, document) {
8
8
  const assets = /* @__PURE__ */ new Map();
9
9
  addAsset(root, document.manifest.icon, assets);
10
+ collectCommonAssets(root, assets);
10
11
  for (const page of Object.values(document.pages)) collectPageAssets(root, page, assets);
11
12
  for (const component of Object.values(document.components)) collectComponentAssets(root, component, assets);
12
13
  return [...assets.values()];
13
14
  }
15
+ function collectCommonAssets(root, assets) {
16
+ const commonRoot = resolve(root, "src", "common");
17
+ if (!existsSync(commonRoot)) return;
18
+ for (const file of walkFiles$1(commonRoot)) addAsset(root, `/${relative(resolve(root, "src"), file).split(sep).join("/")}`, assets);
19
+ }
20
+ function walkFiles$1(dir) {
21
+ const out = [];
22
+ for (const entry of readdirSync(dir, { withFileTypes: true })) {
23
+ const next = join(dir, entry.name);
24
+ if (entry.isDirectory()) out.push(...walkFiles$1(next));
25
+ else if (entry.isFile()) out.push(next);
26
+ }
27
+ return out;
28
+ }
14
29
  function collectPageAssets(root, page, assets) {
15
30
  collectNodeAssets(root, page.template, assets);
16
31
  collectStyleAssets(root, page.style, assets);
@@ -1637,7 +1652,8 @@ function defaultIrOutFile(root, cacheDir) {
1637
1652
  function createIrDocument(manifestInput, pages) {
1638
1653
  const routerPages = {};
1639
1654
  for (const page of pages) routerPages[page.route] = { component: page.component };
1640
- const source = manifestSource(manifestInput, pages[0].route, routerPages);
1655
+ const entry = typeof manifestInput.router === "object" && manifestInput.router !== null && !Array.isArray(manifestInput.router) && typeof manifestInput.router.entry === "string" && routerPages[manifestInput.router.entry] ? manifestInput.router.entry : pages[0].route;
1656
+ const source = manifestSource(manifestInput, entry, routerPages);
1641
1657
  return {
1642
1658
  ir_version: 1,
1643
1659
  manifest: {
@@ -1655,7 +1671,7 @@ function createIrDocument(manifestInput, pages) {
1655
1671
  design_width: manifestInput.config?.designWidth
1656
1672
  },
1657
1673
  router: {
1658
- entry: pages[0].route,
1674
+ entry,
1659
1675
  pages: routerPages
1660
1676
  },
1661
1677
  source
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@astralsight/astroforge-rsbuild-plugin",
3
- "version": "0.0.9",
3
+ "version": "0.0.10",
4
4
  "description": "AstroForge Plugin for RsBuild",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -38,7 +38,7 @@
38
38
  },
39
39
  "dependencies": {
40
40
  "@babel/parser": "^7.29.3",
41
- "@astralsight/astroforge-core": "^0.0.9"
41
+ "@astralsight/astroforge-core": "^0.0.10"
42
42
  },
43
43
  "scripts": {
44
44
  "build": "tsdown"