diff --git a/example/package-lock.json b/example/package-lock.json index 79ea84bf..6eeccfb5 100644 --- a/example/package-lock.json +++ b/example/package-lock.json @@ -28,7 +28,7 @@ } }, "..": { - "version": "2.5.0", + "version": "2.5.9", "license": "MIT", "devDependencies": { "@babel/core": "^7.5.5", @@ -48,6 +48,7 @@ "ts-loader": "^9.4.2", "typescript": "^4.9.5", "webpack": "^5.76.2", + "webpack-bundle-analyzer": "^4.8.0", "webpack-cli": "^5.0.1", "webpack-dev-server": "^4.12.0" }, @@ -11484,6 +11485,7 @@ "ts-loader": "^9.4.2", "typescript": "^4.9.5", "webpack": "^5.76.2", + "webpack-bundle-analyzer": "^4.8.0", "webpack-cli": "^5.0.1", "webpack-dev-server": "^4.12.0" }, diff --git a/example/src/App.js b/example/src/App.js index 38b02553..5060bfdb 100644 --- a/example/src/App.js +++ b/example/src/App.js @@ -311,6 +311,7 @@ const stories2 = [

), + header: {externalLink: "https://github.com/mohitk05", profileImage: "https://picsum.photos/360/480", heading: "Mohit Karekar", subheading: "mohitk05"} }, { url: diff --git a/src/components/Header.tsx b/src/components/Header.tsx index d632be4b..8b13f1e3 100644 --- a/src/components/Header.tsx +++ b/src/components/Header.tsx @@ -1,14 +1,21 @@ import React from "react"; import { HeaderProps } from "./../interfaces"; -const Header = ({ profileImage, heading, subheading }: HeaderProps) => ( -
- {profileImage && } - -

{heading}

-

{subheading}

-
-
+const Header = ({ + externalLink, + profileImage, + heading, + subheading, +}: HeaderProps) => ( + +
+ {profileImage && } + +

{heading}

+

{subheading}

+
+
+
); const styles = { @@ -16,6 +23,9 @@ const styles = { display: "flex", alignItems: "center", }, + link: { + textDecoration: "none", + }, img: { width: 40, height: 40, diff --git a/src/interfaces.tsx b/src/interfaces.tsx index af171c99..2aee2666 100644 --- a/src/interfaces.tsx +++ b/src/interfaces.tsx @@ -118,6 +118,7 @@ export interface Header { heading: string; subheading: string; profileImage: string; + externalLink?: string; } export interface SeeMoreProps { @@ -135,6 +136,7 @@ export interface HeaderProps { profileImage: string; heading: string; subheading: string; + externalLink?: string; } export interface ProgressProps { diff --git a/src/renderers/wrappers/withHeader.tsx b/src/renderers/wrappers/withHeader.tsx index 3c391a36..4c6af6c6 100644 --- a/src/renderers/wrappers/withHeader.tsx +++ b/src/renderers/wrappers/withHeader.tsx @@ -2,20 +2,23 @@ import React from "react"; import { Story } from "../../interfaces"; import Header from "./../../components/Header"; -const withHeader: React.FC> = ({ story, globalHeader, children }) => { +const withHeader: React.FC< + React.PropsWithChildren<{ + story: Story; + globalHeader: Function; + }> +> = ({ story, globalHeader, children }) => { return ( <> {children} {story.header && ( -
+
{typeof story === "object" ? ( globalHeader ? ( globalHeader(story.header) ) : (