diff --git a/packages/components/src/components/Iframe.tsx b/packages/components/src/components/Iframe.tsx new file mode 100644 index 00000000..449fbaf0 --- /dev/null +++ b/packages/components/src/components/Iframe.tsx @@ -0,0 +1,14 @@ +import { CSSProperties } from "react"; + +export interface IframeProps { + url: string; + style?: CSSProperties; +} + +export function Iframe({ + url, style +}: IframeProps) { + return ( + + ); +} diff --git a/packages/components/src/index.ts b/packages/components/src/index.ts index daf4b688..11f791ff 100644 --- a/packages/components/src/index.ts +++ b/packages/components/src/index.ts @@ -9,3 +9,4 @@ export * from './components/Map'; export * from './components/PdfViewer'; export * from "./components/Excel"; export * from "./components/BucketViewer"; +export * from "./components/Iframe"; diff --git a/packages/components/stories/BucketViewer.stories.ts b/packages/components/stories/BucketViewer.stories.ts index c3bf42c2..1e914d9a 100644 --- a/packages/components/stories/BucketViewer.stories.ts +++ b/packages/components/stories/BucketViewer.stories.ts @@ -1,6 +1,6 @@ -import { raw, type Meta, type StoryObj } from '@storybook/react'; +import { type Meta, type StoryObj } from '@storybook/react'; -import { BucketViewer, BucketViewerData, BucketViewerProps } from '../src/components/BucketViewer'; +import { BucketViewer, BucketViewerProps } from '../src/components/BucketViewer'; // More on how to set up stories at: https://storybook.js.org/docs/react/writing-stories/introduction const meta: Meta = { diff --git a/packages/components/stories/Iframe.stories.ts b/packages/components/stories/Iframe.stories.ts new file mode 100644 index 00000000..d7539b42 --- /dev/null +++ b/packages/components/stories/Iframe.stories.ts @@ -0,0 +1,31 @@ +import { type Meta, type StoryObj } from '@storybook/react'; + +import { Iframe, IframeProps } from '../src/components/Iframe'; + +const meta: Meta = { + title: 'Components/Iframe', + component: Iframe, + tags: ['autodocs'], + argTypes: { + url: { + description: + 'Page to display inside of the component', + }, + style: { + description: + 'Style of the component', + }, + }, +}; + +export default meta; + +type Story = StoryObj; + +export const Normal: Story = { + name: 'Iframe', + args: { + url: 'https://ssen-smart-meter.datopian.workers.dev', + style: {width: `100%`} + }, +};