Skip to content

Commit a2ee8ab

Browse files
Merge pull request #593 from zenml-io/future
Release
2 parents f55c396 + cdef7ed commit a2ee8ab

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+866
-39
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@
3737
"react": "^18.2.0",
3838
"react-dom": "^18.2.0",
3939
"react-hook-form": "^7.51.1",
40+
"react-joyride": "^2.8.1",
4041
"react-markdown": "^9.0.1",
4142
"react-router-dom": "^6.22.3",
4243
"reactflow": "^11.11.0",

pnpm-lock.yaml

Lines changed: 120 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/App.tsx

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,20 @@ import "reactflow/dist/style.css";
77
import { AuthProvider } from "./context/AuthContext";
88
import { router } from "./router/Router";
99
import { queryClient } from "./router/queryclient";
10+
import { TourProvider } from "./components/tour/TourContext";
1011

1112
export function App() {
1213
return (
1314
<Suspense>
1415
<AuthProvider>
1516
<ReactFlowProvider>
16-
<QueryClientProvider client={queryClient}>
17-
<Toaster />
18-
<RouterProvider router={router} />
19-
</QueryClientProvider>
17+
<TourProvider>
18+
<QueryClientProvider client={queryClient}>
19+
<Toaster />
20+
21+
<RouterProvider router={router} />
22+
</QueryClientProvider>
23+
</TourProvider>
2024
</ReactFlowProvider>
2125
</AuthProvider>
2226
</Suspense>

src/app/artifacts/page.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { PageHeader } from "@/components/PageHeader";
22
import { Badge } from "@zenml-io/react-component-library";
33
import { CommandSection, InfoBox } from "./Fragments";
44
import { CTASection, artifactFeatures } from "@/contents/cloud-only";
5-
import ACP from "@/assets/images/acp.png";
5+
import ACP from "@/assets/images/acp.webp";
66

77
export default function ModelsPage() {
88
return (

src/app/models/page.tsx

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,22 @@ import { PageHeader } from "@/components/PageHeader";
22
import { Badge } from "@zenml-io/react-component-library";
33
import { CommandSection, InfoBox } from "./Fragments";
44
import { CTASection, modelFeatures } from "@/contents/cloud-only";
5-
import MCP from "@/assets/images/mcp.png";
5+
import MCP from "@/assets/images/mcp.webp";
6+
import { useTourContext } from "@/components/tour/TourContext";
7+
import { useEffect } from "react";
68

79
export default function ModelsPage() {
10+
const {
11+
setTourState,
12+
tourState: { tourActive }
13+
} = useTourContext();
14+
15+
useEffect(() => {
16+
if (tourActive) {
17+
setTourState((prev) => ({ ...prev, run: true, stepIndex: prev.stepIndex }));
18+
}
19+
}, [tourActive]);
20+
821
return (
922
<div>
1023
<PageHeader className="flex items-center gap-1">

src/app/onboarding/page.tsx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,21 @@ import { FallbackSupportCard, ResourcesCard } from "@/components/fallback-pages/
22
import { HeaderOnboardingBox } from "./Header";
33
import { ProductionSetupChecklist } from "./ProductionSetup";
44
import { StarterSetupList } from "./StarterSetup";
5+
import { useTourContext } from "@/components/tour/TourContext";
6+
import { useEffect } from "react";
57

68
export default function OnboardingPage() {
9+
const {
10+
setTourState,
11+
tourState: { tourActive }
12+
} = useTourContext();
13+
14+
useEffect(() => {
15+
if (tourActive) {
16+
setTourState((prev) => ({ ...prev, run: true, stepIndex: prev.stepIndex }));
17+
}
18+
}, [tourActive]);
19+
720
return (
821
<div className="layout-container grid grid-cols-4 gap-5 py-5">
922
<div className="col-span-4 space-y-5 lg:col-span-3">
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
import ChevronDown from "@/assets/icons/chevron-down.svg?react";
2+
import {
3+
CollapsibleContent,
4+
CollapsibleHeader,
5+
CollapsiblePanel,
6+
CollapsibleTrigger,
7+
Tag
8+
} from "@zenml-io/react-component-library";
9+
import { useState } from "react";
10+
import Docker from "@/assets/icons/services/docker.svg?react";
11+
import Redirect from "@/assets/icons/redirect.svg?react";
12+
import { CopyButton } from "@/components/CopyButton";
13+
import { Codesnippet } from "@/components/CodeSnippet";
14+
import { KeyValue } from "@/components/KeyValue";
15+
16+
type Props = {
17+
data: any;
18+
};
19+
20+
export function DockerImageCollapsible({ data }: Props) {
21+
const [open, setOpen] = useState(true);
22+
23+
return (
24+
<CollapsiblePanel open={open} onOpenChange={setOpen}>
25+
<CollapsibleHeader intent="primary" className="flex items-center gap-[10px]">
26+
<CollapsibleTrigger className="flex w-full items-center gap-[10px]">
27+
<ChevronDown
28+
className={` ${
29+
open ? "" : "-rotate-90"
30+
} h-5 w-5 rounded-md fill-neutral-500 transition-transform duration-200 hover:bg-neutral-200`}
31+
/>
32+
Docker Image
33+
</CollapsibleTrigger>
34+
</CollapsibleHeader>
35+
<CollapsibleContent className="border-t border-theme-border-moderate bg-theme-surface-primary px-5 py-3">
36+
<dl className="grid grid-cols-1 gap-x-[10px] gap-y-2 md:grid-cols-3 md:gap-y-4">
37+
<KeyValue
38+
label="Docker Image"
39+
value={
40+
<div className="flex justify-between">
41+
<Tag className="inline-flex items-center gap-0.5" rounded={false} emphasis="subtle">
42+
<Docker className="mr-1 h-4 w-4 fill-theme-text-brand" />
43+
{"zenml/my_pipeline:data"}
44+
</Tag>
45+
<div className="align-center mr-1 flex">
46+
<a
47+
className="cursor-pointer"
48+
rel="noopener noreferrer"
49+
target="_blank"
50+
href={`https://${data.image}`}
51+
>
52+
<Redirect className="mr-1 mt-0.5 h-5 w-5 fill-theme-text-tertiary" />
53+
</a>
54+
<CopyButton copyText={data.image} isVisible copyTitle="Copy url" />
55+
</div>
56+
</div>
57+
}
58+
/>
59+
<KeyValue
60+
label="Contains Code"
61+
value={
62+
<Tag
63+
color={data.contains_code ? "green" : "grey"}
64+
className="inline-flex items-center gap-0.5"
65+
rounded={false}
66+
emphasis="subtle"
67+
>
68+
{data.contains_code ? "Available" : "None"}
69+
</Tag>
70+
}
71+
/>
72+
</dl>
73+
<p className="mb-2 mt-5 text-theme-text-secondary">Dockerfile</p>
74+
<Codesnippet fullWidth highlightCode wrap code={data.dockerfile} />
75+
<p className="mb-2 mt-5 text-theme-text-secondary">Requirements</p>
76+
<Codesnippet fullWidth highlightCode wrap code={data.requirements} />
77+
</CollapsibleContent>
78+
</CollapsiblePanel>
79+
);
80+
}

0 commit comments

Comments
 (0)