@vercel/microfrontends
Version:
Defines configuration and utilities for microfrontends development
44 lines (40 loc) • 1.29 kB
JavaScript
// src/config/overrides/constants.ts
var OVERRIDES_COOKIE_PREFIX = "vercel-micro-frontends-override";
var OVERRIDES_ENV_COOKIE_PREFIX = `${OVERRIDES_COOKIE_PREFIX}:env:`;
// src/config/overrides/is-override-cookie.ts
function isOverrideCookie(cookie) {
return Boolean(cookie.name?.startsWith(OVERRIDES_COOKIE_PREFIX));
}
// src/config/overrides/get-override-from-cookie.ts
function getOverrideFromCookie(cookie) {
if (!isOverrideCookie(cookie) || !cookie.value)
return;
return {
application: cookie.name.replace(OVERRIDES_ENV_COOKIE_PREFIX, ""),
host: cookie.value
};
}
// src/config/overrides/parse-overrides.ts
function parseOverrides(cookies) {
const overridesConfig = { applications: {} };
cookies.forEach((cookie) => {
const override = getOverrideFromCookie(cookie);
if (!override)
return;
overridesConfig.applications[override.application] = {
environment: { host: override.host }
};
});
return overridesConfig;
}
// src/config/overrides/get-app-env-override-cookie-name.ts
function getAppEnvOverrideCookieName(application) {
return `${OVERRIDES_ENV_COOKIE_PREFIX}${application}`;
}
export {
getAppEnvOverrideCookieName,
getOverrideFromCookie,
isOverrideCookie,
parseOverrides
};
//# sourceMappingURL=overrides.js.map