(serverStatusState);
- const { extraPageContent, version, name, externalActions, offlineMessage } = clientConfig;
+ const {
+ extraPageContent,
+ version,
+ name,
+ summary,
+ socialHandles,
+ tags,
+ externalActions,
+ offlineMessage,
+ } = clientConfig;
const [showNotifyReminder, setShowNotifyReminder] = useState(false);
const [showNotifyPopup, setShowNotifyPopup] = useState(false);
@@ -143,7 +152,14 @@ export default function ContentComponent() {
-
+
diff --git a/web/components/ui/Logo/Logo.module.scss b/web/components/ui/Logo/Logo.module.scss
index f68f9c7b2..4d9276889 100644
--- a/web/components/ui/Logo/Logo.module.scss
+++ b/web/components/ui/Logo/Logo.module.scss
@@ -4,17 +4,17 @@
align-items: center;
justify-content: center;
overflow: hidden;
- margin-right: .5rem;
- width: clamp(2.5vh, 9vw, 120px);
- height: clamp(2.5vh, 9vw, 120px);
+ margin-right: 0.5rem;
+ width: 96px;
+ height: 96px;
border-radius: 50%;
- border-width: 3px;
+ border-width: 5px;
border-style: solid;
border-color: var(--theme-primary-color);
background-color: var(--theme-background-secondary);
}
-.container {
+.container {
width: 90%;
height: 90%;
border-radius: 50%;
@@ -28,4 +28,3 @@
background-position: center;
overflow: hidden;
}
-
diff --git a/web/components/ui/SocialLinks/SocialLinks.module.scss b/web/components/ui/SocialLinks/SocialLinks.module.scss
index f5a403ea3..618119345 100644
--- a/web/components/ui/SocialLinks/SocialLinks.module.scss
+++ b/web/components/ui/SocialLinks/SocialLinks.module.scss
@@ -1,6 +1,6 @@
.link {
- width: 2em;
- margin-right: 4px;
+ width: 1.8em;
+ margin-right: 16px;
}
.links {
diff --git a/web/stories/ContentHeader.stories.tsx b/web/stories/ContentHeader.stories.tsx
new file mode 100644
index 000000000..2946dbb59
--- /dev/null
+++ b/web/stories/ContentHeader.stories.tsx
@@ -0,0 +1,76 @@
+import React from 'react';
+import { ComponentStory, ComponentMeta } from '@storybook/react';
+import ContentHeader from '../components/common/ContentHeader/ContentHeader';
+
+export default {
+ title: 'owncast/Components/Content Header',
+ component: ContentHeader,
+ parameters: {},
+} as ComponentMeta;
+
+const Template: ComponentStory = args => ;
+
+export const Example = Template.bind({});
+Example.args = {
+ name: 'My Awesome Owncast Stream',
+ summary: 'A calvacade of glorious sights and sounds',
+ tags: ['word', 'tag with spaces', 'music'],
+ logo: 'https://watch.owncast.online/logo',
+ links: [
+ {
+ platform: 'github',
+ url: 'https://github.com/owncast/owncast',
+ icon: 'https://watch.owncast.online/img/platformlogos/github.svg',
+ },
+ {
+ platform: 'Documentation',
+ url: 'https://owncast.online',
+ icon: 'https://watch.owncast.online/img/platformlogos/link.svg',
+ },
+ {
+ platform: 'mastodon',
+ url: 'https://fosstodon.org/users/owncast',
+ icon: 'https://watch.owncast.online/img/platformlogos/mastodon.svg',
+ },
+ ],
+};
+
+export const LongContent = Template.bind({});
+LongContent.args = {
+ name: 'My Awesome Owncast Stream, streaming the best of streams and some lorem ipsum too',
+ summary:
+ 'A calvacade of glorious sights and sounds. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.',
+ tags: [
+ 'word',
+ 'tag with spaces',
+ 'music',
+ 'more tags',
+ 'a bunch',
+ 'keep going',
+ 'and more',
+ 'just a few more',
+ 'video games',
+ 'things',
+ 'stuff',
+ 'ok some more',
+ 'this should do it',
+ ],
+ logo: 'https://watch.owncast.online/logo',
+ links: [
+ {
+ platform: 'github',
+ url: 'https://github.com/owncast/owncast',
+ icon: 'https://watch.owncast.online/img/platformlogos/github.svg',
+ },
+ {
+ platform: 'Documentation',
+ url: 'https://owncast.online',
+ icon: 'https://watch.owncast.online/img/platformlogos/link.svg',
+ },
+ {
+ platform: 'mastodon',
+ url: 'https://fosstodon.org/users/owncast',
+ icon: 'https://watch.owncast.online/img/platformlogos/mastodon.svg',
+ },
+ ],
+};