2023-07-27 05:31:52 +00:00
|
|
|
/*
|
2024-02-12 02:37:45 +00:00
|
|
|
* SPDX-FileCopyrightText: syuilo and misskey-project
|
2023-07-27 05:31:52 +00:00
|
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
*/
|
|
|
|
|
2022-02-27 02:07:39 +00:00
|
|
|
export type Acct = {
|
|
|
|
username: string;
|
|
|
|
host: string | null;
|
|
|
|
};
|
|
|
|
|
|
|
|
export function parse(acct: string): Acct {
|
2023-07-13 22:59:54 +00:00
|
|
|
if (acct.startsWith('@')) acct = acct.substring(1);
|
2022-02-27 02:07:39 +00:00
|
|
|
const split = acct.split('@', 2);
|
2022-09-17 18:27:08 +00:00
|
|
|
return { username: split[0], host: split[1] ?? null };
|
2022-02-27 02:07:39 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
export function toString(acct: Acct): string {
|
|
|
|
return acct.host == null ? acct.username : `${acct.username}@${acct.host}`;
|
|
|
|
}
|