rasengan 1.0.0-beta.2 → 1.0.0-beta.4

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 (93) hide show
  1. package/lib/cli/dirname.js +0 -1
  2. package/lib/cli/index.js +2 -3
  3. package/lib/config/index.d.ts +18 -0
  4. package/lib/config/index.js +44 -5
  5. package/lib/config/type.d.ts +13 -1
  6. package/lib/config/type.js +0 -1
  7. package/lib/core/components/index.js +0 -1
  8. package/lib/core/index.js +0 -1
  9. package/lib/core/interfaces.js +0 -1
  10. package/lib/core/types.js +0 -1
  11. package/lib/decorators/index.js +0 -1
  12. package/lib/decorators/route.js +0 -1
  13. package/lib/decorators/router.js +0 -1
  14. package/lib/decorators/types.js +0 -1
  15. package/lib/entries/entry-client.js +0 -1
  16. package/lib/entries/entry-server.js +0 -1
  17. package/lib/hooks/index.js +0 -1
  18. package/lib/index.js +0 -1
  19. package/lib/routing/components/index.js +0 -1
  20. package/lib/routing/index.js +0 -1
  21. package/lib/routing/interfaces.js +0 -1
  22. package/lib/routing/types.js +0 -1
  23. package/lib/routing/utils/index.js +0 -1
  24. package/lib/server/functions/vercel/_rasengan/server/index.d.ts +2 -0
  25. package/lib/server/functions/vercel/_rasengan/server/index.js +91 -0
  26. package/lib/server/functions/vercel/api/index.js +1 -1
  27. package/lib/server/utils/createFetchRequest.js +0 -1
  28. package/lib/server/utils/getIp.js +0 -1
  29. package/lib/server/utils/handleError.js +0 -1
  30. package/lib/server/utils/index.js +0 -1
  31. package/lib/server/utils/log.js +0 -1
  32. package/package.json +19 -5
  33. package/server.js +1 -0
  34. package/tsconfig.json +1 -1
  35. package/tsconfig.lib.json +1 -1
  36. package/types/image.d.ts +44 -0
  37. package/vite.config.ts +27 -6
  38. package/lib/cli/dirname.js.map +0 -1
  39. package/lib/cli/index.js.map +0 -1
  40. package/lib/config/index.js.map +0 -1
  41. package/lib/config/type.js.map +0 -1
  42. package/lib/core/components/index.js.map +0 -1
  43. package/lib/core/index.js.map +0 -1
  44. package/lib/core/interfaces.js.map +0 -1
  45. package/lib/core/types.js.map +0 -1
  46. package/lib/decorators/index.js.map +0 -1
  47. package/lib/decorators/route.js.map +0 -1
  48. package/lib/decorators/router.js.map +0 -1
  49. package/lib/decorators/types.js.map +0 -1
  50. package/lib/entries/entry-client.js.map +0 -1
  51. package/lib/entries/entry-server.js.map +0 -1
  52. package/lib/hooks/index.js.map +0 -1
  53. package/lib/index.js.map +0 -1
  54. package/lib/routing/components/index.js.map +0 -1
  55. package/lib/routing/index.js.map +0 -1
  56. package/lib/routing/interfaces.js.map +0 -1
  57. package/lib/routing/types.js.map +0 -1
  58. package/lib/routing/utils/index.js.map +0 -1
  59. package/lib/server/functions/vercel/api/index.js.map +0 -1
  60. package/lib/server/utils/createFetchRequest.js.map +0 -1
  61. package/lib/server/utils/getIp.js.map +0 -1
  62. package/lib/server/utils/handleError.js.map +0 -1
  63. package/lib/server/utils/index.js.map +0 -1
  64. package/lib/server/utils/log.js.map +0 -1
  65. package/src/cli/dirname.ts +0 -7
  66. package/src/cli/index.ts +0 -134
  67. package/src/config/index.ts +0 -67
  68. package/src/config/type.ts +0 -76
  69. package/src/core/components/index.tsx +0 -95
  70. package/src/core/index.ts +0 -14
  71. package/src/core/interfaces.tsx +0 -129
  72. package/src/core/types.ts +0 -43
  73. package/src/decorators/index.ts +0 -2
  74. package/src/decorators/route.ts +0 -32
  75. package/src/decorators/router.ts +0 -30
  76. package/src/decorators/types.ts +0 -54
  77. package/src/entries/entry-client.tsx +0 -33
  78. package/src/entries/entry-server.tsx +0 -50
  79. package/src/hooks/index.ts +0 -0
  80. package/src/index.ts +0 -11
  81. package/src/routing/components/index.tsx +0 -125
  82. package/src/routing/index.ts +0 -23
  83. package/src/routing/interfaces.ts +0 -105
  84. package/src/routing/types.ts +0 -3
  85. package/src/routing/utils/index.tsx +0 -342
  86. package/src/server/functions/vercel/api/index.ts +0 -122
  87. package/src/server/functions/vercel/vercel.json +0 -12
  88. package/src/server/utils/createFetchRequest.ts +0 -40
  89. package/src/server/utils/getIp.ts +0 -37
  90. package/src/server/utils/handleError.ts +0 -36
  91. package/src/server/utils/index.ts +0 -15
  92. package/src/server/utils/log.ts +0 -115
  93. package/src/vite-env.d.ts +0 -1
@@ -3,4 +3,3 @@ import { dirname } from 'path';
3
3
  const __filename = fileURLToPath(import.meta.url);
4
4
  const __dirname = dirname(__filename);
5
5
  export default __dirname;
6
- //# sourceMappingURL=dirname.js.map
package/lib/cli/index.js CHANGED
@@ -63,11 +63,11 @@ program
63
63
  stdio: "inherit",
64
64
  });
65
65
  // Copying the vercel.json file to the root directory
66
- execa("cp", ["node_modules/rasengan/src/server/functions/vercel/vercel.json", "."], {
66
+ execa("cp", ["node_modules/rasengan/lib/server/functions/vercel/vercel.json", "."], {
67
67
  stdio: "inherit",
68
68
  });
69
69
  // Removing index.d.ts and index.js.map files from the api folder
70
- execa("rm", ["api/index.d.ts", "api/index.js.map"], {
70
+ execa("rm", ["api/index.d.ts"], {
71
71
  stdio: "inherit",
72
72
  });
73
73
  }
@@ -98,4 +98,3 @@ program
98
98
  });
99
99
  });
100
100
  program.parse(process.argv);
101
- //# sourceMappingURL=index.js.map
@@ -27,10 +27,28 @@ export declare const defineConfig: (loadedConfig: AppConfig) => {
27
27
  build: {
28
28
  external: string[];
29
29
  };
30
+ resolve: {
31
+ alias: {
32
+ find: string;
33
+ replacement: string;
34
+ }[];
35
+ };
30
36
  appType: string;
31
37
  };
32
38
  } | {
33
39
  reactStrictMode: boolean;
40
+ vite: {
41
+ optimizeDeps: {
42
+ exclude: string[];
43
+ };
44
+ appType: string;
45
+ resolve: {
46
+ alias: {
47
+ find: string;
48
+ replacement: string;
49
+ }[];
50
+ };
51
+ };
34
52
  };
35
53
  /**
36
54
  * Function to adapt the path for dev and prod
@@ -5,24 +5,50 @@
5
5
  */
6
6
  export const defineConfig = (loadedConfig) => {
7
7
  const { reactStrictMode, server, vite } = loadedConfig;
8
+ // Define default values for vite config coming from loadedConfig.vite
9
+ const defaultViteConfig = {
10
+ plugins: vite?.plugins || [],
11
+ optimizeDeps: {
12
+ exclude: vite?.optimizeDeps?.exclude || [],
13
+ },
14
+ css: {
15
+ postcss: vite?.css?.postcss || undefined,
16
+ },
17
+ build: {
18
+ external: vite?.build?.external || [],
19
+ },
20
+ resolve: {
21
+ alias: vite?.resolve?.alias || [],
22
+ },
23
+ };
8
24
  try {
9
25
  const config = {
10
26
  reactStrictMode: reactStrictMode === undefined ? true : reactStrictMode,
11
27
  server,
12
28
  vite: {
13
- plugins: vite?.plugins || [],
29
+ plugins: defaultViteConfig.plugins,
14
30
  optimizeDeps: {
15
31
  exclude: [
16
32
  "node:http",
17
33
  "node-fetch",
18
- ...(vite?.optimizeDeps?.exclude || []),
34
+ ...defaultViteConfig.optimizeDeps.exclude,
19
35
  ],
20
36
  },
21
37
  css: {
22
- postcss: vite?.css?.postcss || undefined,
38
+ postcss: defaultViteConfig.css.postcss,
23
39
  },
24
40
  build: {
25
- external: vite?.build?.external || [],
41
+ external: defaultViteConfig.build.external,
42
+ },
43
+ resolve: {
44
+ // concat two arrays
45
+ alias: [
46
+ {
47
+ find: "@/",
48
+ replacement: "src/",
49
+ },
50
+ ...defaultViteConfig.resolve.alias,
51
+ ],
26
52
  },
27
53
  appType: "custom",
28
54
  },
@@ -34,6 +60,20 @@ export const defineConfig = (loadedConfig) => {
34
60
  console.error(error);
35
61
  return {
36
62
  reactStrictMode: true,
63
+ vite: {
64
+ optimizeDeps: {
65
+ exclude: ["node:http", "node-fetch"],
66
+ },
67
+ appType: "custom",
68
+ resolve: {
69
+ alias: [
70
+ {
71
+ find: "@/",
72
+ replacement: "src/",
73
+ },
74
+ ],
75
+ },
76
+ },
37
77
  };
38
78
  }
39
79
  };
@@ -54,4 +94,3 @@ export const adaptPath = (paths) => {
54
94
  // If the path is a string
55
95
  return `${prefix}${paths}`;
56
96
  };
57
- //# sourceMappingURL=index.js.map
@@ -60,9 +60,21 @@ export type AppConfig = {
60
60
  */
61
61
  external?: string[];
62
62
  };
63
+ /**
64
+ * Configure resolve options
65
+ */
66
+ resolve?: {
67
+ /**
68
+ * Configure aliases
69
+ */
70
+ alias?: Array<{
71
+ find: string;
72
+ replacement: string;
73
+ }>;
74
+ };
63
75
  };
64
76
  };
65
77
  /**
66
78
  * Hosting strategy
67
79
  */
68
- export type HostingStrategy = "vercel" | "netlify" | "heroku" | "custom";
80
+ export type HostingStrategy = "vercel" | "custom";
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=type.js.map
@@ -57,4 +57,3 @@ const ErrorFallbackComponent = ({ error, info }) => {
57
57
  backgroundColor: "#f0f0f0",
58
58
  }, children: _jsx("p", { children: info.componentStack }) })] }) }));
59
59
  };
60
- //# sourceMappingURL=index.js.map
package/lib/core/index.js CHANGED
@@ -1,2 +1 @@
1
1
  export { LayoutComponent, DefaultLayout, PageComponent, } from "./interfaces.js";
2
- //# sourceMappingURL=index.js.map
@@ -88,4 +88,3 @@ export class PageComponent extends LayoutComponent {
88
88
  });
89
89
  }
90
90
  }
91
- //# sourceMappingURL=interfaces.js.map
package/lib/core/types.js CHANGED
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
@@ -1,3 +1,2 @@
1
1
  export { Router } from "./router.js";
2
2
  export { Route } from "./route.js";
3
- //# sourceMappingURL=index.js.map
@@ -22,4 +22,3 @@ export function Route(props) {
22
22
  Object.seal(constructor.prototype);
23
23
  };
24
24
  }
25
- //# sourceMappingURL=route.js.map
@@ -21,4 +21,3 @@ export function Router(props) {
21
21
  Object.seal(constructor.prototype);
22
22
  };
23
23
  }
24
- //# sourceMappingURL=router.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
@@ -12,4 +12,3 @@ import * as pkg from "react-helmet-async";
12
12
  // @ts-ignore
13
13
  const { HelmetProvider } = pkg.default || pkg;
14
14
  ReactDOM.hydrateRoot(document.getElementById("root"), config.reactStrictMode ? (_jsx(React.StrictMode, { children: _jsx(ErrorBoundary, { children: _jsx(HelmetProvider, { children: _jsx(App, { Component: Component }) }) }) })) : (_jsx(ErrorBoundary, { children: _jsx(HelmetProvider, { children: _jsx(App, { Component: Component }) }) })));
15
- //# sourceMappingURL=entry-client.js.map
@@ -17,4 +17,3 @@ export function render(router, context, helmetContext = {}) {
17
17
  return { html };
18
18
  }
19
19
  export const staticRoutes = generateStaticRoutes(AppRouter);
20
- //# sourceMappingURL=entry-server.js.map
@@ -1 +0,0 @@
1
- //# sourceMappingURL=index.js.map
package/lib/index.js CHANGED
@@ -7,4 +7,3 @@ export * from "./decorators/index.js";
7
7
  export * from "./config/index.js";
8
8
  export { createFetchRequest };
9
9
  // export * as hooks from './hooks';
10
- //# sourceMappingURL=index.js.map
@@ -66,4 +66,3 @@ export const NotFoundPageComponent = () => {
66
66
  export const NotFoundComponentContainer = ({ content, }) => {
67
67
  return _jsx(_Fragment, { children: content({}) });
68
68
  };
69
- //# sourceMappingURL=index.js.map
@@ -1,4 +1,3 @@
1
1
  export { defineRouteLayout, defineRoutePage, defineRouter, } from "./utils/index.js";
2
2
  export { RouterComponent } from "./interfaces.js";
3
3
  export { Outlet, Link, useLocation, useNavigate, useParams, useSearchParams, useFetcher, useMatch, useRoutes, useResolvedPath, matchRoutes, generatePath, matchPath, createRoutesFromChildren, Navigate, } from "react-router-dom";
4
- //# sourceMappingURL=index.js.map
@@ -85,4 +85,3 @@ export class RouterComponent {
85
85
  this._notFoundComponent = notFoundComponent;
86
86
  }
87
87
  }
88
- //# sourceMappingURL=interfaces.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
@@ -253,4 +253,3 @@ export const defineRouter = (option) => {
253
253
  return router;
254
254
  };
255
255
  };
256
- //# sourceMappingURL=index.js.map
@@ -0,0 +1,2 @@
1
+ import type { VercelRequest, VercelResponse } from "@vercel/node";
2
+ export default function handler(req: VercelRequest, res: VercelResponse): Promise<VercelResponse>;
@@ -0,0 +1,91 @@
1
+ import fs from "node:fs/promises";
2
+ import path, { join, dirname } from "path";
3
+ import { fileURLToPath } from "url";
4
+ import { createStaticHandler, createStaticRouter, } from "react-router-dom/server.js";
5
+ // @ts-ignore
6
+ import { createFetchRequest } from "rasengan";
7
+ const __filename = fileURLToPath(import.meta.url);
8
+ const __dirname = dirname(__filename);
9
+ // Create server for production only
10
+ export default async function handler(req, res) {
11
+ try {
12
+ // Get URL
13
+ const url = req.url;
14
+ const host = req.headers.host;
15
+ // Get app path
16
+ const appPath = join(__dirname, "..");
17
+ // ! Favicon Fix
18
+ if (url === "/favicon.ico") {
19
+ return res.send(path.resolve(join(appPath, "dist/client/rasengan.png")));
20
+ }
21
+ // ! Robots Fix
22
+ if (url === "/robots.txt") {
23
+ return res.send(`
24
+ user-agent: *
25
+ disallow: /downloads/
26
+ disallow: /private/
27
+ allow: /
28
+
29
+ user-agent: magicsearchbot
30
+ disallow: /uploads/
31
+ `);
32
+ }
33
+ // ! Sitemap Fix
34
+ if (url === "/sitemap.xml") {
35
+ return res.send(path.resolve(join(appPath, "dist/client/sitemap.xml")));
36
+ }
37
+ // ! Manifest Fix
38
+ if (url === "/manifest.json") {
39
+ return res.send(path.resolve(join(appPath, "dist/client/manifest.json")));
40
+ }
41
+ let template;
42
+ let entry;
43
+ let manifest;
44
+ // Always read fresh template in development
45
+ const htmlFilePath = join(appPath, "dist/client/index.html");
46
+ const serverFilePath = join(appPath, "dist/server/entry-server.js");
47
+ const ssrManifestFilePath = join(appPath, "dist/client/.vite/ssr-manifest.json");
48
+ // Read template, server-renderer and manifest in production
49
+ template = await fs.readFile(htmlFilePath, "utf-8");
50
+ entry = await import(serverFilePath);
51
+ manifest = await fs.readFile(ssrManifestFilePath, "utf-8");
52
+ // Extract render and staticRoutes from entry
53
+ const { render, staticRoutes } = entry;
54
+ // Create static handler
55
+ let handler = createStaticHandler(staticRoutes);
56
+ // Create fetch request for static routing
57
+ // @ts-ignore
58
+ let fetchRequest = createFetchRequest(req, host);
59
+ let context = await handler.query(fetchRequest);
60
+ // Handle redirects
61
+ const status = context.status;
62
+ if (status === 302) {
63
+ const redirect = context.headers.get("Location");
64
+ if (redirect)
65
+ return res.redirect(redirect);
66
+ }
67
+ // Helmet context
68
+ const helmetContext = {};
69
+ // Create static router
70
+ let router = createStaticRouter(handler.dataRoutes, context);
71
+ const rendered = await render(router, context, helmetContext);
72
+ // Get metadata
73
+ const helmet = helmetContext.helmet;
74
+ let head = `
75
+ ${helmet.title.toString()}
76
+ ${helmet.meta.toString()}
77
+ `;
78
+ let html = template
79
+ .replace(`<!--app-head-->`, head ?? "")
80
+ .replace(`<!--app-html-->`, rendered.html ?? "");
81
+ res
82
+ .status(200)
83
+ .setHeader("Content-Type", "text/html")
84
+ .setHeader("Cache-Control", "max-age=31536000")
85
+ .end(html);
86
+ }
87
+ catch (e) {
88
+ console.log(e.stack);
89
+ res.status(500).end(e.stack);
90
+ }
91
+ }
@@ -54,6 +54,7 @@ export default async function handler(req, res) {
54
54
  // Create static handler
55
55
  let handler = createStaticHandler(staticRoutes);
56
56
  // Create fetch request for static routing
57
+ // @ts-ignore
57
58
  let fetchRequest = createFetchRequest(req, host);
58
59
  let context = await handler.query(fetchRequest);
59
60
  // Handle redirects
@@ -88,4 +89,3 @@ export default async function handler(req, res) {
88
89
  res.status(500).end(e.stack);
89
90
  }
90
91
  }
91
- //# sourceMappingURL=index.js.map
@@ -31,4 +31,3 @@ export default function createFetchRequest(req, host) {
31
31
  }
32
32
  return new Request(url.href, init);
33
33
  }
34
- //# sourceMappingURL=createFetchRequest.js.map
@@ -27,4 +27,3 @@ export default function getIP() {
27
27
  }
28
28
  return ipAddress;
29
29
  }
30
- //# sourceMappingURL=getIp.js.map
@@ -25,4 +25,3 @@ export function fix404(url, res, appPath) {
25
25
  return res.sendFile(path.resolve(join(appPath, "dist/client/manifest.json")));
26
26
  }
27
27
  }
28
- //# sourceMappingURL=handleError.js.map
@@ -5,4 +5,3 @@ import { logServerInfo } from "./log.js";
5
5
  import { fix404 } from "./handleError.js";
6
6
  // Export section
7
7
  export { createFetchRequest, getIP, logServerInfo, fix404, };
8
- //# sourceMappingURL=index.js.map
@@ -66,4 +66,3 @@ export async function logServerInfo(port, isProduction) {
66
66
  // Set a higher limit for the number of listeners
67
67
  process.stdin.setMaxListeners(100);
68
68
  }
69
- //# sourceMappingURL=log.js.map
package/package.json CHANGED
@@ -1,12 +1,28 @@
1
1
  {
2
2
  "name": "rasengan",
3
3
  "private": false,
4
- "version": "1.0.0-beta.2",
4
+ "version": "1.0.0-beta.4",
5
5
  "type": "module",
6
6
  "main": "lib/index.js",
7
7
  "bin": {
8
8
  "rasengan": "./lib/cli/index.js"
9
9
  },
10
+ "exports": {
11
+ ".": {
12
+ "import": {
13
+ "types": "./lib/index.d.ts",
14
+ "default": "./lib/index.js"
15
+ },
16
+ "require": {
17
+ "types": "./lib/index.d.ts",
18
+ "default": "./lib/index.js"
19
+ }
20
+ },
21
+ "./types/image": {
22
+ "types": "./types/image.d.ts"
23
+ },
24
+ "./package.json": "./package.json"
25
+ },
10
26
  "author": {
11
27
  "name": "dilane3",
12
28
  "email": "komboudilane125@gmail.com",
@@ -19,6 +35,7 @@
19
35
  "url": "https://github.com/rasengan/rasengan.git",
20
36
  "issues": "https://github.com/rasengan/rasengan/issues"
21
37
  },
38
+ "homepage": "https://rasengan.dev",
22
39
  "scripts": {
23
40
  "dev": "node server",
24
41
  "build": "npm run build:client && npm run build:server",
@@ -43,12 +60,10 @@
43
60
  "keypress": "^0.2.1",
44
61
  "node-fetch": "^3.3.2",
45
62
  "ora": "^7.0.1",
46
- "react-helmet": "^6.1.0",
47
63
  "react-helmet-async": "^2.0.4",
48
64
  "react-router-dom": "^6.20.1",
49
65
  "sirv": "^2.0.3",
50
- "vite": "^5.0.7",
51
- "vite-plugin-css": "^1.0.4"
66
+ "vite": "^5.0.12"
52
67
  },
53
68
  "peerDependencies": {
54
69
  "react": "^18.2.0",
@@ -61,7 +76,6 @@
61
76
  "@types/node": "^20.8.6",
62
77
  "@types/react": "^18.2.28",
63
78
  "@types/react-dom": "^18.2.13",
64
- "@types/react-helmet": "^6.1.8",
65
79
  "cross-env": "^7.0.3",
66
80
  "typescript": "^5.2.2"
67
81
  },
package/server.js CHANGED
@@ -60,6 +60,7 @@ async function createServer({
60
60
  server: { middlewareMode: true },
61
61
  appType: "custom",
62
62
  base,
63
+ configFile: "node_modules/rasengan/vite.config.js"
63
64
  });
64
65
  app.use(vite.middlewares);
65
66
  } else {
package/tsconfig.json CHANGED
@@ -24,7 +24,7 @@
24
24
  /* Plugins */
25
25
  "plugins": [{ "name": "typescript-plugin-css-modules" }],
26
26
  },
27
- "include": ["src", "server.js", "types"],
27
+ "include": ["src", "server.js", "types", "types"],
28
28
 
29
29
  "references": [{ "path": "./tsconfig.node.json" }]
30
30
  }
package/tsconfig.lib.json CHANGED
@@ -24,7 +24,7 @@
24
24
  "noEmit": false,
25
25
  "jsx": "react-jsx",
26
26
  "declaration": true,
27
- "sourceMap": true,
27
+ "sourceMap": false,
28
28
 
29
29
  /* Plugins */
30
30
  "plugins": [{ "name": "typescript-plugin-css-modules" }],
@@ -0,0 +1,44 @@
1
+ declare module "*.png" {
2
+ const value: string;
3
+ export default value;
4
+ }
5
+
6
+ declare module "*.jpg" {
7
+ const value: string;
8
+ export default value;
9
+ }
10
+
11
+ declare module "*.jpeg" {
12
+ const value: string;
13
+ export default value;
14
+ }
15
+
16
+ declare module "*.gif" {
17
+ const value: string;
18
+ export default value;
19
+ }
20
+
21
+ declare module "*.svg" {
22
+ const value: string;
23
+ export default value;
24
+ }
25
+
26
+ declare module "*.webp" {
27
+ const value: string;
28
+ export default value;
29
+ }
30
+
31
+ declare module "*.ico" {
32
+ const value: string;
33
+ export default value;
34
+ }
35
+
36
+ declare module "*.bmp" {
37
+ const value: string;
38
+ export default value;
39
+ }
40
+
41
+ declare module "*.avif" {
42
+ const value: string;
43
+ export default value;
44
+ }
package/vite.config.ts CHANGED
@@ -5,20 +5,25 @@ import react from "@vitejs/plugin-react";
5
5
  // @ts-ignore
6
6
  import config from "./../../rasengan.config.js";
7
7
 
8
+ // Importing __dirname
9
+ // @ts-ignore
10
+ import { fileURLToPath } from "url";
11
+ import path, { dirname } from "path";
12
+
8
13
  // Extract vite config
9
14
  const { vite } = config;
10
15
 
16
+ // Getting root path
17
+ const __dirname = dirname(fileURLToPath(import.meta.url));
18
+ const __pathToRoot = path.resolve(__dirname, "./../../");
19
+
11
20
  export default defineConfig({
12
21
  plugins: [react(), ...vite?.plugins],
13
22
 
14
23
  // define index.html location
15
- root: "./../../",
24
+ root: __pathToRoot,
16
25
  optimizeDeps: {
17
- exclude: [
18
- "node:http",
19
- "node-fetch",
20
- ...vite?.optimizeDeps?.exclude,
21
- ],
26
+ exclude: ["node:http", "node-fetch", ...vite?.optimizeDeps?.exclude],
22
27
  },
23
28
 
24
29
  build: {
@@ -41,5 +46,21 @@ export default defineConfig({
41
46
  postcss: vite?.css?.postcss,
42
47
  },
43
48
 
49
+ // Aliases
50
+ resolve: {
51
+ alias: vite?.resolve?.alias.map(
52
+ (alias: { find: string; replacement: string }) => ({
53
+ find: alias.find,
54
+ replacement: path.join(__pathToRoot, alias.replacement),
55
+ })
56
+ ),
57
+ },
58
+
59
+ // Cache directory
60
+ cacheDir: ".rasengan/",
61
+
62
+ // Environment variable prefix
63
+ envPrefix: "RASENGAN_",
64
+
44
65
  appType: vite.appType,
45
66
  });
@@ -1 +0,0 @@
1
- {"version":3,"file":"dirname.js","sourceRoot":"","sources":["../../src/cli/dirname.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,eAAe,SAAS,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,YAAuB,EAAE,EAAE;IACtD,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,YAAY,CAAC;IAEvD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG;YACb,eAAe,EAAE,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe;YACvE,MAAM;YACN,IAAI,EAAE;gBACJ,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,EAAE;gBAE5B,YAAY,EAAE;oBACZ,OAAO,EAAE;wBACP,WAAW;wBACX,YAAY;wBACZ,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,IAAI,EAAE,CAAC;qBACvC;iBACF;gBAED,GAAG,EAAE;oBACH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,IAAI,SAAS;iBACzC;gBAED,KAAK,EAAE;oBACL,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,IAAI,EAAE;iBACtC;gBAED,OAAO,EAAE,QAAQ;aAClB;YACD,yBAAyB;SAC1B,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,OAAO;YACL,eAAe,EAAE,IAAI;SACtB,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAA6B,EAAE,EAAE;IACzD,sCAAsC;IACtC,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC;IAC3D,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAE9C,gCAAgC;IAChC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAErC,0BAA0B;IAC1B,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,0BAA0B;IAC1B,OAAO,GAAG,MAAM,GAAG,KAAK,EAAE,CAAC;AAC7B,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/config/type.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/components/index.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAE1C,aAAa;AACb,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC;AAEtC;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,EAAkB,EAAE,EAAE;IACjE,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IAEpC,OAAO,KAAC,MAAM,KAAG,CAAC;AACpB,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAqB,EAAE,EAAE;IAChE,yBAAyB;IACzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;IAEzB,qBAAqB;IACrB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;IAE/B,OAAO,CACL,MAAC,KAAK,CAAC,QAAQ,eACb,MAAC,MAAM,eACL,0BAAQ,IAAI,CAAC,KAAK,GAAS,EAC3B,eAAM,IAAI,EAAC,aAAa,EAAC,OAAO,EAAE,IAAI,CAAC,WAAW,GAAI,IAC/C,EAET,KAAC,IAAI,OAAK,KAAK,GAAI,IACJ,CAClB,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK,CAAC,SAAS;IAChD,KAAK,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAErD,iBAAiB,CAAC,KAAU,EAAE,IAAS;QACrC,IAAI,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;IAED,MAAM;QACJ,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;QAEnC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACxB,OAAO,KAAC,sBAAsB,IAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAI,CAAC;QAC9D,CAAC;QAED,aAAa;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAA;IAC5B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,sBAAsB,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAO,EAAE,EAAE;IACtD,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7B,OAAO,CACL,cACE,KAAK,EAAE;YACL,KAAK,EAAE,mBAAmB;YAC1B,MAAM,EAAE,oBAAoB;YAC5B,OAAO,EAAE,MAAM;YACf,eAAe,EAAE,MAAM;SACxB,YAED,0BACE,aAAI,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,qCAA2B,EAC1D,sBAAI,KAAK,CAAC,QAAQ,EAAE,GAAK,EAEzB,cACE,KAAK,EAAE;wBACL,KAAK,EAAE,MAAM;wBACb,MAAM,EAAE,MAAM;wBACd,YAAY,EAAE,EAAE;wBAChB,OAAO,EAAE,MAAM;wBACf,SAAS,EAAE,MAAM;wBACjB,eAAe,EAAE,SAAS;qBAC3B,YAED,sBAAI,IAAI,CAAC,cAAc,GAAK,GACxB,IACF,GACF,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,EACf,aAAa,EACb,aAAa,GACd,MAAM,iBAAiB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/core/interfaces.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAY1C;;GAEG;AACH,MAAM,OAAgB,eAAe;IACnC;;;OAGG;IACO,KAAK,CAAU;IAQzB,UAAU;IAEV;;OAEG;IACH,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,UAAU;IAEV;;OAEG;IACH,IAAI,IAAI,CAAC,IAAY;QACnB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,eAAe;IAChD;QACE,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;IACnB,CAAC;IAED,MAAM;QACJ,OAAO,CACL,KAAC,KAAK,CAAC,QAAQ,cACb,KAAC,MAAM,KAAG,GACK,CAClB,CAAC;IACJ,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAgB,aAAc,SAAQ,eAAe;IACzD;;OAEG;IACO,MAAM,CAAU;IAE1B;;OAEG;IACO,YAAY,CAAU;IAEhC,UAAU;IAEV;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,UAAU;IAEV;;OAEG;IACH,IAAI,KAAK,CAAC,KAAa;QACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAI,WAAW,CAAC,WAAmB;QACjC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CACV,QAAuB;QAEvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,OAAO,CAAC;gBACN,KAAK,EAAE,EAAE;aACV,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorators/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"route.js","sourceRoot":"","sources":["../../src/decorators/route.ts"],"names":[],"mappings":"AAAA,oBAAoB;AAIpB;;;;GAIG;AACH,MAAM,UAAU,KAAK,CAAC,KAA0B;IAC9C,OAAO,UAAU,WAAqB;QACpC,gBAAgB;QAChB,IAAI,CAAC,KAAK,CAAC,IAAI;YACb,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAEpE,2BAA2B;QAE3B,0BAA0B;QAC1B,WAAW,CAAC,SAAS,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;QAEzC,2BAA2B;QAC3B,WAAW,CAAC,SAAS,CAAC,MAAM;YAC1B,KAAK,CAAC,KAAK;gBACX,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEvE,iCAAiC;QACjC,WAAW,CAAC,SAAS,CAAC,YAAY,GAAG,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC;QAE7D,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/decorators/router.ts"],"names":[],"mappings":"AAAA,oBAAoB;AAEpB,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;;;GAIG;AACH,MAAM,UAAU,MAAM,CAAC,KAA2B;IAChD,OAAO,UAAU,WAAqB;QACpC,gBAAgB;QAChB,IAAI,CAAC,KAAK,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAE9F,2BAA2B;QAE3B,wDAAwD;QACxD,WAAW,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;QAExD,kDAAkD;QAClD,WAAW,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,aAAa,CAAC;QAEjE,eAAe;QACf,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;QAE9C,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACrC,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/decorators/types.ts"],"names":[],"mappings":""}