mirror of
https://github.com/ant-design/ant-design.git
synced 2024-12-22 06:18:30 +08:00
59ad48476b
* chore: add boime lint * fix lint * use files ignore * revert change * ignore clarity.js * fix some errors * fix some errors * fix some errors * fix some errors * add yml file * Update clarity.js Signed-off-by: afc163 <afc163@gmail.com> * add npm run lint:biome * add npm run lint:biome * fix test case * fix ts errors * fix ts errors * fix lint and add .lintstagedrc * shorten prop name * chore: update package.json * update biome.json * chore: remove stylelint * chore: useOptionalChain * fix lint * biome format * prettier all code * prettier all code * fix site test --------- Signed-off-by: afc163 <afc163@gmail.com>
37 lines
840 B
TypeScript
37 lines
840 B
TypeScript
// eslint-disable-next-line no-console
|
|
const originError = console.error;
|
|
|
|
export function isSafeWarning(message: boolean, all = false) {
|
|
const list = ['useLayoutEffect does nothing on the server'];
|
|
|
|
if (all) {
|
|
list.push('is deprecated in StrictMode');
|
|
}
|
|
|
|
return list.some((msg) => String(message).includes(msg));
|
|
}
|
|
|
|
/** This function will remove `useLayoutEffect` server side warning. Since it's useless. */
|
|
export function excludeWarning() {
|
|
const errorSpy = jest.spyOn(console, 'error').mockImplementation((msg, ...rest) => {
|
|
if (isSafeWarning(msg)) {
|
|
return;
|
|
}
|
|
originError(msg, ...rest);
|
|
});
|
|
|
|
return errorSpy;
|
|
}
|
|
|
|
export default function excludeAllWarning() {
|
|
let cleanUp: () => void;
|
|
|
|
beforeAll(() => {
|
|
cleanUp = excludeWarning().mockRestore;
|
|
});
|
|
|
|
afterAll(() => {
|
|
cleanUp();
|
|
});
|
|
}
|