]>
Commit | Line | Data |
---|---|---|
1 | import { ActivityType } from "@shared/models" | |
2 | ||
3 | function getAPId (object: string | { id: string }) { | |
4 | if (typeof object === 'string') return object | |
5 | ||
6 | return object.id | |
7 | } | |
8 | ||
9 | function getActivityStreamDuration (duration: number) { | |
10 | // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-duration | |
11 | return 'PT' + duration + 'S' | |
12 | } | |
13 | ||
14 | function getDurationFromActivityStream (duration: string) { | |
15 | return parseInt(duration.replace(/[^\d]+/, '')) | |
16 | } | |
17 | ||
18 | function buildAvailableActivities (): ActivityType[] { | |
19 | return [ | |
20 | 'Create', | |
21 | 'Update', | |
22 | 'Delete', | |
23 | 'Follow', | |
24 | 'Accept', | |
25 | 'Announce', | |
26 | 'Undo', | |
27 | 'Like', | |
28 | 'Reject', | |
29 | 'View', | |
30 | 'Dislike', | |
31 | 'Flag' | |
32 | ] | |
33 | } | |
34 | ||
35 | export { | |
36 | getAPId, | |
37 | getActivityStreamDuration, | |
38 | buildAvailableActivities, | |
39 | getDurationFromActivityStream | |
40 | } |