mirror of
https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web.git
synced 2025-10-02 16:16:39 +08:00
处理认证和小bug
This commit is contained in:
parent
a7aa003183
commit
a9ba7d1936
@ -14,8 +14,9 @@ interface ComponentProps {
|
|||||||
setCurrentDate: Dispatch<SetStateAction<Date>>;
|
setCurrentDate: Dispatch<SetStateAction<Date>>;
|
||||||
}
|
}
|
||||||
|
|
||||||
function DateSelectComponent({ currentDate, setCurrentDate }: ComponentProps) {
|
|
||||||
const maxDate = new Date();
|
const maxDate = new Date();
|
||||||
|
|
||||||
|
function DateSelectComponent({ currentDate, setCurrentDate }: ComponentProps) {
|
||||||
// 增加键盘监听修改日期
|
// 增加键盘监听修改日期
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const keydownEvent = (e: KeyboardEvent) => {
|
const keydownEvent = (e: KeyboardEvent) => {
|
||||||
|
@ -19,11 +19,13 @@ export function isHanZi(input: string): boolean {
|
|||||||
/**
|
/**
|
||||||
* 判断输入的一个字符串是不是拼音
|
* 判断输入的一个字符串是不是拼音
|
||||||
* @param input 需要测试的字符串
|
* @param input 需要测试的字符串
|
||||||
* @returns {boolean}
|
* @returns {number} 几个拼音
|
||||||
*/
|
*/
|
||||||
export function isPinYin(input: string): boolean {
|
export function isPinYin(input: string): number {
|
||||||
|
if (!input) {
|
||||||
var list = ['a', 'ai', 'an', 'ang', 'ao', 'ba', 'bai', 'ban', 'bang', 'bao', 'bei', 'ben',
|
return 0;
|
||||||
|
}
|
||||||
|
const list = ['a', 'ai', 'an', 'ang', 'ao', 'ba', 'bai', 'ban', 'bang', 'bao', 'bei', 'ben',
|
||||||
'beng', 'bi', 'bian', 'biao', 'bie', 'bin', 'bing', 'bo', 'bu', 'ca', 'cai', 'can', 'cang',
|
'beng', 'bi', 'bian', 'biao', 'bie', 'bin', 'bing', 'bo', 'bu', 'ca', 'cai', 'can', 'cang',
|
||||||
'cao', 'ce', 'cen', 'ceng', 'cha', 'chai', 'chan', 'chang', 'chao', 'che', 'chen', 'cheng', 'chi',
|
'cao', 'ce', 'cen', 'ceng', 'cha', 'chai', 'chan', 'chang', 'chao', 'che', 'chen', 'cheng', 'chi',
|
||||||
'chong', 'chou', 'chu', 'chua', 'chuai', 'chuan', 'chuang', 'chui', 'chun', 'chuo', 'ci', 'cong',
|
'chong', 'chou', 'chu', 'chua', 'chuai', 'chuan', 'chuang', 'chui', 'chun', 'chuo', 'ci', 'cong',
|
||||||
@ -52,28 +54,34 @@ export function isPinYin(input: string): boolean {
|
|||||||
'you', 'yu', 'yuan', 'yue', 'yun', 'za', 'zai', 'zan', 'zang', 'zao', 'ze', 'zei', 'zen', 'zeng', 'zha',
|
'you', 'yu', 'yuan', 'yue', 'yun', 'za', 'zai', 'zan', 'zang', 'zao', 'ze', 'zei', 'zen', 'zeng', 'zha',
|
||||||
'zhai', 'zhan', 'zhang', 'zhao', 'zhe', 'zhei', 'zhen', 'zheng', 'zhi', 'zhong', 'zhou', 'zhu', 'zhua',
|
'zhai', 'zhan', 'zhang', 'zhao', 'zhe', 'zhei', 'zhen', 'zheng', 'zhi', 'zhong', 'zhou', 'zhu', 'zhua',
|
||||||
'zhuai', 'zhuan', 'zhuang', 'zhui', 'zhun', 'zhuo', 'zi', 'zong', 'zou', 'zu', 'zuan', 'zui', 'zun', 'zuo'];
|
'zhuai', 'zhuan', 'zhuang', 'zhui', 'zhun', 'zhuo', 'zi', 'zong', 'zou', 'zu', 'zuan', 'zui', 'zun', 'zuo'];
|
||||||
var lowerString = input.toLowerCase();
|
let lowerString = input.toLowerCase();
|
||||||
var length = lowerString.length;
|
let length = lowerString.length;
|
||||||
var index = -1;
|
let index = -1;
|
||||||
|
|
||||||
for (var i=0; i<length; i++) {
|
for (var i=0; i<length; i++) {
|
||||||
var name = lowerString.substring(0, i+1);
|
var name = lowerString.substring(0, i+1);
|
||||||
index = list.lastIndexOf(name) > index ? list.lastIndexOf(name) : index;
|
index = list.lastIndexOf(name) > index ? list.lastIndexOf(name) : index;
|
||||||
}
|
}
|
||||||
|
let result = 0
|
||||||
// 判断当前 lowerString 是不是拼音(lowerString 在 list 中就是;不在就不是)
|
// 判断当前 lowerString 是不是拼音(lowerString 在 list 中就是;不在就不是)
|
||||||
if (index >= 0) {
|
if (index >= 0) {
|
||||||
|
result += 1
|
||||||
var item = list[index];
|
var item = list[index];
|
||||||
|
// 继续处理剩余字符串
|
||||||
lowerString = lowerString.substring(item.length);
|
lowerString = lowerString.substring(item.length);
|
||||||
if (lowerString.length == 0) {
|
if (lowerString.length == 0) {
|
||||||
return true;
|
|
||||||
} else {
|
} else {
|
||||||
return isPinYin(lowerString);
|
const sub_py = isPinYin(lowerString)
|
||||||
// return arguments.callee(lowerString);
|
if (sub_py) {
|
||||||
|
result += sub_py
|
||||||
|
} else {
|
||||||
|
result = 0
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
return false;
|
result = 0
|
||||||
}
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -81,5 +89,5 @@ export function isName(input: string): boolean {
|
|||||||
if (DENY_LIST.includes(input)) {
|
if (DENY_LIST.includes(input)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
return isEmail(input) || (input.length >= 2 && isHanZi(input)) || (input.length >= 4 && isPinYin(input));
|
return isEmail(input) || (input.length >= 2 && isHanZi(input)) || (isPinYin(input) >= 2);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user