You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
82 lines
3.2 KiB
JavaScript
82 lines
3.2 KiB
JavaScript
|
9 months ago
|
"use strict";
|
||
|
|
Object.defineProperty(exports, "__esModule", {
|
||
|
|
value: true
|
||
|
|
});
|
||
|
|
0 && (module.exports = {
|
||
|
|
isStaticGenBailoutError: null,
|
||
|
|
staticGenerationBailout: null
|
||
|
|
});
|
||
|
|
function _export(target, all) {
|
||
|
|
for(var name in all)Object.defineProperty(target, name, {
|
||
|
|
enumerable: true,
|
||
|
|
get: all[name]
|
||
|
|
});
|
||
|
|
}
|
||
|
|
_export(exports, {
|
||
|
|
isStaticGenBailoutError: function() {
|
||
|
|
return isStaticGenBailoutError;
|
||
|
|
},
|
||
|
|
staticGenerationBailout: function() {
|
||
|
|
return staticGenerationBailout;
|
||
|
|
}
|
||
|
|
});
|
||
|
|
const _hooksservercontext = require("./hooks-server-context");
|
||
|
|
const _staticgenerationasyncstorageexternal = require("./static-generation-async-storage.external");
|
||
|
|
const NEXT_STATIC_GEN_BAILOUT = "NEXT_STATIC_GEN_BAILOUT";
|
||
|
|
class StaticGenBailoutError extends Error {
|
||
|
|
constructor(...args){
|
||
|
|
super(...args);
|
||
|
|
this.code = NEXT_STATIC_GEN_BAILOUT;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
function isStaticGenBailoutError(error) {
|
||
|
|
if (typeof error !== "object" || error === null || !("code" in error)) {
|
||
|
|
return false;
|
||
|
|
}
|
||
|
|
return error.code === NEXT_STATIC_GEN_BAILOUT;
|
||
|
|
}
|
||
|
|
function formatErrorMessage(reason, opts) {
|
||
|
|
const { dynamic, link } = opts || {};
|
||
|
|
const suffix = link ? " See more info here: " + link : "";
|
||
|
|
return "Page" + (dynamic ? ' with `dynamic = "' + dynamic + '"`' : "") + " couldn't be rendered statically because it used `" + reason + "`." + suffix;
|
||
|
|
}
|
||
|
|
const staticGenerationBailout = (reason, param)=>{
|
||
|
|
let { dynamic, link } = param === void 0 ? {} : param;
|
||
|
|
const staticGenerationStore = _staticgenerationasyncstorageexternal.staticGenerationAsyncStorage.getStore();
|
||
|
|
if (!staticGenerationStore) return false;
|
||
|
|
if (staticGenerationStore.forceStatic) {
|
||
|
|
return true;
|
||
|
|
}
|
||
|
|
if (staticGenerationStore.dynamicShouldError) {
|
||
|
|
throw new StaticGenBailoutError(formatErrorMessage(reason, {
|
||
|
|
link,
|
||
|
|
dynamic: dynamic != null ? dynamic : "error"
|
||
|
|
}));
|
||
|
|
}
|
||
|
|
const message = formatErrorMessage(reason, {
|
||
|
|
dynamic,
|
||
|
|
// this error should be caught by Next to bail out of static generation
|
||
|
|
// in case it's uncaught, this link provides some additional context as to why
|
||
|
|
link: "https://nextjs.org/docs/messages/dynamic-server-error"
|
||
|
|
});
|
||
|
|
// If postpone is available, we should postpone the render.
|
||
|
|
staticGenerationStore.postpone == null ? void 0 : staticGenerationStore.postpone.call(staticGenerationStore, reason);
|
||
|
|
// As this is a bailout, we don't want to revalidate, so set the revalidate
|
||
|
|
// to 0.
|
||
|
|
staticGenerationStore.revalidate = 0;
|
||
|
|
if (staticGenerationStore.isStaticGeneration) {
|
||
|
|
const err = new _hooksservercontext.DynamicServerError(message);
|
||
|
|
staticGenerationStore.dynamicUsageDescription = reason;
|
||
|
|
staticGenerationStore.dynamicUsageStack = err.stack;
|
||
|
|
throw err;
|
||
|
|
}
|
||
|
|
return false;
|
||
|
|
};
|
||
|
|
|
||
|
|
if ((typeof exports.default === 'function' || (typeof exports.default === 'object' && exports.default !== null)) && typeof exports.default.__esModule === 'undefined') {
|
||
|
|
Object.defineProperty(exports.default, '__esModule', { value: true });
|
||
|
|
Object.assign(exports.default, exports);
|
||
|
|
module.exports = exports.default;
|
||
|
|
}
|
||
|
|
|
||
|
|
//# sourceMappingURL=static-generation-bailout.js.map
|