diff --git a/ui/src/pages/AppsTab/AppsTab.tsx b/ui/src/pages/AppsTab/AppsTab.tsx index 6a884b93..0fbca0a7 100644 --- a/ui/src/pages/AppsTab/AppsTab.tsx +++ b/ui/src/pages/AppsTab/AppsTab.tsx @@ -175,7 +175,7 @@ function CreateAppView({ environments, selectedEnv }: { environments: Environmen const [newPort, setNewPort] = useState(''); const [envVars, setEnvVars] = useState<{ key: string; value: string }[]>([]); - const [configTab, setConfigTab] = useState<'monitoring' | 'resources'>('monitoring'); + const [configTab, setConfigTab] = useState<'variables' | 'monitoring' | 'resources'>('variables'); const [busy, setBusy] = useState(false); const [step, setStep] = useState(''); @@ -309,10 +309,29 @@ function CreateAppView({ environments, selectedEnv }: { environments: Environmen {/* Config Tabs */}
+
+ {configTab === 'variables' && ( + <> + {envVars.map((v, i) => ( +
+ { + const next = [...envVars]; next[i] = { ...v, key: e.target.value }; setEnvVars(next); + }} className={styles.envVarKey} placeholder="KEY" /> + { + const next = [...envVars]; next[i] = { ...v, value: e.target.value }; setEnvVars(next); + }} className={styles.envVarValue} placeholder="value" /> + +
+ ))} + + + )} + {configTab === 'monitoring' && (
Engine Level @@ -412,21 +431,6 @@ function CreateAppView({ environments, selectedEnv }: { environments: Environmen onKeyDown={(e) => { if (e.key === 'Enter') { e.preventDefault(); addPort(); } }} />
- - Environment Variables - {envVars.map((v, i) => ( -
- { - const next = [...envVars]; next[i] = { ...v, key: e.target.value }; setEnvVars(next); - }} className={styles.envVarKey} placeholder="KEY" /> - { - const next = [...envVars]; next[i] = { ...v, value: e.target.value }; setEnvVars(next); - }} className={styles.envVarValue} placeholder="value" /> - -
- ))} - )} @@ -647,7 +651,7 @@ function ConfigSubTab({ app, environment }: { app: App; environment?: Environmen const { data: processorToRoute = {} } = useProcessorRouteMapping(app.slug); const isProd = environment?.production ?? false; const [editing, setEditing] = useState(false); - const [configTab, setConfigTab] = useState<'monitoring' | 'traces' | 'recording' | 'resources'>('monitoring'); + const [configTab, setConfigTab] = useState<'variables' | 'monitoring' | 'traces' | 'recording' | 'resources'>('variables'); const appRoutes: RouteSummary[] = useMemo(() => { if (!catalog) return []; @@ -840,12 +844,34 @@ function ConfigSubTab({ app, environment }: { app: App; environment?: Environmen )}
+
+ {configTab === 'variables' && ( + <> + {envVars.map((v, i) => ( +
+ { + const next = [...envVars]; next[i] = { ...v, key: e.target.value }; setEnvVars(next); + }} className={styles.envVarKey} placeholder="KEY" /> + { + const next = [...envVars]; next[i] = { ...v, value: e.target.value }; setEnvVars(next); + }} className={styles.envVarValue} placeholder="value" /> + +
+ ))} + {editing && ( + + )} + {envVars.length === 0 && !editing &&

No environment variables configured.

} + + )} + {configTab === 'monitoring' && (
Engine Level @@ -964,24 +990,6 @@ function ConfigSubTab({ app, environment }: { app: App; environment?: Environmen onKeyDown={(e) => { if (e.key === 'Enter') { e.preventDefault(); addPort(); } }} />
- - {/* Environment Variables */} - Environment Variables - {envVars.map((v, i) => ( -
- { - const next = [...envVars]; next[i] = { ...v, key: e.target.value }; setEnvVars(next); - }} className={styles.envVarKey} /> - { - const next = [...envVars]; next[i] = { ...v, value: e.target.value }; setEnvVars(next); - }} className={styles.envVarValue} /> - -
- ))} - {editing && ( - - )} )}