forked from openedx/frontend-app-authoring
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtypes.ts
More file actions
125 lines (117 loc) · 2.79 KB
/
types.ts
File metadata and controls
125 lines (117 loc) · 2.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
export interface GroupTypes {
id: number;
name: string;
selected: boolean;
deleted: boolean;
}
export interface UserPartitionTypes {
id: number;
name: string;
scheme: string;
groups: Array<GroupTypes>;
}
export type UserPartitionInfoTypes = {
selectablePartitions: Array<{
groups: Array<{
deleted: boolean;
id: number;
name: string;
selected: boolean;
}>;
id: number;
name: string;
scheme: string;
}>;
selectedPartitionIndex: number;
selectedGroupsLabel: string;
};
export interface XBlockActions {
deletable: boolean;
draggable: boolean;
childAddable: boolean;
duplicable: boolean;
unlinkable?: boolean;
allowMoveDown?: boolean;
allowMoveUp?: boolean;
}
export interface XblockChildInfo {
displayName: string;
children: Array<XBlock>;
}
export interface XBlockPrereqs {
blockUsageKey: string;
blockDisplayName: string;
}
export interface UpstreamChildrenInfo {
name: string;
upstream: string;
id: string;
}
export interface UpstreamInfo {
readyToSync: boolean,
upstreamRef: string,
upstreamName: string,
versionSynced: number,
versionAvailable: number | null,
versionDeclined: number | null,
errorMessage: string | null,
downstreamCustomized: string[],
hasTopLevelParent?: boolean,
readyToSyncChildren?: UpstreamChildrenInfo[],
isReadyToSyncIndividually?: boolean,
}
export interface XBlock {
id: string;
locator: string;
usageKey: string;
displayName: string;
category: string;
hasChildren: boolean;
editedOn: string;
published: boolean;
publishedOn: string;
studioUrl: string;
releasedToStudents: boolean;
releaseDate: string;
visibilityState: string;
hasExplicitStaffLock: boolean;
start: string;
graded: boolean;
dueDate: string;
due?: string;
relativeWeeksDue?: number;
format?: string;
courseGraders: string[];
hasChanges: boolean;
actions: XBlockActions;
explanatoryMessage?: string;
userPartitions: UserPartitionTypes[];
showCorrectness: string;
highlights: string[];
highlightsEnabled: boolean;
highlightsPreviewOnly: boolean;
highlightsDocUrl: string;
childInfo: XblockChildInfo;
ancestorHasStaffLock: boolean;
staffOnlyMessage: boolean;
hasPartitionGroupComponents: boolean;
userPartitionInfo?: UserPartitionInfoTypes;
enableCopyPasteUnits: boolean;
shouldScroll: boolean;
isHeaderVisible: boolean;
proctoringExamConfigurationLink?: string;
isTimeLimited?: boolean;
defaultTimeLimitMinutes?: number;
hideAfterDue?: boolean;
isProctoredExam?: boolean;
isPracticeExam?: boolean;
isOnboardingExam?: boolean;
examReviewRules?: string;
isPrereq?: boolean;
prereq?: string;
prereqs?: XBlockPrereqs[];
prereqMinScore?: number;
prereqMinCompletion?: number;
discussionEnabled?: boolean;
upstreamInfo?: UpstreamInfo;
}