@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,331 @@
1
+ import React from 'react';
2
+ import { getOrgMaterialExerciseExerciseImageExerciseFileGet } from '@elice/api-client';
3
+ import { Flex } from '@elice/blocks';
4
+ import { enums } from '@elice/types';
5
+ import { useRecoilValue, useSetRecoilState } from 'recoil';
6
+ import ExerciseFileShimmer from '../../shared/exercise-shimmer/ExerciseFileShimmer.js';
7
+ import '../../shared/exercise-shimmer/ExerciseFileTabsShimmer.js';
8
+ import '../../shared/exercise-shimmer/ExerciseFileTabShimmer.js';
9
+ import '../../shared/exercise-shimmer/ExerciseFileTreeListShimmer.js';
10
+ import '../../shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js';
11
+ import FileViewerNonViewable from '../../shared/file-viewer/FileViewerNonViewable.js';
12
+ import MonacoEditorLazy from '../../shared/monaco-editor/MonacoEditorLazy.js';
13
+ import '../../shared/monaco-editor/MonacoEditorPerferenceForm.js';
14
+ import 'monaco-editor/esm/vs/editor/editor.api';
15
+ import '../../shared/monaco-editor/constants/monaco/preferences.js';
16
+ import 'react-use';
17
+ import 'socket.io-client';
18
+ import { exerciseState, exerciseRoomState, exerciseLectureState, exerciseEditorPreferenceState, exerciseActiveFilenameState, exerciseWebsocketQuery, exerciseFileEditorCursorState, exerciseFileEditorCursorSelectionValueState } from '../context/recoil.js';
19
+ import { ExerciseContext } from '../context/context.js';
20
+ import '../context/recoilTypes.js';
21
+ import { exerciseFileEditorContentChange$, exerciseFileEditorSaveAction$ } from '../context/subjects.js';
22
+ import '../context/ExerciseProvider.js';
23
+ import '../../../constants/arduino.js';
24
+ import { checkExerciseFileResettable } from '../../../utils/exerciseFile.js';
25
+ import '@elice/material-shared-utils';
26
+ import '@elice/websocket';
27
+ import 'humps';
28
+ import 'ot-text-unicode';
29
+ import { useUsercodeEditWebSocket } from '../../../hooks/useUsercodeEditWebSocket.js';
30
+ import ExerciseFileReadOnlyBanner from './ExerciseFileReadOnlyBanner.js';
31
+
32
+ //
33
+ //
34
+
35
+ /**
36
+ * Exercise file (code) editor for editable files
37
+ */
38
+
39
+ const ExerciseFileEditor = () => {
40
+ const {
41
+ materialExerciseId,
42
+ exerciseRoomId,
43
+ readOnlyEditor,
44
+ readOnlyActiveFile,
45
+ locale
46
+ } = React.useContext(ExerciseContext);
47
+ const exercise = useRecoilValue(exerciseState(materialExerciseId));
48
+ const exerciseRoom = useRecoilValue(exerciseRoomState(exerciseRoomId));
49
+ const lecture = useRecoilValue(exerciseLectureState(exercise === null || exercise === void 0 ? void 0 : exercise.lectureId));
50
+ const preference = useRecoilValue(exerciseEditorPreferenceState);
51
+ const activeFilename = useRecoilValue(exerciseActiveFilenameState);
52
+ const readOnly = readOnlyEditor || readOnlyActiveFile;
53
+ const setUsercodeWebSocketState = useSetRecoilState(exerciseWebsocketQuery('usercodeEdit'));
54
+ const setFileEditorCursorState = useSetRecoilState(exerciseFileEditorCursorState);
55
+ const setFileEditorCursorSelectionValueState = useSetRecoilState(exerciseFileEditorCursorSelectionValueState); // editor
56
+
57
+ const editorApis = React.useRef(null);
58
+ const editorDocHistories = React.useRef({});
59
+ const serverInitiatedVersions = React.useRef([]); // ready state
60
+
61
+ const [isEditorReady, setEditorReady] = React.useState(false);
62
+ const [isWebSocketReady, setWebSocketReady] = React.useState(false);
63
+ const isReady = isEditorReady && isWebSocketReady;
64
+ const [isFileResettable, setFileResettable] = React.useState(checkExerciseFileResettable(activeFilename, {
65
+ exercise,
66
+ exerciseRoom
67
+ }));
68
+ /**
69
+ * Set value of current file.
70
+ */
71
+
72
+ const setValue = async content => {
73
+ var _a;
74
+
75
+ if (!isFileResettable) {
76
+ console.warn('Cannot reset file since not resettable.');
77
+ return;
78
+ }
79
+
80
+ if (!activeFilename) {
81
+ console.warn('Cannot reset file since no file selected.');
82
+ return;
83
+ }
84
+
85
+ if (content) {
86
+ (_a = editorApis.current) === null || _a === void 0 ? void 0 : _a.setValue(content);
87
+ } // reset as initial value on `null` received.
88
+ else if (content === null) {
89
+ const readyExerciseImage = exercise === null || exercise === void 0 ? void 0 : exercise.readyExerciseImage;
90
+
91
+ if (!editorApis.current || !readyExerciseImage) {
92
+ return;
93
+ }
94
+
95
+ return getOrgMaterialExerciseExerciseImageExerciseFileGet({
96
+ exerciseImageId: readyExerciseImage.id,
97
+ filename: activeFilename
98
+ }).then(res => res.exerciseFile.content).then(content => {
99
+ var _a;
100
+
101
+ if (typeof content === 'string') {
102
+ (_a = editorApis.current) === null || _a === void 0 ? void 0 : _a.setValue(content);
103
+ } else {
104
+ setFileResettable(false);
105
+ }
106
+ });
107
+ }
108
+ };
109
+ /**
110
+ * Update editor document history.
111
+ */
112
+
113
+
114
+ const pushEditorDocHistories = () => {
115
+ const _editorApis = editorApis.current;
116
+
117
+ if (!_editorApis) {
118
+ return;
119
+ }
120
+
121
+ if (typeof _editorApis.getMonacoModel === 'function') {
122
+ const model = _editorApis.getMonacoModel();
123
+
124
+ if (model) {
125
+ editorDocHistories.current[model.getVersionId()] = model.getValue();
126
+ }
127
+ }
128
+ };
129
+ /**
130
+ * Handle usercode edit websocket received `WRITE_NOTI` message,
131
+ * move cursor or insert / delete content.
132
+ */
133
+
134
+
135
+ const handleWebsocketUsercodeWriteNoti = ots => {
136
+ var _a, _b, _c;
137
+
138
+ let cursor = 0;
139
+
140
+ for (const ot of ots) {
141
+ const model = (_a = editorApis.current) === null || _a === void 0 ? void 0 : _a.getMonacoModel();
142
+
143
+ if (!model) {
144
+ continue;
145
+ } // remove previous versions.
146
+
147
+
148
+ if (serverInitiatedVersions.current.length > 100) {
149
+ serverInitiatedVersions.current.splice(0, 50);
150
+ }
151
+
152
+ switch (typeof ot) {
153
+ // cursor changed...
154
+ case 'number':
155
+ cursor += ot;
156
+ break;
157
+ // insertion
158
+
159
+ case 'string':
160
+ serverInitiatedVersions.current.push(model.getVersionId());
161
+ (_b = editorApis.current) === null || _b === void 0 ? void 0 : _b.insertValue(cursor, ot);
162
+ cursor += ot.length;
163
+ break;
164
+ // deletion
165
+
166
+ default:
167
+ serverInitiatedVersions.current.push(model.getVersionId());
168
+ (_c = editorApis.current) === null || _c === void 0 ? void 0 : _c.removeValue(cursor, cursor + (typeof ot.d === 'number' ? ot.d : ot.d.length));
169
+ break;
170
+ }
171
+ }
172
+ };
173
+ /**
174
+ * Usercode edit web socket.
175
+ */
176
+
177
+
178
+ const wsUsercode = useUsercodeEditWebSocket({
179
+ exerciseRoomId,
180
+ filename: activeFilename,
181
+ onInit: () => setWebSocketReady(true),
182
+ onWriteNoti: handleWebsocketUsercodeWriteNoti
183
+ });
184
+ /**
185
+ *
186
+ */
187
+
188
+ const handleChange = e => {
189
+ const index = serverInitiatedVersions.current.indexOf(e.versionId - 1);
190
+
191
+ if (index !== -1) {
192
+ serverInitiatedVersions.current.splice(index, 1);
193
+ return;
194
+ } // get previous model doc
195
+
196
+
197
+ const prevDoc = editorDocHistories.current[e.versionId - 1]; // send OTs to server
198
+
199
+ for (const change of e.changes) {
200
+ // insertion
201
+ if (change.rangeLength === 0 && !readOnly) {
202
+ wsUsercode.sendOTs(change.rangeOffset > 0 ? [change.rangeOffset, change.text] : [change.text]);
203
+ } // deletion
204
+ else {
205
+ if (prevDoc && !readOnly) {
206
+ wsUsercode.sendOTs([change.rangeOffset || null, {
207
+ d: prevDoc.slice(change.rangeOffset, change.rangeOffset + change.rangeLength)
208
+ }].filter(Boolean));
209
+ } // replace
210
+
211
+
212
+ if (change.text.length > 0 && !readOnly) {
213
+ wsUsercode.sendOTs(change.rangeOffset > 0 ? [change.rangeOffset, change.text] : [change.text]);
214
+ }
215
+ }
216
+ }
217
+
218
+ delete editorDocHistories.current[e.versionId - 1];
219
+ };
220
+ /**
221
+ * Handle editor cursor change.
222
+ */
223
+
224
+
225
+ const handleEditorCursor = range => {
226
+ var _a, _b;
227
+
228
+ if (!readOnly) {
229
+ wsUsercode.sendCursor(range);
230
+ }
231
+
232
+ setFileEditorCursorState(range);
233
+ setFileEditorCursorSelectionValueState((_b = (_a = editorApis.current) === null || _a === void 0 ? void 0 : _a.getValueInRange(range.from, range.to)) !== null && _b !== void 0 ? _b : '');
234
+ };
235
+ /**
236
+ * Handle editor save shortcut emitted.
237
+ */
238
+
239
+
240
+ const handleSave = () => {
241
+ exerciseFileEditorSaveAction$.next();
242
+ }; //
243
+ // Handle editor content change.
244
+ //
245
+
246
+
247
+ React.useEffect(() => {
248
+ var _a;
249
+
250
+ const _editorApis = editorApis.current;
251
+
252
+ if (!_editorApis || !isReady) {
253
+ return;
254
+ }
255
+
256
+ _editorApis.setValue(wsUsercode.doc);
257
+
258
+ pushEditorDocHistories();
259
+ const subscription = (_a = _editorApis.editor) === null || _a === void 0 ? void 0 : _a.onDidChangeModelContent(e => {
260
+ pushEditorDocHistories();
261
+ handleChange(e);
262
+ });
263
+ return () => {
264
+ if (subscription) {
265
+ subscription.dispose();
266
+ }
267
+ };
268
+ }, // eslint-disable-next-line react-hooks/exhaustive-deps
269
+ [isReady, readOnly]); //
270
+ // Handle websocket status change.
271
+ //
272
+
273
+ React.useEffect(() => setUsercodeWebSocketState(wsUsercode.readyState), // eslint-disable-next-line react-hooks/exhaustive-deps
274
+ [wsUsercode.readyState]); //
275
+ // handle content change request to code editor.
276
+ //
277
+
278
+ React.useEffect(() => {
279
+ const contentChangeSub = exerciseFileEditorContentChange$.subscribe(v => {
280
+ setValue(v).catch(() => void 0);
281
+ });
282
+ return () => {
283
+ contentChangeSub.unsubscribe();
284
+ };
285
+ }, // eslint-disable-next-line react-hooks/exhaustive-deps
286
+ []); //
287
+ //
288
+ //
289
+ // empty file
290
+
291
+ if (!activeFilename) {
292
+ return React.createElement(ExerciseFileShimmer, null);
293
+ } // non-editable file
294
+
295
+
296
+ if (!wsUsercode.docEditable) {
297
+ return React.createElement(FileViewerNonViewable, {
298
+ filename: activeFilename,
299
+ locale: locale
300
+ });
301
+ } // websocket not ready
302
+
303
+
304
+ if (!isWebSocketReady) {
305
+ return React.createElement(ExerciseFileShimmer, null);
306
+ }
307
+
308
+ const uniqueFilePath = `code/${exerciseRoomId}`;
309
+ const editorFilename = `${uniqueFilePath}/${activeFilename}`;
310
+ return React.createElement(Flex, {
311
+ column: true,
312
+ width: "100%",
313
+ height: "100%"
314
+ }, React.createElement(ExerciseFileReadOnlyBanner, null), React.createElement(MonacoEditorLazy, {
315
+ key: editorFilename,
316
+ defaultValue: "",
317
+ filename: editorFilename,
318
+ markers: wsUsercode.markers,
319
+ preference: Object.assign(Object.assign({}, preference), {
320
+ readOnly
321
+ }),
322
+ noLanguageIntellisense: (lecture === null || lecture === void 0 ? void 0 : lecture.lectureType) === enums.LectureType.Test,
323
+ locale: locale,
324
+ onLoad: () => setEditorReady(true),
325
+ onCursor: handleEditorCursor,
326
+ onSave: handleSave,
327
+ ref: editorApis
328
+ }));
329
+ }; //
330
+
331
+ export { ExerciseFileEditor as default };
@@ -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,36 @@
1
+ import React from 'react';
2
+ import { FormattedMessage } from 'react-intl';
3
+ import { Text } from '@elice/blocks';
4
+ import { base } from '@elice/design-tokens';
5
+ import styled from 'styled-components';
6
+ import '../context/recoil.js';
7
+ import { ExerciseContext } from '../context/context.js';
8
+ import '../context/recoilTypes.js';
9
+ import '../context/subjects.js';
10
+ import '../context/ExerciseProvider.js';
11
+
12
+ const StyledEditorReadOnlyBanner = styled.div.withConfig({
13
+ componentId: "sc-kh9iw2-0"
14
+ })(["flex:0 0 auto;display:flex;align-items:center;margin:0.75rem;padding:0 1rem;height:2rem;border:1px solid ", ";border-radius:2px;"], base.color.navy5);
15
+ /**
16
+ * Banner for readonly exercise file.
17
+ */
18
+
19
+ const ExerciseFileReadOnlyBanner = () => {
20
+ const {
21
+ readOnlyActiveFile
22
+ } = React.useContext(ExerciseContext);
23
+
24
+ if (!readOnlyActiveFile) {
25
+ return null;
26
+ }
27
+
28
+ return React.createElement(StyledEditorReadOnlyBanner, null, React.createElement(Text, {
29
+ size: "tiny",
30
+ role: "gray3"
31
+ }, React.createElement(FormattedMessage, {
32
+ id: "[\uC77D\uAE30\uC804\uC6A9] \uC774 \uD30C\uC77C\uC740 \uC77D\uAE30\uC804\uC6A9 \uC785\uB2C8\uB2E4."
33
+ })));
34
+ }; //
35
+
36
+ export { ExerciseFileReadOnlyBanner as default };
@@ -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,70 @@
1
+ import React from 'react';
2
+ import { useRecoilState } from 'recoil';
3
+ import styled from 'styled-components';
4
+ import '../../shared/exercise-shimmer/ExerciseFileShimmer.js';
5
+ import ExerciseFileTabsShimmer from '../../shared/exercise-shimmer/ExerciseFileTabsShimmer.js';
6
+ import '../../shared/exercise-shimmer/ExerciseFileTabShimmer.js';
7
+ import '../../shared/exercise-shimmer/ExerciseFileTreeListShimmer.js';
8
+ import '../../shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js';
9
+ import { exerciseActiveFilenameState, exerciseFileTabsOpenedState } from '../context/recoil.js';
10
+ import { ExerciseContext } from '../context/context.js';
11
+ import '../context/recoilTypes.js';
12
+ import '../context/subjects.js';
13
+ import '../context/ExerciseProvider.js';
14
+
15
+ const AsyncFileTabs = React.lazy(() => import('../../shared/file-tabs/FileTabs.js'));
16
+ const StyledFileTabsWrapper = styled.div.withConfig({
17
+ componentId: "sc-11fdoyl-0"
18
+ })(["flex:0 0 3rem;"]);
19
+
20
+ const ExerciseFileTabs = () => {
21
+ const {
22
+ exerciseRoomId,
23
+ materialExerciseId
24
+ } = React.useContext(ExerciseContext);
25
+ const [activeFilename, setActiveFilename] = useRecoilState(exerciseActiveFilenameState);
26
+ const [openedTabs, setOpenedTabs] = useRecoilState(exerciseFileTabsOpenedState({
27
+ materialExerciseId,
28
+ exerciseRoomId
29
+ }));
30
+
31
+ const handleCloseTab = path => {
32
+ const updatedTabs = openedTabs.filter(tab => tab !== path);
33
+ setOpenedTabs(updatedTabs);
34
+
35
+ if (activeFilename === path) {
36
+ setActiveFilename(updatedTabs.length > 0 ? updatedTabs[0] : '');
37
+ }
38
+ };
39
+
40
+ const handleTabOrderChange = (currentIndex, movedIndex) => {
41
+ const newOpenedTabs = [...openedTabs];
42
+ const movingTab = newOpenedTabs.splice(currentIndex, 1);
43
+ newOpenedTabs.splice(movedIndex, 0, ...movingTab);
44
+ setOpenedTabs(newOpenedTabs);
45
+ };
46
+
47
+ const handleActivePathChange = (path, isDirectory = false) => {
48
+ if (isDirectory) {
49
+ return;
50
+ }
51
+
52
+ if (!openedTabs.includes(path)) {
53
+ setOpenedTabs([...openedTabs, path]);
54
+ }
55
+
56
+ setActiveFilename(path);
57
+ };
58
+
59
+ return React.createElement(StyledFileTabsWrapper, null, React.createElement(React.Suspense, {
60
+ fallback: React.createElement(ExerciseFileTabsShimmer, null)
61
+ }, React.createElement(AsyncFileTabs, {
62
+ openedTabs: openedTabs,
63
+ activeTab: activeFilename || undefined,
64
+ onCloseTab: handleCloseTab,
65
+ onSelectTab: handleActivePathChange,
66
+ onTabOrderChange: handleTabOrderChange
67
+ })));
68
+ };
69
+
70
+ export { ExerciseFileTabs as default };
@@ -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,83 @@
1
+ import React, { forwardRef } from 'react';
2
+ import { useIntl } from 'react-intl';
3
+ import { useHover } from 'react-use';
4
+ import { IconButton, Tooltip } from '@elice/blocks';
5
+ import { base } from '@elice/design-tokens';
6
+ import { eilArrowRightwardsDouble, eilFolder } from '@elice/icons';
7
+ import { enums } from '@elice/types';
8
+ import { eliceApiUiConfigNormalizeHelper } from '@elice/utils';
9
+ import { useRecoilValue, useRecoilState } from 'recoil';
10
+ import styled from 'styled-components';
11
+ import { exerciseState, exerciseFileTreeOpenedState } from '../context/recoil.js';
12
+ import { ExerciseContext } from '../context/context.js';
13
+ import '../context/recoilTypes.js';
14
+ import '../context/subjects.js';
15
+ import '../context/ExerciseProvider.js';
16
+ import { withForwardRefExerciseIntlProvider } from '../context/ExerciseIntlProvider.js';
17
+ import phrasesEn from './locales/fileTreeButton.en.json.js';
18
+ import phrasesKo from './locales/fileTreeButton.ko.json.js';
19
+
20
+ const ICON_BUTTON_SIZE = '2.25rem';
21
+ const StyledFileTreeButton = styled(IconButton).withConfig({
22
+ componentId: "sc-ohtsjn-0"
23
+ })(["width:", " !important;height:", " !important;border-right:1px solid ", " !important;background-color:", " !important;&:hover{background-color:", " !important;}"], ICON_BUTTON_SIZE, ICON_BUTTON_SIZE, base.color.navy7, props => props.active ? base.color.navy8 : base.color.navy8, base.color.navy9);
24
+ const ExerciseFileTabsFileTreeButton = forwardRef((_, ref) => {
25
+ const intl = useIntl();
26
+ const {
27
+ materialExerciseId
28
+ } = React.useContext(ExerciseContext);
29
+ const exercise = useRecoilValue(exerciseState(materialExerciseId));
30
+ const [exerciseFileTreeOpened, setExerciseFileTreeOpened] = useRecoilState(exerciseFileTreeOpenedState);
31
+ /**
32
+ * Handle click.
33
+ */
34
+
35
+ const handleClick = () => {
36
+ setExerciseFileTreeOpened(prev => !prev);
37
+ }; //
38
+ // apply default file tree opened state.
39
+ //
40
+
41
+
42
+ React.useEffect(() => {
43
+ var _a;
44
+
45
+ const exerciseUiConfig = eliceApiUiConfigNormalizeHelper('materialExercise', (_a = exercise === null || exercise === void 0 ? void 0 : exercise.uiConfig) !== null && _a !== void 0 ? _a : {});
46
+ setExerciseFileTreeOpened(exerciseUiConfig.editorFileTreeDefaultStatus === enums.ExerciseUiConfigEditorFileTreeDefaultStatus.Open);
47
+ }, // eslint-disable-next-line react-hooks/exhaustive-deps
48
+ [exercise]); //
49
+ //
50
+ //
51
+
52
+ const [el] = useHover(isHovering => {
53
+ return React.createElement("div", null, React.createElement(Tooltip, {
54
+ title: exerciseFileTreeOpened ? intl.formatMessage({
55
+ id: 'exerciseFileTab.fileTreeButton.tooltip.close'
56
+ }) : intl.formatMessage({
57
+ id: 'exerciseFileTab.fileTreeButton.tooltip.open'
58
+ }),
59
+ placement: "bottom-start"
60
+ }, React.createElement(StyledFileTreeButton, {
61
+ icon: isHovering ? eilArrowRightwardsDouble : eilFolder,
62
+ iconRotate: !isHovering ? 0 : exerciseFileTreeOpened ? 180 : 0,
63
+ role: "gray3",
64
+ size: "tiny",
65
+ transparent: true,
66
+ border: false,
67
+ hasBorderRadius: false,
68
+ active: exerciseFileTreeOpened,
69
+ onClick: handleClick,
70
+ ref: ref
71
+ })));
72
+ });
73
+ return (exercise === null || exercise === void 0 ? void 0 : exercise.uiConfig.editorFileTreeDefaultStatus) === enums.ExerciseUiConfigEditorFileTreeDefaultStatus.Hide ? null : el;
74
+ }); //
75
+ //
76
+ //
77
+
78
+ var ExerciseFileTabsFileTreeButton$1 = withForwardRefExerciseIntlProvider(ExerciseFileTabsFileTreeButton, {
79
+ en: phrasesEn,
80
+ ko: phrasesKo
81
+ });
82
+
83
+ export { ExerciseFileTabsFileTreeButton$1 as default };
@@ -0,0 +1,3 @@
1
+ /// <reference types="react" />
2
+ declare const ExerciseFileTabsLazy: () => JSX.Element;
3
+ export default ExerciseFileTabsLazy;
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ import '../../shared/exercise-shimmer/ExerciseFileShimmer.js';
3
+ import ExerciseFileTabsShimmer from '../../shared/exercise-shimmer/ExerciseFileTabsShimmer.js';
4
+ import '../../shared/exercise-shimmer/ExerciseFileTabShimmer.js';
5
+ import '../../shared/exercise-shimmer/ExerciseFileTreeListShimmer.js';
6
+ import '../../shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js';
7
+ import ExerciseFileTabs from './ExerciseFileTabs.js';
8
+
9
+ const ExerciseFileTabsLazy = () => {
10
+ return React.createElement(React.Suspense, {
11
+ fallback: React.createElement(ExerciseFileTabsShimmer, null)
12
+ }, React.createElement(ExerciseFileTabs, null));
13
+ };
14
+
15
+ export { ExerciseFileTabsLazy as default };
@@ -0,0 +1,2 @@
1
+ export { default as ExerciseFileTabs } from './ExerciseFileTabs';
2
+ export { default as ExerciseFileTabsLazy } from './ExerciseFileTabsLazy';
@@ -0,0 +1,3 @@
1
+ var phrasesEn = {"exerciseFileTab.fileTreeButton.tooltip.close":"Close Filetree","exerciseFileTab.fileTreeButton.tooltip.open":"Open Filetree"};
2
+
3
+ export { phrasesEn as default };
@@ -0,0 +1,3 @@
1
+ var phrasesKo = {"exerciseFileTab.fileTreeButton.tooltip.close":"파일 트리 닫기","exerciseFileTab.fileTreeButton.tooltip.open":"파일 트리 열기"};
2
+
3
+ export { phrasesKo as default };
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ declare const _default: React.VFC<{
3
+ children?: React.ReactNode;
4
+ }>;
5
+ export default _default;