|
@@ -15,15 +15,37 @@ export const PreviewEditor = ({
|
|
|
previewStyle,
|
|
previewStyle,
|
|
|
dependencies,
|
|
dependencies,
|
|
|
editorStyle,
|
|
editorStyle,
|
|
|
|
|
+ codeInRight,
|
|
|
}: {
|
|
}: {
|
|
|
files: SandpackFiles;
|
|
files: SandpackFiles;
|
|
|
children: JSX.Element;
|
|
children: JSX.Element;
|
|
|
previewStyle?: React.CSSProperties;
|
|
previewStyle?: React.CSSProperties;
|
|
|
dependencies?: Record<string, string>;
|
|
dependencies?: Record<string, string>;
|
|
|
editorStyle?: React.CSSProperties;
|
|
editorStyle?: React.CSSProperties;
|
|
|
|
|
+ codeInRight?: boolean;
|
|
|
}) => {
|
|
}) => {
|
|
|
const dark = useDark();
|
|
const dark = useDark();
|
|
|
const theme = useMemo(() => (dark ? 'dark' : 'light'), [dark]);
|
|
const theme = useMemo(() => (dark ? 'dark' : 'light'), [dark]);
|
|
|
|
|
+ const content = codeInRight ? (
|
|
|
|
|
+ <>
|
|
|
|
|
+ <SandpackLayout style={{ width: '100%', display: 'flex' }}>
|
|
|
|
|
+ <div className="light-mode" style={previewStyle}>
|
|
|
|
|
+ {children}
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <SandpackCodeEditor style={editorStyle} readOnly />
|
|
|
|
|
+ </SandpackLayout>
|
|
|
|
|
+ </>
|
|
|
|
|
+ ) : (
|
|
|
|
|
+ <>
|
|
|
|
|
+ <SandpackLayout style={previewStyle}>
|
|
|
|
|
+ <div className="light-mode">{children}</div>
|
|
|
|
|
+ {/* <SandpackPreview /> */}
|
|
|
|
|
+ </SandpackLayout>
|
|
|
|
|
+ <SandpackLayout>
|
|
|
|
|
+ <SandpackCodeEditor style={editorStyle} readOnly />
|
|
|
|
|
+ </SandpackLayout>
|
|
|
|
|
+ </>
|
|
|
|
|
+ );
|
|
|
|
|
|
|
|
return (
|
|
return (
|
|
|
<SandpackProvider
|
|
<SandpackProvider
|
|
@@ -32,18 +54,18 @@ export const PreviewEditor = ({
|
|
|
customSetup={{
|
|
customSetup={{
|
|
|
dependencies,
|
|
dependencies,
|
|
|
}}
|
|
}}
|
|
|
- files={files}
|
|
|
|
|
|
|
+ files={{
|
|
|
|
|
+ ...files,
|
|
|
|
|
+ '/App.js': {
|
|
|
|
|
+ code: '',
|
|
|
|
|
+ hidden: true,
|
|
|
|
|
+ },
|
|
|
|
|
+ }}
|
|
|
onChange={(v) => {
|
|
onChange={(v) => {
|
|
|
console.log('debugger', v);
|
|
console.log('debugger', v);
|
|
|
}}
|
|
}}
|
|
|
>
|
|
>
|
|
|
- <SandpackLayout style={previewStyle}>
|
|
|
|
|
- <div className="light-mode">{children}</div>
|
|
|
|
|
- {/* <SandpackPreview /> */}
|
|
|
|
|
- </SandpackLayout>
|
|
|
|
|
- <SandpackLayout>
|
|
|
|
|
- <SandpackCodeEditor style={editorStyle} readOnly />
|
|
|
|
|
- </SandpackLayout>
|
|
|
|
|
|
|
+ {content}
|
|
|
</SandpackProvider>
|
|
</SandpackProvider>
|
|
|
);
|
|
);
|
|
|
};
|
|
};
|