@elice/material-assignment 1.240718.3 → 1.240719.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/_virtual/_rollupPluginBabelHelpers.js +383 -0
- package/cjs/components/index.js +9 -0
- package/cjs/components/material-assignment/MaterialAssignment.js +23 -17
- package/cjs/components/material-assignment/MaterialAssignmentContent.js +281 -194
- package/cjs/components/material-assignment/MaterialAssignmentUploadModal.js +181 -138
- package/cjs/components/material-assignment/constants/color.js +1 -1
- package/cjs/components/material-assignment/index.js +7 -0
- package/cjs/components/material-assignment/locales/index.js +13 -0
- package/cjs/components/material-assignment-admin/MaterialAssignmentAdmin.js +32 -24
- package/cjs/components/material-assignment-admin/MaterialAssignmentAdmin.styled.js +19 -9
- package/cjs/components/material-assignment-admin/MaterialAssignmentAdminContent.js +774 -548
- package/cjs/components/material-assignment-admin/MaterialAssignmentAdminContentTa.js +436 -303
- package/cjs/components/material-assignment-admin/index.js +7 -0
- package/cjs/components/shared/MaterialAssignmentContainer.js +23 -13
- package/es/_virtual/_rollupPluginBabelHelpers.js +374 -0
- package/es/components/index.js +2 -0
- package/es/components/material-assignment/MaterialAssignment.js +18 -17
- package/es/components/material-assignment/MaterialAssignmentContent.js +276 -194
- package/es/components/material-assignment/MaterialAssignmentUploadModal.js +177 -139
- package/es/components/material-assignment/constants/color.js +1 -1
- package/es/components/material-assignment/index.js +1 -0
- package/es/components/material-assignment/locales/index.js +4 -0
- package/es/components/material-assignment-admin/MaterialAssignmentAdmin.js +29 -25
- package/es/components/material-assignment-admin/MaterialAssignmentAdmin.styled.js +15 -9
- package/es/components/material-assignment-admin/MaterialAssignmentAdminContent.js +770 -549
- package/es/components/material-assignment-admin/MaterialAssignmentAdminContentTa.js +432 -304
- package/es/components/material-assignment-admin/index.js +1 -0
- package/es/components/shared/MaterialAssignmentContainer.js +19 -13
- package/package.json +9 -12
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var _rollupPluginBabelHelpers = require('../../_virtual/_rollupPluginBabelHelpers.js');
|
|
6
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
7
|
var React = require('react');
|
|
6
8
|
var apiClient = require('@elice/api-client');
|
|
7
9
|
var blocks = require('@elice/blocks');
|
|
@@ -15,56 +17,82 @@ var MaterialAssignmentContainer = require('../shared/MaterialAssignmentContainer
|
|
|
15
17
|
var color = require('./constants/color.js');
|
|
16
18
|
var MaterialAssignmentUploadModal = require('./MaterialAssignmentUploadModal.js');
|
|
17
19
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
+
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
21
|
+
|
|
22
|
+
var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
23
|
+
var styled__default = /*#__PURE__*/_interopDefaultCompat(styled);
|
|
24
|
+
|
|
25
|
+
var GRADE_LIST_COUNT = 20;
|
|
26
|
+
var StyledSubmittedText = styled__default.default(blocks.Text).withConfig({
|
|
20
27
|
componentId: "sc-1panlbq-0"
|
|
21
28
|
})(["color:", ";"], muiSystem.colors.green[400]);
|
|
22
|
-
|
|
29
|
+
var StyledNoSubmittedText = styled__default.default(blocks.Text).withConfig({
|
|
23
30
|
componentId: "sc-1panlbq-1"
|
|
24
31
|
})(["color:", ";"], muiSystem.colors.orange[400]);
|
|
25
|
-
|
|
32
|
+
var StyledTableHeaderCell = styled__default.default.td.withConfig({
|
|
26
33
|
componentId: "sc-1panlbq-2"
|
|
27
34
|
})(["color:", " !important;"], color.DARK_TEXT_TERTIARY_COLOR);
|
|
28
|
-
|
|
35
|
+
var StyledTotalPointText = styled__default.default(blocks.Text).withConfig({
|
|
29
36
|
componentId: "sc-1panlbq-3"
|
|
30
37
|
})(["color:", ";"], color.DARK_TEXT_TERTIARY_COLOR);
|
|
31
|
-
|
|
38
|
+
var StyledUploadButton = styled__default.default(blocks.Button).withConfig({
|
|
32
39
|
componentId: "sc-1panlbq-4"
|
|
33
40
|
})(["background-color:", ";border-color:", ";"], designTokens.base.color.primary6, designTokens.base.color.primary6);
|
|
34
|
-
|
|
35
|
-
materialAssignmentId,
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
41
|
+
var MaterialAssignmentContent = function MaterialAssignmentContent(_ref) {
|
|
42
|
+
var materialAssignmentId = _ref.materialAssignmentId,
|
|
43
|
+
userId = _ref.userId;
|
|
44
|
+
var isReady = materialSharedUtils.useMaterialConfigApiClientUpdate(apiClient.config.init);
|
|
45
|
+
var intl$1 = intl.useRawEliceIntl();
|
|
46
|
+
var _useMaterialFetchRaw = materialSharedUtils.useMaterialFetchRaw(types.enums.LectureMaterialType.Assignment, React__default.default.useCallback(function (signal) {
|
|
47
|
+
return apiClient.getOrgMaterialAssignmentGet({
|
|
48
|
+
materialAssignmentId: materialAssignmentId
|
|
49
|
+
}, {
|
|
50
|
+
signal: signal
|
|
51
|
+
});
|
|
52
|
+
}, [materialAssignmentId]), isReady),
|
|
53
|
+
materialAssignment = _useMaterialFetchRaw.materialAssignment,
|
|
54
|
+
materialLecturePage = _useMaterialFetchRaw.materialLecturePage,
|
|
55
|
+
assignmentGetStatus = _useMaterialFetchRaw.status,
|
|
56
|
+
doGetOrgMaterialAssignmentGet = _useMaterialFetchRaw.refetch;
|
|
57
|
+
var _React$useState = React__default.default.useState('idle'),
|
|
58
|
+
_React$useState2 = _rollupPluginBabelHelpers.slicedToArray(_React$useState, 2),
|
|
59
|
+
assignmentGradeListGetStatus = _React$useState2[0],
|
|
60
|
+
setAssignmentGradeListGetStatus = _React$useState2[1];
|
|
61
|
+
var _React$useState3 = React__default.default.useState('idle'),
|
|
62
|
+
_React$useState4 = _rollupPluginBabelHelpers.slicedToArray(_React$useState3, 2),
|
|
63
|
+
assignmentGradeResultGetStatus = _React$useState4[0],
|
|
64
|
+
setAssignmentGradeResultGetStatus = _React$useState4[1];
|
|
65
|
+
var _React$useState5 = React__default.default.useState('idle'),
|
|
66
|
+
_React$useState6 = _rollupPluginBabelHelpers.slicedToArray(_React$useState5, 2),
|
|
67
|
+
assignmentSubmissionGetStatus = _React$useState6[0],
|
|
68
|
+
setAssignmentSubmissionGetStatus = _React$useState6[1];
|
|
69
|
+
var _React$useState7 = React__default.default.useState(),
|
|
70
|
+
_React$useState8 = _rollupPluginBabelHelpers.slicedToArray(_React$useState7, 2),
|
|
71
|
+
materialAssignmentSubmission = _React$useState8[0],
|
|
72
|
+
setMaterialAssignmentSubmission = _React$useState8[1];
|
|
73
|
+
var _React$useState9 = React__default.default.useState(),
|
|
74
|
+
_React$useState10 = _rollupPluginBabelHelpers.slicedToArray(_React$useState9, 2),
|
|
75
|
+
materialAssignmentGradeResult = _React$useState10[0],
|
|
76
|
+
setMaterialAssignmentGradeResult = _React$useState10[1];
|
|
77
|
+
var _React$useState11 = React__default.default.useState(),
|
|
78
|
+
_React$useState12 = _rollupPluginBabelHelpers.slicedToArray(_React$useState11, 2),
|
|
79
|
+
materialAssignmentGradeList = _React$useState12[0],
|
|
80
|
+
setMaterialAssignmentGradeList = _React$useState12[1];
|
|
56
81
|
/** Is confirm modal visible? */
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
82
|
+
var _React$useState13 = React__default.default.useState(false),
|
|
83
|
+
_React$useState14 = _rollupPluginBabelHelpers.slicedToArray(_React$useState13, 2),
|
|
84
|
+
showAssignmentSubmitModal = _React$useState14[0],
|
|
85
|
+
setShowAssignmentSubmitModal = _React$useState14[1];
|
|
86
|
+
var isAssignmentSubmitted = Boolean(materialAssignment === null || materialAssignment === void 0 ? void 0 : materialAssignment.lastAssignmentSubmissionId);
|
|
87
|
+
var isAssignmentClosed = materialAssignment && Boolean(materialAssignment.closeDatetime < Date.now());
|
|
88
|
+
var isAssignmentResultVisible = Boolean(materialAssignment === null || materialAssignment === void 0 ? void 0 : materialAssignment.scoreFinalizedDatetime);
|
|
61
89
|
//
|
|
62
90
|
//
|
|
63
91
|
//
|
|
64
92
|
/**
|
|
65
93
|
* When Grade_result exist, a comment list is called.
|
|
66
94
|
*/
|
|
67
|
-
|
|
95
|
+
React__default.default.useEffect(function () {
|
|
68
96
|
if (!isReady) {
|
|
69
97
|
return;
|
|
70
98
|
}
|
|
@@ -75,17 +103,16 @@ const MaterialAssignmentContent = ({
|
|
|
75
103
|
apiClient.getOrgMaterialAssignmentGradeList({
|
|
76
104
|
offset: 0,
|
|
77
105
|
count: GRADE_LIST_COUNT,
|
|
78
|
-
materialAssignmentId,
|
|
106
|
+
materialAssignmentId: materialAssignmentId,
|
|
79
107
|
filterConditions: {
|
|
80
|
-
userId
|
|
108
|
+
userId: userId
|
|
81
109
|
}
|
|
82
|
-
}).then(({
|
|
83
|
-
materialAssignmentGrades
|
|
84
|
-
|
|
85
|
-
}) => {
|
|
110
|
+
}).then(function (_ref2) {
|
|
111
|
+
var materialAssignmentGrades = _ref2.materialAssignmentGrades;
|
|
112
|
+
_ref2.materialAssignmentGradeCount;
|
|
86
113
|
setAssignmentGradeListGetStatus('resolved');
|
|
87
114
|
setMaterialAssignmentGradeList(materialAssignmentGrades);
|
|
88
|
-
}).catch(error
|
|
115
|
+
}).catch(function (error) {
|
|
89
116
|
console.error(error);
|
|
90
117
|
setAssignmentGradeListGetStatus('rejected');
|
|
91
118
|
});
|
|
@@ -93,7 +120,7 @@ const MaterialAssignmentContent = ({
|
|
|
93
120
|
/**
|
|
94
121
|
* When Grade_result exist, a score is called.
|
|
95
122
|
*/
|
|
96
|
-
|
|
123
|
+
React__default.default.useEffect(function () {
|
|
97
124
|
if (!isReady) {
|
|
98
125
|
return;
|
|
99
126
|
}
|
|
@@ -102,14 +129,13 @@ const MaterialAssignmentContent = ({
|
|
|
102
129
|
}
|
|
103
130
|
setAssignmentGradeResultGetStatus('pending');
|
|
104
131
|
apiClient.getOrgMaterialAssignmentGradeResultGet({
|
|
105
|
-
materialAssignmentId,
|
|
106
|
-
userId
|
|
107
|
-
}).then(({
|
|
108
|
-
materialAssignmentGradeResult
|
|
109
|
-
}) => {
|
|
132
|
+
materialAssignmentId: materialAssignmentId,
|
|
133
|
+
userId: userId
|
|
134
|
+
}).then(function (_ref3) {
|
|
135
|
+
var materialAssignmentGradeResult = _ref3.materialAssignmentGradeResult;
|
|
110
136
|
setAssignmentGradeResultGetStatus('resolved');
|
|
111
137
|
setMaterialAssignmentGradeResult(materialAssignmentGradeResult);
|
|
112
|
-
}).catch(error
|
|
138
|
+
}).catch(function (error) {
|
|
113
139
|
console.error(error);
|
|
114
140
|
setAssignmentGradeResultGetStatus('rejected');
|
|
115
141
|
});
|
|
@@ -117,7 +143,7 @@ const MaterialAssignmentContent = ({
|
|
|
117
143
|
/**
|
|
118
144
|
* Get information on the assignment submitted
|
|
119
145
|
*/
|
|
120
|
-
|
|
146
|
+
React__default.default.useEffect(function () {
|
|
121
147
|
var _a;
|
|
122
148
|
if (!isReady) {
|
|
123
149
|
return;
|
|
@@ -130,157 +156,206 @@ const MaterialAssignmentContent = ({
|
|
|
130
156
|
setAssignmentSubmissionGetStatus('pending');
|
|
131
157
|
apiClient.getOrgMaterialAssignmentSubmissionGet({
|
|
132
158
|
materialAssignmentSubmissionId: (_a = materialAssignment === null || materialAssignment === void 0 ? void 0 : materialAssignment.lastAssignmentSubmissionId) !== null && _a !== void 0 ? _a : 0
|
|
133
|
-
}).then(({
|
|
134
|
-
materialAssignmentSubmission
|
|
135
|
-
}) => {
|
|
159
|
+
}).then(function (_ref4) {
|
|
160
|
+
var materialAssignmentSubmission = _ref4.materialAssignmentSubmission;
|
|
136
161
|
setAssignmentSubmissionGetStatus('resolved');
|
|
137
162
|
setMaterialAssignmentSubmission(materialAssignmentSubmission);
|
|
138
|
-
}).catch(error
|
|
163
|
+
}).catch(function (error) {
|
|
139
164
|
console.error(error);
|
|
140
165
|
setAssignmentSubmissionGetStatus('rejected');
|
|
141
166
|
setMaterialAssignmentSubmission(undefined);
|
|
142
167
|
});
|
|
143
168
|
}, [isAssignmentSubmitted, isReady, materialAssignment]);
|
|
144
169
|
if (assignmentGetStatus === 'pending' || assignmentGradeListGetStatus === 'pending' || assignmentGradeResultGetStatus === 'pending' || assignmentSubmissionGetStatus === 'pending') {
|
|
145
|
-
return
|
|
170
|
+
return jsxRuntime.jsx(blocks.Spinner, {});
|
|
146
171
|
}
|
|
147
172
|
if (!materialAssignment || assignmentGetStatus === 'rejected') {
|
|
148
|
-
return
|
|
149
|
-
role: "white"
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
173
|
+
return jsxRuntime.jsx(blocks.Text, {
|
|
174
|
+
role: "white",
|
|
175
|
+
children: intl$1.formatMessage({
|
|
176
|
+
id: 'materialAssignment.error'
|
|
177
|
+
})
|
|
178
|
+
});
|
|
153
179
|
}
|
|
154
180
|
/**
|
|
155
181
|
*
|
|
156
182
|
*/
|
|
157
|
-
|
|
183
|
+
var renderAssignmentInfo = function renderAssignmentInfo() {
|
|
158
184
|
var _a;
|
|
159
|
-
|
|
160
|
-
|
|
185
|
+
var assignmentFilename = decodeURIComponent((materialAssignmentSubmission === null || materialAssignmentSubmission === void 0 ? void 0 : materialAssignmentSubmission.assignmentFileUrl) && new URL(materialAssignmentSubmission.assignmentFileUrl).pathname.split('/').pop() || '');
|
|
186
|
+
var renderAssignmentStatus = function renderAssignmentStatus() {
|
|
161
187
|
if (!isAssignmentSubmitted && isAssignmentClosed) {
|
|
162
|
-
return
|
|
188
|
+
return jsxRuntime.jsx(blocks.Text, {
|
|
163
189
|
bold: true,
|
|
164
190
|
role: "danger",
|
|
165
|
-
size: "small"
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
191
|
+
size: "small",
|
|
192
|
+
children: intl$1.formatMessage({
|
|
193
|
+
id: 'materialAssignment.status.deadlineExpired'
|
|
194
|
+
})
|
|
195
|
+
});
|
|
169
196
|
}
|
|
170
197
|
if (isAssignmentResultVisible) {
|
|
171
|
-
return
|
|
198
|
+
return jsxRuntime.jsx(blocks.Text, {
|
|
172
199
|
bold: true,
|
|
173
200
|
role: "lightpurple",
|
|
174
|
-
size: "small"
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
201
|
+
size: "small",
|
|
202
|
+
children: intl$1.formatMessage({
|
|
203
|
+
id: 'materialAssignment.status.graded'
|
|
204
|
+
})
|
|
205
|
+
});
|
|
178
206
|
}
|
|
179
207
|
if (isAssignmentSubmitted) {
|
|
180
|
-
return
|
|
208
|
+
return jsxRuntime.jsx(StyledSubmittedText, {
|
|
181
209
|
bold: true,
|
|
182
210
|
role: "success",
|
|
183
|
-
size: "small"
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
211
|
+
size: "small",
|
|
212
|
+
children: intl$1.formatMessage({
|
|
213
|
+
id: 'materialAssignment.status.submitted'
|
|
214
|
+
})
|
|
215
|
+
});
|
|
187
216
|
}
|
|
188
|
-
return
|
|
217
|
+
return jsxRuntime.jsx(StyledNoSubmittedText, {
|
|
189
218
|
bold: true,
|
|
190
219
|
role: "warning",
|
|
191
|
-
size: "small"
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
220
|
+
size: "small",
|
|
221
|
+
children: intl$1.formatMessage({
|
|
222
|
+
id: 'materialAssignment.status.noSubmitted'
|
|
223
|
+
})
|
|
224
|
+
});
|
|
195
225
|
};
|
|
196
|
-
|
|
226
|
+
var renderAssignmentScore = function renderAssignmentScore() {
|
|
197
227
|
var _a;
|
|
198
|
-
return
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
228
|
+
return jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
229
|
+
children: [jsxRuntime.jsx(blocks.Text, {
|
|
230
|
+
bold: true,
|
|
231
|
+
role: "white",
|
|
232
|
+
size: "small",
|
|
233
|
+
children: intl$1.formatMessage({
|
|
234
|
+
id: 'materialAssignment.table.column.score'
|
|
235
|
+
}, {
|
|
236
|
+
score: (_a = materialAssignmentGradeResult === null || materialAssignmentGradeResult === void 0 ? void 0 : materialAssignmentGradeResult.score) !== null && _a !== void 0 ? _a : '--'
|
|
237
|
+
})
|
|
238
|
+
}), jsxRuntime.jsx(blocks.Hspace, {
|
|
239
|
+
width: 0.25
|
|
240
|
+
})]
|
|
241
|
+
});
|
|
209
242
|
};
|
|
210
|
-
|
|
243
|
+
var renderAssignmentAttachment = function renderAssignmentAttachment() {
|
|
211
244
|
if (materialAssignmentSubmission === null || materialAssignmentSubmission === void 0 ? void 0 : materialAssignmentSubmission.assignmentFileUrl) {
|
|
212
|
-
return
|
|
245
|
+
return jsxRuntime.jsx("a", {
|
|
213
246
|
href: materialAssignmentSubmission.assignmentFileUrl,
|
|
214
247
|
download: assignmentFilename,
|
|
215
248
|
target: "_blank",
|
|
216
|
-
rel: "noopener noreferrer"
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
249
|
+
rel: "noopener noreferrer",
|
|
250
|
+
children: jsxRuntime.jsx(blocks.Text, {
|
|
251
|
+
hoverable: true,
|
|
252
|
+
underline: true,
|
|
253
|
+
role: "white",
|
|
254
|
+
size: "small",
|
|
255
|
+
children: assignmentFilename
|
|
256
|
+
})
|
|
257
|
+
});
|
|
223
258
|
}
|
|
224
259
|
if (materialAssignmentSubmission === null || materialAssignmentSubmission === void 0 ? void 0 : materialAssignmentSubmission.assignmentUrl) {
|
|
225
|
-
return
|
|
260
|
+
return jsxRuntime.jsx("a", {
|
|
226
261
|
href: materialAssignmentSubmission.assignmentUrl,
|
|
227
262
|
target: "_blank",
|
|
228
|
-
rel: "noopener noreferrer"
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
263
|
+
rel: "noopener noreferrer",
|
|
264
|
+
children: jsxRuntime.jsx(blocks.Text, {
|
|
265
|
+
hoverable: true,
|
|
266
|
+
underline: true,
|
|
267
|
+
role: "white",
|
|
268
|
+
size: "small",
|
|
269
|
+
children: materialAssignmentSubmission.assignmentUrl
|
|
270
|
+
})
|
|
271
|
+
});
|
|
235
272
|
}
|
|
236
273
|
return '--';
|
|
237
274
|
};
|
|
238
|
-
return
|
|
239
|
-
dark: true
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
275
|
+
return jsxRuntime.jsx(blocks.InfoTable, {
|
|
276
|
+
dark: true,
|
|
277
|
+
children: jsxRuntime.jsxs("tbody", {
|
|
278
|
+
children: [jsxRuntime.jsxs("tr", {
|
|
279
|
+
children: [jsxRuntime.jsx(StyledTableHeaderCell, {
|
|
280
|
+
style: {
|
|
281
|
+
width: '19%'
|
|
282
|
+
},
|
|
283
|
+
children: intl$1.formatMessage({
|
|
284
|
+
id: 'materialAssignment.table.column.status'
|
|
285
|
+
})
|
|
286
|
+
}), jsxRuntime.jsx("td", {
|
|
287
|
+
children: renderAssignmentStatus()
|
|
288
|
+
})]
|
|
289
|
+
}), jsxRuntime.jsxs("tr", {
|
|
290
|
+
children: [jsxRuntime.jsx(StyledTableHeaderCell, {
|
|
291
|
+
children: intl$1.formatMessage({
|
|
292
|
+
id: 'materialAssignment.table.column.deadlineDatetime'
|
|
293
|
+
})
|
|
294
|
+
}), jsxRuntime.jsx("td", {
|
|
295
|
+
children: intl$1.formatDate(materialAssignment.closeDatetime, {
|
|
296
|
+
dateStyle: 'medium',
|
|
297
|
+
timeStyle: 'short'
|
|
298
|
+
})
|
|
299
|
+
})]
|
|
300
|
+
}), jsxRuntime.jsxs("tr", {
|
|
301
|
+
children: [jsxRuntime.jsx(StyledTableHeaderCell, {
|
|
302
|
+
children: intl$1.formatMessage({
|
|
303
|
+
id: 'materialAssignment.table.column.lastSubmitDatetime'
|
|
304
|
+
})
|
|
305
|
+
}), jsxRuntime.jsx("td", {
|
|
306
|
+
children: (materialAssignmentSubmission === null || materialAssignmentSubmission === void 0 ? void 0 : materialAssignmentSubmission.createdDatetime) ? intl$1.formatDate(materialAssignmentSubmission.createdDatetime, {
|
|
307
|
+
dateStyle: 'medium',
|
|
308
|
+
timeStyle: 'short'
|
|
309
|
+
}) : '--'
|
|
310
|
+
})]
|
|
311
|
+
}), jsxRuntime.jsxs("tr", {
|
|
312
|
+
children: [jsxRuntime.jsx(StyledTableHeaderCell, {
|
|
313
|
+
children: intl$1.formatMessage({
|
|
314
|
+
id: 'materialAssignment.table.column.uploadedFile'
|
|
315
|
+
})
|
|
316
|
+
}), jsxRuntime.jsx("td", {
|
|
317
|
+
children: jsxRuntime.jsxs("div", {
|
|
318
|
+
children: [renderAssignmentAttachment(), jsxRuntime.jsx(blocks.Vspace, {
|
|
319
|
+
height: 0.75
|
|
320
|
+
}), jsxRuntime.jsx(StyledUploadButton, {
|
|
321
|
+
size: "tiny",
|
|
322
|
+
role: "lightpurple",
|
|
323
|
+
disabled: [isAssignmentResultVisible, !materialAssignment.isResubmitEnabled && isAssignmentSubmitted, isAssignmentClosed].some(Boolean),
|
|
324
|
+
onClick: function onClick() {
|
|
325
|
+
return setShowAssignmentSubmitModal(true);
|
|
326
|
+
},
|
|
327
|
+
children: intl$1.formatMessage({
|
|
328
|
+
id: 'materialAssignment.button.upload'
|
|
329
|
+
})
|
|
330
|
+
})]
|
|
331
|
+
})
|
|
332
|
+
})]
|
|
333
|
+
}), jsxRuntime.jsxs("tr", {
|
|
334
|
+
children: [jsxRuntime.jsx(StyledTableHeaderCell, {
|
|
335
|
+
children: intl$1.formatMessage({
|
|
336
|
+
id: 'materialAssignment.table.column.assignmentScore'
|
|
337
|
+
})
|
|
338
|
+
}), jsxRuntime.jsxs("td", {
|
|
339
|
+
children: [renderAssignmentScore(), jsxRuntime.jsx(StyledTotalPointText, {
|
|
340
|
+
role: "navy4",
|
|
341
|
+
size: "small",
|
|
342
|
+
children: intl$1.formatMessage({
|
|
343
|
+
id: 'materialAssignment.table.column.totalPoint'
|
|
344
|
+
}, {
|
|
345
|
+
point: (_a = materialLecturePage === null || materialLecturePage === void 0 ? void 0 : materialLecturePage.point) !== null && _a !== void 0 ? _a : '--'
|
|
346
|
+
})
|
|
347
|
+
})]
|
|
348
|
+
})]
|
|
349
|
+
})]
|
|
350
|
+
})
|
|
351
|
+
});
|
|
277
352
|
};
|
|
278
353
|
/**
|
|
279
354
|
*
|
|
280
355
|
*/
|
|
281
|
-
|
|
356
|
+
var renderAssignmentFeedback = function renderAssignmentFeedback() {
|
|
282
357
|
var _a;
|
|
283
|
-
|
|
358
|
+
var tableColumns = [{
|
|
284
359
|
Header: intl$1.formatMessage({
|
|
285
360
|
id: 'materialAssignment.table.header.index'
|
|
286
361
|
}),
|
|
@@ -292,15 +367,20 @@ const MaterialAssignmentContent = ({
|
|
|
292
367
|
}),
|
|
293
368
|
accessor: 'feedback'
|
|
294
369
|
}];
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
370
|
+
var tableData = (_a = materialAssignmentGradeList === null || materialAssignmentGradeList === void 0 ? void 0 : materialAssignmentGradeList.filter(function (grade) {
|
|
371
|
+
return grade.comment.length;
|
|
372
|
+
}).map(function (grade, index) {
|
|
373
|
+
return {
|
|
374
|
+
index: index + 1,
|
|
375
|
+
feedback: jsxRuntime.jsx(blocks.Text, {
|
|
376
|
+
preWrap: true,
|
|
377
|
+
size: "small",
|
|
378
|
+
role: "navy1",
|
|
379
|
+
children: grade.comment
|
|
380
|
+
})
|
|
381
|
+
};
|
|
382
|
+
})) !== null && _a !== void 0 ? _a : [];
|
|
383
|
+
return jsxRuntime.jsx(blocks.TableNext, {
|
|
304
384
|
dark: true,
|
|
305
385
|
columns: tableColumns,
|
|
306
386
|
data: tableData,
|
|
@@ -312,47 +392,54 @@ const MaterialAssignmentContent = ({
|
|
|
312
392
|
/**
|
|
313
393
|
*
|
|
314
394
|
*/
|
|
315
|
-
|
|
395
|
+
var renderAssignmentUploadModal = function renderAssignmentUploadModal() {
|
|
316
396
|
if (!showAssignmentSubmitModal) {
|
|
317
397
|
return null;
|
|
318
398
|
}
|
|
319
|
-
return
|
|
399
|
+
return jsxRuntime.jsx(MaterialAssignmentUploadModal.default, {
|
|
320
400
|
materialAssignment: materialAssignment,
|
|
321
|
-
onClose: ()
|
|
401
|
+
onClose: function onClose() {
|
|
402
|
+
return setShowAssignmentSubmitModal(false);
|
|
403
|
+
},
|
|
322
404
|
onSubmitCallback: doGetOrgMaterialAssignmentGet
|
|
323
405
|
});
|
|
324
406
|
};
|
|
325
|
-
return
|
|
326
|
-
title: materialAssignment.title
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
407
|
+
return jsxRuntime.jsxs(MaterialAssignmentContainer.default, {
|
|
408
|
+
title: materialAssignment.title,
|
|
409
|
+
children: [jsxRuntime.jsx(blocks.Text, {
|
|
410
|
+
bold: true,
|
|
411
|
+
block: true,
|
|
412
|
+
role: "white",
|
|
413
|
+
children: intl$1.formatMessage({
|
|
414
|
+
id: 'materialAssignment.label.general'
|
|
415
|
+
})
|
|
416
|
+
}), jsxRuntime.jsx(blocks.Text, {
|
|
417
|
+
role: "navy3",
|
|
418
|
+
size: "tiny",
|
|
419
|
+
children: intl$1.formatMessage({
|
|
420
|
+
id: 'materialAssignment.description.general'
|
|
421
|
+
})
|
|
422
|
+
}), jsxRuntime.jsx(blocks.Vspace, {
|
|
423
|
+
height: 0.75
|
|
424
|
+
}), renderAssignmentInfo(), jsxRuntime.jsx(blocks.Vspace, {
|
|
425
|
+
height: 1.5
|
|
426
|
+
}), jsxRuntime.jsx(blocks.Text, {
|
|
427
|
+
bold: true,
|
|
428
|
+
block: true,
|
|
429
|
+
role: "white",
|
|
430
|
+
children: intl$1.formatMessage({
|
|
431
|
+
id: 'materialAssignment.label.feedback'
|
|
432
|
+
})
|
|
433
|
+
}), jsxRuntime.jsx(blocks.Text, {
|
|
434
|
+
role: "navy3",
|
|
435
|
+
size: "tiny",
|
|
436
|
+
children: intl$1.formatMessage({
|
|
437
|
+
id: 'materialAssignment.description.feedback'
|
|
438
|
+
})
|
|
439
|
+
}), jsxRuntime.jsx(blocks.Vspace, {
|
|
440
|
+
height: 0.75
|
|
441
|
+
}), renderAssignmentFeedback(), renderAssignmentUploadModal()]
|
|
442
|
+
});
|
|
356
443
|
};
|
|
357
444
|
|
|
358
445
|
exports.default = MaterialAssignmentContent;
|