1
0
mirror of https://github.com/funamitech/mastodon synced 2024-12-15 23:28:31 +09:00
YuruToot/app/javascript/flavours/glitch/models/relationship.ts
Renaud Chaput 7fe5623a27 [Glitch] Use Immutable Record for accounts in Redux state
Port 3bf2a7296e to glitch-soc

Signed-off-by: Claire <claire.github-309c@sitedethib.com>
2023-12-20 19:49:44 +01:00

30 lines
797 B
TypeScript

import type { RecordOf } from 'immutable';
import { Record } from 'immutable';
import type { ApiRelationshipJSON } from 'flavours/glitch/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);
}