native macOS codings agent orchestrator
6
fork

Configure Feed

Select the types of activity you want to include in your feed.

Render script placeholders behind text editors

onevcat 40587359 32a7894c

+19 -19
+19 -19
supacode/Features/Settings/Views/RepositorySettingsView.swift
··· 168 168 if store.showsSetupScriptSettings { 169 169 Section { 170 170 ZStack(alignment: .topLeading) { 171 - PlainTextEditor( 172 - text: settings.setupScript 173 - ) 174 - .frame(minHeight: 120) 175 171 if store.settings.setupScript.isEmpty { 176 172 Text("claude --dangerously-skip-permissions") 177 173 .foregroundStyle(.secondary) ··· 180 176 .font(.body) 181 177 .allowsHitTesting(false) 182 178 } 179 + PlainTextEditor( 180 + text: settings.setupScript 181 + ) 182 + .frame(minHeight: 120) 183 183 } 184 184 } header: { 185 185 VStack(alignment: .leading, spacing: 4) { ··· 193 193 if store.showsArchiveScriptSettings { 194 194 Section { 195 195 ZStack(alignment: .topLeading) { 196 - PlainTextEditor( 197 - text: settings.archiveScript 198 - ) 199 - .frame(minHeight: 120) 200 196 if store.settings.archiveScript.isEmpty { 201 197 Text("docker compose down") 202 198 .foregroundStyle(.secondary) ··· 205 201 .font(.body) 206 202 .allowsHitTesting(false) 207 203 } 204 + PlainTextEditor( 205 + text: settings.archiveScript 206 + ) 207 + .frame(minHeight: 120) 208 208 } 209 209 } header: { 210 210 VStack(alignment: .leading, spacing: 4) { ··· 218 218 if store.showsRunScriptSettings { 219 219 Section { 220 220 ZStack(alignment: .topLeading) { 221 - PlainTextEditor( 222 - text: settings.runScript 223 - ) 224 - .frame(minHeight: 120) 225 221 if store.settings.runScript.isEmpty { 226 222 Text("npm run dev") 227 223 .foregroundStyle(.secondary) ··· 230 226 .font(.body) 231 227 .allowsHitTesting(false) 232 228 } 229 + PlainTextEditor( 230 + text: settings.runScript 231 + ) 232 + .frame(minHeight: 120) 233 233 } 234 234 } header: { 235 235 VStack(alignment: .leading, spacing: 4) { ··· 711 711 .pickerStyle(.segmented) 712 712 713 713 ZStack(alignment: .topLeading) { 714 - PlainTextEditor( 715 - text: command.command, 716 - isMonospaced: true, 717 - shouldFocus: true 718 - ) 719 - .frame(height: 140) 720 - 721 714 if command.wrappedValue.command.isEmpty { 722 715 Text(scriptPlaceholder(for: command.wrappedValue.execution)) 723 716 .foregroundStyle(.secondary) ··· 726 719 .font(.body.monospaced()) 727 720 .allowsHitTesting(false) 728 721 } 722 + 723 + PlainTextEditor( 724 + text: command.command, 725 + isMonospaced: true, 726 + shouldFocus: true 727 + ) 728 + .frame(height: 140) 729 729 } 730 730 731 731 Text(scriptDescription(for: command.wrappedValue.execution))