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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +117 -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 +120 -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
@@ -2,8 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
6
- var jsxRuntime = require('react/jsx-runtime');
7
5
  var React = require('react');
8
6
  var designTokens = require('@elice/design-tokens');
9
7
  var monaco = require('monaco-editor/esm/vs/editor/editor.api');
@@ -21,10 +19,7 @@ var index = require('./editor-languages/index.js');
21
19
  var useEditorOptions = require('./hooks/useEditorOptions.js');
22
20
  var monacoLanguage = require('./utils/monacoLanguage.js');
23
21
 
24
- function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
25
-
26
- function _interopNamespaceCompat(e) {
27
- if (e && typeof e === 'object' && 'default' in e) return e;
22
+ function _interopNamespaceDefault(e) {
28
23
  var n = Object.create(null);
29
24
  if (e) {
30
25
  Object.keys(e).forEach(function (k) {
@@ -41,9 +36,7 @@ function _interopNamespaceCompat(e) {
41
36
  return Object.freeze(n);
42
37
  }
43
38
 
44
- var React__default = /*#__PURE__*/_interopDefaultCompat(React);
45
- var monaco__namespace = /*#__PURE__*/_interopNamespaceCompat(monaco);
46
- var styled__default = /*#__PURE__*/_interopDefaultCompat(styled);
39
+ var monaco__namespace = /*#__PURE__*/_interopNamespaceDefault(monaco);
47
40
 
48
41
  //
49
42
  //
@@ -54,68 +47,59 @@ index$1.default().catch(console.warn);
54
47
  //
55
48
  //
56
49
  //
57
- var StyledMonacoEditorWrapper = styled__default.default.div.withConfig({
50
+ const StyledMonacoEditorWrapper = styled.div.withConfig({
58
51
  componentId: "sc-1j3uyex-0"
59
52
  })(["width:100%;height:100%;"]);
60
- var StyledMonacoEditor = styled__default.default.div.withConfig({
53
+ const StyledMonacoEditor = styled.div.withConfig({
61
54
  componentId: "sc-1j3uyex-1"
62
55
  })(["width:100%;height:100%;background-color:", ";", ""], designTokens.base.color.navy9, styles.cssRemoteMarker);
63
56
  /**
64
57
  *
65
58
  */
66
- var MonacoEditor = React.forwardRef(function (_ref, ref) {
67
- var _ref$defaultValue = _ref.defaultValue,
68
- defaultValue = _ref$defaultValue === void 0 ? '' : _ref$defaultValue,
69
- _ref$filename = _ref.filename,
70
- filename = _ref$filename === void 0 ? '/noname.txt' : _ref$filename,
71
- _ref$preference = _ref.preference,
72
- preference = _ref$preference === void 0 ? preferences.DEFAULT_MONACO_EDITOR_PREFERENCE : _ref$preference,
73
- _ref$markers = _ref.markers,
74
- markers = _ref$markers === void 0 ? [] : _ref$markers,
75
- _ref$width = _ref.width,
76
- width = _ref$width === void 0 ? '100%' : _ref$width,
77
- _ref$height = _ref.height,
78
- height = _ref$height === void 0 ? '100%' : _ref$height,
79
- _ref$noLanguageIntell = _ref.noLanguageIntellisense,
80
- noLanguageIntellisense = _ref$noLanguageIntell === void 0 ? false : _ref$noLanguageIntell,
81
- onLoad = _ref.onLoad,
82
- onChange = _ref.onChange,
83
- onSave = _ref.onSave,
84
- onCursor = _ref.onCursor,
85
- onScroll = _ref.onScroll,
86
- onThemeChange = _ref.onThemeChange;
59
+ const MonacoEditor = React.forwardRef(({
60
+ defaultValue = '',
61
+ filename = '/noname.txt',
62
+ preference = preferences.DEFAULT_MONACO_EDITOR_PREFERENCE,
63
+ markers = [],
64
+ width = '100%',
65
+ height = '100%',
66
+ noLanguageIntellisense = false,
67
+ onLoad,
68
+ onChange,
69
+ onSave,
70
+ onCursor,
71
+ onScroll,
72
+ onThemeChange
73
+ }, ref) => {
87
74
  /** Ref of element which wraps editor. */
88
- var editorElRef = React__default.default.useRef(null);
75
+ const editorElRef = React.useRef(null);
89
76
  /** Ref of editor exposed APIs. */
90
- var editorApis = React__default.default.useRef({});
77
+ const editorApis = React.useRef({});
91
78
  /** Ref of monaco editor. */
92
- var editor = React__default.default.useRef(null);
79
+ const editor = React.useRef(null);
93
80
  /** Editor options. */
94
- var editorOptions = useEditorOptions.useEditorOptions({
95
- width: width,
96
- height: height,
97
- preference: preference,
98
- noLanguageIntellisense: noLanguageIntellisense
81
+ const editorOptions = useEditorOptions.useEditorOptions({
82
+ width,
83
+ height,
84
+ preference,
85
+ noLanguageIntellisense
99
86
  });
100
87
  /** Ref for preventing change event. */
101
- var suppress = React__default.default.useRef(false);
88
+ const suppress = React.useRef(false);
102
89
  /** Is editor ready? */
103
- var _React$useState = React__default.default.useState(false),
104
- _React$useState2 = _rollupPluginBabelHelpers.slicedToArray(_React$useState, 2),
105
- isReady = _React$useState2[0],
106
- setReady = _React$useState2[1];
90
+ const [isReady, setReady] = React.useState(false);
107
91
  /**
108
92
  * Get model of editor.
109
93
  */
110
- var getMonacoModel = function getMonacoModel() {
111
- var uri = monaco__namespace.Uri.file(filename || '/noname.txt');
94
+ const getMonacoModel = () => {
95
+ const uri = monaco__namespace.Uri.file(filename || '/noname.txt');
112
96
  return monaco__namespace.editor.getModel(uri);
113
97
  };
114
98
  /**
115
99
  * Has editor undo/redo history?
116
100
  * @public
117
101
  */
118
- var hasHistory = function hasHistory() {
102
+ const hasHistory = () => {
119
103
  var _a;
120
104
  return (((_a = getMonacoModel()) === null || _a === void 0 ? void 0 : _a.getAlternativeVersionId()) || 0) > 1;
121
105
  };
@@ -123,14 +107,14 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
123
107
  * Clear editor undo/redo history.
124
108
  * @public
125
109
  */
126
- var clearHistory = function clearHistory() {
110
+ const clearHistory = () => {
127
111
  getMonacoModel();
128
112
  };
129
113
  /**
130
114
  * Get current value of editor.
131
115
  * @public
132
116
  */
133
- var getValue = function getValue() {
117
+ const getValue = () => {
134
118
  var _a;
135
119
  return ((_a = getMonacoModel()) === null || _a === void 0 ? void 0 : _a.getValue()) || '';
136
120
  };
@@ -138,16 +122,16 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
138
122
  * Get value in range of editor.
139
123
  * @public
140
124
  */
141
- var getValueInRange = function getValueInRange(from, to) {
142
- var model = getMonacoModel();
125
+ const getValueInRange = (from, to) => {
126
+ const model = getMonacoModel();
143
127
  if (!model) {
144
128
  return '';
145
129
  }
146
130
  if (from === to) {
147
131
  return '';
148
132
  }
149
- var startPosition = model.getPositionAt(from);
150
- var endPosition = model.getPositionAt(to);
133
+ const startPosition = model.getPositionAt(from);
134
+ const endPosition = model.getPositionAt(to);
151
135
  return model.getValueInRange({
152
136
  startLineNumber: startPosition.lineNumber,
153
137
  startColumn: startPosition.column,
@@ -159,14 +143,14 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
159
143
  * Set (overwrite) value to editor.
160
144
  * @public
161
145
  */
162
- var setValue = function setValue(newValue) {
146
+ const setValue = newValue => {
163
147
  if (!editor.current) {
164
148
  return;
165
149
  }
166
150
  // Replace value EOL as LF.
167
151
  newValue = newValue.replace(/\r\n/g, '\n');
168
- var uri = monaco__namespace.Uri.file(filename || '/noname.txt');
169
- var model = monaco__namespace.editor.getModel(uri);
152
+ const uri = monaco__namespace.Uri.file(filename || '/noname.txt');
153
+ const model = monaco__namespace.editor.getModel(uri);
170
154
  if (model && !model.isDisposed()) {
171
155
  // Override EOL as LF to prevent error at Windows env.
172
156
  model.setEOL(monaco__namespace.editor.EndOfLineSequence.LF);
@@ -178,9 +162,7 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
178
162
  range: model.getFullModelRange(),
179
163
  text: newValue,
180
164
  forceMoveMarkers: true
181
- }], function () {
182
- return null;
183
- });
165
+ }], () => null);
184
166
  editor.current.pushUndoStop();
185
167
  suppress.current = false;
186
168
  editor.current.setModel(model);
@@ -190,8 +172,8 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
190
172
  // If model has not created yet for this file,
191
173
  // create new model.
192
174
  else {
193
- var lang = monacoLanguage.getLanguageFromFilename(filename);
194
- var newModel = monaco__namespace.editor.createModel(newValue, lang, uri);
175
+ const lang = monacoLanguage.getLanguageFromFilename(filename);
176
+ const newModel = monaco__namespace.editor.createModel(newValue, lang, uri);
195
177
  newModel.setEOL(monaco__namespace.editor.EndOfLineSequence.LF);
196
178
  editor.current.setModel(newModel);
197
179
  }
@@ -200,24 +182,22 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
200
182
  * Insert value at specific position.
201
183
  * @public
202
184
  */
203
- var insertValue = function insertValue(offset, newValue) {
185
+ const insertValue = (offset, newValue) => {
204
186
  if (!editor.current) {
205
187
  return;
206
188
  }
207
189
  // Replace value EOL as LF.
208
190
  newValue = newValue.replace(/\r\n/g, '\n');
209
- var model = getMonacoModel();
191
+ const model = getMonacoModel();
210
192
  if (model) {
211
- var position = model.getPositionAt(offset);
193
+ const position = model.getPositionAt(offset);
212
194
  suppress.current = true;
213
195
  editor.current.pushUndoStop();
214
196
  model.pushEditOperations([], [{
215
197
  range: new monaco__namespace.Range(position.lineNumber, position.column, position.lineNumber, position.column),
216
198
  text: newValue,
217
199
  forceMoveMarkers: true
218
- }], function () {
219
- return null;
220
- });
200
+ }], () => null);
221
201
  editor.current.pushUndoStop();
222
202
  suppress.current = false;
223
203
  }
@@ -226,23 +206,21 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
226
206
  * Remove value at specific range.
227
207
  * @public
228
208
  */
229
- var removeValue = function removeValue(from, to) {
209
+ const removeValue = (from, to) => {
230
210
  if (!editor.current) {
231
211
  return;
232
212
  }
233
- var model = getMonacoModel();
213
+ const model = getMonacoModel();
234
214
  if (model) {
235
- var startPosition = model.getPositionAt(from);
236
- var endPosition = model.getPositionAt(to);
215
+ const startPosition = model.getPositionAt(from);
216
+ const endPosition = model.getPositionAt(to);
237
217
  suppress.current = true;
238
218
  editor.current.pushUndoStop();
239
219
  model.pushEditOperations([], [{
240
220
  range: new monaco__namespace.Range(startPosition.lineNumber, startPosition.column, endPosition.lineNumber, endPosition.column),
241
221
  text: '',
242
222
  forceMoveMarkers: true
243
- }], function () {
244
- return null;
245
- });
223
+ }], () => null);
246
224
  editor.current.pushUndoStop();
247
225
  suppress.current = false;
248
226
  }
@@ -251,9 +229,9 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
251
229
  * Get offset of current cursor position.
252
230
  * @public
253
231
  */
254
- var getPositionOffset = function getPositionOffset() {
232
+ const getPositionOffset = () => {
255
233
  var _a;
256
- var model = getMonacoModel();
234
+ const model = getMonacoModel();
257
235
  if (!editor.current || !model) {
258
236
  return 0;
259
237
  }
@@ -263,12 +241,12 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
263
241
  * Set selection of editor with specific range.
264
242
  * @public
265
243
  */
266
- var setSelection = function setSelection(from, to) {
244
+ const setSelection = (from, to) => {
267
245
  var _a;
268
- var model = getMonacoModel();
246
+ const model = getMonacoModel();
269
247
  if (model) {
270
- var markerStartPosition = model.getPositionAt(from);
271
- var markerEndPosition = model.getPositionAt(to);
248
+ const markerStartPosition = model.getPositionAt(from);
249
+ const markerEndPosition = model.getPositionAt(to);
272
250
  (_a = editor.current) === null || _a === void 0 ? void 0 : _a.setSelection(new monaco__namespace.Range(markerStartPosition.lineNumber, markerStartPosition.column, markerEndPosition.lineNumber, markerEndPosition.column));
273
251
  }
274
252
  };
@@ -276,7 +254,7 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
276
254
  * Scroll editor to specific `scrollTop`.
277
255
  * @public
278
256
  */
279
- var scrollTo = function scrollTo(scrollTop) {
257
+ const scrollTo = scrollTop => {
280
258
  var _a;
281
259
  (_a = editor.current) === null || _a === void 0 ? void 0 : _a.setScrollTop(scrollTop);
282
260
  };
@@ -288,11 +266,11 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
288
266
  useMonacoEventChange.useMonacoEventChange(editor, onChange, suppress, [isReady]);
289
267
  useMonacoEventCursor.useMonacoEventCursor(editor, onCursor, [isReady]);
290
268
  useMonacoEventScroll.useMonacoEventScroll(editor, onScroll, [isReady]);
291
- var remoteMarker = useMonacoMarkers.useMonacoMarkers(editor, markers);
269
+ const remoteMarker = useMonacoMarkers.useMonacoMarkers(editor, markers);
292
270
  //
293
271
  // Init and dispose editor.
294
272
  //
295
- React__default.default.useEffect(function () {
273
+ React.useEffect(() => {
296
274
  try {
297
275
  if (!editorElRef.current) {
298
276
  return;
@@ -303,11 +281,11 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
303
281
  language: monacoLanguage.getLanguageFromFilename(filename)
304
282
  }));
305
283
  // add keyboard shortcut.
306
- editor.current.addCommand(monaco__namespace.KeyMod.CtrlCmd | monaco__namespace.KeyCode.KeyS, function () {
284
+ editor.current.addCommand(monaco__namespace.KeyMod.CtrlCmd | monaco__namespace.KeyCode.KeyS, () => {
307
285
  var _a, _b, _c;
308
286
  void ((_b = (_a = editor.current) === null || _a === void 0 ? void 0 : _a.getAction('editor.action.formatDocument')) === null || _b === void 0 ? void 0 : _b.run());
309
287
  if (typeof onSave === 'function') {
310
- var content = ((_c = getMonacoModel()) === null || _c === void 0 ? void 0 : _c.getValue()) || '';
288
+ const content = ((_c = getMonacoModel()) === null || _c === void 0 ? void 0 : _c.getValue()) || '';
311
289
  onSave(content);
312
290
  }
313
291
  });
@@ -320,7 +298,7 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
320
298
  } catch (_) {
321
299
  setReady(false);
322
300
  }
323
- return function () {
301
+ return () => {
324
302
  var _a;
325
303
  setReady(false);
326
304
  // dispose remote marker
@@ -336,9 +314,7 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
336
314
  //
337
315
  // Set value whenevet filename or value changed.
338
316
  //
339
- React__default.default.useEffect(function () {
340
- return setValue(defaultValue);
341
- },
317
+ React.useEffect(() => setValue(defaultValue),
342
318
  // eslint-disable-next-line react-hooks/exhaustive-deps
343
319
  [filename, defaultValue]);
344
320
  //
@@ -356,21 +332,17 @@ var MonacoEditor = React.forwardRef(function (_ref, ref) {
356
332
  editorApis.current.getPositionOffset = getPositionOffset;
357
333
  editorApis.current.setSelection = setSelection;
358
334
  editorApis.current.scrollTo = scrollTo;
359
- React__default.default.useImperativeHandle(ref, function () {
360
- return editorApis.current;
361
- }, [editorApis]);
335
+ React.useImperativeHandle(ref, () => editorApis.current, [editorApis]);
362
336
  //
363
337
  //
364
338
  //
365
- return jsxRuntime.jsx(StyledMonacoEditorWrapper, {
366
- children: jsxRuntime.jsx(StyledMonacoEditor, {
367
- style: {
368
- width: width,
369
- height: height
370
- },
371
- ref: editorElRef
372
- })
373
- });
339
+ return React.createElement(StyledMonacoEditorWrapper, null, React.createElement(StyledMonacoEditor, {
340
+ style: {
341
+ width,
342
+ height
343
+ },
344
+ ref: editorElRef
345
+ }));
374
346
  });
375
347
 
376
348
  exports.default = MonacoEditor;
@@ -2,7 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var jsxRuntime = require('react/jsx-runtime');
6
5
  var React = require('react');
7
6
  var utils = require('@elice/utils');
8
7
  var ExerciseFileShimmer = require('../exercise-shimmer/ExerciseFileShimmer.js');
@@ -11,26 +10,19 @@ require('../exercise-shimmer/ExerciseFileTabShimmer.js');
11
10
  require('../exercise-shimmer/ExerciseFileTreeListShimmer.js');
12
11
  require('../exercise-shimmer/ExerciseFileTreeListItemShimmer.js');
13
12
 
14
- function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
15
-
16
- var React__default = /*#__PURE__*/_interopDefaultCompat(React);
17
-
18
13
  //
19
14
  //
20
15
  //
21
- var AsyncMonacoEditor = React__default.default.lazy(function () {
22
- return utils.FlutterApp.checkWebview() ? Promise.resolve().then(function () { return require('./MonacoEditorMobile.js'); }) : Promise.resolve().then(function () { return require('./MonacoEditor.js'); });
23
- });
16
+ const AsyncMonacoEditor = React.lazy(() => utils.FlutterApp.checkWebview() ? Promise.resolve().then(function () { return require('./MonacoEditorMobile.js'); }) : Promise.resolve().then(function () { return require('./MonacoEditor.js'); }));
24
17
  //
25
18
  //
26
19
  //
27
- var MonacoEditorLazy = React.forwardRef(function (props, ref) {
28
- return jsxRuntime.jsx(React__default.default.Suspense, {
29
- fallback: jsxRuntime.jsx(ExerciseFileShimmer.default, {}),
30
- children: jsxRuntime.jsx(AsyncMonacoEditor, Object.assign({}, props, {
31
- ref: ref
32
- }))
33
- });
20
+ const MonacoEditorLazy = React.forwardRef((props, ref) => {
21
+ return React.createElement(React.Suspense, {
22
+ fallback: React.createElement(ExerciseFileShimmer.default, null)
23
+ }, React.createElement(AsyncMonacoEditor, Object.assign({}, props, {
24
+ ref: ref
25
+ })));
34
26
  });
35
27
 
36
28
  exports.default = MonacoEditorLazy;
@@ -2,17 +2,12 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
6
- var jsxRuntime = require('react/jsx-runtime');
7
5
  var React = require('react');
8
6
  var reactUse = require('react-use');
9
7
  var monaco = require('monaco-editor/esm/vs/editor/editor.api');
10
8
  var MonacoEditor = require('./MonacoEditor.js');
11
9
 
12
- function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
13
-
14
- function _interopNamespaceCompat(e) {
15
- if (e && typeof e === 'object' && 'default' in e) return e;
10
+ function _interopNamespaceDefault(e) {
16
11
  var n = Object.create(null);
17
12
  if (e) {
18
13
  Object.keys(e).forEach(function (k) {
@@ -29,13 +24,12 @@ function _interopNamespaceCompat(e) {
29
24
  return Object.freeze(n);
30
25
  }
31
26
 
32
- var React__default = /*#__PURE__*/_interopDefaultCompat(React);
33
- var monaco__namespace = /*#__PURE__*/_interopNamespaceCompat(monaco);
27
+ var monaco__namespace = /*#__PURE__*/_interopNamespaceDefault(monaco);
34
28
 
35
29
  //
36
30
  //
37
31
  //
38
- var MOBILE_EDITOR_PREFERENCE = Object.freeze({
32
+ const MOBILE_EDITOR_PREFERENCE = Object.freeze({
39
33
  autoClosingBrackets: 'always',
40
34
  cursorSmoothCaretAnimation: false,
41
35
  detectIndentation: true,
@@ -48,39 +42,32 @@ var MOBILE_EDITOR_PREFERENCE = Object.freeze({
48
42
  theme: 'elice',
49
43
  wordWrap: 'on'
50
44
  });
51
- var IS_IOS = ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || navigator.userAgent.includes('Mac') && 'ontouchend' in document;
45
+ const IS_IOS = ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || navigator.userAgent.includes('Mac') && 'ontouchend' in document;
52
46
  //
53
47
  //
54
48
  //
55
- var MonacoEditorMobile = React.forwardRef(function (props, ref) {
56
- var editorApiRef = reactUse.useEnsuredForwardedRef(ref);
57
- var _React$useState = React__default.default.useState(MOBILE_EDITOR_PREFERENCE),
58
- _React$useState2 = _rollupPluginBabelHelpers.slicedToArray(_React$useState, 2),
59
- preference = _React$useState2[0],
60
- setPreference = _React$useState2[1];
49
+ const MonacoEditorMobile = React.forwardRef((props, ref) => {
50
+ const editorApiRef = reactUse.useEnsuredForwardedRef(ref);
51
+ const [preference, setPreference] = React.useState(MOBILE_EDITOR_PREFERENCE);
61
52
  /**
62
53
  * Add a button to show keyboard on non-Apple devices.
63
54
  */
64
- var addKeyboardButtonOverlayWidget = function addKeyboardButtonOverlayWidget(editor) {
55
+ const addKeyboardButtonOverlayWidget = editor => {
65
56
  if (IS_IOS) {
66
57
  return;
67
58
  }
68
59
  editor.addOverlayWidget({
69
- getId: function getId() {
60
+ getId: () => {
70
61
  return 'editor.contrib.ShowKeyboardWidget';
71
62
  },
72
- getDomNode: function getDomNode() {
73
- var domNode = document.createElement('textarea');
63
+ getDomNode: () => {
64
+ const domNode = document.createElement('textarea');
74
65
  domNode.className = 'iPadShowKeyboard';
75
- domNode.addEventListener('touchstart', function () {
76
- return editor.focus();
77
- });
78
- domNode.addEventListener('focus', function () {
79
- return editor.focus();
80
- });
66
+ domNode.addEventListener('touchstart', () => editor.focus());
67
+ domNode.addEventListener('focus', () => editor.focus());
81
68
  return domNode;
82
69
  },
83
- getPosition: function getPosition() {
70
+ getPosition: () => {
84
71
  return {
85
72
  preference: monaco__namespace.editor.OverlayWidgetPositionPreference.BOTTOM_RIGHT_CORNER
86
73
  };
@@ -90,45 +77,43 @@ var MonacoEditorMobile = React.forwardRef(function (props, ref) {
90
77
  /**
91
78
  * Export window-level event functions for mobile app.
92
79
  */
93
- var exposeWindowGlobalEvents = function exposeWindowGlobalEvents(editor) {
94
- var editorApi = editorApiRef.current;
80
+ const exposeWindowGlobalEvents = editor => {
81
+ const editorApi = editorApiRef.current;
95
82
  if (!editorApi) {
96
83
  return;
97
84
  }
98
- window.cursorCharLeft = function () {
85
+ window.cursorCharLeft = () => {
99
86
  var _a;
100
- var pos = (_a = editor.getPosition()) !== null && _a !== void 0 ? _a : new monaco__namespace.Position(0, 0);
87
+ const pos = (_a = editor.getPosition()) !== null && _a !== void 0 ? _a : new monaco__namespace.Position(0, 0);
101
88
  editor.setPosition(new monaco__namespace.Position(pos.lineNumber, pos.column - 1));
102
89
  };
103
- window.cursorCharRight = function () {
90
+ window.cursorCharRight = () => {
104
91
  var _a;
105
- var pos = (_a = editor.getPosition()) !== null && _a !== void 0 ? _a : new monaco__namespace.Position(0, 0);
92
+ const pos = (_a = editor.getPosition()) !== null && _a !== void 0 ? _a : new monaco__namespace.Position(0, 0);
106
93
  editor.setPosition(new monaco__namespace.Position(pos.lineNumber, pos.column + 1));
107
94
  };
108
- window.cursorLineUp = function () {
95
+ window.cursorLineUp = () => {
109
96
  var _a;
110
- var pos = (_a = editor.getPosition()) !== null && _a !== void 0 ? _a : new monaco__namespace.Position(0, 0);
97
+ const pos = (_a = editor.getPosition()) !== null && _a !== void 0 ? _a : new monaco__namespace.Position(0, 0);
111
98
  editor.setPosition(new monaco__namespace.Position(pos.lineNumber - 1, pos.column));
112
99
  };
113
- window.cursorLineDown = function () {
100
+ window.cursorLineDown = () => {
114
101
  var _a;
115
- var pos = (_a = editor.getPosition()) !== null && _a !== void 0 ? _a : new monaco__namespace.Position(0, 0);
102
+ const pos = (_a = editor.getPosition()) !== null && _a !== void 0 ? _a : new monaco__namespace.Position(0, 0);
116
103
  editor.setPosition(new monaco__namespace.Position(pos.lineNumber + 1, pos.column));
117
104
  };
118
- window.dispatchReconfigureFontSize = function (fontSize) {
119
- setPreference(function (prev) {
120
- return Object.assign(Object.assign({}, prev), {
121
- fontSize: fontSize
122
- });
123
- });
105
+ window.dispatchReconfigureFontSize = fontSize => {
106
+ setPreference(prev => Object.assign(Object.assign({}, prev), {
107
+ fontSize
108
+ }));
124
109
  };
125
- window.dispatchChangeInsert = function (insert) {
110
+ window.dispatchChangeInsert = insert => {
126
111
  editorApi.insertValue(editorApi.getPositionOffset(), insert);
127
112
  };
128
- window.insertTab = function () {
129
- var model = editorApi.getMonacoModel();
113
+ window.insertTab = () => {
114
+ const model = editorApi.getMonacoModel();
130
115
  if (model) {
131
- var modelOptions = model.getOptions();
116
+ const modelOptions = model.getOptions();
132
117
  editorApi.insertValue(editorApi.getPositionOffset(), modelOptions.insertSpaces ? ' '.repeat(modelOptions.tabSize) : '\t');
133
118
  }
134
119
  };
@@ -136,7 +121,7 @@ var MonacoEditorMobile = React.forwardRef(function (props, ref) {
136
121
  /**
137
122
  *
138
123
  */
139
- var handleLoad = function handleLoad(editor) {
124
+ const handleLoad = editor => {
140
125
  if (typeof props.onLoad === 'function') {
141
126
  props.onLoad(editor);
142
127
  }
@@ -146,7 +131,7 @@ var MonacoEditorMobile = React.forwardRef(function (props, ref) {
146
131
  //
147
132
  //
148
133
  //
149
- return jsxRuntime.jsx(MonacoEditor.default, Object.assign({}, props, {
134
+ return React.createElement(MonacoEditor.default, Object.assign({}, props, {
150
135
  noLanguageIntellisense: true,
151
136
  preference: preference,
152
137
  onLoad: handleLoad,