Skip to content

Commit 5baddfe

Browse files
refactor: use global instances of modal, message
1 parent e4996df commit 5baddfe

File tree

70 files changed

+298
-255
lines changed

Some content is hidden

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

70 files changed

+298
-255
lines changed

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

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import Draggable from "react-draggable";
88
import { DarkActiveTextColor, GreyTextColor } from "constants/style";
99
import { CloseIcon, ErrorIcon, SuccessIcon, WarningIcon, WarningWhiteIcon } from "icons";
1010
import { trans } from "i18n/design";
11+
import { modalInstance } from "components/GlobalInstances";
1112

1213
type ModalWrapperProps = {
1314
width?: string | number;
@@ -108,6 +109,7 @@ export const ModalFooterWrapper = styled.div`
108109
}
109110
`;
110111

112+
111113
function ModalHeader(props: {
112114
title?: React.ReactNode;
113115
onCancel?: (e: React.MouseEvent<HTMLElement>) => void;
@@ -242,6 +244,7 @@ function CustomModalRender(props: CustomModalProps & ModalFuncProps) {
242244
/**
243245
* an antd modal capsulation
244246
*/
247+
245248
function CustomModal(props: CustomModalProps) {
246249
return (
247250
<AntdModal
@@ -272,6 +275,7 @@ CustomModal.confirm = (props: {
272275
type?: "info" | "warn" | "error" | "success";
273276
width?: number | string;
274277
}): any => {
278+
275279
const defaultConfirmProps: ModalFuncProps = {
276280
...DEFAULT_PROPS,
277281
okText: trans("ok"),
@@ -285,7 +289,7 @@ CustomModal.confirm = (props: {
285289
},
286290
};
287291
// create model
288-
const model = AntdModal.confirm({
292+
const model = modalInstance.confirm({
289293
width: "fit-content",
290294
style: props.style,
291295
centered: true,

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

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import copy from "copy-to-clipboard";
22
import styled from "styled-components";
33
import { ReactComponent as Dcopy } from "icons/icon-copy.svg";
4-
import { message } from "antd";
54
import { trans } from "i18n/design";
65
import { CSSProperties } from "react";
6+
import { messageInstance } from "./GlobalInstances";
77

88
const Copy = styled(Dcopy)`
99
flex-shrink: 0;
@@ -26,10 +26,10 @@ export function CopyTextButton(props: { text: string; style?: CSSProperties }) {
2626
onClick={(e) => {
2727
e.stopPropagation();
2828
if (props.text) {
29-
message.success(trans("notification.copySuccess"));
29+
messageInstance.success(trans("notification.copySuccess"));
3030
return copy(props.text);
3131
}
32-
message.error(trans("notification.copyFail"));
32+
messageInstance.error(trans("notification.copyFail"));
3333
return;
3434
}}
3535
/>

client/packages/lowcoder/src/api/apiUtils.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@ import {
1010
import { AUTH_BIND_URL, OAUTH_REDIRECT } from "constants/routesURL";
1111
import log from "loglevel";
1212
import history from "util/history";
13-
import { message } from "antd";
1413
import axios, { AxiosError, AxiosRequestConfig, AxiosResponse } from "axios";
1514
import { trans } from "i18n";
1615
import StoreRegistry from "redux/store/storeRegistry";
1716
import { logoutAction } from "redux/reduxActions/userActions";
17+
import { messageInstance } from "lowcoder-design";
1818

1919
const executeActionRegex = /query\/execute/;
2020
const timeoutErrorRegex = /timeout of (\d+)ms exceeded/;
@@ -146,8 +146,8 @@ export const apiFailureResponseInterceptor = (error: any) => {
146146
error.response?.data?.code === SERVER_ERROR_CODES.CURRENT_EDITION_NOT_SUPPORT_THIS_FEATURE
147147
) {
148148
const errMsg = error.response.data?.message ?? trans("apiMessage.functionNotSupported");
149-
message.destroy();
150-
message.error(errMsg);
149+
messageInstance.destroy();
150+
messageInstance.error(errMsg);
151151
return Promise.reject({ message: errMsg });
152152
}
153153

client/packages/lowcoder/src/base/codeEditor/extensions.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@ import { SQLCompletionSource } from "./completion/sqlCompletionSource";
5656
import { getFormatter } from "./autoFormat";
5757
import { CodeType } from "lowcoder-core";
5858
import { CompletionSource } from "./completion/completion";
59-
import { message } from "antd";
6059
import { CodeEditorTooltipContainer } from "./codeEditor";
6160
import { libNames } from "constants/libConstants";
6261
import { QueryContext } from "../../util/context/QueryContext";
@@ -65,6 +64,7 @@ import { highlightJsTheme, useHighlightJsExtension } from "./extensions/highligh
6564
import { trans } from "i18n";
6665
import log from "loglevel";
6766
import { highlightSyntaxExtension } from "./extensions/highlightSyntax";
67+
import { messageInstance } from "lowcoder-design";
6868

6969
// reference: https://github.com/codemirror/basic-setup/blob/main/src/codemirror.ts
7070
const basicSetup = [
@@ -392,10 +392,10 @@ export function languageExtension(language?: Language, codeType?: CodeType): Ext
392392
}
393393
})
394394
.catch((e) => {
395-
message.error(e instanceof Error ? e.message : e);
395+
messageInstance.error(e instanceof Error ? e.message : e);
396396
});
397397
} else {
398-
message.warn(trans("codeEditor.notSupportAutoFormat"));
398+
messageInstance.warning(trans("codeEditor.notSupportAutoFormat"));
399399
}
400400
return true;
401401
},

client/packages/lowcoder/src/components/JSLibraryModal.tsx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { trans } from "i18n";
55
import { DocLink } from "components/ExternalLink";
66
import { Input } from "components/Input";
77
import { TacoButton } from "components/button";
8-
import { message, Spin } from "antd";
8+
import { Spin } from "antd";
99
import { useDispatch, useSelector } from "react-redux";
1010
import { recommendJSLibrarySelector } from "redux/selectors/jsLibrarySelector";
1111
import { JSLibraryInfo, JSLibraryLabel } from "components/JSLibraryTree";
@@ -22,6 +22,7 @@ import { LoadingOutlined } from "@ant-design/icons";
2222
import { RecommendedJSLibraryMeta } from "api/jsLibraryApi";
2323
import log from "loglevel";
2424
import { TacoMarkDown } from "components/markdown";
25+
import { messageInstance } from "lowcoder-design";
2526

2627
const ModalLabel = styled.div`
2728
display: flex;
@@ -81,7 +82,7 @@ const handleDownload = (
8182
.onLoad(trimUrl)
8283
.then(() => {
8384
props.onSuccess(trimUrl);
84-
message.success(trans("preLoad.jsLibraryInstallSuccess"));
85+
messageInstance.success(trans("preLoad.jsLibraryInstallSuccess"));
8586
})
8687
.catch((e) => {
8788
if (props.runInHost) {
@@ -251,7 +252,7 @@ export function JSLibraryModal(props: JSLibraryModalProps) {
251252
</div>
252253
<CustomModal
253254
draggable
254-
visible={visible}
255+
open={visible}
255256
title={
256257
<ModalLabel>
257258
{trans("preLoad.jsLibrary")}

client/packages/lowcoder/src/components/PermissionDialog/AppPermissionDialog.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ import { PermissionItemsType } from "./PermissionList";
1717
import { trans } from "../../i18n";
1818
import ApplicationApi from "../../api/applicationApi";
1919
import { validateResponse } from "../../api/apiUtils";
20-
import { message } from "antd";
2120
import { PermissionDialog } from "./PermissionDialog";
2221
import { TacoSwitch } from "components/Switch";
2322
import styled from "styled-components";
@@ -29,6 +28,7 @@ import copy from "copy-to-clipboard";
2928
import { StyledLoading } from "./commonComponents";
3029
import { PermissionRole } from "./Permission";
3130
import { SHARE_TITLE } from "../../constants/apiConstants";
31+
import { messageInstance } from "lowcoder-design";
3232

3333
export const AppPermissionDialog = (props: {
3434
applicationId: string;
@@ -125,7 +125,7 @@ export const AppPermissionDialog = (props: {
125125
}
126126
})
127127
.catch((e) => {
128-
message.error(trans("home.addPermissionErrorMessage", { message: e.message }));
128+
messageInstance.error(trans("home.addPermissionErrorMessage", { message: e.message }));
129129
})
130130
}
131131
updatePermission={(permissionId, role) =>
@@ -171,9 +171,9 @@ const AppInviteView = (props: { appId: string }) => {
171171
buttonType="primary"
172172
onClick={() => {
173173
if (copy(inviteLink)) {
174-
message.success(trans("copySuccess"));
174+
messageInstance.success(trans("copySuccess"));
175175
} else {
176-
message.error(trans("copyError"));
176+
messageInstance.error(trans("copyError"));
177177
}
178178
}}
179179
>
@@ -214,7 +214,7 @@ function AppShareView(props: {
214214
dispatch(updateAppPermissionInfo({ publicToAll: checked }));
215215
})
216216
.catch((e) => {
217-
message.error(e.message);
217+
messageInstance.error(e.message);
218218
});
219219
}}
220220
label={isModule ? trans("home.modulePublicMessage") : trans("home.appPublicMessage")}

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

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Button, message, Upload as AntdUpload } from "antd";
1+
import { Button, Upload as AntdUpload } from "antd";
22
import { UploadChangeParam } from "antd/lib/upload";
33
import { UploadFile, UploadProps } from "antd/lib/upload/interface";
44
import { Buffer } from "buffer";
@@ -38,6 +38,7 @@ import { changeEvent, eventHandlerControl } from "../../controls/eventHandlerCon
3838
import { stateComp, UICompBuilder, withDefault } from "../../generators";
3939
import { CommonNameConfig, NameConfig, withExposingConfigs } from "../../generators/withExposing";
4040
import { formDataChildren, FormDataPropertyView } from "../formComp/formDataConstants";
41+
import { messageInstance } from "lowcoder-design";
4142

4243
const FileSizeControl = codeControl((value) => {
4344
if (typeof value === "number") {
@@ -248,15 +249,15 @@ const Upload = (
248249
fileList={fileList}
249250
beforeUpload={(file) => {
250251
if (!file.size || file.size <= 0) {
251-
message.error(`${file.name} ` + trans("file.fileEmptyErrorMsg"));
252+
messageInstance.error(`${file.name} ` + trans("file.fileEmptyErrorMsg"));
252253
return AntdUpload.LIST_IGNORE;
253254
}
254255

255256
if (
256257
(!!props.minSize && file.size < props.minSize) ||
257258
(!!props.maxSize && file.size > props.maxSize)
258259
) {
259-
message.error(`${file.name} ` + trans("file.fileSizeExceedErrorMsg"));
260+
messageInstance.error(`${file.name} ` + trans("file.fileSizeExceedErrorMsg"));
260261
return AntdUpload.LIST_IGNORE;
261262
}
262263
return true;

client/packages/lowcoder/src/comps/comps/formComp/createForm.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Form, FormInstance, message, Select } from "antd";
1+
import { Form, FormInstance, Select } from "antd";
22
import {
33
CheckBox,
44
CustomModal,
@@ -26,6 +26,7 @@ import { trans } from "i18n";
2626
import log from "loglevel";
2727
import { Datasource } from "@lowcoder-ee/constants/datasourceConstants";
2828
import DataSourceIcon from "components/DataSourceIcon";
29+
import { messageInstance } from "lowcoder-design";
2930

3031
const OpenDialogButton = styled.span`
3132
:hover {
@@ -384,14 +385,14 @@ function onClick(
384385
.then((data: FormData) => {
385386
return onSubmit(data, dataSourceTypeConfig, items, onCreate, (error) => {
386387
if (error) {
387-
message.error(error);
388+
messageInstance.error(error);
388389
} else {
389-
message.success(trans("formComp.success"));
390+
messageInstance.success(trans("formComp.success"));
390391
}
391392
});
392393
})
393394
.catch((e) => {
394-
message.error(JSON.stringify(e));
395+
messageInstance.error(JSON.stringify(e));
395396
});
396397
}
397398

@@ -661,7 +662,7 @@ export const CreateForm = (props: { onCreate: CreateHandler }) => {
661662
onClick={(e) => e.stopPropagation()}
662663
>
663664
<CustomModal
664-
visible={visible}
665+
open={visible}
665666
destroyOnClose={true}
666667
title={trans("formComp.generateForm")}
667668
footer={null}

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

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ import {
4040
import { TriContainer } from "../triContainerComp/triContainer";
4141
import { traverseCompTree } from "../containerBase/utils";
4242
import { IForm } from "./formDataConstants";
43-
import { message, Spin } from "antd";
43+
import { Spin } from "antd";
4444
import { BoolControl } from "comps/controls/boolControl";
4545
import { BottomResTypeEnum } from "types/bottomRes";
4646
import { BoolCodeControl, JSONObjectControl } from "comps/controls/codeControl";
@@ -56,6 +56,7 @@ import { trans } from "i18n";
5656
import log from "loglevel";
5757
import { DisabledContext } from "comps/generators/uiCompBuilder";
5858
import { LoadingOutlined } from "@ant-design/icons";
59+
import { messageInstance } from "lowcoder-design";
5960

6061
const eventOptions = [submitEvent] as const;
6162

@@ -290,7 +291,7 @@ let FormTmpComp = class extends FormBaseComp implements IForm {
290291
return Promise.resolve();
291292
});
292293
} else {
293-
message.error(trans("formComp.notValidForm"));
294+
messageInstance.error(trans("formComp.notValidForm"));
294295
return Promise.reject("formComp.notValidForm");
295296
}
296297
}

client/packages/lowcoder/src/comps/comps/moduleContainerComp/moduleEventListComp.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { message } from "antd";
21
import { EmptyContent } from "components/EmptyContent";
32
import { KeyValueItem, KeyValueItemListWithNewCreateState } from "components/KeyValueItemList";
43
import { StringControl } from "comps/controls/codeControl";
@@ -11,6 +10,7 @@ import { controlItem, Section, Switch, SwitchWrapper } from "lowcoder-design";
1110
import { trans } from "i18n";
1211
import { ModuleEventListItemComp } from "./moduleEventListItemComp";
1312
import { ConfigViewSection } from "./styled";
13+
import { messageInstance } from "lowcoder-design";
1414

1515
const ModuleEventListComp = list(ModuleEventListItemComp);
1616

@@ -26,7 +26,7 @@ export class ModuleEventComp extends simpleMultiComp({
2626

2727
trigger(name: string) {
2828
if (this.children.enableEventTestMessage.getView()) {
29-
message.success(trans("module.eventTriggered", { name: name }));
29+
messageInstance.success(trans("module.eventTriggered", { name: name }));
3030
}
3131
}
3232

client/packages/lowcoder/src/comps/comps/tableComp/tableCompView.tsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { message, Table } from "antd";
1+
import { Table } from "antd";
22
import { TableProps } from "antd/es/table";
33
import { TableCellContext, TableRowContext } from "comps/comps/tableComp/tableContext";
44
import { TableToolbar } from "comps/comps/tableComp/tableToolbarComp";
@@ -33,6 +33,7 @@ import { TableImplComp } from "./tableComp";
3333
import { useResizeDetector } from "react-resize-detector";
3434
import { SlotConfigContext } from "comps/controls/slotControl";
3535
import { EmptyContent } from "pages/common/styledComponent";
36+
import { messageInstance } from "lowcoder-design";
3637

3738
const TitleResizeHandle = styled.span`
3839
position: absolute;
@@ -594,7 +595,7 @@ export function TableCompView(props: {
594595
const handleChangeEvent = useCallback(
595596
(eventName) => {
596597
if (eventName === "saveChanges" && !compChildren.onEvent.isBind(eventName)) {
597-
!viewMode && message.warn(trans("table.saveChangesNotBind"));
598+
!viewMode && messageInstance.warning(trans("table.saveChangesNotBind"));
598599
return;
599600
}
600601
compChildren.onEvent.getView()(eventName);

client/packages/lowcoder/src/comps/controls/actionSelector/messageAction.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
1-
import { message } from "antd";
21
import { StringControl } from "comps/controls/codeControl";
32
import { dropdownControl } from "comps/controls/dropdownControl";
43
import { MultiCompBuilder } from "comps/generators/multi";
54
import { BranchDiv } from "lowcoder-design";
65
import { trans } from "i18n";
76
import { millisecondsControl } from "../millisecondControl";
7+
import { messageInstance } from "lowcoder-design";
88

99
const childrenMap = {
1010
text: StringControl,
1111
level: dropdownControl(
1212
[
1313
{ label: trans("information"), value: "info" },
1414
{ label: trans("success"), value: "success" },
15-
{ label: trans("warning"), value: "warn" },
15+
{ label: trans("warning"), value: "warning" },
1616
{ label: trans("error"), value: "error" },
1717
] as const,
1818
"info"
@@ -22,7 +22,7 @@ const childrenMap = {
2222

2323
export const MessageAction = new MultiCompBuilder(
2424
childrenMap,
25-
(props) => () => message[props.level](props.text, props.duration / 1000)
25+
(props) => () => messageInstance[props.level](props.text, props.duration / 1000)
2626
)
2727
.setPropertyViewFn((children) => (
2828
<>

client/packages/lowcoder/src/comps/generators/bottomResList.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { message } from "antd";
21
import { EditorState } from "comps/editorState";
32
import { NameAndExposingInfo } from "comps/utils/exposingTypes";
43
import { trans } from "i18n";
@@ -7,6 +6,7 @@ import { BottomResComp, BottomResListComp, BottomResTypeEnum } from "types/botto
76
import { undoKey } from "util/keyUtils";
87
import { list } from "./list";
98
import { IExposingComp } from "./withExposing";
9+
import { messageInstance } from "lowcoder-design";
1010

1111
type BottomResListItemCompConstr = new (param: CompParams<any>) => MultiBaseComp<any, any, any> &
1212
BottomResComp &
@@ -121,7 +121,7 @@ export function bottomResListComp<T extends BottomResListItemCompConstr>(
121121
],
122122
})
123123
);
124-
message.success(trans("query.deleteSuccessMessage", { undoKey }));
124+
messageInstance.success(trans("query.deleteSuccessMessage", { undoKey }));
125125
}
126126
};
127127
}

0 commit comments

Comments
 (0)