@nlabs/gothamjs
Version:
Platform
37 lines (36 loc) • 4.71 kB
JavaScript
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
/**
* Copyright (c) 2018-Present, Nitrogen Labs, Inc.
* Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
*/ import { useFluxListener } from '@nlabs/arkhamjs-utils-react';
import { Outlet, useNavigate } from 'react-router';
import { GothamConstants } from '../../constants/GothamConstants.js';
import { LoaderView } from '../LoaderView/LoaderView.js';
export const navBack = (history)=>()=>{
history.goBack();
};
export const navForward = (history)=>()=>{
history.goForward();
};
export const navGoto = (navigate)=>(data)=>{
const { params, path = '' } = data;
navigate(path, params);
};
export const navReplace = (history)=>(data)=>{
const { params, path = '' } = data;
history.replace(path, params);
};
export const GothamRoot = ()=>{
const navigate = useNavigate();
useFluxListener(GothamConstants.NAV_BACK, navBack(navigate));
useFluxListener(GothamConstants.NAV_FORWARD, navForward(navigate));
useFluxListener(GothamConstants.NAV_GOTO, navGoto(navigate));
useFluxListener(GothamConstants.NAV_REPLACE, navReplace(navigate));
return /*#__PURE__*/ _jsxs(_Fragment, {
children: [
/*#__PURE__*/ _jsx(Outlet, {}),
/*#__PURE__*/ _jsx(LoaderView, {})
]
});
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9uaXRyb2c3L0RldmVsb3BtZW50L2dvdGhhbWpzL3NyYy92aWV3cy9Hb3RoYW0vR290aGFtUm9vdC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7dXNlRmx1eExpc3RlbmVyfSBmcm9tICdAbmxhYnMvYXJraGFtanMtdXRpbHMtcmVhY3QnO1xuaW1wb3J0IHtPdXRsZXQsIHVzZU5hdmlnYXRlfSBmcm9tICdyZWFjdC1yb3V0ZXInO1xuXG5pbXBvcnQge0dvdGhhbUNvbnN0YW50c30gZnJvbSAnLi4vLi4vY29uc3RhbnRzL0dvdGhhbUNvbnN0YW50cy5qcyc7XG5pbXBvcnQge0xvYWRlclZpZXd9IGZyb20gJy4uL0xvYWRlclZpZXcvTG9hZGVyVmlldy5qcyc7XG5cbmltcG9ydCB0eXBlIHtGQ30gZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgY29uc3QgbmF2QmFjayA9IChoaXN0b3J5KSA9PiAoKTogdm9pZCA9PiB7XG4gIGhpc3RvcnkuZ29CYWNrKCk7XG59O1xuXG5leHBvcnQgY29uc3QgbmF2Rm9yd2FyZCA9IChoaXN0b3J5KSA9PiAoKTogdm9pZCA9PiB7XG4gIGhpc3RvcnkuZ29Gb3J3YXJkKCk7XG59O1xuXG5leHBvcnQgY29uc3QgbmF2R290byA9IChuYXZpZ2F0ZSkgPT4gKGRhdGEpOiB2b2lkID0+IHtcbiAgY29uc3Qge3BhcmFtcywgcGF0aCA9ICcnfSA9IGRhdGE7XG4gIG5hdmlnYXRlKHBhdGgsIHBhcmFtcyk7XG59O1xuXG5leHBvcnQgY29uc3QgbmF2UmVwbGFjZSA9IChoaXN0b3J5KSA9PiAoZGF0YSk6IHZvaWQgPT4ge1xuICBjb25zdCB7cGFyYW1zLCBwYXRoID0gJyd9ID0gZGF0YTtcbiAgaGlzdG9yeS5yZXBsYWNlKHBhdGgsIHBhcmFtcyk7XG59O1xuXG5leHBvcnQgY29uc3QgR290aGFtUm9vdDogRkMgPSAoKSA9PiB7XG4gIGNvbnN0IG5hdmlnYXRlID0gdXNlTmF2aWdhdGUoKTtcblxuICB1c2VGbHV4TGlzdGVuZXIoR290aGFtQ29uc3RhbnRzLk5BVl9CQUNLLCBuYXZCYWNrKG5hdmlnYXRlKSk7XG4gIHVzZUZsdXhMaXN0ZW5lcihHb3RoYW1Db25zdGFudHMuTkFWX0ZPUldBUkQsIG5hdkZvcndhcmQobmF2aWdhdGUpKTtcbiAgdXNlRmx1eExpc3RlbmVyKEdvdGhhbUNvbnN0YW50cy5OQVZfR09UTywgbmF2R290byhuYXZpZ2F0ZSkpO1xuICB1c2VGbHV4TGlzdGVuZXIoR290aGFtQ29uc3RhbnRzLk5BVl9SRVBMQUNFLCBuYXZSZXBsYWNlKG5hdmlnYXRlKSk7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPE91dGxldC8+XG4gICAgICA8TG9hZGVyVmlldyAvPlxuICAgIDwvPlxuICApO1xufTsiXSwibmFtZXMiOlsidXNlRmx1eExpc3RlbmVyIiwiT3V0bGV0IiwidXNlTmF2aWdhdGUiLCJHb3RoYW1Db25zdGFudHMiLCJMb2FkZXJWaWV3IiwibmF2QmFjayIsImhpc3RvcnkiLCJnb0JhY2siLCJuYXZGb3J3YXJkIiwiZ29Gb3J3YXJkIiwibmF2R290byIsIm5hdmlnYXRlIiwiZGF0YSIsInBhcmFtcyIsInBhdGgiLCJuYXZSZXBsYWNlIiwicmVwbGFjZSIsIkdvdGhhbVJvb3QiLCJOQVZfQkFDSyIsIk5BVl9GT1JXQVJEIiwiTkFWX0dPVE8iLCJOQVZfUkVQTEFDRSJdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Q0FHQyxHQUNELFNBQVFBLGVBQWUsUUFBTyw4QkFBOEI7QUFDNUQsU0FBUUMsTUFBTSxFQUFFQyxXQUFXLFFBQU8sZUFBZTtBQUVqRCxTQUFRQyxlQUFlLFFBQU8scUNBQXFDO0FBQ25FLFNBQVFDLFVBQVUsUUFBTyw4QkFBOEI7QUFJdkQsT0FBTyxNQUFNQyxVQUFVLENBQUNDLFVBQVk7UUFDbENBLFFBQVFDLE1BQU07SUFDaEIsRUFBRTtBQUVGLE9BQU8sTUFBTUMsYUFBYSxDQUFDRixVQUFZO1FBQ3JDQSxRQUFRRyxTQUFTO0lBQ25CLEVBQUU7QUFFRixPQUFPLE1BQU1DLFVBQVUsQ0FBQ0MsV0FBYSxDQUFDQztRQUNwQyxNQUFNLEVBQUNDLE1BQU0sRUFBRUMsT0FBTyxFQUFFLEVBQUMsR0FBR0Y7UUFDNUJELFNBQVNHLE1BQU1EO0lBQ2pCLEVBQUU7QUFFRixPQUFPLE1BQU1FLGFBQWEsQ0FBQ1QsVUFBWSxDQUFDTTtRQUN0QyxNQUFNLEVBQUNDLE1BQU0sRUFBRUMsT0FBTyxFQUFFLEVBQUMsR0FBR0Y7UUFDNUJOLFFBQVFVLE9BQU8sQ0FBQ0YsTUFBTUQ7SUFDeEIsRUFBRTtBQUVGLE9BQU8sTUFBTUksYUFBaUI7SUFDNUIsTUFBTU4sV0FBV1Q7SUFFakJGLGdCQUFnQkcsZ0JBQWdCZSxRQUFRLEVBQUViLFFBQVFNO0lBQ2xEWCxnQkFBZ0JHLGdCQUFnQmdCLFdBQVcsRUFBRVgsV0FBV0c7SUFDeERYLGdCQUFnQkcsZ0JBQWdCaUIsUUFBUSxFQUFFVixRQUFRQztJQUNsRFgsZ0JBQWdCRyxnQkFBZ0JrQixXQUFXLEVBQUVOLFdBQVdKO0lBRXhELHFCQUNFOzswQkFDRSxLQUFDVjswQkFDRCxLQUFDRzs7O0FBR1AsRUFBRSJ9