Skip to content

Commit 3abdc16

Browse files
committed
pull from dev
1 parent 64f5caa commit 3abdc16

File tree

72 files changed

+5521
-276
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+5521
-276
lines changed

client/packages/lowcoder-design/src/components/Section.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,4 +158,5 @@ export const sectionNames = {
158158
headerStyle:trans("prop.headerStyle"),
159159
bodyStyle:trans("prop.bodyStyle"),
160160
badgeStyle:trans("prop.badgeStyle"),
161+
columnStyle:trans("prop.columnStyle"),
161162
};

client/packages/lowcoder-design/src/i18n/design/locales/en.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ export const en = {
3737
headerStyle: 'Header Style',
3838
bodyStyle: 'Body Style',
3939
badgeStyle: 'Badge Style',
40+
columnStyle: 'Column Style',
4041
},
4142
passwordInput: {
4243
label: "Password:",

client/packages/lowcoder-design/src/i18n/design/locales/zh.ts

Lines changed: 27 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
export const zh = {
1+
import {en} from "./en";
2+
3+
export const zh: typeof en = {
4+
...en,
25
addItem: "添加",
36
duplicate: "复制",
47
rename: "重命名",
@@ -10,54 +13,64 @@ export const zh = {
1013
nextStep: "下一步",
1114
finish: "完成",
1215
country: {
13-
china: "中国",
16+
...en.country,
17+
china: "中国",
1418
},
1519
notification: {
16-
copySuccess: "复制成功",
17-
copyFail: "复制失败",
20+
...en.notification,
21+
copySuccess: "复制成功",
22+
copyFail: "复制失败",
1823
},
1924
prop: {
20-
basic: "基础",
21-
resources: "资源",
22-
interaction: "交互",
23-
advanced: "高级",
24-
validation: "验证",
25-
layout: "布局",
26-
labelStyle:"标签样式",
27-
style: "样式",
28-
meetings: "会议",
29-
data: "数据",
25+
...en.prop,
26+
basic: "基础",
27+
resources: "资源",
28+
interaction: "交互",
29+
advanced: "高级",
30+
validation: "验证",
31+
layout: "布局",
32+
labelStyle:"标签样式",
33+
style: "样式",
34+
meetings: "会议",
35+
data: "数据",
3036
},
3137
passwordInput: {
38+
...en.passwordInput,
3239
label: "密码:",
3340
placeholder: "请输入密码",
3441
inconsistentPassword: "两次密码输入不一致",
3542
confirmPasswordLabel: "确认密码:",
3643
confirmPasswordPlaceholder: "请再次输入密码",
3744
},
3845
verifyCodeInput: {
46+
...en.verifyCodeInput,
3947
label: "验证码:",
4048
errorMsg: "验证码应为 {digitNum} 位数字",
4149
placeholder: "请输入 {digitNum} 位数字验证码",
4250
sendCode: "发送验证码",
4351
},
4452
iconSelect: {
53+
...en.iconSelect,
4554
title: "选择图标",
4655
searchPlaceholder: "搜索图标",
4756
},
4857
eventHandler: {
58+
...en.eventHandler,
4959
advanced: "高级",
5060
},
5161
comp: {
62+
...en.comp,
5263
selectedCompsTitle: "已选择 {selectCompNum} 个组件",
5364
selectedCompsDetail: "点击组件查看其属性",
5465
batchDelete: "批量删除",
5566
},
5667
optionsControl: {
68+
...en.optionsControl,
5769
optionItemErrorMSg: `发现重复的选项值 "{value}",只会显示第一项,请更改为唯一值.`,
5870
emptyList: "无选项",
5971
},
6072
container: {
73+
...en.container,
6174
hintPlaceHolder: "从右侧面板拖动组件",
6275
},
6376
};

client/packages/lowcoder-design/src/icons/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,7 @@ export { ReactComponent as InviteUserIcon } from "./icon-application-invite-user
125125
export { ReactComponent as HomeEmptyIcon } from "./icon-application-empty.svg";
126126
export { ReactComponent as HomeListIcon } from "./icon-application-list.svg";
127127
export { ReactComponent as HomeCardIcon } from "./icon-application-card.svg";
128+
export { ReactComponent as APIDocsIcon } from "./remix/instance-line.svg";
128129
// export { ReactComponent as AllAppIcon } from "./icon-all-app.svg";
129130

130131

@@ -263,6 +264,7 @@ export { ReactComponent as ChartCompIconSmall } from "./v2/pie-chart-s.svg";
263264
export { ReactComponent as CheckboxCompIconSmall } from "./v2/checkbox-s.svg";
264265
export { ReactComponent as ColorPickerCompIconSmall } from "./v2/colorpicker-s.svg"; // new
265266
export { ReactComponent as CollapsibleContainerCompIconSmall } from "./v2/collapsible-container-s.svg"; // new
267+
export { ReactComponent as ColumnLayoutCompIconSmall } from "./v2/column-layout-s.svg"; // new
266268
export { ReactComponent as CommentCompIconSmall } from "./v2/comment-s.svg";
267269
export { ReactComponent as ContainerCompIconSmall } from "./v2/container-s.svg";
268270
export { ReactComponent as CustomCompIconSmall } from "./v2/custom-code-s.svg"; // new
@@ -364,6 +366,7 @@ export { ReactComponent as CascaderCompIcon } from "./v2/cascader-m.svg";
364366
export { ReactComponent as ChartCompIcon } from "./v2/pie-chart-m.svg";
365367
export { ReactComponent as CheckboxCompIcon } from "./v2/checkbox-m.svg";
366368
export { ReactComponent as CollapsibleContainerCompIcon } from "./v2/collapsible-container-m.svg";
369+
export { ReactComponent as ColumnLayoutCompIcon } from "./v2/column-layout-m.svg";
367370
export { ReactComponent as CommentCompIcon } from "./v2/comment-m.svg";
368371
export { ReactComponent as ColorPickerCompIcon } from "./v2/colorpicker-m.svg";
369372
export { ReactComponent as ContainerCompIcon } from "./v2/container-m.svg";

client/packages/lowcoder/package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@
2929
"@rjsf/core": "^5.15.1",
3030
"@rjsf/utils": "^5.15.1",
3131
"@rjsf/validator-ajv8": "^5.15.1",
32+
"@stoplight/elements": "^8.1.3",
3233
"@types/lodash": "^4.14.194",
3334
"@types/node": "^16.7.13",
3435
"@types/react": "^18.2.45",
@@ -128,6 +129,7 @@
128129
"vite-plugin-checker": "^0.5.1",
129130
"vite-plugin-dynamic-import": "^1.5.0",
130131
"vite-plugin-html": "^3.2.0",
132+
"vite-plugin-node-polyfills": "^0.22.0",
131133
"vite-plugin-svgr": "^2.2.2",
132134
"vite-tsconfig-paths": "^3.6.0"
133135
}

client/packages/lowcoder/src/app.tsx

Lines changed: 37 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ import {
2727
ADMIN_APP_URL,
2828
ORG_AUTH_FORGOT_PASSWORD_URL,
2929
ORG_AUTH_RESET_PASSWORD_URL,
30+
API_DOCS_URL,
3031
} from "constants/routesURL";
31-
3232
import React from "react";
3333
import { createRoot } from "react-dom/client";
3434
import { Helmet } from "react-helmet";
@@ -123,10 +123,43 @@ class AppIndex extends React.Component<AppIndexProps, any> {
123123
{<title>{this.props.brandName}</title>}
124124
{<link rel="icon" href={this.props.favicon} />}
125125
<meta name="description" content={trans("productDesc")} />
126+
<meta name="keywords" content="Lowcoder, Applications, App Builder, Internal Applications, Websites, Dashboards, Data Visualization, Customer Applications, CRM, ERP, eCommerce, VideoMeeting, Rapid Development" />
127+
<meta name="author" content="Lowcoder Software LTD" />
128+
<meta name="robots" content="index, follow" />
129+
130+
131+
<meta key="og:title" property="og:title" content={this.props.brandName} />
132+
<meta key="og:description" property="og:description" content={trans("productDesc")} />
133+
<meta key="og:image" property="og:image" content="https://raw.githubusercontent.com/lowcoder-org/lowcoder-media-assets/main/images/App%20Editor%20%7C%20Main%20Screeen%20clean%20v2.4.0.png" />
134+
<meta key="og:url" property="og:url" content={window.location.href} />
135+
<meta key="og:type" property="og:type" content="website" />
136+
137+
<meta key="twitter:card" name="twitter:card" content="summary_large_image" />
138+
<meta key="twitter:title" name="twitter:title" content={this.props.brandName} />
139+
<meta key="twitter:description" name="twitter:description" content={trans("productDesc")} />
140+
<meta key="twitter:image" name="twitter:image" content="https://raw.githubusercontent.com/lowcoder-org/lowcoder-media-assets/main/images/App%20Editor%20%7C%20Main%20Screeen%20clean%20v2.4.0.png" />
141+
142+
<meta key="viewport" name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
143+
<meta key="mobile-web-app-capable" name="mobile-web-app-capable" content="yes" />
144+
<meta key="theme-color" name="theme-color" content="#b480de" />
145+
146+
<meta key="apple-mobile-web-app-capable" name="apple-mobile-web-app-capable" content="yes" />
147+
<meta key="apple-mobile-web-app-status-bar-style" name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
148+
<meta key="apple-mobile-web-app-title" name="apple-mobile-web-app-title" content={this.props.brandName} />
149+
<link key="apple-touch-icon" rel="apple-touch-icon" href="https://raw.githubusercontent.com/lowcoder-org/lowcoder-media-assets/main/images/Lowcoder%20Logo%20512.png" />
150+
<link key="apple-touch-startup-image" rel="apple-touch-startup-image" href="https://raw.githubusercontent.com/lowcoder-org/lowcoder-media-assets/main/images/Lowcoder%20Logo%20512.png" />
151+
152+
<meta key="application-name" name="application-name" content={this.props.brandName} />
153+
<meta key="msapplication-TileColor" name="msapplication-TileColor" content="#b480de" />
154+
<meta key="msapplication-TileImage" name="msapplication-TileImage" content="https://raw.githubusercontent.com/lowcoder-org/lowcoder-media-assets/main/images/Lowcoder%20Logo%20150.png" />
155+
{/* }<meta key="msapplication-config" name="msapplication-config" content="https://www.yourdomain.com/path/to/browserconfig.xml" />, */}
156+
157+
<link rel="canonical" href={window.location.href} />
126158
{isLowCoderDomain && [
127159
// Adding Support for iframely to be able to embedd the component explorer in the docu
128-
<meta key="iframely:title" property="iframely:title" content="Lowcoder" />,
129-
<meta key="iframely:description" property="iframely:description" content="Lowcoder | rapid App & VideoMeeting builder for everyone." />,
160+
<meta key="iframely:title" property="iframely:title" content={this.props.brandName} />,
161+
<meta key="iframely:description" property="iframely:description" content={trans("productDesc")} />,
162+
130163
<link key="preconnect-googleapis" rel="preconnect" href="https://fonts.googleapis.com" />,
131164
<link key="preconnect-gstatic" rel="preconnect" href="https://fonts.gstatic.com" crossOrigin="anonymous" />,
132165
<link key="font-ubuntu" href="https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,300;0,400;0,700;1,400&display=swap" rel="stylesheet" />,
@@ -176,6 +209,7 @@ class AppIndex extends React.Component<AppIndexProps, any> {
176209
SETTING,
177210
MARKETPLACE_URL,
178211
ADMIN_APP_URL,
212+
API_DOCS_URL,
179213
]}
180214
// component={ApplicationListPage}
181215
component={LazyApplicationHome}
@@ -189,7 +223,6 @@ class AppIndex extends React.Component<AppIndexProps, any> {
189223
<LazyRoute path={`${COMPONENT_DOC_URL}/:name`} component={LazyComponentDoc} />
190224
<LazyRoute path={`/playground/:name/:dsl`} component={LazyComponentPlayground} />
191225
<Redirect to={`${COMPONENT_DOC_URL}/input`} path="/components" />
192-
193226
{developEnv() && (
194227
<>
195228
<LazyRoute path="/debug_comp/:name" component={LazyDebugComp} />
Binary file not shown.

client/packages/lowcoder/src/components/table/EditableCell.tsx

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -131,17 +131,19 @@ export function EditableCell<T extends JSONValue>(props: EditableCellProps<T>) {
131131
{status === "toSave" && !isEditing && <EditableChip />}
132132
{normalView}
133133
{/* overlay on normal view to handle double click for editing */}
134-
<div
135-
style={{
136-
position: 'absolute',
137-
top: 0,
138-
left: 0,
139-
width: '100%',
140-
height: '100%',
141-
}}
142-
onDoubleClick={enterEditFn}
143-
>
144-
</div>
134+
{editable && (
135+
<div
136+
style={{
137+
position: 'absolute',
138+
top: 0,
139+
left: 0,
140+
width: '100%',
141+
height: '100%',
142+
}}
143+
onDoubleClick={enterEditFn}
144+
>
145+
</div>
146+
)}
145147
</ColumnTypeView>
146148
);
147149
}

0 commit comments

Comments
 (0)