@elice/material-exercise 1.220803.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (836) hide show
  1. package/README.md +41 -0
  2. package/cjs/components/index.d.ts +2 -0
  3. package/cjs/components/material-exercise/MaterialExercise.d.ts +6 -0
  4. package/cjs/components/material-exercise/MaterialExercise.js +170 -0
  5. package/cjs/components/material-exercise/MaterialExercise.styled.d.ts +36 -0
  6. package/cjs/components/material-exercise/MaterialExercise.styled.js +89 -0
  7. package/cjs/components/material-exercise/context/ExerciseIntlProvider.d.ts +12 -0
  8. package/cjs/components/material-exercise/context/ExerciseIntlProvider.js +52 -0
  9. package/cjs/components/material-exercise/context/ExerciseProvider.d.ts +11 -0
  10. package/cjs/components/material-exercise/context/ExerciseProvider.js +166 -0
  11. package/cjs/components/material-exercise/context/ExerciseProviderNoImage.d.ts +15 -0
  12. package/cjs/components/material-exercise/context/ExerciseProviderNoImage.js +62 -0
  13. package/cjs/components/material-exercise/context/context.d.ts +7 -0
  14. package/cjs/components/material-exercise/context/context.js +13 -0
  15. package/cjs/components/material-exercise/context/index.d.ts +7 -0
  16. package/cjs/components/material-exercise/context/locales/noImage.en.json.js +5 -0
  17. package/cjs/components/material-exercise/context/locales/noImage.ko.json.js +5 -0
  18. package/cjs/components/material-exercise/context/recoil.d.ts +144 -0
  19. package/cjs/components/material-exercise/context/recoil.js +637 -0
  20. package/cjs/components/material-exercise/context/recoilTypes.d.ts +95 -0
  21. package/cjs/components/material-exercise/context/recoilTypes.js +29 -0
  22. package/cjs/components/material-exercise/context/subjects.d.ts +13 -0
  23. package/cjs/components/material-exercise/context/subjects.js +25 -0
  24. package/cjs/components/material-exercise/context/types.d.ts +96 -0
  25. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.d.ts +7 -0
  26. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +150 -0
  27. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.d.ts +10 -0
  28. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +41 -0
  29. package/cjs/components/material-exercise/exercise-code-history/index.d.ts +2 -0
  30. package/cjs/components/material-exercise/exercise-file/ExerciseFile.d.ts +8 -0
  31. package/cjs/components/material-exercise/exercise-file/ExerciseFile.js +92 -0
  32. package/cjs/components/material-exercise/exercise-file/index.d.ts +1 -0
  33. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileEditor.d.ts +6 -0
  34. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +337 -0
  35. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.d.ts +6 -0
  36. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +43 -0
  37. package/cjs/components/material-exercise/exercise-file-editor/ExerciseMobileFileEditor.d.ts +8 -0
  38. package/cjs/components/material-exercise/exercise-file-editor/index.d.ts +1 -0
  39. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.d.ts +3 -0
  40. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +79 -0
  41. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.d.ts +3 -0
  42. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.js +90 -0
  43. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.d.ts +3 -0
  44. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +21 -0
  45. package/cjs/components/material-exercise/exercise-file-tabs/index.d.ts +2 -0
  46. package/cjs/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.en.json.js +5 -0
  47. package/cjs/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.ko.json.js +5 -0
  48. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTree.d.ts +5 -0
  49. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +381 -0
  50. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.d.ts +3 -0
  51. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +21 -0
  52. package/cjs/components/material-exercise/exercise-file-tree/index.d.ts +2 -0
  53. package/cjs/components/material-exercise/exercise-file-tree/locales/en.json.js +5 -0
  54. package/cjs/components/material-exercise/exercise-file-tree/locales/ko.json.js +5 -0
  55. package/cjs/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.d.ts +3 -0
  56. package/cjs/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +50 -0
  57. package/cjs/components/material-exercise/exercise-file-viewer/index.d.ts +1 -0
  58. package/cjs/components/material-exercise/exercise-menu/ExerciseMenu.d.ts +3 -0
  59. package/cjs/components/material-exercise/exercise-menu/ExerciseMenu.js +47 -0
  60. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.d.ts +3 -0
  61. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +137 -0
  62. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuDropdown.d.ts +3 -0
  63. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +120 -0
  64. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuReset.d.ts +3 -0
  65. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuReset.js +98 -0
  66. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.d.ts +3 -0
  67. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +231 -0
  68. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.d.ts +13 -0
  69. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +61 -0
  70. package/cjs/components/material-exercise/exercise-menu/index.d.ts +1 -0
  71. package/cjs/components/material-exercise/exercise-menu/locales/en.json.js +5 -0
  72. package/cjs/components/material-exercise/exercise-menu/locales/ko.json.js +5 -0
  73. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.d.ts +3 -0
  74. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +48 -0
  75. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.d.ts +3 -0
  76. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +16 -0
  77. package/cjs/components/material-exercise/exercise-multilang-dropdown/index.d.ts +2 -0
  78. package/cjs/components/material-exercise/exercise-multilang-dropdown/types.d.ts +39 -0
  79. package/cjs/components/material-exercise/exercise-preview/ExercisePreview.d.ts +3 -0
  80. package/cjs/components/material-exercise/exercise-preview/ExercisePreview.js +118 -0
  81. package/cjs/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.d.ts +5 -0
  82. package/cjs/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +47 -0
  83. package/cjs/components/material-exercise/exercise-preview/index.d.ts +1 -0
  84. package/cjs/components/material-exercise/exercise-preview/locales/en.json.js +5 -0
  85. package/cjs/components/material-exercise/exercise-preview/locales/ko.json.js +5 -0
  86. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpane.d.ts +5 -0
  87. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +130 -0
  88. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.d.ts +3 -0
  89. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +31 -0
  90. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.d.ts +3 -0
  91. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +113 -0
  92. package/cjs/components/material-exercise/exercise-rightpane/index.d.ts +1 -0
  93. package/cjs/components/material-exercise/exercise-rightpane/locales/en.json.js +5 -0
  94. package/cjs/components/material-exercise/exercise-rightpane/locales/ko.json.js +5 -0
  95. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.d.ts +7 -0
  96. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.js +33 -0
  97. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.styled.d.ts +9 -0
  98. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.styled.js +44 -0
  99. package/cjs/components/material-exercise/exercise-room/ExerciseRoomDetail.d.ts +8 -0
  100. package/cjs/components/material-exercise/exercise-room/ExerciseRoomDetail.js +500 -0
  101. package/cjs/components/material-exercise/exercise-room/ExerciseRoomList.d.ts +7 -0
  102. package/cjs/components/material-exercise/exercise-room/ExerciseRoomList.js +195 -0
  103. package/cjs/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.d.ts +2 -0
  104. package/cjs/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +36 -0
  105. package/cjs/components/material-exercise/exercise-room/helpers/index.d.ts +1 -0
  106. package/cjs/components/material-exercise/exercise-room/index.d.ts +2 -0
  107. package/cjs/components/material-exercise/exercise-room/locales/en.json.js +5 -0
  108. package/cjs/components/material-exercise/exercise-room/locales/ko.json.js +5 -0
  109. package/cjs/components/material-exercise/exercise-runner/ExerciseRunner.d.ts +6 -0
  110. package/cjs/components/material-exercise/exercise-runner/ExerciseRunner.js +549 -0
  111. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerContext.d.ts +17 -0
  112. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +13 -0
  113. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerController.d.ts +3 -0
  114. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerController.js +46 -0
  115. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.d.ts +3 -0
  116. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +112 -0
  117. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.d.ts +3 -0
  118. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +269 -0
  119. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.d.ts +3 -0
  120. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +187 -0
  121. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.d.ts +5 -0
  122. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +25 -0
  123. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.d.ts +3 -0
  124. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +65 -0
  125. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.d.ts +3 -0
  126. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +81 -0
  127. package/cjs/components/material-exercise/exercise-runner/index.d.ts +1 -0
  128. package/cjs/components/material-exercise/exercise-runner/locales/en.json.js +5 -0
  129. package/cjs/components/material-exercise/exercise-runner/locales/ko.json.js +5 -0
  130. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.d.ts +6 -0
  131. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +341 -0
  132. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.d.ts +9 -0
  133. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +45 -0
  134. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.d.ts +6 -0
  135. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +119 -0
  136. package/cjs/components/material-exercise/exercise-submit-history/index.d.ts +2 -0
  137. package/cjs/components/material-exercise/index.d.ts +3 -0
  138. package/cjs/components/shared/exercise-menu-button/ExerciseMenuButton.d.ts +10 -0
  139. package/cjs/components/shared/exercise-menu-button/ExerciseMenuButton.js +52 -0
  140. package/cjs/components/shared/exercise-menu-button/index.d.ts +2 -0
  141. package/cjs/components/shared/exercise-shimmer/ExerciseFileShimmer.d.ts +3 -0
  142. package/cjs/components/shared/exercise-shimmer/ExerciseFileShimmer.js +55 -0
  143. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabShimmer.d.ts +6 -0
  144. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +37 -0
  145. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.d.ts +3 -0
  146. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +25 -0
  147. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.d.ts +6 -0
  148. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +40 -0
  149. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.d.ts +3 -0
  150. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +31 -0
  151. package/cjs/components/shared/exercise-shimmer/index.d.ts +5 -0
  152. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.d.ts +3 -0
  153. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.js +16 -0
  154. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.styled.d.ts +8 -0
  155. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.styled.js +16 -0
  156. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.d.ts +8 -0
  157. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.js +23 -0
  158. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.styled.d.ts +6 -0
  159. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +29 -0
  160. package/cjs/components/shared/exercise-version-list/index.d.ts +2 -0
  161. package/cjs/components/shared/file-icon/FileIcon.d.ts +10 -0
  162. package/cjs/components/shared/file-icon/FileIcon.js +47 -0
  163. package/cjs/components/shared/file-icon/index.d.ts +2 -0
  164. package/cjs/components/shared/file-tabs/FileTab.d.ts +10 -0
  165. package/cjs/components/shared/file-tabs/FileTab.js +125 -0
  166. package/cjs/components/shared/file-tabs/FileTab.styled.d.ts +12 -0
  167. package/cjs/components/shared/file-tabs/FileTab.styled.js +52 -0
  168. package/cjs/components/shared/file-tabs/FileTabs.d.ts +15 -0
  169. package/cjs/components/shared/file-tabs/FileTabs.js +113 -0
  170. package/cjs/components/shared/file-tabs/FileTabs.styled.d.ts +6 -0
  171. package/cjs/components/shared/file-tabs/FileTabs.styled.js +25 -0
  172. package/cjs/components/shared/file-tabs/index.d.ts +2 -0
  173. package/cjs/components/shared/file-tabs/util.d.ts +10 -0
  174. package/cjs/components/shared/file-tabs/util.js +32 -0
  175. package/cjs/components/shared/file-tree/FileTree.d.ts +69 -0
  176. package/cjs/components/shared/file-tree/FileTree.js +45 -0
  177. package/cjs/components/shared/file-tree/FileTreeConfig.d.ts +13 -0
  178. package/cjs/components/shared/file-tree/FileTreeConfig.js +64 -0
  179. package/cjs/components/shared/file-tree/FileTreeList.d.ts +13 -0
  180. package/cjs/components/shared/file-tree/FileTreeList.js +135 -0
  181. package/cjs/components/shared/file-tree/FileTreeListItemContent.d.ts +9 -0
  182. package/cjs/components/shared/file-tree/FileTreeListItemContent.js +250 -0
  183. package/cjs/components/shared/file-tree/FileTreeListItemContent.styled.d.ts +37 -0
  184. package/cjs/components/shared/file-tree/FileTreeListItemContent.styled.js +105 -0
  185. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.d.ts +15 -0
  186. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.js +303 -0
  187. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.styled.d.ts +3 -0
  188. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.styled.js +25 -0
  189. package/cjs/components/shared/file-tree/FileTreeListItemContentMenu.d.ts +10 -0
  190. package/cjs/components/shared/file-tree/FileTreeListItemContentMenu.js +309 -0
  191. package/cjs/components/shared/file-tree/FileTreeListItems.d.ts +8 -0
  192. package/cjs/components/shared/file-tree/FileTreeListItems.js +210 -0
  193. package/cjs/components/shared/file-tree/FileTreeListItems.styled.d.ts +2 -0
  194. package/cjs/components/shared/file-tree/FileTreeListItems.styled.js +19 -0
  195. package/cjs/components/shared/file-tree/FileTreeToolbar.d.ts +6 -0
  196. package/cjs/components/shared/file-tree/FileTreeToolbar.js +128 -0
  197. package/cjs/components/shared/file-tree/FileTreeToolbar.styled.d.ts +1 -0
  198. package/cjs/components/shared/file-tree/FileTreeToolbar.styled.js +16 -0
  199. package/cjs/components/shared/file-tree/context/FileTreeContext.d.ts +127 -0
  200. package/cjs/components/shared/file-tree/context/FileTreeContext.js +202 -0
  201. package/cjs/components/shared/file-tree/context/index.d.ts +1 -0
  202. package/cjs/components/shared/file-tree/index.d.ts +15 -0
  203. package/cjs/components/shared/file-tree/interface/index.d.ts +47 -0
  204. package/cjs/components/shared/file-tree/locales/en.json.js +5 -0
  205. package/cjs/components/shared/file-tree/locales/ko.json.js +5 -0
  206. package/cjs/components/shared/file-tree/utils/fileTreeFiles.d.ts +2 -0
  207. package/cjs/components/shared/file-tree/utils/fileTreeFiles.js +41 -0
  208. package/cjs/components/shared/file-tree/utils/fileTreeGenerator.d.ts +68 -0
  209. package/cjs/components/shared/file-tree/utils/fileTreeGenerator.js +250 -0
  210. package/cjs/components/shared/file-tree/utils/fileTreeInput.d.ts +4 -0
  211. package/cjs/components/shared/file-tree/utils/fileTreeInput.js +13 -0
  212. package/cjs/components/shared/file-tree/utils/fileTreeItem.d.ts +5 -0
  213. package/cjs/components/shared/file-tree/utils/fileTreeItem.js +14 -0
  214. package/cjs/components/shared/file-tree/utils/fileTreePath.d.ts +11 -0
  215. package/cjs/components/shared/file-tree/utils/fileTreePath.js +18 -0
  216. package/cjs/components/shared/file-tree/utils/index.d.ts +5 -0
  217. package/cjs/components/shared/file-viewer/FileViewer.d.ts +8 -0
  218. package/cjs/components/shared/file-viewer/FileViewer.js +169 -0
  219. package/cjs/components/shared/file-viewer/FileViewerCsv.d.ts +4 -0
  220. package/cjs/components/shared/file-viewer/FileViewerCsv.js +46 -0
  221. package/cjs/components/shared/file-viewer/FileViewerImage.d.ts +4 -0
  222. package/cjs/components/shared/file-viewer/FileViewerImage.js +39 -0
  223. package/cjs/components/shared/file-viewer/FileViewerIpynb.d.ts +4 -0
  224. package/cjs/components/shared/file-viewer/FileViewerIpynb.js +45 -0
  225. package/cjs/components/shared/file-viewer/FileViewerNonViewable.d.ts +7 -0
  226. package/cjs/components/shared/file-viewer/FileViewerNonViewable.js +132 -0
  227. package/cjs/components/shared/file-viewer/FileViewerText.d.ts +4 -0
  228. package/cjs/components/shared/file-viewer/FileViewerText.js +56 -0
  229. package/cjs/components/shared/file-viewer/index.d.ts +2 -0
  230. package/cjs/components/shared/file-viewer/locales/en.json.js +5 -0
  231. package/cjs/components/shared/file-viewer/locales/ko.json.js +5 -0
  232. package/cjs/components/shared/file-viewer/locales/nonViewable.en.json.js +5 -0
  233. package/cjs/components/shared/file-viewer/locales/nonViewable.ko.json.js +5 -0
  234. package/cjs/components/shared/material-modal/MaterialModal.d.ts +8 -0
  235. package/cjs/components/shared/material-modal/MaterialModal.js +41 -0
  236. package/cjs/components/shared/material-modal/MaterialModal.styled.d.ts +7 -0
  237. package/cjs/components/shared/material-modal/MaterialModal.styled.js +33 -0
  238. package/cjs/components/shared/material-modal/index.d.ts +1 -0
  239. package/cjs/components/shared/monaco-editor/MonacoEditor.d.ts +86 -0
  240. package/cjs/components/shared/monaco-editor/MonacoEditor.js +381 -0
  241. package/cjs/components/shared/monaco-editor/MonacoEditorLazy.d.ts +3 -0
  242. package/cjs/components/shared/monaco-editor/MonacoEditorLazy.js +25 -0
  243. package/cjs/components/shared/monaco-editor/MonacoEditorPerferenceForm.d.ts +9 -0
  244. package/cjs/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +311 -0
  245. package/cjs/components/shared/monaco-editor/constants/grammars/JSON.tmLanguage.json.js +13 -0
  246. package/cjs/components/shared/monaco-editor/constants/grammars/MagicPython.tmLanguage.json.js +13 -0
  247. package/cjs/components/shared/monaco-editor/constants/grammars/TypeScriptReact.tmLanguage.json.js +13 -0
  248. package/cjs/components/shared/monaco-editor/constants/grammars/asp-vb-net.tmlanguage.json.js +14 -0
  249. package/cjs/components/shared/monaco-editor/constants/grammars/c.tmLanguage.json.js +13 -0
  250. package/cjs/components/shared/monaco-editor/constants/grammars/cpp.tmLanguage.json.js +13 -0
  251. package/cjs/components/shared/monaco-editor/constants/grammars/csharp.tmLanguage.json.js +13 -0
  252. package/cjs/components/shared/monaco-editor/constants/grammars/css.tmLanguage.json.js +13 -0
  253. package/cjs/components/shared/monaco-editor/constants/grammars/dart.tmLanguage.json.js +13 -0
  254. package/cjs/components/shared/monaco-editor/constants/grammars/fsharp.tmLanguage.json.js +13 -0
  255. package/cjs/components/shared/monaco-editor/constants/grammars/go.tmLanguage.json.js +13 -0
  256. package/cjs/components/shared/monaco-editor/constants/grammars/html.tmLanguage.json.js +14 -0
  257. package/cjs/components/shared/monaco-editor/constants/grammars/index.d.ts +10 -0
  258. package/cjs/components/shared/monaco-editor/constants/grammars/index.js +163 -0
  259. package/cjs/components/shared/monaco-editor/constants/grammars/java.tmLanguage.json.js +13 -0
  260. package/cjs/components/shared/monaco-editor/constants/grammars/lua.tmLanguage.json.js +13 -0
  261. package/cjs/components/shared/monaco-editor/constants/grammars/objective-c.tmLanguage.json.js +13 -0
  262. package/cjs/components/shared/monaco-editor/constants/grammars/php.tmLanguage.json.js +12 -0
  263. package/cjs/components/shared/monaco-editor/constants/grammars/r.tmLanguage.json.js +13 -0
  264. package/cjs/components/shared/monaco-editor/constants/grammars/ruby.tmLanguage.json.js +14 -0
  265. package/cjs/components/shared/monaco-editor/constants/grammars/rust.tmLanguage.json.js +13 -0
  266. package/cjs/components/shared/monaco-editor/constants/grammars/scss.tmLanguage.json.js +13 -0
  267. package/cjs/components/shared/monaco-editor/constants/grammars/sql.tmLanguage.json.js +13 -0
  268. package/cjs/components/shared/monaco-editor/constants/grammars/swift.tmLanguage.json.js +14 -0
  269. package/cjs/components/shared/monaco-editor/constants/grammars/xml.tmLanguage.json.js +13 -0
  270. package/cjs/components/shared/monaco-editor/constants/grammars/yaml.tmLanguage.json.js +13 -0
  271. package/cjs/components/shared/monaco-editor/constants/index.d.ts +2 -0
  272. package/cjs/components/shared/monaco-editor/constants/monaco/index.d.ts +1 -0
  273. package/cjs/components/shared/monaco-editor/constants/monaco/preferences.d.ts +29 -0
  274. package/cjs/components/shared/monaco-editor/constants/monaco/preferences.js +48 -0
  275. package/cjs/components/shared/monaco-editor/constants/themes/abyss.json.js +11 -0
  276. package/cjs/components/shared/monaco-editor/constants/themes/elice.json.js +13 -0
  277. package/cjs/components/shared/monaco-editor/constants/themes/index.d.ts +7 -0
  278. package/cjs/components/shared/monaco-editor/constants/themes/index.js +87 -0
  279. package/cjs/components/shared/monaco-editor/constants/themes/kimbie-dark.json.js +12 -0
  280. package/cjs/components/shared/monaco-editor/constants/themes/monokai.json.js +11 -0
  281. package/cjs/components/shared/monaco-editor/constants/themes/quietlight.json.js +11 -0
  282. package/cjs/components/shared/monaco-editor/constants/themes/red.json.js +11 -0
  283. package/cjs/components/shared/monaco-editor/constants/themes/solarized-dark.json.js +11 -0
  284. package/cjs/components/shared/monaco-editor/constants/themes/solarized-light.json.js +11 -0
  285. package/cjs/components/shared/monaco-editor/constants/themes/tomorrow-night-blue.json.js +11 -0
  286. package/cjs/components/shared/monaco-editor/constants/themes/vs-dark-plus.json.js +12 -0
  287. package/cjs/components/shared/monaco-editor/constants/themes/vs-dark.json.js +13 -0
  288. package/cjs/components/shared/monaco-editor/constants/themes/vs-hc-black.json.js +13 -0
  289. package/cjs/components/shared/monaco-editor/constants/themes/vs-hc-light.json.js +10 -0
  290. package/cjs/components/shared/monaco-editor/constants/themes/vs-light-plus.json.js +13 -0
  291. package/cjs/components/shared/monaco-editor/constants/themes/vs-light.json.js +13 -0
  292. package/cjs/components/shared/monaco-editor/editor-hooks/index.d.ts +6 -0
  293. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.d.ts +10 -0
  294. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +38 -0
  295. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.d.ts +12 -0
  296. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +46 -0
  297. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.d.ts +12 -0
  298. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +35 -0
  299. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.d.ts +20 -0
  300. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +179 -0
  301. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoOptions.d.ts +9 -0
  302. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +47 -0
  303. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoTheme.d.ts +6 -0
  304. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +31 -0
  305. package/cjs/components/shared/monaco-editor/editor-languages/css/formatter.d.ts +3 -0
  306. package/cjs/components/shared/monaco-editor/editor-languages/css/formatter.js +37 -0
  307. package/cjs/components/shared/monaco-editor/editor-languages/css/index.d.ts +9 -0
  308. package/cjs/components/shared/monaco-editor/editor-languages/css/index.js +54 -0
  309. package/cjs/components/shared/monaco-editor/editor-languages/html/formatter.d.ts +3 -0
  310. package/cjs/components/shared/monaco-editor/editor-languages/html/formatter.js +37 -0
  311. package/cjs/components/shared/monaco-editor/editor-languages/html/index.d.ts +9 -0
  312. package/cjs/components/shared/monaco-editor/editor-languages/html/index.js +52 -0
  313. package/cjs/components/shared/monaco-editor/editor-languages/index.d.ts +1 -0
  314. package/cjs/components/shared/monaco-editor/editor-languages/index.js +13 -0
  315. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.d.ts +7 -0
  316. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +12 -0
  317. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/express.d.ts +5 -0
  318. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/express.js +14 -0
  319. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/index.d.ts +3 -0
  320. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/propTypes.d.ts +5 -0
  321. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/propTypes.js +14 -0
  322. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/react.d.ts +5 -0
  323. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/react.js +14 -0
  324. package/cjs/components/shared/monaco-editor/editor-languages/typescript/formatter.d.ts +3 -0
  325. package/cjs/components/shared/monaco-editor/editor-languages/typescript/formatter.js +37 -0
  326. package/cjs/components/shared/monaco-editor/editor-languages/typescript/index.d.ts +25 -0
  327. package/cjs/components/shared/monaco-editor/editor-languages/typescript/index.js +123 -0
  328. package/cjs/components/shared/monaco-editor/hooks/index.d.ts +1 -0
  329. package/cjs/components/shared/monaco-editor/hooks/useEditorOptions.d.ts +8 -0
  330. package/cjs/components/shared/monaco-editor/hooks/useEditorOptions.js +86 -0
  331. package/cjs/components/shared/monaco-editor/index.d.ts +6 -0
  332. package/cjs/components/shared/monaco-editor/locales/en.json.js +5 -0
  333. package/cjs/components/shared/monaco-editor/locales/ko.json.js +5 -0
  334. package/cjs/components/shared/monaco-editor/utils/grammar/index.d.ts +4 -0
  335. package/cjs/components/shared/monaco-editor/utils/grammar/index.js +62 -0
  336. package/cjs/components/shared/monaco-editor/utils/grammar/onigasm.d.ts +4 -0
  337. package/cjs/components/shared/monaco-editor/utils/grammar/onigasm.js +19 -0
  338. package/cjs/components/shared/monaco-editor/utils/grammar/textmate.d.ts +9 -0
  339. package/cjs/components/shared/monaco-editor/utils/grammar/textmate.js +89 -0
  340. package/cjs/components/shared/monaco-editor/utils/index.d.ts +2 -0
  341. package/cjs/components/shared/monaco-editor/utils/monacoLanguage.d.ts +4 -0
  342. package/cjs/components/shared/monaco-editor/utils/monacoLanguage.js +77 -0
  343. package/cjs/components/shared/monaco-editor/utils/monacoPreference.d.ts +5 -0
  344. package/cjs/components/shared/monaco-editor/utils/monacoPreference.js +26 -0
  345. package/cjs/components/shared/monaco-editor/utils/prettier/config.d.ts +9 -0
  346. package/cjs/components/shared/monaco-editor/utils/prettier/config.js +26 -0
  347. package/cjs/components/shared/monaco-editor/utils/prettier/index.d.ts +17 -0
  348. package/cjs/components/shared/monaco-editor/utils/prettier/index.js +32 -0
  349. package/cjs/components/shared/monaco-editor/utils/remoteMarker/OnDisposed.d.ts +4 -0
  350. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteCursor.d.ts +49 -0
  351. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteCursor.js +97 -0
  352. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteCursorManager.d.ts +48 -0
  353. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteCursorManager.js +119 -0
  354. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteCursorWidget.d.ts +29 -0
  355. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteCursorWidget.js +181 -0
  356. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteSelection.d.ts +112 -0
  357. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteSelection.js +222 -0
  358. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteSelectionManager.d.ts +102 -0
  359. package/cjs/components/shared/monaco-editor/utils/remoteMarker/RemoteSelectionManager.js +154 -0
  360. package/cjs/components/shared/monaco-editor/utils/remoteMarker/index.d.ts +3 -0
  361. package/cjs/components/shared/monaco-editor/utils/remoteMarker/styles.d.ts +2 -0
  362. package/cjs/components/shared/monaco-editor/utils/remoteMarker/styles.js +19 -0
  363. package/cjs/components/shared/monaco-editor/utils/theme/convert.d.ts +22 -0
  364. package/cjs/components/shared/monaco-editor/utils/theme/convert.js +89 -0
  365. package/cjs/components/shared/monaco-editor/utils/theme/index.d.ts +4 -0
  366. package/cjs/components/shared/monaco-editor/utils/theme/index.js +18 -0
  367. package/cjs/components/shared/no-vnc/NoVnc.d.ts +19 -0
  368. package/cjs/components/shared/no-vnc/NoVnc.js +279 -0
  369. package/cjs/components/shared/no-vnc/NoVncLazy.d.ts +3 -0
  370. package/cjs/components/shared/no-vnc/NoVncLazy.js +20 -0
  371. package/cjs/components/shared/no-vnc/index.d.ts +1 -0
  372. package/cjs/components/shared/preview-container/PreviewContainer.d.ts +9 -0
  373. package/cjs/components/shared/preview-container/PreviewContainer.js +37 -0
  374. package/cjs/components/shared/preview-container/index.d.ts +2 -0
  375. package/cjs/components/shared/web-browser/WebBrowser.d.ts +11 -0
  376. package/cjs/components/shared/web-browser/WebBrowser.js +170 -0
  377. package/cjs/components/shared/web-browser/index.d.ts +1 -0
  378. package/cjs/components/shared/xterm/Xterm.d.ts +32 -0
  379. package/cjs/components/shared/xterm/Xterm.js +236 -0
  380. package/cjs/components/shared/xterm/XtermLazy.d.ts +3 -0
  381. package/cjs/components/shared/xterm/XtermLazy.js +20 -0
  382. package/cjs/components/shared/xterm/index.d.ts +1 -0
  383. package/cjs/components/shared/xterm/locales/en.json.js +5 -0
  384. package/cjs/components/shared/xterm/locales/ko.json.js +5 -0
  385. package/cjs/components/shared/xterm/utils/index.d.ts +5 -0
  386. package/cjs/components/shared/xterm/utils/index.js +14 -0
  387. package/cjs/constants/arduino.d.ts +35 -0
  388. package/cjs/constants/arduino.js +75 -0
  389. package/cjs/constants/index.d.ts +1 -0
  390. package/cjs/constants/shortcutKeyMap.d.ts +27 -0
  391. package/cjs/constants/shortcutKeyMap.js +76 -0
  392. package/cjs/constants/stylesheets.d.ts +29 -0
  393. package/cjs/constants/stylesheets.js +44 -0
  394. package/cjs/hooks/index.d.ts +7 -0
  395. package/cjs/hooks/useArduino.d.ts +14 -0
  396. package/cjs/hooks/useArduino.js +529 -0
  397. package/cjs/hooks/useExerciseFile.d.ts +8 -0
  398. package/cjs/hooks/useExerciseFile.js +48 -0
  399. package/cjs/hooks/useExericseShortcut.d.ts +5 -0
  400. package/cjs/hooks/useExericseShortcut.js +24 -0
  401. package/cjs/hooks/useMaterialExerciseFileUrl.d.ts +10 -0
  402. package/cjs/hooks/useMaterialExerciseFileUrl.js +61 -0
  403. package/cjs/hooks/useRunnerRoomWebSocket.d.ts +19 -0
  404. package/cjs/hooks/useRunnerRoomWebSocket.js +161 -0
  405. package/cjs/hooks/useStdioWebSocket.d.ts +35 -0
  406. package/cjs/hooks/useStdioWebSocket.js +217 -0
  407. package/cjs/hooks/useUsercodeEditWebSocket.d.ts +57 -0
  408. package/cjs/hooks/useUsercodeEditWebSocket.js +606 -0
  409. package/cjs/hooks/useUsercodeHistory.d.ts +9 -0
  410. package/cjs/hooks/useUsercodeHistory.js +133 -0
  411. package/cjs/index.d.ts +1 -0
  412. package/cjs/index.js +25 -0
  413. package/cjs/typings/arduino.d.ts +77 -0
  414. package/cjs/utils/arduino.d.ts +46 -0
  415. package/cjs/utils/arduino.js +86 -0
  416. package/cjs/utils/exerciseFile.d.ts +14 -0
  417. package/cjs/utils/exerciseFile.js +65 -0
  418. package/cjs/utils/index.d.ts +1 -0
  419. package/es/components/index.d.ts +2 -0
  420. package/es/components/material-exercise/MaterialExercise.d.ts +6 -0
  421. package/es/components/material-exercise/MaterialExercise.js +164 -0
  422. package/es/components/material-exercise/MaterialExercise.styled.d.ts +36 -0
  423. package/es/components/material-exercise/MaterialExercise.styled.js +68 -0
  424. package/es/components/material-exercise/context/ExerciseIntlProvider.d.ts +12 -0
  425. package/es/components/material-exercise/context/ExerciseIntlProvider.js +43 -0
  426. package/es/components/material-exercise/context/ExerciseProvider.d.ts +11 -0
  427. package/es/components/material-exercise/context/ExerciseProvider.js +159 -0
  428. package/es/components/material-exercise/context/ExerciseProviderNoImage.d.ts +15 -0
  429. package/es/components/material-exercise/context/ExerciseProviderNoImage.js +55 -0
  430. package/es/components/material-exercise/context/context.d.ts +7 -0
  431. package/es/components/material-exercise/context/context.js +5 -0
  432. package/es/components/material-exercise/context/index.d.ts +7 -0
  433. package/es/components/material-exercise/context/locales/noImage.en.json.js +3 -0
  434. package/es/components/material-exercise/context/locales/noImage.ko.json.js +3 -0
  435. package/es/components/material-exercise/context/recoil.d.ts +144 -0
  436. package/es/components/material-exercise/context/recoil.js +600 -0
  437. package/es/components/material-exercise/context/recoilTypes.d.ts +95 -0
  438. package/es/components/material-exercise/context/recoilTypes.js +27 -0
  439. package/es/components/material-exercise/context/subjects.d.ts +13 -0
  440. package/es/components/material-exercise/context/subjects.js +19 -0
  441. package/es/components/material-exercise/context/types.d.ts +96 -0
  442. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.d.ts +7 -0
  443. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +143 -0
  444. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.d.ts +10 -0
  445. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +26 -0
  446. package/es/components/material-exercise/exercise-code-history/index.d.ts +2 -0
  447. package/es/components/material-exercise/exercise-file/ExerciseFile.d.ts +8 -0
  448. package/es/components/material-exercise/exercise-file/ExerciseFile.js +85 -0
  449. package/es/components/material-exercise/exercise-file/index.d.ts +1 -0
  450. package/es/components/material-exercise/exercise-file-editor/ExerciseFileEditor.d.ts +6 -0
  451. package/es/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +331 -0
  452. package/es/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.d.ts +6 -0
  453. package/es/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +36 -0
  454. package/es/components/material-exercise/exercise-file-editor/ExerciseMobileFileEditor.d.ts +8 -0
  455. package/es/components/material-exercise/exercise-file-editor/index.d.ts +1 -0
  456. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.d.ts +3 -0
  457. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +70 -0
  458. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.d.ts +3 -0
  459. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.js +83 -0
  460. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.d.ts +3 -0
  461. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +15 -0
  462. package/es/components/material-exercise/exercise-file-tabs/index.d.ts +2 -0
  463. package/es/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.en.json.js +3 -0
  464. package/es/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.ko.json.js +3 -0
  465. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTree.d.ts +5 -0
  466. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +372 -0
  467. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.d.ts +3 -0
  468. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +15 -0
  469. package/es/components/material-exercise/exercise-file-tree/index.d.ts +2 -0
  470. package/es/components/material-exercise/exercise-file-tree/locales/en.json.js +3 -0
  471. package/es/components/material-exercise/exercise-file-tree/locales/ko.json.js +3 -0
  472. package/es/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.d.ts +3 -0
  473. package/es/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +44 -0
  474. package/es/components/material-exercise/exercise-file-viewer/index.d.ts +1 -0
  475. package/es/components/material-exercise/exercise-menu/ExerciseMenu.d.ts +3 -0
  476. package/es/components/material-exercise/exercise-menu/ExerciseMenu.js +40 -0
  477. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.d.ts +3 -0
  478. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +131 -0
  479. package/es/components/material-exercise/exercise-menu/ExerciseMenuDropdown.d.ts +3 -0
  480. package/es/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +114 -0
  481. package/es/components/material-exercise/exercise-menu/ExerciseMenuReset.d.ts +3 -0
  482. package/es/components/material-exercise/exercise-menu/ExerciseMenuReset.js +92 -0
  483. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.d.ts +3 -0
  484. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +225 -0
  485. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.d.ts +13 -0
  486. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +42 -0
  487. package/es/components/material-exercise/exercise-menu/index.d.ts +1 -0
  488. package/es/components/material-exercise/exercise-menu/locales/en.json.js +3 -0
  489. package/es/components/material-exercise/exercise-menu/locales/ko.json.js +3 -0
  490. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.d.ts +3 -0
  491. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +42 -0
  492. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.d.ts +3 -0
  493. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +10 -0
  494. package/es/components/material-exercise/exercise-multilang-dropdown/index.d.ts +2 -0
  495. package/es/components/material-exercise/exercise-multilang-dropdown/types.d.ts +39 -0
  496. package/es/components/material-exercise/exercise-preview/ExercisePreview.d.ts +3 -0
  497. package/es/components/material-exercise/exercise-preview/ExercisePreview.js +111 -0
  498. package/es/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.d.ts +5 -0
  499. package/es/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +41 -0
  500. package/es/components/material-exercise/exercise-preview/index.d.ts +1 -0
  501. package/es/components/material-exercise/exercise-preview/locales/en.json.js +3 -0
  502. package/es/components/material-exercise/exercise-preview/locales/ko.json.js +3 -0
  503. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpane.d.ts +5 -0
  504. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +123 -0
  505. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.d.ts +3 -0
  506. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +25 -0
  507. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.d.ts +3 -0
  508. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +106 -0
  509. package/es/components/material-exercise/exercise-rightpane/index.d.ts +1 -0
  510. package/es/components/material-exercise/exercise-rightpane/locales/en.json.js +3 -0
  511. package/es/components/material-exercise/exercise-rightpane/locales/ko.json.js +3 -0
  512. package/es/components/material-exercise/exercise-room/ExerciseRoom.d.ts +7 -0
  513. package/es/components/material-exercise/exercise-room/ExerciseRoom.js +27 -0
  514. package/es/components/material-exercise/exercise-room/ExerciseRoom.styled.d.ts +9 -0
  515. package/es/components/material-exercise/exercise-room/ExerciseRoom.styled.js +30 -0
  516. package/es/components/material-exercise/exercise-room/ExerciseRoomDetail.d.ts +8 -0
  517. package/es/components/material-exercise/exercise-room/ExerciseRoomDetail.js +492 -0
  518. package/es/components/material-exercise/exercise-room/ExerciseRoomList.d.ts +7 -0
  519. package/es/components/material-exercise/exercise-room/ExerciseRoomList.js +188 -0
  520. package/es/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.d.ts +2 -0
  521. package/es/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +32 -0
  522. package/es/components/material-exercise/exercise-room/helpers/index.d.ts +1 -0
  523. package/es/components/material-exercise/exercise-room/index.d.ts +2 -0
  524. package/es/components/material-exercise/exercise-room/locales/en.json.js +3 -0
  525. package/es/components/material-exercise/exercise-room/locales/ko.json.js +3 -0
  526. package/es/components/material-exercise/exercise-runner/ExerciseRunner.d.ts +6 -0
  527. package/es/components/material-exercise/exercise-runner/ExerciseRunner.js +542 -0
  528. package/es/components/material-exercise/exercise-runner/ExerciseRunnerContext.d.ts +17 -0
  529. package/es/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +5 -0
  530. package/es/components/material-exercise/exercise-runner/ExerciseRunnerController.d.ts +3 -0
  531. package/es/components/material-exercise/exercise-runner/ExerciseRunnerController.js +39 -0
  532. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.d.ts +3 -0
  533. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +105 -0
  534. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.d.ts +3 -0
  535. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +262 -0
  536. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.d.ts +3 -0
  537. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +180 -0
  538. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.d.ts +5 -0
  539. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +19 -0
  540. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.d.ts +3 -0
  541. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +58 -0
  542. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.d.ts +3 -0
  543. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +74 -0
  544. package/es/components/material-exercise/exercise-runner/index.d.ts +1 -0
  545. package/es/components/material-exercise/exercise-runner/locales/en.json.js +3 -0
  546. package/es/components/material-exercise/exercise-runner/locales/ko.json.js +3 -0
  547. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.d.ts +6 -0
  548. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +332 -0
  549. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.d.ts +9 -0
  550. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +30 -0
  551. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.d.ts +6 -0
  552. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +112 -0
  553. package/es/components/material-exercise/exercise-submit-history/index.d.ts +2 -0
  554. package/es/components/material-exercise/index.d.ts +3 -0
  555. package/es/components/shared/exercise-menu-button/ExerciseMenuButton.d.ts +10 -0
  556. package/es/components/shared/exercise-menu-button/ExerciseMenuButton.js +45 -0
  557. package/es/components/shared/exercise-menu-button/index.d.ts +2 -0
  558. package/es/components/shared/exercise-shimmer/ExerciseFileShimmer.d.ts +3 -0
  559. package/es/components/shared/exercise-shimmer/ExerciseFileShimmer.js +48 -0
  560. package/es/components/shared/exercise-shimmer/ExerciseFileTabShimmer.d.ts +6 -0
  561. package/es/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +30 -0
  562. package/es/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.d.ts +3 -0
  563. package/es/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +18 -0
  564. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.d.ts +6 -0
  565. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +33 -0
  566. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.d.ts +3 -0
  567. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +24 -0
  568. package/es/components/shared/exercise-shimmer/index.d.ts +5 -0
  569. package/es/components/shared/exercise-version-list/ExerciseVersionList.d.ts +3 -0
  570. package/es/components/shared/exercise-version-list/ExerciseVersionList.js +10 -0
  571. package/es/components/shared/exercise-version-list/ExerciseVersionList.styled.d.ts +8 -0
  572. package/es/components/shared/exercise-version-list/ExerciseVersionList.styled.js +8 -0
  573. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.d.ts +8 -0
  574. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.js +17 -0
  575. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.styled.d.ts +6 -0
  576. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +18 -0
  577. package/es/components/shared/exercise-version-list/index.d.ts +2 -0
  578. package/es/components/shared/file-icon/FileIcon.d.ts +10 -0
  579. package/es/components/shared/file-icon/FileIcon.js +41 -0
  580. package/es/components/shared/file-icon/index.d.ts +2 -0
  581. package/es/components/shared/file-tabs/FileTab.d.ts +10 -0
  582. package/es/components/shared/file-tabs/FileTab.js +119 -0
  583. package/es/components/shared/file-tabs/FileTab.styled.d.ts +12 -0
  584. package/es/components/shared/file-tabs/FileTab.styled.js +38 -0
  585. package/es/components/shared/file-tabs/FileTabs.d.ts +15 -0
  586. package/es/components/shared/file-tabs/FileTabs.js +106 -0
  587. package/es/components/shared/file-tabs/FileTabs.styled.d.ts +6 -0
  588. package/es/components/shared/file-tabs/FileTabs.styled.js +16 -0
  589. package/es/components/shared/file-tabs/index.d.ts +2 -0
  590. package/es/components/shared/file-tabs/util.d.ts +10 -0
  591. package/es/components/shared/file-tabs/util.js +28 -0
  592. package/es/components/shared/file-tree/FileTree.d.ts +69 -0
  593. package/es/components/shared/file-tree/FileTree.js +38 -0
  594. package/es/components/shared/file-tree/FileTreeConfig.d.ts +13 -0
  595. package/es/components/shared/file-tree/FileTreeConfig.js +56 -0
  596. package/es/components/shared/file-tree/FileTreeList.d.ts +13 -0
  597. package/es/components/shared/file-tree/FileTreeList.js +127 -0
  598. package/es/components/shared/file-tree/FileTreeListItemContent.d.ts +9 -0
  599. package/es/components/shared/file-tree/FileTreeListItemContent.js +244 -0
  600. package/es/components/shared/file-tree/FileTreeListItemContent.styled.d.ts +37 -0
  601. package/es/components/shared/file-tree/FileTreeListItemContent.styled.js +89 -0
  602. package/es/components/shared/file-tree/FileTreeListItemContentInput.d.ts +15 -0
  603. package/es/components/shared/file-tree/FileTreeListItemContentInput.js +297 -0
  604. package/es/components/shared/file-tree/FileTreeListItemContentInput.styled.d.ts +3 -0
  605. package/es/components/shared/file-tree/FileTreeListItemContentInput.styled.js +16 -0
  606. package/es/components/shared/file-tree/FileTreeListItemContentMenu.d.ts +10 -0
  607. package/es/components/shared/file-tree/FileTreeListItemContentMenu.js +303 -0
  608. package/es/components/shared/file-tree/FileTreeListItems.d.ts +8 -0
  609. package/es/components/shared/file-tree/FileTreeListItems.js +204 -0
  610. package/es/components/shared/file-tree/FileTreeListItems.styled.d.ts +2 -0
  611. package/es/components/shared/file-tree/FileTreeListItems.styled.js +10 -0
  612. package/es/components/shared/file-tree/FileTreeToolbar.d.ts +6 -0
  613. package/es/components/shared/file-tree/FileTreeToolbar.js +122 -0
  614. package/es/components/shared/file-tree/FileTreeToolbar.styled.d.ts +1 -0
  615. package/es/components/shared/file-tree/FileTreeToolbar.styled.js +8 -0
  616. package/es/components/shared/file-tree/context/FileTreeContext.d.ts +127 -0
  617. package/es/components/shared/file-tree/context/FileTreeContext.js +192 -0
  618. package/es/components/shared/file-tree/context/index.d.ts +1 -0
  619. package/es/components/shared/file-tree/index.d.ts +15 -0
  620. package/es/components/shared/file-tree/interface/index.d.ts +47 -0
  621. package/es/components/shared/file-tree/locales/en.json.js +3 -0
  622. package/es/components/shared/file-tree/locales/ko.json.js +3 -0
  623. package/es/components/shared/file-tree/utils/fileTreeFiles.d.ts +2 -0
  624. package/es/components/shared/file-tree/utils/fileTreeFiles.js +32 -0
  625. package/es/components/shared/file-tree/utils/fileTreeGenerator.d.ts +68 -0
  626. package/es/components/shared/file-tree/utils/fileTreeGenerator.js +243 -0
  627. package/es/components/shared/file-tree/utils/fileTreeInput.d.ts +4 -0
  628. package/es/components/shared/file-tree/utils/fileTreeInput.js +9 -0
  629. package/es/components/shared/file-tree/utils/fileTreeItem.d.ts +5 -0
  630. package/es/components/shared/file-tree/utils/fileTreeItem.js +10 -0
  631. package/es/components/shared/file-tree/utils/fileTreePath.d.ts +11 -0
  632. package/es/components/shared/file-tree/utils/fileTreePath.js +14 -0
  633. package/es/components/shared/file-tree/utils/index.d.ts +5 -0
  634. package/es/components/shared/file-viewer/FileViewer.d.ts +8 -0
  635. package/es/components/shared/file-viewer/FileViewer.js +158 -0
  636. package/es/components/shared/file-viewer/FileViewerCsv.d.ts +4 -0
  637. package/es/components/shared/file-viewer/FileViewerCsv.js +39 -0
  638. package/es/components/shared/file-viewer/FileViewerImage.d.ts +4 -0
  639. package/es/components/shared/file-viewer/FileViewerImage.js +32 -0
  640. package/es/components/shared/file-viewer/FileViewerIpynb.d.ts +4 -0
  641. package/es/components/shared/file-viewer/FileViewerIpynb.js +37 -0
  642. package/es/components/shared/file-viewer/FileViewerNonViewable.d.ts +7 -0
  643. package/es/components/shared/file-viewer/FileViewerNonViewable.js +124 -0
  644. package/es/components/shared/file-viewer/FileViewerText.d.ts +4 -0
  645. package/es/components/shared/file-viewer/FileViewerText.js +50 -0
  646. package/es/components/shared/file-viewer/index.d.ts +2 -0
  647. package/es/components/shared/file-viewer/locales/en.json.js +3 -0
  648. package/es/components/shared/file-viewer/locales/ko.json.js +3 -0
  649. package/es/components/shared/file-viewer/locales/nonViewable.en.json.js +3 -0
  650. package/es/components/shared/file-viewer/locales/nonViewable.ko.json.js +3 -0
  651. package/es/components/shared/material-modal/MaterialModal.d.ts +8 -0
  652. package/es/components/shared/material-modal/MaterialModal.js +35 -0
  653. package/es/components/shared/material-modal/MaterialModal.styled.d.ts +7 -0
  654. package/es/components/shared/material-modal/MaterialModal.styled.js +21 -0
  655. package/es/components/shared/material-modal/index.d.ts +1 -0
  656. package/es/components/shared/monaco-editor/MonacoEditor.d.ts +86 -0
  657. package/es/components/shared/monaco-editor/MonacoEditor.js +355 -0
  658. package/es/components/shared/monaco-editor/MonacoEditorLazy.d.ts +3 -0
  659. package/es/components/shared/monaco-editor/MonacoEditorLazy.js +17 -0
  660. package/es/components/shared/monaco-editor/MonacoEditorPerferenceForm.d.ts +9 -0
  661. package/es/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +304 -0
  662. package/es/components/shared/monaco-editor/constants/grammars/JSON.tmLanguage.json.js +3 -0
  663. package/es/components/shared/monaco-editor/constants/grammars/MagicPython.tmLanguage.json.js +3 -0
  664. package/es/components/shared/monaco-editor/constants/grammars/TypeScriptReact.tmLanguage.json.js +3 -0
  665. package/es/components/shared/monaco-editor/constants/grammars/asp-vb-net.tmlanguage.json.js +3 -0
  666. package/es/components/shared/monaco-editor/constants/grammars/c.tmLanguage.json.js +3 -0
  667. package/es/components/shared/monaco-editor/constants/grammars/cpp.tmLanguage.json.js +3 -0
  668. package/es/components/shared/monaco-editor/constants/grammars/csharp.tmLanguage.json.js +3 -0
  669. package/es/components/shared/monaco-editor/constants/grammars/css.tmLanguage.json.js +3 -0
  670. package/es/components/shared/monaco-editor/constants/grammars/dart.tmLanguage.json.js +3 -0
  671. package/es/components/shared/monaco-editor/constants/grammars/fsharp.tmLanguage.json.js +3 -0
  672. package/es/components/shared/monaco-editor/constants/grammars/go.tmLanguage.json.js +3 -0
  673. package/es/components/shared/monaco-editor/constants/grammars/html.tmLanguage.json.js +3 -0
  674. package/es/components/shared/monaco-editor/constants/grammars/index.d.ts +10 -0
  675. package/es/components/shared/monaco-editor/constants/grammars/index.js +159 -0
  676. package/es/components/shared/monaco-editor/constants/grammars/java.tmLanguage.json.js +3 -0
  677. package/es/components/shared/monaco-editor/constants/grammars/lua.tmLanguage.json.js +3 -0
  678. package/es/components/shared/monaco-editor/constants/grammars/objective-c.tmLanguage.json.js +3 -0
  679. package/es/components/shared/monaco-editor/constants/grammars/php.tmLanguage.json.js +3 -0
  680. package/es/components/shared/monaco-editor/constants/grammars/r.tmLanguage.json.js +3 -0
  681. package/es/components/shared/monaco-editor/constants/grammars/ruby.tmLanguage.json.js +3 -0
  682. package/es/components/shared/monaco-editor/constants/grammars/rust.tmLanguage.json.js +3 -0
  683. package/es/components/shared/monaco-editor/constants/grammars/scss.tmLanguage.json.js +3 -0
  684. package/es/components/shared/monaco-editor/constants/grammars/sql.tmLanguage.json.js +3 -0
  685. package/es/components/shared/monaco-editor/constants/grammars/swift.tmLanguage.json.js +3 -0
  686. package/es/components/shared/monaco-editor/constants/grammars/xml.tmLanguage.json.js +3 -0
  687. package/es/components/shared/monaco-editor/constants/grammars/yaml.tmLanguage.json.js +3 -0
  688. package/es/components/shared/monaco-editor/constants/index.d.ts +2 -0
  689. package/es/components/shared/monaco-editor/constants/monaco/index.d.ts +1 -0
  690. package/es/components/shared/monaco-editor/constants/monaco/preferences.d.ts +29 -0
  691. package/es/components/shared/monaco-editor/constants/monaco/preferences.js +40 -0
  692. package/es/components/shared/monaco-editor/constants/themes/abyss.json.js +3 -0
  693. package/es/components/shared/monaco-editor/constants/themes/elice.json.js +3 -0
  694. package/es/components/shared/monaco-editor/constants/themes/index.d.ts +7 -0
  695. package/es/components/shared/monaco-editor/constants/themes/index.js +83 -0
  696. package/es/components/shared/monaco-editor/constants/themes/kimbie-dark.json.js +3 -0
  697. package/es/components/shared/monaco-editor/constants/themes/monokai.json.js +3 -0
  698. package/es/components/shared/monaco-editor/constants/themes/quietlight.json.js +3 -0
  699. package/es/components/shared/monaco-editor/constants/themes/red.json.js +3 -0
  700. package/es/components/shared/monaco-editor/constants/themes/solarized-dark.json.js +3 -0
  701. package/es/components/shared/monaco-editor/constants/themes/solarized-light.json.js +3 -0
  702. package/es/components/shared/monaco-editor/constants/themes/tomorrow-night-blue.json.js +3 -0
  703. package/es/components/shared/monaco-editor/constants/themes/vs-dark-plus.json.js +3 -0
  704. package/es/components/shared/monaco-editor/constants/themes/vs-dark.json.js +3 -0
  705. package/es/components/shared/monaco-editor/constants/themes/vs-hc-black.json.js +3 -0
  706. package/es/components/shared/monaco-editor/constants/themes/vs-hc-light.json.js +3 -0
  707. package/es/components/shared/monaco-editor/constants/themes/vs-light-plus.json.js +3 -0
  708. package/es/components/shared/monaco-editor/constants/themes/vs-light.json.js +3 -0
  709. package/es/components/shared/monaco-editor/editor-hooks/index.d.ts +6 -0
  710. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.d.ts +10 -0
  711. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +34 -0
  712. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.d.ts +12 -0
  713. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +42 -0
  714. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.d.ts +12 -0
  715. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +31 -0
  716. package/es/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.d.ts +20 -0
  717. package/es/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +175 -0
  718. package/es/components/shared/monaco-editor/editor-hooks/useMonacoOptions.d.ts +9 -0
  719. package/es/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +43 -0
  720. package/es/components/shared/monaco-editor/editor-hooks/useMonacoTheme.d.ts +6 -0
  721. package/es/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +27 -0
  722. package/es/components/shared/monaco-editor/editor-languages/css/formatter.d.ts +3 -0
  723. package/es/components/shared/monaco-editor/editor-languages/css/formatter.js +17 -0
  724. package/es/components/shared/monaco-editor/editor-languages/css/index.d.ts +9 -0
  725. package/es/components/shared/monaco-editor/editor-languages/css/index.js +28 -0
  726. package/es/components/shared/monaco-editor/editor-languages/html/formatter.d.ts +3 -0
  727. package/es/components/shared/monaco-editor/editor-languages/html/formatter.js +17 -0
  728. package/es/components/shared/monaco-editor/editor-languages/html/index.d.ts +9 -0
  729. package/es/components/shared/monaco-editor/editor-languages/html/index.js +26 -0
  730. package/es/components/shared/monaco-editor/editor-languages/index.d.ts +1 -0
  731. package/es/components/shared/monaco-editor/editor-languages/index.js +11 -0
  732. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.d.ts +7 -0
  733. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +8 -0
  734. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/express.d.ts +5 -0
  735. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/express.js +12 -0
  736. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/index.d.ts +3 -0
  737. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/propTypes.d.ts +5 -0
  738. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/propTypes.js +12 -0
  739. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/react.d.ts +5 -0
  740. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/react.js +12 -0
  741. package/es/components/shared/monaco-editor/editor-languages/typescript/formatter.d.ts +3 -0
  742. package/es/components/shared/monaco-editor/editor-languages/typescript/formatter.js +17 -0
  743. package/es/components/shared/monaco-editor/editor-languages/typescript/index.d.ts +25 -0
  744. package/es/components/shared/monaco-editor/editor-languages/typescript/index.js +94 -0
  745. package/es/components/shared/monaco-editor/hooks/index.d.ts +1 -0
  746. package/es/components/shared/monaco-editor/hooks/useEditorOptions.d.ts +8 -0
  747. package/es/components/shared/monaco-editor/hooks/useEditorOptions.js +82 -0
  748. package/es/components/shared/monaco-editor/index.d.ts +6 -0
  749. package/es/components/shared/monaco-editor/locales/en.json.js +3 -0
  750. package/es/components/shared/monaco-editor/locales/ko.json.js +3 -0
  751. package/es/components/shared/monaco-editor/utils/grammar/index.d.ts +4 -0
  752. package/es/components/shared/monaco-editor/utils/grammar/index.js +60 -0
  753. package/es/components/shared/monaco-editor/utils/grammar/onigasm.d.ts +4 -0
  754. package/es/components/shared/monaco-editor/utils/grammar/onigasm.js +15 -0
  755. package/es/components/shared/monaco-editor/utils/grammar/textmate.d.ts +9 -0
  756. package/es/components/shared/monaco-editor/utils/grammar/textmate.js +65 -0
  757. package/es/components/shared/monaco-editor/utils/index.d.ts +2 -0
  758. package/es/components/shared/monaco-editor/utils/monacoLanguage.d.ts +4 -0
  759. package/es/components/shared/monaco-editor/utils/monacoLanguage.js +53 -0
  760. package/es/components/shared/monaco-editor/utils/monacoPreference.d.ts +5 -0
  761. package/es/components/shared/monaco-editor/utils/monacoPreference.js +22 -0
  762. package/es/components/shared/monaco-editor/utils/prettier/config.d.ts +9 -0
  763. package/es/components/shared/monaco-editor/utils/prettier/config.js +22 -0
  764. package/es/components/shared/monaco-editor/utils/prettier/index.d.ts +17 -0
  765. package/es/components/shared/monaco-editor/utils/prettier/index.js +12 -0
  766. package/es/components/shared/monaco-editor/utils/remoteMarker/OnDisposed.d.ts +4 -0
  767. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteCursor.d.ts +49 -0
  768. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteCursor.js +93 -0
  769. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteCursorManager.d.ts +48 -0
  770. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteCursorManager.js +115 -0
  771. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteCursorWidget.d.ts +29 -0
  772. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteCursorWidget.js +177 -0
  773. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteSelection.d.ts +112 -0
  774. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteSelection.js +198 -0
  775. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteSelectionManager.d.ts +102 -0
  776. package/es/components/shared/monaco-editor/utils/remoteMarker/RemoteSelectionManager.js +150 -0
  777. package/es/components/shared/monaco-editor/utils/remoteMarker/index.d.ts +3 -0
  778. package/es/components/shared/monaco-editor/utils/remoteMarker/styles.d.ts +2 -0
  779. package/es/components/shared/monaco-editor/utils/remoteMarker/styles.js +14 -0
  780. package/es/components/shared/monaco-editor/utils/theme/convert.d.ts +22 -0
  781. package/es/components/shared/monaco-editor/utils/theme/convert.js +81 -0
  782. package/es/components/shared/monaco-editor/utils/theme/index.d.ts +4 -0
  783. package/es/components/shared/monaco-editor/utils/theme/index.js +14 -0
  784. package/es/components/shared/no-vnc/NoVnc.d.ts +19 -0
  785. package/es/components/shared/no-vnc/NoVnc.js +265 -0
  786. package/es/components/shared/no-vnc/NoVncLazy.d.ts +3 -0
  787. package/es/components/shared/no-vnc/NoVncLazy.js +12 -0
  788. package/es/components/shared/no-vnc/index.d.ts +1 -0
  789. package/es/components/shared/preview-container/PreviewContainer.d.ts +9 -0
  790. package/es/components/shared/preview-container/PreviewContainer.js +26 -0
  791. package/es/components/shared/preview-container/index.d.ts +2 -0
  792. package/es/components/shared/web-browser/WebBrowser.d.ts +11 -0
  793. package/es/components/shared/web-browser/WebBrowser.js +163 -0
  794. package/es/components/shared/web-browser/index.d.ts +1 -0
  795. package/es/components/shared/xterm/Xterm.d.ts +32 -0
  796. package/es/components/shared/xterm/Xterm.js +229 -0
  797. package/es/components/shared/xterm/XtermLazy.d.ts +3 -0
  798. package/es/components/shared/xterm/XtermLazy.js +12 -0
  799. package/es/components/shared/xterm/index.d.ts +1 -0
  800. package/es/components/shared/xterm/locales/en.json.js +3 -0
  801. package/es/components/shared/xterm/locales/ko.json.js +3 -0
  802. package/es/components/shared/xterm/utils/index.d.ts +5 -0
  803. package/es/components/shared/xterm/utils/index.js +10 -0
  804. package/es/constants/arduino.d.ts +35 -0
  805. package/es/constants/arduino.js +62 -0
  806. package/es/constants/index.d.ts +1 -0
  807. package/es/constants/shortcutKeyMap.d.ts +27 -0
  808. package/es/constants/shortcutKeyMap.js +74 -0
  809. package/es/constants/stylesheets.d.ts +29 -0
  810. package/es/constants/stylesheets.js +36 -0
  811. package/es/hooks/index.d.ts +7 -0
  812. package/es/hooks/useArduino.d.ts +14 -0
  813. package/es/hooks/useArduino.js +521 -0
  814. package/es/hooks/useExerciseFile.d.ts +8 -0
  815. package/es/hooks/useExerciseFile.js +43 -0
  816. package/es/hooks/useExericseShortcut.d.ts +5 -0
  817. package/es/hooks/useExericseShortcut.js +20 -0
  818. package/es/hooks/useMaterialExerciseFileUrl.d.ts +10 -0
  819. package/es/hooks/useMaterialExerciseFileUrl.js +53 -0
  820. package/es/hooks/useRunnerRoomWebSocket.d.ts +19 -0
  821. package/es/hooks/useRunnerRoomWebSocket.js +157 -0
  822. package/es/hooks/useStdioWebSocket.d.ts +35 -0
  823. package/es/hooks/useStdioWebSocket.js +213 -0
  824. package/es/hooks/useUsercodeEditWebSocket.d.ts +57 -0
  825. package/es/hooks/useUsercodeEditWebSocket.js +597 -0
  826. package/es/hooks/useUsercodeHistory.d.ts +9 -0
  827. package/es/hooks/useUsercodeHistory.js +129 -0
  828. package/es/index.d.ts +1 -0
  829. package/es/index.js +7 -0
  830. package/es/typings/arduino.d.ts +77 -0
  831. package/es/utils/arduino.d.ts +46 -0
  832. package/es/utils/arduino.js +77 -0
  833. package/es/utils/exerciseFile.d.ts +14 -0
  834. package/es/utils/exerciseFile.js +60 -0
  835. package/es/utils/index.d.ts +1 -0
  836. package/package.json +142 -0
@@ -0,0 +1,337 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var apiClient = require('@elice/api-client');
5
+ var blocks = require('@elice/blocks');
6
+ var types = require('@elice/types');
7
+ var recoil = require('recoil');
8
+ var ExerciseFileShimmer = require('../../shared/exercise-shimmer/ExerciseFileShimmer.js');
9
+ require('../../shared/exercise-shimmer/ExerciseFileTabsShimmer.js');
10
+ require('../../shared/exercise-shimmer/ExerciseFileTabShimmer.js');
11
+ require('../../shared/exercise-shimmer/ExerciseFileTreeListShimmer.js');
12
+ require('../../shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js');
13
+ var FileViewerNonViewable = require('../../shared/file-viewer/FileViewerNonViewable.js');
14
+ var MonacoEditorLazy = require('../../shared/monaco-editor/MonacoEditorLazy.js');
15
+ require('../../shared/monaco-editor/MonacoEditorPerferenceForm.js');
16
+ require('monaco-editor/esm/vs/editor/editor.api');
17
+ require('../../shared/monaco-editor/constants/monaco/preferences.js');
18
+ require('react-use');
19
+ require('socket.io-client');
20
+ var recoil$1 = require('../context/recoil.js');
21
+ var context = require('../context/context.js');
22
+ require('../context/recoilTypes.js');
23
+ var subjects = require('../context/subjects.js');
24
+ require('../context/ExerciseProvider.js');
25
+ require('../../../constants/arduino.js');
26
+ var exerciseFile = require('../../../utils/exerciseFile.js');
27
+ require('@elice/material-shared-utils');
28
+ require('@elice/websocket');
29
+ require('humps');
30
+ require('ot-text-unicode');
31
+ var useUsercodeEditWebSocket = require('../../../hooks/useUsercodeEditWebSocket.js');
32
+ var ExerciseFileReadOnlyBanner = require('./ExerciseFileReadOnlyBanner.js');
33
+
34
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
35
+
36
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
37
+
38
+ //
39
+ //
40
+
41
+ /**
42
+ * Exercise file (code) editor for editable files
43
+ */
44
+
45
+ const ExerciseFileEditor = () => {
46
+ const {
47
+ materialExerciseId,
48
+ exerciseRoomId,
49
+ readOnlyEditor,
50
+ readOnlyActiveFile,
51
+ locale
52
+ } = React__default["default"].useContext(context.ExerciseContext);
53
+ const exercise = recoil.useRecoilValue(recoil$1.exerciseState(materialExerciseId));
54
+ const exerciseRoom = recoil.useRecoilValue(recoil$1.exerciseRoomState(exerciseRoomId));
55
+ const lecture = recoil.useRecoilValue(recoil$1.exerciseLectureState(exercise === null || exercise === void 0 ? void 0 : exercise.lectureId));
56
+ const preference = recoil.useRecoilValue(recoil$1.exerciseEditorPreferenceState);
57
+ const activeFilename = recoil.useRecoilValue(recoil$1.exerciseActiveFilenameState);
58
+ const readOnly = readOnlyEditor || readOnlyActiveFile;
59
+ const setUsercodeWebSocketState = recoil.useSetRecoilState(recoil$1.exerciseWebsocketQuery('usercodeEdit'));
60
+ const setFileEditorCursorState = recoil.useSetRecoilState(recoil$1.exerciseFileEditorCursorState);
61
+ const setFileEditorCursorSelectionValueState = recoil.useSetRecoilState(recoil$1.exerciseFileEditorCursorSelectionValueState); // editor
62
+
63
+ const editorApis = React__default["default"].useRef(null);
64
+ const editorDocHistories = React__default["default"].useRef({});
65
+ const serverInitiatedVersions = React__default["default"].useRef([]); // ready state
66
+
67
+ const [isEditorReady, setEditorReady] = React__default["default"].useState(false);
68
+ const [isWebSocketReady, setWebSocketReady] = React__default["default"].useState(false);
69
+ const isReady = isEditorReady && isWebSocketReady;
70
+ const [isFileResettable, setFileResettable] = React__default["default"].useState(exerciseFile.checkExerciseFileResettable(activeFilename, {
71
+ exercise,
72
+ exerciseRoom
73
+ }));
74
+ /**
75
+ * Set value of current file.
76
+ */
77
+
78
+ const setValue = async content => {
79
+ var _a;
80
+
81
+ if (!isFileResettable) {
82
+ console.warn('Cannot reset file since not resettable.');
83
+ return;
84
+ }
85
+
86
+ if (!activeFilename) {
87
+ console.warn('Cannot reset file since no file selected.');
88
+ return;
89
+ }
90
+
91
+ if (content) {
92
+ (_a = editorApis.current) === null || _a === void 0 ? void 0 : _a.setValue(content);
93
+ } // reset as initial value on `null` received.
94
+ else if (content === null) {
95
+ const readyExerciseImage = exercise === null || exercise === void 0 ? void 0 : exercise.readyExerciseImage;
96
+
97
+ if (!editorApis.current || !readyExerciseImage) {
98
+ return;
99
+ }
100
+
101
+ return apiClient.getOrgMaterialExerciseExerciseImageExerciseFileGet({
102
+ exerciseImageId: readyExerciseImage.id,
103
+ filename: activeFilename
104
+ }).then(res => res.exerciseFile.content).then(content => {
105
+ var _a;
106
+
107
+ if (typeof content === 'string') {
108
+ (_a = editorApis.current) === null || _a === void 0 ? void 0 : _a.setValue(content);
109
+ } else {
110
+ setFileResettable(false);
111
+ }
112
+ });
113
+ }
114
+ };
115
+ /**
116
+ * Update editor document history.
117
+ */
118
+
119
+
120
+ const pushEditorDocHistories = () => {
121
+ const _editorApis = editorApis.current;
122
+
123
+ if (!_editorApis) {
124
+ return;
125
+ }
126
+
127
+ if (typeof _editorApis.getMonacoModel === 'function') {
128
+ const model = _editorApis.getMonacoModel();
129
+
130
+ if (model) {
131
+ editorDocHistories.current[model.getVersionId()] = model.getValue();
132
+ }
133
+ }
134
+ };
135
+ /**
136
+ * Handle usercode edit websocket received `WRITE_NOTI` message,
137
+ * move cursor or insert / delete content.
138
+ */
139
+
140
+
141
+ const handleWebsocketUsercodeWriteNoti = ots => {
142
+ var _a, _b, _c;
143
+
144
+ let cursor = 0;
145
+
146
+ for (const ot of ots) {
147
+ const model = (_a = editorApis.current) === null || _a === void 0 ? void 0 : _a.getMonacoModel();
148
+
149
+ if (!model) {
150
+ continue;
151
+ } // remove previous versions.
152
+
153
+
154
+ if (serverInitiatedVersions.current.length > 100) {
155
+ serverInitiatedVersions.current.splice(0, 50);
156
+ }
157
+
158
+ switch (typeof ot) {
159
+ // cursor changed...
160
+ case 'number':
161
+ cursor += ot;
162
+ break;
163
+ // insertion
164
+
165
+ case 'string':
166
+ serverInitiatedVersions.current.push(model.getVersionId());
167
+ (_b = editorApis.current) === null || _b === void 0 ? void 0 : _b.insertValue(cursor, ot);
168
+ cursor += ot.length;
169
+ break;
170
+ // deletion
171
+
172
+ default:
173
+ serverInitiatedVersions.current.push(model.getVersionId());
174
+ (_c = editorApis.current) === null || _c === void 0 ? void 0 : _c.removeValue(cursor, cursor + (typeof ot.d === 'number' ? ot.d : ot.d.length));
175
+ break;
176
+ }
177
+ }
178
+ };
179
+ /**
180
+ * Usercode edit web socket.
181
+ */
182
+
183
+
184
+ const wsUsercode = useUsercodeEditWebSocket.useUsercodeEditWebSocket({
185
+ exerciseRoomId,
186
+ filename: activeFilename,
187
+ onInit: () => setWebSocketReady(true),
188
+ onWriteNoti: handleWebsocketUsercodeWriteNoti
189
+ });
190
+ /**
191
+ *
192
+ */
193
+
194
+ const handleChange = e => {
195
+ const index = serverInitiatedVersions.current.indexOf(e.versionId - 1);
196
+
197
+ if (index !== -1) {
198
+ serverInitiatedVersions.current.splice(index, 1);
199
+ return;
200
+ } // get previous model doc
201
+
202
+
203
+ const prevDoc = editorDocHistories.current[e.versionId - 1]; // send OTs to server
204
+
205
+ for (const change of e.changes) {
206
+ // insertion
207
+ if (change.rangeLength === 0 && !readOnly) {
208
+ wsUsercode.sendOTs(change.rangeOffset > 0 ? [change.rangeOffset, change.text] : [change.text]);
209
+ } // deletion
210
+ else {
211
+ if (prevDoc && !readOnly) {
212
+ wsUsercode.sendOTs([change.rangeOffset || null, {
213
+ d: prevDoc.slice(change.rangeOffset, change.rangeOffset + change.rangeLength)
214
+ }].filter(Boolean));
215
+ } // replace
216
+
217
+
218
+ if (change.text.length > 0 && !readOnly) {
219
+ wsUsercode.sendOTs(change.rangeOffset > 0 ? [change.rangeOffset, change.text] : [change.text]);
220
+ }
221
+ }
222
+ }
223
+
224
+ delete editorDocHistories.current[e.versionId - 1];
225
+ };
226
+ /**
227
+ * Handle editor cursor change.
228
+ */
229
+
230
+
231
+ const handleEditorCursor = range => {
232
+ var _a, _b;
233
+
234
+ if (!readOnly) {
235
+ wsUsercode.sendCursor(range);
236
+ }
237
+
238
+ setFileEditorCursorState(range);
239
+ setFileEditorCursorSelectionValueState((_b = (_a = editorApis.current) === null || _a === void 0 ? void 0 : _a.getValueInRange(range.from, range.to)) !== null && _b !== void 0 ? _b : '');
240
+ };
241
+ /**
242
+ * Handle editor save shortcut emitted.
243
+ */
244
+
245
+
246
+ const handleSave = () => {
247
+ subjects.exerciseFileEditorSaveAction$.next();
248
+ }; //
249
+ // Handle editor content change.
250
+ //
251
+
252
+
253
+ React__default["default"].useEffect(() => {
254
+ var _a;
255
+
256
+ const _editorApis = editorApis.current;
257
+
258
+ if (!_editorApis || !isReady) {
259
+ return;
260
+ }
261
+
262
+ _editorApis.setValue(wsUsercode.doc);
263
+
264
+ pushEditorDocHistories();
265
+ const subscription = (_a = _editorApis.editor) === null || _a === void 0 ? void 0 : _a.onDidChangeModelContent(e => {
266
+ pushEditorDocHistories();
267
+ handleChange(e);
268
+ });
269
+ return () => {
270
+ if (subscription) {
271
+ subscription.dispose();
272
+ }
273
+ };
274
+ }, // eslint-disable-next-line react-hooks/exhaustive-deps
275
+ [isReady, readOnly]); //
276
+ // Handle websocket status change.
277
+ //
278
+
279
+ React__default["default"].useEffect(() => setUsercodeWebSocketState(wsUsercode.readyState), // eslint-disable-next-line react-hooks/exhaustive-deps
280
+ [wsUsercode.readyState]); //
281
+ // handle content change request to code editor.
282
+ //
283
+
284
+ React__default["default"].useEffect(() => {
285
+ const contentChangeSub = subjects.exerciseFileEditorContentChange$.subscribe(v => {
286
+ setValue(v).catch(() => void 0);
287
+ });
288
+ return () => {
289
+ contentChangeSub.unsubscribe();
290
+ };
291
+ }, // eslint-disable-next-line react-hooks/exhaustive-deps
292
+ []); //
293
+ //
294
+ //
295
+ // empty file
296
+
297
+ if (!activeFilename) {
298
+ return React__default["default"].createElement(ExerciseFileShimmer, null);
299
+ } // non-editable file
300
+
301
+
302
+ if (!wsUsercode.docEditable) {
303
+ return React__default["default"].createElement(FileViewerNonViewable, {
304
+ filename: activeFilename,
305
+ locale: locale
306
+ });
307
+ } // websocket not ready
308
+
309
+
310
+ if (!isWebSocketReady) {
311
+ return React__default["default"].createElement(ExerciseFileShimmer, null);
312
+ }
313
+
314
+ const uniqueFilePath = `code/${exerciseRoomId}`;
315
+ const editorFilename = `${uniqueFilePath}/${activeFilename}`;
316
+ return React__default["default"].createElement(blocks.Flex, {
317
+ column: true,
318
+ width: "100%",
319
+ height: "100%"
320
+ }, React__default["default"].createElement(ExerciseFileReadOnlyBanner, null), React__default["default"].createElement(MonacoEditorLazy, {
321
+ key: editorFilename,
322
+ defaultValue: "",
323
+ filename: editorFilename,
324
+ markers: wsUsercode.markers,
325
+ preference: Object.assign(Object.assign({}, preference), {
326
+ readOnly
327
+ }),
328
+ noLanguageIntellisense: (lecture === null || lecture === void 0 ? void 0 : lecture.lectureType) === types.enums.LectureType.Test,
329
+ locale: locale,
330
+ onLoad: () => setEditorReady(true),
331
+ onCursor: handleEditorCursor,
332
+ onSave: handleSave,
333
+ ref: editorApis
334
+ }));
335
+ }; //
336
+
337
+ module.exports = ExerciseFileEditor;
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ /**
3
+ * Banner for readonly exercise file.
4
+ */
5
+ declare const ExerciseFileReadOnlyBanner: React.FC;
6
+ export default ExerciseFileReadOnlyBanner;
@@ -0,0 +1,43 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var reactIntl = require('react-intl');
5
+ var blocks = require('@elice/blocks');
6
+ var designTokens = require('@elice/design-tokens');
7
+ var styled = require('styled-components');
8
+ require('../context/recoil.js');
9
+ var context = require('../context/context.js');
10
+ require('../context/recoilTypes.js');
11
+ require('../context/subjects.js');
12
+ require('../context/ExerciseProvider.js');
13
+
14
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
+
16
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
17
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
18
+
19
+ const StyledEditorReadOnlyBanner = styled__default["default"].div.withConfig({
20
+ componentId: "sc-kh9iw2-0"
21
+ })(["flex:0 0 auto;display:flex;align-items:center;margin:0.75rem;padding:0 1rem;height:2rem;border:1px solid ", ";border-radius:2px;"], designTokens.base.color.navy5);
22
+ /**
23
+ * Banner for readonly exercise file.
24
+ */
25
+
26
+ const ExerciseFileReadOnlyBanner = () => {
27
+ const {
28
+ readOnlyActiveFile
29
+ } = React__default["default"].useContext(context.ExerciseContext);
30
+
31
+ if (!readOnlyActiveFile) {
32
+ return null;
33
+ }
34
+
35
+ return React__default["default"].createElement(StyledEditorReadOnlyBanner, null, React__default["default"].createElement(blocks.Text, {
36
+ size: "tiny",
37
+ role: "gray3"
38
+ }, React__default["default"].createElement(reactIntl.FormattedMessage, {
39
+ id: "[\uC77D\uAE30\uC804\uC6A9] \uC774 \uD30C\uC77C\uC740 \uC77D\uAE30\uC804\uC6A9 \uC785\uB2C8\uB2E4."
40
+ })));
41
+ }; //
42
+
43
+ module.exports = ExerciseFileReadOnlyBanner;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export interface ExerciseMobileFileEditorProps {
3
+ exerciseImageId: number;
4
+ exerciseRoomId: number;
5
+ filename: string;
6
+ }
7
+ declare const ExerciseMobileFileEditor: React.FC<ExerciseMobileFileEditorProps>;
8
+ export default ExerciseMobileFileEditor;
@@ -0,0 +1 @@
1
+ export { default as ExerciseFileEditor } from './ExerciseFileEditor';
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const ExerciseFileTabs: React.FC;
3
+ export default ExerciseFileTabs;
@@ -0,0 +1,79 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var recoil = require('recoil');
5
+ var styled = require('styled-components');
6
+ require('../../shared/exercise-shimmer/ExerciseFileShimmer.js');
7
+ var ExerciseFileTabsShimmer = require('../../shared/exercise-shimmer/ExerciseFileTabsShimmer.js');
8
+ require('../../shared/exercise-shimmer/ExerciseFileTabShimmer.js');
9
+ require('../../shared/exercise-shimmer/ExerciseFileTreeListShimmer.js');
10
+ require('../../shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js');
11
+ var recoil$1 = require('../context/recoil.js');
12
+ var context = require('../context/context.js');
13
+ require('../context/recoilTypes.js');
14
+ require('../context/subjects.js');
15
+ require('../context/ExerciseProvider.js');
16
+
17
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
18
+
19
+ function _interopNamespaceDefaultOnly (e) { return Object.freeze({ __proto__: null, 'default': e }); }
20
+
21
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
23
+
24
+ const AsyncFileTabs = React__default["default"].lazy(() => Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespaceDefaultOnly(require('../../shared/file-tabs/FileTabs.js')); }));
25
+ const StyledFileTabsWrapper = styled__default["default"].div.withConfig({
26
+ componentId: "sc-11fdoyl-0"
27
+ })(["flex:0 0 3rem;"]);
28
+
29
+ const ExerciseFileTabs = () => {
30
+ const {
31
+ exerciseRoomId,
32
+ materialExerciseId
33
+ } = React__default["default"].useContext(context.ExerciseContext);
34
+ const [activeFilename, setActiveFilename] = recoil.useRecoilState(recoil$1.exerciseActiveFilenameState);
35
+ const [openedTabs, setOpenedTabs] = recoil.useRecoilState(recoil$1.exerciseFileTabsOpenedState({
36
+ materialExerciseId,
37
+ exerciseRoomId
38
+ }));
39
+
40
+ const handleCloseTab = path => {
41
+ const updatedTabs = openedTabs.filter(tab => tab !== path);
42
+ setOpenedTabs(updatedTabs);
43
+
44
+ if (activeFilename === path) {
45
+ setActiveFilename(updatedTabs.length > 0 ? updatedTabs[0] : '');
46
+ }
47
+ };
48
+
49
+ const handleTabOrderChange = (currentIndex, movedIndex) => {
50
+ const newOpenedTabs = [...openedTabs];
51
+ const movingTab = newOpenedTabs.splice(currentIndex, 1);
52
+ newOpenedTabs.splice(movedIndex, 0, ...movingTab);
53
+ setOpenedTabs(newOpenedTabs);
54
+ };
55
+
56
+ const handleActivePathChange = (path, isDirectory = false) => {
57
+ if (isDirectory) {
58
+ return;
59
+ }
60
+
61
+ if (!openedTabs.includes(path)) {
62
+ setOpenedTabs([...openedTabs, path]);
63
+ }
64
+
65
+ setActiveFilename(path);
66
+ };
67
+
68
+ return React__default["default"].createElement(StyledFileTabsWrapper, null, React__default["default"].createElement(React__default["default"].Suspense, {
69
+ fallback: React__default["default"].createElement(ExerciseFileTabsShimmer, null)
70
+ }, React__default["default"].createElement(AsyncFileTabs, {
71
+ openedTabs: openedTabs,
72
+ activeTab: activeFilename || undefined,
73
+ onCloseTab: handleCloseTab,
74
+ onSelectTab: handleActivePathChange,
75
+ onTabOrderChange: handleTabOrderChange
76
+ })));
77
+ };
78
+
79
+ module.exports = ExerciseFileTabs;
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ declare const _default: React.ForwardRefExoticComponent<Pick<React.RefAttributes<HTMLButtonElement>, "key"> & React.RefAttributes<HTMLButtonElement>>;
3
+ export default _default;
@@ -0,0 +1,90 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var reactIntl = require('react-intl');
5
+ var reactUse = require('react-use');
6
+ var blocks = require('@elice/blocks');
7
+ var designTokens = require('@elice/design-tokens');
8
+ var icons = require('@elice/icons');
9
+ var types = require('@elice/types');
10
+ var utils = require('@elice/utils');
11
+ var recoil = require('recoil');
12
+ var styled = require('styled-components');
13
+ var recoil$1 = require('../context/recoil.js');
14
+ var context = require('../context/context.js');
15
+ require('../context/recoilTypes.js');
16
+ require('../context/subjects.js');
17
+ require('../context/ExerciseProvider.js');
18
+ var ExerciseIntlProvider = require('../context/ExerciseIntlProvider.js');
19
+ var fileTreeButton_en = require('./locales/fileTreeButton.en.json.js');
20
+ var fileTreeButton_ko = require('./locales/fileTreeButton.ko.json.js');
21
+
22
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
23
+
24
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
25
+ var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
26
+
27
+ const ICON_BUTTON_SIZE = '2.25rem';
28
+ const StyledFileTreeButton = styled__default["default"](blocks.IconButton).withConfig({
29
+ componentId: "sc-ohtsjn-0"
30
+ })(["width:", " !important;height:", " !important;border-right:1px solid ", " !important;background-color:", " !important;&:hover{background-color:", " !important;}"], ICON_BUTTON_SIZE, ICON_BUTTON_SIZE, designTokens.base.color.navy7, props => props.active ? designTokens.base.color.navy8 : designTokens.base.color.navy8, designTokens.base.color.navy9);
31
+ const ExerciseFileTabsFileTreeButton = React.forwardRef((_, ref) => {
32
+ const intl = reactIntl.useIntl();
33
+ const {
34
+ materialExerciseId
35
+ } = React__default["default"].useContext(context.ExerciseContext);
36
+ const exercise = recoil.useRecoilValue(recoil$1.exerciseState(materialExerciseId));
37
+ const [exerciseFileTreeOpened, setExerciseFileTreeOpened] = recoil.useRecoilState(recoil$1.exerciseFileTreeOpenedState);
38
+ /**
39
+ * Handle click.
40
+ */
41
+
42
+ const handleClick = () => {
43
+ setExerciseFileTreeOpened(prev => !prev);
44
+ }; //
45
+ // apply default file tree opened state.
46
+ //
47
+
48
+
49
+ React__default["default"].useEffect(() => {
50
+ var _a;
51
+
52
+ const exerciseUiConfig = utils.eliceApiUiConfigNormalizeHelper('materialExercise', (_a = exercise === null || exercise === void 0 ? void 0 : exercise.uiConfig) !== null && _a !== void 0 ? _a : {});
53
+ setExerciseFileTreeOpened(exerciseUiConfig.editorFileTreeDefaultStatus === types.enums.ExerciseUiConfigEditorFileTreeDefaultStatus.Open);
54
+ }, // eslint-disable-next-line react-hooks/exhaustive-deps
55
+ [exercise]); //
56
+ //
57
+ //
58
+
59
+ const [el] = reactUse.useHover(isHovering => {
60
+ return React__default["default"].createElement("div", null, React__default["default"].createElement(blocks.Tooltip, {
61
+ title: exerciseFileTreeOpened ? intl.formatMessage({
62
+ id: 'exerciseFileTab.fileTreeButton.tooltip.close'
63
+ }) : intl.formatMessage({
64
+ id: 'exerciseFileTab.fileTreeButton.tooltip.open'
65
+ }),
66
+ placement: "bottom-start"
67
+ }, React__default["default"].createElement(StyledFileTreeButton, {
68
+ icon: isHovering ? icons.eilArrowRightwardsDouble : icons.eilFolder,
69
+ iconRotate: !isHovering ? 0 : exerciseFileTreeOpened ? 180 : 0,
70
+ role: "gray3",
71
+ size: "tiny",
72
+ transparent: true,
73
+ border: false,
74
+ hasBorderRadius: false,
75
+ active: exerciseFileTreeOpened,
76
+ onClick: handleClick,
77
+ ref: ref
78
+ })));
79
+ });
80
+ return (exercise === null || exercise === void 0 ? void 0 : exercise.uiConfig.editorFileTreeDefaultStatus) === types.enums.ExerciseUiConfigEditorFileTreeDefaultStatus.Hide ? null : el;
81
+ }); //
82
+ //
83
+ //
84
+
85
+ var ExerciseFileTabsFileTreeButton$1 = ExerciseIntlProvider.withForwardRefExerciseIntlProvider(ExerciseFileTabsFileTreeButton, {
86
+ en: fileTreeButton_en,
87
+ ko: fileTreeButton_ko
88
+ });
89
+
90
+ module.exports = ExerciseFileTabsFileTreeButton$1;
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare const ExerciseFileTabsLazy: () => JSX.Element;
3
+ export default ExerciseFileTabsLazy;
@@ -0,0 +1,21 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ require('../../shared/exercise-shimmer/ExerciseFileShimmer.js');
5
+ var ExerciseFileTabsShimmer = require('../../shared/exercise-shimmer/ExerciseFileTabsShimmer.js');
6
+ require('../../shared/exercise-shimmer/ExerciseFileTabShimmer.js');
7
+ require('../../shared/exercise-shimmer/ExerciseFileTreeListShimmer.js');
8
+ require('../../shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js');
9
+ var ExerciseFileTabs = require('./ExerciseFileTabs.js');
10
+
11
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+
13
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
+
15
+ const ExerciseFileTabsLazy = () => {
16
+ return React__default["default"].createElement(React__default["default"].Suspense, {
17
+ fallback: React__default["default"].createElement(ExerciseFileTabsShimmer, null)
18
+ }, React__default["default"].createElement(ExerciseFileTabs, null));
19
+ };
20
+
21
+ module.exports = ExerciseFileTabsLazy;
@@ -0,0 +1,2 @@
1
+ export { default as ExerciseFileTabs } from './ExerciseFileTabs';
2
+ export { default as ExerciseFileTabsLazy } from './ExerciseFileTabsLazy';
@@ -0,0 +1,5 @@
1
+ 'use strict';
2
+
3
+ var phrasesEn = {"exerciseFileTab.fileTreeButton.tooltip.close":"Close Filetree","exerciseFileTab.fileTreeButton.tooltip.open":"Open Filetree"};
4
+
5
+ module.exports = phrasesEn;
@@ -0,0 +1,5 @@
1
+ 'use strict';
2
+
3
+ var phrasesKo = {"exerciseFileTab.fileTreeButton.tooltip.close":"파일 트리 닫기","exerciseFileTab.fileTreeButton.tooltip.open":"파일 트리 열기"};
4
+
5
+ module.exports = phrasesKo;
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ declare const _default: React.VFC<{
3
+ children?: React.ReactNode;
4
+ }>;
5
+ export default _default;