By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
Description
This PR introduces smart host parsing for the Target Address field (issues highlighted in #906 ). Sub-issues addressed: 2.1 Smart Parsing for Host Targets
Solution:
Users can now paste a full URL (e.g., http://192.168.1.2:81) directly into the IP/Hostname input, and the system will automatically extract and populate method, host, and port fields. Users still have the flexibility to manually edit each field if required.
Added a parseHostTarget utility to extract protocol, host, and port from a pasted/typed URL or raw IP input.
Auto-assign default ports when user input does not include one:
http:// → port 80
https:// → port 443
Preserves user-provided ports if specified.
Works for both domain names and IP addresses.
How to test?
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
## 📋 Pull Request Information
**Original PR:** https://github.com/fosrl/pangolin/pull/1316
**Author:** [@Pallavikumarimdb](https://github.com/Pallavikumarimdb)
**Created:** 8/22/2025
**Status:** ✅ Merged
**Merged:** 8/30/2025
**Merged by:** [@oschwartz10612](https://github.com/oschwartz10612)
**Base:** `dev` ← **Head:** `feature-906/smart-host-parsing`
---
### 📝 Commits (2)
- [`9557f75`](https://github.com/fosrl/pangolin/commit/9557f755a5b0fca33e7ffe41d452a9e62bec2e37) Add Smart Host Parsing
- [`fb1481c`](https://github.com/fosrl/pangolin/commit/fb1481c69cc07b2b5420bf177e526906199fc9b2) fix lint issue
### 📊 Changes
**5 files changed** (+209 additions, -154 deletions)
<details>
<summary>View changed files</summary>
📝 `server/lib/remoteProxy.ts` (+1 -1)
📝 `server/routers/gerbil/getConfig.ts` (+1 -1)
📝 `src/app/[orgId]/settings/resources/[resourceId]/proxy/page.tsx` (+93 -69)
📝 `src/app/[orgId]/settings/resources/create/page.tsx` (+99 -83)
➕ `src/lib/parseHostTarget.ts` (+15 -0)
</details>
### 📄 Description
## Community Contribution License Agreement
By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
## Description
This PR introduces smart host parsing for the Target Address field (issues highlighted in #906 ).
**Sub-issues addressed: 2.1 Smart Parsing for Host Targets**
**Solution:**
Users can now paste a full URL (e.g., http://192.168.1.2:81) directly into the IP/Hostname input, and the system will automatically extract and populate method, host, and port fields. Users still have the flexibility to manually edit each field if required.
* Added a parseHostTarget utility to extract protocol, host, and port from a pasted/typed URL or raw IP input.
* Auto-assign default ports when user input does not include one:
- http:// → port 80
- https:// → port 443
* Preserves user-provided ports if specified.
* Works for both domain names and IP addresses.
## How to test?
---
<sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
📋 Pull Request Information
Original PR: https://github.com/fosrl/pangolin/pull/1316
Author: @Pallavikumarimdb
Created: 8/22/2025
Status: ✅ Merged
Merged: 8/30/2025
Merged by: @oschwartz10612
Base:
dev← Head:feature-906/smart-host-parsing📝 Commits (2)
9557f75Add Smart Host Parsingfb1481cfix lint issue📊 Changes
5 files changed (+209 additions, -154 deletions)
View changed files
📝
server/lib/remoteProxy.ts(+1 -1)📝
server/routers/gerbil/getConfig.ts(+1 -1)📝
src/app/[orgId]/settings/resources/[resourceId]/proxy/page.tsx(+93 -69)📝
src/app/[orgId]/settings/resources/create/page.tsx(+99 -83)➕
src/lib/parseHostTarget.ts(+15 -0)📄 Description
Community Contribution License Agreement
By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.
Description
This PR introduces smart host parsing for the Target Address field (issues highlighted in #906 ).
Sub-issues addressed: 2.1 Smart Parsing for Host Targets
Solution:
Users can now paste a full URL (e.g., http://192.168.1.2:81) directly into the IP/Hostname input, and the system will automatically extract and populate method, host, and port fields. Users still have the flexibility to manually edit each field if required.
How to test?
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.