@elice/material-exercise 1.240627.0 → 1.240628.0

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.
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var img = "data:image/png;base64,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";
6
+ var emptyImg = img;
7
+
8
+ exports.default = emptyImg;
@@ -7,6 +7,7 @@ var apiClient = require('@elice/api-client');
7
7
  var blocks = require('@elice/blocks');
8
8
  var intl = require('@elice/intl');
9
9
  var types = require('@elice/types');
10
+ var material = require('@mui/material');
10
11
  var dayjs = require('dayjs');
11
12
  var humps = require('humps');
12
13
  var recoil = require('recoil');
@@ -28,6 +29,7 @@ var en = require('./locales/en.json.js');
28
29
  var ko = require('./locales/ko.json.js');
29
30
  var ExerciseVersionListItem_styled = require('../../shared/exercise-version-list/ExerciseVersionListItem.styled.js');
30
31
  var ExerciseSubmitHistory_styled = require('./ExerciseSubmitHistory.styled.js');
32
+ var empty = require('../../../assets/empty.png.js');
31
33
 
32
34
  const AsyncFileTree = React.lazy(() => Promise.resolve().then(function () { return require('../../shared/file-tree/FileTree.js'); }));
33
35
  const AsyncFileTreeList = React.lazy(() => Promise.resolve().then(function () { return require('../../shared/file-tree/FileTreeList.js'); }));
@@ -59,6 +61,7 @@ const ExerciseSubmitHistory = ({
59
61
  exercise,
60
62
  exerciseRoomId
61
63
  });
64
+ const isEmpty = runningList.length === 0 && !selectedFile && !selectedRunning;
62
65
  //
63
66
  //
64
67
  //
@@ -299,6 +302,51 @@ const ExerciseSubmitHistory = ({
299
302
  })
300
303
  }), !isFileReady && React.createElement(ExerciseSubmitHistory_styled.StyledExerciseSubmitHistoryEditorLoadingScreen, null, React.createElement(blocks.Spinner, null)))));
301
304
  };
305
+ /**
306
+ *
307
+ */
308
+ const renderEmptySubmitHistoryView = () => {
309
+ return React.createElement(material.Stack, {
310
+ width: "100%",
311
+ height: "100%",
312
+ overflow: "hidden",
313
+ justifyContent: "center",
314
+ alignItems: "center",
315
+ direction: "column",
316
+ gap: "1rem"
317
+ }, React.createElement(material.Box, {
318
+ component: "img",
319
+ width: "9.375rem",
320
+ height: "9.375rem",
321
+ src: empty.default,
322
+ alt: "emptyImage"
323
+ }), React.createElement(material.Typography, {
324
+ variant: "body1",
325
+ color: theme => theme.palette.primary.contrastText
326
+ }, __intl.formatMessage({
327
+ id: 'exerciseSubmitHistory.empty'
328
+ })));
329
+ };
330
+ /**
331
+ *
332
+ */
333
+ const renderSubmitHistory = () => {
334
+ return React.createElement(material.Stack, {
335
+ width: "100%",
336
+ height: "100%",
337
+ overflow: "hidden",
338
+ direction: "row"
339
+ }, React.createElement(material.Box, {
340
+ maxWidth: "15rem",
341
+ width: "100%",
342
+ height: "100%",
343
+ overflow: "hidden"
344
+ }, renderRunningVersionList()), React.createElement(material.Stack, {
345
+ height: "100%",
346
+ overflow: "hidden",
347
+ width: "100%"
348
+ }, renderRunningContent(), renderRunningOutput()));
349
+ };
302
350
  //
303
351
  //
304
352
  //
@@ -309,20 +357,7 @@ const ExerciseSubmitHistory = ({
309
357
  id: 'exerciseSubmitHistory.title'
310
358
  }),
311
359
  onHide: onHide
312
- }, React.createElement(blocks.Flex, {
313
- width: "100%",
314
- height: "100%",
315
- overflow: "hidden"
316
- }, React.createElement(blocks.Box, {
317
- width: "15rem",
318
- height: "100%",
319
- overflow: "hidden"
320
- }, renderRunningVersionList()), React.createElement(blocks.Flex, {
321
- auto: true,
322
- column: true,
323
- height: "100%",
324
- overflow: "hidden"
325
- }, renderRunningContent(), renderRunningOutput()))));
360
+ }, isEmpty ? renderEmptySubmitHistoryView() : renderSubmitHistory()));
326
361
  };
327
362
  var ExerciseSubmitHistory$1 = new intl.IntlComponentBuilder(ExerciseSubmitHistory).add('en', en.default).add('ko', ko.default).addAsync('th', Promise.resolve().then(function () { return require('./locales/th.json.js'); })).addAsync('ja', Promise.resolve().then(function () { return require('./locales/ja.json.js'); })).build();
328
363
 
@@ -2,6 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var messageEn = {"exerciseSubmitHistory.button.load.more":"Load more","exerciseSubmitHistory.notChanged":"A file with no modification history.","exerciseSubmitHistory.runType.grade":"Grade","exerciseSubmitHistory.runType.run":"Run","exerciseSubmitHistory.title":"Execution/Submission history"};
5
+ var messageEn = {"exerciseSubmitHistory.button.load.more":"Load more","exerciseSubmitHistory.notChanged":"A file with no modification history.","exerciseSubmitHistory.runType.grade":"Grade","exerciseSubmitHistory.runType.run":"Run","exerciseSubmitHistory.title":"Execution/Submission history","exerciseSubmitHistory.empty":"No history of execution/submission."};
6
6
 
7
7
  exports.default = messageEn;
@@ -2,6 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var ja = {"exerciseSubmitHistory.button.load.more":"もっと読み込む","exerciseSubmitHistory.notChanged":"変更履歴のないファイル。","exerciseSubmitHistory.runType.grade":"成績","exerciseSubmitHistory.runType.run":"ラン","exerciseSubmitHistory.title":"実行/提出履歴"};
5
+ var ja = {"exerciseSubmitHistory.button.load.more":"もっと読み込む","exerciseSubmitHistory.notChanged":"変更履歴のないファイル。","exerciseSubmitHistory.runType.grade":"成績","exerciseSubmitHistory.runType.run":"ラン","exerciseSubmitHistory.title":"実行/提出履歴","exerciseSubmitHistory.empty":"実行/提出履歴がありません。"};
6
6
 
7
7
  exports.default = ja;
@@ -2,6 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var messageKo = {"exerciseSubmitHistory.button.load.more":"더 불러오기","exerciseSubmitHistory.notChanged":"수정 내역이 없는 파일입니다.","exerciseSubmitHistory.runType.grade":"제출","exerciseSubmitHistory.runType.run":"실행","exerciseSubmitHistory.title":"실행/제출 이력"};
5
+ var messageKo = {"exerciseSubmitHistory.button.load.more":"더 불러오기","exerciseSubmitHistory.notChanged":"수정 내역이 없는 파일입니다.","exerciseSubmitHistory.runType.grade":"제출","exerciseSubmitHistory.runType.run":"실행","exerciseSubmitHistory.title":"실행/제출 이력","exerciseSubmitHistory.empty":"실행/제출 이력이 없습니다."};
6
6
 
7
7
  exports.default = messageKo;
@@ -2,6 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var th = {"exerciseSubmitHistory.button.load.more":"โหลดเพิ่มเติม","exerciseSubmitHistory.notChanged":"ไฟล์ที่ไม่มีประวัติการแก้ไข","exerciseSubmitHistory.runType.grade":"เกรด","exerciseSubmitHistory.runType.run":"เรียกใช้งาน","exerciseSubmitHistory.title":"ประวัติการดำเนินการและการส่ง."};
5
+ var th = {"exerciseSubmitHistory.button.load.more":"โหลดเพิ่มเติม","exerciseSubmitHistory.notChanged":"ไฟล์ที่ไม่มีประวัติการแก้ไข","exerciseSubmitHistory.runType.grade":"เกรด","exerciseSubmitHistory.runType.run":"เรียกใช้งาน","exerciseSubmitHistory.title":"ประวัติการดำเนินการและการส่ง.","exerciseSubmitHistory.empty":"ไม่มีประวัติการดำเนินการ/ส่งค่ะ"};
6
6
 
7
7
  exports.default = th;
@@ -0,0 +1,4 @@
1
+ var img = "data:image/png;base64,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";
2
+ var emptyImg = img;
3
+
4
+ export { emptyImg as default };
@@ -1,8 +1,9 @@
1
1
  import React, { useState, useEffect } from 'react';
2
2
  import { getOrgMaterialExerciseExerciseRunningList, getOrgMaterialExerciseExerciseRunningGet, getOrgMaterialExerciseExerciseImageExerciseFileGet, getOrgMaterialExerciseExerciseRoomUserFileGet, getOrgMaterialExerciseUsercodeGet } from '@elice/api-client';
3
- import { Flex, Box, Text, ResizableNext, Spinner } from '@elice/blocks';
3
+ import { Flex, Text, ResizableNext, Spinner } from '@elice/blocks';
4
4
  import { IntlComponentBuilder, RawEliceIntlProvider } from '@elice/intl';
5
5
  import { enums } from '@elice/types';
6
+ import { Stack, Box, Typography } from '@mui/material';
6
7
  import dayjs from 'dayjs';
7
8
  import { camelizeKeys } from 'humps';
8
9
  import { useRecoilValue } from 'recoil';
@@ -24,6 +25,7 @@ import messageEn from './locales/en.json.js';
24
25
  import messageKo from './locales/ko.json.js';
25
26
  import { StyledExerciseVersionRunType, StyledExerciseVersionDatetime, StyledExerciseVersionScore } from '../../shared/exercise-version-list/ExerciseVersionListItem.styled.js';
26
27
  import { StyledFileTreeWrapper, StyledExerciseSubmitHistoryNotChanged, StyledExerciseSubmitHistoryEditorWrapper, StyledExerciseSubmitHistoryEditorLoadingScreen } from './ExerciseSubmitHistory.styled.js';
28
+ import emptyImg from '../../../assets/empty.png.js';
27
29
 
28
30
  const AsyncFileTree = React.lazy(() => import('../../shared/file-tree/FileTree.js'));
29
31
  const AsyncFileTreeList = React.lazy(() => import('../../shared/file-tree/FileTreeList.js'));
@@ -55,6 +57,7 @@ const ExerciseSubmitHistory = ({
55
57
  exercise,
56
58
  exerciseRoomId
57
59
  });
60
+ const isEmpty = runningList.length === 0 && !selectedFile && !selectedRunning;
58
61
  //
59
62
  //
60
63
  //
@@ -295,6 +298,51 @@ const ExerciseSubmitHistory = ({
295
298
  })
296
299
  }), !isFileReady && React.createElement(StyledExerciseSubmitHistoryEditorLoadingScreen, null, React.createElement(Spinner, null)))));
297
300
  };
301
+ /**
302
+ *
303
+ */
304
+ const renderEmptySubmitHistoryView = () => {
305
+ return React.createElement(Stack, {
306
+ width: "100%",
307
+ height: "100%",
308
+ overflow: "hidden",
309
+ justifyContent: "center",
310
+ alignItems: "center",
311
+ direction: "column",
312
+ gap: "1rem"
313
+ }, React.createElement(Box, {
314
+ component: "img",
315
+ width: "9.375rem",
316
+ height: "9.375rem",
317
+ src: emptyImg,
318
+ alt: "emptyImage"
319
+ }), React.createElement(Typography, {
320
+ variant: "body1",
321
+ color: theme => theme.palette.primary.contrastText
322
+ }, __intl.formatMessage({
323
+ id: 'exerciseSubmitHistory.empty'
324
+ })));
325
+ };
326
+ /**
327
+ *
328
+ */
329
+ const renderSubmitHistory = () => {
330
+ return React.createElement(Stack, {
331
+ width: "100%",
332
+ height: "100%",
333
+ overflow: "hidden",
334
+ direction: "row"
335
+ }, React.createElement(Box, {
336
+ maxWidth: "15rem",
337
+ width: "100%",
338
+ height: "100%",
339
+ overflow: "hidden"
340
+ }, renderRunningVersionList()), React.createElement(Stack, {
341
+ height: "100%",
342
+ overflow: "hidden",
343
+ width: "100%"
344
+ }, renderRunningContent(), renderRunningOutput()));
345
+ };
298
346
  //
299
347
  //
300
348
  //
@@ -305,20 +353,7 @@ const ExerciseSubmitHistory = ({
305
353
  id: 'exerciseSubmitHistory.title'
306
354
  }),
307
355
  onHide: onHide
308
- }, React.createElement(Flex, {
309
- width: "100%",
310
- height: "100%",
311
- overflow: "hidden"
312
- }, React.createElement(Box, {
313
- width: "15rem",
314
- height: "100%",
315
- overflow: "hidden"
316
- }, renderRunningVersionList()), React.createElement(Flex, {
317
- auto: true,
318
- column: true,
319
- height: "100%",
320
- overflow: "hidden"
321
- }, renderRunningContent(), renderRunningOutput()))));
356
+ }, isEmpty ? renderEmptySubmitHistoryView() : renderSubmitHistory()));
322
357
  };
323
358
  var ExerciseSubmitHistory$1 = new IntlComponentBuilder(ExerciseSubmitHistory).add('en', messageEn).add('ko', messageKo).addAsync('th', import('./locales/th.json.js')).addAsync('ja', import('./locales/ja.json.js')).build();
324
359
 
@@ -1,3 +1,3 @@
1
- var messageEn = {"exerciseSubmitHistory.button.load.more":"Load more","exerciseSubmitHistory.notChanged":"A file with no modification history.","exerciseSubmitHistory.runType.grade":"Grade","exerciseSubmitHistory.runType.run":"Run","exerciseSubmitHistory.title":"Execution/Submission history"};
1
+ var messageEn = {"exerciseSubmitHistory.button.load.more":"Load more","exerciseSubmitHistory.notChanged":"A file with no modification history.","exerciseSubmitHistory.runType.grade":"Grade","exerciseSubmitHistory.runType.run":"Run","exerciseSubmitHistory.title":"Execution/Submission history","exerciseSubmitHistory.empty":"No history of execution/submission."};
2
2
 
3
3
  export { messageEn as default };
@@ -1,3 +1,3 @@
1
- var ja = {"exerciseSubmitHistory.button.load.more":"もっと読み込む","exerciseSubmitHistory.notChanged":"変更履歴のないファイル。","exerciseSubmitHistory.runType.grade":"成績","exerciseSubmitHistory.runType.run":"ラン","exerciseSubmitHistory.title":"実行/提出履歴"};
1
+ var ja = {"exerciseSubmitHistory.button.load.more":"もっと読み込む","exerciseSubmitHistory.notChanged":"変更履歴のないファイル。","exerciseSubmitHistory.runType.grade":"成績","exerciseSubmitHistory.runType.run":"ラン","exerciseSubmitHistory.title":"実行/提出履歴","exerciseSubmitHistory.empty":"実行/提出履歴がありません。"};
2
2
 
3
3
  export { ja as default };
@@ -1,3 +1,3 @@
1
- var messageKo = {"exerciseSubmitHistory.button.load.more":"더 불러오기","exerciseSubmitHistory.notChanged":"수정 내역이 없는 파일입니다.","exerciseSubmitHistory.runType.grade":"제출","exerciseSubmitHistory.runType.run":"실행","exerciseSubmitHistory.title":"실행/제출 이력"};
1
+ var messageKo = {"exerciseSubmitHistory.button.load.more":"더 불러오기","exerciseSubmitHistory.notChanged":"수정 내역이 없는 파일입니다.","exerciseSubmitHistory.runType.grade":"제출","exerciseSubmitHistory.runType.run":"실행","exerciseSubmitHistory.title":"실행/제출 이력","exerciseSubmitHistory.empty":"실행/제출 이력이 없습니다."};
2
2
 
3
3
  export { messageKo as default };
@@ -1,3 +1,3 @@
1
- var th = {"exerciseSubmitHistory.button.load.more":"โหลดเพิ่มเติม","exerciseSubmitHistory.notChanged":"ไฟล์ที่ไม่มีประวัติการแก้ไข","exerciseSubmitHistory.runType.grade":"เกรด","exerciseSubmitHistory.runType.run":"เรียกใช้งาน","exerciseSubmitHistory.title":"ประวัติการดำเนินการและการส่ง."};
1
+ var th = {"exerciseSubmitHistory.button.load.more":"โหลดเพิ่มเติม","exerciseSubmitHistory.notChanged":"ไฟล์ที่ไม่มีประวัติการแก้ไข","exerciseSubmitHistory.runType.grade":"เกรด","exerciseSubmitHistory.runType.run":"เรียกใช้งาน","exerciseSubmitHistory.title":"ประวัติการดำเนินการและการส่ง.","exerciseSubmitHistory.empty":"ไม่มีประวัติการดำเนินการ/ส่งค่ะ"};
2
2
 
3
3
  export { th as default };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elice/material-exercise",
3
- "version": "1.240627.0",
3
+ "version": "1.240628.0",
4
4
  "description": "User view and editing components of Elice material exercise",
5
5
  "repository": "https://git.elicer.io/elice/frontend/library/elice-material",
6
6
  "license": "UNLICENSED",
@@ -85,8 +85,8 @@
85
85
  "@elice/icons": "^1.230814.0",
86
86
  "@elice/intl": "0.240425.0-rc.2",
87
87
  "@elice/markdown": "^1.220815.0",
88
- "@elice/material-shared-types": "1.240627.0",
89
- "@elice/material-shared-utils": "1.240627.0",
88
+ "@elice/material-shared-types": "1.240628.0",
89
+ "@elice/material-shared-utils": "1.240628.0",
90
90
  "@elice/mui-elements": "^5.230825.0",
91
91
  "@elice/mui-system": "^5.230825.0",
92
92
  "@elice/types": "^1.240619.0",
@@ -116,5 +116,5 @@
116
116
  "recoil": "^0.6.1",
117
117
  "styled-components": "^5.2.0"
118
118
  },
119
- "gitHead": "cae3cf992700ae62935ac3e4bb1213ffdca1e181"
119
+ "gitHead": "05c689db05f76ed49c8509eb138c73ef820eea61"
120
120
  }