@edgeone/vite-core 0.0.1-beta.1

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 (78) hide show
  1. package/README.md +13 -0
  2. package/dist/bundler.d.ts +14 -0
  3. package/dist/bundler.d.ts.map +1 -0
  4. package/dist/bundler.js +691 -0
  5. package/dist/bundler.js.map +1 -0
  6. package/dist/constants.d.ts +12 -0
  7. package/dist/constants.d.ts.map +1 -0
  8. package/dist/constants.js +29 -0
  9. package/dist/constants.js.map +1 -0
  10. package/dist/core.d.ts +11 -0
  11. package/dist/core.d.ts.map +1 -0
  12. package/dist/core.js +547 -0
  13. package/dist/core.js.map +1 -0
  14. package/dist/factory/detectors.d.ts +13 -0
  15. package/dist/factory/detectors.d.ts.map +1 -0
  16. package/dist/factory/detectors.js +46 -0
  17. package/dist/factory/detectors.js.map +1 -0
  18. package/dist/factory/hooks.d.ts +29 -0
  19. package/dist/factory/hooks.d.ts.map +1 -0
  20. package/dist/factory/hooks.js +154 -0
  21. package/dist/factory/hooks.js.map +1 -0
  22. package/dist/factory/index.d.ts +23 -0
  23. package/dist/factory/index.d.ts.map +1 -0
  24. package/dist/factory/index.js +47 -0
  25. package/dist/factory/index.js.map +1 -0
  26. package/dist/factory/presets.d.ts +27 -0
  27. package/dist/factory/presets.d.ts.map +1 -0
  28. package/dist/factory/presets.js +186 -0
  29. package/dist/factory/presets.js.map +1 -0
  30. package/dist/factory.d.ts +183 -0
  31. package/dist/factory.d.ts.map +1 -0
  32. package/dist/factory.js +482 -0
  33. package/dist/factory.js.map +1 -0
  34. package/dist/helpers.d.ts +53 -0
  35. package/dist/helpers.d.ts.map +1 -0
  36. package/dist/helpers.js +177 -0
  37. package/dist/helpers.js.map +1 -0
  38. package/dist/index.d.ts +16 -0
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +12 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/route/index.d.ts +7 -0
  43. package/dist/route/index.d.ts.map +1 -0
  44. package/dist/route/index.js +6 -0
  45. package/dist/route/index.js.map +1 -0
  46. package/dist/route/parser.d.ts +18 -0
  47. package/dist/route/parser.d.ts.map +1 -0
  48. package/dist/route/parser.js +187 -0
  49. package/dist/route/parser.js.map +1 -0
  50. package/dist/route/regex.d.ts +31 -0
  51. package/dist/route/regex.d.ts.map +1 -0
  52. package/dist/route/regex.js +145 -0
  53. package/dist/route/regex.js.map +1 -0
  54. package/dist/route/regex.test.d.ts +7 -0
  55. package/dist/route/regex.test.d.ts.map +1 -0
  56. package/dist/route/regex.test.js +666 -0
  57. package/dist/route/regex.test.js.map +1 -0
  58. package/dist/route/types.d.ts +58 -0
  59. package/dist/route/types.d.ts.map +1 -0
  60. package/dist/route/types.js +5 -0
  61. package/dist/route/types.js.map +1 -0
  62. package/dist/route-parser.d.ts +8 -0
  63. package/dist/route-parser.d.ts.map +1 -0
  64. package/dist/route-parser.js +8 -0
  65. package/dist/route-parser.js.map +1 -0
  66. package/dist/types.d.ts +142 -0
  67. package/dist/types.d.ts.map +1 -0
  68. package/dist/types.js +5 -0
  69. package/dist/types.js.map +1 -0
  70. package/dist/utils.d.ts +41 -0
  71. package/dist/utils.d.ts.map +1 -0
  72. package/dist/utils.js +264 -0
  73. package/dist/utils.js.map +1 -0
  74. package/dist/vite-config-parser.d.ts +62 -0
  75. package/dist/vite-config-parser.d.ts.map +1 -0
  76. package/dist/vite-config-parser.js +229 -0
  77. package/dist/vite-config-parser.js.map +1 -0
  78. package/package.json +52 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Framework Detectors - Utilities for detecting frameworks
3
+ */
4
+ import type { BuildContext } from "../types.js";
5
+ /** Combine multiple detector functions (returns true if any matches) */
6
+ export declare function combineDetectors(...detectors: ((context: BuildContext) => Promise<boolean> | boolean)[]): (context: BuildContext) => Promise<boolean>;
7
+ /** Create detector based on config files */
8
+ export declare function createConfigDetector(configFiles: string[]): (context: BuildContext) => Promise<boolean>;
9
+ /** Create detector based on build directories */
10
+ export declare function createBuildDirDetector(buildDirs: string[]): (context: BuildContext) => Promise<boolean>;
11
+ /** Create detector based on package.json dependencies */
12
+ export declare function createDependencyDetector(dependencies: string[]): (context: BuildContext) => Promise<boolean>;
13
+ //# sourceMappingURL=detectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detectors.d.ts","sourceRoot":"","sources":["../../src/factory/detectors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,wEAAwE;AACxE,wBAAgB,gBAAgB,CAC9B,GAAG,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,EAAE,IAEzD,SAAS,YAAY,KAAG,OAAO,CAAC,OAAO,CAAC,CAMvD;AAED,4CAA4C;AAC5C,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,IAC1C,SAAS,YAAY,KAAG,OAAO,CAAC,OAAO,CAAC,CAGvD;AAED,iDAAiD;AACjD,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,IAC1C,SAAS,YAAY,KAAG,OAAO,CAAC,OAAO,CAAC,CAGvD;AAED,yDAAyD;AACzD,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,IAC/C,SAAS,YAAY,KAAG,OAAO,CAAC,OAAO,CAAC,CAcvD"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Framework Detectors - Utilities for detecting frameworks
3
+ */
4
+ import path from "path";
5
+ import { pathExists, readFile, detectConfigFile, detectBuildDir } from "../utils.js";
6
+ /** Combine multiple detector functions (returns true if any matches) */
7
+ export function combineDetectors(...detectors) {
8
+ return async (context) => {
9
+ for (const detector of detectors) {
10
+ if (await detector(context))
11
+ return true;
12
+ }
13
+ return false;
14
+ };
15
+ }
16
+ /** Create detector based on config files */
17
+ export function createConfigDetector(configFiles) {
18
+ return async (context) => {
19
+ return (await detectConfigFile(context.projectRoot, configFiles)) !== null;
20
+ };
21
+ }
22
+ /** Create detector based on build directories */
23
+ export function createBuildDirDetector(buildDirs) {
24
+ return async (context) => {
25
+ return (await detectBuildDir(context.projectRoot, buildDirs)) !== null;
26
+ };
27
+ }
28
+ /** Create detector based on package.json dependencies */
29
+ export function createDependencyDetector(dependencies) {
30
+ return async (context) => {
31
+ const packageJsonPath = path.join(context.projectRoot, "package.json");
32
+ if (!(await pathExists(packageJsonPath)))
33
+ return false;
34
+ try {
35
+ const content = await readFile(packageJsonPath);
36
+ const packageJson = JSON.parse(content);
37
+ const deps = { ...packageJson.dependencies, ...packageJson.devDependencies };
38
+ return dependencies.some((dep) => dep in deps);
39
+ }
40
+ catch (error) {
41
+ context.logger?.verbose?.(`Failed to parse package.json: ${error instanceof Error ? error.message : String(error)}`);
42
+ return false;
43
+ }
44
+ };
45
+ }
46
+ //# sourceMappingURL=detectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"detectors.js","sourceRoot":"","sources":["../../src/factory/detectors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAErF,wEAAwE;AACxE,MAAM,UAAU,gBAAgB,CAC9B,GAAG,SAAoE;IAEvE,OAAO,KAAK,EAAE,OAAqB,EAAoB,EAAE;QACvD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,MAAM,QAAQ,CAAC,OAAO,CAAC;gBAAE,OAAO,IAAI,CAAC;QAC3C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;AACJ,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,oBAAoB,CAAC,WAAqB;IACxD,OAAO,KAAK,EAAE,OAAqB,EAAoB,EAAE;QACvD,OAAO,CAAC,MAAM,gBAAgB,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC;IAC7E,CAAC,CAAC;AACJ,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,sBAAsB,CAAC,SAAmB;IACxD,OAAO,KAAK,EAAE,OAAqB,EAAoB,EAAE;QACvD,OAAO,CAAC,MAAM,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,KAAK,IAAI,CAAC;IACzE,CAAC,CAAC;AACJ,CAAC;AAED,yDAAyD;AACzD,MAAM,UAAU,wBAAwB,CAAC,YAAsB;IAC7D,OAAO,KAAK,EAAE,OAAqB,EAAoB,EAAE;QACvD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QACvE,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,eAAe,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QAEvD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,CAAC;YAChD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACxC,MAAM,IAAI,GAAG,EAAE,GAAG,WAAW,CAAC,YAAY,EAAE,GAAG,WAAW,CAAC,eAAe,EAAE,CAAC;YAC7E,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,iCAAiC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACrH,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Hook Creation Functions - Internal functions for creating adapter hooks
3
+ */
4
+ import type { BuildContext, BuildArtifacts, RouteInfo, OutputConfig, ServerWrapperConfig, ServerBundleConfig, EsbuildConfig, ServerWrapperPreset } from "../types.js";
5
+ import { type RouteSource } from "../route/index.js";
6
+ export type { EsbuildConfig, ServerWrapperPreset };
7
+ export interface BuildDirConfig {
8
+ client: string[];
9
+ server?: string[];
10
+ }
11
+ export interface RouteSourceConfig {
12
+ sources?: RouteSource[];
13
+ defaultRoutes?: string[];
14
+ ssrExtraRoutes?: string[];
15
+ transform?: (routes: RouteInfo[], context: BuildContext) => RouteInfo[];
16
+ }
17
+ export interface AdapterFactoryOptions {
18
+ clientBuildDir?: string;
19
+ serverBuildDir?: string;
20
+ serverEntry?: string;
21
+ routes?: string[];
22
+ }
23
+ export declare function createDefaultDetector(configFiles: string[]): (context: BuildContext) => Promise<boolean>;
24
+ export declare function createDefaultBuildArtifactsGetter(name: string, buildDirs: BuildDirConfig, serverEntryFiles: string[], options: AdapterFactoryOptions): (context: BuildContext) => Promise<BuildArtifacts>;
25
+ export declare function createGenerateRoutesHook(effectiveRouteConfig: RouteSourceConfig, fallbackRoutes: string[]): (context: BuildContext) => Promise<RouteInfo[]>;
26
+ export declare function createGenerateConfigHook(): (context: BuildContext, routeList: RouteInfo[]) => Promise<OutputConfig>;
27
+ export declare function createGenerateServerWrapperHook(wrapperConfig: ServerWrapperPreset): (_context: BuildContext, wrapperCfg: ServerWrapperConfig) => Promise<string>;
28
+ export declare function createBeforeBundleHook(esbuildConfig: EsbuildConfig): (context: BuildContext, bundleConfig: ServerBundleConfig) => Promise<ServerBundleConfig>;
29
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/factory/hooks.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,SAAS,EACT,YAAY,EACZ,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACpB,MAAM,aAAa,CAAC;AAWrB,OAAO,EAAuD,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAI1G,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,CAAC;AAEnD,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;CACzE;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,IAC3C,SAAS,YAAY,KAAG,OAAO,CAAC,OAAO,CAAC,CAGvD;AAED,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,cAAc,EACzB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,EAAE,qBAAqB,IAIhB,SAAS,YAAY,KAAG,OAAO,CAAC,cAAc,CAAC,CA+E9D;AAED,wBAAgB,wBAAwB,CAAC,oBAAoB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,EAAE,IAC1F,SAAS,YAAY,KAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CA+B3D;AAED,wBAAgB,wBAAwB,KACxB,SAAS,YAAY,EAAE,WAAW,SAAS,EAAE,KAAG,OAAO,CAAC,YAAY,CAAC,CAIpF;AAED,wBAAgB,+BAA+B,CAAC,aAAa,EAAE,mBAAmB,IAClE,UAAU,YAAY,EAAE,YAAY,mBAAmB,KAAG,OAAO,CAAC,MAAM,CAAC,CAUxF;AAED,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,aAAa,IACnD,SAAS,YAAY,EAAE,cAAc,kBAAkB,KAAG,OAAO,CAAC,kBAAkB,CAAC,CAepG"}
@@ -0,0 +1,154 @@
1
+ /**
2
+ * Hook Creation Functions - Internal functions for creating adapter hooks
3
+ */
4
+ import path from "path";
5
+ import { pathExists, detectConfigFile, detectBuildDir, detectServerEntry, generateServerWrapperCode, createDefaultOutputConfig, logBuildArtifacts, } from "../utils.js";
6
+ import { ViteConfigParser } from "../vite-config-parser.js";
7
+ import { parseRoutesFromSources, convertRoutesToOutputRoutes } from "../route/index.js";
8
+ import { resolvePreset } from "./presets.js";
9
+ export function createDefaultDetector(configFiles) {
10
+ return async (context) => {
11
+ return (await detectConfigFile(context.projectRoot, configFiles)) !== null;
12
+ };
13
+ }
14
+ export function createDefaultBuildArtifactsGetter(name, buildDirs, serverEntryFiles, options) {
15
+ const { clientBuildDir, serverBuildDir, serverEntry } = options;
16
+ return async (context) => {
17
+ const { projectRoot, isSSR, logger, viteConfig } = context;
18
+ let clientDir = null;
19
+ let serverDir = null;
20
+ let serverEntryPath = null;
21
+ const configParser = viteConfig
22
+ ? new ViteConfigParser(viteConfig, projectRoot, { logger, serverEntryCandidates: serverEntryFiles })
23
+ : null;
24
+ if (clientBuildDir) {
25
+ clientDir = path.join(projectRoot, clientBuildDir);
26
+ }
27
+ else if (configParser) {
28
+ const configInfo = await configParser.parse();
29
+ if (isSSR) {
30
+ const clientInOutDir = path.join(configInfo.absoluteOutDir, "client");
31
+ if (await pathExists(clientInOutDir)) {
32
+ clientDir = clientInOutDir;
33
+ logger.verbose(`Found client directory from Vite config: ${clientDir}`);
34
+ }
35
+ else {
36
+ clientDir = await detectBuildDir(projectRoot, buildDirs.client);
37
+ }
38
+ }
39
+ else {
40
+ if (await pathExists(configInfo.absoluteOutDir)) {
41
+ clientDir = configInfo.absoluteOutDir;
42
+ logger.verbose(`Found client directory (SPA) from Vite config: ${clientDir}`);
43
+ }
44
+ else {
45
+ clientDir = await detectBuildDir(projectRoot, buildDirs.client);
46
+ }
47
+ }
48
+ }
49
+ else {
50
+ clientDir = await detectBuildDir(projectRoot, buildDirs.client);
51
+ }
52
+ if (isSSR && buildDirs.server) {
53
+ if (configParser) {
54
+ if (serverBuildDir) {
55
+ serverDir = path.join(projectRoot, serverBuildDir);
56
+ }
57
+ else {
58
+ serverDir = configParser.getServerDir();
59
+ }
60
+ if (!serverDir) {
61
+ serverDir = await detectBuildDir(projectRoot, buildDirs.server);
62
+ }
63
+ if (serverEntry) {
64
+ serverEntryPath = path.join(projectRoot, serverEntry);
65
+ }
66
+ else if (serverDir) {
67
+ serverEntryPath = await configParser.findServerEntry(serverDir);
68
+ if (serverEntryPath) {
69
+ logger.verbose(`Using server entry from Vite config: ${serverEntryPath}`);
70
+ }
71
+ if (!serverEntryPath) {
72
+ serverEntryPath = await detectServerEntry(serverDir, serverEntryFiles, { recursive: true, logger });
73
+ }
74
+ }
75
+ }
76
+ else {
77
+ if (serverBuildDir) {
78
+ serverDir = path.join(projectRoot, serverBuildDir);
79
+ }
80
+ else {
81
+ serverDir = await detectBuildDir(projectRoot, buildDirs.server);
82
+ }
83
+ if (serverEntry) {
84
+ serverEntryPath = path.join(projectRoot, serverEntry);
85
+ }
86
+ else if (serverDir) {
87
+ serverEntryPath = await detectServerEntry(serverDir, serverEntryFiles, { recursive: true, logger });
88
+ }
89
+ }
90
+ }
91
+ logBuildArtifacts(logger, name, { clientDir, serverDir, serverEntry: serverEntryPath });
92
+ return { clientDir, serverDir, serverEntry: serverEntryPath, assetsDir: clientDir };
93
+ };
94
+ }
95
+ export function createGenerateRoutesHook(effectiveRouteConfig, fallbackRoutes) {
96
+ return async (context) => {
97
+ const { projectRoot, isSSR, logger } = context;
98
+ if (effectiveRouteConfig.sources && effectiveRouteConfig.sources.length > 0) {
99
+ let parsedRoutes = await parseRoutesFromSources(projectRoot, effectiveRouteConfig.sources, { isSSR, logger });
100
+ if (parsedRoutes.length > 0) {
101
+ if (effectiveRouteConfig.transform) {
102
+ parsedRoutes = effectiveRouteConfig.transform(parsedRoutes, context);
103
+ }
104
+ if (isSSR && effectiveRouteConfig.ssrExtraRoutes) {
105
+ effectiveRouteConfig.ssrExtraRoutes.forEach((route) => {
106
+ parsedRoutes.push({ path: route, isStatic: false, srcRoute: route });
107
+ });
108
+ }
109
+ return parsedRoutes;
110
+ }
111
+ }
112
+ const routeList = fallbackRoutes.map((route) => ({ path: route, isStatic: !isSSR, srcRoute: route }));
113
+ if (isSSR && effectiveRouteConfig.ssrExtraRoutes) {
114
+ effectiveRouteConfig.ssrExtraRoutes.forEach((route) => {
115
+ routeList.push({ path: route, isStatic: false, srcRoute: route });
116
+ });
117
+ }
118
+ return routeList;
119
+ };
120
+ }
121
+ export function createGenerateConfigHook() {
122
+ return async (context, routeList) => {
123
+ const outputRoutes = convertRoutesToOutputRoutes(routeList);
124
+ return createDefaultOutputConfig(outputRoutes, { isSSR: context.isSSR });
125
+ };
126
+ }
127
+ export function createGenerateServerWrapperHook(wrapperConfig) {
128
+ return async (_context, wrapperCfg) => {
129
+ const resolved = resolvePreset(wrapperConfig);
130
+ return generateServerWrapperCode({
131
+ serverEntryPath: wrapperCfg.serverEntryPath,
132
+ imports: resolved.imports,
133
+ handlerSetup: resolved.setup,
134
+ handlerCall: resolved.invoke,
135
+ });
136
+ };
137
+ }
138
+ export function createBeforeBundleHook(esbuildConfig) {
139
+ return async (context, bundleConfig) => {
140
+ const absWorkingDir = typeof esbuildConfig.absWorkingDir === "function"
141
+ ? esbuildConfig.absWorkingDir(context)
142
+ : esbuildConfig.absWorkingDir;
143
+ return {
144
+ ...bundleConfig,
145
+ external: esbuildConfig.external || bundleConfig.external,
146
+ esbuildOptions: {
147
+ ...bundleConfig.esbuildOptions,
148
+ ...esbuildConfig.options,
149
+ ...(absWorkingDir ? { absWorkingDir } : {}),
150
+ },
151
+ };
152
+ };
153
+ }
154
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../src/factory/hooks.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AAWxB,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAoB,MAAM,mBAAmB,CAAC;AAC1G,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAwB7C,MAAM,UAAU,qBAAqB,CAAC,WAAqB;IACzD,OAAO,KAAK,EAAE,OAAqB,EAAoB,EAAE;QACvD,OAAO,CAAC,MAAM,gBAAgB,CAAC,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,KAAK,IAAI,CAAC;IAC7E,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iCAAiC,CAC/C,IAAY,EACZ,SAAyB,EACzB,gBAA0B,EAC1B,OAA8B;IAE9B,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAEhE,OAAO,KAAK,EAAE,OAAqB,EAA2B,EAAE;QAC9D,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QAE3D,IAAI,SAAS,GAAkB,IAAI,CAAC;QACpC,IAAI,SAAS,GAAkB,IAAI,CAAC;QACpC,IAAI,eAAe,GAAkB,IAAI,CAAC;QAE1C,MAAM,YAAY,GAAG,UAAU;YAC7B,CAAC,CAAC,IAAI,gBAAgB,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,CAAC;YACpG,CAAC,CAAC,IAAI,CAAC;QAET,IAAI,cAAc,EAAE,CAAC;YACnB,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QACrD,CAAC;aAAM,IAAI,YAAY,EAAE,CAAC;YACxB,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC;YAE9C,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;gBACtE,IAAI,MAAM,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBACrC,SAAS,GAAG,cAAc,CAAC;oBAC3B,MAAM,CAAC,OAAO,CAAC,4CAA4C,SAAS,EAAE,CAAC,CAAC;gBAC1E,CAAC;qBAAM,CAAC;oBACN,SAAS,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,MAAM,UAAU,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;oBAChD,SAAS,GAAG,UAAU,CAAC,cAAc,CAAC;oBACtC,MAAM,CAAC,OAAO,CAAC,kDAAkD,SAAS,EAAE,CAAC,CAAC;gBAChF,CAAC;qBAAM,CAAC;oBACN,SAAS,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,SAAS,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,KAAK,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,cAAc,EAAE,CAAC;oBACnB,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;gBACrD,CAAC;qBAAM,CAAC;oBACN,SAAS,GAAG,YAAY,CAAC,YAAY,EAAE,CAAC;gBAC1C,CAAC;gBAED,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,SAAS,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;gBAClE,CAAC;gBAED,IAAI,WAAW,EAAE,CAAC;oBAChB,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBACxD,CAAC;qBAAM,IAAI,SAAS,EAAE,CAAC;oBACrB,eAAe,GAAG,MAAM,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;oBAChE,IAAI,eAAe,EAAE,CAAC;wBACpB,MAAM,CAAC,OAAO,CAAC,wCAAwC,eAAe,EAAE,CAAC,CAAC;oBAC5E,CAAC;oBAED,IAAI,CAAC,eAAe,EAAE,CAAC;wBACrB,eAAe,GAAG,MAAM,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;oBACtG,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,cAAc,EAAE,CAAC;oBACnB,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;gBACrD,CAAC;qBAAM,CAAC;oBACN,SAAS,GAAG,MAAM,cAAc,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;gBAClE,CAAC;gBAED,IAAI,WAAW,EAAE,CAAC;oBAChB,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBACxD,CAAC;qBAAM,IAAI,SAAS,EAAE,CAAC;oBACrB,eAAe,GAAG,MAAM,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBACtG,CAAC;YACH,CAAC;QACH,CAAC;QAED,iBAAiB,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC;QAExF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IACtF,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,oBAAuC,EAAE,cAAwB;IACxG,OAAO,KAAK,EAAE,OAAqB,EAAwB,EAAE;QAC3D,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAE/C,IAAI,oBAAoB,CAAC,OAAO,IAAI,oBAAoB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5E,IAAI,YAAY,GAAG,MAAM,sBAAsB,CAAC,WAAW,EAAE,oBAAoB,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;YAE9G,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,IAAI,oBAAoB,CAAC,SAAS,EAAE,CAAC;oBACnC,YAAY,GAAG,oBAAoB,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBACvE,CAAC;gBAED,IAAI,KAAK,IAAI,oBAAoB,CAAC,cAAc,EAAE,CAAC;oBACjD,oBAAoB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;wBACpD,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;oBACvE,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,YAAY,CAAC;YACtB,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAEtG,IAAI,KAAK,IAAI,oBAAoB,CAAC,cAAc,EAAE,CAAC;YACjD,oBAAoB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACpD,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;YACpE,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB;IACtC,OAAO,KAAK,EAAE,OAAqB,EAAE,SAAsB,EAAyB,EAAE;QACpF,MAAM,YAAY,GAAG,2BAA2B,CAAC,SAAS,CAAC,CAAC;QAC5D,OAAO,yBAAyB,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC3E,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,aAAkC;IAChF,OAAO,KAAK,EAAE,QAAsB,EAAE,UAA+B,EAAmB,EAAE;QACxF,MAAM,QAAQ,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;QAE9C,OAAO,yBAAyB,CAAC;YAC/B,eAAe,EAAE,UAAU,CAAC,eAAe;YAC3C,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,YAAY,EAAE,QAAQ,CAAC,KAAK;YAC5B,WAAW,EAAE,QAAQ,CAAC,MAAM;SAC7B,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,aAA4B;IACjE,OAAO,KAAK,EAAE,OAAqB,EAAE,YAAgC,EAA+B,EAAE;QACpG,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,aAAa,KAAK,UAAU;YACrE,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC;YACtC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC;QAEhC,OAAO;YACL,GAAG,YAAY;YACf,QAAQ,EAAE,aAAa,CAAC,QAAQ,IAAI,YAAY,CAAC,QAAQ;YACzD,cAAc,EAAE;gBACd,GAAG,YAAY,CAAC,cAAc;gBAC9B,GAAG,aAAa,CAAC,OAAO;gBACxB,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5C;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Adapter Factory - Simplifies framework adapter creation with declarative configuration
3
+ */
4
+ import type { FrameworkAdapter, ServerWrapperPreset } from "../types.js";
5
+ import { SERVER_WRAPPER_PRESETS } from "./presets.js";
6
+ import { type BuildDirConfig, type RouteSourceConfig, type AdapterFactoryOptions } from "./hooks.js";
7
+ export { SERVER_WRAPPER_PRESETS, createServerWrapperPreset, extendServerWrapperPresets, resolvePreset, createWebHandlerPreset, createSSRRenderPreset, createAutoDetectPreset, WEB_HANDLER_EXPORTS, SSR_RENDER_EXPORTS, type ExtendedPresetsResult, type PresetName, } from "./presets.js";
8
+ export { combineDetectors, createConfigDetector, createBuildDirDetector, createDependencyDetector, } from "./detectors.js";
9
+ export { type BuildDirConfig, type RouteSourceConfig, type AdapterFactoryOptions, } from "./hooks.js";
10
+ export type { EsbuildConfig, ServerWrapperPreset, HandlerMode } from "../types.js";
11
+ export interface AdapterFactoryConfig {
12
+ name: string;
13
+ configFiles: string[];
14
+ buildDirs: BuildDirConfig;
15
+ serverEntryFiles?: string[];
16
+ serverWrapper?: keyof typeof SERVER_WRAPPER_PRESETS | ServerWrapperPreset;
17
+ routeConfig?: RouteSourceConfig;
18
+ defaultRoutes?: string[];
19
+ ssrExtraRoutes?: string[];
20
+ }
21
+ export declare function createFrameworkAdapter(config: AdapterFactoryConfig, options?: AdapterFactoryOptions, overrides?: Partial<FrameworkAdapter>): FrameworkAdapter;
22
+ export declare function createStatefulAdapter<TState extends object>(initialState: TState, factory: (state: TState) => FrameworkAdapter): FrameworkAdapter;
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAiB,MAAM,cAAc,CAAC;AACrE,OAAO,EAOL,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC3B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,aAAa,EACb,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,UAAU,GAChB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAEnF,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE,cAAc,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,OAAO,sBAAsB,GAAG,mBAAmB,CAAC;IAC1E,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,oBAAoB,EAC5B,OAAO,GAAE,qBAA0B,EACnC,SAAS,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GACpC,gBAAgB,CAoDlB;AAED,wBAAgB,qBAAqB,CAAC,MAAM,SAAS,MAAM,EACzD,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,gBAAgB,GAC3C,gBAAgB,CAElB"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Adapter Factory - Simplifies framework adapter creation with declarative configuration
3
+ */
4
+ import { SERVER_WRAPPER_PRESETS, resolvePreset } from "./presets.js";
5
+ import { createDefaultDetector, createDefaultBuildArtifactsGetter, createGenerateRoutesHook, createGenerateConfigHook, createGenerateServerWrapperHook, createBeforeBundleHook, } from "./hooks.js";
6
+ export { SERVER_WRAPPER_PRESETS, createServerWrapperPreset, extendServerWrapperPresets, resolvePreset, createWebHandlerPreset, createSSRRenderPreset, createAutoDetectPreset, WEB_HANDLER_EXPORTS, SSR_RENDER_EXPORTS, } from "./presets.js";
7
+ export { combineDetectors, createConfigDetector, createBuildDirDetector, createDependencyDetector, } from "./detectors.js";
8
+ export function createFrameworkAdapter(config, options = {}, overrides) {
9
+ const { name, configFiles, buildDirs, serverEntryFiles = ["index.js", "index.mjs", "entry.js", "main.js"], serverWrapper = "autoDetect", routeConfig, defaultRoutes = ["/"], ssrExtraRoutes = [], } = config;
10
+ const { routes = routeConfig?.defaultRoutes || defaultRoutes } = options;
11
+ const effectiveRouteConfig = {
12
+ sources: routeConfig?.sources,
13
+ defaultRoutes: routeConfig?.defaultRoutes || defaultRoutes,
14
+ ssrExtraRoutes: routeConfig?.ssrExtraRoutes || ssrExtraRoutes,
15
+ transform: routeConfig?.transform,
16
+ };
17
+ // Resolve preset name to preset object
18
+ const wrapperConfig = typeof serverWrapper === "string"
19
+ ? SERVER_WRAPPER_PRESETS[serverWrapper]
20
+ : serverWrapper;
21
+ // Resolve to normalized form for esbuildConfig check
22
+ const resolvedPreset = resolvePreset(wrapperConfig);
23
+ const baseAdapter = {
24
+ name,
25
+ detect: createDefaultDetector(configFiles),
26
+ getBuildArtifacts: createDefaultBuildArtifactsGetter(name, buildDirs, serverEntryFiles, options),
27
+ hooks: {
28
+ generateRoutes: createGenerateRoutesHook(effectiveRouteConfig, routes),
29
+ generateConfig: createGenerateConfigHook(),
30
+ generateServerWrapper: createGenerateServerWrapperHook(wrapperConfig),
31
+ ...(resolvedPreset.esbuildConfig ? { beforeBundle: createBeforeBundleHook(resolvedPreset.esbuildConfig) } : {}),
32
+ },
33
+ };
34
+ if (overrides) {
35
+ return {
36
+ ...baseAdapter,
37
+ ...overrides,
38
+ name: overrides.name || baseAdapter.name,
39
+ hooks: { ...baseAdapter.hooks, ...overrides.hooks },
40
+ };
41
+ }
42
+ return baseAdapter;
43
+ }
44
+ export function createStatefulAdapter(initialState, factory) {
45
+ return factory({ ...initialState });
46
+ }
47
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/factory/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EACL,qBAAqB,EACrB,iCAAiC,EACjC,wBAAwB,EACxB,wBAAwB,EACxB,+BAA+B,EAC/B,sBAAsB,GAIvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,aAAa,EACb,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,GAGnB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,gBAAgB,CAAC;AAsBxB,MAAM,UAAU,sBAAsB,CACpC,MAA4B,EAC5B,UAAiC,EAAE,EACnC,SAAqC;IAErC,MAAM,EACJ,IAAI,EACJ,WAAW,EACX,SAAS,EACT,gBAAgB,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,EACnE,aAAa,GAAG,YAAY,EAC5B,WAAW,EACX,aAAa,GAAG,CAAC,GAAG,CAAC,EACrB,cAAc,GAAG,EAAE,GACpB,GAAG,MAAM,CAAC;IAEX,MAAM,EAAE,MAAM,GAAG,WAAW,EAAE,aAAa,IAAI,aAAa,EAAE,GAAG,OAAO,CAAC;IAEzE,MAAM,oBAAoB,GAAsB;QAC9C,OAAO,EAAE,WAAW,EAAE,OAAO;QAC7B,aAAa,EAAE,WAAW,EAAE,aAAa,IAAI,aAAa;QAC1D,cAAc,EAAE,WAAW,EAAE,cAAc,IAAI,cAAc;QAC7D,SAAS,EAAE,WAAW,EAAE,SAAS;KAClC,CAAC;IAEF,uCAAuC;IACvC,MAAM,aAAa,GACjB,OAAO,aAAa,KAAK,QAAQ;QAC/B,CAAC,CAAC,sBAAsB,CAAC,aAAa,CAAC;QACvC,CAAC,CAAC,aAAa,CAAC;IAEpB,qDAAqD;IACrD,MAAM,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IAEpD,MAAM,WAAW,GAAqB;QACpC,IAAI;QACJ,MAAM,EAAE,qBAAqB,CAAC,WAAW,CAAC;QAC1C,iBAAiB,EAAE,iCAAiC,CAAC,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,CAAC;QAChG,KAAK,EAAE;YACL,cAAc,EAAE,wBAAwB,CAAC,oBAAoB,EAAE,MAAM,CAAC;YACtE,cAAc,EAAE,wBAAwB,EAAE;YAC1C,qBAAqB,EAAE,+BAA+B,CAAC,aAAa,CAAC;YACrE,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,sBAAsB,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChH;KACF,CAAC;IAEF,IAAI,SAAS,EAAE,CAAC;QACd,OAAO;YACL,GAAG,WAAW;YACd,GAAG,SAAS;YACZ,IAAI,EAAE,SAAS,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI;YACxC,KAAK,EAAE,EAAE,GAAG,WAAW,CAAC,KAAK,EAAE,GAAG,SAAS,CAAC,KAAK,EAAE;SACpD,CAAC;IACJ,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,YAAoB,EACpB,OAA4C;IAE5C,OAAO,OAAO,CAAC,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { ServerWrapperPreset, EsbuildConfig, HandlerMode } from "../types.js";
2
+ export type { ServerWrapperPreset, EsbuildConfig, HandlerMode };
3
+ export declare const WEB_HANDLER_EXPORTS: readonly ["default", "default.fetch", "handler", "fetch", "app.fetch", "server.fetch"];
4
+ export declare const SSR_RENDER_EXPORTS: readonly ["render", "ssr", "default"];
5
+ export declare function resolvePreset(preset: ServerWrapperPreset): {
6
+ imports: string;
7
+ setup: string;
8
+ invoke: string;
9
+ esbuildConfig?: EsbuildConfig;
10
+ };
11
+ export declare function createWebHandlerPreset(exportPaths?: string[]): ServerWrapperPreset;
12
+ export declare function createSSRRenderPreset(exportPaths?: string[]): ServerWrapperPreset;
13
+ export declare function createAutoDetectPreset(): ServerWrapperPreset;
14
+ export declare const SERVER_WRAPPER_PRESETS: {
15
+ readonly autoDetect: ServerWrapperPreset;
16
+ readonly webHandler: ServerWrapperPreset;
17
+ readonly ssrRender: ServerWrapperPreset;
18
+ };
19
+ export type PresetName = keyof typeof SERVER_WRAPPER_PRESETS;
20
+ export interface ExtendedPresetsResult<TCustom extends Record<string, ServerWrapperPreset>> {
21
+ presets: typeof SERVER_WRAPPER_PRESETS & TCustom;
22
+ resolvePreset: (preset: keyof (typeof SERVER_WRAPPER_PRESETS & TCustom) | ServerWrapperPreset) => ServerWrapperPreset;
23
+ getPresetNames: () => (keyof (typeof SERVER_WRAPPER_PRESETS & TCustom))[];
24
+ }
25
+ export declare function createServerWrapperPreset(config: ServerWrapperPreset): ServerWrapperPreset;
26
+ export declare function extendServerWrapperPresets<TCustom extends Record<string, ServerWrapperPreset>>(customPresets: TCustom): ExtendedPresetsResult<TCustom>;
27
+ //# sourceMappingURL=presets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/factory/presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,aAAa,EACb,WAAW,EACZ,MAAM,aAAa,CAAC;AAErB,YAAY,EAAE,mBAAmB,EAAE,aAAa,EAAE,WAAW,EAAE,CAAC;AAEhE,eAAO,MAAM,mBAAmB,wFAOtB,CAAC;AAEX,eAAO,MAAM,kBAAkB,uCAAwC,CAAC;AAmGxE,wBAAgB,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B,CAmCA;AAED,wBAAgB,sBAAsB,CACpC,WAAW,GAAE,MAAM,EAA6B,GAC/C,mBAAmB,CAErB;AAED,wBAAgB,qBAAqB,CACnC,WAAW,GAAE,MAAM,EAA4B,GAC9C,mBAAmB,CAErB;AAED,wBAAgB,sBAAsB,IAAI,mBAAmB,CAK5D;AAED,eAAO,MAAM,sBAAsB;;;;CAIzB,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,sBAAsB,CAAC;AAE7D,MAAM,WAAW,qBAAqB,CACpC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC;IAEnD,OAAO,EAAE,OAAO,sBAAsB,GAAG,OAAO,CAAC;IACjD,aAAa,EAAE,CACb,MAAM,EACF,MAAM,CAAC,OAAO,sBAAsB,GAAG,OAAO,CAAC,GAC/C,mBAAmB,KACpB,mBAAmB,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,sBAAsB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;CAC3E;AAED,wBAAgB,yBAAyB,CACvC,MAAM,EAAE,mBAAmB,GAC1B,mBAAmB,CAkBrB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,EACnD,aAAa,EAAE,OAAO,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAiCxD"}
@@ -0,0 +1,186 @@
1
+ export const WEB_HANDLER_EXPORTS = [
2
+ "default",
3
+ "default.fetch",
4
+ "handler",
5
+ "fetch",
6
+ "app.fetch",
7
+ "server.fetch",
8
+ ];
9
+ export const SSR_RENDER_EXPORTS = ["render", "ssr", "default"];
10
+ const RESPONSE_PARSER_CODE = `
11
+ function __parseResponse(result) {
12
+ if (result instanceof Response) return result;
13
+
14
+ if (typeof result === 'string') {
15
+ const isFullHtml = result.trim().toLowerCase().startsWith('<!doctype') ||
16
+ result.trim().toLowerCase().startsWith('<html');
17
+ return new Response(result, {
18
+ status: 200,
19
+ headers: { 'Content-Type': isFullHtml ? 'text/html; charset=utf-8' : 'text/plain; charset=utf-8' }
20
+ });
21
+ }
22
+
23
+ if (result === null || result === undefined) {
24
+ return new Response('Not Found', {
25
+ status: 404,
26
+ headers: { 'Content-Type': 'text/plain; charset=utf-8' }
27
+ });
28
+ }
29
+
30
+ return new Response(JSON.stringify(result), {
31
+ status: 200,
32
+ headers: { 'Content-Type': 'application/json; charset=utf-8' }
33
+ });
34
+ }`.trim();
35
+ function generateExportCheck(exportPath) {
36
+ if (exportPath === "default") {
37
+ return `if (typeof defaultExport === 'function') return defaultExport;`;
38
+ }
39
+ if (exportPath === "default.fetch") {
40
+ return `if (typeof defaultExport === 'object' && defaultExport !== null && typeof defaultExport.fetch === 'function') return defaultExport.fetch.bind(defaultExport);`;
41
+ }
42
+ if (exportPath.includes(".")) {
43
+ const [obj, method] = exportPath.split(".");
44
+ return `if (typeof serverExports.${obj} === 'object' && serverExports.${obj} !== null && typeof serverExports.${obj}.${method} === 'function') return serverExports.${obj}.${method}.bind(serverExports.${obj});`;
45
+ }
46
+ return `if (typeof serverExports.${exportPath} === 'function') return serverExports.${exportPath};`;
47
+ }
48
+ function generateHandlerDetection(exportPaths) {
49
+ const checks = exportPaths
50
+ .map((p) => ` ${generateExportCheck(p)}`)
51
+ .join("\n");
52
+ const expectedList = exportPaths.join(", ");
53
+ return `
54
+ const __getHandler = () => {
55
+ ${checks}
56
+ throw new Error('No handler found. Expected exports: ${expectedList}');
57
+ };
58
+ const __handler = __getHandler();`.trim();
59
+ }
60
+ function generateInvokeCode(mode) {
61
+ if (mode === "web") {
62
+ return `
63
+ async function __handleRequest(request) {
64
+ const result = await __handler(request);
65
+ return __parseResponse(result);
66
+ }`.trim();
67
+ }
68
+ if (mode === "ssr") {
69
+ return `
70
+ async function __handleRequest(request) {
71
+ const url = new URL(request.url);
72
+ const fullUrl = url.pathname + url.search;
73
+ const result = await __handler(fullUrl, request);
74
+ return __parseResponse(result);
75
+ }`.trim();
76
+ }
77
+ return `
78
+ async function __handleRequest(request) {
79
+ const url = new URL(request.url);
80
+ const fullUrl = url.pathname + url.search;
81
+ let result;
82
+
83
+ try {
84
+ result = await __handler(request);
85
+ if (result === undefined) {
86
+ result = await __handler(fullUrl, request);
87
+ }
88
+ } catch (e) {
89
+ result = await __handler(fullUrl, request);
90
+ }
91
+
92
+ return __parseResponse(result);
93
+ }`.trim();
94
+ }
95
+ function normalizeExports(exports) {
96
+ if (!exports)
97
+ return [];
98
+ return Array.isArray(exports) ? exports : [exports];
99
+ }
100
+ export function resolvePreset(preset) {
101
+ if (preset.setup && preset.invoke) {
102
+ return {
103
+ imports: preset.imports ?? "",
104
+ setup: preset.setup.trim(),
105
+ invoke: preset.invoke,
106
+ esbuildConfig: preset.esbuildConfig,
107
+ };
108
+ }
109
+ const exportPaths = normalizeExports(preset.exports);
110
+ const mode = preset.mode ?? "auto";
111
+ if (exportPaths.length === 0) {
112
+ throw new Error("ServerWrapperPreset must specify either 'exports' or 'setup'+'invoke'");
113
+ }
114
+ const handlerDetection = generateHandlerDetection(exportPaths);
115
+ const invokeCode = generateInvokeCode(mode);
116
+ const generatedSetup = `
117
+ ${RESPONSE_PARSER_CODE}
118
+
119
+ ${handlerDetection}
120
+
121
+ ${invokeCode}`.trim();
122
+ return {
123
+ imports: preset.imports ?? "",
124
+ setup: generatedSetup,
125
+ invoke: "__handleRequest(webRequest)",
126
+ esbuildConfig: preset.esbuildConfig,
127
+ };
128
+ }
129
+ export function createWebHandlerPreset(exportPaths = [...WEB_HANDLER_EXPORTS]) {
130
+ return { exports: exportPaths, mode: "web" };
131
+ }
132
+ export function createSSRRenderPreset(exportPaths = [...SSR_RENDER_EXPORTS]) {
133
+ return { exports: exportPaths, mode: "ssr" };
134
+ }
135
+ export function createAutoDetectPreset() {
136
+ return {
137
+ exports: ["default", "default.fetch", "handler", "fetch", "render", "ssr"],
138
+ mode: "auto",
139
+ };
140
+ }
141
+ export const SERVER_WRAPPER_PRESETS = {
142
+ autoDetect: createAutoDetectPreset(),
143
+ webHandler: createWebHandlerPreset(),
144
+ ssrRender: createSSRRenderPreset(),
145
+ };
146
+ export function createServerWrapperPreset(config) {
147
+ const hasDeclarative = config.exports !== undefined;
148
+ const hasCustomCode = config.setup && config.invoke;
149
+ if (!hasDeclarative && !hasCustomCode) {
150
+ throw new Error("ServerWrapperPreset must specify either 'exports' or 'setup'+'invoke'");
151
+ }
152
+ return {
153
+ exports: config.exports,
154
+ mode: config.mode,
155
+ imports: config.imports,
156
+ setup: config.setup,
157
+ invoke: config.invoke,
158
+ esbuildConfig: config.esbuildConfig,
159
+ };
160
+ }
161
+ export function extendServerWrapperPresets(customPresets) {
162
+ const normalizedCustomPresets = {};
163
+ for (const [key, preset] of Object.entries(customPresets)) {
164
+ normalizedCustomPresets[key] = createServerWrapperPreset(preset);
165
+ }
166
+ const extendedPresets = {
167
+ ...SERVER_WRAPPER_PRESETS,
168
+ ...normalizedCustomPresets,
169
+ };
170
+ function resolvePresetByName(preset) {
171
+ if (typeof preset === "string") {
172
+ const resolved = extendedPresets[preset];
173
+ if (!resolved) {
174
+ throw new Error(`Unknown preset: "${preset}". Available: ${Object.keys(extendedPresets).join(", ")}`);
175
+ }
176
+ return resolved;
177
+ }
178
+ return createServerWrapperPreset(preset);
179
+ }
180
+ return {
181
+ presets: extendedPresets,
182
+ resolvePreset: resolvePresetByName,
183
+ getPresetNames: () => Object.keys(extendedPresets),
184
+ };
185
+ }
186
+ //# sourceMappingURL=presets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.js","sourceRoot":"","sources":["../../src/factory/presets.ts"],"names":[],"mappings":"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"}