UNPKG

qlfy-unified-login

Version:

实现统一认证登陆功能的逻辑插件,无实际渲染标签,内置统一登陆跳转、统一登录token获取、统一登陆token刷新等功能;

68 lines (67 loc) 1.95 kB
import { Router } from 'vue-router'; /** 响应式数据对象 */ export declare class Data { } /** 网络环境类型 */ export declare enum NetworkType { LAN = "LAN", INT = "INT" } export interface LoginInfo { [x: string]: any; access_token: string; refresh_token: string; account: string; nick_name: string; real_name: string; role_name: string; role_id: string; user_id: string; user_name: string; tenant_id: string; outLogin?: boolean; } export interface Prop { /** 应用id,平台提供*/ clientId: string; /** 应用秘钥,平台提供*/ clientSecret: string; /** 应用名称,平台提供 */ clientName: string; /** 统一登陆页面的ip地址 */ loginPageBaseAddress: string; /** 登陆服务的ip地址 */ loginServiceBaseAddress: string; /** 实体id:局域网使用sdPLUGIN,互联网使用multClient*/ entityId: 'sdPLUGIN' | 'multClient'; /** 路由对象 */ useRouter: Router; /** 传入loginInfo则使用外部登陆信息 */ outLoginInfo?: LoginInfo; /** 是否启用组件,支持动态控制,非必填*/ isEnabled?: boolean; /** 获取token的请求地址*/ getTokenUrl?: string; /** 获取code的跳转地址*/ getCodeUrl?: string; /** 是否开启路由变动时自动刷新token功能*/ refreshTokenOnRoute?: boolean; /** 是否实时监听token状态,非必填*/ listenToken?: boolean; /** 认证成功后的,非必填*/ redirectPath?: string; /** local中保存token值的键名称,非必填*/ tokenName?: string; /** token有效期,单位秒,非必填*/ tokenValidity?: number; } export interface Emits { (e: 'loggingIn', params: { code: string | string[]; grant_type: string; state: number; }): void; (e: 'loginSuccess', loginInfo: { [x: string]: any; }): void; }