@elice/material-exercise 1.231227.0 → 1.240112.0-cloud.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.
Files changed (395) hide show
  1. package/cjs/components/material-exercise/MaterialExercise.i18n.js +2 -4
  2. package/cjs/components/material-exercise/MaterialExercise.js +54 -59
  3. package/cjs/components/material-exercise/MaterialExercise.styled.js +14 -20
  4. package/cjs/components/material-exercise/MaterialExerciseMobile.js +8 -15
  5. package/cjs/components/material-exercise/context/ExerciseIntlProvider.js +14 -18
  6. package/cjs/components/material-exercise/context/ExerciseProvider.js +58 -66
  7. package/cjs/components/material-exercise/context/ExerciseProviderNoImage.js +19 -24
  8. package/cjs/components/material-exercise/context/context.js +1 -7
  9. package/cjs/components/material-exercise/context/locales/noImage.en.json.js +1 -1
  10. package/cjs/components/material-exercise/context/locales/noImage.ko.json.js +1 -1
  11. package/cjs/components/material-exercise/context/recoil.js +293 -544
  12. package/cjs/components/material-exercise/context/recoilTypes.js +0 -2
  13. package/cjs/components/material-exercise/context/subjects.js +3 -5
  14. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +60 -67
  15. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +8 -14
  16. package/cjs/components/material-exercise/exercise-code-history/locales/en.json.js +1 -1
  17. package/cjs/components/material-exercise/exercise-code-history/locales/ko.json.js +1 -1
  18. package/cjs/components/material-exercise/exercise-file/ExerciseFile.js +17 -21
  19. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +133 -203
  20. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +8 -12
  21. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +24 -40
  22. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.js +38 -52
  23. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +5 -9
  24. package/cjs/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.en.json.js +1 -1
  25. package/cjs/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.ko.json.js +1 -1
  26. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +189 -328
  27. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +5 -9
  28. package/cjs/components/material-exercise/exercise-file-tree/locales/en.json.js +1 -1
  29. package/cjs/components/material-exercise/exercise-file-tree/locales/ko.json.js +1 -1
  30. package/cjs/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +14 -17
  31. package/cjs/components/material-exercise/exercise-menu/ExerciseMenu.js +11 -15
  32. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +7 -11
  33. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +44 -65
  34. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +32 -61
  35. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuReset.js +19 -35
  36. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +48 -62
  37. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +12 -18
  38. package/cjs/components/material-exercise/exercise-menu/locales/en.json.js +1 -1
  39. package/cjs/components/material-exercise/exercise-menu/locales/ko.json.js +1 -1
  40. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +21 -32
  41. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +4 -8
  42. package/cjs/components/material-exercise/exercise-preview/ExercisePreview.js +23 -27
  43. package/cjs/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +7 -17
  44. package/cjs/components/material-exercise/exercise-preview/locales/en.json.js +1 -1
  45. package/cjs/components/material-exercise/exercise-preview/locales/ko.json.js +1 -1
  46. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +23 -32
  47. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +7 -15
  48. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +79 -86
  49. package/cjs/components/material-exercise/exercise-rightpane/locales/en.json.js +1 -1
  50. package/cjs/components/material-exercise/exercise-rightpane/locales/ko.json.js +1 -1
  51. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.js +11 -22
  52. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.styled.js +12 -20
  53. package/cjs/components/material-exercise/exercise-room/ExerciseRoomDetail.js +180 -288
  54. package/cjs/components/material-exercise/exercise-room/ExerciseRoomList.js +82 -116
  55. package/cjs/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -4
  56. package/cjs/components/material-exercise/exercise-room/locales/en.json.js +1 -1
  57. package/cjs/components/material-exercise/exercise-room/locales/ko.json.js +1 -1
  58. package/cjs/components/material-exercise/exercise-runner/ExerciseRunner.js +125 -181
  59. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +1 -7
  60. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerController.js +13 -17
  61. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +43 -58
  62. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +15 -27
  63. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +65 -68
  64. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +23 -32
  65. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +58 -92
  66. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +3 -7
  67. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +11 -16
  68. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +18 -29
  69. package/cjs/components/material-exercise/exercise-runner/locales/en.json.js +1 -1
  70. package/cjs/components/material-exercise/exercise-runner/locales/ko.json.js +1 -1
  71. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +162 -282
  72. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +8 -14
  73. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +41 -54
  74. package/cjs/components/material-exercise/exercise-submit-history/locales/en.json.js +1 -1
  75. package/cjs/components/material-exercise/exercise-submit-history/locales/ko.json.js +1 -1
  76. package/cjs/components/shared/exercise-menu-button/ExerciseMenuButton.js +15 -21
  77. package/cjs/components/shared/exercise-shimmer/ExerciseFileShimmer.js +14 -19
  78. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +16 -21
  79. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +5 -10
  80. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +18 -23
  81. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +10 -21
  82. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.js +5 -8
  83. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.styled.js +1 -7
  84. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.js +8 -11
  85. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +5 -15
  86. package/cjs/components/shared/file-icon/FileIcon.js +17 -23
  87. package/cjs/components/shared/file-tabs/FileTab.js +30 -36
  88. package/cjs/components/shared/file-tabs/FileTab.styled.js +15 -25
  89. package/cjs/components/shared/file-tabs/FileTabs.js +38 -63
  90. package/cjs/components/shared/file-tabs/FileTabs.styled.js +2 -8
  91. package/cjs/components/shared/file-tabs/util.js +14 -29
  92. package/cjs/components/shared/file-tree/FileTree.js +12 -17
  93. package/cjs/components/shared/file-tree/FileTreeConfig.js +22 -25
  94. package/cjs/components/shared/file-tree/FileTreeList.js +37 -39
  95. package/cjs/components/shared/file-tree/FileTreeListItemContent.js +61 -75
  96. package/cjs/components/shared/file-tree/FileTreeListItemContent.styled.js +21 -31
  97. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.js +64 -72
  98. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.styled.js +6 -12
  99. package/cjs/components/shared/file-tree/FileTreeListItemContentMenu.js +63 -74
  100. package/cjs/components/shared/file-tree/FileTreeListItems.js +136 -151
  101. package/cjs/components/shared/file-tree/FileTreeListItems.styled.js +2 -8
  102. package/cjs/components/shared/file-tree/FileTreeToolbar.js +31 -32
  103. package/cjs/components/shared/file-tree/FileTreeToolbar.styled.js +1 -7
  104. package/cjs/components/shared/file-tree/context/FileTreeContext.js +76 -97
  105. package/cjs/components/shared/file-tree/locales/en.json.js +1 -1
  106. package/cjs/components/shared/file-tree/locales/ko.json.js +1 -1
  107. package/cjs/components/shared/file-tree/utils/fileTreeFiles.js +20 -26
  108. package/cjs/components/shared/file-tree/utils/fileTreeGenerator.js +146 -195
  109. package/cjs/components/shared/file-tree/utils/fileTreeInput.js +0 -2
  110. package/cjs/components/shared/file-tree/utils/fileTreeItem.js +1 -3
  111. package/cjs/components/shared/file-tree/utils/fileTreePath.js +6 -7
  112. package/cjs/components/shared/file-viewer/FileViewer.js +37 -61
  113. package/cjs/components/shared/file-viewer/FileViewerCsv.js +108 -172
  114. package/cjs/components/shared/file-viewer/FileViewerImage.js +8 -12
  115. package/cjs/components/shared/file-viewer/FileViewerIpynb.js +10 -23
  116. package/cjs/components/shared/file-viewer/FileViewerNonViewable.js +33 -42
  117. package/cjs/components/shared/file-viewer/FileViewerText.js +12 -24
  118. package/cjs/components/shared/file-viewer/locales/en.json.js +1 -1
  119. package/cjs/components/shared/file-viewer/locales/ko.json.js +1 -1
  120. package/cjs/components/shared/file-viewer/locales/nonViewable.en.json.js +1 -1
  121. package/cjs/components/shared/file-viewer/locales/nonViewable.ko.json.js +1 -1
  122. package/cjs/components/shared/material-modal/MaterialModal.js +11 -14
  123. package/cjs/components/shared/material-modal/MaterialModal.styled.js +5 -11
  124. package/cjs/components/shared/monaco-editor/MonacoEditor.js +74 -99
  125. package/cjs/components/shared/monaco-editor/MonacoEditorLazy.js +6 -12
  126. package/cjs/components/shared/monaco-editor/MonacoEditorMobile.js +36 -50
  127. package/cjs/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +91 -110
  128. package/cjs/components/shared/monaco-editor/constants/grammars/JSON.tmLanguage.json.js +1 -1
  129. package/cjs/components/shared/monaco-editor/constants/grammars/MagicPython.tmLanguage.json.js +1 -1
  130. package/cjs/components/shared/monaco-editor/constants/grammars/TypeScriptReact.tmLanguage.json.js +1 -1
  131. package/cjs/components/shared/monaco-editor/constants/grammars/asp-vb-net.tmlanguage.json.js +1 -1
  132. package/cjs/components/shared/monaco-editor/constants/grammars/c.tmLanguage.json.js +1 -1
  133. package/cjs/components/shared/monaco-editor/constants/grammars/cpp.tmLanguage.json.js +1 -1
  134. package/cjs/components/shared/monaco-editor/constants/grammars/csharp.tmLanguage.json.js +1 -1
  135. package/cjs/components/shared/monaco-editor/constants/grammars/css.tmLanguage.json.js +1 -1
  136. package/cjs/components/shared/monaco-editor/constants/grammars/dart.tmLanguage.json.js +1 -1
  137. package/cjs/components/shared/monaco-editor/constants/grammars/fsharp.tmLanguage.json.js +1 -1
  138. package/cjs/components/shared/monaco-editor/constants/grammars/go.tmLanguage.json.js +1 -1
  139. package/cjs/components/shared/monaco-editor/constants/grammars/html.tmLanguage.json.js +1 -1
  140. package/cjs/components/shared/monaco-editor/constants/grammars/index.js +28 -84
  141. package/cjs/components/shared/monaco-editor/constants/grammars/java.tmLanguage.json.js +1 -1
  142. package/cjs/components/shared/monaco-editor/constants/grammars/lua.tmLanguage.json.js +1 -1
  143. package/cjs/components/shared/monaco-editor/constants/grammars/objective-c.tmLanguage.json.js +1 -1
  144. package/cjs/components/shared/monaco-editor/constants/grammars/php.tmLanguage.json.js +1 -1
  145. package/cjs/components/shared/monaco-editor/constants/grammars/r.tmLanguage.json.js +1 -1
  146. package/cjs/components/shared/monaco-editor/constants/grammars/ruby.tmLanguage.json.js +1 -1
  147. package/cjs/components/shared/monaco-editor/constants/grammars/rust.tmLanguage.json.js +1 -1
  148. package/cjs/components/shared/monaco-editor/constants/grammars/scss.tmLanguage.json.js +1 -1
  149. package/cjs/components/shared/monaco-editor/constants/grammars/sql.tmLanguage.json.js +1 -1
  150. package/cjs/components/shared/monaco-editor/constants/grammars/swift.tmLanguage.json.js +1 -1
  151. package/cjs/components/shared/monaco-editor/constants/grammars/xml.tmLanguage.json.js +1 -1
  152. package/cjs/components/shared/monaco-editor/constants/grammars/yaml.tmLanguage.json.js +1 -1
  153. package/cjs/components/shared/monaco-editor/constants/monaco/preferences.js +5 -7
  154. package/cjs/components/shared/monaco-editor/constants/themes/abyss.json.js +1 -1
  155. package/cjs/components/shared/monaco-editor/constants/themes/elice.json.js +1 -1
  156. package/cjs/components/shared/monaco-editor/constants/themes/index.js +17 -51
  157. package/cjs/components/shared/monaco-editor/constants/themes/kimbie-dark.json.js +1 -1
  158. package/cjs/components/shared/monaco-editor/constants/themes/monokai.json.js +1 -1
  159. package/cjs/components/shared/monaco-editor/constants/themes/quietlight.json.js +1 -1
  160. package/cjs/components/shared/monaco-editor/constants/themes/red.json.js +1 -1
  161. package/cjs/components/shared/monaco-editor/constants/themes/solarized-dark.json.js +1 -1
  162. package/cjs/components/shared/monaco-editor/constants/themes/solarized-light.json.js +1 -1
  163. package/cjs/components/shared/monaco-editor/constants/themes/tomorrow-night-blue.json.js +1 -1
  164. package/cjs/components/shared/monaco-editor/constants/themes/vs-dark-plus.json.js +1 -1
  165. package/cjs/components/shared/monaco-editor/constants/themes/vs-dark.json.js +1 -1
  166. package/cjs/components/shared/monaco-editor/constants/themes/vs-hc-black.json.js +1 -1
  167. package/cjs/components/shared/monaco-editor/constants/themes/vs-hc-light.json.js +1 -1
  168. package/cjs/components/shared/monaco-editor/constants/themes/vs-light-plus.json.js +1 -1
  169. package/cjs/components/shared/monaco-editor/constants/themes/vs-light.json.js +1 -1
  170. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +10 -13
  171. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +14 -17
  172. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +8 -11
  173. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +30 -36
  174. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +7 -11
  175. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +6 -8
  176. package/cjs/components/shared/monaco-editor/editor-languages/css/formatter.js +11 -52
  177. package/cjs/components/shared/monaco-editor/editor-languages/css/index.js +7 -8
  178. package/cjs/components/shared/monaco-editor/editor-languages/html/formatter.js +11 -52
  179. package/cjs/components/shared/monaco-editor/editor-languages/html/index.js +5 -6
  180. package/cjs/components/shared/monaco-editor/editor-languages/index.js +4 -4
  181. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -3
  182. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/express.js +1 -1
  183. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/propTypes.js +1 -1
  184. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/react.js +1 -1
  185. package/cjs/components/shared/monaco-editor/editor-languages/typescript/formatter.js +11 -56
  186. package/cjs/components/shared/monaco-editor/editor-languages/typescript/index.js +17 -18
  187. package/cjs/components/shared/monaco-editor/hooks/useEditorOptions.js +5 -13
  188. package/cjs/components/shared/monaco-editor/locales/en.json.js +1 -1
  189. package/cjs/components/shared/monaco-editor/locales/ko.json.js +1 -1
  190. package/cjs/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +12 -12
  191. package/cjs/components/shared/monaco-editor/utils/emmet/emmet.js +0 -2
  192. package/cjs/components/shared/monaco-editor/utils/emmet/registerProvider.js +6 -14
  193. package/cjs/components/shared/monaco-editor/utils/grammar/index.js +25 -69
  194. package/cjs/components/shared/monaco-editor/utils/grammar/onigasm.js +6 -27
  195. package/cjs/components/shared/monaco-editor/utils/grammar/textmate.js +38 -73
  196. package/cjs/components/shared/monaco-editor/utils/monacoLanguage.js +8 -11
  197. package/cjs/components/shared/monaco-editor/utils/monacoPreference.js +4 -8
  198. package/cjs/components/shared/monaco-editor/utils/prettier/config.js +2 -4
  199. package/cjs/components/shared/monaco-editor/utils/prettier/index.js +8 -46
  200. package/cjs/components/shared/monaco-editor/utils/theme/convert.js +14 -26
  201. package/cjs/components/shared/monaco-editor/utils/theme/index.js +3 -24
  202. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +56 -79
  203. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +68 -84
  204. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +93 -122
  205. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +133 -158
  206. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +92 -106
  207. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -4
  208. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +6 -3
  209. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -4
  210. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +158 -179
  211. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -5
  212. package/cjs/components/shared/no-vnc/NoVnc.js +57 -86
  213. package/cjs/components/shared/no-vnc/NoVncLazy.js +5 -11
  214. package/cjs/components/shared/preview-container/PreviewContainer.js +11 -15
  215. package/cjs/components/shared/web-browser/WebBrowser.js +37 -53
  216. package/cjs/components/shared/xterm/Xterm.js +58 -81
  217. package/cjs/components/shared/xterm/XtermLazy.js +5 -11
  218. package/cjs/components/shared/xterm/locales/en.json.js +1 -1
  219. package/cjs/components/shared/xterm/locales/ko.json.js +1 -1
  220. package/cjs/components/shared/xterm/utils/index.js +0 -2
  221. package/cjs/constants/arduino.js +10 -12
  222. package/cjs/constants/shortcutKeyMap.js +2 -4
  223. package/cjs/constants/stylesheets.js +5 -9
  224. package/cjs/hooks/useArduino.js +141 -284
  225. package/cjs/hooks/useExerciseFile.js +22 -26
  226. package/cjs/hooks/useExericseShortcut.js +4 -8
  227. package/cjs/hooks/useMaterialExerciseFileUrl.js +33 -57
  228. package/cjs/hooks/useRunnerRoomWebSocket.js +27 -53
  229. package/cjs/hooks/useStdioTextConcator.js +10 -22
  230. package/cjs/hooks/useStdioWebSocket.js +28 -34
  231. package/cjs/hooks/useUsercodeEditWebSocket.js +158 -240
  232. package/cjs/hooks/useUsercodeHistory.js +63 -117
  233. package/cjs/index.js +4 -6
  234. package/cjs/utils/arduino.js +11 -25
  235. package/cjs/utils/exerciseFile.js +10 -10
  236. package/cjs/utils/runner.js +15 -31
  237. package/es/components/material-exercise/MaterialExercise.i18n.js +2 -2
  238. package/es/components/material-exercise/MaterialExercise.js +34 -35
  239. package/es/components/material-exercise/MaterialExercise.styled.js +14 -14
  240. package/es/components/material-exercise/MaterialExerciseMobile.js +6 -9
  241. package/es/components/material-exercise/context/ExerciseIntlProvider.js +10 -8
  242. package/es/components/material-exercise/context/ExerciseProvider.js +52 -55
  243. package/es/components/material-exercise/context/ExerciseProviderNoImage.js +10 -10
  244. package/es/components/material-exercise/context/context.js +1 -1
  245. package/es/components/material-exercise/context/recoil.js +290 -535
  246. package/es/components/material-exercise/context/subjects.js +3 -3
  247. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +51 -53
  248. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +8 -8
  249. package/es/components/material-exercise/exercise-file/ExerciseFile.js +9 -8
  250. package/es/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +127 -193
  251. package/es/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +5 -4
  252. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +20 -31
  253. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.js +35 -44
  254. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +1 -1
  255. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +181 -315
  256. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +1 -1
  257. package/es/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +11 -10
  258. package/es/components/material-exercise/exercise-menu/ExerciseMenu.js +7 -6
  259. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +3 -3
  260. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +25 -42
  261. package/es/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +26 -51
  262. package/es/components/material-exercise/exercise-menu/ExerciseMenuReset.js +11 -23
  263. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +21 -31
  264. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +12 -12
  265. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +19 -26
  266. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +1 -1
  267. package/es/components/material-exercise/exercise-preview/ExercisePreview.js +15 -14
  268. package/es/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +5 -11
  269. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +11 -15
  270. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +5 -9
  271. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +78 -80
  272. package/es/components/material-exercise/exercise-room/ExerciseRoom.js +6 -13
  273. package/es/components/material-exercise/exercise-room/ExerciseRoom.styled.js +12 -14
  274. package/es/components/material-exercise/exercise-room/ExerciseRoomDetail.js +134 -236
  275. package/es/components/material-exercise/exercise-room/ExerciseRoomList.js +65 -94
  276. package/es/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -2
  277. package/es/components/material-exercise/exercise-runner/ExerciseRunner.js +116 -167
  278. package/es/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +1 -1
  279. package/es/components/material-exercise/exercise-runner/ExerciseRunnerController.js +8 -7
  280. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +17 -27
  281. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +11 -18
  282. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +52 -50
  283. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +10 -14
  284. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +46 -75
  285. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +2 -2
  286. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +4 -4
  287. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +15 -21
  288. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +138 -253
  289. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +8 -8
  290. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +29 -37
  291. package/es/components/shared/exercise-menu-button/ExerciseMenuButton.js +12 -13
  292. package/es/components/shared/exercise-shimmer/ExerciseFileShimmer.js +2 -2
  293. package/es/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +12 -12
  294. package/es/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +2 -2
  295. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +14 -14
  296. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +9 -15
  297. package/es/components/shared/exercise-version-list/ExerciseVersionList.js +3 -2
  298. package/es/components/shared/exercise-version-list/ExerciseVersionList.styled.js +1 -1
  299. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.js +6 -5
  300. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +5 -9
  301. package/es/components/shared/file-icon/FileIcon.js +15 -17
  302. package/es/components/shared/file-tabs/FileTab.js +22 -24
  303. package/es/components/shared/file-tabs/FileTab.styled.js +15 -19
  304. package/es/components/shared/file-tabs/FileTabs.js +35 -55
  305. package/es/components/shared/file-tabs/FileTabs.styled.js +2 -2
  306. package/es/components/shared/file-tabs/util.js +14 -27
  307. package/es/components/shared/file-tree/FileTree.js +3 -3
  308. package/es/components/shared/file-tree/FileTreeConfig.js +18 -15
  309. package/es/components/shared/file-tree/FileTreeList.js +33 -29
  310. package/es/components/shared/file-tree/FileTreeListItemContent.js +45 -55
  311. package/es/components/shared/file-tree/FileTreeListItemContent.styled.js +21 -25
  312. package/es/components/shared/file-tree/FileTreeListItemContentInput.js +60 -64
  313. package/es/components/shared/file-tree/FileTreeListItemContentInput.styled.js +6 -6
  314. package/es/components/shared/file-tree/FileTreeListItemContentMenu.js +39 -46
  315. package/es/components/shared/file-tree/FileTreeListItems.js +134 -145
  316. package/es/components/shared/file-tree/FileTreeListItems.styled.js +2 -2
  317. package/es/components/shared/file-tree/FileTreeToolbar.js +25 -22
  318. package/es/components/shared/file-tree/FileTreeToolbar.styled.js +1 -1
  319. package/es/components/shared/file-tree/context/FileTreeContext.js +74 -89
  320. package/es/components/shared/file-tree/utils/fileTreeFiles.js +20 -20
  321. package/es/components/shared/file-tree/utils/fileTreeGenerator.js +146 -193
  322. package/es/components/shared/file-tree/utils/fileTreeItem.js +1 -1
  323. package/es/components/shared/file-tree/utils/fileTreePath.js +6 -5
  324. package/es/components/shared/file-viewer/FileViewer.js +21 -38
  325. package/es/components/shared/file-viewer/FileViewerCsv.js +70 -129
  326. package/es/components/shared/file-viewer/FileViewerImage.js +4 -3
  327. package/es/components/shared/file-viewer/FileViewerIpynb.js +7 -14
  328. package/es/components/shared/file-viewer/FileViewerNonViewable.js +15 -18
  329. package/es/components/shared/file-viewer/FileViewerText.js +9 -17
  330. package/es/components/shared/material-modal/MaterialModal.js +8 -7
  331. package/es/components/shared/material-modal/MaterialModal.styled.js +5 -5
  332. package/es/components/shared/monaco-editor/MonacoEditor.js +67 -87
  333. package/es/components/shared/monaco-editor/MonacoEditorLazy.js +2 -4
  334. package/es/components/shared/monaco-editor/MonacoEditorMobile.js +31 -41
  335. package/es/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +52 -66
  336. package/es/components/shared/monaco-editor/constants/grammars/index.js +28 -82
  337. package/es/components/shared/monaco-editor/constants/monaco/preferences.js +5 -5
  338. package/es/components/shared/monaco-editor/constants/themes/index.js +17 -49
  339. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +10 -11
  340. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +14 -15
  341. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +8 -9
  342. package/es/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +30 -34
  343. package/es/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +7 -9
  344. package/es/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +6 -6
  345. package/es/components/shared/monaco-editor/editor-languages/css/formatter.js +10 -33
  346. package/es/components/shared/monaco-editor/editor-languages/html/formatter.js +10 -33
  347. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -1
  348. package/es/components/shared/monaco-editor/editor-languages/typescript/formatter.js +10 -37
  349. package/es/components/shared/monaco-editor/editor-languages/typescript/index.js +3 -3
  350. package/es/components/shared/monaco-editor/hooks/useEditorOptions.js +5 -11
  351. package/es/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +12 -10
  352. package/es/components/shared/monaco-editor/utils/emmet/registerProvider.js +6 -12
  353. package/es/components/shared/monaco-editor/utils/grammar/index.js +24 -68
  354. package/es/components/shared/monaco-editor/utils/grammar/onigasm.js +6 -25
  355. package/es/components/shared/monaco-editor/utils/grammar/textmate.js +35 -67
  356. package/es/components/shared/monaco-editor/utils/monacoLanguage.js +5 -5
  357. package/es/components/shared/monaco-editor/utils/monacoPreference.js +4 -6
  358. package/es/components/shared/monaco-editor/utils/prettier/config.js +2 -2
  359. package/es/components/shared/monaco-editor/utils/prettier/index.js +7 -27
  360. package/es/components/shared/monaco-editor/utils/theme/convert.js +13 -19
  361. package/es/components/shared/monaco-editor/utils/theme/index.js +3 -22
  362. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +56 -77
  363. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +68 -82
  364. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +93 -120
  365. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +130 -152
  366. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +92 -104
  367. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -2
  368. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +6 -1
  369. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -2
  370. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +157 -172
  371. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -3
  372. package/es/components/shared/no-vnc/NoVnc.js +42 -59
  373. package/es/components/shared/no-vnc/NoVncLazy.js +2 -4
  374. package/es/components/shared/preview-container/PreviewContainer.js +8 -7
  375. package/es/components/shared/web-browser/WebBrowser.js +29 -40
  376. package/es/components/shared/xterm/Xterm.js +51 -69
  377. package/es/components/shared/xterm/XtermLazy.js +2 -4
  378. package/es/constants/arduino.js +10 -10
  379. package/es/constants/shortcutKeyMap.js +1 -3
  380. package/es/constants/stylesheets.js +5 -7
  381. package/es/hooks/useArduino.js +141 -278
  382. package/es/hooks/useExerciseFile.js +22 -24
  383. package/es/hooks/useExericseShortcut.js +4 -6
  384. package/es/hooks/useMaterialExerciseFileUrl.js +34 -52
  385. package/es/hooks/useRunnerRoomWebSocket.js +27 -51
  386. package/es/hooks/useStdioTextConcator.js +10 -16
  387. package/es/hooks/useStdioWebSocket.js +28 -32
  388. package/es/hooks/useUsercodeEditWebSocket.js +157 -232
  389. package/es/hooks/useUsercodeHistory.js +63 -115
  390. package/es/utils/arduino.js +11 -23
  391. package/es/utils/exerciseFile.js +10 -8
  392. package/es/utils/runner.js +15 -29
  393. package/package.json +11 -7
  394. package/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -521
  395. package/es/_virtual/_rollupPluginBabelHelpers.js +0 -499
@@ -2,7 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
6
5
  var React = require('react');
7
6
  var reactIntl = require('react-intl');
8
7
  var blocks = require('@elice/blocks');
@@ -15,113 +14,99 @@ require('../context/recoilTypes.js');
15
14
  require('../context/subjects.js');
16
15
  require('../context/ExerciseProvider.js');
17
16
 
18
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
-
20
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
21
- var FileSaver__default = /*#__PURE__*/_interopDefaultLegacy(FileSaver);
22
-
23
- var ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_KEY = 'elice-material-exercise-arduino-agent-modal-closed';
24
- var ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_VALUE = 'true';
25
- var ARDUINO_AGENT_MAC_DOWNLOAD_URL = 'https://eli.so/arduino-agent-mac';
26
- var ARDUINO_AGENT_WIN_DOWNLOAD_URL = 'https://eli.so/arduino-agent-win';
27
- var ARDUINO_AGENT_MANUAL_URL = 'https://eli.so/arduino-faq';
28
- var ExerciseRunnerControllerArduinoAgentModal = function ExerciseRunnerControllerArduinoAgentModal() {
29
- var intl = reactIntl.useIntl();
30
- var _useRecoilState = recoil.useRecoilState(recoil$1.exerciseArduinoAgentModalState),
31
- _useRecoilState2 = _rollupPluginBabelHelpers.slicedToArray(_useRecoilState, 2),
32
- open = _useRecoilState2[0],
33
- setOpen = _useRecoilState2[1];
34
- React__default["default"].useEffect(function () {
35
- var isConfirmed = localStorage.getItem(ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_KEY) === ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_VALUE;
17
+ const ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_KEY = 'elice-material-exercise-arduino-agent-modal-closed';
18
+ const ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_VALUE = 'true';
19
+ const ARDUINO_AGENT_MAC_DOWNLOAD_URL = 'https://eli.so/arduino-agent-mac';
20
+ const ARDUINO_AGENT_WIN_DOWNLOAD_URL = 'https://eli.so/arduino-agent-win';
21
+ const ARDUINO_AGENT_MANUAL_URL = 'https://eli.so/arduino-faq';
22
+ const ExerciseRunnerControllerArduinoAgentModal = () => {
23
+ const intl = reactIntl.useIntl();
24
+ const [open, setOpen] = recoil.useRecoilState(recoil$1.exerciseArduinoAgentModalState);
25
+ React.useEffect(() => {
26
+ const isConfirmed = localStorage.getItem(ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_KEY) === ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_VALUE;
36
27
  if (!isConfirmed) {
37
28
  setOpen(true);
38
29
  }
39
30
  }, [setOpen]);
40
- var handleClose = function handleClose() {
31
+ const handleClose = () => {
41
32
  setOpen(false);
42
33
  localStorage.setItem(ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_KEY, ELICE_MATERIAL_EXERCISE_ARDUINO_AGENT_MODAL_VALUE);
43
34
  };
44
- var handleDownload = function handleDownload(fileUrl) {
45
- FileSaver__default["default"].saveAs(fileUrl);
35
+ const handleDownload = fileUrl => {
36
+ FileSaver.saveAs(fileUrl);
46
37
  };
47
- var renderAgentInstallInstruction = function renderAgentInstallInstruction() {
48
- return React__default["default"].createElement(React__default["default"].Fragment, null, React__default["default"].createElement(blocks.Text, {
38
+ const renderAgentInstallInstruction = () => {
39
+ return React.createElement(React.Fragment, null, React.createElement(blocks.Text, {
49
40
  bold: true,
50
41
  role: "gray0"
51
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
42
+ }, React.createElement(reactIntl.FormattedMessage, {
52
43
  id: "exerciseRunner.controller.arduino.agent.instruction.install"
53
- })), React__default["default"].createElement(blocks.Vspace, {
44
+ })), React.createElement(blocks.Vspace, {
54
45
  height: 0.25
55
- }), React__default["default"].createElement(blocks.Text, {
46
+ }), React.createElement(blocks.Text, {
56
47
  role: "navy",
57
48
  size: "small"
58
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
49
+ }, React.createElement(reactIntl.FormattedMessage, {
59
50
  id: "exerciseRunner.controller.arduino.agent.instruction.install.detail"
60
- })), React__default["default"].createElement(blocks.Vspace, {
51
+ })), React.createElement(blocks.Vspace, {
61
52
  height: 0.75
62
- }), React__default["default"].createElement(blocks.Flex, null, React__default["default"].createElement(blocks.Button, {
53
+ }), React.createElement(blocks.Flex, null, React.createElement(blocks.Button, {
63
54
  size: "tiny",
64
55
  role: "gray1",
65
- icon: React__default["default"].createElement(blocks.Icon, {
56
+ icon: React.createElement(blocks.Icon, {
66
57
  icon: icons.eisWindows,
67
58
  size: "huge"
68
59
  }),
69
60
  iconAlign: "left",
70
- onClick: function onClick() {
71
- return handleDownload(ARDUINO_AGENT_WIN_DOWNLOAD_URL);
72
- }
73
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
61
+ onClick: () => handleDownload(ARDUINO_AGENT_WIN_DOWNLOAD_URL)
62
+ }, React.createElement(reactIntl.FormattedMessage, {
74
63
  id: "exerciseRunner.controller.arduino.agent.instruction.install.window"
75
- })), React__default["default"].createElement(blocks.Hspace, {
64
+ })), React.createElement(blocks.Hspace, {
76
65
  width: 0.75
77
- }), React__default["default"].createElement(blocks.Button, {
66
+ }), React.createElement(blocks.Button, {
78
67
  size: "tiny",
79
68
  role: "gray1",
80
- icon: React__default["default"].createElement(blocks.Icon, {
69
+ icon: React.createElement(blocks.Icon, {
81
70
  icon: icons.eisMac
82
71
  }),
83
72
  iconAlign: "left",
84
- onClick: function onClick() {
85
- return handleDownload(ARDUINO_AGENT_MAC_DOWNLOAD_URL);
86
- }
87
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
73
+ onClick: () => handleDownload(ARDUINO_AGENT_MAC_DOWNLOAD_URL)
74
+ }, React.createElement(reactIntl.FormattedMessage, {
88
75
  id: "exerciseRunner.controller.arduino.agent.instruction.install.mac"
89
76
  }))));
90
77
  };
91
- var renderAgentConnectionInstruction = function renderAgentConnectionInstruction() {
92
- return React__default["default"].createElement(React__default["default"].Fragment, null, React__default["default"].createElement(blocks.Text, {
78
+ const renderAgentConnectionInstruction = () => {
79
+ return React.createElement(React.Fragment, null, React.createElement(blocks.Text, {
93
80
  role: "gray0",
94
81
  bold: true
95
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
82
+ }, React.createElement(reactIntl.FormattedMessage, {
96
83
  id: "exerciseRunner.controller.arduino.agent.instruction.connect"
97
- })), React__default["default"].createElement(blocks.Vspace, {
84
+ })), React.createElement(blocks.Vspace, {
98
85
  height: 0.25
99
- }), React__default["default"].createElement(blocks.Text, {
86
+ }), React.createElement(blocks.Text, {
100
87
  role: "navy",
101
88
  size: "small",
102
89
  lineHeight: 1.6
103
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
90
+ }, React.createElement(reactIntl.FormattedMessage, {
104
91
  id: "exerciseRunner.controller.arduino.agent.instruction.connect.detail"
105
- })), React__default["default"].createElement(blocks.Vspace, {
92
+ })), React.createElement(blocks.Vspace, {
106
93
  height: 0.75
107
- }), React__default["default"].createElement(blocks.Button, {
108
- icon: React__default["default"].createElement(blocks.Icon, {
94
+ }), React.createElement(blocks.Button, {
95
+ icon: React.createElement(blocks.Icon, {
109
96
  icon: icons.eilArrowRightwardsBasic
110
97
  }),
111
98
  iconAlign: "right",
112
99
  size: "tiny",
113
100
  role: "secondary",
114
- onClick: function onClick() {
115
- return window.open(ARDUINO_AGENT_MANUAL_URL);
116
- }
117
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
101
+ onClick: () => window.open(ARDUINO_AGENT_MANUAL_URL)
102
+ }, React.createElement(reactIntl.FormattedMessage, {
118
103
  id: "exerciseRunner.controller.arduino.agent.instruction.connect.button"
119
104
  })));
120
105
  };
121
106
  if (!open) {
122
107
  return null;
123
108
  }
124
- return React__default["default"].createElement(blocks.Modal, {
109
+ return React.createElement(blocks.Modal, {
125
110
  theme: "dark",
126
111
  title: intl.formatMessage({
127
112
  id: 'exerciseRunner.controller.arduino.agent.title'
@@ -133,9 +118,9 @@ var ExerciseRunnerControllerArduinoAgentModal = function ExerciseRunnerControlle
133
118
  onClick: handleClose
134
119
  }],
135
120
  onHide: handleClose
136
- }, React__default["default"].createElement(React__default["default"].Fragment, null, renderAgentInstallInstruction(), React__default["default"].createElement(blocks.Vspace, {
121
+ }, React.createElement(React.Fragment, null, renderAgentInstallInstruction(), React.createElement(blocks.Vspace, {
137
122
  height: 1.5
138
123
  }), renderAgentConnectionInstruction()));
139
124
  };
140
125
 
141
- exports["default"] = ExerciseRunnerControllerArduinoAgentModal;
126
+ exports.default = ExerciseRunnerControllerArduinoAgentModal;
@@ -2,7 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
6
5
  var React = require('react');
7
6
  var reactIntl = require('react-intl');
8
7
  var blocks = require('@elice/blocks');
@@ -16,29 +15,18 @@ require('../context/subjects.js');
16
15
  require('../context/ExerciseProvider.js');
17
16
  var ExerciseRunnerControllerStatusIndicator = require('./ExerciseRunnerControllerStatusIndicator.js');
18
17
 
19
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
-
21
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
23
-
24
- var StyledMessageWrapper = styled__default["default"](blocks.Flex).withConfig({
18
+ const StyledMessageWrapper = styled(blocks.Flex).withConfig({
25
19
  componentId: "sc-19z7lun-0"
26
20
  })(["height:1rem;"]);
27
- var ExerciseRunnerControllerArduinoStatusMessage = function ExerciseRunnerControllerArduinoStatusMessage() {
28
- var intl = reactIntl.useIntl();
29
- var ports = recoil.useRecoilValue(recoil$1.exerciseArduinoPortsState);
30
- var _useState = React.useState(''),
31
- _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
32
- message = _useState2[0],
33
- setMessage = _useState2[1];
34
- var _useState3 = React.useState('error'),
35
- _useState4 = _rollupPluginBabelHelpers.slicedToArray(_useState3, 2),
36
- status = _useState4[0],
37
- setStatus = _useState4[1];
38
- var arduinoOpenedPort = recoil.useRecoilValue(recoil$1.exerciseArduinoOpenedPortNameState);
39
- var arduinoUploadProgress = recoil.useRecoilValue(recoil$1.exerciseArduinoUploadProgressState);
40
- var arduinoAgentConnectionStatus = recoil.useRecoilValue(recoil$1.exerciseArduinoAgentConnectionState);
41
- React.useEffect(function () {
21
+ const ExerciseRunnerControllerArduinoStatusMessage = () => {
22
+ const intl = reactIntl.useIntl();
23
+ const ports = recoil.useRecoilValue(recoil$1.exerciseArduinoPortsState);
24
+ const [message, setMessage] = React.useState('');
25
+ const [status, setStatus] = React.useState('error');
26
+ const arduinoOpenedPort = recoil.useRecoilValue(recoil$1.exerciseArduinoOpenedPortNameState);
27
+ const arduinoUploadProgress = recoil.useRecoilValue(recoil$1.exerciseArduinoUploadProgressState);
28
+ const arduinoAgentConnectionStatus = recoil.useRecoilValue(recoil$1.exerciseArduinoAgentConnectionState);
29
+ React.useEffect(() => {
42
30
  if (arduinoAgentConnectionStatus === 'disconnected') {
43
31
  setStatus('error');
44
32
  setMessage(intl.formatMessage({
@@ -81,7 +69,7 @@ var ExerciseRunnerControllerArduinoStatusMessage = function ExerciseRunnerContro
81
69
  case 'error':
82
70
  case 'done':
83
71
  default:
84
- var device = arduino.getPortFromName(ports, arduinoOpenedPort);
72
+ const device = arduino.getPortFromName(ports, arduinoOpenedPort);
85
73
  if (device) {
86
74
  setMessage(intl.formatMessage({
87
75
  id: 'exerciseRunner.controller.arduino.connectionStatus.connectedDevice'
@@ -99,14 +87,14 @@ var ExerciseRunnerControllerArduinoStatusMessage = function ExerciseRunnerContro
99
87
  //
100
88
  //
101
89
  //
102
- return React__default["default"].createElement(StyledMessageWrapper, {
90
+ return React.createElement(StyledMessageWrapper, {
103
91
  align: "center"
104
- }, React__default["default"].createElement(ExerciseRunnerControllerStatusIndicator["default"], {
92
+ }, React.createElement(ExerciseRunnerControllerStatusIndicator.default, {
105
93
  status: status
106
- }), React__default["default"].createElement(blocks.Text, {
94
+ }), React.createElement(blocks.Text, {
107
95
  role: "gray3",
108
96
  size: "tiny"
109
97
  }, message));
110
98
  };
111
99
 
112
- exports["default"] = ExerciseRunnerControllerArduinoStatusMessage;
100
+ exports.default = ExerciseRunnerControllerArduinoStatusMessage;
@@ -28,72 +28,69 @@ require('unicount');
28
28
  var ExerciseRunnerContext = require('./ExerciseRunnerContext.js');
29
29
  var ExerciseRunnerControllerCodeHelpRequestButton = require('./ExerciseRunnerControllerCodeHelpRequestButton.js');
30
30
 
31
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
32
-
33
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
34
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
35
-
36
- var StyledControllerButton = styled__default["default"](blocks.Button).withConfig({
31
+ const StyledControllerButton = styled(blocks.Button).withConfig({
37
32
  componentId: "sc-d9xhed-0"
38
33
  })(["position:relative;transition:none;"]);
39
- var StyledControllerButtonWrap = styled__default["default"].div.withConfig({
34
+ const StyledControllerButtonWrap = styled.div.withConfig({
40
35
  componentId: "sc-d9xhed-1"
41
36
  })(["display:flex;"]);
42
- var StyledControllerButtonGroup = styled__default["default"].div.withConfig({
37
+ const StyledControllerButtonGroup = styled.div.withConfig({
43
38
  componentId: "sc-d9xhed-2"
44
39
  })(["display:flex;flex-direction:row;align-items:center;> ", ",> ", "{margin-right:0.5rem;&:last-child{margin-right:0;}}"], StyledControllerButtonWrap, StyledControllerButton);
45
- var ExerciseRunnerControllerButtonGroup = function ExerciseRunnerControllerButtonGroup() {
40
+ const ExerciseRunnerControllerButtonGroup = () => {
46
41
  var _a;
47
- var intl = reactIntl.useIntl();
48
- var _React$useContext = React__default["default"].useContext(context.ExerciseContext),
49
- materialExerciseId = _React$useContext.materialExerciseId,
50
- onCodeHelpRequest = _React$useContext.onCodeHelpRequest;
51
- var _React$useContext2 = React__default["default"].useContext(ExerciseRunnerContext.ExerciseRunnerContext),
52
- onSubmit = _React$useContext2.onSubmit,
53
- onSyncRequest = _React$useContext2.onSyncRequest,
54
- onCancel = _React$useContext2.onCancel;
55
- var runnerWebsocketStatus = recoil.useRecoilValue(recoil$1.exerciseRunnerWebSocketStatusQuery);
56
- var editorCursorSelectionValue = recoil.useRecoilValue(recoil$1.exerciseFileEditorCursorSelectionValueState);
57
- var exercise = recoil.useRecoilValue(recoil$1.exerciseState(materialExerciseId));
58
- var exerciseRunType = recoil.useRecoilValue(recoil$1.exerciseRunnerRunTypeState);
59
- var exerciseWithNoGrade = Boolean(exercise === null || exercise === void 0 ? void 0 : exercise.isNoSubmitGrade);
60
- var lecture = recoil.useRecoilValue(recoil$1.exerciseLectureState(exercise === null || exercise === void 0 ? void 0 : exercise._lectureId));
61
- var isTestLecture = (lecture === null || lecture === void 0 ? void 0 : lecture.lectureType) === types.enums.LectureType.Test;
62
- var isTestLectureCompleted = (lecture === null || lecture === void 0 ? void 0 : lecture.testAdmissionStatus) === types.enums.TestAdmissionStatus.Completed;
42
+ const intl = reactIntl.useIntl();
43
+ const {
44
+ materialExerciseId,
45
+ onCodeHelpRequest
46
+ } = React.useContext(context.ExerciseContext);
47
+ const {
48
+ onSubmit,
49
+ onSyncRequest,
50
+ onCancel
51
+ } = React.useContext(ExerciseRunnerContext.ExerciseRunnerContext);
52
+ const runnerWebsocketStatus = recoil.useRecoilValue(recoil$1.exerciseRunnerWebSocketStatusQuery);
53
+ const editorCursorSelectionValue = recoil.useRecoilValue(recoil$1.exerciseFileEditorCursorSelectionValueState);
54
+ const exercise = recoil.useRecoilValue(recoil$1.exerciseState(materialExerciseId));
55
+ const exerciseRunType = recoil.useRecoilValue(recoil$1.exerciseRunnerRunTypeState);
56
+ const exerciseWithNoGrade = Boolean(exercise === null || exercise === void 0 ? void 0 : exercise.isNoSubmitGrade);
57
+ const lecture = recoil.useRecoilValue(recoil$1.exerciseLectureState(exercise === null || exercise === void 0 ? void 0 : exercise._lectureId));
58
+ const isTestLecture = (lecture === null || lecture === void 0 ? void 0 : lecture.lectureType) === types.enums.LectureType.Test;
59
+ const isTestLectureCompleted = (lecture === null || lecture === void 0 ? void 0 : lecture.testAdmissionStatus) === types.enums.TestAdmissionStatus.Completed;
63
60
  // runner states
64
- var isSubmitting = recoil.useRecoilValue(recoil$1.exerciseRunnerSubmittingState);
65
- var isRunning = recoil.useRecoilValue(recoil$1.exerciseRunnerRunningState);
66
- var isConnecting = runnerWebsocketStatus === websocket.EliceWebSocket.CONNECTING;
67
- var isNotReady = runnerWebsocketStatus !== websocket.EliceWebSocket.OPEN;
61
+ const isSubmitting = recoil.useRecoilValue(recoil$1.exerciseRunnerSubmittingState);
62
+ const isRunning = recoil.useRecoilValue(recoil$1.exerciseRunnerRunningState);
63
+ const isConnecting = runnerWebsocketStatus === websocket.EliceWebSocket.CONNECTING;
64
+ const isNotReady = runnerWebsocketStatus !== websocket.EliceWebSocket.OPEN;
68
65
  // arduino
69
- var isArduinoExercise = (exercise === null || exercise === void 0 ? void 0 : exercise.envType) === types.enums.ExerciseEnvType.Arduino;
70
- var arduinoUploadProgress = recoil.useRecoilValue(recoil$1.exerciseArduinoUploadProgressState);
71
- var arduinoOpenedPortName = recoil.useRecoilValue(recoil$1.exerciseArduinoOpenedPortNameState);
66
+ const isArduinoExercise = (exercise === null || exercise === void 0 ? void 0 : exercise.envType) === types.enums.ExerciseEnvType.Arduino;
67
+ const arduinoUploadProgress = recoil.useRecoilValue(recoil$1.exerciseArduinoUploadProgressState);
68
+ const arduinoOpenedPortName = recoil.useRecoilValue(recoil$1.exerciseArduinoOpenedPortNameState);
72
69
  // monaco editor apis
73
- var exerciseMonacoEditorApis = recoil.useRecoilValue(recoil$1.exerciseMonacoEditorApisState);
70
+ const exerciseMonacoEditorApis = recoil.useRecoilValue(recoil$1.exerciseMonacoEditorApisState);
74
71
  //
75
72
  // ========= ui states =========
76
73
  //
77
74
  // submit run
78
- var isSubmitRunHidden = isRunning;
79
- var isSubmitRunArduinoDisabled = isArduinoExercise ? arduinoUploadProgress !== 'ready' && arduinoUploadProgress !== 'error' || !arduinoOpenedPortName : false;
80
- var isSubmitRunDisabled = isSubmitRunHidden || isSubmitRunArduinoDisabled || isNotReady || isConnecting || isSubmitting;
75
+ const isSubmitRunHidden = isRunning;
76
+ const isSubmitRunArduinoDisabled = isArduinoExercise ? arduinoUploadProgress !== 'ready' && arduinoUploadProgress !== 'error' || !arduinoOpenedPortName : false;
77
+ const isSubmitRunDisabled = isSubmitRunHidden || isSubmitRunArduinoDisabled || isNotReady || isConnecting || isSubmitting;
81
78
  // submit grade
82
- var isSubmitGradeHidden = isRunning;
83
- var isSubmitGradeDisabled = isSubmitGradeHidden || exerciseWithNoGrade || isTestLecture && isTestLectureCompleted || isNotReady || isConnecting || isSubmitting;
79
+ const isSubmitGradeHidden = isRunning;
80
+ const isSubmitGradeDisabled = isSubmitGradeHidden || exerciseWithNoGrade || isTestLecture && isTestLectureCompleted || isNotReady || isConnecting || isSubmitting;
84
81
  // cancel
85
- var isCancelHidden = !isRunning;
86
- var isCancelDisabled = isCancelHidden || isNotReady || isConnecting;
82
+ const isCancelHidden = !isRunning;
83
+ const isCancelDisabled = isCancelHidden || isNotReady || isConnecting;
87
84
  // sync request
88
- var isSyncRequestHidden = !isRunning || !((_a = exercise === null || exercise === void 0 ? void 0 : exercise.readyExerciseImage) === null || _a === void 0 ? void 0 : _a.httpPort);
89
- var isSyncRequestDisabled = isSyncRequestHidden || isNotReady || isConnecting;
85
+ const isSyncRequestHidden = !isRunning || !((_a = exercise === null || exercise === void 0 ? void 0 : exercise.readyExerciseImage) === null || _a === void 0 ? void 0 : _a.httpPort);
86
+ const isSyncRequestDisabled = isSyncRequestHidden || isNotReady || isConnecting;
90
87
  //
91
88
  //
92
89
  //
93
90
  /**
94
91
  * Submit to run
95
92
  */
96
- var handleSubmitRun = function handleSubmitRun() {
93
+ const handleSubmitRun = () => {
97
94
  if (!isSubmitRunDisabled) {
98
95
  void onSubmit(types.enums.ExerciseRunType.Run);
99
96
  }
@@ -101,7 +98,7 @@ var ExerciseRunnerControllerButtonGroup = function ExerciseRunnerControllerButto
101
98
  /**
102
99
  * Submit to grade
103
100
  */
104
- var handleSubmitGrade = function handleSubmitGrade() {
101
+ const handleSubmitGrade = () => {
105
102
  if (!isSubmitGradeDisabled) {
106
103
  void onSubmit(types.enums.ExerciseRunType.Grade);
107
104
  }
@@ -109,7 +106,7 @@ var ExerciseRunnerControllerButtonGroup = function ExerciseRunnerControllerButto
109
106
  /**
110
107
  * Cancel
111
108
  */
112
- var handleCancel = function handleCancel() {
109
+ const handleCancel = () => {
113
110
  if (!isCancelDisabled) {
114
111
  onCancel();
115
112
  }
@@ -117,7 +114,7 @@ var ExerciseRunnerControllerButtonGroup = function ExerciseRunnerControllerButto
117
114
  /**
118
115
  * Sync request
119
116
  */
120
- var handleSyncRequest = function handleSyncRequest() {
117
+ const handleSyncRequest = () => {
121
118
  if (!isSyncRequestDisabled) {
122
119
  onSyncRequest();
123
120
  }
@@ -132,9 +129,9 @@ var ExerciseRunnerControllerButtonGroup = function ExerciseRunnerControllerButto
132
129
  //
133
130
  // handle save action emitted by file editor
134
131
  //
135
- React__default["default"].useEffect(function () {
136
- var saveActionSub = subjects.exerciseFileEditorSaveAction$.subscribe(handleSyncRequest);
137
- return function () {
132
+ React.useEffect(() => {
133
+ const saveActionSub = subjects.exerciseFileEditorSaveAction$.subscribe(handleSyncRequest);
134
+ return () => {
138
135
  saveActionSub.unsubscribe();
139
136
  };
140
137
  },
@@ -143,87 +140,87 @@ var ExerciseRunnerControllerButtonGroup = function ExerciseRunnerControllerButto
143
140
  /**
144
141
  * Submit to run button
145
142
  */
146
- var renderSubmitRunButton = function renderSubmitRunButton() {
143
+ const renderSubmitRunButton = () => {
147
144
  if (isSubmitRunHidden) {
148
145
  return null;
149
146
  }
150
- return React__default["default"].createElement(StyledControllerButton, {
147
+ return React.createElement(StyledControllerButton, {
151
148
  size: "tiny",
152
149
  loading: isConnecting || isSubmitting && exerciseRunType === types.enums.ExerciseRunType.Run,
153
150
  disabled: isSubmitRunDisabled,
154
151
  onClick: handleSubmitRun
155
- }, isArduinoExercise ? React__default["default"].createElement(reactIntl.FormattedMessage, {
152
+ }, isArduinoExercise ? React.createElement(reactIntl.FormattedMessage, {
156
153
  id: "exerciseRunner.controller.buttonGroup.button.compile"
157
- }) : React__default["default"].createElement(reactIntl.FormattedMessage, {
154
+ }) : React.createElement(reactIntl.FormattedMessage, {
158
155
  id: "exerciseRunner.controller.buttonGroup.button.run"
159
156
  }));
160
157
  };
161
158
  /**
162
159
  * Submit to grade button
163
160
  */
164
- var renderSubmitGradeButton = function renderSubmitGradeButton() {
161
+ const renderSubmitGradeButton = () => {
165
162
  if (isSubmitGradeHidden) {
166
163
  return null;
167
164
  }
168
- return React__default["default"].createElement(blocks.Tooltip, {
165
+ return React.createElement(blocks.Tooltip, {
169
166
  title: exerciseWithNoGrade ? intl.formatMessage({
170
167
  id: 'exerciseRunner.controller.buttonGroup.button.submit.tooltip.noSubmit'
171
168
  }) : undefined,
172
169
  placement: "top",
173
170
  dark: true
174
- }, React__default["default"].createElement(StyledControllerButtonWrap, null, React__default["default"].createElement(StyledControllerButton, {
171
+ }, React.createElement(StyledControllerButtonWrap, null, React.createElement(StyledControllerButton, {
175
172
  size: "tiny",
176
173
  role: "secondary",
177
174
  loading: isConnecting || isSubmitting && exerciseRunType === types.enums.ExerciseRunType.Grade,
178
175
  disabled: isSubmitGradeDisabled,
179
176
  onClick: handleSubmitGrade
180
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
177
+ }, React.createElement(reactIntl.FormattedMessage, {
181
178
  id: "exerciseRunner.controller.buttonGroup.button.submit"
182
179
  }))));
183
180
  };
184
181
  /**
185
182
  * Cancel button
186
183
  */
187
- var renderCancelButton = function renderCancelButton() {
184
+ const renderCancelButton = () => {
188
185
  if (isCancelHidden) {
189
186
  return null;
190
187
  }
191
- return React__default["default"].createElement(StyledControllerButton, {
188
+ return React.createElement(StyledControllerButton, {
192
189
  size: "tiny",
193
190
  role: "danger",
194
191
  loading: isConnecting,
195
192
  disabled: isCancelDisabled,
196
193
  onClick: handleCancel
197
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
194
+ }, React.createElement(reactIntl.FormattedMessage, {
198
195
  id: "exerciseRunner.controller.buttonGroup.button.stop"
199
196
  }));
200
197
  };
201
198
  /**
202
199
  * Sync request button
203
200
  */
204
- var renderSyncRequestButton = function renderSyncRequestButton() {
201
+ const renderSyncRequestButton = () => {
205
202
  if (isSyncRequestHidden) {
206
203
  return null;
207
204
  }
208
- return React__default["default"].createElement(StyledControllerButton, {
205
+ return React.createElement(StyledControllerButton, {
209
206
  size: "tiny",
210
207
  role: "secondary",
211
208
  loading: isConnecting,
212
209
  disabled: isSyncRequestDisabled,
213
210
  onClick: handleSyncRequest
214
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
211
+ }, React.createElement(reactIntl.FormattedMessage, {
215
212
  id: "exerciseRunner.controller.buttonGroup.button.syncRequest"
216
213
  }));
217
214
  };
218
215
  /**
219
216
  * Code help button
220
217
  */
221
- var renderCodeHelpRequestButton = function renderCodeHelpRequestButton() {
218
+ const renderCodeHelpRequestButton = () => {
222
219
  if (isRunning || !editorCursorSelectionValue || typeof onCodeHelpRequest !== 'function') {
223
220
  return null;
224
221
  }
225
- return React__default["default"].createElement(ExerciseRunnerControllerCodeHelpRequestButton["default"], {
226
- onClick: function onClick() {
222
+ return React.createElement(ExerciseRunnerControllerCodeHelpRequestButton.default, {
223
+ onClick: () => {
227
224
  var _a, _b, _c;
228
225
  onCodeHelpRequest({
229
226
  code: editorCursorSelectionValue,
@@ -237,7 +234,7 @@ var ExerciseRunnerControllerButtonGroup = function ExerciseRunnerControllerButto
237
234
  //
238
235
  //
239
236
  //
240
- return React__default["default"].createElement(StyledControllerButtonGroup, null, renderSubmitRunButton(), renderSubmitGradeButton(), renderCancelButton(), renderSyncRequestButton(), renderCodeHelpRequestButton());
237
+ return React.createElement(StyledControllerButtonGroup, null, renderSubmitRunButton(), renderSubmitGradeButton(), renderCancelButton(), renderSyncRequestButton(), renderCodeHelpRequestButton());
241
238
  };
242
239
 
243
- exports["default"] = ExerciseRunnerControllerButtonGroup;
240
+ exports.default = ExerciseRunnerControllerButtonGroup;
@@ -2,7 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
6
5
  var React = require('react');
7
6
  var reactIntl = require('react-intl');
8
7
  var blocks = require('@elice/blocks');
@@ -15,27 +14,19 @@ require('../context/recoilTypes.js');
15
14
  require('../context/subjects.js');
16
15
  require('../context/ExerciseProvider.js');
17
16
 
18
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
-
20
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
21
- var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
22
-
23
- var ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_KEY = 'elice-material-exercise-aibot-tooltip-hidden';
24
- var ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_VALUE = 'true';
25
- var StyledControllerButton = styled__default["default"](blocks.Button).withConfig({
17
+ const ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_KEY = 'elice-material-exercise-aibot-tooltip-hidden';
18
+ const ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_VALUE = 'true';
19
+ const StyledControllerButton = styled(blocks.Button).withConfig({
26
20
  componentId: "sc-10grd0k-0"
27
21
  })(["position:relative;transition:none;"]);
28
- var ExerciseRunnerControllerCodeHelpRequestButton = React__default["default"].forwardRef(function (props, ref) {
29
- var _React$useState = React__default["default"].useState(false),
30
- _React$useState2 = _rollupPluginBabelHelpers.slicedToArray(_React$useState, 2),
31
- isTooltipHidden = _React$useState2[0],
32
- setIsTooltipHidden = _React$useState2[1];
33
- var isAibotInfoEnabled = recoil.useRecoilValue(recoil$1.exerciseAibotInfoEnableState);
22
+ const ExerciseRunnerControllerCodeHelpRequestButton = React.forwardRef((props, ref) => {
23
+ const [isTooltipHidden, setIsTooltipHidden] = React.useState(false);
24
+ const isAibotInfoEnabled = recoil.useRecoilValue(recoil$1.exerciseAibotInfoEnableState);
34
25
  //
35
26
  //
36
27
  //
37
- React__default["default"].useEffect(function () {
38
- var isTooltipHidden = sessionStorage.getItem(ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_KEY) === ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_VALUE;
28
+ React.useEffect(() => {
29
+ const isTooltipHidden = sessionStorage.getItem(ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_KEY) === ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_VALUE;
39
30
  if (isTooltipHidden) {
40
31
  setIsTooltipHidden(true);
41
32
  return;
@@ -47,53 +38,53 @@ var ExerciseRunnerControllerCodeHelpRequestButton = React__default["default"].fo
47
38
  /**
48
39
  *
49
40
  */
50
- var renderAiBotTooltipTitle = function renderAiBotTooltipTitle() {
51
- return React__default["default"].createElement(blocks.Flex, {
41
+ const renderAiBotTooltipTitle = () => {
42
+ return React.createElement(blocks.Flex, {
52
43
  align: "center"
53
- }, React__default["default"].createElement(blocks.BadgeNext, {
44
+ }, React.createElement(blocks.BadgeNext, {
54
45
  role: "red"
55
- }, React__default["default"].createElement(blocks.Text, {
46
+ }, React.createElement(blocks.Text, {
56
47
  role: "white",
57
48
  size: "tiny",
58
49
  bold: true
59
- }, "NEW")), React__default["default"].createElement(blocks.Hspace, {
50
+ }, "NEW")), React.createElement(blocks.Hspace, {
60
51
  width: 0.625
61
- }), React__default["default"].createElement(blocks.Text, {
52
+ }), React.createElement(blocks.Text, {
62
53
  role: "gray9",
63
54
  size: "small",
64
55
  bold: true
65
- }, React__default["default"].createElement(reactIntl.FormattedMessage, {
56
+ }, React.createElement(reactIntl.FormattedMessage, {
66
57
  id: "exerciseRunner.controller.buttonGroup.button.tooltip.aiHelp"
67
- })), React__default["default"].createElement(blocks.Hspace, {
58
+ })), React.createElement(blocks.Hspace, {
68
59
  width: 0.625
69
- }), React__default["default"].createElement(blocks.IconButton, {
60
+ }), React.createElement(blocks.IconButton, {
70
61
  size: "tiny",
71
62
  role: "primary",
72
63
  hasPadding: false,
73
64
  border: false,
74
65
  icon: icons.eilMathsignMultiplyBasic,
75
- onClick: function onClick() {
66
+ onClick: () => {
76
67
  sessionStorage.setItem(ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_KEY, ELICE_MATERIAL_EXERCISE_AI_BOT_TOOLTIP_VALUE);
77
68
  setIsTooltipHidden(true);
78
69
  }
79
70
  }));
80
71
  };
81
- return isAibotInfoEnabled ? React__default["default"].createElement(blocks.Tooltip, {
72
+ return isAibotInfoEnabled ? React.createElement(blocks.Tooltip, {
82
73
  placement: "top",
83
74
  dark: false,
84
75
  visible: !isTooltipHidden,
85
76
  title: renderAiBotTooltipTitle()
86
- }, React__default["default"].createElement(StyledControllerButton, Object.assign({}, props, {
77
+ }, React.createElement(StyledControllerButton, Object.assign({}, props, {
87
78
  ref: ref,
88
79
  size: "tiny",
89
80
  role: "darkblue",
90
- icon: React__default["default"].createElement(blocks.Icon, {
81
+ icon: React.createElement(blocks.Icon, {
91
82
  icon: icons.eilArrowRightwardsBasic
92
83
  }),
93
84
  iconAlign: "right"
94
- }), React__default["default"].createElement(reactIntl.FormattedMessage, {
85
+ }), React.createElement(reactIntl.FormattedMessage, {
95
86
  id: "exerciseRunner.controller.buttonGroup.button.helpRequest"
96
87
  }))) : null;
97
88
  });
98
89
 
99
- exports["default"] = ExerciseRunnerControllerCodeHelpRequestButton;
90
+ exports.default = ExerciseRunnerControllerCodeHelpRequestButton;