mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-06 10:11:31 +00:00
hide top-level pages without studio access
This commit is contained in:
1 parent
aea0070867
commit
155920b723
5 files changed
+34
-5
No files matched your search
@@ -838,6 +838,7 @@ class PageContainer extends React.Component<
|
||||
inferenceJobs: this.props.inferenceJobs,
|
||||
inferenceJobsByCategory:
|
||||
this.props.inferenceJobsByCategory,
|
||||
sessionWrapper: this.props.sessionWrapper,
|
||||
}}
|
||||
/>
|
||||
</Route>
|
||||
@@ -847,6 +848,7 @@ class PageContainer extends React.Component<
|
||||
sessionSubscriptionsWrapper={
|
||||
this.props.sessionSubscriptionsWrapper
|
||||
}
|
||||
sessionWrapper={this.props.sessionWrapper}
|
||||
enqueueInferenceJob={this.props.enqueueInferenceJob}
|
||||
/>
|
||||
</Route>
|
||||
@@ -1313,7 +1315,9 @@ class PageContainer extends React.Component<
|
||||
</Route>
|
||||
|
||||
<Route path="/engine-compositor">
|
||||
<EngineCompositor />
|
||||
<EngineCompositor
|
||||
sessionWrapper={this.props.sessionWrapper}
|
||||
/>
|
||||
</Route>
|
||||
|
||||
<Route path="/voice-designer">
|
||||
|
||||
@@ -6,12 +6,15 @@ import { EnqueueEngineCompositing } from "@storyteller/components/src/api/engine
|
||||
import { FrontendInferenceJobType } from "@storyteller/components/src/jobs/InferenceJob";
|
||||
import { v4 as uuidv4 } from "uuid";
|
||||
import "./EngineCompositor.scss"
|
||||
import { SessionWrapper } from "@storyteller/components/src/session/SessionWrapper";
|
||||
import { StudioNotAvailable } from "v2/view/_common/StudioNotAvailable";
|
||||
|
||||
interface Props {
|
||||
value?: any;
|
||||
sessionWrapper: SessionWrapper;
|
||||
}
|
||||
|
||||
export default function EngineCompositor({ value }: Props) {
|
||||
export default function EngineCompositor({ value, sessionWrapper }: Props) {
|
||||
const [mediaToken,mediaTokenSet] = useState();
|
||||
const onChange = ({ target }: any) => mediaTokenSet(target.value);
|
||||
const inferenceJobs = useInferenceJobs(FrontendInferenceJobType.EngineComposition);
|
||||
@@ -23,12 +26,10 @@ export default function EngineCompositor({ value }: Props) {
|
||||
})
|
||||
.then((res: any) => {
|
||||
if (res && res.success) {
|
||||
console.log("🚛 success!",{ mediaToken, res });
|
||||
inferenceJobs.enqueue( // I need to pass this
|
||||
res.inference_job_token,
|
||||
FrontendInferenceJobType.EngineComposition
|
||||
);
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -40,6 +41,10 @@ export default function EngineCompositor({ value }: Props) {
|
||||
}
|
||||
};
|
||||
|
||||
if (!sessionWrapper.canAccessStudio()) {
|
||||
return <StudioNotAvailable />
|
||||
}
|
||||
|
||||
return <div {...{ className: "fy-engine-compositor"}}>
|
||||
<div {...{ className: "panel engine-compositor-container" }}>
|
||||
<header>
|
||||
|
||||
+5
@@ -5,6 +5,7 @@ import { SessionSubscriptionsWrapper } from "@storyteller/components/src/session
|
||||
import PageHeaderWithImage from "components/layout/PageHeaderWithImage";
|
||||
import { Container, Panel } from "components/common";
|
||||
import { faCameraMovie } from "@fortawesome/pro-solid-svg-icons";
|
||||
import { StudioNotAvailable } from "v2/view/_common/StudioNotAvailable";
|
||||
|
||||
interface Props {
|
||||
sessionWrapper: SessionWrapper;
|
||||
@@ -12,6 +13,10 @@ interface Props {
|
||||
}
|
||||
|
||||
function StorytellerStudioListPage(props: Props) {
|
||||
if (!props.sessionWrapper.canAccessStudio()) {
|
||||
return <StudioNotAvailable />
|
||||
}
|
||||
|
||||
return (
|
||||
<Container type="panel">
|
||||
<PageHeaderWithImage
|
||||
|
||||
@@ -7,9 +7,12 @@ import { SessionSubscriptionsWrapper } from "@storyteller/components/src/session
|
||||
import { faMessageImage } from "@fortawesome/pro-solid-svg-icons";
|
||||
import TextToImageJobsList from "./components/TextToImageJobsList";
|
||||
import { useInferenceJobs } from "hooks";
|
||||
import { SessionWrapper } from "@storyteller/components/src/session/SessionWrapper";
|
||||
import { StudioNotAvailable } from "v2/view/_common/StudioNotAvailable";
|
||||
|
||||
interface TextToImagePageProps {
|
||||
sessionSubscriptionsWrapper: SessionSubscriptionsWrapper;
|
||||
sessionWrapper: SessionWrapper;
|
||||
enqueueInferenceJob: (
|
||||
jobToken: string,
|
||||
frontendInferenceJobType: FrontendInferenceJobType
|
||||
@@ -17,6 +20,7 @@ interface TextToImagePageProps {
|
||||
}
|
||||
|
||||
export default function TextToImagePage({
|
||||
sessionWrapper,
|
||||
sessionSubscriptionsWrapper,
|
||||
enqueueInferenceJob,
|
||||
}: TextToImagePageProps) {
|
||||
@@ -25,6 +29,10 @@ export default function TextToImagePage({
|
||||
);
|
||||
const hasImageGenJobs = inferenceJobs && inferenceJobs.length > 0;
|
||||
|
||||
if (!sessionWrapper.canAccessStudio()) {
|
||||
return <StudioNotAvailable />
|
||||
}
|
||||
|
||||
return (
|
||||
<Container type="panel">
|
||||
<PageHeaderWithImage
|
||||
|
||||
@@ -8,6 +8,8 @@ import PageHeader from "components/layout/PageHeader";
|
||||
|
||||
import { states, reducer } from "./videoWorkflowReducer";
|
||||
import SubRoutes from "./videoWorkflowRoutes";
|
||||
import { SessionWrapper } from '@storyteller/components/src/session/SessionWrapper';
|
||||
import { StudioNotAvailable } from 'v2/view/_common/StudioNotAvailable';
|
||||
|
||||
export default function StorytellerFilter(props:{
|
||||
enqueueInferenceJob: (
|
||||
@@ -16,8 +18,9 @@ export default function StorytellerFilter(props:{
|
||||
) => void;
|
||||
inferenceJobs: Array<InferenceJob>;
|
||||
inferenceJobsByCategory: Map<FrontendInferenceJobType, Array<InferenceJob>>;
|
||||
sessionWrapper: SessionWrapper;
|
||||
}){
|
||||
const debug=true;
|
||||
const debug = true;
|
||||
const {t} = useLocalize("VideoWorkflow");
|
||||
const { NO_FILE } = states;
|
||||
const [pageState, dispatchPageState] = useReducer(reducer, {
|
||||
@@ -44,6 +47,10 @@ export default function StorytellerFilter(props:{
|
||||
}
|
||||
}, [pageState, enqueueInferenceJob]);
|
||||
|
||||
if (!props.sessionWrapper.canAccessStudio()) {
|
||||
return <StudioNotAvailable />
|
||||
}
|
||||
|
||||
return(
|
||||
<Container type="panel" className="mb-5">
|
||||
<PageHeader
|
||||
|
||||
Reference in new issue
Block a user