mirror of
https://github.com/owncast/owncast.git
synced 2024-10-10 19:16:02 +00:00
Support different link validation methods for platforms. Closes #2449
This commit is contained in:
parent
11c4d80e28
commit
ba0c62e8a0
@ -13,7 +13,12 @@ import {
|
|||||||
OTHER_SOCIAL_HANDLE_OPTION,
|
OTHER_SOCIAL_HANDLE_OPTION,
|
||||||
} from '../../utils/config-constants';
|
} from '../../utils/config-constants';
|
||||||
import { SocialHandle, UpdateArgs } from '../../types/config-section';
|
import { SocialHandle, UpdateArgs } from '../../types/config-section';
|
||||||
import isValidUrl, { DEFAULT_TEXTFIELD_URL_PATTERN } from '../../utils/urls';
|
import {
|
||||||
|
isValidMatrixAccount,
|
||||||
|
isValidAccount,
|
||||||
|
isValidUrl,
|
||||||
|
DEFAULT_TEXTFIELD_URL_PATTERN,
|
||||||
|
} from '../../utils/urls';
|
||||||
import { TextField } from './TextField';
|
import { TextField } from './TextField';
|
||||||
import { createInputStatus, STATUS_ERROR, STATUS_SUCCESS } from '../../utils/input-statuses';
|
import { createInputStatus, STATUS_ERROR, STATUS_SUCCESS } from '../../utils/input-statuses';
|
||||||
import { FormStatusIndicator } from './FormStatusIndicator';
|
import { FormStatusIndicator } from './FormStatusIndicator';
|
||||||
@ -270,8 +275,19 @@ export const EditSocialLinks: FC = () => {
|
|||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
|
const isValid = (url: string, platform: string) => {
|
||||||
|
if (platform === 'xmpp') {
|
||||||
|
return isValidAccount(url, 'xmpp');
|
||||||
|
}
|
||||||
|
if (platform === 'matrix') {
|
||||||
|
return isValidMatrixAccount(url);
|
||||||
|
}
|
||||||
|
|
||||||
|
return isValidUrl(url);
|
||||||
|
};
|
||||||
|
|
||||||
const okButtonProps = {
|
const okButtonProps = {
|
||||||
disabled: !isValidUrl(modalDataState.url),
|
disabled: !isValid(modalDataState.url, modalDataState.platform),
|
||||||
};
|
};
|
||||||
|
|
||||||
const otherField = (
|
const otherField = (
|
||||||
|
Loading…
x
Reference in New Issue
Block a user