@base44-preview/vite-plugin 0.1.0-dev.90d799e → 0.1.0-dev.e65cc11
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/compat/agents.cjs +13 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +72 -36
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +104 -53
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAc,MAAM,MAAM,CAAC;AAG/C,MAAM,CAAC,OAAO,UAAU,UAAU,CAChC,IAAI,GAAE;IACJ,gBAAgB,CAAC,EAAE,OAAO,CAAC;CACvB,GA6HD,MAAM,CACZ"}
|
package/dist/index.js
CHANGED
|
@@ -1,58 +1,94 @@
|
|
|
1
1
|
import { loadEnv } from "vite";
|
|
2
|
-
export default function vitePlugin() {
|
|
2
|
+
export default function vitePlugin(opts = {}) {
|
|
3
|
+
const { legacySDKImports = false } = opts;
|
|
3
4
|
return {
|
|
4
5
|
name: "base44",
|
|
5
6
|
config: ({ mode }) => {
|
|
6
7
|
const env = loadEnv(mode ?? "development", process.cwd(), "");
|
|
8
|
+
const isRunningInSandbox = process.env.BASE44_SANDBOX_MODE === "true";
|
|
7
9
|
return {
|
|
8
10
|
resolve: {
|
|
9
11
|
alias: {
|
|
10
12
|
"@/": "/src/",
|
|
11
13
|
},
|
|
12
14
|
},
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
15
|
+
...(isRunningInSandbox
|
|
16
|
+
? {
|
|
17
|
+
plugins: [
|
|
18
|
+
{
|
|
19
|
+
name: "iframe-hmr",
|
|
20
|
+
configureServer(server) {
|
|
21
|
+
server.middlewares.use((req, res, next) => {
|
|
22
|
+
// Allow iframe embedding
|
|
23
|
+
res.setHeader("X-Frame-Options", "ALLOWALL");
|
|
24
|
+
res.setHeader("Content-Security-Policy", "frame-ancestors *;");
|
|
25
|
+
next();
|
|
26
|
+
});
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
],
|
|
30
|
+
server: {
|
|
31
|
+
host: "0.0.0.0", // Bind to all interfaces for container access
|
|
32
|
+
port: 5173,
|
|
33
|
+
strictPort: true,
|
|
34
|
+
// Allow all hosts - essential for Modal tunnel URLs
|
|
35
|
+
allowedHosts: true,
|
|
36
|
+
watch: {
|
|
37
|
+
// Enable polling for better file change detection in containers
|
|
38
|
+
usePolling: true,
|
|
39
|
+
interval: 100, // Check every 100ms for responsive HMR
|
|
40
|
+
},
|
|
41
|
+
hmr: {
|
|
42
|
+
protocol: "wss",
|
|
43
|
+
clientPort: 443,
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
build: {
|
|
47
|
+
rollupOptions: {
|
|
48
|
+
onwarn(warning, warn) {
|
|
49
|
+
// Treat import errors as fatal errors
|
|
50
|
+
if (warning.code === "UNRESOLVED_IMPORT" ||
|
|
51
|
+
warning.code === "MISSING_EXPORT") {
|
|
52
|
+
throw new Error(`Build failed: ${warning.message}`);
|
|
53
|
+
}
|
|
54
|
+
// Use default for other warnings
|
|
55
|
+
warn(warning);
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
}
|
|
60
|
+
: {}),
|
|
29
61
|
optimizeDeps: {
|
|
30
62
|
esbuildOptions: {
|
|
31
|
-
|
|
32
|
-
"
|
|
33
|
-
"process.env.VITE_BASE44_BACKEND_URL": JSON.stringify(env.VITE_BASE44_SERVER_URL),
|
|
63
|
+
loader: {
|
|
64
|
+
".js": "jsx",
|
|
34
65
|
},
|
|
66
|
+
...(legacySDKImports
|
|
67
|
+
? {
|
|
68
|
+
define: {
|
|
69
|
+
"process.env.VITE_BASE44_APP_ID": JSON.stringify(env.VITE_BASE44_APP_ID),
|
|
70
|
+
"process.env.VITE_BASE44_BACKEND_URL": JSON.stringify(env.VITE_BASE44_BACKEND_URL),
|
|
71
|
+
},
|
|
72
|
+
}
|
|
73
|
+
: {}),
|
|
35
74
|
},
|
|
36
75
|
},
|
|
37
76
|
};
|
|
38
77
|
},
|
|
39
|
-
configureServer(server) {
|
|
40
|
-
server.middlewares.use((req, res, next) => {
|
|
41
|
-
// Allow iframe embedding
|
|
42
|
-
res.setHeader("X-Frame-Options", "ALLOWALL");
|
|
43
|
-
res.setHeader("Content-Security-Policy", "frame-ancestors *;");
|
|
44
|
-
next();
|
|
45
|
-
});
|
|
46
|
-
},
|
|
47
78
|
resolveId(source, importer, options) {
|
|
48
|
-
if (
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
79
|
+
if (legacySDKImports) {
|
|
80
|
+
if (source.includes("/entities")) {
|
|
81
|
+
return this.resolve("@base44/vite-plugin/compat/entities.cjs", importer, options);
|
|
82
|
+
}
|
|
83
|
+
if (source.includes("/functions")) {
|
|
84
|
+
return this.resolve("@base44/vite-plugin/compat/functions.cjs", importer, options);
|
|
85
|
+
}
|
|
86
|
+
if (source.includes("/integrations")) {
|
|
87
|
+
return this.resolve("@base44/vite-plugin/compat/integrations.cjs", importer, options);
|
|
88
|
+
}
|
|
89
|
+
if (source.includes("@/agents")) {
|
|
90
|
+
return this.resolve("@base44/vite-plugin/compat/agents.cjs", importer, options);
|
|
91
|
+
}
|
|
56
92
|
}
|
|
57
93
|
return null;
|
|
58
94
|
},
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,MAAM,CAAC,OAAO,UAAU,UAAU;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -1,11 +1,18 @@
|
|
|
1
|
-
import type { Plugin } from "vite";
|
|
1
|
+
import type { Plugin, UserConfig } from "vite";
|
|
2
2
|
import { loadEnv } from "vite";
|
|
3
3
|
|
|
4
|
-
export default function vitePlugin(
|
|
4
|
+
export default function vitePlugin(
|
|
5
|
+
opts: {
|
|
6
|
+
legacySDKImports?: boolean;
|
|
7
|
+
} = {}
|
|
8
|
+
) {
|
|
9
|
+
const { legacySDKImports = false } = opts;
|
|
10
|
+
|
|
5
11
|
return {
|
|
6
12
|
name: "base44",
|
|
7
13
|
config: ({ mode }) => {
|
|
8
14
|
const env = loadEnv(mode ?? "development", process.cwd(), "");
|
|
15
|
+
const isRunningInSandbox = process.env.BASE44_SANDBOX_MODE === "true";
|
|
9
16
|
|
|
10
17
|
return {
|
|
11
18
|
resolve: {
|
|
@@ -13,67 +20,111 @@ export default function vitePlugin() {
|
|
|
13
20
|
"@/": "/src/",
|
|
14
21
|
},
|
|
15
22
|
},
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
23
|
+
...(isRunningInSandbox
|
|
24
|
+
? ({
|
|
25
|
+
plugins: [
|
|
26
|
+
{
|
|
27
|
+
name: "iframe-hmr",
|
|
28
|
+
configureServer(server) {
|
|
29
|
+
server.middlewares.use((req, res, next) => {
|
|
30
|
+
// Allow iframe embedding
|
|
31
|
+
res.setHeader("X-Frame-Options", "ALLOWALL");
|
|
32
|
+
res.setHeader(
|
|
33
|
+
"Content-Security-Policy",
|
|
34
|
+
"frame-ancestors *;"
|
|
35
|
+
);
|
|
36
|
+
next();
|
|
37
|
+
});
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
],
|
|
41
|
+
server: {
|
|
42
|
+
host: "0.0.0.0", // Bind to all interfaces for container access
|
|
43
|
+
port: 5173,
|
|
44
|
+
strictPort: true,
|
|
45
|
+
// Allow all hosts - essential for Modal tunnel URLs
|
|
46
|
+
allowedHosts: true,
|
|
47
|
+
watch: {
|
|
48
|
+
// Enable polling for better file change detection in containers
|
|
49
|
+
usePolling: true,
|
|
50
|
+
interval: 100, // Check every 100ms for responsive HMR
|
|
51
|
+
},
|
|
52
|
+
hmr: {
|
|
53
|
+
protocol: "wss",
|
|
54
|
+
clientPort: 443,
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
build: {
|
|
58
|
+
rollupOptions: {
|
|
59
|
+
onwarn(warning, warn) {
|
|
60
|
+
// Treat import errors as fatal errors
|
|
61
|
+
if (
|
|
62
|
+
warning.code === "UNRESOLVED_IMPORT" ||
|
|
63
|
+
warning.code === "MISSING_EXPORT"
|
|
64
|
+
) {
|
|
65
|
+
throw new Error(`Build failed: ${warning.message}`);
|
|
66
|
+
}
|
|
67
|
+
// Use default for other warnings
|
|
68
|
+
warn(warning);
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
},
|
|
72
|
+
} as Partial<UserConfig>)
|
|
73
|
+
: {}),
|
|
32
74
|
optimizeDeps: {
|
|
33
75
|
esbuildOptions: {
|
|
34
|
-
|
|
35
|
-
"
|
|
36
|
-
env.VITE_BASE44_APP_ID
|
|
37
|
-
),
|
|
38
|
-
"process.env.VITE_BASE44_BACKEND_URL": JSON.stringify(
|
|
39
|
-
env.VITE_BASE44_SERVER_URL
|
|
40
|
-
),
|
|
76
|
+
loader: {
|
|
77
|
+
".js": "jsx",
|
|
41
78
|
},
|
|
79
|
+
...(legacySDKImports
|
|
80
|
+
? {
|
|
81
|
+
define: {
|
|
82
|
+
"process.env.VITE_BASE44_APP_ID": JSON.stringify(
|
|
83
|
+
env.VITE_BASE44_APP_ID
|
|
84
|
+
),
|
|
85
|
+
"process.env.VITE_BASE44_BACKEND_URL": JSON.stringify(
|
|
86
|
+
env.VITE_BASE44_BACKEND_URL
|
|
87
|
+
),
|
|
88
|
+
},
|
|
89
|
+
}
|
|
90
|
+
: {}),
|
|
42
91
|
},
|
|
43
92
|
},
|
|
44
93
|
};
|
|
45
94
|
},
|
|
46
|
-
configureServer(server) {
|
|
47
|
-
server.middlewares.use((req, res, next) => {
|
|
48
|
-
// Allow iframe embedding
|
|
49
|
-
res.setHeader("X-Frame-Options", "ALLOWALL");
|
|
50
|
-
res.setHeader("Content-Security-Policy", "frame-ancestors *;");
|
|
51
|
-
next();
|
|
52
|
-
});
|
|
53
|
-
},
|
|
54
95
|
resolveId(source, importer, options) {
|
|
55
|
-
if (
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
96
|
+
if (legacySDKImports) {
|
|
97
|
+
if (source.includes("/entities")) {
|
|
98
|
+
return this.resolve(
|
|
99
|
+
"@base44/vite-plugin/compat/entities.cjs",
|
|
100
|
+
importer,
|
|
101
|
+
options
|
|
102
|
+
);
|
|
103
|
+
}
|
|
62
104
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
105
|
+
if (source.includes("/functions")) {
|
|
106
|
+
return this.resolve(
|
|
107
|
+
"@base44/vite-plugin/compat/functions.cjs",
|
|
108
|
+
importer,
|
|
109
|
+
options
|
|
110
|
+
);
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
if (source.includes("/integrations")) {
|
|
114
|
+
return this.resolve(
|
|
115
|
+
"@base44/vite-plugin/compat/integrations.cjs",
|
|
116
|
+
importer,
|
|
117
|
+
options
|
|
118
|
+
);
|
|
119
|
+
}
|
|
70
120
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
121
|
+
if (source.includes("@/agents")) {
|
|
122
|
+
return this.resolve(
|
|
123
|
+
"@base44/vite-plugin/compat/agents.cjs",
|
|
124
|
+
importer,
|
|
125
|
+
options
|
|
126
|
+
);
|
|
127
|
+
}
|
|
77
128
|
}
|
|
78
129
|
|
|
79
130
|
return null;
|