22 lines
508 B
TypeScript
22 lines
508 B
TypeScript
export type AllowlistMatchSource =
|
|
| "wildcard"
|
|
| "id"
|
|
| "name"
|
|
| "tag"
|
|
| "username"
|
|
| "prefixed-id"
|
|
| "prefixed-user"
|
|
| "prefixed-name"
|
|
| "slug"
|
|
| "localpart";
|
|
|
|
export type AllowlistMatch<TSource extends string = AllowlistMatchSource> = {
|
|
allowed: boolean;
|
|
matchKey?: string;
|
|
matchSource?: TSource;
|
|
};
|
|
|
|
export function formatAllowlistMatchMeta(match?: AllowlistMatch | null): string {
|
|
return `matchKey=${match?.matchKey ?? "none"} matchSource=${match?.matchSource ?? "none"}`;
|
|
}
|