const { getApiBaseUrl } = require('./constants') function isLocalDevUrl(url) { return /^https?:\/\/(127\.0\.0\.1|localhost|0\.0\.0\.0)(:\d+)?\//i.test(url) } function upgradeToHttpsIfNeeded(url) { if (/^http:\/\//i.test(url) && !isLocalDevUrl(url)) { return url.replace(/^http:\/\//i, 'https://') } return url } function resolveImageUrl(url) { if (!url) { return '' } if (/^https?:\/\//i.test(url)) { return upgradeToHttpsIfNeeded(url) } const baseUrl = getApiBaseUrl().replace(/\/api\/v1\/?$/, '') const resolved = url.startsWith('/') ? `${baseUrl}${url}` : `${baseUrl}/${url}` return upgradeToHttpsIfNeeded(resolved) } function resolveImageList(urls) { if (!Array.isArray(urls)) { return [] } return urls.map((item) => resolveImageUrl(item)).filter(Boolean) } module.exports = { resolveImageUrl, resolveImageList, upgradeToHttpsIfNeeded, isLocalDevUrl }