UNPKG

vike

Version:

The Framework *You* Control - Next.js & Nuxt alternative for unprecedented flexibility and dependability.

36 lines (35 loc) 2.1 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.resolveBase = resolveBase; const utils_js_1 = require("./utils.js"); const picocolors_1 = __importDefault(require("@brillout/picocolors")); function resolveBase(baseViteOriginal, baseServerUnresolved, baseAssetsUnresolved) { if (baseViteOriginal === '/__UNSET__') baseViteOriginal = null; { const wrongBase = (val) => `should start with ${picocolors_1.default.cyan('/')}, ${picocolors_1.default.cyan('http://')}, or ${picocolors_1.default.cyan('https://')} (it's ${picocolors_1.default.cyan(val)} instead)`; (0, utils_js_1.assertUsage)(baseViteOriginal === null || (0, utils_js_1.isBaseAssets)(baseViteOriginal), `vite.config.js#base ${wrongBase(baseViteOriginal)}`); (0, utils_js_1.assertUsage)(baseAssetsUnresolved === null || (0, utils_js_1.isBaseAssets)(baseAssetsUnresolved), `Config ${picocolors_1.default.cyan('baseAssets')} ${wrongBase(baseAssetsUnresolved)}`); (0, utils_js_1.assertUsage)(baseServerUnresolved === null || baseServerUnresolved.startsWith('/'), `Config ${picocolors_1.default.cyan('baseServer')} should start with a leading slash ${picocolors_1.default.cyan('/')} (it's ${picocolors_1.default.cyan(String(baseServerUnresolved))} instead)`); } if (baseViteOriginal) { if (baseViteOriginal.startsWith('http')) { baseAssetsUnresolved = baseAssetsUnresolved ?? baseViteOriginal; } else { baseAssetsUnresolved = baseAssetsUnresolved ?? baseViteOriginal; baseServerUnresolved = baseServerUnresolved ?? baseViteOriginal; } } const baseServer = baseServerUnresolved ?? '/'; const baseAssets = baseAssetsUnresolved ?? '/'; (0, utils_js_1.assert)((0, utils_js_1.isBaseAssets)(baseAssets)); (0, utils_js_1.assert)((0, utils_js_1.isBaseServer)(baseServer)); return { baseServer, baseAssets, }; }