@gxp-dev/tools 2.0.62 → 2.0.64
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 +32 -31
- package/bin/gx-devtools.js +74 -54
- package/bin/lib/cli.js +23 -21
- package/bin/lib/commands/add-dependency.js +366 -325
- package/bin/lib/commands/assets.js +137 -139
- package/bin/lib/commands/build.js +169 -174
- package/bin/lib/commands/datastore.js +181 -183
- package/bin/lib/commands/dev.js +127 -131
- package/bin/lib/commands/extensions.js +147 -149
- package/bin/lib/commands/extract-config.js +73 -67
- package/bin/lib/commands/index.js +12 -12
- package/bin/lib/commands/init.js +342 -240
- package/bin/lib/commands/publish.js +69 -75
- package/bin/lib/commands/socket.js +69 -69
- package/bin/lib/commands/ssl.js +14 -14
- package/bin/lib/constants.js +10 -24
- package/bin/lib/tui/App.tsx +761 -705
- package/bin/lib/tui/components/AIPanel.tsx +191 -171
- package/bin/lib/tui/components/CommandInput.tsx +394 -343
- package/bin/lib/tui/components/GeminiPanel.tsx +175 -151
- package/bin/lib/tui/components/Header.tsx +23 -21
- package/bin/lib/tui/components/LogPanel.tsx +244 -220
- package/bin/lib/tui/components/TabBar.tsx +50 -48
- package/bin/lib/tui/components/WelcomeScreen.tsx +126 -71
- package/bin/lib/tui/index.tsx +37 -39
- package/bin/lib/tui/services/AIService.ts +518 -462
- package/bin/lib/tui/services/ExtensionService.ts +140 -129
- package/bin/lib/tui/services/GeminiService.ts +367 -337
- package/bin/lib/tui/services/ServiceManager.ts +344 -322
- package/bin/lib/tui/services/SocketService.ts +168 -168
- package/bin/lib/tui/services/ViteService.ts +88 -88
- package/bin/lib/tui/services/index.ts +47 -22
- package/bin/lib/utils/ai-scaffold.js +291 -280
- package/bin/lib/utils/extract-config.js +157 -140
- package/bin/lib/utils/files.js +82 -86
- package/bin/lib/utils/index.js +7 -7
- package/bin/lib/utils/paths.js +34 -34
- package/bin/lib/utils/prompts.js +194 -169
- package/bin/lib/utils/ssl.js +79 -81
- package/browser-extensions/README.md +0 -1
- package/browser-extensions/chrome/background.js +244 -237
- package/browser-extensions/chrome/content.js +32 -29
- package/browser-extensions/chrome/devtools.html +7 -7
- package/browser-extensions/chrome/devtools.js +19 -19
- package/browser-extensions/chrome/inspector.js +802 -767
- package/browser-extensions/chrome/manifest.json +71 -63
- package/browser-extensions/chrome/panel.html +674 -636
- package/browser-extensions/chrome/panel.js +722 -712
- package/browser-extensions/chrome/popup.html +586 -543
- package/browser-extensions/chrome/popup.js +282 -244
- package/browser-extensions/chrome/rules.json +1 -1
- package/browser-extensions/chrome/test-chrome.html +216 -136
- package/browser-extensions/chrome/test-mixed-content.html +284 -189
- package/browser-extensions/chrome/test-uri-pattern.html +221 -198
- package/browser-extensions/firefox/README.md +9 -6
- package/browser-extensions/firefox/background.js +221 -218
- package/browser-extensions/firefox/content.js +55 -52
- package/browser-extensions/firefox/debug-errors.html +386 -228
- package/browser-extensions/firefox/debug-https.html +153 -105
- package/browser-extensions/firefox/devtools.html +7 -7
- package/browser-extensions/firefox/devtools.js +23 -20
- package/browser-extensions/firefox/inspector.js +802 -767
- package/browser-extensions/firefox/manifest.json +68 -68
- package/browser-extensions/firefox/panel.html +674 -636
- package/browser-extensions/firefox/panel.js +722 -712
- package/browser-extensions/firefox/popup.html +572 -535
- package/browser-extensions/firefox/popup.js +281 -236
- package/browser-extensions/firefox/test-gramercy.html +170 -125
- package/browser-extensions/firefox/test-imports.html +59 -55
- package/browser-extensions/firefox/test-masking.html +231 -140
- package/browser-extensions/firefox/test-uri-pattern.html +221 -198
- package/dist/tui/App.d.ts +1 -1
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +154 -150
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/components/AIPanel.d.ts.map +1 -1
- package/dist/tui/components/AIPanel.js +42 -35
- package/dist/tui/components/AIPanel.js.map +1 -1
- package/dist/tui/components/CommandInput.d.ts +1 -1
- package/dist/tui/components/CommandInput.d.ts.map +1 -1
- package/dist/tui/components/CommandInput.js +92 -62
- package/dist/tui/components/CommandInput.js.map +1 -1
- package/dist/tui/components/GeminiPanel.d.ts.map +1 -1
- package/dist/tui/components/GeminiPanel.js +37 -30
- package/dist/tui/components/GeminiPanel.js.map +1 -1
- package/dist/tui/components/Header.d.ts.map +1 -1
- package/dist/tui/components/Header.js +1 -1
- package/dist/tui/components/Header.js.map +1 -1
- package/dist/tui/components/LogPanel.d.ts +1 -1
- package/dist/tui/components/LogPanel.d.ts.map +1 -1
- package/dist/tui/components/LogPanel.js +26 -24
- package/dist/tui/components/LogPanel.js.map +1 -1
- package/dist/tui/components/TabBar.d.ts +2 -2
- package/dist/tui/components/TabBar.d.ts.map +1 -1
- package/dist/tui/components/TabBar.js +11 -11
- package/dist/tui/components/TabBar.js.map +1 -1
- package/dist/tui/components/WelcomeScreen.d.ts.map +1 -1
- package/dist/tui/components/WelcomeScreen.js +6 -6
- package/dist/tui/components/WelcomeScreen.js.map +1 -1
- package/dist/tui/index.d.ts.map +1 -1
- package/dist/tui/index.js +8 -8
- package/dist/tui/index.js.map +1 -1
- package/dist/tui/services/AIService.d.ts +2 -2
- package/dist/tui/services/AIService.d.ts.map +1 -1
- package/dist/tui/services/AIService.js +165 -125
- package/dist/tui/services/AIService.js.map +1 -1
- package/dist/tui/services/ExtensionService.d.ts +1 -1
- package/dist/tui/services/ExtensionService.d.ts.map +1 -1
- package/dist/tui/services/ExtensionService.js +33 -26
- package/dist/tui/services/ExtensionService.js.map +1 -1
- package/dist/tui/services/GeminiService.d.ts +1 -1
- package/dist/tui/services/GeminiService.d.ts.map +1 -1
- package/dist/tui/services/GeminiService.js +87 -76
- package/dist/tui/services/GeminiService.js.map +1 -1
- package/dist/tui/services/ServiceManager.d.ts +3 -3
- package/dist/tui/services/ServiceManager.d.ts.map +1 -1
- package/dist/tui/services/ServiceManager.js +72 -58
- package/dist/tui/services/ServiceManager.js.map +1 -1
- package/dist/tui/services/SocketService.d.ts.map +1 -1
- package/dist/tui/services/SocketService.js +32 -32
- package/dist/tui/services/SocketService.js.map +1 -1
- package/dist/tui/services/ViteService.d.ts.map +1 -1
- package/dist/tui/services/ViteService.js +26 -28
- package/dist/tui/services/ViteService.js.map +1 -1
- package/dist/tui/services/index.d.ts +6 -6
- package/dist/tui/services/index.d.ts.map +1 -1
- package/dist/tui/services/index.js +6 -6
- package/dist/tui/services/index.js.map +1 -1
- package/mcp/gxp-api-server.js +83 -81
- package/package.json +109 -93
- package/runtime/PortalContainer.vue +258 -234
- package/runtime/dev-tools/DevToolsModal.vue +153 -155
- package/runtime/dev-tools/LayoutSwitcher.vue +144 -140
- package/runtime/dev-tools/MockDataEditor.vue +456 -433
- package/runtime/dev-tools/SocketSimulator.vue +379 -371
- package/runtime/dev-tools/StoreInspector.vue +517 -455
- package/runtime/dev-tools/index.js +5 -5
- package/runtime/fallback-layouts/PrivateLayout.vue +2 -2
- package/runtime/fallback-layouts/PublicLayout.vue +2 -2
- package/runtime/fallback-layouts/SystemLayout.vue +2 -2
- package/runtime/gxpStringsPlugin.js +159 -134
- package/runtime/index.html +17 -19
- package/runtime/main.js +24 -22
- package/runtime/mock-api/auth-middleware.js +15 -15
- package/runtime/mock-api/image-generator.js +46 -46
- package/runtime/mock-api/index.js +55 -55
- package/runtime/mock-api/response-generator.js +116 -105
- package/runtime/mock-api/route-generator.js +107 -84
- package/runtime/mock-api/socket-triggers.js +94 -93
- package/runtime/mock-api/spec-loader.js +79 -80
- package/runtime/package.json +3 -0
- package/runtime/server.js +68 -68
- package/runtime/stores/gxpPortalConfigStore.js +204 -186
- package/runtime/stores/index.js +2 -2
- package/runtime/vite-inspector-plugin.js +858 -707
- package/runtime/vite-source-tracker-plugin.js +132 -113
- package/runtime/vite.config.js +207 -132
- package/scripts/launch-chrome.js +41 -41
- package/scripts/pack-chrome.js +38 -39
- package/socket-events/AiSessionMessageCreated.json +17 -17
- package/socket-events/SocialStreamPostCreated.json +23 -23
- package/socket-events/SocialStreamPostVariantCompleted.json +22 -22
- package/template/.claude/agents/gxp-developer.md +100 -99
- package/template/.claude/settings.json +7 -7
- package/template/AGENTS.md +30 -23
- package/template/GEMINI.md +20 -20
- package/template/README.md +70 -53
- package/template/app-manifest.json +2 -4
- package/template/configuration.json +10 -10
- package/template/default-styling.css +1 -1
- package/template/index.html +18 -20
- package/template/main.js +24 -22
- package/template/src/DemoPage.vue +415 -362
- package/template/src/Plugin.vue +76 -85
- package/template/src/stores/index.js +3 -3
- package/template/src/stores/test-data.json +164 -172
- package/template/theme-layouts/AdditionalStyling.css +50 -50
- package/template/theme-layouts/PrivateLayout.vue +8 -12
- package/template/theme-layouts/PublicLayout.vue +8 -12
- package/template/theme-layouts/SystemLayout.vue +8 -12
- package/template/vite.extend.js +45 -0
- package/template/vite.config.js +0 -409
package/bin/lib/utils/ssl.js
CHANGED
|
@@ -4,15 +4,15 @@
|
|
|
4
4
|
* Handles SSL certificate generation and management using mkcert.
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
const path = require("path")
|
|
8
|
-
const fs = require("fs")
|
|
9
|
-
const shell = require("shelljs")
|
|
7
|
+
const path = require("path")
|
|
8
|
+
const fs = require("fs")
|
|
9
|
+
const shell = require("shelljs")
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Checks if mkcert is installed globally
|
|
13
13
|
*/
|
|
14
14
|
function isMkcertInstalled() {
|
|
15
|
-
return shell.which("mkcert") !== null
|
|
15
|
+
return shell.which("mkcert") !== null
|
|
16
16
|
}
|
|
17
17
|
|
|
18
18
|
/**
|
|
@@ -20,19 +20,19 @@ function isMkcertInstalled() {
|
|
|
20
20
|
*/
|
|
21
21
|
function ensureMkcertInstalled() {
|
|
22
22
|
if (isMkcertInstalled()) {
|
|
23
|
-
console.log("✓ mkcert is already installed globally")
|
|
24
|
-
return true
|
|
23
|
+
console.log("✓ mkcert is already installed globally")
|
|
24
|
+
return true
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
console.log("Installing mkcert globally...")
|
|
28
|
-
const result = shell.exec("npm install -g mkcert", { silent: true })
|
|
27
|
+
console.log("Installing mkcert globally...")
|
|
28
|
+
const result = shell.exec("npm install -g mkcert", { silent: true })
|
|
29
29
|
|
|
30
30
|
if (result.code === 0) {
|
|
31
|
-
console.log("✓ mkcert installed successfully")
|
|
32
|
-
return true
|
|
31
|
+
console.log("✓ mkcert installed successfully")
|
|
32
|
+
return true
|
|
33
33
|
} else {
|
|
34
|
-
console.warn("⚠ Could not install mkcert globally, will use local version")
|
|
35
|
-
return false
|
|
34
|
+
console.warn("⚠ Could not install mkcert globally, will use local version")
|
|
35
|
+
return false
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
|
|
@@ -41,38 +41,38 @@ function ensureMkcertInstalled() {
|
|
|
41
41
|
*/
|
|
42
42
|
function findExistingCertificates(certsDir) {
|
|
43
43
|
if (!fs.existsSync(certsDir)) {
|
|
44
|
-
return null
|
|
44
|
+
return null
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
const files = fs.readdirSync(certsDir)
|
|
47
|
+
const files = fs.readdirSync(certsDir)
|
|
48
48
|
|
|
49
49
|
// Look for localhost certificates (with or without suffixes)
|
|
50
50
|
const certFile = files.find(
|
|
51
51
|
(f) =>
|
|
52
|
-
f.startsWith("localhost") && f.endsWith(".pem") && !f.includes("-key")
|
|
53
|
-
)
|
|
52
|
+
f.startsWith("localhost") && f.endsWith(".pem") && !f.includes("-key"),
|
|
53
|
+
)
|
|
54
54
|
const keyFile = files.find(
|
|
55
|
-
(f) => f.startsWith("localhost") && f.endsWith("-key.pem")
|
|
56
|
-
)
|
|
55
|
+
(f) => f.startsWith("localhost") && f.endsWith("-key.pem"),
|
|
56
|
+
)
|
|
57
57
|
|
|
58
58
|
if (certFile && keyFile) {
|
|
59
|
-
const certPath = path.join(certsDir, certFile)
|
|
60
|
-
const keyPath = path.join(certsDir, keyFile)
|
|
59
|
+
const certPath = path.join(certsDir, certFile)
|
|
60
|
+
const keyPath = path.join(certsDir, keyFile)
|
|
61
61
|
|
|
62
62
|
// Verify files actually exist and have content
|
|
63
63
|
try {
|
|
64
|
-
const certStats = fs.statSync(certPath)
|
|
65
|
-
const keyStats = fs.statSync(keyPath)
|
|
64
|
+
const certStats = fs.statSync(certPath)
|
|
65
|
+
const keyStats = fs.statSync(keyPath)
|
|
66
66
|
|
|
67
67
|
if (certStats.size > 0 && keyStats.size > 0) {
|
|
68
|
-
return { certPath, keyPath }
|
|
68
|
+
return { certPath, keyPath }
|
|
69
69
|
}
|
|
70
70
|
} catch (error) {
|
|
71
71
|
// Files don't exist or can't be read
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
-
return null
|
|
75
|
+
return null
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
/**
|
|
@@ -80,31 +80,31 @@ function findExistingCertificates(certsDir) {
|
|
|
80
80
|
*/
|
|
81
81
|
function cleanupOldCertificates(certsDir) {
|
|
82
82
|
if (!fs.existsSync(certsDir)) {
|
|
83
|
-
return
|
|
83
|
+
return
|
|
84
84
|
}
|
|
85
85
|
|
|
86
86
|
try {
|
|
87
|
-
const files = fs.readdirSync(certsDir)
|
|
87
|
+
const files = fs.readdirSync(certsDir)
|
|
88
88
|
const certFiles = files.filter(
|
|
89
89
|
(f) =>
|
|
90
90
|
f.startsWith("localhost") &&
|
|
91
|
-
(f.endsWith(".pem") || f.endsWith("-key.pem"))
|
|
92
|
-
)
|
|
91
|
+
(f.endsWith(".pem") || f.endsWith("-key.pem")),
|
|
92
|
+
)
|
|
93
93
|
|
|
94
94
|
if (certFiles.length > 0) {
|
|
95
|
-
console.log("🧹 Cleaning up old certificate files...")
|
|
95
|
+
console.log("🧹 Cleaning up old certificate files...")
|
|
96
96
|
certFiles.forEach((file) => {
|
|
97
|
-
const filePath = path.join(certsDir, file)
|
|
97
|
+
const filePath = path.join(certsDir, file)
|
|
98
98
|
try {
|
|
99
|
-
fs.unlinkSync(filePath)
|
|
100
|
-
console.log(` Removed: ${file}`)
|
|
99
|
+
fs.unlinkSync(filePath)
|
|
100
|
+
console.log(` Removed: ${file}`)
|
|
101
101
|
} catch (error) {
|
|
102
|
-
console.warn(` Could not remove ${file}: ${error.message}`)
|
|
102
|
+
console.warn(` Could not remove ${file}: ${error.message}`)
|
|
103
103
|
}
|
|
104
|
-
})
|
|
104
|
+
})
|
|
105
105
|
}
|
|
106
106
|
} catch (error) {
|
|
107
|
-
console.warn("⚠ Could not clean up old certificates:", error.message)
|
|
107
|
+
console.warn("⚠ Could not clean up old certificates:", error.message)
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
|
|
@@ -112,74 +112,72 @@ function cleanupOldCertificates(certsDir) {
|
|
|
112
112
|
* Generates SSL certificates for localhost using mkcert
|
|
113
113
|
*/
|
|
114
114
|
function generateSSLCertificates(projectPath) {
|
|
115
|
-
const certsDir = path.join(projectPath, ".certs")
|
|
115
|
+
const certsDir = path.join(projectPath, ".certs")
|
|
116
116
|
|
|
117
117
|
// Create .certs directory
|
|
118
118
|
if (!fs.existsSync(certsDir)) {
|
|
119
|
-
fs.mkdirSync(certsDir, { recursive: true })
|
|
119
|
+
fs.mkdirSync(certsDir, { recursive: true })
|
|
120
120
|
}
|
|
121
121
|
|
|
122
122
|
// Check for existing certificates (including those with suffixes like +2)
|
|
123
|
-
const existingCerts = findExistingCertificates(certsDir)
|
|
123
|
+
const existingCerts = findExistingCertificates(certsDir)
|
|
124
124
|
if (existingCerts) {
|
|
125
|
-
console.log("✓ SSL certificates already exist")
|
|
126
|
-
return existingCerts
|
|
125
|
+
console.log("✓ SSL certificates already exist")
|
|
126
|
+
return existingCerts
|
|
127
127
|
}
|
|
128
128
|
|
|
129
|
-
console.log("Generating SSL certificates for localhost...")
|
|
129
|
+
console.log("Generating SSL certificates for localhost...")
|
|
130
130
|
|
|
131
131
|
// Clean up any leftover certificate files to avoid naming conflicts
|
|
132
|
-
cleanupOldCertificates(certsDir)
|
|
132
|
+
cleanupOldCertificates(certsDir)
|
|
133
133
|
|
|
134
134
|
// Try global mkcert first
|
|
135
|
-
let mkcertCmd = "mkcert"
|
|
135
|
+
let mkcertCmd = "mkcert"
|
|
136
136
|
if (!isMkcertInstalled()) {
|
|
137
137
|
// Use local mkcert via npx
|
|
138
|
-
mkcertCmd = "npx mkcert"
|
|
138
|
+
mkcertCmd = "npx mkcert"
|
|
139
139
|
}
|
|
140
140
|
|
|
141
141
|
// Change to certs directory and generate certificates
|
|
142
|
-
const currentDir = process.cwd()
|
|
142
|
+
const currentDir = process.cwd()
|
|
143
143
|
try {
|
|
144
|
-
process.chdir(certsDir)
|
|
144
|
+
process.chdir(certsDir)
|
|
145
145
|
|
|
146
146
|
// Install CA if needed (only for global mkcert)
|
|
147
147
|
if (isMkcertInstalled()) {
|
|
148
|
-
shell.exec(`${mkcertCmd} -install`, { silent: true })
|
|
148
|
+
shell.exec(`${mkcertCmd} -install`, { silent: true })
|
|
149
149
|
}
|
|
150
150
|
|
|
151
151
|
// Generate certificates for localhost
|
|
152
152
|
const result = shell.exec(`${mkcertCmd} localhost 127.0.0.1 ::1`, {
|
|
153
153
|
silent: true,
|
|
154
|
-
})
|
|
154
|
+
})
|
|
155
155
|
|
|
156
156
|
if (result.code === 0) {
|
|
157
157
|
// Find the actual generated certificate files
|
|
158
|
-
const generatedCerts = findExistingCertificates(certsDir)
|
|
158
|
+
const generatedCerts = findExistingCertificates(certsDir)
|
|
159
159
|
if (generatedCerts) {
|
|
160
|
-
console.log("✓ SSL certificates generated successfully")
|
|
161
|
-
console.log(
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
console.log(`🔑 Key: ${path.basename(generatedCerts.keyPath)}`);
|
|
165
|
-
return generatedCerts;
|
|
160
|
+
console.log("✓ SSL certificates generated successfully")
|
|
161
|
+
console.log(`📁 Certificate: ${path.basename(generatedCerts.certPath)}`)
|
|
162
|
+
console.log(`🔑 Key: ${path.basename(generatedCerts.keyPath)}`)
|
|
163
|
+
return generatedCerts
|
|
166
164
|
} else {
|
|
167
165
|
console.warn(
|
|
168
|
-
"⚠ Certificates generated but not found in expected location"
|
|
169
|
-
)
|
|
170
|
-
return null
|
|
166
|
+
"⚠ Certificates generated but not found in expected location",
|
|
167
|
+
)
|
|
168
|
+
return null
|
|
171
169
|
}
|
|
172
170
|
} else {
|
|
173
171
|
console.warn(
|
|
174
|
-
"⚠ Failed to generate SSL certificates, falling back to HTTP"
|
|
175
|
-
)
|
|
176
|
-
return null
|
|
172
|
+
"⚠ Failed to generate SSL certificates, falling back to HTTP",
|
|
173
|
+
)
|
|
174
|
+
return null
|
|
177
175
|
}
|
|
178
176
|
} catch (error) {
|
|
179
|
-
console.warn("⚠ Error generating SSL certificates:", error.message)
|
|
180
|
-
return null
|
|
177
|
+
console.warn("⚠ Error generating SSL certificates:", error.message)
|
|
178
|
+
return null
|
|
181
179
|
} finally {
|
|
182
|
-
process.chdir(currentDir)
|
|
180
|
+
process.chdir(currentDir)
|
|
183
181
|
}
|
|
184
182
|
}
|
|
185
183
|
|
|
@@ -187,39 +185,39 @@ function generateSSLCertificates(projectPath) {
|
|
|
187
185
|
* Updates the .env file with the actual SSL certificate paths
|
|
188
186
|
*/
|
|
189
187
|
function updateEnvWithCertPaths(projectPath, certs) {
|
|
190
|
-
const envPath = path.join(projectPath, ".env")
|
|
188
|
+
const envPath = path.join(projectPath, ".env")
|
|
191
189
|
|
|
192
190
|
if (!fs.existsSync(envPath)) {
|
|
193
|
-
console.warn("⚠ .env file not found, skipping certificate path update")
|
|
194
|
-
return
|
|
191
|
+
console.warn("⚠ .env file not found, skipping certificate path update")
|
|
192
|
+
return
|
|
195
193
|
}
|
|
196
194
|
|
|
197
195
|
try {
|
|
198
|
-
let envContent = fs.readFileSync(envPath, "utf-8")
|
|
196
|
+
let envContent = fs.readFileSync(envPath, "utf-8")
|
|
199
197
|
|
|
200
198
|
// Get just the filenames from the full paths
|
|
201
|
-
const certFileName = path.basename(certs.certPath)
|
|
202
|
-
const keyFileName = path.basename(certs.keyPath)
|
|
199
|
+
const certFileName = path.basename(certs.certPath)
|
|
200
|
+
const keyFileName = path.basename(certs.keyPath)
|
|
203
201
|
|
|
204
202
|
// Update CERT_PATH and KEY_PATH with actual filenames
|
|
205
203
|
envContent = envContent.replace(
|
|
206
204
|
/CERT_PATH=.*$/m,
|
|
207
|
-
`CERT_PATH=.certs/${certFileName}
|
|
208
|
-
)
|
|
205
|
+
`CERT_PATH=.certs/${certFileName}`,
|
|
206
|
+
)
|
|
209
207
|
envContent = envContent.replace(
|
|
210
208
|
/KEY_PATH=.*$/m,
|
|
211
|
-
`KEY_PATH=.certs/${keyFileName}
|
|
212
|
-
)
|
|
209
|
+
`KEY_PATH=.certs/${keyFileName}`,
|
|
210
|
+
)
|
|
213
211
|
|
|
214
|
-
fs.writeFileSync(envPath, envContent)
|
|
215
|
-
console.log("✓ Updated .env with SSL certificate paths")
|
|
216
|
-
console.log(` CERT_PATH=.certs/${certFileName}`)
|
|
217
|
-
console.log(` KEY_PATH=.certs/${keyFileName}`)
|
|
212
|
+
fs.writeFileSync(envPath, envContent)
|
|
213
|
+
console.log("✓ Updated .env with SSL certificate paths")
|
|
214
|
+
console.log(` CERT_PATH=.certs/${certFileName}`)
|
|
215
|
+
console.log(` KEY_PATH=.certs/${keyFileName}`)
|
|
218
216
|
} catch (error) {
|
|
219
217
|
console.warn(
|
|
220
218
|
"⚠ Could not update .env with certificate paths:",
|
|
221
|
-
error.message
|
|
222
|
-
)
|
|
219
|
+
error.message,
|
|
220
|
+
)
|
|
223
221
|
}
|
|
224
222
|
}
|
|
225
223
|
|
|
@@ -230,4 +228,4 @@ module.exports = {
|
|
|
230
228
|
cleanupOldCertificates,
|
|
231
229
|
generateSSLCertificates,
|
|
232
230
|
updateEnvWithCertPaths,
|
|
233
|
-
}
|
|
231
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
|