1
This commit is contained in:
+43
@@ -0,0 +1,43 @@
|
||||
import type { ReactNode } from 'react';
|
||||
import type { QRProps } from '@rc-component/qrcode';
|
||||
import type { SemanticClassNamesType, SemanticStylesType } from '../_util/hooks';
|
||||
import type { Locale } from '../locale';
|
||||
type ImageSettings = QRProps['imageSettings'];
|
||||
export type { ImageSettings, QRProps };
|
||||
export type QRPropsCanvas = QRProps & React.CanvasHTMLAttributes<HTMLCanvasElement>;
|
||||
export type QRPropsSvg = QRProps & React.SVGAttributes<SVGSVGElement>;
|
||||
export type QRStatus = 'active' | 'expired' | 'loading' | 'scanned';
|
||||
export type StatusRenderInfo = {
|
||||
status: Exclude<QRStatus, 'active'>;
|
||||
locale: Locale['QRCode'];
|
||||
onRefresh?: () => void;
|
||||
};
|
||||
export type QRCodeSemanticName = keyof QRCodeSemanticClassNames & keyof QRCodeSemanticStyles;
|
||||
export type QRCodeSemanticClassNames = {
|
||||
root?: string;
|
||||
cover?: string;
|
||||
};
|
||||
export type QRCodeSemanticStyles = {
|
||||
root?: React.CSSProperties;
|
||||
cover?: React.CSSProperties;
|
||||
};
|
||||
export type QRCodeClassNamesType = SemanticClassNamesType<QRCodeProps, QRCodeSemanticClassNames>;
|
||||
export type QRCodeStylesType = SemanticStylesType<QRCodeProps, QRCodeSemanticStyles>;
|
||||
export interface QRCodeProps extends QRProps, React.HTMLAttributes<HTMLDivElement> {
|
||||
type?: 'canvas' | 'svg';
|
||||
className?: string;
|
||||
rootClassName?: string;
|
||||
prefixCls?: string;
|
||||
icon?: string;
|
||||
iconSize?: number | {
|
||||
width: number;
|
||||
height: number;
|
||||
};
|
||||
bordered?: boolean;
|
||||
errorLevel?: 'L' | 'M' | 'Q' | 'H';
|
||||
status?: QRStatus;
|
||||
onRefresh?: () => void;
|
||||
statusRender?: (info: StatusRenderInfo) => ReactNode;
|
||||
classNames?: QRCodeClassNamesType;
|
||||
styles?: QRCodeStylesType;
|
||||
}
|
||||
Reference in New Issue
Block a user