Files
2026-01-15 18:02:46 +08:00

41 lines
841 B
TypeScript

import { useTranslation } from 'react-i18next'
const i18nPrefix = 'metadata.checkName'
const useCheckMetadataName = () => {
const { t } = useTranslation()
return {
checkName: (name: string) => {
if (!name) {
return {
errorMsg: t(`${i18nPrefix}.empty`, { ns: 'dataset' }),
}
}
if (!/^[a-z][a-z0-9_]*$/.test(name)) {
return {
errorMsg: t(`${i18nPrefix}.invalid`, { ns: 'dataset' }),
}
}
if (name.length > 255) {
return {
errorMsg: t(`${i18nPrefix}.tooLong`, { ns: 'dataset', max: 255 }),
}
}
if (name.length > 255) {
return {
errorMsg: t(`${i18nPrefix}.tooLong`, { max: 255 }),
}
}
return {
errorMsg: '',
}
},
}
}
export default useCheckMetadataName