Merge branch 'develop' into release
This commit is contained in:
Generated
+2
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "autonomy-studio-launcher",
|
"name": "autonomy-studio-launcher",
|
||||||
"version": "1.0.13",
|
"version": "1.0.14",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "autonomy-studio-launcher",
|
"name": "autonomy-studio-launcher",
|
||||||
"version": "1.0.13",
|
"version": "1.0.14",
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@electron-toolkit/preload": "^3.0.1",
|
"@electron-toolkit/preload": "^3.0.1",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "autonomy-studio-launcher",
|
"name": "autonomy-studio-launcher",
|
||||||
"version": "1.0.13",
|
"version": "1.0.14",
|
||||||
"description": "Autonomy Studio v2 Frontend",
|
"description": "Autonomy Studio v2 Frontend",
|
||||||
"main": "./out/main/index.js",
|
"main": "./out/main/index.js",
|
||||||
"author": {
|
"author": {
|
||||||
|
|||||||
+32
-6
@@ -297,12 +297,30 @@ function installDebPackage(debPath: string): Promise<void> {
|
|||||||
function createCleanChildEnv(extraEnv?: NodeJS.ProcessEnv): NodeJS.ProcessEnv {
|
function createCleanChildEnv(extraEnv?: NodeJS.ProcessEnv): NodeJS.ProcessEnv {
|
||||||
const env = { ...process.env, ...extraEnv }
|
const env = { ...process.env, ...extraEnv }
|
||||||
|
|
||||||
delete env.APPIMAGE
|
const blockedKeys = [
|
||||||
delete env.APPDIR
|
'APPIMAGE',
|
||||||
delete env.OWD
|
'APPDIR',
|
||||||
delete env.ARGV0
|
'OWD',
|
||||||
delete env.ELECTRON_RENDERER_URL
|
'ARGV0',
|
||||||
delete env.VITE_DEV_SERVER_URL
|
'ELECTRON_RUN_AS_NODE',
|
||||||
|
'ELECTRON_NO_ATTACH_CONSOLE',
|
||||||
|
'ELECTRON_ENABLE_LOGGING',
|
||||||
|
'ELECTRON_ENABLE_STACK_DUMPING',
|
||||||
|
'ELECTRON_OVERRIDE_DIST_PATH',
|
||||||
|
'ELECTRON_RENDERER_URL',
|
||||||
|
'NODE_OPTIONS',
|
||||||
|
'VITE_DEV_SERVER_URL',
|
||||||
|
]
|
||||||
|
|
||||||
|
for (const key of blockedKeys) {
|
||||||
|
delete env[key]
|
||||||
|
}
|
||||||
|
|
||||||
|
for (const key of Object.keys(env)) {
|
||||||
|
if (key.startsWith('npm_') || key.startsWith('npm_config_') || key.startsWith('npm_package_')) {
|
||||||
|
delete env[key]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return env
|
return env
|
||||||
}
|
}
|
||||||
@@ -931,6 +949,14 @@ function createWindow(): void {
|
|||||||
childEnv.ATNMY_AUDIENCE_APP = audienceApp
|
childEnv.ATNMY_AUDIENCE_APP = audienceApp
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!useDevLauncher) {
|
||||||
|
try {
|
||||||
|
chmodSync(spawnPath, 0o755)
|
||||||
|
} catch {
|
||||||
|
// Launch will surface the actual executable error if chmod is not allowed.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
const logPath = useDevLauncher ? join(app.getPath('temp'), `autonomy-studio-${appName.replace(/[^a-z0-9_-]+/gi, '-').toLowerCase()}.dev.log`) : undefined
|
const logPath = useDevLauncher ? join(app.getPath('temp'), `autonomy-studio-${appName.replace(/[^a-z0-9_-]+/gi, '-').toLowerCase()}.dev.log`) : undefined
|
||||||
const logFd = logPath ? openSync(logPath, 'a') : undefined
|
const logFd = logPath ? openSync(logPath, 'a') : undefined
|
||||||
if (logPath) {
|
if (logPath) {
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ function Login({ onLogin }: LoginProps): React.JSX.Element {
|
|||||||
{/* 플랫폼 공지 배너 — absolute로 레이아웃 영향 없음 */}
|
{/* 플랫폼 공지 배너 — absolute로 레이아웃 영향 없음 */}
|
||||||
{notice && !noticeDismissed && (
|
{notice && !noticeDismissed && (
|
||||||
<div className="absolute top-0 left-0 right-0 z-[100] flex items-start gap-3 px-5 py-3 bg-[rgba(22,27,42,0.92)] border-b border-[rgba(59,127,250,0.15)]">
|
<div className="absolute top-0 left-0 right-0 z-[100] flex items-start gap-3 px-5 py-3 bg-[rgba(22,27,42,0.92)] border-b border-[rgba(59,127,250,0.15)]">
|
||||||
<svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="var(--accent)" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" className="shrink-0">
|
<svg width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="var(--accent)" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" className="mt-[3px] shrink-0">
|
||||||
<circle cx="12" cy="12" r="10"/><line x1="12" y1="8" x2="12" y2="12"/><line x1="12" y1="16" x2="12.01" y2="16"/>
|
<circle cx="12" cy="12" r="10"/><line x1="12" y1="8" x2="12" y2="12"/><line x1="12" y1="16" x2="12.01" y2="16"/>
|
||||||
</svg>
|
</svg>
|
||||||
<p className="flex-1 whitespace-pre-line text-[11.5px] leading-[1.65] text-[var(--text-secondary)]">
|
<p className="flex-1 whitespace-pre-line text-[11.5px] leading-[1.65] text-[var(--text-secondary)]">
|
||||||
@@ -197,6 +197,7 @@ function Login({ onLogin }: LoginProps): React.JSX.Element {
|
|||||||
<div className="absolute inset-0 z-50 bg-[rgba(0,0,0,0.45)] pointer-events-none animate-[fadeIn_0.2s_ease]" />
|
<div className="absolute inset-0 z-50 bg-[rgba(0,0,0,0.45)] pointer-events-none animate-[fadeIn_0.2s_ease]" />
|
||||||
)}
|
)}
|
||||||
<div className="login-version-wrap">
|
<div className="login-version-wrap">
|
||||||
|
<div className="version-label">v{version}</div>
|
||||||
{launcherStatus?.action === 'UPDATE' && (
|
{launcherStatus?.action === 'UPDATE' && (
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
@@ -207,7 +208,6 @@ function Login({ onLogin }: LoginProps): React.JSX.Element {
|
|||||||
{updating ? `업데이트 ${updateProgress}%` : '업데이트'}
|
{updating ? `업데이트 ${updateProgress}%` : '업데이트'}
|
||||||
</button>
|
</button>
|
||||||
)}
|
)}
|
||||||
<div className="version-label">v{version}</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{/* Left — 브랜딩 + 동영상 */}
|
{/* Left — 브랜딩 + 동영상 */}
|
||||||
|
|||||||
Reference in New Issue
Block a user