- Introduced blog routing using Next.js App Router - Implemented dynamic [slug] pages for blog posts - Added MDX-based content loading via lib/posts - Integrated shared TopBar layout with navigation - Established clear content, lib and component separation
23 lines
990 B
JavaScript
23 lines
990 B
JavaScript
import { InvariantError } from '../shared/lib/invariant-error';
|
|
export function getAssetPrefix() {
|
|
const currentScript = document.currentScript;
|
|
if (!(currentScript instanceof HTMLScriptElement)) {
|
|
throw Object.defineProperty(new InvariantError(`Expected document.currentScript to be a <script> element. Received ${currentScript} instead.`), "__NEXT_ERROR_CODE", {
|
|
value: "E783",
|
|
enumerable: false,
|
|
configurable: true
|
|
});
|
|
}
|
|
const { pathname } = new URL(currentScript.src);
|
|
const nextIndex = pathname.indexOf('/_next/');
|
|
if (nextIndex === -1) {
|
|
throw Object.defineProperty(new InvariantError(`Expected document.currentScript src to contain '/_next/'. Received ${currentScript.src} instead.`), "__NEXT_ERROR_CODE", {
|
|
value: "E784",
|
|
enumerable: false,
|
|
configurable: true
|
|
});
|
|
}
|
|
return pathname.slice(0, nextIndex);
|
|
}
|
|
|
|
//# sourceMappingURL=asset-prefix.js.map
|