@elice/material-exercise 1.240718.0-trasncript.2 → 1.240718.2

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