wexts 3.0.1 → 4.0.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/README.md +49 -346
- package/bin/wexts.cjs +2 -0
- package/dist/chunk-2KAQYLVN.js +0 -0
- package/dist/chunk-2KAQYLVN.js.map +1 -1
- package/dist/{chunk-O42L6HOX.js → chunk-2LJVUMXW.js} +79 -93
- package/dist/chunk-2LJVUMXW.js.map +1 -0
- package/dist/chunk-7QKLIVRF.js +94 -0
- package/dist/chunk-7QKLIVRF.js.map +1 -0
- package/dist/{chunk-FCEZDH42.mjs → chunk-7WULUGLH.mjs} +5 -3
- package/dist/chunk-7WULUGLH.mjs.map +1 -0
- package/dist/{chunk-WF65EDRZ.js → chunk-BG56B4DE.js} +20 -2
- package/dist/chunk-BG56B4DE.js.map +1 -0
- package/dist/chunk-CLM5PNSG.mjs +496 -0
- package/dist/chunk-CLM5PNSG.mjs.map +1 -0
- package/dist/chunk-DNLGCKTT.js +31 -0
- package/dist/chunk-DNLGCKTT.js.map +1 -0
- package/dist/{chunk-VNNVLQLJ.mjs → chunk-JHOVXH3X.mjs} +2 -2
- package/dist/chunk-JHOVXH3X.mjs.map +1 -0
- package/dist/chunk-MXINIFPC.js +105 -0
- package/dist/chunk-MXINIFPC.js.map +1 -0
- package/dist/chunk-SE32ZPOZ.js +496 -0
- package/dist/chunk-SE32ZPOZ.js.map +1 -0
- package/dist/{chunk-STTOPUZ2.mjs → chunk-UAL54DVV.mjs} +21 -3
- package/dist/chunk-UAL54DVV.mjs.map +1 -0
- package/dist/{chunk-3OM7CHCA.js → chunk-WCKSKU3C.js} +1 -1
- package/dist/chunk-WCKSKU3C.js.map +1 -0
- package/dist/chunk-WU6FW77M.mjs +105 -0
- package/dist/chunk-WU6FW77M.mjs.map +1 -0
- package/dist/chunk-XE4OXN2W.js +0 -0
- package/dist/chunk-XE4OXN2W.js.map +1 -1
- package/dist/chunk-YBM3IJEA.mjs +94 -0
- package/dist/chunk-YBM3IJEA.mjs.map +1 -0
- package/dist/{chunk-KXYLEUSW.mjs → chunk-YN6WIWNQ.mjs} +69 -83
- package/dist/chunk-YN6WIWNQ.mjs.map +1 -0
- package/dist/chunk-YSLEF5C5.mjs +0 -0
- package/dist/chunk-YSLEF5C5.mjs.map +0 -0
- package/dist/chunk-ZX7QIN24.mjs +31 -0
- package/dist/chunk-ZX7QIN24.mjs.map +1 -0
- package/dist/cli/index.d.mts +10 -0
- package/dist/cli/index.d.ts +10 -0
- package/dist/cli/index.js +292 -292
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/index.mjs +294 -293
- package/dist/cli/index.mjs.map +1 -1
- package/dist/client/index.d.mts +10 -1
- package/dist/client/index.d.ts +10 -1
- package/dist/client/index.js +4 -2
- package/dist/client/index.js.map +1 -1
- package/dist/client/index.mjs +6 -4
- package/dist/client/index.mjs.map +0 -0
- package/dist/codegen/index.d.mts +2 -1
- package/dist/codegen/index.d.ts +2 -1
- package/dist/codegen/index.js +5 -3
- package/dist/codegen/index.js.map +1 -1
- package/dist/codegen/index.mjs +7 -5
- package/dist/codegen/index.mjs.map +0 -0
- package/dist/decorators-BT1FFqN0.d.mts +29 -0
- package/dist/decorators-DvS58PqC.d.ts +29 -0
- package/dist/dev-server/index.d.mts +1 -1
- package/dist/dev-server/index.d.ts +1 -1
- package/dist/dev-server/index.js +3 -3
- package/dist/dev-server/index.js.map +1 -1
- package/dist/dev-server/index.mjs +3 -3
- package/dist/dev-server/index.mjs.map +0 -0
- package/dist/{index-SjUaHgFr.d.ts → index-7QeQEf37.d.ts} +27 -10
- package/dist/{index-tFGPFVfQ.d.mts → index-7RvU-jGE.d.mts} +0 -1
- package/dist/{index-tFGPFVfQ.d.ts → index-7RvU-jGE.d.ts} +0 -1
- package/dist/{index-SjUaHgFr.d.mts → index-8nzxy0NN.d.mts} +27 -10
- package/dist/index-Co5ZsLqq.d.ts +58 -0
- package/dist/index-D94W1__r.d.mts +58 -0
- package/dist/index-DQmyVp6F.d.mts +27 -0
- package/dist/index-KL_1BrQb.d.ts +27 -0
- package/dist/index.d.mts +17 -6
- package/dist/index.d.ts +17 -6
- package/dist/index.js +57 -30
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +48 -21
- package/dist/index.mjs.map +1 -1
- package/dist/nest/index.d.mts +3 -1
- package/dist/nest/index.d.ts +3 -1
- package/dist/nest/index.js +20 -2
- package/dist/nest/index.js.map +1 -1
- package/dist/nest/index.mjs +21 -3
- package/dist/nest/index.mjs.map +0 -0
- package/dist/next/index.d.mts +7 -2
- package/dist/next/index.d.ts +7 -2
- package/dist/next/index.js +72 -5
- package/dist/next/index.js.map +1 -1
- package/dist/next/index.mjs +70 -4
- package/dist/next/index.mjs.map +1 -1
- package/dist/rpc/index.d.mts +2 -0
- package/dist/rpc/index.d.ts +2 -0
- package/dist/rpc/index.js +23 -0
- package/dist/rpc/index.js.map +1 -0
- package/dist/rpc/index.mjs +23 -0
- package/dist/{chunk-7NSRDJ5C.mjs.map → rpc/index.mjs.map} +0 -0
- package/dist/runtime/index.d.mts +55 -0
- package/dist/runtime/index.d.ts +55 -0
- package/dist/runtime/index.js +213 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/index.mjs +213 -0
- package/dist/runtime/index.mjs.map +1 -0
- package/dist/types/index.d.mts +0 -0
- package/dist/types/index.d.ts +0 -0
- package/dist/types/index.js +0 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/index.mjs +1 -1
- package/dist/types/index.mjs.map +0 -0
- package/dist/types-7d_fC-C3.d.mts +32 -0
- package/dist/types-7d_fC-C3.d.ts +32 -0
- package/dist/vercel-builder/index.d.mts +58 -0
- package/dist/vercel-builder/index.d.ts +58 -0
- package/dist/vercel-builder/index.js +330 -0
- package/dist/vercel-builder/index.js.map +1 -0
- package/dist/vercel-builder/index.mjs +330 -0
- package/dist/vercel-builder/index.mjs.map +1 -0
- package/package.json +37 -16
- package/templates/.dockerignore +43 -43
- package/templates/.env.example +0 -0
- package/templates/Dockerfile +60 -60
- package/templates/Procfile +1 -1
- package/templates/README.md +67 -58
- package/templates/api-sdk.ts +115 -115
- package/templates/docker-compose.yml +34 -34
- package/templates/nestjs-api/.env.example +0 -0
- package/templates/nestjs-api/README.md +87 -79
- package/templates/nestjs-api/nest-cli.json +6 -6
- package/templates/nestjs-api/package-lock.json +5623 -5623
- package/templates/nestjs-api/package.json +40 -40
- package/templates/nestjs-api/prisma/dev.db +0 -0
- package/templates/nestjs-api/prisma/migrations/20251123205437_init/migration.sql +0 -0
- package/templates/nestjs-api/prisma/migrations/migration_lock.toml +0 -0
- package/templates/nestjs-api/prisma/schema.prisma +29 -29
- package/templates/nestjs-api/src/app.module.ts +17 -17
- package/templates/nestjs-api/src/auth/auth.controller.ts +27 -27
- package/templates/nestjs-api/src/auth/auth.module.ts +37 -29
- package/templates/nestjs-api/src/auth/auth.service.ts +86 -86
- package/templates/nestjs-api/src/auth/dto/auth.dto.ts +22 -22
- package/templates/nestjs-api/src/auth/guards/jwt-auth.guard.ts +5 -5
- package/templates/nestjs-api/src/auth/strategies/jwt.strategy.ts +27 -19
- package/templates/nestjs-api/src/main.ts +32 -32
- package/templates/nestjs-api/src/prisma/prisma.module.ts +9 -9
- package/templates/nestjs-api/src/prisma/prisma.service.ts +14 -14
- package/templates/nestjs-api/src/todos/dto/todo.dto.ts +24 -24
- package/templates/nestjs-api/src/todos/todos.controller.ts +39 -39
- package/templates/nestjs-api/src/todos/todos.module.ts +11 -11
- package/templates/nestjs-api/src/todos/todos.service.ts +53 -53
- package/templates/nestjs-api/src/users/users.controller.ts +14 -14
- package/templates/nestjs-api/src/users/users.module.ts +12 -12
- package/templates/nestjs-api/src/users/users.service.ts +19 -19
- package/templates/nestjs-api/tsconfig.json +39 -39
- package/templates/nextjs-web/README.md +76 -68
- package/templates/nextjs-web/app/actions/auth.ts +108 -108
- package/templates/nextjs-web/app/dashboard/error.tsx +39 -39
- package/templates/nextjs-web/app/dashboard/loading.tsx +14 -14
- package/templates/nextjs-web/app/dashboard/page.tsx +5 -5
- package/templates/nextjs-web/app/globals.css +93 -93
- package/templates/nextjs-web/app/layout.tsx +29 -29
- package/templates/nextjs-web/app/login/page.tsx +5 -5
- package/templates/nextjs-web/app/page.tsx +28 -28
- package/templates/nextjs-web/app/register/page.tsx +5 -5
- package/templates/nextjs-web/components/ui/button.tsx +56 -56
- package/templates/nextjs-web/components/ui/card.tsx +79 -79
- package/templates/nextjs-web/components/ui/input.tsx +25 -25
- package/templates/nextjs-web/components/ui/label.tsx +24 -24
- package/templates/nextjs-web/features/auth/LoginForm.tsx +140 -140
- package/templates/nextjs-web/features/auth/RegisterForm.tsx +159 -159
- package/templates/nextjs-web/features/auth/api.ts +35 -35
- package/templates/nextjs-web/features/auth/index.ts +3 -3
- package/templates/nextjs-web/features/dashboard/DashboardView.tsx +204 -204
- package/templates/nextjs-web/features/dashboard/api.ts +9 -9
- package/templates/nextjs-web/features/dashboard/components.tsx +74 -74
- package/templates/nextjs-web/features/dashboard/index.ts +3 -3
- package/templates/nextjs-web/hooks/index.ts +4 -4
- package/templates/nextjs-web/lib/api-client.ts +89 -89
- package/templates/nextjs-web/lib/api.ts +115 -115
- package/templates/nextjs-web/lib/axios-global-config.ts +17 -17
- package/templates/nextjs-web/lib/utils.ts +6 -6
- package/templates/nextjs-web/lib/wexts-client.ts +4 -4
- package/templates/nextjs-web/next-env.d.ts +6 -6
- package/templates/nextjs-web/next.config.ts +20 -20
- package/templates/nextjs-web/package-lock.json +3254 -3254
- package/templates/nextjs-web/package.json +37 -37
- package/templates/nextjs-web/postcss.config.js +6 -6
- package/templates/nextjs-web/tailwind.config.ts +69 -69
- package/templates/nextjs-web/tsconfig.json +1 -1
- package/templates/nixpacks.toml +11 -11
- package/templates/root-package.json +31 -31
- package/templates/server.ts +66 -66
- package/templates/tsconfig.json +30 -30
- package/dist/chunk-2MCBBWEA.js +0 -1
- package/dist/chunk-2MCBBWEA.js.map +0 -1
- package/dist/chunk-3OM7CHCA.js.map +0 -1
- package/dist/chunk-63MTCWU2.mjs +0 -361
- package/dist/chunk-63MTCWU2.mjs.map +0 -1
- package/dist/chunk-667BQCEM.js +0 -375
- package/dist/chunk-667BQCEM.js.map +0 -1
- package/dist/chunk-67IJ6H4J.mjs +0 -44
- package/dist/chunk-67IJ6H4J.mjs.map +0 -1
- package/dist/chunk-6SVQEGEX.mjs +0 -44
- package/dist/chunk-6SVQEGEX.mjs.map +0 -1
- package/dist/chunk-7NSRDJ5C.mjs +0 -1
- package/dist/chunk-ASDXAK6G.js +0 -44
- package/dist/chunk-ASDXAK6G.js.map +0 -1
- package/dist/chunk-CKZ4VSCB.mjs +0 -18
- package/dist/chunk-CKZ4VSCB.mjs.map +0 -1
- package/dist/chunk-DW6GOKMF.js +0 -57
- package/dist/chunk-DW6GOKMF.js.map +0 -1
- package/dist/chunk-EFZPSZWO.mjs +0 -1
- package/dist/chunk-EFZPSZWO.mjs.map +0 -1
- package/dist/chunk-FCEZDH42.mjs.map +0 -1
- package/dist/chunk-FYGXL4V7.js +0 -361
- package/dist/chunk-FYGXL4V7.js.map +0 -1
- package/dist/chunk-GKVPGKAH.js +0 -66
- package/dist/chunk-GKVPGKAH.js.map +0 -1
- package/dist/chunk-GWP6PNSP.js +0 -225
- package/dist/chunk-GWP6PNSP.js.map +0 -1
- package/dist/chunk-HQKTXE7E.mjs +0 -225
- package/dist/chunk-HQKTXE7E.mjs.map +0 -1
- package/dist/chunk-HSFLZUJN.mjs +0 -57
- package/dist/chunk-HSFLZUJN.mjs.map +0 -1
- package/dist/chunk-HU63F22V.js +0 -361
- package/dist/chunk-HU63F22V.js.map +0 -1
- package/dist/chunk-J5LGTIGS.mjs +0 -10
- package/dist/chunk-J5LGTIGS.mjs.map +0 -1
- package/dist/chunk-JMBD6DOP.js +0 -225
- package/dist/chunk-JMBD6DOP.js.map +0 -1
- package/dist/chunk-K7EIJSYQ.js +0 -1
- package/dist/chunk-K7EIJSYQ.js.map +0 -1
- package/dist/chunk-KXYLEUSW.mjs.map +0 -1
- package/dist/chunk-MTHKZO55.js +0 -44
- package/dist/chunk-MTHKZO55.js.map +0 -1
- package/dist/chunk-NNQFLD7O.mjs +0 -361
- package/dist/chunk-NNQFLD7O.mjs.map +0 -1
- package/dist/chunk-NU2UB242.js +0 -82
- package/dist/chunk-NU2UB242.js.map +0 -1
- package/dist/chunk-NULGSZFE.mjs +0 -57
- package/dist/chunk-NULGSZFE.mjs.map +0 -1
- package/dist/chunk-O42L6HOX.js.map +0 -1
- package/dist/chunk-ONXNE2A6.mjs +0 -375
- package/dist/chunk-ONXNE2A6.mjs.map +0 -1
- package/dist/chunk-OTBYRUBE.mjs +0 -225
- package/dist/chunk-OTBYRUBE.mjs.map +0 -1
- package/dist/chunk-OTSAVKLY.mjs +0 -66
- package/dist/chunk-OTSAVKLY.mjs.map +0 -1
- package/dist/chunk-PZ5AY32C.js +0 -10
- package/dist/chunk-PZ5AY32C.js.map +0 -1
- package/dist/chunk-QP2TMRLG.js +0 -57
- package/dist/chunk-QP2TMRLG.js.map +0 -1
- package/dist/chunk-RS23R3ZQ.mjs +0 -82
- package/dist/chunk-RS23R3ZQ.mjs.map +0 -1
- package/dist/chunk-STTOPUZ2.mjs.map +0 -1
- package/dist/chunk-VMT3LALB.mjs +0 -51
- package/dist/chunk-VMT3LALB.mjs.map +0 -1
- package/dist/chunk-VNNVLQLJ.mjs.map +0 -1
- package/dist/chunk-W3YRVEFQ.js +0 -66
- package/dist/chunk-W3YRVEFQ.js.map +0 -1
- package/dist/chunk-WF65EDRZ.js.map +0 -1
- package/dist/chunk-WMHVXEYQ.mjs +0 -66
- package/dist/chunk-WMHVXEYQ.mjs.map +0 -1
- package/dist/chunk-XVKTIYHY.js +0 -51
- package/dist/chunk-XVKTIYHY.js.map +0 -1
- package/dist/codegen-MRZDLCYI.js +0 -13
- package/dist/codegen-MRZDLCYI.js.map +0 -1
- package/dist/codegen-UI5HTMXE.mjs +0 -13
- package/dist/codegen-UI5HTMXE.mjs.map +0 -1
- package/dist/dev-server-JKRVBWPY.mjs +0 -13
- package/dist/dev-server-JKRVBWPY.mjs.map +0 -1
- package/dist/dev-server-TLL7UQMR.js +0 -13
- package/dist/dev-server-TLL7UQMR.js.map +0 -1
- package/dist/index-BsNaOUtH.d.mts +0 -44
- package/dist/index-BsNaOUtH.d.ts +0 -44
- package/dist/index-CrbXnXsO.d.ts +0 -62
- package/dist/index-kEbGExWM.d.mts +0 -62
- package/templates/nestjs-api/.env +0 -4
- package/templates/nextjs-web/.env +0 -1
package/dist/chunk-FYGXL4V7.js
DELETED
|
@@ -1,361 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class;
|
|
2
|
-
|
|
3
|
-
var _chunkQP2TMRLGjs = require('./chunk-QP2TMRLG.js');
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var _chunkPZ5AY32Cjs = require('./chunk-PZ5AY32C.js');
|
|
7
|
-
|
|
8
|
-
// src/codegen/index.ts
|
|
9
|
-
var codegen_exports = {};
|
|
10
|
-
_chunkPZ5AY32Cjs.__export.call(void 0, codegen_exports, {
|
|
11
|
-
ClientGenerator: () => ClientGenerator,
|
|
12
|
-
CodegenWatcher: () => CodegenWatcher,
|
|
13
|
-
NestJSParser: () => NestJSParser
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
// src/codegen/parser.ts
|
|
17
|
-
var _typescript = require('typescript'); var ts = _interopRequireWildcard(_typescript);
|
|
18
|
-
var _path = require('path'); var path = _interopRequireWildcard(_path); var path2 = _interopRequireWildcard(_path); var path3 = _interopRequireWildcard(_path);
|
|
19
|
-
var NestJSParser = class {
|
|
20
|
-
constructor(projectPath) {
|
|
21
|
-
this.projectPath = projectPath;
|
|
22
|
-
const configPath = ts.findConfigFile(projectPath, ts.sys.fileExists, "tsconfig.json");
|
|
23
|
-
if (!configPath) {
|
|
24
|
-
throw new Error("tsconfig.json not found");
|
|
25
|
-
}
|
|
26
|
-
const config = ts.readConfigFile(configPath, ts.sys.readFile);
|
|
27
|
-
const parsedConfig = ts.parseJsonConfigFileContent(
|
|
28
|
-
config.config,
|
|
29
|
-
ts.sys,
|
|
30
|
-
path.dirname(configPath)
|
|
31
|
-
);
|
|
32
|
-
this.program = ts.createProgram(parsedConfig.fileNames, parsedConfig.options);
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Find all controllers with @FusionController decorator
|
|
37
|
-
*/
|
|
38
|
-
findFusionControllers() {
|
|
39
|
-
const controllers = [];
|
|
40
|
-
const sourceFiles = this.program.getSourceFiles();
|
|
41
|
-
for (const sourceFile of sourceFiles) {
|
|
42
|
-
if (sourceFile.fileName.includes("node_modules")) continue;
|
|
43
|
-
if (!sourceFile.fileName.includes(".controller.ts")) continue;
|
|
44
|
-
const fileControllers = this.parseSourceFile(sourceFile);
|
|
45
|
-
controllers.push(...fileControllers);
|
|
46
|
-
}
|
|
47
|
-
return controllers;
|
|
48
|
-
}
|
|
49
|
-
parseSourceFile(sourceFile) {
|
|
50
|
-
const controllers = [];
|
|
51
|
-
ts.forEachChild(sourceFile, (node) => {
|
|
52
|
-
if (ts.isClassDeclaration(node) && node.name) {
|
|
53
|
-
const controllerInfo = this.parseController(node);
|
|
54
|
-
if (controllerInfo) {
|
|
55
|
-
controllers.push(controllerInfo);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
return controllers;
|
|
60
|
-
}
|
|
61
|
-
parseController(classNode) {
|
|
62
|
-
const decorators = ts.getDecorators(classNode);
|
|
63
|
-
if (!decorators) return null;
|
|
64
|
-
let controllerPrefix = "";
|
|
65
|
-
let isFusionController = false;
|
|
66
|
-
for (const decorator of decorators) {
|
|
67
|
-
const expr = decorator.expression;
|
|
68
|
-
if (ts.isCallExpression(expr) && ts.isIdentifier(expr.expression)) {
|
|
69
|
-
const decoratorName = expr.expression.text;
|
|
70
|
-
if (decoratorName === "FusionController") {
|
|
71
|
-
isFusionController = true;
|
|
72
|
-
if (expr.arguments.length > 0) {
|
|
73
|
-
const arg = expr.arguments[0];
|
|
74
|
-
if (ts.isStringLiteral(arg)) {
|
|
75
|
-
controllerPrefix = arg.text;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
if (!isFusionController) return null;
|
|
82
|
-
const routes = this.parseRoutes(classNode);
|
|
83
|
-
const className = _optionalChain([classNode, 'access', _ => _.name, 'optionalAccess', _2 => _2.text]) || "Unknown";
|
|
84
|
-
return {
|
|
85
|
-
name: className,
|
|
86
|
-
prefix: controllerPrefix,
|
|
87
|
-
routes: routes.map((r) => ({ ...r, controllerName: className }))
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
parseRoutes(classNode) {
|
|
91
|
-
const routes = [];
|
|
92
|
-
classNode.members.forEach((member) => {
|
|
93
|
-
if (ts.isMethodDeclaration(member)) {
|
|
94
|
-
const decorators = ts.getDecorators(member);
|
|
95
|
-
if (!decorators) return;
|
|
96
|
-
for (const decorator of decorators) {
|
|
97
|
-
const expr = decorator.expression;
|
|
98
|
-
if (ts.isCallExpression(expr) && ts.isIdentifier(expr.expression)) {
|
|
99
|
-
const decoratorName = expr.expression.text;
|
|
100
|
-
let method = null;
|
|
101
|
-
let routePath = "";
|
|
102
|
-
if (decoratorName === "FusionGet") method = "GET";
|
|
103
|
-
else if (decoratorName === "FusionPost") method = "POST";
|
|
104
|
-
else if (decoratorName === "FusionPut") method = "PUT";
|
|
105
|
-
else if (decoratorName === "FusionDelete") method = "DELETE";
|
|
106
|
-
if (method) {
|
|
107
|
-
if (expr.arguments.length > 0) {
|
|
108
|
-
const arg = expr.arguments[0];
|
|
109
|
-
if (ts.isStringLiteral(arg)) {
|
|
110
|
-
routePath = arg.text;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
const handlerName = member.name.text;
|
|
114
|
-
routes.push({
|
|
115
|
-
method,
|
|
116
|
-
path: routePath,
|
|
117
|
-
handler: handlerName,
|
|
118
|
-
controllerName: ""
|
|
119
|
-
// Will be set by caller
|
|
120
|
-
});
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
return routes;
|
|
127
|
-
}
|
|
128
|
-
};
|
|
129
|
-
|
|
130
|
-
// src/core/filesystem.ts
|
|
131
|
-
var _fs = require('fs'); var fs = _interopRequireWildcard(_fs);
|
|
132
|
-
|
|
133
|
-
var _util = require('util');
|
|
134
|
-
var readFile2 = _util.promisify.call(void 0, fs.readFile);
|
|
135
|
-
var writeFile2 = _util.promisify.call(void 0, fs.writeFile);
|
|
136
|
-
var mkdir2 = _util.promisify.call(void 0, fs.mkdir);
|
|
137
|
-
var access2 = _util.promisify.call(void 0, fs.access);
|
|
138
|
-
var FileSystem = class {
|
|
139
|
-
/**
|
|
140
|
-
* Read file as string
|
|
141
|
-
*/
|
|
142
|
-
async readFile(filePath, encoding = "utf-8") {
|
|
143
|
-
return readFile2(filePath, encoding);
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Write file
|
|
147
|
-
*/
|
|
148
|
-
async writeFile(filePath, content) {
|
|
149
|
-
await this.ensureDir(path2.dirname(filePath));
|
|
150
|
-
return writeFile2(filePath, content, "utf-8");
|
|
151
|
-
}
|
|
152
|
-
/**
|
|
153
|
-
* Read JSON file
|
|
154
|
-
*/
|
|
155
|
-
async readJSON(filePath) {
|
|
156
|
-
const content = await this.readFile(filePath);
|
|
157
|
-
return JSON.parse(content);
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Write JSON file
|
|
161
|
-
*/
|
|
162
|
-
async writeJSON(filePath, data, pretty = true) {
|
|
163
|
-
const content = pretty ? JSON.stringify(data, null, 2) : JSON.stringify(data);
|
|
164
|
-
return this.writeFile(filePath, content);
|
|
165
|
-
}
|
|
166
|
-
/**
|
|
167
|
-
* Check if file/directory exists
|
|
168
|
-
*/
|
|
169
|
-
async exists(filePath) {
|
|
170
|
-
try {
|
|
171
|
-
await access2(filePath, fs.constants.F_OK);
|
|
172
|
-
return true;
|
|
173
|
-
} catch (e) {
|
|
174
|
-
return false;
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Ensure directory exists (create if not)
|
|
179
|
-
*/
|
|
180
|
-
async ensureDir(dirPath) {
|
|
181
|
-
if (!await this.exists(dirPath)) {
|
|
182
|
-
await mkdir2(dirPath, { recursive: true });
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Copy file
|
|
187
|
-
*/
|
|
188
|
-
async copyFile(src, dest) {
|
|
189
|
-
const content = await this.readFile(src);
|
|
190
|
-
await this.writeFile(dest, content);
|
|
191
|
-
}
|
|
192
|
-
/**
|
|
193
|
-
* Read directory
|
|
194
|
-
*/
|
|
195
|
-
readDir(dirPath) {
|
|
196
|
-
return _util.promisify.call(void 0, fs.readdir)(dirPath);
|
|
197
|
-
}
|
|
198
|
-
};
|
|
199
|
-
var filesystem = new FileSystem();
|
|
200
|
-
|
|
201
|
-
// src/codegen/generator.ts
|
|
202
|
-
|
|
203
|
-
var ClientGenerator = class {
|
|
204
|
-
async generate(options) {
|
|
205
|
-
const { controllers, outputPath } = options;
|
|
206
|
-
const clientCode = this.generateClientCode(controllers, options.baseUrl);
|
|
207
|
-
await filesystem.writeFile(path3.join(outputPath, "client.ts"), clientCode);
|
|
208
|
-
const indexCode = `export * from './client';
|
|
209
|
-
`;
|
|
210
|
-
await filesystem.writeFile(path3.join(outputPath, "index.ts"), indexCode);
|
|
211
|
-
console.log(`\u2705 Generated API client at ${outputPath}`);
|
|
212
|
-
}
|
|
213
|
-
generateClientCode(controllers, baseUrl = "/api") {
|
|
214
|
-
const imports = `import { FusionFetcher } from 'wexts/client';
|
|
215
|
-
|
|
216
|
-
`;
|
|
217
|
-
const clientClass = this.generateClientClass(controllers, baseUrl);
|
|
218
|
-
const exports = `
|
|
219
|
-
// Export singleton instance
|
|
220
|
-
export const apiClient = new ApiClient();
|
|
221
|
-
`;
|
|
222
|
-
return imports + clientClass + exports;
|
|
223
|
-
}
|
|
224
|
-
generateClientClass(controllers, baseUrl) {
|
|
225
|
-
let code = `export class ApiClient {
|
|
226
|
-
`;
|
|
227
|
-
code += ` private client: FusionFetcher;
|
|
228
|
-
|
|
229
|
-
`;
|
|
230
|
-
code += ` constructor(baseUrl: string = '${baseUrl}') {
|
|
231
|
-
`;
|
|
232
|
-
code += ` this.client = new FusionFetcher(baseUrl);
|
|
233
|
-
`;
|
|
234
|
-
code += ` }
|
|
235
|
-
|
|
236
|
-
`;
|
|
237
|
-
for (const controller of controllers) {
|
|
238
|
-
const methods = this.generateControllerMethods(controller);
|
|
239
|
-
code += methods;
|
|
240
|
-
}
|
|
241
|
-
code += `}
|
|
242
|
-
`;
|
|
243
|
-
return code;
|
|
244
|
-
}
|
|
245
|
-
generateControllerMethods(controller) {
|
|
246
|
-
let code = ` // ${controller.name} endpoints
|
|
247
|
-
`;
|
|
248
|
-
for (const route of controller.routes) {
|
|
249
|
-
const methodName = this.generateMethodName(controller, route);
|
|
250
|
-
const methodCode = this.generateMethod(controller, route, methodName);
|
|
251
|
-
code += methodCode + "\n";
|
|
252
|
-
}
|
|
253
|
-
return code;
|
|
254
|
-
}
|
|
255
|
-
generateMethodName(controller, route) {
|
|
256
|
-
const controllerBase = controller.name.replace("Controller", "").toLowerCase();
|
|
257
|
-
if (route.handler === "findAll") {
|
|
258
|
-
return `get${this.capitalize(controllerBase)}`;
|
|
259
|
-
} else if (route.handler === "findOne") {
|
|
260
|
-
return `get${this.capitalize(controllerBase)}ById`;
|
|
261
|
-
} else if (route.handler === "create") {
|
|
262
|
-
return `create${this.capitalize(controllerBase.replace(/s$/, ""))}`;
|
|
263
|
-
} else if (route.handler === "update") {
|
|
264
|
-
return `update${this.capitalize(controllerBase.replace(/s$/, ""))}`;
|
|
265
|
-
} else if (route.handler === "remove" || route.handler === "delete") {
|
|
266
|
-
return `delete${this.capitalize(controllerBase.replace(/s$/, ""))}`;
|
|
267
|
-
}
|
|
268
|
-
return route.handler;
|
|
269
|
-
}
|
|
270
|
-
generateMethod(controller, route, methodName) {
|
|
271
|
-
const fullPath = `/${controller.prefix}${route.path}`;
|
|
272
|
-
const hasPathParam = fullPath.includes(":");
|
|
273
|
-
let params = "";
|
|
274
|
-
let pathExpr = `'${fullPath}'`;
|
|
275
|
-
if (hasPathParam) {
|
|
276
|
-
const paramMatch = fullPath.match(/:(\w+)/);
|
|
277
|
-
const paramName = paramMatch ? paramMatch[1] : "id";
|
|
278
|
-
params = `${paramName}: string`;
|
|
279
|
-
pathExpr = `'${fullPath.replace(`:${paramName}`, "${" + paramName + "}")}'`;
|
|
280
|
-
}
|
|
281
|
-
if (route.method === "POST" || route.method === "PUT") {
|
|
282
|
-
if (params) params += ", ";
|
|
283
|
-
params += "data: any";
|
|
284
|
-
}
|
|
285
|
-
let methodBody = "";
|
|
286
|
-
if (route.method === "GET" || route.method === "DELETE") {
|
|
287
|
-
methodBody = ` return this.client.${route.method.toLowerCase()}<any>(${pathExpr});`;
|
|
288
|
-
} else {
|
|
289
|
-
methodBody = ` return this.client.${route.method.toLowerCase()}<any>(${pathExpr}, data);`;
|
|
290
|
-
}
|
|
291
|
-
return ` async ${methodName}(${params}): Promise<any> {
|
|
292
|
-
${methodBody}
|
|
293
|
-
}
|
|
294
|
-
`;
|
|
295
|
-
}
|
|
296
|
-
capitalize(str) {
|
|
297
|
-
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
298
|
-
}
|
|
299
|
-
};
|
|
300
|
-
|
|
301
|
-
// src/codegen/watcher.ts
|
|
302
|
-
var _chokidar = require('chokidar'); var chokidar = _interopRequireWildcard(_chokidar);
|
|
303
|
-
var CodegenWatcher = (_class = class {constructor() { _class.prototype.__init.call(this); }
|
|
304
|
-
__init() {this.watcher = null}
|
|
305
|
-
async watch(options) {
|
|
306
|
-
const { projectPath, outputPath, pattern = "**/*.controller.ts" } = options;
|
|
307
|
-
_chunkQP2TMRLGjs.logger.info("\u{1F440} Watching for controller changes...");
|
|
308
|
-
await this.generateClient(projectPath, outputPath);
|
|
309
|
-
this.watcher = chokidar.watch(pattern, {
|
|
310
|
-
cwd: projectPath,
|
|
311
|
-
ignored: /node_modules/,
|
|
312
|
-
persistent: true
|
|
313
|
-
});
|
|
314
|
-
this.watcher.on("change", async (path4) => {
|
|
315
|
-
_chunkQP2TMRLGjs.logger.info(`\u{1F4DD} Controller changed: ${path4}`);
|
|
316
|
-
await this.generateClient(projectPath, outputPath);
|
|
317
|
-
});
|
|
318
|
-
this.watcher.on("add", async (path4) => {
|
|
319
|
-
_chunkQP2TMRLGjs.logger.info(`\u2795 New controller: ${path4}`);
|
|
320
|
-
await this.generateClient(projectPath, outputPath);
|
|
321
|
-
});
|
|
322
|
-
this.watcher.on("unlink", async (path4) => {
|
|
323
|
-
_chunkQP2TMRLGjs.logger.info(`\u2796 Controller removed: ${path4}`);
|
|
324
|
-
await this.generateClient(projectPath, outputPath);
|
|
325
|
-
});
|
|
326
|
-
}
|
|
327
|
-
async stop() {
|
|
328
|
-
if (this.watcher) {
|
|
329
|
-
await this.watcher.close();
|
|
330
|
-
this.watcher = null;
|
|
331
|
-
}
|
|
332
|
-
}
|
|
333
|
-
async generateClient(projectPath, outputPath) {
|
|
334
|
-
try {
|
|
335
|
-
const parser = new NestJSParser(projectPath);
|
|
336
|
-
const controllers = parser.findFusionControllers();
|
|
337
|
-
if (controllers.length === 0) {
|
|
338
|
-
_chunkQP2TMRLGjs.logger.warn("No Fusion controllers found");
|
|
339
|
-
return;
|
|
340
|
-
}
|
|
341
|
-
const generator = new ClientGenerator();
|
|
342
|
-
await generator.generate({
|
|
343
|
-
controllers,
|
|
344
|
-
outputPath
|
|
345
|
-
});
|
|
346
|
-
_chunkQP2TMRLGjs.logger.success(`Generated client for ${controllers.length} controller(s)`);
|
|
347
|
-
} catch (error) {
|
|
348
|
-
_chunkQP2TMRLGjs.logger.error("Failed to generate client:", error.message);
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
}, _class);
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
exports.FileSystem = FileSystem; exports.filesystem = filesystem; exports.NestJSParser = NestJSParser; exports.ClientGenerator = ClientGenerator; exports.CodegenWatcher = CodegenWatcher; exports.codegen_exports = codegen_exports;
|
|
361
|
-
//# sourceMappingURL=chunk-FYGXL4V7.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["c:\\Users\\ziad\\Desktop\\wexts\\packages\\dist\\chunk-FYGXL4V7.js"],"names":[],"mappings":"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ACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA;AACA;AACA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"C:\\Users\\ziad\\Desktop\\wexts\\packages\\dist\\chunk-FYGXL4V7.js","sourcesContent":[null]}
|
package/dist/chunk-GKVPGKAH.js
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
-
|
|
3
|
-
var _chunkPZ5AY32Cjs = require('./chunk-PZ5AY32C.js');
|
|
4
|
-
|
|
5
|
-
// src/nest/index.ts
|
|
6
|
-
var nest_exports = {};
|
|
7
|
-
_chunkPZ5AY32Cjs.__export.call(void 0, nest_exports, {
|
|
8
|
-
FusionController: () => FusionController,
|
|
9
|
-
FusionDelete: () => FusionDelete,
|
|
10
|
-
FusionGet: () => FusionGet,
|
|
11
|
-
FusionPost: () => FusionPost,
|
|
12
|
-
FusionPut: () => FusionPut,
|
|
13
|
-
FusionRoute: () => FusionRoute,
|
|
14
|
-
getFusionMetadata: () => getFusionMetadata
|
|
15
|
-
});
|
|
16
|
-
|
|
17
|
-
// src/nest/decorators.ts
|
|
18
|
-
require('reflect-metadata');
|
|
19
|
-
var FUSION_METADATA_KEY = "fusion:routes";
|
|
20
|
-
function FusionController(prefix = "") {
|
|
21
|
-
return function(target) {
|
|
22
|
-
Reflect.defineMetadata("fusion:controller", { prefix }, target);
|
|
23
|
-
return target;
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
function FusionRoute(metadata) {
|
|
27
|
-
return function(target, propertyKey, descriptor) {
|
|
28
|
-
const routes = Reflect.getMetadata(FUSION_METADATA_KEY, target.constructor) || [];
|
|
29
|
-
routes.push({
|
|
30
|
-
...metadata,
|
|
31
|
-
handler: propertyKey
|
|
32
|
-
});
|
|
33
|
-
Reflect.defineMetadata(FUSION_METADATA_KEY, routes, target.constructor);
|
|
34
|
-
return descriptor;
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
function FusionGet(path = "") {
|
|
38
|
-
return FusionRoute({ method: "GET", path });
|
|
39
|
-
}
|
|
40
|
-
function FusionPost(path = "") {
|
|
41
|
-
return FusionRoute({ method: "POST", path });
|
|
42
|
-
}
|
|
43
|
-
function FusionPut(path = "") {
|
|
44
|
-
return FusionRoute({ method: "PUT", path });
|
|
45
|
-
}
|
|
46
|
-
function FusionDelete(path = "") {
|
|
47
|
-
return FusionRoute({ method: "DELETE", path });
|
|
48
|
-
}
|
|
49
|
-
function getFusionMetadata(controller) {
|
|
50
|
-
return {
|
|
51
|
-
controller: Reflect.getMetadata("fusion:controller", controller),
|
|
52
|
-
routes: Reflect.getMetadata(FUSION_METADATA_KEY, controller) || []
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
exports.FusionController = FusionController; exports.FusionRoute = FusionRoute; exports.FusionGet = FusionGet; exports.FusionPost = FusionPost; exports.FusionPut = FusionPut; exports.FusionDelete = FusionDelete; exports.getFusionMetadata = getFusionMetadata; exports.nest_exports = nest_exports;
|
|
66
|
-
//# sourceMappingURL=chunk-GKVPGKAH.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["c:\\Users\\ziad\\Desktop\\wexts\\packages\\dist\\chunk-GKVPGKAH.js"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACA;AACA,IAAI,aAAa,EAAE,CAAC,CAAC;AACrB,uCAAQ,YAAa,EAAE;AACvB,EAAE,gBAAgB,EAAE,CAAC,EAAE,GAAG,gBAAgB;AAC1C,EAAE,YAAY,EAAE,CAAC,EAAE,GAAG,YAAY;AAClC,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,SAAS;AAC5B,EAAE,UAAU,EAAE,CAAC,EAAE,GAAG,UAAU;AAC9B,EAAE,SAAS,EAAE,CAAC,EAAE,GAAG,SAAS;AAC5B,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,WAAW;AAChC,EAAE,iBAAiB,EAAE,CAAC,EAAE,GAAG;AAC3B,CAAC,CAAC;AACF;AACA;AACA,4BAAyB;AACzB,IAAI,oBAAoB,EAAE,eAAe;AACzC,SAAS,gBAAgB,CAAC,OAAO,EAAE,EAAE,EAAE;AACvC,EAAE,OAAO,QAAQ,CAAC,MAAM,EAAE;AAC1B,IAAI,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC;AACnE,IAAI,OAAO,MAAM;AACjB,EAAE,CAAC;AACH;AACA,SAAS,WAAW,CAAC,QAAQ,EAAE;AAC/B,EAAE,OAAO,QAAQ,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE;AACnD,IAAI,MAAM,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,mBAAmB,EAAE,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;AACrF,IAAI,MAAM,CAAC,IAAI,CAAC;AAChB,MAAM,GAAG,QAAQ;AACjB,MAAM,OAAO,EAAE;AACf,IAAI,CAAC,CAAC;AACN,IAAI,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC;AAC3E,IAAI,OAAO,UAAU;AACrB,EAAE,CAAC;AACH;AACA,SAAS,SAAS,CAAC,KAAK,EAAE,EAAE,EAAE;AAC9B,EAAE,OAAO,WAAW,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC7C;AACA,SAAS,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE;AAC/B,EAAE,OAAO,WAAW,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;AAC9C;AACA,SAAS,SAAS,CAAC,KAAK,EAAE,EAAE,EAAE;AAC9B,EAAE,OAAO,WAAW,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;AAC7C;AACA,SAAS,YAAY,CAAC,KAAK,EAAE,EAAE,EAAE;AACjC,EAAE,OAAO,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;AAChD;AACA,SAAS,iBAAiB,CAAC,UAAU,EAAE;AACvC,EAAE,OAAO;AACT,IAAI,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,mBAAmB,EAAE,UAAU,CAAC;AACpE,IAAI,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,mBAAmB,EAAE,UAAU,EAAE,GAAG,CAAC;AACrE,EAAE,CAAC;AACH;AACA;AACA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,uSAAC","file":"C:\\Users\\ziad\\Desktop\\wexts\\packages\\dist\\chunk-GKVPGKAH.js","sourcesContent":[null]}
|
package/dist/chunk-GWP6PNSP.js
DELETED
|
@@ -1,225 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; } var _class; var _class2; var _class3;
|
|
2
|
-
|
|
3
|
-
var _chunkQP2TMRLGjs = require('./chunk-QP2TMRLG.js');
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
var _chunkPZ5AY32Cjs = require('./chunk-PZ5AY32C.js');
|
|
7
|
-
|
|
8
|
-
// src/dev-server/index.ts
|
|
9
|
-
var dev_server_exports = {};
|
|
10
|
-
_chunkPZ5AY32Cjs.__export.call(void 0, dev_server_exports, {
|
|
11
|
-
FusionDevServer: () => FusionDevServer,
|
|
12
|
-
ProcessRunner: () => ProcessRunner,
|
|
13
|
-
ProxyServer: () => ProxyServer
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
// src/dev-server/process-runner.ts
|
|
17
|
-
var _child_process = require('child_process');
|
|
18
|
-
var _picocolors = require('picocolors'); var pc = _interopRequireWildcard(_picocolors); var pc2 = _interopRequireWildcard(_picocolors);
|
|
19
|
-
var ProcessRunner = (_class = class {constructor() { _class.prototype.__init.call(this);_class.prototype.__init2.call(this); }
|
|
20
|
-
__init() {this.processes = /* @__PURE__ */ new Map()}
|
|
21
|
-
__init2() {this.colors = {
|
|
22
|
-
cyan: pc.cyan,
|
|
23
|
-
green: pc.green,
|
|
24
|
-
yellow: pc.yellow,
|
|
25
|
-
magenta: pc.magenta,
|
|
26
|
-
blue: pc.blue
|
|
27
|
-
}}
|
|
28
|
-
async run(configs) {
|
|
29
|
-
_chunkQP2TMRLGjs.logger.info("\u{1F680} Starting development servers...\n");
|
|
30
|
-
for (const config of configs) {
|
|
31
|
-
this.startProcess(config);
|
|
32
|
-
}
|
|
33
|
-
process.on("SIGINT", () => this.stopAll());
|
|
34
|
-
process.on("SIGTERM", () => this.stopAll());
|
|
35
|
-
}
|
|
36
|
-
startProcess(config) {
|
|
37
|
-
const { name, command, args, cwd, color, env } = config;
|
|
38
|
-
const colorFn = this.colors[color];
|
|
39
|
-
const prefix = colorFn(`[${name}]`);
|
|
40
|
-
_chunkQP2TMRLGjs.logger.info(`${prefix} Starting...`);
|
|
41
|
-
const proc = _child_process.spawn.call(void 0, command, args, {
|
|
42
|
-
cwd,
|
|
43
|
-
stdio: "pipe",
|
|
44
|
-
shell: true,
|
|
45
|
-
env: { ...process.env, ...env }
|
|
46
|
-
});
|
|
47
|
-
this.processes.set(name, proc);
|
|
48
|
-
_optionalChain([proc, 'access', _ => _.stdout, 'optionalAccess', _2 => _2.on, 'call', _3 => _3("data", (data) => {
|
|
49
|
-
const lines = data.toString().split("\n").filter((l) => l.trim());
|
|
50
|
-
lines.forEach((line) => {
|
|
51
|
-
console.log(`${prefix} ${line}`);
|
|
52
|
-
});
|
|
53
|
-
})]);
|
|
54
|
-
_optionalChain([proc, 'access', _4 => _4.stderr, 'optionalAccess', _5 => _5.on, 'call', _6 => _6("data", (data) => {
|
|
55
|
-
const lines = data.toString().split("\n").filter((l) => l.trim());
|
|
56
|
-
lines.forEach((line) => {
|
|
57
|
-
console.error(`${prefix} ${pc.red(line)}`);
|
|
58
|
-
});
|
|
59
|
-
})]);
|
|
60
|
-
proc.on("exit", (code) => {
|
|
61
|
-
if (code !== 0 && code !== null) {
|
|
62
|
-
_chunkQP2TMRLGjs.logger.error(`${prefix} Exited with code ${code}`);
|
|
63
|
-
}
|
|
64
|
-
this.processes.delete(name);
|
|
65
|
-
});
|
|
66
|
-
proc.on("error", (error) => {
|
|
67
|
-
_chunkQP2TMRLGjs.logger.error(`${prefix} Error:`, error.message);
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
stopAll() {
|
|
71
|
-
_chunkQP2TMRLGjs.logger.info("\n\u{1F6D1} Stopping all processes...");
|
|
72
|
-
for (const [name, proc] of this.processes.entries()) {
|
|
73
|
-
_chunkQP2TMRLGjs.logger.info(`Stopping ${name}...`);
|
|
74
|
-
proc.kill("SIGTERM");
|
|
75
|
-
}
|
|
76
|
-
setTimeout(() => {
|
|
77
|
-
process.exit(0);
|
|
78
|
-
}, 1e3);
|
|
79
|
-
}
|
|
80
|
-
isRunning(name) {
|
|
81
|
-
return this.processes.has(name);
|
|
82
|
-
}
|
|
83
|
-
}, _class);
|
|
84
|
-
|
|
85
|
-
// src/dev-server/proxy.ts
|
|
86
|
-
var _http = require('http'); var _http2 = _interopRequireDefault(_http);
|
|
87
|
-
var _httpproxy = require('http-proxy'); var _httpproxy2 = _interopRequireDefault(_httpproxy);
|
|
88
|
-
|
|
89
|
-
var ProxyServer = (_class2 = class {constructor() { _class2.prototype.__init3.call(this);_class2.prototype.__init4.call(this); }
|
|
90
|
-
__init3() {this.server = null}
|
|
91
|
-
__init4() {this.proxy = null}
|
|
92
|
-
async start(config) {
|
|
93
|
-
const { port, apiTarget, apiPrefix } = config;
|
|
94
|
-
this.proxy = _httpproxy2.default.createProxyServer({
|
|
95
|
-
target: apiTarget,
|
|
96
|
-
changeOrigin: true,
|
|
97
|
-
ws: true
|
|
98
|
-
// WebSocket support
|
|
99
|
-
});
|
|
100
|
-
this.proxy.on("error", (err, req, res) => {
|
|
101
|
-
_chunkQP2TMRLGjs.logger.error("Proxy error:", err.message);
|
|
102
|
-
if (res && "headersSent" in res && !res.headersSent) {
|
|
103
|
-
res.writeHead(502, { "Content-Type": "text/plain" });
|
|
104
|
-
res.end("Bad Gateway - API server unavailable");
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
this.server = _http2.default.createServer((req, res) => {
|
|
108
|
-
if (_optionalChain([req, 'access', _7 => _7.url, 'optionalAccess', _8 => _8.startsWith, 'call', _9 => _9(apiPrefix)])) {
|
|
109
|
-
const newUrl = req.url.substring(apiPrefix.length) || "/";
|
|
110
|
-
req.url = newUrl;
|
|
111
|
-
_chunkQP2TMRLGjs.logger.info(pc2.gray(`\u2192 ${req.method} ${apiPrefix}${newUrl}`));
|
|
112
|
-
this.proxy.web(req, res);
|
|
113
|
-
} else {
|
|
114
|
-
res.writeHead(404);
|
|
115
|
-
res.end("Not Found");
|
|
116
|
-
}
|
|
117
|
-
});
|
|
118
|
-
this.server.on("upgrade", (req, socket, head) => {
|
|
119
|
-
if (_optionalChain([req, 'access', _10 => _10.url, 'optionalAccess', _11 => _11.startsWith, 'call', _12 => _12(apiPrefix)])) {
|
|
120
|
-
const newUrl = req.url.substring(apiPrefix.length) || "/";
|
|
121
|
-
req.url = newUrl;
|
|
122
|
-
this.proxy.ws(req, socket, head);
|
|
123
|
-
}
|
|
124
|
-
});
|
|
125
|
-
return new Promise((resolve2) => {
|
|
126
|
-
this.server.listen(port, () => {
|
|
127
|
-
_chunkQP2TMRLGjs.logger.success(`\u2705 Proxy server running on port ${port}`);
|
|
128
|
-
_chunkQP2TMRLGjs.logger.info(` Forwarding ${pc2.cyan(apiPrefix + "/*")} \u2192 ${pc2.cyan(apiTarget)}
|
|
129
|
-
`);
|
|
130
|
-
resolve2();
|
|
131
|
-
});
|
|
132
|
-
});
|
|
133
|
-
}
|
|
134
|
-
stop() {
|
|
135
|
-
if (this.server) {
|
|
136
|
-
this.server.close();
|
|
137
|
-
this.server = null;
|
|
138
|
-
}
|
|
139
|
-
if (this.proxy) {
|
|
140
|
-
this.proxy.close();
|
|
141
|
-
this.proxy = null;
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
}, _class2);
|
|
145
|
-
|
|
146
|
-
// src/dev-server/dev-server.ts
|
|
147
|
-
var _path = require('path'); var path = _interopRequireWildcard(_path);
|
|
148
|
-
var _fs = require('fs'); var fs = _interopRequireWildcard(_fs);
|
|
149
|
-
var FusionDevServer = (_class3 = class {
|
|
150
|
-
|
|
151
|
-
__init5() {this.proxyServer = null}
|
|
152
|
-
constructor() {;_class3.prototype.__init5.call(this);
|
|
153
|
-
this.processRunner = new ProcessRunner();
|
|
154
|
-
}
|
|
155
|
-
async start(config) {
|
|
156
|
-
const {
|
|
157
|
-
apiPath,
|
|
158
|
-
webPath,
|
|
159
|
-
webPort = 3e3,
|
|
160
|
-
apiPort = 5050,
|
|
161
|
-
useProxy = true
|
|
162
|
-
} = config;
|
|
163
|
-
if (!fs.existsSync(apiPath)) {
|
|
164
|
-
throw new Error(`API path not found: ${apiPath}`);
|
|
165
|
-
}
|
|
166
|
-
if (!fs.existsSync(webPath)) {
|
|
167
|
-
throw new Error(`Web path not found: ${webPath}`);
|
|
168
|
-
}
|
|
169
|
-
const processes = [];
|
|
170
|
-
processes.push({
|
|
171
|
-
name: "API",
|
|
172
|
-
command: "npm",
|
|
173
|
-
args: ["run", "start:dev"],
|
|
174
|
-
cwd: path.resolve(apiPath),
|
|
175
|
-
color: "cyan",
|
|
176
|
-
env: {
|
|
177
|
-
PORT: apiPort.toString()
|
|
178
|
-
}
|
|
179
|
-
});
|
|
180
|
-
processes.push({
|
|
181
|
-
name: "Web",
|
|
182
|
-
command: "npm",
|
|
183
|
-
args: ["run", "dev", "--", "-p", webPort.toString()],
|
|
184
|
-
cwd: path.resolve(webPath),
|
|
185
|
-
color: "green",
|
|
186
|
-
env: {
|
|
187
|
-
NEXT_PUBLIC_API_URL: useProxy ? `http://localhost:${webPort}/api` : `http://localhost:${apiPort}`
|
|
188
|
-
}
|
|
189
|
-
});
|
|
190
|
-
if (useProxy) {
|
|
191
|
-
this.proxyServer = new ProxyServer();
|
|
192
|
-
setTimeout(async () => {
|
|
193
|
-
await this.proxyServer.start({
|
|
194
|
-
port: webPort,
|
|
195
|
-
apiTarget: `http://localhost:${apiPort}`,
|
|
196
|
-
apiPrefix: "/api"
|
|
197
|
-
});
|
|
198
|
-
}, 3e3);
|
|
199
|
-
}
|
|
200
|
-
await this.processRunner.run(processes);
|
|
201
|
-
_chunkQP2TMRLGjs.logger.info("\u2554\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2557");
|
|
202
|
-
_chunkQP2TMRLGjs.logger.info("\u2551 Fusion Development Server Ready \u2551");
|
|
203
|
-
_chunkQP2TMRLGjs.logger.info("\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255D\n");
|
|
204
|
-
_chunkQP2TMRLGjs.logger.info(`\u{1F310} Web: http://localhost:${webPort}`);
|
|
205
|
-
_chunkQP2TMRLGjs.logger.info(`\u{1F50C} API: http://localhost:${apiPort}`);
|
|
206
|
-
if (useProxy) {
|
|
207
|
-
_chunkQP2TMRLGjs.logger.info(`\u{1F504} Proxy: Enabled (${webPort}/api \u2192 ${apiPort})`);
|
|
208
|
-
}
|
|
209
|
-
_chunkQP2TMRLGjs.logger.info("\n");
|
|
210
|
-
}
|
|
211
|
-
stop() {
|
|
212
|
-
this.processRunner.stopAll();
|
|
213
|
-
if (this.proxyServer) {
|
|
214
|
-
this.proxyServer.stop();
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
}, _class3);
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
exports.ProcessRunner = ProcessRunner; exports.ProxyServer = ProxyServer; exports.FusionDevServer = FusionDevServer; exports.dev_server_exports = dev_server_exports;
|
|
225
|
-
//# sourceMappingURL=chunk-GWP6PNSP.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["c:\\Users\\ziad\\Desktop\\wexts\\packages\\dist\\chunk-GWP6PNSP.js"],"names":[],"mappings":"AAAA;AACE;AACF,sDAA4B;AAC5B;AACE;AACF,sDAA4B;AAC5B;AACA;AACA,IAAI,mBAAmB,EAAE,CAAC,CAAC;AAC3B,uCAAQ,kBAAmB,EAAE;AAC7B,EAAE,eAAe,EAAE,CAAC,EAAE,GAAG,eAAe;AACxC,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,aAAa;AACpC,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG;AACrB,CAAC,CAAC;AACF;AACA;AACA,8CAAqC;AACrC,uIAAgC;AAChC,IAAI,cAAc,YAAE,MAAM;AAC1B,iBAAE,UAAU,kBAAkB,IAAI,GAAG,CAAC,EAAC;AACvC,kBAAE,OAAO,EAAE;AACX,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI;AACjB,IAAI,KAAK,EAAE,EAAE,CAAC,KAAK;AACnB,IAAI,MAAM,EAAE,EAAE,CAAC,MAAM;AACrB,IAAI,OAAO,EAAE,EAAE,CAAC,OAAO;AACvB,IAAI,IAAI,EAAE,EAAE,CAAC;AACb,EAAE,EAAC;AACH,EAAE,MAAM,GAAG,CAAC,OAAO,EAAE;AACrB,IAAI,uBAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC;AAC9D,IAAI,IAAI,CAAC,MAAM,OAAO,GAAG,OAAO,EAAE;AAClC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;AAC/B,IAAI;AACJ,IAAI,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9C,IAAI,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AAC/C,EAAE;AACF,EAAE,YAAY,CAAC,MAAM,EAAE;AACvB,IAAI,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,MAAM;AAC3D,IAAI,MAAM,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;AACtC,IAAI,MAAM,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AACvC,IAAI,uBAAM,CAAC,IAAI,CAAC,CAAC,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,oBAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,oBAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,QAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAA;AACA,kBAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,QAAA;AACA,QAAA;AACA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,EAAA;AACA,kBAAA;AACA,EAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,MAAA;AACA,QAAA;AACA,UAAA;AACA,UAAA;AACA,UAAA;AACA,QAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,IAAA;AACA,EAAA;AACA,EAAA;AACA,IAAA;AACA,IAAA;AACA,MAAA;AACA,IAAA;AACA,EAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"C:\\Users\\ziad\\Desktop\\wexts\\packages\\dist\\chunk-GWP6PNSP.js","sourcesContent":[null]}
|