Strip the proprietary client EE so the fork ships a clean community/AGPL edition, mirroring Forkmost. Delete apps/client/src/ee (201 files) and packages/ee, and patch every consumer that imported from @/ee/*. - gate-out EE features (useHasFeature -> false): API keys, SSO, MFA, SCIM, audit logs, AI / AI-chat, templates, page permissions, page verification, comment resolution, trash retention, viewer comments - drop cloud/billing/trial/entitlement/posthog flows; sign-in is now email+password only (no SSO/LDAP/cloud) - remove EE routes from App.tsx and EE entries from sidebars/settings nav - restore the community page-share button (ShareModal) that the EE PageShareModal used to provide - remove the dead "Attachments" search filter, dead MFA navigation and orphaned route constants Client type-checks clean; full `pnpm build` is green for all three projects.
24 lines
591 B
TypeScript
24 lines
591 B
TypeScript
import { atomWithWebStorage } from "@/lib/jotai-helper.ts";
|
|
import { atom } from "jotai";
|
|
|
|
export const mobileSidebarAtom = atom<boolean>(false);
|
|
|
|
export const desktopSidebarAtom = atomWithWebStorage<boolean>(
|
|
"showSidebar",
|
|
true,
|
|
);
|
|
|
|
export const desktopAsideAtom = atom<boolean>(false);
|
|
|
|
// Valid `tab` values: "" | "comments" | "toc" | "details"
|
|
type AsideStateType = {
|
|
tab: string;
|
|
isAsideOpen: boolean;
|
|
};
|
|
|
|
export const asideStateAtom = atom<AsideStateType>({
|
|
tab: "",
|
|
isAsideOpen: false,
|
|
});
|
|
|
|
export const sidebarWidthAtom = atomWithWebStorage<number>('sidebarWidth', 300); |