import * as React from "react"; import * as Constants from "~/common/constants"; import * as System from "~/components/system"; import * as SVG from "~/common/svg"; import { css } from "@emotion/react"; import { TabGroup } from "~/components/core/TabGroup"; import { ButtonSecondary } from "~/components/system/components/Buttons"; import { SearchModal } from "~/components/core/SearchModal"; import { dispatchCustomEvent } from "~/common/custom-events"; import { WarningMessage } from "~/components/core/WarningMessage"; import ScenePage from "~/components/core/ScenePage"; import ScenePageHeader from "~/components/core/ScenePageHeader"; import Section from "~/components/core/Section"; import SlatePreviewBlock from "~/components/core/SlatePreviewBlock"; import CircleButtonGray from "~/components/core/CircleButtonGray"; import EmptyState from "~/components/core/EmptyState"; const STYLES_ICONS = css` display: flex; flex-direction: row; justify-content: center; `; // TODO(jim): Slates design. export default class SceneSlates extends React.Component { state = { tab: 0, }; _handleAdd = () => { this.props.onAction({ name: "Create slate", type: "SIDEBAR", value: "SIDEBAR_CREATE_SLATE", }); this.props.onRehydrate(); }; _handleSearch = () => { dispatchCustomEvent({ name: "create-modal", detail: { modal: }, }); }; render() { let subscriptions = this.props.viewer.subscriptions .filter((each) => { return !!each.target_slate_id; }) .map((relation) => (
this.props.onAction({ type: "NAVIGATE", value: "V1_NAVIGATION_SLATE", data: relation.slate, }) } >
)); return ( ) : null } /> this.setState({ tab: value })} /> {this.state.tab === 0 ? ( this.props.viewer.slates && this.props.viewer.slates.length ? ( this.props.viewer.slates.map((slate) => (
this.props.onAction({ type: "NAVIGATE", value: slate.id, data: { decorator: "SLATE", ...slate }, }) } >
)) ) : (
Use slates to create mood boards, share files, and organize research.
Create slate
) ) : null} {this.state.tab === 1 ? ( subscriptions && subscriptions.length ? ( subscriptions ) : ( You can follow any public slates on the network. Browse slates ) ) : null}
); } }