# Description of Changes When I added Prettier formatting in #6052, my aim was to use just the default settings in Prettier. Turns out, Prettier looks _really hard_ for any config files if it's not explicitly given one, which means that if a developer has some sort of Prettier config file lying around on their system, Prettier might find it and use it. Also, Prettier changes its defaults based on stuff in `.editorconfig` without any good way of disabling that behaviour explicitly in its config file. To solve both of these issues, I've introduced a `.prettierrc` file which sets Prettier's defaults explicitly, and then reformatted all our code _again_ in Prettier's actual default settings. This should achieve the aim of #6052 and remove the possibility for it breaking on different dev computers.
34 lines
868 B
TypeScript
34 lines
868 B
TypeScript
import { ReactNode } from "react";
|
|
import { useBanner } from "@app/contexts/BannerContext";
|
|
import NavigationWarningModal from "@app/components/shared/NavigationWarningModal";
|
|
|
|
interface AppLayoutProps {
|
|
children: ReactNode;
|
|
}
|
|
|
|
/**
|
|
* App layout wrapper that handles banner rendering and viewport sizing
|
|
* Automatically adjusts child components to fit remaining space after banner
|
|
*/
|
|
export function AppLayout({ children }: AppLayoutProps) {
|
|
const { banner } = useBanner();
|
|
|
|
return (
|
|
<>
|
|
<style>{`
|
|
.h-screen,
|
|
.right-rail {
|
|
height: 100% !important;
|
|
}
|
|
`}</style>
|
|
<div
|
|
style={{ height: "100vh", display: "flex", flexDirection: "column" }}
|
|
>
|
|
{banner}
|
|
<div style={{ flex: 1, minHeight: 0, height: 0 }}>{children}</div>
|
|
</div>
|
|
<NavigationWarningModal />
|
|
</>
|
|
);
|
|
}
|