From da699b11bedd43bdb0624a90ac652a5d9e1c98b4 Mon Sep 17 00:00:00 2001
From: MadCcc <1075746765@qq.com>
Date: Mon, 21 Aug 2023 23:28:14 +0800
Subject: [PATCH 01/10] docs: add fallback for previewer (#44327)
* docs: add fallback for previewer
* chore: code clean
---
.dumi/theme/builtins/Previewer/index.tsx | 36 ++++++++++++++++++++----
1 file changed, 31 insertions(+), 5 deletions(-)
diff --git a/.dumi/theme/builtins/Previewer/index.tsx b/.dumi/theme/builtins/Previewer/index.tsx
index ff79fd82a952..b987d57bc3f0 100644
--- a/.dumi/theme/builtins/Previewer/index.tsx
+++ b/.dumi/theme/builtins/Previewer/index.tsx
@@ -1,10 +1,36 @@
import React, { Suspense } from 'react';
import type { IPreviewerProps } from 'dumi';
+import { Skeleton } from 'antd';
+import { createStyles } from 'antd-style';
const Previewer = React.lazy(() => import('./Previewer'));
-export default (props: IPreviewerProps) => (
-
-
-
-);
+const useStyle = createStyles(({ css }) => ({
+ skeletonWrapper: css`
+ width: 100% !important;
+ height: 500px;
+ margin-bottom: 16px;
+ `,
+}));
+
+export default (props: IPreviewerProps) => {
+ const { styles } = useStyle();
+ return (
+
+ {' '}
+
+ }
+ >
+
+
+ );
+};
From 06d1c9a6e7d608836915b5be3fb129e3797abbf2 Mon Sep 17 00:00:00 2001
From: afc163
Date: Tue, 22 Aug 2023 11:31:49 +0800
Subject: [PATCH 02/10] docs: font flash in home page (#44333)
Signed-off-by: afc163
---
.dumirc.ts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.dumirc.ts b/.dumirc.ts
index a374f7a8f795..b6aa833febbd 100644
--- a/.dumirc.ts
+++ b/.dumirc.ts
@@ -87,14 +87,14 @@ export default defineConfig({
crossorigin: true,
},
{
- rel: 'prefetch',
+ rel: 'preload',
as: 'font',
href: '//at.alicdn.com/wf/webfont/exMpJIukiCms/Gsw2PSKrftc1yNWMNlXgw.woff2',
type: 'font/woff2',
crossorigin: true,
},
{
- rel: 'prefetch',
+ rel: 'preload',
as: 'font',
href: '//at.alicdn.com/wf/webfont/exMpJIukiCms/vtu73by4O2gEBcvBuLgeu.woff',
type: 'font/woff2',
From af301a982206b25b1030e1f84a2cff14c09ce431 Mon Sep 17 00:00:00 2001
From: AN <455454007@qq.com>
Date: Tue, 22 Aug 2023 13:00:42 +0800
Subject: [PATCH 03/10] fix(date-picker):fix format type processing for
showTime. (#44306)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* fix(date-picker):fix format type processing for showTime.
* test✅: Add showTime should work correctly when format is Array test
---
.../date-picker/__tests__/DatePicker.test.tsx | 19 +++++++++++++++++++
components/date-picker/util.ts | 5 +++++
2 files changed, 24 insertions(+)
diff --git a/components/date-picker/__tests__/DatePicker.test.tsx b/components/date-picker/__tests__/DatePicker.test.tsx
index 54c91b3bbfb5..00270af3faf6 100644
--- a/components/date-picker/__tests__/DatePicker.test.tsx
+++ b/components/date-picker/__tests__/DatePicker.test.tsx
@@ -186,6 +186,25 @@ describe('DatePicker', () => {
expect(mouseDownEvent).not.toThrow();
});
+ it('showTime should work correctly when format is Array', () => {
+ const { container } = render(
+ ,
+ );
+ const fuousEvent = () => {
+ fireEvent.focus(container.querySelector('input')!);
+ };
+ const mouseDownEvent = () => {
+ fireEvent.mouseDown(container.querySelector('input')!);
+ };
+ expect(fuousEvent).not.toThrow();
+ expect(mouseDownEvent).not.toThrow();
+ });
+
it('12 hours', () => {
const { container } = render(
,
diff --git a/components/date-picker/util.ts b/components/date-picker/util.ts
index f624b5aebba0..c308fad42260 100644
--- a/components/date-picker/util.ts
+++ b/components/date-picker/util.ts
@@ -126,6 +126,11 @@ export function getTimeProps(
const firstFormat = toArray(format)[0];
const showTimeObj = { ...props };
+ // https://github.com/ant-design/ant-design/issues/44275
+ if (format && Array.isArray(format)) {
+ showTimeObj.format = firstFormat;
+ }
+
if (firstFormat && typeof firstFormat === 'string') {
if (!firstFormat.includes('s') && showSecond === undefined) {
showTimeObj.showSecond = false;
From 80e1bc87bc3d39b6f39f2d90a8dd78306d59bd0c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=8F=B6=E6=9E=AB?=
<7971419+crazyair@users.noreply.github.com>
Date: Tue, 22 Aug 2023 13:11:18 +0800
Subject: [PATCH 04/10] style: remove importOrderSeparation from prettier
config (#44336)
---
.dumi/theme/builtins/Previewer/Previewer.tsx | 3 ++-
.prettierrc | 6 ++----
package.json | 2 +-
3 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/.dumi/theme/builtins/Previewer/Previewer.tsx b/.dumi/theme/builtins/Previewer/Previewer.tsx
index a37144956fd6..fb23c55e0f71 100644
--- a/.dumi/theme/builtins/Previewer/Previewer.tsx
+++ b/.dumi/theme/builtins/Previewer/Previewer.tsx
@@ -1,6 +1,7 @@
+import React from 'react';
import type { IPreviewerProps } from 'dumi';
import { useTabMeta } from 'dumi';
-import React from 'react';
+
import CodePreviewer from './CodePreviewer';
import DesignPreviewer from './DesignPreviewer';
diff --git a/.prettierrc b/.prettierrc
index d1c91d8d042d..73e7db810cd9 100644
--- a/.prettierrc
+++ b/.prettierrc
@@ -4,10 +4,8 @@
"trailingComma": "all",
"printWidth": 100,
"proseWrap": "never",
- "importOrder": ["^(react|react-dom)$", "^([a-z]|@[a-z])", ".*"],
- "importOrderSeparation": true,
- "importOrderSortSpecifiers": true,
- "plugins": ["@trivago/prettier-plugin-sort-imports"],
+ "importOrder": ["^(react|react-dom)$", "^([a-z]|@[a-z])", "", ".*"],
+ "plugins": ["@ianvs/prettier-plugin-sort-imports"],
"overrides": [
{
"files": ".prettierrc",
diff --git a/package.json b/package.json
index 77b4966344b1..0a13a017caa5 100644
--- a/package.json
+++ b/package.json
@@ -172,6 +172,7 @@
"@dnd-kit/utilities": "^3.2.1",
"@emotion/react": "^11.10.4",
"@emotion/server": "^11.4.0",
+ "@ianvs/prettier-plugin-sort-imports": "^4.1.0",
"@qixian.cs/github-contributors-list": "^1.1.0",
"@size-limit/file": "^8.1.0",
"@stackblitz/sdk": "^1.3.0",
@@ -181,7 +182,6 @@
"@testing-library/jest-dom": "^6.0.0",
"@testing-library/react": "^14.0.0",
"@testing-library/user-event": "^14.4.2",
- "@trivago/prettier-plugin-sort-imports": "^4.2.0",
"@types/fs-extra": "^11.0.1",
"@types/gtag.js": "^0.0.13",
"@types/http-server": "^0.12.1",
From 70d9a909c4aef7a11509e924069b5f2399b87015 Mon Sep 17 00:00:00 2001
From: MadCcc <1075746765@qq.com>
Date: Tue, 22 Aug 2023 17:48:53 +0800
Subject: [PATCH 05/10] docs: fix anchor positioning (#44348)
---
.dumi/theme/common/styles/Common.tsx | 19 ++++++++++++++-----
1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/.dumi/theme/common/styles/Common.tsx b/.dumi/theme/common/styles/Common.tsx
index a805422a238c..6cf0de24b2a7 100644
--- a/.dumi/theme/common/styles/Common.tsx
+++ b/.dumi/theme/common/styles/Common.tsx
@@ -1,9 +1,13 @@
import { css, Global } from '@emotion/react';
import React from 'react';
+import { useTheme } from 'antd-style';
-export default () => (
- {
+ const { headerHeight, margin } = useTheme();
+
+ return (
+ (
vertical-align: middle;
border-style: none;
}
+
+ html {
+ scroll-padding-top: ${headerHeight + margin}px;
+ }
`}
- />
-);
+ />
+ );
+};
From 0295322564a8a2908063e2fbd04e3ec159038dc7 Mon Sep 17 00:00:00 2001
From: afc163
Date: Tue, 22 Aug 2023 19:00:06 +0800
Subject: [PATCH 06/10] docs: prevent highlight code initially (#44344)
---
.../builtins/Previewer/CodePreviewer.tsx | 48 ++-------
.dumi/theme/builtins/Previewer/index.tsx | 38 ++++---
.dumi/theme/common/CodePreview.tsx | 100 ++++++++++++++----
3 files changed, 109 insertions(+), 77 deletions(-)
diff --git a/.dumi/theme/builtins/Previewer/CodePreviewer.tsx b/.dumi/theme/builtins/Previewer/CodePreviewer.tsx
index 9bbd9b08d2dc..66033bec7dde 100644
--- a/.dumi/theme/builtins/Previewer/CodePreviewer.tsx
+++ b/.dumi/theme/builtins/Previewer/CodePreviewer.tsx
@@ -8,10 +8,7 @@ import type { Project } from '@stackblitz/sdk';
import stackblitzSdk from '@stackblitz/sdk';
import classNames from 'classnames';
import { FormattedMessage, useSiteData } from 'dumi';
-import toReactElement from 'jsonml-to-react-element';
-import JsonML from 'jsonml.js/lib/utils';
import LZString from 'lz-string';
-import Prism from 'prismjs';
import React, { useContext, useEffect, useRef, useState } from 'react';
import CopyToClipboard from 'react-copy-to-clipboard';
import { Alert, Badge, Space, Tooltip } from 'antd';
@@ -31,28 +28,6 @@ import { ping } from '../../utils';
const { ErrorBoundary } = Alert;
-function toReactComponent(jsonML: any) {
- return toReactElement(jsonML, [
- [
- (node: any) => JsonML.isElement(node) && JsonML.getTagName(node) === 'pre',
- (node: any, index: any) => {
- // ref: https://github.com/benjycui/bisheng/blob/master/packages/bisheng/src/bisheng-plugin-highlight/lib/browser.js#L7
- const attr = JsonML.getAttributes(node);
- return React.createElement(
- 'pre',
- {
- key: index,
- className: `language-${attr.lang}`,
- },
- React.createElement('code', {
- dangerouslySetInnerHTML: { __html: attr.highlighted },
- }),
- );
- },
- ],
- ]);
-}
-
function compress(string: string): string {
return LZString.compressToBase64(string)
.replace(/\+/g, '-') // Convert '+' to '-'
@@ -130,13 +105,6 @@ const CodePreviewer: React.FC = (props) => {
const [showOnlineUrl, setShowOnlineUrl] = useState(false);
- const highlightedCodes = {
- jsx: Prism.highlight(jsx, Prism.languages.javascript, 'jsx'),
- tsx: Prism.highlight(entryCode, Prism.languages.javascript, 'jsx'),
- };
-
- const highlightedStyle = style ? Prism.highlight(style, Prism.languages.css, 'css') : '';
-
useEffect(() => {
const regexp = /preview-(\d+)-ant-design/; // matching PR preview addresses
setShowOnlineUrl(
@@ -538,17 +506,11 @@ createRoot(document.getElementById('container')).render();
{codeExpand && (
setCodeType(type)}
/>
- {highlightedStyle ? (
-
- ) : null}
)}
@@ -560,7 +522,9 @@ createRoot(document.getElementById('container')).render();
// resulting in some response delays like following issue:
// https://github.com/ant-design/ant-design/issues/39995
// So we insert style tag into head tag.
- if (!style) return;
+ if (!style) {
+ return;
+ }
const styleTag = document.createElement('style');
styleTag.type = 'text/css';
styleTag.innerHTML = style;
diff --git a/.dumi/theme/builtins/Previewer/index.tsx b/.dumi/theme/builtins/Previewer/index.tsx
index b987d57bc3f0..e36c556112f8 100644
--- a/.dumi/theme/builtins/Previewer/index.tsx
+++ b/.dumi/theme/builtins/Previewer/index.tsx
@@ -1,8 +1,10 @@
import React, { Suspense } from 'react';
import type { IPreviewerProps } from 'dumi';
-import { Skeleton } from 'antd';
+import { Skeleton, Alert } from 'antd';
import { createStyles } from 'antd-style';
+const { ErrorBoundary } = Alert;
+
const Previewer = React.lazy(() => import('./Previewer'));
const useStyle = createStyles(({ css }) => ({
@@ -16,21 +18,23 @@ const useStyle = createStyles(({ css }) => ({
export default (props: IPreviewerProps) => {
const { styles } = useStyle();
return (
-
- {' '}
-
- }
- >
-
-
+
+
+ {' '}
+
+ }
+ >
+
+
+
);
};
diff --git a/.dumi/theme/common/CodePreview.tsx b/.dumi/theme/common/CodePreview.tsx
index 93c9c4580710..b69303dae1fe 100644
--- a/.dumi/theme/common/CodePreview.tsx
+++ b/.dumi/theme/common/CodePreview.tsx
@@ -1,37 +1,101 @@
-import React from 'react';
+import React, { useEffect, useMemo } from 'react';
+import Prism from 'prismjs';
+import toReactElement from 'jsonml-to-react-element';
+import JsonML from 'jsonml.js/lib/utils';
import { Tabs } from 'antd';
const LANGS = {
tsx: 'TypeScript',
jsx: 'JavaScript',
+ style: 'CSS',
};
interface CodePreviewProps {
- codes?: Record;
- toReactComponent?: (node: any) => React.ReactNode;
+ sourceCode?: string;
+ jsxCode?: string;
+ styleCode?: string;
onCodeTypeChange?: (activeKey: string) => void;
}
-const CodePreview: React.FC = ({ toReactComponent, codes, onCodeTypeChange }) => {
- const langList = Object.keys(codes).sort().reverse();
+function toReactComponent(jsonML: any) {
+ return toReactElement(jsonML, [
+ [
+ (node: any) => JsonML.isElement(node) && JsonML.getTagName(node) === 'pre',
+ (node: any, index: any) => {
+ // ref: https://github.com/benjycui/bisheng/blob/master/packages/bisheng/src/bisheng-plugin-highlight/lib/browser.js#L7
+ const attr = JsonML.getAttributes(node);
+ return React.createElement(
+ 'pre',
+ {
+ key: index,
+ className: `language-${attr.lang}`,
+ },
+ React.createElement('code', {
+ dangerouslySetInnerHTML: { __html: attr.highlighted },
+ }),
+ );
+ },
+ ],
+ ]);
+}
+
+const CodePreview: React.FC = ({
+ sourceCode = '',
+ jsxCode = '',
+ styleCode = '',
+ onCodeTypeChange,
+}) => {
+ // 避免 Tabs 数量不稳定的闪动问题
+ const initialCodes = {};
+ if (sourceCode) {
+ initialCodes.tsx = '';
+ }
+ if (jsxCode) {
+ initialCodes.jsx = '';
+ }
+ if (styleCode) {
+ initialCodes.style = '';
+ }
+ const [highlightedCodes, setHighlightedCodes] = React.useState(initialCodes);
+
+ useEffect(() => {
+ const codes = {
+ tsx: Prism.highlight(sourceCode, Prism.languages.javascript, 'jsx'),
+ jsx: Prism.highlight(jsxCode, Prism.languages.javascript, 'jsx'),
+ style: Prism.highlight(styleCode, Prism.languages.css, 'css'),
+ };
+ // 去掉空的代码类型
+ Object.keys(codes).forEach((key) => {
+ if (!codes[key]) {
+ delete codes[key];
+ }
+ });
+ setHighlightedCodes(codes);
+ }, [jsxCode, sourceCode, styleCode]);
+
+ const langList = Object.keys(highlightedCodes);
+ const items = useMemo(
+ () =>
+ langList.map((lang) => ({
+ label: LANGS[lang],
+ key: lang,
+ children: toReactComponent(['pre', { lang, highlighted: highlightedCodes[lang] }]),
+ })),
+ [JSON.stringify(highlightedCodes)],
+ );
+
+ if (!langList.length) {
+ return null;
+ }
+
if (langList.length === 1) {
return toReactComponent([
'pre',
- { lang: langList[0], highlighted: codes[langList[0]], className: 'highlight' },
+ { lang: langList[0], highlighted: highlightedCodes[langList[0]], className: 'highlight' },
]);
}
- return (
- ({
- label: LANGS[lang],
- key: lang,
- children: toReactComponent(['pre', { lang, highlighted: codes[lang] }]),
- }))}
- />
- );
+
+ return ;
};
export default CodePreview;
From 4d12efed316138f889470de92b023295f279854c Mon Sep 17 00:00:00 2001
From: afc163
Date: Tue, 22 Aug 2023 19:01:34 +0800
Subject: [PATCH 07/10] chore: Update pr-contributor-welcome.yml (#44340)
* chore: Update pr-contributor-welcome.yml
Signed-off-by: afc163
* Apply suggestions from code review
Signed-off-by: afc163
---------
Signed-off-by: afc163
---
.github/workflows/pr-contributor-welcome.yml | 28 +++++++++++++++++++-
1 file changed, 27 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/pr-contributor-welcome.yml b/.github/workflows/pr-contributor-welcome.yml
index 302e9c71535b..b8610144b645 100644
--- a/.github/workflows/pr-contributor-welcome.yml
+++ b/.github/workflows/pr-contributor-welcome.yml
@@ -9,6 +9,32 @@ on:
- 'components/**'
jobs:
+ read-file:
+ runs-on: ubuntu-latest
+ outputs:
+ require-result: ${{ steps.contributors.outputs.content }}
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ - name: Read contributors.json
+ id: contributors
+ uses: juliangruber/read-file-action@v1
+ with:
+ path: ./contributors.json
+
+ output-log:
+ runs-on: ubuntu-latest
+ needs: read-file
+ steps:
+ - name: contributors.json
+ run: echo "${{ needs.read-file.outputs.require-result }}"
+ - name: creator
+ run: echo "${{ github.event.pull_request.user.login }}"
+ - name: contains
+ run: echo "${{ contains(fromJSON(needs.read-file.outputs.require-result), github.event.pull_request.user.login) }}"
+ - name: merged
+ run: echo "${{ github.event.pull_request.merged }}"
+
check-merged:
runs-on: ubuntu-latest
needs: read-file
@@ -25,4 +51,4 @@ jobs:
- body-include: ''
\ No newline at end of file
+ body-include: ''
From 24d055ed579f2c88ef11054204ae6a640e687fb5 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Tue, 22 Aug 2023 22:08:39 +0800
Subject: [PATCH 08/10] chore(deps-dev): bump vanilla-jsoneditor from 0.17.10
to 0.18.0 (#44352)
Bumps [vanilla-jsoneditor](https://github.com/josdejong/svelte-jsoneditor) from 0.17.10 to 0.18.0.
- [Release notes](https://github.com/josdejong/svelte-jsoneditor/releases)
- [Changelog](https://github.com/josdejong/svelte-jsoneditor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/josdejong/svelte-jsoneditor/compare/v0.17.10...v0.18.0)
---
updated-dependencies:
- dependency-name: vanilla-jsoneditor
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot]
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---
package.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/package.json b/package.json
index 0a13a017caa5..7ae4fd84bb03 100644
--- a/package.json
+++ b/package.json
@@ -304,7 +304,7 @@
"ts-node": "^10.8.2",
"typedoc": "^0.24.8",
"typescript": "~5.1.3",
- "vanilla-jsoneditor": "^0.17.1",
+ "vanilla-jsoneditor": "^0.18.0",
"webpack-bundle-analyzer": "^4.1.0",
"xhr-mock": "^2.4.1"
},
From f5fcb7010d6f8425d6b9160a1198d54bdfb22bef Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E4=BA=8C=E8=B4=A7=E7=88=B1=E5=90=83=E7=99=BD=E8=90=9D?=
=?UTF-8?q?=E5=8D=9C?=
Date: Tue, 22 Aug 2023 23:53:18 +0800
Subject: [PATCH 09/10] fix: rm useless form inline style (#44360)
---
components/form/style/index.ts | 4 ----
1 file changed, 4 deletions(-)
diff --git a/components/form/style/index.ts b/components/form/style/index.ts
index a78320f37cbc..4664972a1d84 100644
--- a/components/form/style/index.ts
+++ b/components/form/style/index.ts
@@ -362,10 +362,6 @@ const genInlineStyle: GenerateStyle = (token) => {
flexWrap: 'nowrap',
},
- '&-with-help': {
- marginBottom: token.marginLG,
- },
-
[`> ${formItemCls}-label,
> ${formItemCls}-control`]: {
display: 'inline-block',
From 5d522a374a375b1db83631ed5b5ba27233e5e37a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=BA=A2?=
Date: Wed, 23 Aug 2023 12:26:05 +0800
Subject: [PATCH 10/10] chore: remove duplicate styles (#44368)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
genBasicInputStyle 方法中已经包括 genActiveStyle 了
---
components/mentions/style/index.ts | 5 -----
1 file changed, 5 deletions(-)
diff --git a/components/mentions/style/index.ts b/components/mentions/style/index.ts
index b7e8adfeb152..c106f4b82bc4 100644
--- a/components/mentions/style/index.ts
+++ b/components/mentions/style/index.ts
@@ -1,6 +1,5 @@
import type { InputToken } from '../../input/style';
import {
- genActiveStyle,
genBasicInputStyle,
genDisabledStyle,
genPlaceholderStyle,
@@ -77,10 +76,6 @@ const genMentionsStyle: GenerateStyle = (token) => {
},
},
- '&-focused': {
- ...genActiveStyle(token),
- },
-
[`&-affix-wrapper ${componentCls}-suffix`]: {
position: 'absolute',
top: 0,