Skip to content

Commit c9b1e20

Browse files
authored
Merge pull request #53 from flatrun/fix/domain-settings-service-selector
fix(ui): Add service selector to Domain & SSL Settings modal
2 parents 3218bdd + bfab5f6 commit c9b1e20

5 files changed

Lines changed: 49 additions & 10 deletions

File tree

CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,25 @@
11
# Changelog
22

3+
## [0.1.5] - 2026-03-22
4+
5+
### Added
6+
- Setup wizard with guided onboarding flow
7+
- Agent version compatibility check with min/max bounds
8+
- Dev build detection with dismissable warning banner
9+
- Service selector in cron job form with live API lookup
10+
- Service selector in Domain & SSL Settings modal
11+
- `getServices` API function for deployment service discovery
12+
13+
### Enhanced
14+
- Shared `apiClient` across stores (removed setup store duplicate)
15+
- Clipboard fallback for non-HTTPS environments
16+
- Better error differentiation (network vs server) in setup store
17+
18+
### Fixed
19+
- Removed hardcoded container names from compose templates
20+
- Service dropdown resets when deployment changes in cron form
21+
- Version warning persists in store for session duration
22+
323
## [0.1.0] - 2026-03-19
424

525
### Added

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@flatrun/ui",
3-
"version": "0.1.0",
3+
"version": "0.1.5",
44
"description": "Web interface for FlatRun container orchestration",
55
"author": "FlatRun",
66
"license": "MIT",

src/services/api.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export interface ServiceMetadata {
4949
networking: {
5050
expose: boolean;
5151
domain: string;
52+
service?: string;
5253
container_port: number;
5354
protocol: string;
5455
proxy_type: string;

src/types/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ export interface QuickAction {
7070
export interface NetworkingConfig {
7171
expose: boolean;
7272
domain: string;
73+
service?: string;
7374
container_port: number;
7475
protocol: string;
7576
proxy_type?: string;

src/views/DeploymentDetailView.vue

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1176,15 +1176,28 @@
11761176
<span class="hint">The domain name for your deployment</span>
11771177
</div>
11781178

1179-
<div class="form-group">
1180-
<label>Container Port</label>
1181-
<input
1182-
v-model.number="domainSettings.containerPort"
1183-
type="number"
1184-
placeholder="80"
1185-
class="form-input"
1186-
/>
1187-
<span class="hint">The port your application listens on</span>
1179+
<div class="form-row">
1180+
<div class="form-group">
1181+
<label>Service</label>
1182+
<select v-model="domainSettings.service" class="form-select">
1183+
<option value="">Default ({{ route.params.name }})</option>
1184+
<option v-for="svc in services" :key="svc.name" :value="svc.name">
1185+
{{ svc.name }}
1186+
</option>
1187+
</select>
1188+
</div>
1189+
1190+
<div class="form-group">
1191+
<label>Container Port</label>
1192+
<input
1193+
v-model.number="domainSettings.containerPort"
1194+
type="number"
1195+
placeholder="80"
1196+
class="form-input"
1197+
min="1"
1198+
max="65535"
1199+
/>
1200+
</div>
11881201
</div>
11891202

11901203
<div class="form-group">
@@ -1592,6 +1605,7 @@ const savingDomainSettings = ref(false);
15921605
const domainSettings = ref({
15931606
expose: false,
15941607
domain: "",
1608+
service: "",
15951609
containerPort: 80,
15961610
sslEnabled: false,
15971611
autoCert: false,
@@ -2263,6 +2277,7 @@ const openDomainSettings = () => {
22632277
domainSettings.value = {
22642278
expose: metadata.networking?.expose || false,
22652279
domain: metadata.networking?.domain || "",
2280+
service: metadata.networking?.service || "",
22662281
containerPort: metadata.networking?.container_port || 80,
22672282
sslEnabled: metadata.ssl?.enabled || false,
22682283
autoCert: metadata.ssl?.auto_cert || false,
@@ -2271,6 +2286,7 @@ const openDomainSettings = () => {
22712286
domainSettings.value = {
22722287
expose: proxyStatus.value?.exposed || false,
22732288
domain: proxyStatus.value?.domain || "",
2289+
service: "",
22742290
containerPort: 80,
22752291
sslEnabled: proxyStatus.value?.ssl_enabled || false,
22762292
autoCert: false,
@@ -2286,6 +2302,7 @@ const saveDomainSettings = async () => {
22862302
networking: {
22872303
expose: domainSettings.value.expose,
22882304
domain: domainSettings.value.domain,
2305+
service: domainSettings.value.service,
22892306
container_port: domainSettings.value.containerPort,
22902307
protocol: "http",
22912308
proxy_type: "http",

0 commit comments

Comments
 (0)