type ConfigDataType = { // 接口版本号 (必填) version: string; // 应用Id (必填) appId: string; // 加密后的sign(必填)。sign生成规则: MD5(appId + businessType + msgId + timestamp + traceId + version + appkey) sign: any; // 业务方生成唯一标识 traceId: string; // 请求消息发送的系统时间,精确到毫秒,共17位,格式:20121227180001165 timestamp: string; authPageType?: '2'; }; export interface StylesConfigType { /* 弹窗面板整体样式配置 */ layerStyle?: { // 弹窗宽度 width?: string; // 弹窗高度 height?: string; // 弹窗背景颜色 bgColor?: string; // 弹窗圆角 borderRadius?: string; }; /* 号码背景框样式配置 */ phoneBoxStyle?: { // 是否显示 ifShow?: boolean; // 宽度 width?: string; // 高度 height?: string; // 背景框距离面板上边框距离 high?: string; // 背景框距离面板左边框距离 left?: string; // 背景框颜色 bgColor?: string; // 背景框线条粗细 borderWidth?: string; // 背景框线条颜色 borderColor?: string; // 背景框圆角 borderRadius?: string; // 背景框内间距 padding?: string; // 文字位置 textAlign?: string; }; /* 号码样式配置 */ phoneStyle?: { // 字体大小 fontSize?: string; // 字体颜色 fontColor?: string; // 距离弹窗上边框高度 high?: string; // 距离弹窗左边框边距 left?: string; }; /* 自定义控件样式配置 */ customControlStyle?: { // 是否展示自定义控件 ifShow?: boolean; // 自定义控件显示文案 name?: string; // 自定义控件宽度 width?: string; // 自定义控件高度 height?: string; // 自定义控件距离弹窗上边框高度 high?: string; // 自定义控件距离弹窗左边框边距 left?: string; // 自定义控件背景颜色 bgColor?: string; // 自定义控件圆角 borderRadius?: string; // 自定义控件字体大小 fontSize?: string; // 自定义控件字体颜色 fontColor?: string; // 自定义控件文本对齐选项 textAlign?: string; // 自定义控件下划线 textDecoration?: string; }; /* 登录按钮样式配置 */ submitBtnStyle?: { // 是否展示登录按钮 ifShow?: boolean; // 授权按钮类名 className?: string; // 确认按钮字体大小 fontSize?: string; // 按钮是否保持高亮 keepLightHigh?: boolean; // 确认按钮显示文案 name?: string; // 确认按钮字体颜色 fontColor?: string; // 确认按钮文本对齐选项 textAlign?: string; // 确认按钮背景颜色 bgColor?: string; // 确认按钮宽度 width?: string; // 确认按钮高度 height?: string; // 确认按钮距离弹窗上边框高度 high?: string; // 确认按钮距离弹窗左边框边距 left?: string; // 确认按钮圆角 borderRadius?: string; }; /* 协议栏样式配置 */ agreeStyle?: { // 自定义协议对象数组 agreeArr?: { // 协议名称 name?: string; // 协议链接 url?: string; }[]; // 协议后端文案 appendText?: string; // 字体颜色 fontColor?: string; // 协议链接颜色 hrefColor?: string; // 协议文案距离弹窗上边框高度 high?: string; // 协议文案距离弹窗左边框边距 left?: string; // 字体大小 fontSize?: string; // 文本对齐选项 textalign?: string; }; /* 底部协议勾选提示框面板样式配置 */ msgPanelStyle: { // 面板宽度 width: string; // 面板高度 height: string; // 面板背景颜色 bgColor: string; // 面板圆角 radius: string; // 面板距离可视区域底部距离 bottom: string; // 面板距离可视区域左边距离 left: string; }; /* 底部协议勾选提示框协议栏样式配置 */ msgTextStyle: { // 文案字体 fontFamily: string; // 文案距离面板顶部高度 top: string; // 文案距离面板左边框距离 left: string; // 文案对齐 textAlign: string; // 文案字体颜色 fontColor: string; }; /* 底部协议勾选提示框确认按钮样式配置 */ msgSureBtnStyle: { // 按钮距离面板顶部高度 top: string; // 按钮距离面板左边框距离 left: string; // 按钮文案 text: string; // 字体大小 fontSize: string; // 文案字体颜色 fontColor: string; // 按钮背景颜色 bgColor: string; // 按钮圆角 radius: string; // 文案对齐 textAlign: string; }; /* 底部协议勾选提示框取消按钮 */ msgCancelBtnStyle: { // 按钮距离面板顶部高度 top: string; // 按钮距离面板左边框距离 left: string; // 按钮文案 text: string; // 字体大小 fontSize: string; // 文案字体颜色 fontColor: string; // 按钮背景颜色 bgColor: string; // 按钮圆角 radius: string; // 文案对齐 textAlign: string; }; /* 底部协议勾选提示框协议样式配置 */ msgLinkStyle: { // 文案字体 fontFamily: string; // 文案字体颜色 fontColor: string; }; } export interface SuccessResponseType { code: string; msgId?: string; message?: string; token?: string; userInformation?: string; } export type SuccessCallbackType = (res: SuccessResponseType) => void; export interface ErrorResponseType { code?: string; msgId?: string; message?: string; } export type ErrorCallbackType = (error: ErrorResponseType) => void; export type GetTokenInfoParamsType = { /* 配置参数 */ data: ConfigDataType; /* 是否使用默认样式 */ isUseDefaultStyle?: boolean; /* 样式配置 */ styles?: StylesConfigType; /* 成功回调 */ onSuccess?: SuccessCallbackType; /* 失败回调 */ onError?: ErrorCallbackType; }; declare global { interface Window { volcNumberAuthWebSdk: { getTokenInfo: (params: GetTokenInfoParamsType) => { styleConfig: StylesConfigType; }; }; } }
配置项 | 字段 | 字段含义 | 值 | 说明 | |
---|---|---|---|---|---|
弹窗 | layerStyle | width | 弹窗宽度 | 支持百分比或者数值,如“200px” | 可选 |
height | 弹窗高度 | 支持百分比或者数值,如“200px” | 可选 | ||
bgColor | 弹窗背景颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
borderRadius | 弹窗圆角 | 支持百分比或者数值,如“20px” | 可选 | ||
页面标题 | titleStyle | ifShow | 是否显示标题栏 | Boolean值,默认值为FALSE | 如果要展示标题栏,则必选 |
name | 标题内容 | 字符串 | 可选 | ||
fontColor | 字体颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
fontSize | 字体大小 | 支持数值,比如“20px” | 可选 | ||
left | 距离弹窗左边框边距 | 支持百分比或者数值,如“200px” | 可选 | ||
high | 距离弹窗上边框高度 | 支持百分比或者数值,如“20px” | 可选 | ||
logo | logoStyle | width | Logo宽度 | 支持百分比或者数值,如“200px” | 如果展示logo,则必选 |
height | Logo高度 | 支持百分比或者数值,如“200px” | 如果展示logo,则必选 | ||
high | 距离弹窗上边框高度 | 支持百分比或者数值,如“20px” | 如果展示logo,则必选 | ||
left | 距离弹窗左边框边距 | 支持百分比或者数值或者“center”(居中),如“20px” | 如果展示logo,则必选 | ||
url | Logo的url | 如果展示logo,则必选 | |||
蒙层 | maskStyle | ifShowMask | 是否显示蒙层 | Boolean值,默认值为FALSE | 如果要展示蒙层,则必选 |
bgColor | 蒙层颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
opacity | 透明度 | 从 0.0 (完全透明)到 1.0(完全不透明) | 可选 | ||
号码背景框 | phoneBoxStyle | ifShow | 是否展示,默认不展示 | Boolean值,true/false | 可选 |
width | 背景框宽度 | 支持百分比或者数值,如“200px” | 可选 | ||
height | 背景框高度 | 支持百分比或者数值,如“200px” | 可选 | ||
high | 背景框距离面板上边框距离 | 支持百分比或者数值,如“200px” | 可选 | ||
left | 背景框距离面板左边框距离 | 支持百分比或者数值或者“center”(居中),如“20px” | 可选 | ||
bgColor | 背景框颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
borderWidth | 背景框线条粗细 | 支持数值,如“2px” | 可选 | ||
borderColor | 背景框线条颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
borderRadius | 背景框圆角 | 支持百分比或者数值,如“20px” | 可选 | ||
padding | 背景框文字内距 | 支持百分比或者数值,如“20px” | 可选 | ||
textAlign | 文字位置 | “center/left/right” | 可选 | ||
号码栏 | phoneStyle | fontSize | 字体大小 | 支持数值,比如“20px” | 可选 |
fontColor | 字体颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
high | 距离弹窗上边框高度 | 支持百分比或者数值,如“20px” | 可选 | ||
left | 距离弹窗左边框边距 | 支持百分比或者数值,如“200px” | 可选 | ||
协议栏 | agreeStyle | fontSize | 字体大小 | 支持数值,比如“20px” | 可选 |
textalign | 文本对齐选项 | “center/left/right” | 可选 | ||
fontColor | 字体颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
hrefColor | 协议链接颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
high | 协议文案距离弹窗上边框高度 | 支持百分比或者数值,如“200px” | 可选 | ||
left | 协议文案距离弹窗左边框边距 | 支持百分比或者数值,如“200px” | 可选 | ||
appendText | 协议后端文案 | 字符串 | 可选 | ||
agreeArr | 自定义协议对象数组 | 属性值: | 可选 | ||
关闭按钮 | closeBtnStyle | ifShowBtn | 是否展示关闭按钮 | Boolean值,默认值为TRUE | 可选 |
btnImage | 关闭按钮图片 | Url链接 | 可选 | ||
top | 关闭按钮距离弹窗上边框高度 | 支持百分比或者数值,如“12px” | 可选 | ||
right | 关闭按钮距离弹窗左边框边距 | 支持百分比或者数值,如“12px” | 可选 | ||
width | 关闭按钮宽度 | 支持数值,比如“20px” | 可选 | ||
height | 关闭按钮高度 | 支持数值,比如“20px” | 可选 | ||
自定义按钮控件 | customControlStyle | ifShow | 是否展示自定义控件 | Boolean值,默认值为FALSE | 如要展示自定义控件,则为必选 |
width | 自定义控件宽度 | 支持百分比或者数值,如“200px | 必选 | ||
height | 自定义控件高度 | 支持百分比或者数值,如“200px | 必选 | ||
high | 自定义控件距离弹窗上边框高度 | 支持百分比或者数值,如“200px | 必选 | ||
left | 自定义控件距离弹窗左边框边距 | 支持百分比或者数值,如“20px | 必选 | ||
bgColor | 自定义控件背景颜色 | 十六进制颜色码,如“#FFFFFF” | 必选 | ||
border | 自定义控件边框 | 可以设置边框粗细,样式,颜色,如”1px solid #FFFFF” | 必选 | ||
borderRadius | 自定义控件圆角 | 支持百分比或者数值,如“20px” | 必选 | ||
url | 自定义控件跳转URL | Url链接 | 必选 | ||
name | 自定义控件显示文案 | 字符串 | 必选 | ||
fontSize | 自定义控件字体大小 | 支持数值,比如“20px” | 必选 | ||
fontColor | 自定义控件字体颜色 | 十六进制颜色码,如“#FFFFFF” | 必选 | ||
textAlign | 自定义控件文本对齐选项 | “center/left/right” | 必选 | ||
textDecoration | 自定义控件下划线 | “none/underline” | 必选 | ||
登录按钮 | submitBtnStyle | ifShow | 是否展示登录按钮 | Boolean值,默认值为FALSE, | 如要展示登录按钮,则为必选 |
className | 授权按钮类名 | 字符串 | 可选 | ||
keepLightHigh | 按钮是否保持高亮 | Boolean值 | 可选 | ||
name | 确认按钮显示文案 | 字符串 | 可选 | ||
fontColor | 确认按钮字体颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
fontSize | 确认按钮字体大小 | 支持数值,比如“20px” | 可选 | ||
textAlign | 确认按钮文本对齐选项 | “center/left/right” | 可选 | ||
bgColor | 确认按钮背景颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
width | 确认按钮宽度 | 支持百分比或者数值,如“200px” | 可选 | ||
height | 确认按钮高度 | 支持者数值,如“200px” | 可选 | ||
borderRadius | 确认按钮圆角 | 支持数值,比如“20px” | 可选 | ||
high | 确认按钮距离弹窗上边框高度 | 支持百分比或者数值,如“200px” | 可选 | ||
left | 确认按钮距离弹窗左边框高度 | 支持百分比或者数值,如“200px” | 可选 | ||
错误提示弹出层 | errTipStyle | high | 距离页面边框高度 | 支持“center“,百分比或者数值,如“20px”, | 可选 |
left | 距离页面左边框边距 | 支持“center“,百分比或者数值,如“200px” | 可选 | ||
箭头提示框 | arrowMsgStyle | fontSize | 字体大小 | 支持数值,如“20rpx” | 可选 |
底部协议勾选提示框蒙层 | msgMaskStyle | ifShow | 是否展示蒙层 | Boolean值 | 可选 |
bgColor | 背景颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
底部协议勾选提示框面板 | msgPanelStyle | width | 面板宽度 | 支持百分比或者数值,如“20rpx” | 可选 |
height | 面板高度 | 支持百分比或者数值,如“20rpx” | 可选 | ||
bgColor | 面板背景颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
radius | 面板圆角 | 支持百分比或者数值,如“20rpx” | 可选 | ||
bottom | 面板距离可视区域底部距离 | 支持“center“,百分比或者数值,如“200px” | 可选 | ||
left | 面板距离可视区域左边距离 | 支持“center“,百分比或者数值,如“200px” | 可选 | ||
底部协议勾选提示框协议栏 | msgTextStyle | fontFamily | 文案字体 | string | 可选 |
top | 文案距离面板顶部高度 | 支持百分比或者数值,如“20rpx” | 可选 | ||
left | 文案距离面板左边框距离 | 支持百分比或者数值,如“20rpx” | 可选 | ||
textAlign | 文案对齐 | “center/left/right” | 可选 | ||
fontColor | 文案字体颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
底部协议勾选提示框协议样式 | msgLinkStyle | fontFamily | 文案字体 | string | 可选 |
fontColor | 文案字体颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
底部协议勾选提示框确认按钮 | msgSureBtnStyle | top | 按钮距离面板顶部高度 | 支持百分比或者数值,如“20rpx” | 可选 |
left | 按钮距离面板左边框距离 | 支持百分比或者数值,如“20rpx” | 可选 | ||
text | 按钮文案 | string | 可选,不超过6字,超过仅展示前6位,不能为空 | ||
fontSize | 字体大小 | 支持数值,如“20rpx” | 可选 | ||
fontColor | 文案字体颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
textAlign | 文案对齐 | “center/left/right” | 可选 | ||
bgColor | 按钮背景颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
radius | 按钮圆角 | 支持百分比或者数值,如“20rpx” | 可选 | ||
底部协议勾选提示框取消按钮 | msgCancelBtnStyle | top | 按钮距离面板顶部高度 | 支持百分比或者数值,如“20rpx” | 可选 |
left | 按钮距离面板左边框距离 | 支持百分比或者数值,如“20rpx” | 可选 | ||
text | 按钮文案 | string | 可选,不超过6字,超过仅展示前6位,不能为空 | ||
fontSize | 字体大小 | 支持数值,如“20rpx” | 可选 | ||
fontColor | 文案字体颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
textAlign | 文案对齐 | “center/left/right” | 可选 | ||
bgColor | 按钮背景颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
radius | 按钮圆角 | 支持百分比或者数值,如“20rpx” | 可选 | ||
授权协议弹窗(protocolType传‘1’时生效)后端 | protocolStyle | width | 弹框宽度 | 支持百分比或者数值,如“20rpx” | 可选 |
height | 弹框高度 | 支持百分比或者数值,如“20rpx” | 可选 | ||
bottom | 弹框距离底部 | 支持“center“,百分比或者数值,如“20px” | 可选 | ||
left | 弹框距离左边 | 支持“center“,百分比或者数值,如“20px” | 可选 | ||
wrapRadius | 弹框圆角 | 支持百分比或者数值,如“20rpx” | 可选 | ||
bgColor | 弹框背景颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
fontFamily | 标题字体 | string | 可选 | ||
fontSize | 标题字体大小 | 支持数值,如“20rpx” | 可选 | ||
fontColor | 标题字体颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
fontWeight | 标题字体粗细 | 可选 | |||
textAlign | 标题位置 | left/right/center | 可选 | ||
TitleHeight | 标题框高度 | 支持百分比或者数值,如“20rpx” | 可选 | ||
borderRadius | 标题圆角 | 支持数值,如“20rpx” | 可选 | ||
closeBtnWidth | 关闭按钮宽度 | 支持百分比或者数值,如“20rpx” | 可选 | ||
closeBtnHeight | 关闭按钮高度 | 支持百分比或者数值,如“20rpx” | 可选 | ||
closeBtnColor | 关闭按钮颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 | ||
closeBtnTop | 关闭按钮距离顶部 | 支持“center“,百分比或者数值,如“20px” | 可选 | ||
closeBtnRight | 关闭按钮距离右边 | 支持“center“,百分比或者数值,如“20px” | 可选 | ||
ifShowMask | 是否展示蒙层 | Boolean值 | 可选 | ||
maskBgColor | 蒙层颜色 | 十六进制颜色码,如“#FFFFFF” | 可选 |
说明
用户可以使用styles参数进行配置覆盖。
const phoneBoxStyle = { // 显示 ifShow: true, // 宽度 width: '80%', // 高度 height: '50px', // 背景框距离面板上边框距离 high: '0px', // 背景框距离面板左边框距离 left: '30px', // 背景框颜色 bgColor: '#fff', // 背景框线条粗细 borderWidth: '1px', // 背景框线条颜色 borderColor: '#e6e6e6', // 背景框圆角 borderRadius: '1.5rem', // 背景框内间距 padding: '10px 20px', // 文字位置 textAlign: 'left', }; const phoneStyle = { // 字体大小 fontSize: '16px', // 字体颜色 fontColor: '#333', // 距离弹窗上边框高度 high: '', // 距离弹窗左边框边距 left: '', }; const customControlStyle = { ifShow: true, name: '更换号码', width: '80px', height: '50px', high: '0', left: '270px', bgColor: 'yellow', borderRadius: '0.2rem 1.5rem 1.5rem 0.2rem', fontSize: '12px', fontColor: '#392211', textAlign: 'center', textDecoration: '', }; const submitBtnStyle = { // 是否展示登录按钮 ifShow: true, // 可通过此类名,将文本替换成图片。目前此class内置了背景图片 className: 'yzrz-auth-submit-btn', // 按钮是否保持高亮 keepLightHigh: false, // 确认按钮背景颜色 bgColor: '#f24f44', // 确认按钮字体颜色 fontColor: 'transparent', // 确认按钮显示文案 name: '', // 确认按钮字体大小 fontSize: '', width: '', // 确认按钮高度 height: '100px', high: '', left: '', borderRadius: '', }; const layerStyle = { // 弹窗宽度 width: '100%', // 弹窗高度 height: '', // 弹窗背景颜色 bgColor: 'transparent', // 弹窗圆角 borderRadius: '0', }; const closeBtnStyle = { // 是否展示关闭按钮 ifShowBtn: false, }; const agreeStyle = { // 自定义协议对象数组 agreeArr: [], // 协议后端文案 appendText: ',并下发验证码', // 字体颜色 fontColor: '#fff', // 协议链接颜色 hrefColor: 'yellow', // 协议文案距离弹窗上边框高度 high: '80px', // 协议文案距离弹窗左边框边距 left: '20px', // 字体大小 fontSize: '', // 文本对齐选项 textalign: '', }; export const authStyleConfigs = { msgType: '1', /* 弹窗面板整体样式配置 */ layerStyle, /* 号码背景框样式配置 */ phoneBoxStyle, /* 号码样式配置 */ phoneStyle, /* 自定义控件样式配置 */ customControlStyle, /* 同意按钮样式配置 */ submitBtnStyle, /* 关闭按钮样式配置 */ closeBtnStyle, /* 协议栏样式配置 */ agreeStyle, /* 底部协议勾选提示框蒙层 */ msgMaskStyle: { ifShow: true, bgColor: '', }, msgPanelStyle: { width: '90%', height: '', bgColor: '', radius: '0.5rem', bottom: 'center', left: 'center', }, msgTextStyle: { left: '20px', textAlign: 'center', }, msgSureBtnStyle: { bgColor: '#3B3AF5', left: '180px', radius: '0.8rem', }, msgCancelBtnStyle: { left: '20px', radius: '0.8rem', }, };