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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (459) hide show
  1. package/cjs/_virtual/_rollupPluginBabelHelpers.js +519 -0
  2. package/cjs/assets/empty.png.js +1 -2
  3. package/cjs/components/index.js +25 -0
  4. package/cjs/components/locales/index.js +13 -0
  5. package/cjs/components/material-exercise/MaterialExercise.d.ts +1 -1
  6. package/cjs/components/material-exercise/MaterialExercise.js +111 -75
  7. package/cjs/components/material-exercise/MaterialExercise.styled.js +18 -14
  8. package/cjs/components/material-exercise/MaterialExerciseMobile.d.ts +1 -1
  9. package/cjs/components/material-exercise/MaterialExerciseMobile.js +17 -7
  10. package/cjs/components/material-exercise/context/ExerciseProvider.js +68 -58
  11. package/cjs/components/material-exercise/context/ExerciseProviderNoImage.js +39 -30
  12. package/cjs/components/material-exercise/context/context.js +5 -1
  13. package/cjs/components/material-exercise/context/index.js +57 -0
  14. package/cjs/components/material-exercise/context/recoil.js +542 -293
  15. package/cjs/components/material-exercise/context/subjects.js +4 -4
  16. package/cjs/components/material-exercise/context/types.d.ts +2 -2
  17. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +100 -78
  18. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +12 -8
  19. package/cjs/components/material-exercise/exercise-code-history/index.js +7 -0
  20. package/cjs/components/material-exercise/exercise-code-history/locales/index.js +13 -0
  21. package/cjs/components/material-exercise/exercise-file/ExerciseFile.js +30 -27
  22. package/cjs/components/material-exercise/exercise-file/index.js +7 -0
  23. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +225 -149
  24. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +20 -13
  25. package/cjs/components/material-exercise/exercise-file-editor/index.js +7 -0
  26. package/cjs/components/material-exercise/exercise-file-editor/locales/index.js +13 -0
  27. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +49 -29
  28. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.d.ts +1 -2
  29. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +10 -4
  30. package/cjs/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/ExerciseFileTabsFileTreeButton.js +53 -36
  31. package/cjs/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/index.js +7 -0
  32. package/cjs/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/locales/index.js +13 -0
  33. package/cjs/components/material-exercise/exercise-file-tabs/index.js +9 -0
  34. package/cjs/components/material-exercise/exercise-file-tabs/locales/index.js +13 -0
  35. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +353 -211
  36. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.d.ts +1 -2
  37. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +10 -4
  38. package/cjs/components/material-exercise/exercise-file-tree/index.js +9 -0
  39. package/cjs/components/material-exercise/exercise-file-tree/locales/index.js +13 -0
  40. package/cjs/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +18 -15
  41. package/cjs/components/material-exercise/exercise-file-viewer/index.js +7 -0
  42. package/cjs/components/material-exercise/exercise-menu/ExerciseMenu.js +21 -12
  43. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +12 -11
  44. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +123 -80
  45. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +100 -67
  46. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuReset.js +40 -22
  47. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +144 -117
  48. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +17 -13
  49. package/cjs/components/material-exercise/exercise-menu/index.js +7 -0
  50. package/cjs/components/material-exercise/exercise-menu/locales/index.js +13 -0
  51. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +32 -19
  52. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.d.ts +1 -2
  53. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +10 -4
  54. package/cjs/components/material-exercise/exercise-multilang-dropdown/index.js +9 -0
  55. package/cjs/components/material-exercise/exercise-preview/ExercisePreview.js +31 -24
  56. package/cjs/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +13 -6
  57. package/cjs/components/material-exercise/exercise-preview/index.js +7 -0
  58. package/cjs/components/material-exercise/exercise-preview/locales/index.js +13 -0
  59. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +51 -35
  60. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +14 -6
  61. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +90 -78
  62. package/cjs/components/material-exercise/exercise-rightpane/index.js +7 -0
  63. package/cjs/components/material-exercise/exercise-rightpane/locales/index.js +13 -0
  64. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.js +25 -12
  65. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.styled.js +18 -12
  66. package/cjs/components/material-exercise/exercise-room/ExerciseRoomDetail.js +504 -349
  67. package/cjs/components/material-exercise/exercise-room/ExerciseRoomList.js +197 -132
  68. package/cjs/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -2
  69. package/cjs/components/material-exercise/exercise-room/helpers/index.js +7 -0
  70. package/cjs/components/material-exercise/exercise-room/index.js +7 -0
  71. package/cjs/components/material-exercise/exercise-room/locales/index.js +13 -0
  72. package/cjs/components/material-exercise/exercise-runner/ExerciseRunner.js +205 -142
  73. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +5 -1
  74. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerController.js +25 -16
  75. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +118 -86
  76. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +33 -19
  77. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +95 -82
  78. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +68 -52
  79. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +136 -87
  80. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +6 -2
  81. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +21 -15
  82. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +36 -23
  83. package/cjs/components/material-exercise/exercise-runner/index.js +7 -0
  84. package/cjs/components/material-exercise/exercise-runner/locales/index.js +13 -0
  85. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +402 -248
  86. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +12 -8
  87. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +74 -50
  88. package/cjs/components/material-exercise/exercise-submit-history/index.js +7 -0
  89. package/cjs/components/material-exercise/exercise-submit-history/locales/index.js +13 -0
  90. package/cjs/components/material-exercise/index.js +9 -0
  91. package/cjs/components/shared/exercise-menu-button/ExerciseMenuButton.js +32 -23
  92. package/cjs/components/shared/exercise-menu-button/index.js +7 -0
  93. package/cjs/components/shared/exercise-shimmer/ExerciseFileShimmer.js +44 -38
  94. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +26 -20
  95. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +14 -8
  96. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +28 -22
  97. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +24 -9
  98. package/cjs/components/shared/exercise-shimmer/index.js +15 -0
  99. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.js +6 -5
  100. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.styled.js +5 -1
  101. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.js +10 -10
  102. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +13 -5
  103. package/cjs/components/shared/exercise-version-list/index.js +9 -0
  104. package/cjs/components/shared/file-icon/FileIcon.js +23 -16
  105. package/cjs/components/shared/file-icon/index.js +7 -0
  106. package/cjs/components/shared/file-tabs/FileTab.js +47 -33
  107. package/cjs/components/shared/file-tabs/FileTab.styled.js +23 -15
  108. package/cjs/components/shared/file-tabs/FileTabs.js +66 -39
  109. package/cjs/components/shared/file-tabs/FileTabs.styled.js +6 -2
  110. package/cjs/components/shared/file-tabs/index.js +7 -0
  111. package/cjs/components/shared/file-tabs/util.js +27 -14
  112. package/cjs/components/shared/file-tree/FileTree.js +20 -10
  113. package/cjs/components/shared/file-tree/FileTreeConfig.js +46 -40
  114. package/cjs/components/shared/file-tree/FileTreeList.js +43 -40
  115. package/cjs/components/shared/file-tree/FileTreeListItemContent.js +128 -99
  116. package/cjs/components/shared/file-tree/FileTreeListItemContent.styled.js +29 -21
  117. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.js +106 -96
  118. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.styled.js +10 -6
  119. package/cjs/components/shared/file-tree/FileTreeListItemContentMenu.js +133 -91
  120. package/cjs/components/shared/file-tree/FileTreeListItems.js +149 -137
  121. package/cjs/components/shared/file-tree/FileTreeListItems.styled.js +6 -2
  122. package/cjs/components/shared/file-tree/FileTreeToolbar.styled.js +5 -1
  123. package/cjs/components/shared/file-tree/context/FileTreeContext.d.ts +1 -1
  124. package/cjs/components/shared/file-tree/context/FileTreeContext.js +101 -79
  125. package/cjs/components/shared/file-tree/context/index.js +9 -0
  126. package/cjs/components/shared/file-tree/file-tree-toolbar/FileTreeToolbar.js +59 -54
  127. package/cjs/components/shared/file-tree/file-tree-toolbar/index.js +7 -0
  128. package/cjs/components/shared/file-tree/file-tree-toolbar/locales/index.js +13 -0
  129. package/cjs/components/shared/file-tree/index.js +7 -0
  130. package/cjs/components/shared/file-tree/locales/index.js +13 -0
  131. package/cjs/components/shared/file-tree/utils/fileTreeFiles.js +24 -20
  132. package/cjs/components/shared/file-tree/utils/fileTreeGenerator.js +193 -146
  133. package/cjs/components/shared/file-tree/utils/fileTreeInput.js +11 -0
  134. package/cjs/components/shared/file-tree/utils/fileTreeItem.js +1 -1
  135. package/cjs/components/shared/file-tree/utils/fileTreePath.js +5 -6
  136. package/cjs/components/shared/file-tree/utils/index.js +20 -0
  137. package/cjs/components/shared/file-viewer/FileViewer.js +76 -46
  138. package/cjs/components/shared/file-viewer/FileViewerCsv.js +262 -167
  139. package/cjs/components/shared/file-viewer/FileViewerImage.js +16 -12
  140. package/cjs/components/shared/file-viewer/FileViewerIpynb.js +27 -11
  141. package/cjs/components/shared/file-viewer/FileViewerNonViewable.js +65 -47
  142. package/cjs/components/shared/file-viewer/FileViewerText.js +23 -11
  143. package/cjs/components/shared/file-viewer/index.js +7 -0
  144. package/cjs/components/shared/file-viewer/locales/index.js +21 -0
  145. package/cjs/components/shared/material-modal/MaterialModal.js +20 -11
  146. package/cjs/components/shared/material-modal/MaterialModal.styled.js +9 -5
  147. package/cjs/components/shared/material-modal/index.js +7 -0
  148. package/cjs/components/shared/monaco-editor/MonacoEditor.js +102 -74
  149. package/cjs/components/shared/monaco-editor/MonacoEditorLazy.js +15 -7
  150. package/cjs/components/shared/monaco-editor/MonacoEditorMobile.js +49 -34
  151. package/cjs/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +249 -194
  152. package/cjs/components/shared/monaco-editor/constants/grammars/index.js +82 -28
  153. package/cjs/components/shared/monaco-editor/constants/index.js +13 -0
  154. package/cjs/components/shared/monaco-editor/constants/monaco/index.js +11 -0
  155. package/cjs/components/shared/monaco-editor/constants/monaco/preferences.js +5 -5
  156. package/cjs/components/shared/monaco-editor/constants/themes/index.js +49 -17
  157. package/cjs/components/shared/monaco-editor/editor-hooks/index.js +17 -0
  158. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +11 -10
  159. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +15 -14
  160. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +9 -8
  161. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +34 -30
  162. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +9 -7
  163. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +6 -6
  164. package/cjs/components/shared/monaco-editor/editor-languages/css/formatter.js +33 -10
  165. package/cjs/components/shared/monaco-editor/editor-languages/css/index.js +3 -2
  166. package/cjs/components/shared/monaco-editor/editor-languages/html/formatter.js +33 -10
  167. package/cjs/components/shared/monaco-editor/editor-languages/html/index.js +3 -2
  168. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -1
  169. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/index.js +11 -0
  170. package/cjs/components/shared/monaco-editor/editor-languages/typescript/formatter.js +37 -10
  171. package/cjs/components/shared/monaco-editor/editor-languages/typescript/index.js +6 -5
  172. package/cjs/components/shared/monaco-editor/hooks/index.js +7 -0
  173. package/cjs/components/shared/monaco-editor/hooks/useEditorOptions.js +11 -5
  174. package/cjs/components/shared/monaco-editor/index.js +21 -0
  175. package/cjs/components/shared/monaco-editor/locales/index.js +13 -0
  176. package/cjs/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +10 -12
  177. package/cjs/components/shared/monaco-editor/utils/emmet/index.js +9 -0
  178. package/cjs/components/shared/monaco-editor/utils/emmet/registerProvider.js +12 -6
  179. package/cjs/components/shared/monaco-editor/utils/grammar/index.js +67 -24
  180. package/cjs/components/shared/monaco-editor/utils/grammar/onigasm.js +25 -6
  181. package/cjs/components/shared/monaco-editor/utils/grammar/textmate.js +70 -37
  182. package/cjs/components/shared/monaco-editor/utils/index.js +9 -0
  183. package/cjs/components/shared/monaco-editor/utils/monacoLanguage.js +8 -7
  184. package/cjs/components/shared/monaco-editor/utils/monacoPreference.js +6 -4
  185. package/cjs/components/shared/monaco-editor/utils/prettier/config.js +2 -2
  186. package/cjs/components/shared/monaco-editor/utils/prettier/index.js +27 -7
  187. package/cjs/components/shared/monaco-editor/utils/theme/convert.js +24 -14
  188. package/cjs/components/shared/monaco-editor/utils/theme/index.js +22 -3
  189. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +77 -56
  190. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +82 -68
  191. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +120 -93
  192. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +155 -132
  193. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +104 -92
  194. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/index.js +12 -0
  195. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -2
  196. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +1 -6
  197. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -2
  198. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +177 -158
  199. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/index.js +11 -0
  200. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -3
  201. package/cjs/components/shared/no-vnc/NoVnc.js +118 -78
  202. package/cjs/components/shared/no-vnc/NoVncLazy.js +15 -7
  203. package/cjs/components/shared/no-vnc/index.js +7 -0
  204. package/cjs/components/shared/preview-container/PreviewContainer.js +18 -13
  205. package/cjs/components/shared/preview-container/index.js +9 -0
  206. package/cjs/components/shared/web-browser/WebBrowser.js +74 -52
  207. package/cjs/components/shared/web-browser/index.js +7 -0
  208. package/cjs/components/shared/xterm/Xterm.js +82 -57
  209. package/cjs/components/shared/xterm/XtermLazy.js +15 -7
  210. package/cjs/components/shared/xterm/index.js +7 -0
  211. package/cjs/components/shared/xterm/locales/index.js +13 -0
  212. package/cjs/constants/arduino.js +10 -10
  213. package/cjs/constants/color.js +1 -1
  214. package/cjs/constants/index.js +7 -0
  215. package/cjs/constants/shortcutKeyMap.js +3 -1
  216. package/cjs/constants/stylesheets.js +7 -5
  217. package/cjs/hooks/index.js +20 -0
  218. package/cjs/hooks/useArduino.js +282 -141
  219. package/cjs/hooks/useExerciseFile.js +24 -22
  220. package/cjs/hooks/useExericseShortcut.js +6 -4
  221. package/cjs/hooks/useMaterialExerciseFileUrl.js +55 -33
  222. package/cjs/hooks/useRunnerRoomWebSocket.js +51 -27
  223. package/cjs/hooks/useStdioTextConcator.js +15 -11
  224. package/cjs/hooks/useStdioWebSocket.js +32 -28
  225. package/cjs/hooks/useUsercodeEditWebSocket.js +238 -158
  226. package/cjs/hooks/useUsercodeHistory.js +115 -63
  227. package/cjs/utils/arduino.js +23 -11
  228. package/cjs/utils/exerciseFile.js +8 -10
  229. package/cjs/utils/index.js +10 -0
  230. package/cjs/utils/runner.js +33 -17
  231. package/es/_virtual/_rollupPluginBabelHelpers.js +499 -0
  232. package/es/assets/empty.png.js +1 -2
  233. package/es/components/index.js +8 -0
  234. package/es/components/locales/index.js +4 -0
  235. package/es/components/material-exercise/MaterialExercise.d.ts +1 -1
  236. package/es/components/material-exercise/MaterialExercise.js +107 -75
  237. package/es/components/material-exercise/MaterialExercise.styled.js +14 -14
  238. package/es/components/material-exercise/MaterialExerciseMobile.d.ts +1 -1
  239. package/es/components/material-exercise/MaterialExerciseMobile.js +13 -7
  240. package/es/components/material-exercise/context/ExerciseProvider.js +63 -58
  241. package/es/components/material-exercise/context/ExerciseProviderNoImage.js +35 -30
  242. package/es/components/material-exercise/context/context.js +1 -1
  243. package/es/components/material-exercise/context/index.js +5 -0
  244. package/es/components/material-exercise/context/recoil.js +535 -290
  245. package/es/components/material-exercise/context/subjects.js +4 -4
  246. package/es/components/material-exercise/context/types.d.ts +2 -2
  247. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +95 -78
  248. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +8 -8
  249. package/es/components/material-exercise/exercise-code-history/index.js +1 -0
  250. package/es/components/material-exercise/exercise-code-history/locales/index.js +4 -0
  251. package/es/components/material-exercise/exercise-file/ExerciseFile.js +25 -27
  252. package/es/components/material-exercise/exercise-file/index.js +1 -0
  253. package/es/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +221 -149
  254. package/es/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +15 -13
  255. package/es/components/material-exercise/exercise-file-editor/index.js +1 -0
  256. package/es/components/material-exercise/exercise-file-editor/locales/index.js +4 -0
  257. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +44 -29
  258. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.d.ts +1 -2
  259. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +6 -4
  260. package/es/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/ExerciseFileTabsFileTreeButton.js +48 -36
  261. package/es/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/index.js +1 -0
  262. package/es/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/locales/index.js +4 -0
  263. package/es/components/material-exercise/exercise-file-tabs/index.js +2 -0
  264. package/es/components/material-exercise/exercise-file-tabs/locales/index.js +4 -0
  265. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +348 -211
  266. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.d.ts +1 -2
  267. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +6 -4
  268. package/es/components/material-exercise/exercise-file-tree/index.js +2 -0
  269. package/es/components/material-exercise/exercise-file-tree/locales/index.js +4 -0
  270. package/es/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +14 -15
  271. package/es/components/material-exercise/exercise-file-viewer/index.js +1 -0
  272. package/es/components/material-exercise/exercise-menu/ExerciseMenu.js +16 -12
  273. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +12 -11
  274. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +119 -80
  275. package/es/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +96 -67
  276. package/es/components/material-exercise/exercise-menu/ExerciseMenuReset.js +41 -23
  277. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +143 -120
  278. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +13 -13
  279. package/es/components/material-exercise/exercise-menu/index.js +1 -0
  280. package/es/components/material-exercise/exercise-menu/locales/index.js +4 -0
  281. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +28 -19
  282. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.d.ts +1 -2
  283. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +6 -4
  284. package/es/components/material-exercise/exercise-multilang-dropdown/index.js +2 -0
  285. package/es/components/material-exercise/exercise-preview/ExercisePreview.js +26 -24
  286. package/es/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +14 -7
  287. package/es/components/material-exercise/exercise-preview/index.js +1 -0
  288. package/es/components/material-exercise/exercise-preview/locales/index.js +4 -0
  289. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +47 -35
  290. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +10 -6
  291. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +85 -78
  292. package/es/components/material-exercise/exercise-rightpane/index.js +1 -0
  293. package/es/components/material-exercise/exercise-rightpane/locales/index.js +4 -0
  294. package/es/components/material-exercise/exercise-room/ExerciseRoom.js +21 -12
  295. package/es/components/material-exercise/exercise-room/ExerciseRoom.styled.js +14 -12
  296. package/es/components/material-exercise/exercise-room/ExerciseRoomDetail.js +498 -349
  297. package/es/components/material-exercise/exercise-room/ExerciseRoomList.js +193 -133
  298. package/es/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -2
  299. package/es/components/material-exercise/exercise-room/helpers/index.js +1 -0
  300. package/es/components/material-exercise/exercise-room/index.js +1 -0
  301. package/es/components/material-exercise/exercise-room/locales/index.js +4 -0
  302. package/es/components/material-exercise/exercise-runner/ExerciseRunner.js +200 -142
  303. package/es/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +1 -1
  304. package/es/components/material-exercise/exercise-runner/ExerciseRunnerController.js +20 -16
  305. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +112 -85
  306. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +30 -20
  307. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +90 -82
  308. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +63 -52
  309. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +131 -87
  310. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +2 -2
  311. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +17 -15
  312. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +31 -23
  313. package/es/components/material-exercise/exercise-runner/index.js +1 -0
  314. package/es/components/material-exercise/exercise-runner/locales/index.js +4 -0
  315. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +399 -250
  316. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +8 -8
  317. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +68 -49
  318. package/es/components/material-exercise/exercise-submit-history/index.js +1 -0
  319. package/es/components/material-exercise/exercise-submit-history/locales/index.js +4 -0
  320. package/es/components/material-exercise/index.js +2 -0
  321. package/es/components/shared/exercise-menu-button/ExerciseMenuButton.js +29 -24
  322. package/es/components/shared/exercise-menu-button/index.js +1 -0
  323. package/es/components/shared/exercise-shimmer/ExerciseFileShimmer.js +40 -38
  324. package/es/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +22 -20
  325. package/es/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +10 -8
  326. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +24 -22
  327. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +19 -9
  328. package/es/components/shared/exercise-shimmer/index.js +5 -0
  329. package/es/components/shared/exercise-version-list/ExerciseVersionList.js +6 -5
  330. package/es/components/shared/exercise-version-list/ExerciseVersionList.styled.js +1 -1
  331. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.js +10 -10
  332. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +9 -5
  333. package/es/components/shared/exercise-version-list/index.js +2 -0
  334. package/es/components/shared/file-icon/FileIcon.js +19 -16
  335. package/es/components/shared/file-icon/index.js +1 -0
  336. package/es/components/shared/file-tabs/FileTab.js +43 -33
  337. package/es/components/shared/file-tabs/FileTab.styled.js +19 -15
  338. package/es/components/shared/file-tabs/FileTabs.js +62 -40
  339. package/es/components/shared/file-tabs/FileTabs.styled.js +2 -2
  340. package/es/components/shared/file-tabs/index.js +1 -0
  341. package/es/components/shared/file-tabs/util.js +27 -14
  342. package/es/components/shared/file-tree/FileTree.js +16 -10
  343. package/es/components/shared/file-tree/FileTreeConfig.js +39 -39
  344. package/es/components/shared/file-tree/FileTreeList.js +38 -40
  345. package/es/components/shared/file-tree/FileTreeListItemContent.js +124 -99
  346. package/es/components/shared/file-tree/FileTreeListItemContent.styled.js +25 -21
  347. package/es/components/shared/file-tree/FileTreeListItemContentInput.js +102 -96
  348. package/es/components/shared/file-tree/FileTreeListItemContentInput.styled.js +6 -6
  349. package/es/components/shared/file-tree/FileTreeListItemContentMenu.js +129 -91
  350. package/es/components/shared/file-tree/FileTreeListItems.js +149 -137
  351. package/es/components/shared/file-tree/FileTreeListItems.styled.js +2 -2
  352. package/es/components/shared/file-tree/FileTreeToolbar.styled.js +1 -1
  353. package/es/components/shared/file-tree/context/FileTreeContext.d.ts +1 -1
  354. package/es/components/shared/file-tree/context/FileTreeContext.js +97 -79
  355. package/es/components/shared/file-tree/context/index.js +1 -0
  356. package/es/components/shared/file-tree/file-tree-toolbar/FileTreeToolbar.js +55 -54
  357. package/es/components/shared/file-tree/file-tree-toolbar/index.js +1 -0
  358. package/es/components/shared/file-tree/file-tree-toolbar/locales/index.js +4 -0
  359. package/es/components/shared/file-tree/index.js +1 -0
  360. package/es/components/shared/file-tree/locales/index.js +4 -0
  361. package/es/components/shared/file-tree/utils/fileTreeFiles.js +20 -20
  362. package/es/components/shared/file-tree/utils/fileTreeGenerator.js +193 -146
  363. package/es/components/shared/file-tree/utils/fileTreeInput.js +11 -1
  364. package/es/components/shared/file-tree/utils/fileTreeItem.js +1 -1
  365. package/es/components/shared/file-tree/utils/fileTreePath.js +5 -6
  366. package/es/components/shared/file-tree/utils/index.js +5 -0
  367. package/es/components/shared/file-viewer/FileViewer.js +69 -46
  368. package/es/components/shared/file-viewer/FileViewerCsv.js +257 -167
  369. package/es/components/shared/file-viewer/FileViewerImage.js +12 -12
  370. package/es/components/shared/file-viewer/FileViewerIpynb.js +21 -11
  371. package/es/components/shared/file-viewer/FileViewerNonViewable.js +60 -47
  372. package/es/components/shared/file-viewer/FileViewerText.js +19 -11
  373. package/es/components/shared/file-viewer/index.js +1 -0
  374. package/es/components/shared/file-viewer/locales/index.js +8 -0
  375. package/es/components/shared/material-modal/MaterialModal.js +20 -11
  376. package/es/components/shared/material-modal/MaterialModal.styled.js +5 -5
  377. package/es/components/shared/material-modal/index.js +1 -0
  378. package/es/components/shared/monaco-editor/MonacoEditor.js +95 -72
  379. package/es/components/shared/monaco-editor/MonacoEditorLazy.js +11 -7
  380. package/es/components/shared/monaco-editor/MonacoEditorMobile.js +43 -32
  381. package/es/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +244 -194
  382. package/es/components/shared/monaco-editor/constants/grammars/index.js +82 -28
  383. package/es/components/shared/monaco-editor/constants/index.js +2 -0
  384. package/es/components/shared/monaco-editor/constants/monaco/index.js +1 -0
  385. package/es/components/shared/monaco-editor/constants/monaco/preferences.js +5 -5
  386. package/es/components/shared/monaco-editor/constants/themes/index.js +49 -17
  387. package/es/components/shared/monaco-editor/editor-hooks/index.js +6 -0
  388. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +11 -10
  389. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +15 -14
  390. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +9 -8
  391. package/es/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +34 -30
  392. package/es/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +9 -7
  393. package/es/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +6 -6
  394. package/es/components/shared/monaco-editor/editor-languages/css/formatter.js +33 -10
  395. package/es/components/shared/monaco-editor/editor-languages/html/formatter.js +33 -10
  396. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -1
  397. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/index.js +3 -0
  398. package/es/components/shared/monaco-editor/editor-languages/typescript/formatter.js +37 -10
  399. package/es/components/shared/monaco-editor/editor-languages/typescript/index.js +3 -3
  400. package/es/components/shared/monaco-editor/hooks/index.js +1 -0
  401. package/es/components/shared/monaco-editor/hooks/useEditorOptions.js +11 -5
  402. package/es/components/shared/monaco-editor/index.js +6 -0
  403. package/es/components/shared/monaco-editor/locales/index.js +4 -0
  404. package/es/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +10 -12
  405. package/es/components/shared/monaco-editor/utils/emmet/index.js +1 -0
  406. package/es/components/shared/monaco-editor/utils/emmet/registerProvider.js +12 -6
  407. package/es/components/shared/monaco-editor/utils/grammar/index.js +67 -24
  408. package/es/components/shared/monaco-editor/utils/grammar/onigasm.js +25 -6
  409. package/es/components/shared/monaco-editor/utils/grammar/textmate.js +67 -35
  410. package/es/components/shared/monaco-editor/utils/index.js +2 -0
  411. package/es/components/shared/monaco-editor/utils/monacoLanguage.js +5 -5
  412. package/es/components/shared/monaco-editor/utils/monacoPreference.js +6 -4
  413. package/es/components/shared/monaco-editor/utils/prettier/config.js +2 -2
  414. package/es/components/shared/monaco-editor/utils/prettier/index.js +27 -7
  415. package/es/components/shared/monaco-editor/utils/theme/convert.js +19 -13
  416. package/es/components/shared/monaco-editor/utils/theme/index.js +22 -3
  417. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +77 -56
  418. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +82 -68
  419. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +120 -93
  420. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +152 -130
  421. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +104 -92
  422. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/index.js +3 -0
  423. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -2
  424. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +1 -6
  425. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -2
  426. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +171 -156
  427. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/index.js +2 -0
  428. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -3
  429. package/es/components/shared/no-vnc/NoVnc.js +99 -71
  430. package/es/components/shared/no-vnc/NoVncLazy.js +11 -7
  431. package/es/components/shared/no-vnc/index.js +1 -0
  432. package/es/components/shared/preview-container/PreviewContainer.js +15 -14
  433. package/es/components/shared/preview-container/index.js +1 -0
  434. package/es/components/shared/web-browser/WebBrowser.js +69 -52
  435. package/es/components/shared/web-browser/index.js +1 -0
  436. package/es/components/shared/xterm/Xterm.js +77 -57
  437. package/es/components/shared/xterm/XtermLazy.js +11 -7
  438. package/es/components/shared/xterm/index.js +1 -0
  439. package/es/components/shared/xterm/locales/index.js +4 -0
  440. package/es/constants/arduino.js +10 -10
  441. package/es/constants/color.js +1 -1
  442. package/es/constants/index.js +1 -0
  443. package/es/constants/shortcutKeyMap.js +3 -1
  444. package/es/constants/stylesheets.js +7 -5
  445. package/es/hooks/index.js +7 -0
  446. package/es/hooks/useArduino.js +278 -141
  447. package/es/hooks/useExerciseFile.js +24 -22
  448. package/es/hooks/useExericseShortcut.js +6 -4
  449. package/es/hooks/useMaterialExerciseFileUrl.js +52 -34
  450. package/es/hooks/useRunnerRoomWebSocket.js +51 -27
  451. package/es/hooks/useStdioTextConcator.js +11 -11
  452. package/es/hooks/useStdioWebSocket.js +32 -28
  453. package/es/hooks/useUsercodeEditWebSocket.js +232 -157
  454. package/es/hooks/useUsercodeHistory.js +115 -63
  455. package/es/utils/arduino.js +24 -12
  456. package/es/utils/exerciseFile.js +8 -10
  457. package/es/utils/index.js +2 -0
  458. package/es/utils/runner.js +33 -17
  459. package/package.json +11 -15
@@ -1,3 +1,4 @@
1
+ import { jsx } from 'react/jsx-runtime';
1
2
  import React, { forwardRef } from 'react';
2
3
  import { Button } from '@elice/blocks';
3
4
  import { base } from '@elice/design-tokens';
@@ -5,53 +6,52 @@ import classnames from 'classnames';
5
6
  import styled from 'styled-components';
6
7
  import { useFileTreeState, useFileTreeDispatch } from './context/FileTreeContext.js';
7
8
 
8
- const StyledFileTreeConfig = styled.div.withConfig({
9
+ var StyledFileTreeConfig = styled.div.withConfig({
9
10
  componentId: "sc-1dxe3z0-0"
10
11
  })(["background-color:", ";padding:1rem;"], base.color.navy8);
11
- const FileTreeConfig = forwardRef(({
12
- className,
13
- style,
14
- onInitialOpenFileListChange,
15
- initialOpenFilelist
16
- }, ref) => {
17
- const {
18
- mode,
19
- initialOpenFileListTemp
20
- } = useFileTreeState();
21
- const {
22
- dispatch
23
- } = useFileTreeDispatch();
24
- React.useEffect(() => {
12
+ var FileTreeConfig = forwardRef(function (_ref, ref) {
13
+ var className = _ref.className,
14
+ style = _ref.style,
15
+ onInitialOpenFileListChange = _ref.onInitialOpenFileListChange,
16
+ initialOpenFilelist = _ref.initialOpenFilelist;
17
+ var _useFileTreeState = useFileTreeState(),
18
+ mode = _useFileTreeState.mode,
19
+ initialOpenFileListTemp = _useFileTreeState.initialOpenFileListTemp;
20
+ var _useFileTreeDispatch = useFileTreeDispatch(),
21
+ dispatch = _useFileTreeDispatch.dispatch;
22
+ React.useEffect(function () {
25
23
  dispatch({
26
24
  type: 'INITIAL_OPEN_FILELIST_UPDATE',
27
- initialOpenFilelist
25
+ initialOpenFilelist: initialOpenFilelist
28
26
  });
29
27
  }, [dispatch, initialOpenFilelist]);
30
- return React.createElement(StyledFileTreeConfig, {
28
+ return jsx(StyledFileTreeConfig, {
31
29
  className: classnames('em-file-tree__config', className),
32
30
  ref: ref,
33
- style: Object.assign({}, style)
34
- }, React.createElement(Button, {
35
- block: true,
36
- size: "small",
37
- role: "white",
38
- transparent: true,
39
- onClick: () => {
40
- if ([
41
- // when mode changes from 'checkbox' to 'default'
42
- mode === 'checkbox',
43
- // when some value of initial open filelist changes'
44
- JSON.stringify(initialOpenFilelist.sort()) !== JSON.stringify(initialOpenFileListTemp.sort()),
45
- // when onInitialOpenFileListChange is function'
46
- typeof onInitialOpenFileListChange === 'function'].every(Boolean)) {
47
- onInitialOpenFileListChange(initialOpenFileListTemp);
48
- }
49
- dispatch({
50
- type: 'UPDATE_MODE',
51
- mode: mode === 'checkbox' ? 'default' : 'checkbox'
52
- });
53
- }
54
- }, mode === 'default' ? `Initial Open Files(${initialOpenFileListTemp.length})` : `Settings (${initialOpenFileListTemp.length})`));
31
+ style: Object.assign({}, style),
32
+ children: jsx(Button, {
33
+ block: true,
34
+ size: "small",
35
+ role: "white",
36
+ transparent: true,
37
+ onClick: function onClick() {
38
+ if ([
39
+ // when mode changes from 'checkbox' to 'default'
40
+ mode === 'checkbox',
41
+ // when some value of initial open filelist changes'
42
+ JSON.stringify(initialOpenFilelist.sort()) !== JSON.stringify(initialOpenFileListTemp.sort()),
43
+ // when onInitialOpenFileListChange is function'
44
+ typeof onInitialOpenFileListChange === 'function'].every(Boolean)) {
45
+ onInitialOpenFileListChange(initialOpenFileListTemp);
46
+ }
47
+ dispatch({
48
+ type: 'UPDATE_MODE',
49
+ mode: mode === 'checkbox' ? 'default' : 'checkbox'
50
+ });
51
+ },
52
+ children: mode === 'default' ? "Initial Open Files(".concat(initialOpenFileListTemp.length, ")") : "Settings (".concat(initialOpenFileListTemp.length, ")")
53
+ })
54
+ });
55
55
  });
56
56
 
57
57
  export { FileTreeConfig as default };
@@ -1,4 +1,5 @@
1
- import React, { forwardRef } from 'react';
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import { forwardRef } from 'react';
2
3
  import { base } from '@elice/design-tokens';
3
4
  import classnames from 'classnames';
4
5
  import styled from 'styled-components';
@@ -8,54 +9,50 @@ import FileTreeListItems from './FileTreeListItems.js';
8
9
  import { validateFilesSize } from './utils/fileTreeFiles.js';
9
10
  import { isMovingTheSamePath } from './utils/fileTreePath.js';
10
11
 
11
- const StyledFileTreeList = styled.div.withConfig({
12
+ var StyledFileTreeList = styled.div.withConfig({
12
13
  componentId: "sc-5ddw80-0"
13
14
  })(["flex:auto;background-color:", ";overflow-x:hidden;overflow-y:overlay;", ""], base.color.navy9, getMaterialScrollBarCss({
14
15
  width: '0.375rem',
15
16
  borderRadius: '2px',
16
17
  hideable: true
17
18
  }));
18
- const FileTreeList = forwardRef(({
19
- className,
20
- style,
21
- options
22
- }, ref) => {
23
- const {
24
- fileTree,
25
- dropzonePath,
26
- draggedPath,
27
- maxFileUploadSize
28
- } = useFileTreeState();
29
- const {
30
- dispatch,
31
- onDirectoryMove,
32
- onFileMove,
33
- onFilesUpload
34
- } = useFileTreeDispatch();
35
- const handleFilesUpload = ({
36
- files,
37
- path
38
- }) => {
19
+ var FileTreeList = forwardRef(function (_ref, ref) {
20
+ var className = _ref.className,
21
+ style = _ref.style,
22
+ options = _ref.options;
23
+ var _useFileTreeState = useFileTreeState(),
24
+ fileTree = _useFileTreeState.fileTree,
25
+ dropzonePath = _useFileTreeState.dropzonePath,
26
+ draggedPath = _useFileTreeState.draggedPath,
27
+ maxFileUploadSize = _useFileTreeState.maxFileUploadSize;
28
+ var _useFileTreeDispatch = useFileTreeDispatch(),
29
+ dispatch = _useFileTreeDispatch.dispatch,
30
+ onDirectoryMove = _useFileTreeDispatch.onDirectoryMove,
31
+ onFileMove = _useFileTreeDispatch.onFileMove,
32
+ onFilesUpload = _useFileTreeDispatch.onFilesUpload;
33
+ var handleFilesUpload = function handleFilesUpload(_ref2) {
34
+ var files = _ref2.files,
35
+ path = _ref2.path;
39
36
  if (validateFilesSize(files, maxFileUploadSize)) {
40
37
  if (typeof onFilesUpload === 'function') {
41
38
  onFilesUpload({
42
- files,
43
- path
39
+ files: files,
40
+ path: path
44
41
  });
45
42
  }
46
43
  }
47
44
  };
48
- return React.createElement(StyledFileTreeList, {
45
+ return jsx(StyledFileTreeList, {
49
46
  className: classnames('em-file-tree__list', className),
50
47
  ref: ref,
51
48
  role: "tree",
52
49
  style: Object.assign({
53
50
  backgroundColor: dropzonePath === '' ? base.color.primary7 : ''
54
51
  }, style),
55
- onDragEnter: e => {
52
+ onDragEnter: function onDragEnter(e) {
56
53
  e.preventDefault();
57
54
  e.stopPropagation();
58
- const isFiles = e.dataTransfer.types[0] === 'Files';
55
+ var isFiles = e.dataTransfer.types[0] === 'Files';
59
56
  if (draggedPath !== null || isFiles) {
60
57
  dispatch({
61
58
  type: 'UPDATE_DROPZONE_PATH',
@@ -63,14 +60,14 @@ const FileTreeList = forwardRef(({
63
60
  });
64
61
  }
65
62
  },
66
- onDragOver: e => {
63
+ onDragOver: function onDragOver(e) {
67
64
  e.preventDefault();
68
65
  e.stopPropagation();
69
66
  },
70
- onDrop: e => {
67
+ onDrop: function onDrop(e) {
71
68
  e.stopPropagation();
72
69
  e.preventDefault();
73
- const draggedPath = e.dataTransfer.getData('text');
70
+ var draggedPath = e.dataTransfer.getData('text');
74
71
  // file drop
75
72
  if (e.dataTransfer.files.length > 0) {
76
73
  handleFilesUpload({
@@ -87,12 +84,12 @@ const FileTreeList = forwardRef(({
87
84
  });
88
85
  } else {
89
86
  // file move
90
- const dragFileTreeNode = fileTree.findTreeNode(draggedPath);
87
+ var dragFileTreeNode = fileTree.findTreeNode(draggedPath);
91
88
  // file does not move. from a to a (the same path).
92
89
  if (isMovingTheSamePath({
93
- draggedPath,
94
- dropzonePath,
95
- dragFileTreeNode
90
+ draggedPath: draggedPath,
91
+ dropzonePath: dropzonePath,
92
+ dragFileTreeNode: dragFileTreeNode
96
93
  })) {
97
94
  return;
98
95
  }
@@ -112,11 +109,12 @@ const FileTreeList = forwardRef(({
112
109
  }
113
110
  }
114
111
  }
115
- }
116
- }, React.createElement(FileTreeListItems, {
117
- node: fileTree,
118
- indent: options === null || options === void 0 ? void 0 : options.indent
119
- }));
112
+ },
113
+ children: jsx(FileTreeListItems, {
114
+ node: fileTree,
115
+ indent: options === null || options === void 0 ? void 0 : options.indent
116
+ })
117
+ });
120
118
  });
121
119
 
122
120
  export { FileTreeList as default };
@@ -1,3 +1,5 @@
1
+ import { slicedToArray as _slicedToArray } from '../../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
1
3
  import React from 'react';
2
4
  import { Icon, Checkbox } from '@elice/blocks';
3
5
  import { base } from '@elice/design-tokens';
@@ -8,45 +10,48 @@ import FileTreeListItemContentInput from './FileTreeListItemContentInput.js';
8
10
  import FileTreeListItemContentMenu from './FileTreeListItemContentMenu.js';
9
11
  import { StyledContentIndents, StyledContentIndentGuide, StyledContent, StyledContentLabel, StyledContentLabelDirArrowWrap, StyledContentLabelIconWrap, StyledContentLabelFilename, StyledContentLabelStatusIcon, StyledContentLabelMenuButton } from './FileTreeListItemContent.styled.js';
10
12
 
11
- const ITEM_IDENT_WIDTH = 8; // 0.5rem
12
- const FileTreeListItemContent = ({
13
- node,
14
- parentNode,
15
- indent = 1
16
- }) => {
17
- const {
18
- mode,
19
- activePath,
20
- dropzonePath,
21
- newInput
22
- } = useFileTreeState();
23
- const {
24
- dispatch,
25
- onActivePathChange
26
- } = useFileTreeDispatch();
27
- const [menuAnchorEl, setMenuAnchorEl] = React.useState();
28
- const isNewItem = newInput && node.isEdit;
13
+ var ITEM_IDENT_WIDTH = 8; // 0.5rem
14
+ var FileTreeListItemContent = function FileTreeListItemContent(_ref) {
15
+ var node = _ref.node,
16
+ parentNode = _ref.parentNode,
17
+ _ref$indent = _ref.indent,
18
+ indent = _ref$indent === void 0 ? 1 : _ref$indent;
19
+ var _useFileTreeState = useFileTreeState(),
20
+ mode = _useFileTreeState.mode,
21
+ activePath = _useFileTreeState.activePath,
22
+ dropzonePath = _useFileTreeState.dropzonePath,
23
+ newInput = _useFileTreeState.newInput;
24
+ var _useFileTreeDispatch = useFileTreeDispatch(),
25
+ dispatch = _useFileTreeDispatch.dispatch,
26
+ onActivePathChange = _useFileTreeDispatch.onActivePathChange;
27
+ var _React$useState = React.useState(),
28
+ _React$useState2 = _slicedToArray(_React$useState, 2),
29
+ menuAnchorEl = _React$useState2[0],
30
+ setMenuAnchorEl = _React$useState2[1];
31
+ var isNewItem = newInput && node.isEdit;
29
32
  /**
30
33
  * Indent.
31
34
  */
32
- const contentIndents = React.useMemo(() => {
33
- const depth = (node.path.match(/\//g) || []).length;
34
- const counts = depth === 0 ? 0 : indent * depth;
35
- return React.createElement(StyledContentIndents, {
35
+ var contentIndents = React.useMemo(function () {
36
+ var depth = (node.path.match(/\//g) || []).length;
37
+ var counts = depth === 0 ? 0 : indent * depth;
38
+ return jsx(StyledContentIndents, {
36
39
  style: {
37
- flex: `0 0 ${ITEM_IDENT_WIDTH * counts}px`
38
- }
39
- }, Array(counts).fill(0).map((_, index) => React.createElement(StyledContentIndentGuide, {
40
- key: index,
41
- style: {
42
- width: `${ITEM_IDENT_WIDTH}px`
43
- }
44
- })));
40
+ flex: "0 0 ".concat(ITEM_IDENT_WIDTH * counts, "px")
41
+ },
42
+ children: Array(counts).fill(0).map(function (_, index) {
43
+ return jsx(StyledContentIndentGuide, {
44
+ style: {
45
+ width: "".concat(ITEM_IDENT_WIDTH, "px")
46
+ }
47
+ }, index);
48
+ })
49
+ });
45
50
  }, [node, indent]);
46
51
  /**
47
52
  * Handle item click.
48
53
  */
49
- const handleClick = () => {
54
+ var handleClick = function handleClick() {
50
55
  if (node.isEdit) {
51
56
  return;
52
57
  }
@@ -61,7 +66,7 @@ const FileTreeListItemContent = ({
61
66
  /**
62
67
  * Handle item right-click.
63
68
  */
64
- const handleContextMenu = e => {
69
+ var handleContextMenu = function handleContextMenu(e) {
65
70
  e.preventDefault();
66
71
  setMenuAnchorEl({
67
72
  x: e.clientX,
@@ -71,97 +76,110 @@ const FileTreeListItemContent = ({
71
76
  /**
72
77
  * Directory expand arrow.
73
78
  */
74
- const renderContentDirectoryExpandArrow = () => {
79
+ var renderContentDirectoryExpandArrow = function renderContentDirectoryExpandArrow() {
75
80
  // new or directory
76
81
  if (isNewItem || !node.isDirectory) {
77
- return React.createElement(StyledContentLabelDirArrowWrap, null);
82
+ return jsx(StyledContentLabelDirArrowWrap, {});
78
83
  }
79
- return React.createElement(StyledContentLabelDirArrowWrap, null, React.createElement(Icon, {
80
- icon: eilArrowDownwardsSingle,
81
- size: "tiny",
82
- rotate: node.expanded ? 0 : 270,
83
- color: base.color.gray3
84
- }));
84
+ return jsx(StyledContentLabelDirArrowWrap, {
85
+ children: jsx(Icon, {
86
+ icon: eilArrowDownwardsSingle,
87
+ size: "tiny",
88
+ rotate: node.expanded ? 0 : 270,
89
+ color: base.color.gray3
90
+ })
91
+ });
85
92
  };
86
93
  /**
87
94
  * Icon.
88
95
  */
89
- const renderContentIcon = () => {
96
+ var renderContentIcon = function renderContentIcon() {
90
97
  // new
91
98
  if (isNewItem) {
92
- return React.createElement(StyledContentLabelIconWrap, null, React.createElement(FileIcon, {
93
- filename: "newfile",
94
- directory: (newInput === null || newInput === void 0 ? void 0 : newInput.type) === 'directory',
95
- width: "1rem",
96
- height: "1rem"
97
- }));
99
+ return jsx(StyledContentLabelIconWrap, {
100
+ children: jsx(FileIcon, {
101
+ filename: "newfile",
102
+ directory: (newInput === null || newInput === void 0 ? void 0 : newInput.type) === 'directory',
103
+ width: "1rem",
104
+ height: "1rem"
105
+ })
106
+ });
98
107
  }
99
108
  // checkbox for file
100
109
  if (mode === 'checkbox' && !node.isDirectory) {
101
- return React.createElement(StyledContentLabelIconWrap, null, React.createElement(Checkbox, {
102
- value: node.isInitialOpen,
103
- dark: true,
104
- onChange: checked => {
105
- dispatch({
106
- type: checked ? 'INITIAL_OPEN_FILELIST_ADD' : 'INITIAL_OPEN_FILELIST_REMOVE',
107
- path: node.path
108
- });
109
- }
110
- }));
110
+ return jsx(StyledContentLabelIconWrap, {
111
+ children: jsx(Checkbox, {
112
+ value: node.isInitialOpen,
113
+ dark: true,
114
+ onChange: function onChange(checked) {
115
+ dispatch({
116
+ type: checked ? 'INITIAL_OPEN_FILELIST_ADD' : 'INITIAL_OPEN_FILELIST_REMOVE',
117
+ path: node.path
118
+ });
119
+ }
120
+ })
121
+ });
111
122
  }
112
- return React.createElement(StyledContentLabelIconWrap, null, React.createElement(FileIcon, {
113
- filename: node.title,
114
- directory: node.isDirectory,
115
- expanded: node.expanded,
116
- width: "1rem",
117
- height: "1rem"
118
- }));
123
+ return jsx(StyledContentLabelIconWrap, {
124
+ children: jsx(FileIcon, {
125
+ filename: node.title,
126
+ directory: node.isDirectory,
127
+ expanded: node.expanded,
128
+ width: "1rem",
129
+ height: "1rem"
130
+ })
131
+ });
119
132
  };
120
133
  /**
121
134
  * Filename.
122
135
  */
123
- const renderContentFilename = () => {
136
+ var renderContentFilename = function renderContentFilename() {
124
137
  var _a;
125
138
  // new
126
139
  if (isNewItem) {
127
- return React.createElement(FileTreeListItemContentInput, {
140
+ return jsx(FileTreeListItemContentInput, {
128
141
  type: "new",
129
142
  newInputType: (_a = newInput === null || newInput === void 0 ? void 0 : newInput.type) !== null && _a !== void 0 ? _a : 'file',
130
143
  currentPath: node.path,
131
- currentDirTitleList: parentNode.children.map(({
132
- title
133
- }) => title)
144
+ currentDirTitleList: parentNode.children.map(function (_ref2) {
145
+ var title = _ref2.title;
146
+ return title;
147
+ })
134
148
  });
135
149
  }
136
150
  // rename
137
151
  if (node.isRenaming) {
138
- return React.createElement(FileTreeListItemContentInput, {
152
+ return jsx(FileTreeListItemContentInput, {
139
153
  type: "edit",
140
154
  initialValue: node.title,
141
155
  newInputType: node.isDirectory ? 'directory' : 'file',
142
156
  currentPath: node.path,
143
- currentDirTitleList: parentNode.children.map(({
144
- title
145
- }) => title).filter(title => title !== node.title)
157
+ currentDirTitleList: parentNode.children.map(function (_ref3) {
158
+ var title = _ref3.title;
159
+ return title;
160
+ }).filter(function (title) {
161
+ return title !== node.title;
162
+ })
146
163
  });
147
164
  }
148
- return React.createElement(StyledContentLabelFilename, {
165
+ return jsx(StyledContentLabelFilename, {
149
166
  size: "tiny",
150
167
  block: true,
151
- ellipsis: true
152
- }, node.title);
168
+ ellipsis: true,
169
+ children: node.title
170
+ });
153
171
  };
154
172
  /**
155
173
  * Status icon.
156
174
  */
157
- const renderContentStatusIcon = () => {
175
+ var renderContentStatusIcon = function renderContentStatusIcon() {
158
176
  // new or rename
159
177
  if (isNewItem || node.isRenaming) {
160
178
  return null;
161
179
  }
162
180
  // hidden
163
181
  if (node.isHidden) {
164
- return React.createElement(StyledContentLabelStatusIcon, {
182
+ return jsx(StyledContentLabelStatusIcon, {
165
183
  icon: eilVisibilityOff,
166
184
  color: base.color.gray4,
167
185
  size: "small"
@@ -169,7 +187,7 @@ const FileTreeListItemContent = ({
169
187
  }
170
188
  // readonly
171
189
  if (node.isReadonly) {
172
- return React.createElement(StyledContentLabelStatusIcon, {
190
+ return jsx(StyledContentLabelStatusIcon, {
173
191
  icon: eilLockOn,
174
192
  color: base.color.gray4,
175
193
  size: "small"
@@ -180,37 +198,44 @@ const FileTreeListItemContent = ({
180
198
  /**
181
199
  * Menu button.
182
200
  */
183
- const renderContentMenuButton = () => {
201
+ var renderContentMenuButton = function renderContentMenuButton() {
184
202
  // new or rename
185
203
  if (isNewItem || node.isRenaming) {
186
204
  return null;
187
205
  }
188
- return React.createElement(React.Fragment, null, React.createElement(StyledContentLabelMenuButton, {
189
- icon: eilMoreVertical,
190
- size: "tiny",
191
- role: "white",
192
- transparent: true,
193
- border: false,
194
- onClick: e => {
195
- e.stopPropagation();
196
- setMenuAnchorEl(e.currentTarget);
197
- }
198
- }), React.createElement(FileTreeListItemContentMenu, {
199
- node: node,
200
- anchorEl: menuAnchorEl,
201
- onClose: () => setMenuAnchorEl(undefined)
202
- }));
206
+ return jsxs(Fragment, {
207
+ children: [jsx(StyledContentLabelMenuButton, {
208
+ icon: eilMoreVertical,
209
+ size: "tiny",
210
+ role: "white",
211
+ transparent: true,
212
+ border: false,
213
+ onClick: function onClick(e) {
214
+ e.stopPropagation();
215
+ setMenuAnchorEl(e.currentTarget);
216
+ }
217
+ }), jsx(FileTreeListItemContentMenu, {
218
+ node: node,
219
+ anchorEl: menuAnchorEl,
220
+ onClose: function onClose() {
221
+ return setMenuAnchorEl(undefined);
222
+ }
223
+ })]
224
+ });
203
225
  };
204
226
  //
205
227
  //
206
228
  //
207
- return React.createElement(StyledContent, {
208
- title: `~/${node.path}`,
229
+ return jsxs(StyledContent, {
230
+ title: "~/".concat(node.path),
209
231
  active: activePath === node.path,
210
232
  isDragging: dropzonePath !== null,
211
233
  onClick: handleClick,
212
- onContextMenu: handleContextMenu
213
- }, contentIndents, React.createElement(StyledContentLabel, null, renderContentDirectoryExpandArrow(), renderContentIcon(), renderContentFilename(), renderContentStatusIcon(), renderContentMenuButton()));
234
+ onContextMenu: handleContextMenu,
235
+ children: [contentIndents, jsxs(StyledContentLabel, {
236
+ children: [renderContentDirectoryExpandArrow(), renderContentIcon(), renderContentFilename(), renderContentStatusIcon(), renderContentMenuButton()]
237
+ })]
238
+ });
214
239
  };
215
240
 
216
241
  export { FileTreeListItemContent as default };
@@ -5,70 +5,74 @@ import styled, { css } from 'styled-components';
5
5
  //
6
6
  //
7
7
  //
8
- const CONTENT_MIN_HEIGHT = 28; // 1.75rem
9
- const CONTENT_LEFT_BORDER_WIDTH = 3; // 0.1875rem
10
- const CONTENT_RIGHT_PADDING = 12; // 0.75rem
11
- const CONTENT_LABEL_VERTICAL_PADDING = 4; // 0.25rem
12
- const CONTENT_LABEL_ICON_SIZE = 16; // 1rem
13
- const CONTENT_LABEL_ICON_AFTER_MARGIN = 4; // 1rem
14
- const CONTENT_LABEL_DIR_ARROW_PADDING = 4; // 0.25rem
15
- const CONTENT_LABEL_DIR_ARROW_SIZE = 12; // 0.75rem
16
- const CONTENT_LABEL_MENU_BUTTON_SIZE = CONTENT_MIN_HEIGHT - CONTENT_LABEL_VERTICAL_PADDING * 2;
8
+ var CONTENT_MIN_HEIGHT = 28; // 1.75rem
9
+ var CONTENT_LEFT_BORDER_WIDTH = 3; // 0.1875rem
10
+ var CONTENT_RIGHT_PADDING = 12; // 0.75rem
11
+ var CONTENT_LABEL_VERTICAL_PADDING = 4; // 0.25rem
12
+ var CONTENT_LABEL_ICON_SIZE = 16; // 1rem
13
+ var CONTENT_LABEL_ICON_AFTER_MARGIN = 4; // 1rem
14
+ var CONTENT_LABEL_DIR_ARROW_PADDING = 4; // 0.25rem
15
+ var CONTENT_LABEL_DIR_ARROW_SIZE = 12; // 0.75rem
16
+ var CONTENT_LABEL_MENU_BUTTON_SIZE = CONTENT_MIN_HEIGHT - CONTENT_LABEL_VERTICAL_PADDING * 2;
17
17
  //
18
18
  //
19
19
  //
20
20
  /**
21
21
  * indent
22
22
  */
23
- const StyledContentIndents = styled.div.withConfig({
23
+ var StyledContentIndents = styled.div.withConfig({
24
24
  componentId: "sc-3wfxns-0"
25
25
  })([""]);
26
- const StyledContentIndentGuide = styled.div.withConfig({
26
+ var StyledContentIndentGuide = styled.div.withConfig({
27
27
  componentId: "sc-3wfxns-1"
28
28
  })(["display:inline-block;height:100%;border-right:0.5px solid ", ";"], base.color.gray7);
29
29
  /**
30
30
  * label
31
31
  */
32
- const StyledContentLabel = styled.div.withConfig({
32
+ var StyledContentLabel = styled.div.withConfig({
33
33
  componentId: "sc-3wfxns-2"
34
34
  })(["flex:1;display:flex;align-items:center;padding-top:", "px;padding-bottom:", "px;overflow:hidden;"], CONTENT_LABEL_VERTICAL_PADDING, CONTENT_LABEL_VERTICAL_PADDING);
35
35
  /**
36
36
  * label > dir arrow
37
37
  */
38
- const StyledContentLabelDirArrowWrap = styled.div.withConfig({
38
+ var StyledContentLabelDirArrowWrap = styled.div.withConfig({
39
39
  componentId: "sc-3wfxns-3"
40
40
  })(["flex:0 0 ", "px;display:flex;justify-content:center;align-items:center;padding:", ";height:", "px;"], CONTENT_LABEL_DIR_ARROW_SIZE + CONTENT_LABEL_DIR_ARROW_PADDING * 2, CONTENT_LABEL_DIR_ARROW_PADDING, CONTENT_LABEL_DIR_ARROW_SIZE);
41
41
  /**
42
42
  * label > icon
43
43
  */
44
- const StyledContentLabelIconWrap = styled.div.withConfig({
44
+ var StyledContentLabelIconWrap = styled.div.withConfig({
45
45
  componentId: "sc-3wfxns-4"
46
46
  })(["flex:0 0 ", "px;display:flex;margin-right:", "px;height:", "px;"], CONTENT_LABEL_ICON_SIZE + CONTENT_LABEL_ICON_AFTER_MARGIN, CONTENT_LABEL_ICON_AFTER_MARGIN, CONTENT_LABEL_ICON_SIZE);
47
47
  /**
48
48
  * label > filename
49
49
  */
50
- const StyledContentLabelFilename = styled(Text).withConfig({
50
+ var StyledContentLabelFilename = styled(Text).withConfig({
51
51
  componentId: "sc-3wfxns-5"
52
52
  })(["flex:1;margin-right:0.125rem;color:", ";font-weight:500;"], base.color.gray4);
53
53
  /**
54
54
  * label > status icon
55
55
  */
56
- const StyledContentLabelStatusIcon = styled(Icon).withConfig({
56
+ var StyledContentLabelStatusIcon = styled(Icon).withConfig({
57
57
  componentId: "sc-3wfxns-6"
58
58
  })(["margin-left:0.25rem;margin-right:0;&:last-of-type{margin-right:0.25rem;}"]);
59
59
  /**
60
60
  * label > menu button
61
61
  */
62
- const StyledContentLabelMenuButton = styled(IconButton).withConfig({
62
+ var StyledContentLabelMenuButton = styled(IconButton).withConfig({
63
63
  componentId: "sc-3wfxns-7"
64
64
  })(["flex:0 0 ", "px;width:", "px !important;height:", "px !important;opacity:0;transition:opacity 150ms ease-in-out;"], CONTENT_LABEL_MENU_BUTTON_SIZE, CONTENT_LABEL_MENU_BUTTON_SIZE, CONTENT_LABEL_MENU_BUTTON_SIZE);
65
65
  //
66
66
  //
67
67
  //
68
- const cssStyledContentActive = css(["border-left-color:", ";background-color:", ";", "{color:", ";}"], base.color.primary4, base.color.navy7, StyledContentLabelFilename, base.color.gray3);
69
- const cssStyledContentDragging = css(["border-left-color:transparent !important;background-color:transparent !important;"]);
70
- const StyledContent = styled.div.withConfig({
68
+ var cssStyledContentActive = css(["border-left-color:", ";background-color:", ";", "{color:", ";}"], base.color.primary4, base.color.navy7, StyledContentLabelFilename, base.color.gray3);
69
+ var cssStyledContentDragging = css(["border-left-color:transparent !important;background-color:transparent !important;"]);
70
+ var StyledContent = styled.div.withConfig({
71
71
  componentId: "sc-3wfxns-8"
72
- })(["display:flex;padding-right:", "px;width:100%;min-width:0;min-height:", "px;border-left-width:", "px;border-left-style:solid;border-left-color:transparent;user-select:none;", " ", " &:hover{background-color:", ";", "{color:", ";}", "{opacity:1;}}"], CONTENT_RIGHT_PADDING, CONTENT_MIN_HEIGHT, CONTENT_LEFT_BORDER_WIDTH, props => props.active && cssStyledContentActive, props => props.isDragging && cssStyledContentDragging, base.color.navy8, StyledContentLabelFilename, base.color.gray3, StyledContentLabelMenuButton);
72
+ })(["display:flex;padding-right:", "px;width:100%;min-width:0;min-height:", "px;border-left-width:", "px;border-left-style:solid;border-left-color:transparent;user-select:none;", " ", " &:hover{background-color:", ";", "{color:", ";}", "{opacity:1;}}"], CONTENT_RIGHT_PADDING, CONTENT_MIN_HEIGHT, CONTENT_LEFT_BORDER_WIDTH, function (props) {
73
+ return props.active && cssStyledContentActive;
74
+ }, function (props) {
75
+ return props.isDragging && cssStyledContentDragging;
76
+ }, base.color.navy8, StyledContentLabelFilename, base.color.gray3, StyledContentLabelMenuButton);
73
77
 
74
78
  export { StyledContent, StyledContentIndentGuide, StyledContentIndents, StyledContentLabel, StyledContentLabelDirArrowWrap, StyledContentLabelFilename, StyledContentLabelIconWrap, StyledContentLabelMenuButton, StyledContentLabelStatusIcon };