HotTRDealsBackend/services/sellerLookup.service.js
2026-01-29 00:45:52 +00:00

38 lines
745 B
JavaScript

const { findSellerByDomain } = require("../db/seller.db")
function normalizeDomain(hostname) {
return hostname.replace(/^www\./, "")
}
async function findSellerFromLink(url) {
let hostname
try {
hostname = new URL(url).hostname
} catch {
return null
}
const domain = normalizeDomain(hostname)
const seller = await findSellerByDomain(domain)
if (seller) {
return seller
}
const domainParts = domain.split(".")
for (let i = 1; i <= domainParts.length - 2; i += 1) {
const parentDomain = domainParts.slice(i).join(".")
const parentSeller = await findSellerByDomain(parentDomain)
if (parentSeller) {
return parentSeller
}
}
return null
}
module.exports = {
findSellerFromLink,
}