chore: exclude local resource artifacts from main sync
This commit is contained in:
46
src/app/main/pages/PlayPage.tsx
Executable file → Normal file
46
src/app/main/pages/PlayPage.tsx
Executable file → Normal file
@@ -1,37 +1,47 @@
|
||||
import { LayoutPlaygroundView } from '../../../views/play/LayoutPlaygroundView';
|
||||
import { useLocation } from 'react-router-dom';
|
||||
import { SampleWidgetsLayout } from '../../../features/layout/widget-sample-gallery';
|
||||
import { CbtPlayAppView } from '../../../views/play/apps/cbt/CbtPlayAppView';
|
||||
import { TestPlayAppView } from '../../../views/play/apps/test/TestPlayAppView';
|
||||
import { FeatureMenuLayoutPage } from '../../../features/layout/feature-menu';
|
||||
import { MemoLayoutPage } from '../../../features/layout/memo';
|
||||
import { LayoutPlaygroundView } from '../../../views/play/LayoutPlaygroundView';
|
||||
import { useMainLayoutContext } from '../layout/MainLayoutContext';
|
||||
import { readPreviewTargetDescriptorFromUrl } from '../previewRuntime';
|
||||
import { resolveSavedLayoutIdFromMenuKey } from '../routes';
|
||||
import { renderSavedLayoutContent } from '../../../features/layout/renderSavedLayoutContent';
|
||||
|
||||
export function PlayPage() {
|
||||
const { selectedPlayMenu, savedLayouts, setSavedLayouts } = useMainLayoutContext();
|
||||
const location = useLocation();
|
||||
const { selectedPlayMenu, savedLayouts, setSavedLayouts, widgetSampleEntries } = useMainLayoutContext();
|
||||
const selectedSavedLayoutId = resolveSavedLayoutIdFromMenuKey(selectedPlayMenu);
|
||||
const selectedSavedLayout = selectedSavedLayoutId
|
||||
? savedLayouts.find((layout) => layout.id === selectedSavedLayoutId) ?? null
|
||||
: null;
|
||||
const isMemoLayout = selectedSavedLayout?.name === '메모';
|
||||
const isFeatureMenuLayout = selectedSavedLayout?.name === '기능설명 관리';
|
||||
const previewTarget = readPreviewTargetDescriptorFromUrl();
|
||||
const isWidgetPreview = selectedPlayMenu === 'cbt' && previewTarget?.type === 'widget';
|
||||
const panelClassName = selectedSavedLayoutId ? 'app-main-panel app-main-panel--play app-main-panel--play-saved' : 'app-main-panel app-main-panel--play';
|
||||
|
||||
return (
|
||||
<div className={panelClassName}>
|
||||
{selectedPlayMenu === 'layout' ? <LayoutPlaygroundView onSavedLayoutsChange={setSavedLayouts} /> : null}
|
||||
{selectedPlayMenu === 'test' ? <TestPlayAppView /> : null}
|
||||
{selectedPlayMenu === 'cbt' ? <CbtPlayAppView /> : null}
|
||||
{selectedSavedLayoutId && isMemoLayout ? <MemoLayoutPage layoutId={selectedSavedLayoutId} /> : null}
|
||||
{selectedSavedLayoutId && isFeatureMenuLayout ? (
|
||||
<FeatureMenuLayoutPage
|
||||
layoutId={selectedSavedLayoutId}
|
||||
savedLayouts={savedLayouts}
|
||||
onSavedLayoutsChange={setSavedLayouts}
|
||||
{isWidgetPreview ? (
|
||||
<SampleWidgetsLayout
|
||||
key={location.search}
|
||||
entries={widgetSampleEntries}
|
||||
includeComponentIds={[previewTarget.componentId]}
|
||||
includeSampleIds={previewTarget.sampleId ? [previewTarget.sampleId] : []}
|
||||
disableWidgetCardWrapper
|
||||
singlePreviewMode
|
||||
/>
|
||||
) : null}
|
||||
{selectedSavedLayoutId && !isMemoLayout && !isFeatureMenuLayout ? (
|
||||
<LayoutPlaygroundView savedLayoutViewId={selectedSavedLayoutId} onSavedLayoutsChange={setSavedLayouts} />
|
||||
) : null}
|
||||
{selectedPlayMenu === 'layout' ? <LayoutPlaygroundView onSavedLayoutsChange={setSavedLayouts} /> : null}
|
||||
{selectedPlayMenu === 'test' ? <TestPlayAppView /> : null}
|
||||
{selectedPlayMenu === 'cbt' && !isWidgetPreview ? <CbtPlayAppView /> : null}
|
||||
{selectedSavedLayoutId && selectedSavedLayout
|
||||
? renderSavedLayoutContent({
|
||||
layoutId: selectedSavedLayoutId,
|
||||
layout: selectedSavedLayout,
|
||||
savedLayouts,
|
||||
onSavedLayoutsChange: setSavedLayouts,
|
||||
})
|
||||
: null}
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user