From 0b241fffe67883221d7504b19001b502346e086d Mon Sep 17 00:00:00 2001 From: owjs3901 Date: Mon, 28 Nov 2022 11:02:48 +0900 Subject: [PATCH 01/10] Add Func Modal footer --- components/modal/ConfirmDialog.tsx | 32 +++++++++++++++++------------- components/modal/Modal.tsx | 1 + 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/components/modal/ConfirmDialog.tsx b/components/modal/ConfirmDialog.tsx index 2d4e9890be0a..36efab0d7ace 100644 --- a/components/modal/ConfirmDialog.tsx +++ b/components/modal/ConfirmDialog.tsx @@ -41,7 +41,7 @@ export function ConfirmContent( rootPrefixCls, type, okCancel, - + footer, // Legacy for static function usage locale: staticLocale, } = props; @@ -107,19 +107,23 @@ export function ConfirmContent( )}
{props.content}
-
- {cancelButton} - - {okText || (mergedOkCancel ? mergedLocale?.okText : mergedLocale?.justOkText)} - -
+ {footer === undefined ? ( +
+ {cancelButton} + + {okText || (mergedOkCancel ? mergedLocale?.okText : mergedLocale?.justOkText)} + +
+ ) : ( + footer + )} ); }} diff --git a/components/modal/Modal.tsx b/components/modal/Modal.tsx index e0962de51c0f..98898e8f7228 100644 --- a/components/modal/Modal.tsx +++ b/components/modal/Modal.tsx @@ -131,6 +131,7 @@ export interface ModalFuncProps { direction?: DirectionType; bodyStyle?: React.CSSProperties; closeIcon?: React.ReactNode; + footer?: React.ReactNode; modalRender?: (node: React.ReactNode) => React.ReactNode; focusTriggerAfterClose?: boolean; } From 1eabc7256c2fbdba25679c2204ec1725a530ccc4 Mon Sep 17 00:00:00 2001 From: Jung Min O Date: Thu, 1 Dec 2022 09:44:30 +0900 Subject: [PATCH 02/10] Update ConfirmDialog.tsx --- components/modal/ConfirmDialog.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/components/modal/ConfirmDialog.tsx b/components/modal/ConfirmDialog.tsx index 36efab0d7ace..5e4302d7514a 100644 --- a/components/modal/ConfirmDialog.tsx +++ b/components/modal/ConfirmDialog.tsx @@ -107,7 +107,9 @@ export function ConfirmContent( )}
{props.content}
- {footer === undefined ? ( + {footer !== undefined ? ( + footer + ) : (
{cancelButton}
- ) : ( - footer )} ); From bc536a572855732cc421fe3061c677682e54900f Mon Sep 17 00:00:00 2001 From: owjs3901 Date: Mon, 5 Dec 2022 10:30:53 +0900 Subject: [PATCH 03/10] Add test Update docs --- components/modal/__tests__/confirm.test.tsx | 24 +++++++++++++++++++++ components/modal/index.en-US.md | 1 + components/modal/index.zh-CN.md | 1 + package.json | 2 +- 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/components/modal/__tests__/confirm.test.tsx b/components/modal/__tests__/confirm.test.tsx index c18258197923..22c5bc294161 100644 --- a/components/modal/__tests__/confirm.test.tsx +++ b/components/modal/__tests__/confirm.test.tsx @@ -703,4 +703,28 @@ describe('Modal.confirm triggers callbacks correctly', () => { jest.useRealTimers(); errSpy.mockRestore(); }); + + it('null of Footer', async () => { + Modal.confirm({ + footer: null, + }); + + await waitFakeTimer(); + + expect($$('.ant-modal-confirm-btns')).toHaveLength(0); + }); + + it('Update Footer', async () => { + Modal.confirm({ + footer: ( +
+ +
+ ), + }); + await waitFakeTimer(); + expect($$('.custom-modal-footer')).toHaveLength(1); + }); }); diff --git a/components/modal/index.en-US.md b/components/modal/index.en-US.md index c82fc527a212..b5a7b7deba50 100644 --- a/components/modal/index.en-US.md +++ b/components/modal/index.en-US.md @@ -97,6 +97,7 @@ The items listed above are all functions, expecting a settings object as paramet | closable | Whether a close (x) button is visible on top right of the confirm dialog or not | boolean | false | 4.9.0 | | closeIcon | Custom close icon | ReactNode | undefined | 4.9.0 | | content | Content | ReactNode | - | | +| footer | Footer content, set as `footer: null` when you don't need default buttons | ReactNode | - | | | getContainer | Return the mount node for Modal | HTMLElement \| () => HTMLElement \| Selectors \| false | document.body | | | icon | Custom icon | ReactNode | <QuestionCircle /> | | | keyboard | Whether support press esc to close | boolean | true | | diff --git a/components/modal/index.zh-CN.md b/components/modal/index.zh-CN.md index 1f6da8a74cf3..8b7e60ae1d63 100644 --- a/components/modal/index.zh-CN.md +++ b/components/modal/index.zh-CN.md @@ -100,6 +100,7 @@ demo: | closable | 是否显示右上角的关闭按钮 | boolean | false | 4.9.0 | | closeIcon | 自定义关闭图标 | ReactNode | undefined | 4.9.0 | | content | 内容 | ReactNode | - | | +| footer | 底部内容,当不需要默认底部按钮时,可以设为 `footer: null` | ReactNode | - | | | getContainer | 指定 Modal 挂载的 HTML 节点, false 为挂载在当前 dom | HTMLElement \| () => HTMLElement \| Selectors \| false | document.body | | | icon | 自定义图标 | ReactNode | <QuestionCircle /> | | | keyboard | 是否支持键盘 esc 关闭 | boolean | true | | diff --git a/package.json b/package.json index 4a33e21916be..8e0a498769ee 100644 --- a/package.json +++ b/package.json @@ -86,7 +86,7 @@ "site": "dumi build && cp .surgeignore _site", "sort": "npx sort-package-json", "sort-api": "antd-tools run sort-api-table", - "start": "PORT=8001 dumi dev", + "start": "dumi dev", "test": "jest --config .jest.js --cache=false", "test:update": "jest --config .jest.js --cache=false -u", "test-all": "sh -e ./scripts/test-all.sh", From 4c7399d71e3a0a1e12241e377669c5f757546054 Mon Sep 17 00:00:00 2001 From: owjs3901 Date: Mon, 5 Dec 2022 10:46:21 +0900 Subject: [PATCH 04/10] Update snap --- .../__snapshots__/components.test.tsx.snap | 40 +++++++++---------- .../__snapshots__/directory.test.tsx.snap | 22 +++++----- .../__snapshots__/index.test.tsx.snap | 8 ++-- 3 files changed, 35 insertions(+), 35 deletions(-) diff --git a/components/config-provider/__tests__/__snapshots__/components.test.tsx.snap b/components/config-provider/__tests__/__snapshots__/components.test.tsx.snap index 93163ce2263f..ff54c0429e9f 100644 --- a/components/config-provider/__tests__/__snapshots__/components.test.tsx.snap +++ b/components/config-provider/__tests__/__snapshots__/components.test.tsx.snap @@ -40280,7 +40280,7 @@ exports[`ConfigProvider components Tree configProvider 1`] = `