Skip to content

Commit 98e48ec

Browse files
Macraheeliftikhar5
Mac
authored andcommitted
pageLayout component
1 parent 3ed4344 commit 98e48ec

File tree

2 files changed

+48
-6
lines changed

2 files changed

+48
-6
lines changed

client/packages/lowcoder/src/comps/comps/containerComp/pageLayoutComp.tsx

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,36 @@ import {
2020
import { PageLayout } from "../pageLayoutComp/pageLayout";
2121
import { AnimationStyle } from "@lowcoder-ee/comps/controls/styleControlConstants";
2222
import { styleControl } from "@lowcoder-ee/comps/controls/styleControl";
23+
import { setInitialCompStyles } from "@lowcoder-ee/comps/utils/themeUtil";
24+
import { CompTypeContext } from "@lowcoder-ee/comps/utils/compTypeContext";
25+
import { ThemeContext } from "@lowcoder-ee/comps/utils/themeContext";
2326

2427
export const ContainerBaseComp = (function () {
2528
const childrenMap = {
2629
disabled: BoolCodeControl,
27-
animationStyle: styleControl(AnimationStyle),
30+
animationStyle: styleControl(AnimationStyle , 'animationStyle'),
2831
};
2932

3033
return new ContainerCompBuilder(childrenMap, (props, dispatch) => {
3134

3235
const [siderCollapsed, setSiderCollapsed] = useState(false);
3336

37+
const theme = useContext(ThemeContext);
38+
const compType = useContext(CompTypeContext);
39+
const compTheme = theme?.theme?.components?.[compType];
40+
const styleProps: Record<string, any> = {};
41+
['animationStyle'].forEach((key: string) => {
42+
styleProps[key] = (props as any)[key];
43+
});
44+
45+
useEffect(() => {
46+
setInitialCompStyles({
47+
dispatch,
48+
compTheme,
49+
styleProps,
50+
});
51+
}, []);
52+
3453
return (
3554
<DisabledContext.Provider value={props.disabled}>
3655
<PageLayout {...props} siderCollapsed={siderCollapsed} setSiderCollapsed={setSiderCollapsed} />

client/packages/lowcoder/src/comps/comps/pageLayoutComp/pageLayoutComp.tsx

Lines changed: 28 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ import { ContainerBodyChildComp } from "./containerBodyChildComp";
2828
import { trans } from "i18n";
2929
import { ControlNode } from "lowcoder-design";
3030
import { StringControl } from "comps/controls/codeControl";
31+
import { useContext, useEffect } from "react";
32+
import { CompTypeContext } from "@lowcoder-ee/comps/utils/compTypeContext";
33+
import { setInitialCompStyles } from "@lowcoder-ee/comps/utils/themeUtil";
34+
import { ThemeContext } from "@lowcoder-ee/comps/utils/themeContext";
3135

3236
const childrenMap = {
3337
header: SimpleContainerComp,
@@ -51,16 +55,35 @@ const childrenMap = {
5155
autoHeight: AutoHeightControl,
5256
siderScrollbars: withDefault(BoolControl, false),
5357
contentScrollbars: withDefault(BoolControl, false),
54-
style: withDefault(styleControl(ContainerStyle),{borderWidth:'1px'}),
55-
headerStyle: styleControl(ContainerHeaderStyle),
56-
siderStyle: styleControl(ContainerSiderStyle),
57-
bodyStyle: styleControl(ContainerBodyStyle),
58-
footerStyle: styleControl(ContainerFooterStyle),
58+
style: styleControl(ContainerStyle , 'style'),
59+
headerStyle: styleControl(ContainerHeaderStyle , 'headerStyle'),
60+
siderStyle: styleControl(ContainerSiderStyle , 'siderStyle'),
61+
bodyStyle: styleControl(ContainerBodyStyle , 'bodyStyle'),
62+
footerStyle: styleControl(ContainerFooterStyle , 'footerStyle'),
5963
};
6064

6165
// Compatible with old style data 2022-8-15
6266
const layoutBaseComp = migrateOldData(
6367
new MultiCompBuilder(childrenMap, (props, dispatch) => {
68+
69+
const theme = useContext(ThemeContext);
70+
const compType = useContext(CompTypeContext);
71+
console.log("compType", compType)
72+
const compTheme = theme?.theme?.components?.[compType];
73+
const styleProps: Record<string, any> = {};
74+
['style' , 'footerStyle', 'bodyStyle' , 'siderStyle', 'headerStyle'].forEach((key: string) => {
75+
styleProps[key] = (props as any)[key];
76+
});
77+
78+
useEffect(() => {
79+
setInitialCompStyles({
80+
dispatch,
81+
compTheme,
82+
styleProps,
83+
});
84+
}, []);
85+
86+
6487
return { ...props, dispatch };
6588
}).build(),
6689
fixOldStyleData

0 commit comments

Comments
 (0)