mentalHealth/01-Web/packages/enums/common/grid.ts

84 lines
1.4 KiB
TypeScript

type Breakpoint = keyof typeof COL_SEARCH;
type Gutter = number | undefined | Partial<Record<Breakpoint, number>>;
/** 搜索区自适应列数 */
export const COL_SEARCH = {
xs: 24,
sm: 24,
md: 12,
lg: 12,
xl: 8,
xxl: 6,
} as const;
/** 弹窗区自适应列数 */
export const COL_FORM = {
...COL_SEARCH,
xxl: 8,
} as const;
export const COL_FORM_LABEL = {
xs: { span: 24 },
sm: { span: 6 },
md: { span: 6 },
lg: { span: 6 },
xl: { span: 6 },
xxl: { span: 6 },
} as const;
export const COL_FORM_WRAPPER = {
xs: { span: 24 },
sm: { span: 15 },
md: { span: 15 },
lg: { span: 14 },
xl: { span: 16 },
xxl: { span: 16 },
} as const;
export const GUTTER: [Gutter, Gutter] = [
{ xs: 4, sm: 8, md: 12, lg: 16, xl: 20, xxl: 24 },
{ xs: 4, sm: 8, md: 12, lg: 16, xl: 20, xxl: 24 },
];
/**
* 屏幕响应断点
*
* @example
* ```ts
{
XS: 480,
XSMin: 480,
XSMax: 575,
SM: 576,
SMMin: 576,
SMMax: 767,
MD: 768,
MDMin: 768,
MDMax: 991,
LG: 992,
LGMin: 992,
LGMax: 1199,
XL: 1200,
XLMin: 1200,
XLMax: 1599,
XXL: 1600,
XXLMin: 1600,
}
* ```
*/
export const SCREEN_BREAK_POINTS = {
XS: 576,
XSMin: 576,
XSMax: 767,
SM: 768,
SMMin: 768,
SMMax: 991,
MD: 992,
MDMin: 992,
MDMax: 1199,
LG: 1200,
LGMin: 1200,
LGMax: 1599,
XL: 1600,
XLMin: 1600,
XLMax: 1999,
XXL: 2000,
XXLMin: 2000,
} as const;