mirror of
https://github.com/funamitech/mastodon
synced 2024-12-23 02:58:34 +09:00
30 lines
790 B
TypeScript
30 lines
790 B
TypeScript
|
import type { RecordOf } from 'immutable';
|
||
|
import { Record } from 'immutable';
|
||
|
|
||
|
import type { ApiRelationshipJSON } from 'mastodon/api_types/relationships';
|
||
|
|
||
|
type RelationshipShape = Required<ApiRelationshipJSON>; // no changes from server shape
|
||
|
export type Relationship = RecordOf<RelationshipShape>;
|
||
|
|
||
|
const RelationshipFactory = Record<RelationshipShape>({
|
||
|
blocked_by: false,
|
||
|
blocking: false,
|
||
|
domain_blocking: false,
|
||
|
endorsed: false,
|
||
|
followed_by: false,
|
||
|
following: false,
|
||
|
id: '',
|
||
|
languages: null,
|
||
|
muting_notifications: false,
|
||
|
muting: false,
|
||
|
note: '',
|
||
|
notifying: false,
|
||
|
requested_by: false,
|
||
|
requested: false,
|
||
|
showing_reblogs: false,
|
||
|
});
|
||
|
|
||
|
export function createRelationship(attributes: Partial<RelationshipShape>) {
|
||
|
return RelationshipFactory(attributes);
|
||
|
}
|