mirror of
https://github.com/Start9Labs/start-sdk.git
synced 2026-03-30 20:24:47 +00:00
chore: Make some things lazy
This commit is contained in:
@@ -17,15 +17,20 @@ export const ipv6 = once(
|
||||
export class LocalBinding {
|
||||
constructor(readonly localHost: string, readonly ipHosts: string[]) {}
|
||||
createOrigins(protocol: string) {
|
||||
const ipHosts = this.ipHosts
|
||||
return {
|
||||
local: new Origin(protocol, this.localHost),
|
||||
ip: this.ipHosts.map((x) => new Origin(protocol, x)),
|
||||
ipv4: this.ipHosts
|
||||
.filter(regexToTestIp4().test)
|
||||
.map((x) => new Origin(protocol, x)),
|
||||
ipv6: this.ipHosts
|
||||
.filter(ipv6().test)
|
||||
.map((x) => new Origin(protocol, x)),
|
||||
get ip() {
|
||||
return ipHosts.map((x) => new Origin(protocol, x))
|
||||
},
|
||||
get ipv4() {
|
||||
return ipHosts
|
||||
.filter(regexToTestIp4().test)
|
||||
.map((x) => new Origin(protocol, x))
|
||||
},
|
||||
get ipv6() {
|
||||
return ipHosts.filter(ipv6().test).map((x) => new Origin(protocol, x))
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user