Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit4d02140

Browse files
committed
Merge branch 'dev' of github.com:lowcoder-org/lowcoder into fix/1849-errors
2 parentsa6eb2a9 +d1937a8 commit4d02140

File tree

9 files changed

+1777
-99
lines changed

9 files changed

+1777
-99
lines changed

‎client/packages/lowcoder/src/comps/comps/buttonComp/buttonCompConstants.tsx‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ export function getButtonStyle(buttonStyle: ButtonStyleType, disabledStyle: Disa
5454
&.ant-btn-disabled {
5555
color:${disabledStyle.disabledText};
5656
background:${disabledStyle.disabledBackground};
57+
border-color:${disabledStyle.disabledBorder};
5758
cursor: not-allowed;
5859
}
5960
}

‎client/packages/lowcoder/src/comps/comps/meetingComp/videobuttonCompConstants.tsx‎

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ export function getButtonStyle(buttonStyle: any, disabledStyle: any) {
4848
&.ant-btn-disabled {
4949
color:${disabledStyle.disabledText};
5050
background:${disabledStyle.disabledBackground};
51+
border-color:${disabledStyle.disabledBorder};
5152
cursor: not-allowed;
5253
}
5354
}
@@ -70,15 +71,15 @@ export const Button100 = styled(Button)<{ $buttonStyle?: any; $disabledStyle?: a
7071
`;
7172

7273
exportconstButtonCompWrapper=styled.div<{disabled:boolean}>`
73-
// The button component is disabled but can respond to drag & select events
74-
${(props)=>
75-
props.disabled&&
76-
`
77-
cursor: not-allowed;
78-
button:disabled {
79-
pointer-events: none;
80-
}
81-
`};
74+
${(props)=>
75+
props.disabled
76+
?css`
77+
cursor: not-allowed;
78+
button:disabled {
79+
pointer-events: none;
80+
}
81+
`
82+
:''};
8283
`;
8384

8485
/**

‎client/packages/lowcoder/src/comps/comps/tagsComp/tagsCompView.tsx‎

Lines changed: 51 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,30 @@
1-
import{
2-
BoolCodeControl,
3-
ButtonEventHandlerControl,
4-
InputLikeStyle,
5-
NameConfig,
6-
Section,
7-
UICompBuilder,
8-
hiddenPropertyView,
9-
sectionNames,
10-
showDataLoadingIndicatorsPropertyView,
11-
styleControl,
12-
withExposingConfigs
13-
}from"@lowcoder-ee/index.sdk";
141
importstyledfrom"styled-components";
152
importReact,{useContext}from"react";
16-
import{trans}from"i18n";
173
import{Tag}from"antd";
184
import{EditorContext}from"comps/editorState";
195
import{PresetStatusColorTypes}from"antd/es/_util/colors";
206
import{hashToNum}from"util/stringUtils";
217
import{TagsCompOptionsControl}from"comps/controls/optionsControl";
228
import{useCompClickEventHandler}from"@lowcoder-ee/comps/utils/useCompClickEventHandler";
9+
import{styleControl}from"@lowcoder-ee/comps/controls/styleControl";
10+
import{ButtonEventHandlerControl}from"@lowcoder-ee/comps/controls/eventHandlerControl";
11+
import{InputLikeStyle}from"@lowcoder-ee/comps/controls/styleControlConstants";
12+
import{BoolCodeControl}from"@lowcoder-ee/comps/controls/codeControl";
13+
import{UICompBuilder}from"@lowcoder-ee/comps/generators/uiCompBuilder";
14+
import{Section,sectionNames}from"lowcoder-design";
15+
import{NameConfig}from"@lowcoder-ee/comps/generators/withExposing";
16+
import{hiddenPropertyView,showDataLoadingIndicatorsPropertyView}from"@lowcoder-ee/comps/utils/propertyUtils";
17+
import{withExposingConfigs}from"@lowcoder-ee/comps/generators/withExposing";
2318

2419
constcolors=PresetStatusColorTypes;
2520

2621
// These functions are used for individual tag styling
2722
functiongetTagColor(tagText :any,tagOptions:any[]){
2823
constfoundOption=tagOptions.find((option:{label:any;})=>option.label===tagText);
2924
if(foundOption){
30-
if(foundOption.colorType==="preset"){
25+
if(foundOption.colorType==="default"){
26+
returnundefined;
27+
}elseif(foundOption.colorType==="preset"){
3128
returnfoundOption.presetColor;
3229
}elseif(foundOption.colorType==="custom"){
3330
returnundefined;
@@ -40,20 +37,32 @@ function getTagColor(tagText : any, tagOptions: any[]) {
4037

4138
constgetTagStyle=(tagText:any,tagOptions:any[],baseStyle:any={})=>{
4239
constfoundOption=tagOptions.find((option:{label:any;})=>option.label===tagText);
40+
4341
if(foundOption){
42+
// If colorType is "default", use ONLY component styles
43+
if(foundOption.colorType==="default"){
44+
conststyle:any={ ...baseStyle};
45+
if(baseStyle.borderWidth&&baseStyle.border&&baseStyle.borderStyle){
46+
style.border=`${baseStyle.borderWidth}${baseStyle.borderStyle}${baseStyle.border}`;
47+
}
48+
returnstyle;
49+
}
50+
4451
conststyle:any={ ...baseStyle};
4552

4653
if(foundOption.colorType==="custom"){
4754
style.backgroundColor=foundOption.color;
4855
style.color=foundOption.textColor;
49-
style.border=`1px solid${foundOption.color}`;
5056
}
5157

52-
if(foundOption.border){
53-
style.borderColor=foundOption.border;
54-
if(!foundOption.colorType||foundOption.colorType!=="custom"){
55-
style.border=`1px solid${foundOption.border}`;
56-
}
58+
letborderStyle=foundOption.borderStyle||"none";
59+
letborderWidth=foundOption.borderWidth||"0px";
60+
letborderColor=foundOption.border||"none";
61+
62+
if(borderStyle!=="none"){
63+
style.border=`${borderWidth}${borderStyle}${borderColor}`;
64+
}else{
65+
style.border="none";
5766
}
5867

5968
if(foundOption.radius){
@@ -68,33 +77,36 @@ const getTagStyle = (tagText: any, tagOptions: any[], baseStyle: any = {}) => {
6877
style.padding=foundOption.padding;
6978
}
7079

80+
if(foundOption.width){
81+
style.width=foundOption.width;
82+
}
83+
7184
returnstyle;
7285
}
73-
returnbaseStyle;
74-
};
7586

76-
functiongetTagIcon(tagText:any,tagOptions:any[]){
77-
constfoundOption=tagOptions.find(option=>option.label===tagText);
78-
returnfoundOption ?foundOption.icon :undefined;
79-
}
87+
conststyle:any={ ...baseStyle};
88+
if(baseStyle.borderWidth&&baseStyle.border&&baseStyle.borderStyle){
89+
style.border=`${baseStyle.borderWidth}${baseStyle.borderStyle}${baseStyle.border}`;
90+
}
91+
returnstyle;
92+
};
8093

8194
constmultiTags=(function(){
8295

83-
constStyledTag=styled(Tag)<{$style:any,$bordered:boolean,$customStyle:any}>`
96+
constStyledTag=styled(Tag)<{$style:any,$customStyle:any}>`
8497
display: flex;
8598
justify-content: center;
8699
align-items: center;
87-
width: 100%;
100+
min-width: fit-content;
101+
width:${(props)=>props.$customStyle?.width||'auto'};
102+
max-width: 100px;
88103
background:${(props)=>props.$customStyle?.backgroundColor||props.$style?.background};
89104
color:${(props)=>props.$customStyle?.color||props.$style?.text};
90105
border-radius:${(props)=>props.$customStyle?.borderRadius||props.$style?.borderRadius};
91-
border:${(props)=>{
92-
if(props.$customStyle?.border)returnprops.$customStyle.border;
93-
returnprops.$bordered ?`${props.$style?.borderStyle}${props.$style?.borderWidth}${props.$style?.border}` :'none';
94-
}};
106+
border:${(props)=>props.$customStyle?.border||props.$style?.border||'1px solid #d9d9d9'};
95107
padding:${(props)=>props.$customStyle?.padding||props.$style?.padding};
96108
margin:${(props)=>props.$customStyle?.margin||props.$style?.margin};
97-
font-size:${(props)=>props.$style?.textSize};
109+
font-size:${(props)=>props.$style?.textSize||'8px'};
98110
font-weight:${(props)=>props.$style?.fontWeight};
99111
cursor: pointer;
100112
`;
@@ -109,8 +121,6 @@ const multiTags = (function () {
109121
options:TagsCompOptionsControl,
110122
style:styleControl(InputLikeStyle,'style'),
111123
onEvent:ButtonEventHandlerControl,
112-
borderless:BoolCodeControl,
113-
enableIndividualStyling:BoolCodeControl,
114124
};
115125

116126
returnnewUICompBuilder(childrenMap,(props)=>{
@@ -120,20 +130,18 @@ const multiTags = (function () {
120130
<StyledTagContainer>
121131
{props.options.map((tag,index)=>{
122132

123-
// Use individual styling only if enableIndividualStyling is true
124-
consttagColor=props.enableIndividualStyling ?getTagColor(tag.label,props.options) :undefined;
125-
consttagIcon=props.enableIndividualStyling ?getTagIcon(tag.label,props.options) :tag.icon;
126-
consttagStyle=props.enableIndividualStyling ?getTagStyle(tag.label,props.options,props.style) :{};
133+
consttagColor=getTagColor(tag.label,props.options);
134+
consttagIcon=tag.icon;
135+
consttagStyle=getTagStyle(tag.label,props.options,props.style);
127136

128137
return(
129138
<StyledTag
130139
key={`tag-${index}`}
131140
$style={props.style}
132-
$bordered={!props.borderless}
133141
$customStyle={tagStyle}
134142
icon={tagIcon}
135143
color={tagColor}
136-
onClick={()=>handleClickEvent()}
144+
onClick={handleClickEvent}
137145
>
138146
{tag.label}
139147
</StyledTag>
@@ -145,7 +153,7 @@ const multiTags = (function () {
145153
.setPropertyViewFn((children:any)=>{
146154
return(
147155
<>
148-
<Sectionname="Basic">
156+
<Sectionname={sectionNames.basic}>
149157
{children.options.propertyView({})}
150158
</Section>
151159

@@ -161,11 +169,6 @@ const multiTags = (function () {
161169
useContext(EditorContext).editorModeStatus
162170
)&&(
163171
<Sectionname={sectionNames.style}>
164-
{children.enableIndividualStyling.propertyView({
165-
label:trans("style.individualStyling"),
166-
tooltip:trans("style.individualStylingTooltip")
167-
})}
168-
{children.borderless.propertyView({label:trans("style.borderless")})}
169172
{children.style.getPropertyView()}
170173
</Section>
171174
)}

‎client/packages/lowcoder/src/comps/comps/textInputComp/textInputConstants.tsx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ export const useTextInputProps = (props: RecordConstructorToView<typeof textInpu
184184
},[defaultValue]);
185185

186186
useEffect(()=>{
187-
if(!changeRef.current){
187+
if(!touchRef.current){
188188
setLocalInputValue(inputValue);
189189
}
190190
},[inputValue]);

‎client/packages/lowcoder/src/comps/controls/optionsControl.tsx‎

Lines changed: 29 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ import {
2929
IconRadius,
3030
Option,
3131
WidthIcon,
32-
ImageCompIcon,
3332
CloseEyeIcon,
3433
}from"lowcoder-design";
3534
importstyledfrom"styled-components";
@@ -39,8 +38,8 @@ import { JSONObject, JSONValue } from "util/jsonTypes";
3938
import{ButtonEventHandlerControl}from"./eventHandlerControl";
4039
import{ControlItemCompBuilder}from"comps/generators/controlCompBuilder";
4140
import{ColorControl}from"./colorControl";
42-
import{StringStateControl}from"./codeStateControl";
4341
import{reduceInContext}from"../utils/reduceContext";
42+
import{BorderOuterOutlined}from"@ant-design/icons";
4443

4544
// Tag preset color options
4645
constTAG_PRESET_COLORS=[
@@ -786,17 +785,26 @@ let TagsCompOptions = new MultiCompBuilder(
786785
{
787786
label:StringControl,
788787
icon:IconControl,
789-
colorType:withDefault(dropdownControl([
788+
colorType:dropdownControl([
789+
{label:"Default",value:"default"},
790790
{label:trans("style.preset"),value:"preset"},
791791
{label:trans("style.custom"),value:"custom"},
792-
]asconst,"preset"),"preset"),
793-
presetColor:withDefault(dropdownControl(TAG_PRESET_COLORS,"blue"),"blue"),
792+
],"default"),
793+
presetColor:dropdownControl(TAG_PRESET_COLORS,"default"),
794794
color:withDefault(ColorControl,"#1890ff"),
795795
textColor:withDefault(ColorControl,"#ffffff"),
796796
border:withDefault(ColorControl,""),
797+
borderWidth:withDefault(RadiusControl,""),
798+
borderStyle:withDefault(dropdownControl([
799+
{label:"Solid",value:"solid"},
800+
{label:"Dashed",value:"dashed"},
801+
{label:"Dotted",value:"dotted"},
802+
{label:"None",value:"none"},
803+
],"solid"),"solid"),
797804
radius:withDefault(RadiusControl,""),
798805
margin:withDefault(StringControl,""),
799806
padding:withDefault(StringControl,""),
807+
width:withDefault(StringControl,""),
800808
},
801809
(props)=>props
802810
).build();
@@ -809,8 +817,7 @@ TagsCompOptions = class extends TagsCompOptions implements OptionCompProperty {
809817
{this.children.label.propertyView({label:trans("coloredTagOptionControl.tag")})}
810818
{this.children.icon.propertyView({label:trans("coloredTagOptionControl.icon")})}
811819
{this.children.colorType.propertyView({
812-
label:trans("style.colorType"),
813-
radioButton:true
820+
label:trans("style.styleOptions")
814821
})}
815822
{colorType==="preset"&&this.children.presetColor.propertyView({
816823
label:trans("style.presetColor")
@@ -821,9 +828,17 @@ TagsCompOptions = class extends TagsCompOptions implements OptionCompProperty {
821828
{this.children.textColor.propertyView({label:trans("style.textColor")})}
822829
</>
823830
)}
831+
{this.children.borderStyle.propertyView({
832+
label:trans('style.borderStyle'),
833+
preInputNode:<StyledIconas={BorderOuterOutlined}title=""/>,
834+
})}
824835
{this.children.border.propertyView({
825836
label:trans('style.border')
826837
})}
838+
{this.children.borderWidth.propertyView({
839+
label:trans('style.borderWidth'),
840+
preInputNode:<StyledIconas={WidthIcon}title=""/>,
841+
})}
827842
{this.children.radius.propertyView({
828843
label:trans('style.borderRadius'),
829844
preInputNode:<StyledIconas={IconRadius}title=""/>,
@@ -839,15 +854,20 @@ TagsCompOptions = class extends TagsCompOptions implements OptionCompProperty {
839854
preInputNode:<StyledIconas={CompressIcon}title=""/>,
840855
placeholder:'3px',
841856
})}
857+
{this.children.width.propertyView({
858+
label:trans('splitLayout.width'),
859+
preInputNode:<StyledIconas={WidthIcon}title=""/>,
860+
placeholder:'100px',
861+
})}
842862
</>
843863
);
844864
}
845865
};
846866

847867
exportconstTagsCompOptionsControl=optionsControl(TagsCompOptions,{
848868
initOptions:[
849-
{label:"Option 1",colorType:"preset",presetColor:"blue"},
850-
{label:"Option 2",colorType:"preset",presetColor:"green"}
869+
{label:"Option 1",colorType:"default"},
870+
{label:"Option 2",colorType:"default"}
851871
],
852872
uniqField:"label",
853873
});

‎client/packages/lowcoder/src/i18n/locales/en.ts‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -476,6 +476,7 @@ export const en = {
476476
// fourth part
477477

478478
"style":{
479+
"styleOptions":"Style Options",
479480
"boxShadowColor":'Shadow Color',
480481
"boxShadow":'Box Shadow',
481482
"opacity":'Opacity',

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp