(name: PortName)
| 114 | file: Partial<Record<PortName, number>>, |
| 115 | ): PortConfig { |
| 116 | const pick = (name: PortName): PortChoice => { |
| 117 | const envRaw = env[ENV_KEYS[name]] |
| 118 | if (envRaw !== undefined && envRaw !== '') { |
| 119 | return { value: parsePort(envRaw, ENV_KEYS[name]), source: 'env' } |
| 120 | } |
| 121 | const fromFile = file[name] |
| 122 | if (fromFile !== undefined) return { value: fromFile, source: 'file' } |
| 123 | return { value: PORT_DEFAULTS[name], source: 'default' } |
| 124 | } |
| 125 | return { web: pick('web'), mcp: pick('mcp'), uta: pick('uta'), ui: pick('ui') } |
| 126 | } |
| 127 |
no test coverage detected