Some checks failed
CI / go (push) Waiting to run
CI / docker (push) Waiting to run
CI / lint-go (push) Waiting to run
CI / lint-docs (push) Waiting to run
CI / check-paperclip (push) Waiting to run
Deploy static site / Deploy to GitHub Pages (push) Has been cancelled
Deploy static site / Deploy via Docker to hatch.surf (push) Has been cancelled
Resolved conflicts by taking GitHub versions for: - .dockerignore, .gitignore, Dockerfile, README.md, docker-compose.yml Kept deploy.sh updated to: - Pull from GitHub (primary source) - Push to Gitea (push-mirror) - Build from site/ directory (GitHub structure) Co-Authored-By: Paperclip <noreply@paperclip.ing>
61 lines
2.4 KiB
JavaScript
61 lines
2.4 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
0 && (module.exports = {
|
|
handleHardNavError: null,
|
|
useNavFailureHandler: null
|
|
});
|
|
function _export(target, all) {
|
|
for(var name in all)Object.defineProperty(target, name, {
|
|
enumerable: true,
|
|
get: all[name]
|
|
});
|
|
}
|
|
_export(exports, {
|
|
handleHardNavError: function() {
|
|
return handleHardNavError;
|
|
},
|
|
useNavFailureHandler: function() {
|
|
return useNavFailureHandler;
|
|
}
|
|
});
|
|
const _react = require("react");
|
|
const _createhreffromurl = require("./router-reducer/create-href-from-url");
|
|
function handleHardNavError(error) {
|
|
if (error && typeof window !== 'undefined' && window.next.__pendingUrl && (0, _createhreffromurl.createHrefFromUrl)(new URL(window.location.href)) !== (0, _createhreffromurl.createHrefFromUrl)(window.next.__pendingUrl)) {
|
|
console.error(`Error occurred during navigation, falling back to hard navigation`, error);
|
|
window.location.href = window.next.__pendingUrl.toString();
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
function useNavFailureHandler() {
|
|
if (process.env.__NEXT_APP_NAV_FAIL_HANDLING) {
|
|
// this if is only for DCE of the feature flag not conditional
|
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
(0, _react.useEffect)(()=>{
|
|
const uncaughtExceptionHandler = (evt)=>{
|
|
const error = 'reason' in evt ? evt.reason : evt.error;
|
|
// if we have an unhandled exception/rejection during
|
|
// a navigation we fall back to a hard navigation to
|
|
// attempt recovering to a good state
|
|
handleHardNavError(error);
|
|
};
|
|
window.addEventListener('unhandledrejection', uncaughtExceptionHandler);
|
|
window.addEventListener('error', uncaughtExceptionHandler);
|
|
return ()=>{
|
|
window.removeEventListener('error', uncaughtExceptionHandler);
|
|
window.removeEventListener('unhandledrejection', uncaughtExceptionHandler);
|
|
};
|
|
}, []);
|
|
}
|
|
}
|
|
|
|
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=nav-failure-handler.js.map
|