diff --git a/src/client/components/ActivityDetail.tsx b/src/client/components/ActivityDetail.tsx
index 4df590e5..b99b9653 100644
--- a/src/client/components/ActivityDetail.tsx
+++ b/src/client/components/ActivityDetail.tsx
@@ -10,11 +10,13 @@ import { PlayApiCommon, PlayApiCommonDetailed } from "../../core/Api";
export interface ActivityDetailProps {
activity: PlayApiCommonDetailed
+ componentType: 'source' | 'client'
}
export const ActivityDetails = (props: ActivityDetailProps) => {
const {
activity,
+ componentType,
activity: {
error,
input: {
@@ -64,7 +66,7 @@ export const ActivityDetails = (props: ActivityDetailProps) => {
-
+
diff --git a/src/client/components/ActivityTimeline.tsx b/src/client/components/ActivityTimeline.tsx
index 5f0b98a2..66252e18 100644
--- a/src/client/components/ActivityTimeline.tsx
+++ b/src/client/components/ActivityTimeline.tsx
@@ -127,14 +127,14 @@ export const ActivityTimeline = (props: ActivityDetailProps) => {
Play
- Source Data
+ {ogInput !== undefined ? Source Data : null}
-
+ {ogInput !== undefined ? (
-
+ ) : null }
diff --git a/src/stories/ActivityDetails.stories.tsx b/src/stories/ActivityDetails.stories.tsx
new file mode 100644
index 00000000..2aa90319
--- /dev/null
+++ b/src/stories/ActivityDetails.stories.tsx
@@ -0,0 +1,64 @@
+import preview from "../../.storybook/preview.js";
+import React from 'react';
+
+import { fn } from 'storybook/test';
+import { Container } from '@chakra-ui/react';
+import { ActivityTimeline } from "../client/components/ActivityTimeline";
+import {Provider} from "../client/components/Provider";
+import { generateJsonPlays } from "../core/PlayTestUtils.js";
+import { generatePlayApiCommonDetailed } from "../core/tests/utils/apiFixtures.js";
+import { generatePlayWithLifecycle, playWithLifecycleScrobble } from "../core/tests/utils/fixtures.js";
+import { asJsonPlayObject } from '../core/PlayMarshalUtils.js';
+import { ActivityDetails } from "../client/components/ActivityDetail.js";
+
+// More on how to set up stories at: https://storybook.js.org/docs/writing-stories#default-export
+const meta = preview.meta({
+ title: 'Examples/ActivityDetails',
+ component: ActivityDetails,
+ parameters: {
+ // Optional parameter to center the component in the Canvas. More info: https://storybook.js.org/docs/configure/story-layout
+ layout: 'padded',
+ },
+ // This component will have an automatically generated Autodocs entry: https://storybook.js.org/docs/writing-docs/autodocs
+ tags: ['autodocs'],
+ // More on argTypes: https://storybook.js.org/docs/api/argtypes
+ args: {
+ activity: generatePlayApiCommonDetailed(),
+ componentType: 'source' as const
+ },
+ argTypes: {
+ componentType: {
+ control: { type: 'select' },
+ options: ['source', 'client'],
+ }
+ },
+ render: function Render(args, { loaded: { activity } }) {
+ return ()
+ },
+decorators: [
+ (Story) => (),
+ ]
+ // Use `fn` to spy on the onClick arg, which will appear in the actions panel once invoked: https://storybook.js.org/docs/essentials/actions#story-args
+});
+
+// More on writing stories with args: https://storybook.js.org/docs/writing-stories/args
+export const ActivityDetailStory = meta.story({
+ loaders: [
+ async (ctx) => {
+ const play = asJsonPlayObject(await playWithLifecycleScrobble(generatePlayWithLifecycle(
+ {
+ lifecycleSteps: {
+ preCompare: 1,
+ postCompare: 1,
+ }
+ }
+ )));
+ return {
+ activity: generatePlayApiCommonDetailed({
+ playOpts: [{play: play}],
+ inputOpts: [{play: play}]
+ }),
+ };
+ }
+ ],
+});
\ No newline at end of file