@elice/material-exercise 1.230328.0 → 1.230418.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.
Files changed (369) hide show
  1. package/cjs/_virtual/_rollupPluginBabelHelpers.js +526 -0
  2. package/cjs/components/material-exercise/MaterialExercise.js +44 -63
  3. package/cjs/components/material-exercise/MaterialExercise.styled.js +20 -23
  4. package/cjs/components/material-exercise/MaterialExerciseMobile.js +19 -15
  5. package/cjs/components/material-exercise/context/ExerciseIntlProvider.js +9 -13
  6. package/cjs/components/material-exercise/context/ExerciseProvider.js +83 -81
  7. package/cjs/components/material-exercise/context/ExerciseProviderNoImage.js +16 -16
  8. package/cjs/components/material-exercise/context/context.js +1 -1
  9. package/cjs/components/material-exercise/context/locales/noImage.en.json.js +3 -1
  10. package/cjs/components/material-exercise/context/locales/noImage.ko.json.js +3 -1
  11. package/cjs/components/material-exercise/context/recoil.js +559 -371
  12. package/cjs/components/material-exercise/context/recoilTypes.js +0 -5
  13. package/cjs/components/material-exercise/context/subjects.js +3 -6
  14. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.d.ts +2 -2
  15. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +78 -65
  16. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +8 -8
  17. package/cjs/components/material-exercise/exercise-code-history/locales/en.json.js +7 -0
  18. package/cjs/components/material-exercise/exercise-code-history/locales/ko.json.js +7 -0
  19. package/cjs/components/material-exercise/exercise-file/ExerciseFile.js +20 -21
  20. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +225 -198
  21. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +8 -10
  22. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +35 -32
  23. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.js +57 -48
  24. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +6 -4
  25. package/cjs/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.en.json.js +3 -1
  26. package/cjs/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.ko.json.js +3 -1
  27. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +327 -231
  28. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +6 -4
  29. package/cjs/components/material-exercise/exercise-file-tree/locales/en.json.js +3 -1
  30. package/cjs/components/material-exercise/exercise-file-tree/locales/ko.json.js +3 -1
  31. package/cjs/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +17 -17
  32. package/cjs/components/material-exercise/exercise-menu/ExerciseMenu.js +13 -14
  33. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +6 -6
  34. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +47 -38
  35. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +60 -42
  36. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuReset.js +29 -22
  37. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +45 -56
  38. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +12 -12
  39. package/cjs/components/material-exercise/exercise-menu/locales/en.json.js +3 -1
  40. package/cjs/components/material-exercise/exercise-menu/locales/ko.json.js +3 -1
  41. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +28 -20
  42. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +5 -3
  43. package/cjs/components/material-exercise/exercise-preview/ExercisePreview.js +30 -41
  44. package/cjs/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +17 -12
  45. package/cjs/components/material-exercise/exercise-preview/locales/en.json.js +3 -1
  46. package/cjs/components/material-exercise/exercise-preview/locales/ko.json.js +3 -1
  47. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +24 -33
  48. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +13 -8
  49. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +84 -83
  50. package/cjs/components/material-exercise/exercise-rightpane/locales/en.json.js +3 -1
  51. package/cjs/components/material-exercise/exercise-rightpane/locales/ko.json.js +3 -1
  52. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.js +20 -12
  53. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.styled.js +14 -12
  54. package/cjs/components/material-exercise/exercise-room/ExerciseRoomDetail.js +239 -147
  55. package/cjs/components/material-exercise/exercise-room/ExerciseRoomList.js +92 -63
  56. package/cjs/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -8
  57. package/cjs/components/material-exercise/exercise-room/locales/en.json.js +3 -1
  58. package/cjs/components/material-exercise/exercise-room/locales/ko.json.js +3 -1
  59. package/cjs/components/material-exercise/exercise-runner/ExerciseRunner.js +219 -220
  60. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +1 -1
  61. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerController.js +13 -13
  62. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +30 -26
  63. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +26 -26
  64. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +70 -95
  65. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +27 -27
  66. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +54 -60
  67. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +5 -5
  68. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +10 -13
  69. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +29 -26
  70. package/cjs/components/material-exercise/exercise-runner/locales/en.json.js +3 -1
  71. package/cjs/components/material-exercise/exercise-runner/locales/ko.json.js +3 -1
  72. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.d.ts +2 -2
  73. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +290 -180
  74. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +8 -8
  75. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +41 -45
  76. package/cjs/components/material-exercise/exercise-submit-history/locales/en.json.js +7 -0
  77. package/cjs/components/material-exercise/exercise-submit-history/locales/ko.json.js +7 -0
  78. package/cjs/components/shared/exercise-menu-button/ExerciseMenuButton.js +19 -17
  79. package/cjs/components/shared/exercise-shimmer/ExerciseFileShimmer.js +5 -4
  80. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +15 -14
  81. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +7 -6
  82. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +17 -16
  83. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +18 -11
  84. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.js +5 -4
  85. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.styled.js +1 -1
  86. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.js +8 -7
  87. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +9 -5
  88. package/cjs/components/shared/file-icon/FileIcon.js +23 -23
  89. package/cjs/components/shared/file-tabs/FileTab.js +32 -43
  90. package/cjs/components/shared/file-tabs/FileTab.styled.js +26 -22
  91. package/cjs/components/shared/file-tabs/FileTabs.js +55 -49
  92. package/cjs/components/shared/file-tabs/FileTabs.styled.js +2 -2
  93. package/cjs/components/shared/file-tabs/util.js +29 -18
  94. package/cjs/components/shared/file-tree/FileTree.js +11 -11
  95. package/cjs/components/shared/file-tree/FileTreeConfig.js +24 -23
  96. package/cjs/components/shared/file-tree/FileTreeList.js +35 -41
  97. package/cjs/components/shared/file-tree/FileTreeListItemContent.js +75 -91
  98. package/cjs/components/shared/file-tree/FileTreeListItemContent.styled.js +29 -40
  99. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.js +77 -101
  100. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.styled.js +6 -6
  101. package/cjs/components/shared/file-tree/FileTreeListItemContentMenu.js +51 -86
  102. package/cjs/components/shared/file-tree/FileTreeListItems.js +150 -153
  103. package/cjs/components/shared/file-tree/FileTreeListItems.styled.js +2 -2
  104. package/cjs/components/shared/file-tree/FileTreeToolbar.js +30 -41
  105. package/cjs/components/shared/file-tree/FileTreeToolbar.styled.js +1 -1
  106. package/cjs/components/shared/file-tree/context/FileTreeContext.js +91 -97
  107. package/cjs/components/shared/file-tree/locales/en.json.js +3 -1
  108. package/cjs/components/shared/file-tree/locales/ko.json.js +3 -1
  109. package/cjs/components/shared/file-tree/utils/fileTreeFiles.js +20 -22
  110. package/cjs/components/shared/file-tree/utils/fileTreeGenerator.js +193 -173
  111. package/cjs/components/shared/file-tree/utils/fileTreeInput.js +0 -1
  112. package/cjs/components/shared/file-tree/utils/fileTreeItem.js +1 -1
  113. package/cjs/components/shared/file-tree/utils/fileTreePath.js +5 -7
  114. package/cjs/components/shared/file-viewer/FileViewer.js +59 -60
  115. package/cjs/components/shared/file-viewer/FileViewerCsv.js +145 -101
  116. package/cjs/components/shared/file-viewer/FileViewerImage.js +7 -8
  117. package/cjs/components/shared/file-viewer/FileViewerIpynb.js +20 -14
  118. package/cjs/components/shared/file-viewer/FileViewerNonViewable.js +28 -34
  119. package/cjs/components/shared/file-viewer/FileViewerText.js +23 -16
  120. package/cjs/components/shared/file-viewer/locales/en.json.js +3 -1
  121. package/cjs/components/shared/file-viewer/locales/ko.json.js +3 -1
  122. package/cjs/components/shared/file-viewer/locales/nonViewable.en.json.js +3 -1
  123. package/cjs/components/shared/file-viewer/locales/nonViewable.ko.json.js +3 -1
  124. package/cjs/components/shared/material-modal/MaterialModal.js +10 -12
  125. package/cjs/components/shared/material-modal/MaterialModal.styled.js +5 -5
  126. package/cjs/components/shared/monaco-editor/MonacoEditor.js +123 -149
  127. package/cjs/components/shared/monaco-editor/MonacoEditorLazy.js +10 -8
  128. package/cjs/components/shared/monaco-editor/MonacoEditorMobile.js +49 -58
  129. package/cjs/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +78 -85
  130. package/cjs/components/shared/monaco-editor/constants/grammars/index.js +131 -52
  131. package/cjs/components/shared/monaco-editor/constants/monaco/preferences.js +5 -9
  132. package/cjs/components/shared/monaco-editor/constants/themes/index.js +80 -32
  133. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +10 -13
  134. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +14 -18
  135. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +8 -9
  136. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +54 -72
  137. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +14 -15
  138. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +8 -9
  139. package/cjs/components/shared/monaco-editor/editor-languages/css/formatter.js +36 -12
  140. package/cjs/components/shared/monaco-editor/editor-languages/css/index.js +5 -8
  141. package/cjs/components/shared/monaco-editor/editor-languages/html/formatter.js +36 -12
  142. package/cjs/components/shared/monaco-editor/editor-languages/html/index.js +3 -6
  143. package/cjs/components/shared/monaco-editor/editor-languages/index.js +3 -1
  144. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -1
  145. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/express.js +3 -2
  146. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/propTypes.js +3 -2
  147. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/react.js +3 -2
  148. package/cjs/components/shared/monaco-editor/editor-languages/typescript/formatter.js +36 -12
  149. package/cjs/components/shared/monaco-editor/editor-languages/typescript/index.js +18 -24
  150. package/cjs/components/shared/monaco-editor/hooks/useEditorOptions.js +12 -9
  151. package/cjs/components/shared/monaco-editor/locales/en.json.js +3 -1
  152. package/cjs/components/shared/monaco-editor/locales/ko.json.js +3 -1
  153. package/cjs/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +18 -28
  154. package/cjs/components/shared/monaco-editor/utils/emmet/emmet.js +0 -3
  155. package/cjs/components/shared/monaco-editor/utils/emmet/registerProvider.js +12 -8
  156. package/cjs/components/shared/monaco-editor/utils/grammar/index.js +70 -32
  157. package/cjs/components/shared/monaco-editor/utils/grammar/onigasm.js +25 -7
  158. package/cjs/components/shared/monaco-editor/utils/grammar/textmate.js +67 -43
  159. package/cjs/components/shared/monaco-editor/utils/monacoLanguage.js +9 -19
  160. package/cjs/components/shared/monaco-editor/utils/monacoPreference.js +6 -5
  161. package/cjs/components/shared/monaco-editor/utils/prettier/config.js +2 -3
  162. package/cjs/components/shared/monaco-editor/utils/prettier/index.js +30 -9
  163. package/cjs/components/shared/monaco-editor/utils/theme/convert.js +20 -26
  164. package/cjs/components/shared/monaco-editor/utils/theme/index.js +22 -5
  165. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +77 -75
  166. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +82 -93
  167. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +125 -135
  168. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +148 -160
  169. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +104 -118
  170. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -2
  171. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +1 -3
  172. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -3
  173. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +218 -329
  174. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -6
  175. package/cjs/components/shared/no-vnc/NoVnc.js +93 -90
  176. package/cjs/components/shared/no-vnc/NoVncLazy.js +7 -5
  177. package/cjs/components/shared/preview-container/PreviewContainer.js +7 -10
  178. package/cjs/components/shared/web-browser/WebBrowser.js +54 -59
  179. package/cjs/components/shared/xterm/Xterm.js +112 -105
  180. package/cjs/components/shared/xterm/XtermLazy.js +7 -5
  181. package/cjs/components/shared/xterm/locales/en.json.js +3 -1
  182. package/cjs/components/shared/xterm/locales/ko.json.js +3 -1
  183. package/cjs/constants/arduino.js +10 -10
  184. package/cjs/constants/shortcutKeyMap.js +5 -5
  185. package/cjs/constants/stylesheets.js +7 -10
  186. package/cjs/hooks/useArduino.js +327 -255
  187. package/cjs/hooks/useExerciseFile.js +24 -24
  188. package/cjs/hooks/useExericseShortcut.js +6 -5
  189. package/cjs/hooks/useMaterialExerciseFileUrl.js +54 -37
  190. package/cjs/hooks/useRunnerRoomWebSocket.js +58 -56
  191. package/cjs/hooks/useStdioTextConcator.js +18 -12
  192. package/cjs/hooks/useStdioWebSocket.js +41 -67
  193. package/cjs/hooks/useUsercodeEditWebSocket.js +230 -252
  194. package/cjs/hooks/useUsercodeHistory.js +121 -82
  195. package/cjs/index.js +4 -4
  196. package/cjs/utils/arduino.js +23 -25
  197. package/cjs/utils/exerciseFile.js +8 -16
  198. package/cjs/utils/runner.js +29 -25
  199. package/es/_virtual/_rollupPluginBabelHelpers.js +504 -0
  200. package/es/components/material-exercise/MaterialExercise.js +33 -54
  201. package/es/components/material-exercise/MaterialExercise.styled.js +20 -23
  202. package/es/components/material-exercise/MaterialExerciseMobile.js +15 -13
  203. package/es/components/material-exercise/context/ExerciseIntlProvider.js +9 -13
  204. package/es/components/material-exercise/context/ExerciseProvider.js +79 -79
  205. package/es/components/material-exercise/context/ExerciseProviderNoImage.js +11 -13
  206. package/es/components/material-exercise/context/context.js +1 -1
  207. package/es/components/material-exercise/context/recoil.js +560 -372
  208. package/es/components/material-exercise/context/recoilTypes.js +0 -5
  209. package/es/components/material-exercise/context/subjects.js +3 -6
  210. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.d.ts +2 -2
  211. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +73 -62
  212. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +8 -8
  213. package/es/components/material-exercise/exercise-code-history/locales/en.json.js +3 -0
  214. package/es/components/material-exercise/exercise-code-history/locales/ko.json.js +3 -0
  215. package/es/components/material-exercise/exercise-file/ExerciseFile.js +15 -18
  216. package/es/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +218 -193
  217. package/es/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +5 -9
  218. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +31 -28
  219. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.js +52 -45
  220. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +1 -1
  221. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +321 -225
  222. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +1 -1
  223. package/es/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +12 -14
  224. package/es/components/material-exercise/exercise-menu/ExerciseMenu.js +7 -10
  225. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +3 -5
  226. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +43 -36
  227. package/es/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +53 -37
  228. package/es/components/material-exercise/exercise-menu/ExerciseMenuReset.js +25 -20
  229. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +41 -54
  230. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +12 -12
  231. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +25 -19
  232. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +1 -1
  233. package/es/components/material-exercise/exercise-preview/ExercisePreview.js +21 -34
  234. package/es/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +13 -10
  235. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +17 -28
  236. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +9 -6
  237. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +81 -82
  238. package/es/components/material-exercise/exercise-room/ExerciseRoom.js +13 -7
  239. package/es/components/material-exercise/exercise-room/ExerciseRoom.styled.js +14 -12
  240. package/es/components/material-exercise/exercise-room/ExerciseRoomDetail.js +236 -146
  241. package/es/components/material-exercise/exercise-room/ExerciseRoomList.js +90 -63
  242. package/es/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -8
  243. package/es/components/material-exercise/exercise-runner/ExerciseRunner.js +212 -215
  244. package/es/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +1 -1
  245. package/es/components/material-exercise/exercise-runner/ExerciseRunnerController.js +7 -9
  246. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +27 -25
  247. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +22 -24
  248. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +66 -93
  249. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +24 -26
  250. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +51 -59
  251. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +2 -4
  252. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +6 -11
  253. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +26 -25
  254. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.d.ts +2 -2
  255. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +284 -174
  256. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +8 -8
  257. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +38 -44
  258. package/es/components/material-exercise/exercise-submit-history/locales/en.json.js +3 -0
  259. package/es/components/material-exercise/exercise-submit-history/locales/ko.json.js +3 -0
  260. package/es/components/shared/exercise-menu-button/ExerciseMenuButton.js +16 -16
  261. package/es/components/shared/exercise-shimmer/ExerciseFileShimmer.js +2 -3
  262. package/es/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +12 -13
  263. package/es/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +2 -3
  264. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +14 -15
  265. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +15 -10
  266. package/es/components/shared/exercise-version-list/ExerciseVersionList.js +2 -3
  267. package/es/components/shared/exercise-version-list/ExerciseVersionList.styled.js +1 -1
  268. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.js +5 -6
  269. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +9 -5
  270. package/es/components/shared/file-icon/FileIcon.js +20 -22
  271. package/es/components/shared/file-tabs/FileTab.js +28 -41
  272. package/es/components/shared/file-tabs/FileTab.styled.js +26 -22
  273. package/es/components/shared/file-tabs/FileTabs.js +52 -48
  274. package/es/components/shared/file-tabs/FileTabs.styled.js +2 -2
  275. package/es/components/shared/file-tabs/util.js +29 -18
  276. package/es/components/shared/file-tree/FileTree.js +3 -5
  277. package/es/components/shared/file-tree/FileTreeConfig.js +21 -22
  278. package/es/components/shared/file-tree/FileTreeList.js +31 -39
  279. package/es/components/shared/file-tree/FileTreeListItemContent.js +67 -85
  280. package/es/components/shared/file-tree/FileTreeListItemContent.styled.js +29 -40
  281. package/es/components/shared/file-tree/FileTreeListItemContentInput.js +74 -100
  282. package/es/components/shared/file-tree/FileTreeListItemContentInput.styled.js +6 -6
  283. package/es/components/shared/file-tree/FileTreeListItemContentMenu.js +48 -85
  284. package/es/components/shared/file-tree/FileTreeListItems.js +147 -152
  285. package/es/components/shared/file-tree/FileTreeListItems.styled.js +2 -2
  286. package/es/components/shared/file-tree/FileTreeToolbar.js +24 -37
  287. package/es/components/shared/file-tree/FileTreeToolbar.styled.js +1 -1
  288. package/es/components/shared/file-tree/context/FileTreeContext.js +91 -97
  289. package/es/components/shared/file-tree/utils/fileTreeFiles.js +20 -22
  290. package/es/components/shared/file-tree/utils/fileTreeGenerator.js +193 -173
  291. package/es/components/shared/file-tree/utils/fileTreeInput.js +0 -1
  292. package/es/components/shared/file-tree/utils/fileTreeItem.js +1 -1
  293. package/es/components/shared/file-tree/utils/fileTreePath.js +5 -7
  294. package/es/components/shared/file-viewer/FileViewer.js +52 -53
  295. package/es/components/shared/file-viewer/FileViewerCsv.js +141 -99
  296. package/es/components/shared/file-viewer/FileViewerImage.js +3 -6
  297. package/es/components/shared/file-viewer/FileViewerIpynb.js +16 -12
  298. package/es/components/shared/file-viewer/FileViewerNonViewable.js +22 -30
  299. package/es/components/shared/file-viewer/FileViewerText.js +18 -13
  300. package/es/components/shared/material-modal/MaterialModal.js +7 -11
  301. package/es/components/shared/material-modal/MaterialModal.styled.js +5 -5
  302. package/es/components/shared/monaco-editor/MonacoEditor.js +119 -147
  303. package/es/components/shared/monaco-editor/MonacoEditorLazy.js +6 -4
  304. package/es/components/shared/monaco-editor/MonacoEditorMobile.js +45 -56
  305. package/es/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +73 -82
  306. package/es/components/shared/monaco-editor/constants/grammars/index.js +131 -52
  307. package/es/components/shared/monaco-editor/constants/monaco/preferences.js +5 -9
  308. package/es/components/shared/monaco-editor/constants/themes/index.js +80 -32
  309. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +10 -13
  310. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +14 -18
  311. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +8 -9
  312. package/es/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +54 -72
  313. package/es/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +14 -15
  314. package/es/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +8 -9
  315. package/es/components/shared/monaco-editor/editor-languages/css/formatter.js +33 -11
  316. package/es/components/shared/monaco-editor/editor-languages/css/index.js +2 -5
  317. package/es/components/shared/monaco-editor/editor-languages/html/formatter.js +33 -11
  318. package/es/components/shared/monaco-editor/editor-languages/html/index.js +2 -5
  319. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -1
  320. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/express.js +0 -1
  321. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/propTypes.js +0 -1
  322. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/react.js +0 -1
  323. package/es/components/shared/monaco-editor/editor-languages/typescript/formatter.js +33 -11
  324. package/es/components/shared/monaco-editor/editor-languages/typescript/index.js +10 -16
  325. package/es/components/shared/monaco-editor/hooks/useEditorOptions.js +12 -9
  326. package/es/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +18 -28
  327. package/es/components/shared/monaco-editor/utils/emmet/emmet.js +0 -3
  328. package/es/components/shared/monaco-editor/utils/emmet/registerProvider.js +12 -8
  329. package/es/components/shared/monaco-editor/utils/grammar/index.js +67 -31
  330. package/es/components/shared/monaco-editor/utils/grammar/onigasm.js +25 -7
  331. package/es/components/shared/monaco-editor/utils/grammar/textmate.js +67 -43
  332. package/es/components/shared/monaco-editor/utils/monacoLanguage.js +9 -19
  333. package/es/components/shared/monaco-editor/utils/monacoPreference.js +6 -5
  334. package/es/components/shared/monaco-editor/utils/prettier/config.js +2 -3
  335. package/es/components/shared/monaco-editor/utils/prettier/index.js +27 -8
  336. package/es/components/shared/monaco-editor/utils/theme/convert.js +20 -26
  337. package/es/components/shared/monaco-editor/utils/theme/index.js +22 -5
  338. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +77 -75
  339. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +82 -93
  340. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +125 -135
  341. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +148 -160
  342. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +104 -118
  343. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -2
  344. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +1 -3
  345. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -3
  346. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +219 -330
  347. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -6
  348. package/es/components/shared/no-vnc/NoVnc.js +89 -88
  349. package/es/components/shared/no-vnc/NoVncLazy.js +4 -2
  350. package/es/components/shared/preview-container/PreviewContainer.js +7 -10
  351. package/es/components/shared/web-browser/WebBrowser.js +49 -56
  352. package/es/components/shared/xterm/Xterm.js +107 -102
  353. package/es/components/shared/xterm/XtermLazy.js +4 -2
  354. package/es/constants/arduino.js +10 -10
  355. package/es/constants/shortcutKeyMap.js +3 -5
  356. package/es/constants/stylesheets.js +7 -10
  357. package/es/hooks/useArduino.js +327 -255
  358. package/es/hooks/useExerciseFile.js +24 -24
  359. package/es/hooks/useExericseShortcut.js +6 -5
  360. package/es/hooks/useMaterialExerciseFileUrl.js +55 -38
  361. package/es/hooks/useRunnerRoomWebSocket.js +58 -56
  362. package/es/hooks/useStdioTextConcator.js +18 -12
  363. package/es/hooks/useStdioWebSocket.js +41 -67
  364. package/es/hooks/useUsercodeEditWebSocket.js +230 -252
  365. package/es/hooks/useUsercodeHistory.js +122 -83
  366. package/es/utils/arduino.js +23 -25
  367. package/es/utils/exerciseFile.js +8 -16
  368. package/es/utils/runner.js +29 -25
  369. package/package.json +8 -8
@@ -2,10 +2,10 @@ import { base } from '@elice/design-tokens';
2
2
  import styled from 'styled-components';
3
3
  import { MATERIAL_DIVIDER_BORDER_VALUE } from '../../constants/stylesheets.js';
4
4
 
5
- const EXERCISE_FILE_TREE_MIN_WIDTH = 128;
6
- const EXERCISE_PREVIEW_MIN_WIDTH = 128;
7
- const EXERCISE_RUNNER_MIN_HEIGHT = 128;
8
- const EXERCISE_HORIZONTAL_RATIO = {
5
+ var EXERCISE_FILE_TREE_MIN_WIDTH = 128;
6
+ var EXERCISE_PREVIEW_MIN_WIDTH = 128;
7
+ var EXERCISE_RUNNER_MIN_HEIGHT = 128;
8
+ var EXERCISE_HORIZONTAL_RATIO = {
9
9
  FILETREE: 0.15,
10
10
  EDITOR: 0.45,
11
11
  PREVIEW: 0.4
@@ -17,8 +17,7 @@ const EXERCISE_HORIZONTAL_RATIO = {
17
17
  * - File (Editor)
18
18
  * - Runner
19
19
  */
20
-
21
- const StyledExerciseContainer = styled.div.withConfig({
20
+ var StyledExerciseContainer = styled.div.withConfig({
22
21
  componentId: "sc-9joi7g-0"
23
22
  })(["flex:1;display:flex;flex-direction:column;height:100%;min-width:0;min-height:0;"]);
24
23
  /**
@@ -27,8 +26,7 @@ const StyledExerciseContainer = styled.div.withConfig({
27
26
  * - FileTabs
28
27
  * - File (Editor)
29
28
  */
30
-
31
- const StyledExerciseMain = styled.div.withConfig({
29
+ var StyledExerciseMain = styled.div.withConfig({
32
30
  componentId: "sc-9joi7g-1"
33
31
  })(["flex:1;display:flex;width:100%;min-width:0;min-height:0;"]);
34
32
  /**
@@ -36,32 +34,31 @@ const StyledExerciseMain = styled.div.withConfig({
36
34
  * - FileTabs
37
35
  * - File (Editor)
38
36
  */
39
-
40
- const StyledExerciseFileAndTabWrap = styled.div.withConfig({
37
+ var StyledExerciseFileAndTabWrap = styled.div.withConfig({
41
38
  componentId: "sc-9joi7g-2"
42
39
  })(["flex:1;display:flex;flex-direction:column;height:100%;min-width:0;min-height:0;background-color:", ";"], base.color.navy9);
43
- const StyledExerciseFileWrap = styled.div.withConfig({
40
+ var StyledExerciseFileWrap = styled.div.withConfig({
44
41
  componentId: "sc-9joi7g-3"
45
- })(["flex:1;min-height:0;"]); // ========== Exercise FileTab ==========
46
-
47
- const StyledExerciseTabBar = styled.div.withConfig({
42
+ })(["flex:1;min-height:0;"]);
43
+ // ========== Exercise FileTab ==========
44
+ var StyledExerciseTabBar = styled.div.withConfig({
48
45
  componentId: "sc-9joi7g-4"
49
46
  })(["display:flex;border-bottom:", ";"], MATERIAL_DIVIDER_BORDER_VALUE);
50
- const StyledExerciseTabsWrap = styled.div.withConfig({
47
+ var StyledExerciseTabsWrap = styled.div.withConfig({
51
48
  componentId: "sc-9joi7g-5"
52
49
  })(["flex:1;min-width:0;"]);
53
- const StyledExerciseTabMenuWrap = styled.div.withConfig({
50
+ var StyledExerciseTabMenuWrap = styled.div.withConfig({
54
51
  componentId: "sc-9joi7g-6"
55
- })(["display:flex;justify-content:center;align-items:center;padding:0 0.5rem 0 1rem;background-color:", ";"], base.color.navy8); // ========== Exercise FileTree ==========
56
-
57
- const StyledExerciseFileTreeWrap = styled.div.withConfig({
52
+ })(["display:flex;justify-content:center;align-items:center;padding:0 0.5rem 0 1rem;background-color:", ";"], base.color.navy8);
53
+ // ========== Exercise FileTree ==========
54
+ var StyledExerciseFileTreeWrap = styled.div.withConfig({
58
55
  componentId: "sc-9joi7g-7"
59
56
  })(["flex:1;display:flex;flex-direction:column;min-width:0;height:100%;border-right:", ";"], MATERIAL_DIVIDER_BORDER_VALUE);
60
- const StyledxerciseFileTreeContaner = styled.div.withConfig({
57
+ var StyledxerciseFileTreeContaner = styled.div.withConfig({
61
58
  componentId: "sc-9joi7g-8"
62
- })(["display:flex;height:100%;max-width:auto;&[aria-hidden='true']{max-width:0;overflow:hidden;}"]); // ========== Exercise Runner ==========
63
-
64
- const StyledExerciseRunnerWrap = styled.div.withConfig({
59
+ })(["display:flex;height:100%;max-width:auto;&[aria-hidden='true']{max-width:0;overflow:hidden;}"]);
60
+ // ========== Exercise Runner ==========
61
+ var StyledExerciseRunnerWrap = styled.div.withConfig({
65
62
  componentId: "sc-9joi7g-9"
66
63
  })(["width:100%;height:100%;border-top:", ";"], MATERIAL_DIVIDER_BORDER_VALUE);
67
64
 
@@ -11,27 +11,29 @@ import ExerciseFile from './exercise-file/ExerciseFile.js';
11
11
 
12
12
  //
13
13
  //
14
-
14
+ //
15
15
  /**
16
16
  * Material exercise.
17
17
  */
18
-
19
- const MaterialExerciseMobile = ({
20
- filename
21
- }) => {
22
- const setExerciseActiveFilename = useSetRecoilState(exerciseActiveFilenameState);
23
- React.useEffect(() => setExerciseActiveFilename(filename), // eslint-disable-next-line react-hooks/exhaustive-deps
24
- [filename]); //
18
+ var MaterialExerciseMobile = function MaterialExerciseMobile(_ref) {
19
+ var filename = _ref.filename;
20
+ var setExerciseActiveFilename = useSetRecoilState(exerciseActiveFilenameState);
21
+ React.useEffect(function () {
22
+ return setExerciseActiveFilename(filename);
23
+ },
24
+ // eslint-disable-next-line react-hooks/exhaustive-deps
25
+ [filename]);
26
+ //
25
27
  //
26
28
  //
27
-
28
29
  return React.createElement(ExerciseFile, null);
29
- }; //
30
+ };
30
31
  //
31
32
  //
32
-
33
-
34
- var MaterialExerciseMobile$1 = withMaterial(props => React.createElement(ExerciseProvider, Object.assign({}, props), React.createElement(MaterialExerciseMobile, Object.assign({}, props))), config.init, {
33
+ //
34
+ var MaterialExerciseMobile$1 = withMaterial(function (props) {
35
+ return React.createElement(ExerciseProvider, Object.assign({}, props), React.createElement(MaterialExerciseMobile, Object.assign({}, props)));
36
+ }, config.init, {
35
37
  overrideRecoilScope: true
36
38
  });
37
39
 
@@ -4,16 +4,14 @@ import { ExerciseContext } from './context.js';
4
4
 
5
5
  //
6
6
  //
7
-
7
+ //
8
8
  /**
9
9
  *
10
10
  */
11
-
12
- const withExerciseIntlProvider = (Component, phrases) => {
13
- return props => {
14
- const {
15
- locale
16
- } = useContext(ExerciseContext);
11
+ var withExerciseIntlProvider = function withExerciseIntlProvider(Component, phrases) {
12
+ return function (props) {
13
+ var _useContext = useContext(ExerciseContext),
14
+ locale = _useContext.locale;
17
15
  return React.createElement(MaterialIntlProvider, {
18
16
  children: React.createElement(Component, Object.assign({}, props)),
19
17
  locale: locale,
@@ -24,12 +22,10 @@ const withExerciseIntlProvider = (Component, phrases) => {
24
22
  /**
25
23
  *
26
24
  */
27
-
28
- const withForwardRefExerciseIntlProvider = (Component, phrases) => {
29
- return forwardRef((props, ref) => {
30
- const {
31
- locale
32
- } = useContext(ExerciseContext);
25
+ var withForwardRefExerciseIntlProvider = function withForwardRefExerciseIntlProvider(Component, phrases) {
26
+ return forwardRef(function (props, ref) {
27
+ var _useContext2 = useContext(ExerciseContext),
28
+ locale = _useContext2.locale;
33
29
  return React.createElement(MaterialIntlProvider, {
34
30
  children: React.createElement(Component, Object.assign({}, props, {
35
31
  ref: ref
@@ -1,3 +1,4 @@
1
+ import { slicedToArray as _slicedToArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
1
2
  import { __rest } from 'tslib';
2
3
  import React from 'react';
3
4
  import { useMeasure } from 'react-use';
@@ -9,8 +10,8 @@ import { ExerciseContext } from './context.js';
9
10
  import MaterialExerciseNoImage from './ExerciseProviderNoImage.js';
10
11
  import { exerciseUserState, exerciseState, exerciseRoomState, exerciseLectureState, exerciseMultilangLanguagesState, exerciseActiveFilenameState, exerciseContainerSizeState } from './recoil.js';
11
12
 
12
- const RECOIL_RESET_DELAY = 10;
13
- const StyledMaterialExercise = styled.div.withConfig({
13
+ var RECOIL_RESET_DELAY = 10;
14
+ var StyledMaterialExercise = styled.div.withConfig({
14
15
  componentId: "sc-pj5yv2-0"
15
16
  })(["display:flex;width:100%;height:100%;.eb-resizable{height:inherit;}"]);
16
17
  /**
@@ -19,113 +20,114 @@ const StyledMaterialExercise = styled.div.withConfig({
19
20
  * - fetching exercise room
20
21
  * - fetching exercise room id
21
22
  */
22
-
23
- const ExerciseProvider = _a => {
24
- var {
25
- children,
26
- materialExerciseId,
27
- exerciseRoomId,
28
- exerciseRoomUserId,
29
- onDefaultExerciseRoomIdSet,
30
- exerciseImageEmptyOptions
31
- } = _a,
32
- contextProps = __rest(_a, ["children", "materialExerciseId", "exerciseRoomId", "exerciseRoomUserId", "onDefaultExerciseRoomIdSet", "exerciseImageEmptyOptions"]); // user
33
-
34
-
35
- const user = useRecoilValue(exerciseUserState); // exercise
36
-
37
- const exercise = useRecoilValue(exerciseState(materialExerciseId));
38
- const exerciseRoom = useRecoilValue(exerciseRoomState(exerciseRoomId)); // lecture
39
-
40
- const lecture = useRecoilValue(exerciseLectureState(exercise === null || exercise === void 0 ? void 0 : exercise._lectureId));
41
- const resetLecture = useResetRecoilState(exerciseLectureState(exercise === null || exercise === void 0 ? void 0 : exercise._lectureId)); // multilang languages
42
-
43
- const exerciseMultilangLanguages = useRecoilValue(exerciseMultilangLanguagesState(exercise === null || exercise === void 0 ? void 0 : exercise.id));
44
- const resetExerciseMultilangLanguages = useResetRecoilState(exerciseMultilangLanguagesState(exercise === null || exercise === void 0 ? void 0 : exercise.id)); // etc
45
-
46
- const activeFilename = useRecoilValue(exerciseActiveFilenameState);
47
- const setConatinerSize = useSetRecoilState(exerciseContainerSizeState); // wrap container size
48
-
49
- const [wrapElRef, {
50
- width,
51
- height
52
- }] = useMeasure(); //
23
+ var ExerciseProvider = function ExerciseProvider(_a) {
24
+ var children = _a.children,
25
+ materialExerciseId = _a.materialExerciseId,
26
+ exerciseRoomId = _a.exerciseRoomId,
27
+ exerciseRoomUserId = _a.exerciseRoomUserId,
28
+ onDefaultExerciseRoomIdSet = _a.onDefaultExerciseRoomIdSet,
29
+ exerciseImageEmptyOptions = _a.exerciseImageEmptyOptions,
30
+ contextProps = __rest(_a, ["children", "materialExerciseId", "exerciseRoomId", "exerciseRoomUserId", "onDefaultExerciseRoomIdSet", "exerciseImageEmptyOptions"]);
31
+ // user
32
+ var user = useRecoilValue(exerciseUserState);
33
+ // exercise
34
+ var exercise = useRecoilValue(exerciseState(materialExerciseId));
35
+ var exerciseRoom = useRecoilValue(exerciseRoomState(exerciseRoomId));
36
+ // lecture
37
+ var lecture = useRecoilValue(exerciseLectureState(exercise === null || exercise === void 0 ? void 0 : exercise._lectureId));
38
+ var resetLecture = useResetRecoilState(exerciseLectureState(exercise === null || exercise === void 0 ? void 0 : exercise._lectureId));
39
+ // multilang languages
40
+ var exerciseMultilangLanguages = useRecoilValue(exerciseMultilangLanguagesState(exercise === null || exercise === void 0 ? void 0 : exercise.id));
41
+ var resetExerciseMultilangLanguages = useResetRecoilState(exerciseMultilangLanguagesState(exercise === null || exercise === void 0 ? void 0 : exercise.id));
42
+ // etc
43
+ var activeFilename = useRecoilValue(exerciseActiveFilenameState);
44
+ var setConatinerSize = useSetRecoilState(exerciseContainerSizeState);
45
+ // wrap container size
46
+ var _useMeasure = useMeasure(),
47
+ _useMeasure2 = _slicedToArray(_useMeasure, 2),
48
+ wrapElRef = _useMeasure2[0],
49
+ _useMeasure2$ = _useMeasure2[1],
50
+ width = _useMeasure2$.width,
51
+ height = _useMeasure2$.height;
52
+ //
53
53
  // if exercise room id is not specified, fetch it from server
54
54
  // NOTICE: should not use `exercise.defaultRoom.id`, since will be removed (confrimed by backend-team)
55
55
  //
56
-
57
- React.useEffect(() => {
56
+ React.useEffect(function () {
58
57
  if (exerciseRoomId) {
59
58
  return;
60
59
  }
61
-
62
60
  getOrgMaterialExerciseDefaultRoomGet({
63
- materialExerciseId
64
- }).then(res => {
61
+ materialExerciseId: materialExerciseId
62
+ }).then(function (res) {
65
63
  if (typeof onDefaultExerciseRoomIdSet === 'function') {
66
64
  onDefaultExerciseRoomIdSet(res.exerciseRoomId);
67
65
  }
68
- }).catch(err => {
66
+ }).catch(function (err) {
69
67
  if (typeof contextProps.onError === 'function') {
70
68
  contextProps.onError(err);
71
69
  }
72
70
  });
73
- }, // eslint-disable-next-line react-hooks/exhaustive-deps
74
- [exerciseRoomId, materialExerciseId]); //
71
+ },
72
+ // eslint-disable-next-line react-hooks/exhaustive-deps
73
+ [exerciseRoomId, materialExerciseId]);
74
+ //
75
75
  // reset lecture, after `exercise.lectureId` changed
76
76
  //
77
-
78
- React.useEffect(() => {
77
+ React.useEffect(function () {
79
78
  if (!(exercise === null || exercise === void 0 ? void 0 : exercise._lectureId)) {
80
79
  return;
81
80
  }
82
-
83
- const timeout = window.setTimeout(() => resetLecture(), RECOIL_RESET_DELAY);
84
- return () => {
81
+ var timeout = window.setTimeout(function () {
82
+ return resetLecture();
83
+ }, RECOIL_RESET_DELAY);
84
+ return function () {
85
85
  window.clearTimeout(timeout);
86
86
  };
87
- }, // eslint-disable-next-line react-hooks/exhaustive-deps
88
- [exercise]); //
87
+ },
88
+ // eslint-disable-next-line react-hooks/exhaustive-deps
89
+ [exercise]);
90
+ //
89
91
  // reset exercise multilang languages, after `exercise.id` changed
90
92
  //
91
-
92
- React.useEffect(() => {
93
+ React.useEffect(function () {
93
94
  if (!(exercise === null || exercise === void 0 ? void 0 : exercise.id)) {
94
95
  return;
95
96
  }
96
-
97
- const timeout = window.setTimeout(() => resetExerciseMultilangLanguages(), RECOIL_RESET_DELAY);
98
- return () => {
97
+ var timeout = window.setTimeout(function () {
98
+ return resetExerciseMultilangLanguages();
99
+ }, RECOIL_RESET_DELAY);
100
+ return function () {
99
101
  window.clearTimeout(timeout);
100
102
  };
101
- }, // eslint-disable-next-line react-hooks/exhaustive-deps
102
- [exercise]); //
103
+ },
104
+ // eslint-disable-next-line react-hooks/exhaustive-deps
105
+ [exercise]);
106
+ //
103
107
  // update Provider size
104
108
  //
105
-
106
- React.useEffect(() => {
109
+ React.useEffect(function () {
107
110
  if (width && height) {
108
111
  setConatinerSize({
109
- width,
110
- height
112
+ width: width,
113
+ height: height
111
114
  });
112
115
  }
113
- }, // eslint-disable-next-line react-hooks/exhaustive-deps
114
- [width, height]); //
116
+ },
117
+ // eslint-disable-next-line react-hooks/exhaustive-deps
118
+ [width, height]);
119
+ //
115
120
  //
116
121
  //
117
-
118
122
  return React.createElement(StyledMaterialExercise, {
119
123
  ref: wrapElRef,
120
- children: (() => {
121
- var _a; // render after measure Provider size
122
-
123
-
124
+ children: function () {
125
+ var _a;
126
+ // render after measure Provider size
124
127
  if (!width || !height) {
125
128
  return null;
126
- } // show spinner before exercise ready
127
-
128
-
129
+ }
130
+ // show spinner before exercise ready
129
131
  if (!user || !lecture || !exercise || !exerciseRoomId || !exerciseRoom || typeof exerciseMultilangLanguages === 'undefined') {
130
132
  return React.createElement(Flex, {
131
133
  align: "center",
@@ -133,27 +135,25 @@ const ExerciseProvider = _a => {
133
135
  width: "100%",
134
136
  height: "100%"
135
137
  }, React.createElement(Spinner, null));
136
- } // when exerciseImage is not ready yet
137
-
138
-
138
+ }
139
+ // when exerciseImage is not ready yet
139
140
  if (exercise.readyExerciseImage === null) {
140
141
  return React.createElement(MaterialExerciseNoImage, Object.assign({}, exerciseImageEmptyOptions, {
141
142
  locale: contextProps.locale
142
143
  }));
143
- } // render
144
-
145
-
144
+ }
145
+ // render
146
146
  return React.createElement(ExerciseContext.Provider, {
147
147
  children: children,
148
148
  value: Object.assign(Object.assign({}, contextProps), {
149
- materialExerciseId,
150
- exerciseRoomId,
149
+ materialExerciseId: materialExerciseId,
150
+ exerciseRoomId: exerciseRoomId,
151
151
  exerciseRoomUserId: exerciseRoomUserId !== null && exerciseRoomUserId !== void 0 ? exerciseRoomUserId : user.id,
152
152
  readOnlyActiveFile: !!((_a = exercise === null || exercise === void 0 ? void 0 : exercise.readyExerciseImage) === null || _a === void 0 ? void 0 : _a.readOnlyFilelist.includes(activeFilename || ''))
153
153
  })
154
154
  });
155
- })()
155
+ }()
156
156
  });
157
- }; //
157
+ };
158
158
 
159
159
  export { ExerciseProvider as default };
@@ -7,17 +7,16 @@ import styled from 'styled-components';
7
7
  import phrasesEn from './locales/noImage.en.json.js';
8
8
  import phrasesKo from './locales/noImage.ko.json.js';
9
9
 
10
- const StyledProviderNoImage = styled.div.withConfig({
10
+ var StyledProviderNoImage = styled.div.withConfig({
11
11
  componentId: "sc-oaauqc-0"
12
12
  })(["display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;background-color:", ";"], base.color.navy9);
13
-
14
- const ExerciseProviderNoImage = ({
15
- text,
16
- imageSrc = '',
17
- buttonText,
18
- onButtonClick
19
- }) => {
20
- const intl = useIntl();
13
+ var ExerciseProviderNoImage = function ExerciseProviderNoImage(_ref) {
14
+ var text = _ref.text,
15
+ _ref$imageSrc = _ref.imageSrc,
16
+ imageSrc = _ref$imageSrc === void 0 ? '' : _ref$imageSrc,
17
+ buttonText = _ref.buttonText,
18
+ onButtonClick = _ref.onButtonClick;
19
+ var intl = useIntl();
21
20
  return React.createElement(StyledProviderNoImage, null, React.createElement(SafeImage, {
22
21
  src: imageSrc,
23
22
  defaultSrc: "https://static.elice.io/elice-material/exercise/empty-code-purple.png",
@@ -37,12 +36,11 @@ const ExerciseProviderNoImage = ({
37
36
  }, buttonText || intl.formatMessage({
38
37
  id: 'exerciseContext.provider.noImage.button'
39
38
  })));
40
- }; //
39
+ };
41
40
  //
42
41
  //
43
-
44
-
45
- var MaterialExerciseNoImage = (props => {
42
+ //
43
+ var MaterialExerciseNoImage = (function (props) {
46
44
  return React.createElement(MaterialIntlProvider, {
47
45
  locale: props.locale,
48
46
  phrases: {
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
2
 
3
- const ExerciseContext = React.createContext(null);
3
+ var ExerciseContext = React.createContext(null);
4
4
 
5
5
  export { ExerciseContext };