import { faHatWizard } from "@fortawesome/free-solid-svg-icons"; import * as React from "react"; import DynLayout, { IDynamicLayoutProps } from "../../resources/ui/layout/dynamicLayout"; import TabEntry from "../../resources/ui/layout/tabs"; export interface DynLayoutProps {} export interface DynLayoutState {} class TestDynLayoutComponent extends React.Component< DynLayoutProps, DynLayoutState > { componentDidMount() { this.setState({ layoutSettings: { width: process.browser ? window.innerWidth : 1920, autoSize: false } }); console.log("here", process.browser ? window.innerWidth : 1920); } constructor(props) { super(props); } render() { const settings: IDynamicLayoutProps = { components: [ { visible: true, component() { return <># Test Widget 1 ; }, gridSettings: { h: 5, w: 5, x: 0, y: 0, minW: 3, maxH: 5, minH: 5, maxW: 5 }, id: "test", label: "Test Widget 1", props: {}, hideable: true }, { visible: true, component() { return ( ); }, gridSettings: { h: 5, w: 10, x: 5, y: 0, minW: 5, maxH: 5, minH: 5 }, id: "test2", label: "# Test Widget 2", props: {}, hideable: false, bg: "light" } ], layoutSettings: { width: process.browser ? window.innerWidth : 1920, autoSize: false, preventCollision: false, cols: 15, compactType: "horizontal" }, toolbar: { items: [ { type: "link", label: "docs", ref: "/docs", icon: faHatWizard } ] }, generateData() { return { content: "hello" }; } }; return React.createElement(DynLayout, settings); } } export default TestDynLayoutComponent;