use-check-metadata-name.ts 538 B

12345678910111213141516171819202122232425262728
  1. import { useTranslation } from 'react-i18next'
  2. const i18nPrefix = 'dataset.metadata.checkName'
  3. const useCheckMetadataName = () => {
  4. const { t } = useTranslation()
  5. return {
  6. checkName: (name: string) => {
  7. if (!name) {
  8. return {
  9. errorMsg: t(`${i18nPrefix}.empty`),
  10. }
  11. }
  12. if (!/^[a-z][a-z0-9_]*$/.test(name)) {
  13. return {
  14. errorMsg: t(`${i18nPrefix}.invalid`),
  15. }
  16. }
  17. return {
  18. errorMsg: '',
  19. }
  20. },
  21. }
  22. }
  23. export default useCheckMetadataName