first commit
This commit is contained in:
4
frontend/node_modules/antd/es/grid/hooks/useBreakpoint.d.ts
generated
vendored
Normal file
4
frontend/node_modules/antd/es/grid/hooks/useBreakpoint.d.ts
generated
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
import type { ScreenMap } from '../../_util/responsiveObserver';
|
||||
declare function useBreakpoint(refreshOnChange: boolean, defaultScreens: null): ScreenMap | null;
|
||||
declare function useBreakpoint(refreshOnChange?: boolean, defaultScreens?: ScreenMap): ScreenMap;
|
||||
export default useBreakpoint;
|
||||
22
frontend/node_modules/antd/es/grid/hooks/useBreakpoint.js
generated
vendored
Normal file
22
frontend/node_modules/antd/es/grid/hooks/useBreakpoint.js
generated
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
"use client";
|
||||
|
||||
import { useRef } from 'react';
|
||||
import useLayoutEffect from "rc-util/es/hooks/useLayoutEffect";
|
||||
import { useForceUpdate } from '../../_util/hooks';
|
||||
import useResponsiveObserver from '../../_util/responsiveObserver';
|
||||
function useBreakpoint(refreshOnChange = true, defaultScreens = {}) {
|
||||
const screensRef = useRef(defaultScreens);
|
||||
const [, forceUpdate] = useForceUpdate();
|
||||
const responsiveObserver = useResponsiveObserver();
|
||||
useLayoutEffect(() => {
|
||||
const token = responsiveObserver.subscribe(supportScreens => {
|
||||
screensRef.current = supportScreens;
|
||||
if (refreshOnChange) {
|
||||
forceUpdate();
|
||||
}
|
||||
});
|
||||
return () => responsiveObserver.unsubscribe(token);
|
||||
}, []);
|
||||
return screensRef.current;
|
||||
}
|
||||
export default useBreakpoint;
|
||||
5
frontend/node_modules/antd/es/grid/hooks/useGutter.d.ts
generated
vendored
Normal file
5
frontend/node_modules/antd/es/grid/hooks/useGutter.d.ts
generated
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
import type { ScreenMap } from '../../_util/responsiveObserver';
|
||||
import type { RowProps } from '../row';
|
||||
type Gap = number | string | undefined;
|
||||
export default function useGutter(gutter: RowProps['gutter'], screens: ScreenMap | null): [Gap, Gap];
|
||||
export {};
|
||||
28
frontend/node_modules/antd/es/grid/hooks/useGutter.js
generated
vendored
Normal file
28
frontend/node_modules/antd/es/grid/hooks/useGutter.js
generated
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
import { responsiveArray } from '../../_util/responsiveObserver';
|
||||
export default function useGutter(gutter, screens) {
|
||||
const results = [undefined, undefined];
|
||||
const normalizedGutter = Array.isArray(gutter) ? gutter : [gutter, undefined];
|
||||
// By default use as `xs`
|
||||
const mergedScreens = screens || {
|
||||
xs: true,
|
||||
sm: true,
|
||||
md: true,
|
||||
lg: true,
|
||||
xl: true,
|
||||
xxl: true
|
||||
};
|
||||
normalizedGutter.forEach((g, index) => {
|
||||
if (typeof g === 'object' && g !== null) {
|
||||
for (let i = 0; i < responsiveArray.length; i++) {
|
||||
const breakpoint = responsiveArray[i];
|
||||
if (mergedScreens[breakpoint] && g[breakpoint] !== undefined) {
|
||||
results[index] = g[breakpoint];
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
results[index] = g;
|
||||
}
|
||||
});
|
||||
return results;
|
||||
}
|
||||
Reference in New Issue
Block a user