"use client"

import type { ReactNode } from "react"
import { MailAppShell } from "@/app/mail/mail-app-shell"
import { DemoChrome } from "@/components/demo/demo-chrome"
import { DemoMailProvider } from "@/lib/demo/demo-mail-context"
import { DemoMailBootstrap } from "@/lib/demo/demo-mail-bootstrap"
import { DemoMailPreviewBootstrap } from "@/lib/demo/demo-mail-preview-bootstrap"
import { useDemoMailStore } from "@/lib/demo/demo-mail-store"

export function DemoMailShell({ children }: { children: ReactNode }) {
  return (
    <DemoMailProvider onReset={() => useDemoMailStore.getState().reset()}>
      <DemoMailBootstrap />
      <DemoMailPreviewBootstrap />
      <DemoChrome>
        <MailAppShell>{children}</MailAppShell>
      </DemoChrome>
    </DemoMailProvider>
  )
}
