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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (459) hide show
  1. package/cjs/assets/empty.png.js +2 -1
  2. package/cjs/components/material-exercise/MaterialExercise.d.ts +1 -1
  3. package/cjs/components/material-exercise/MaterialExercise.js +75 -111
  4. package/cjs/components/material-exercise/MaterialExercise.styled.js +14 -18
  5. package/cjs/components/material-exercise/MaterialExerciseMobile.d.ts +1 -1
  6. package/cjs/components/material-exercise/MaterialExerciseMobile.js +7 -17
  7. package/cjs/components/material-exercise/context/ExerciseProvider.js +58 -68
  8. package/cjs/components/material-exercise/context/ExerciseProviderNoImage.js +30 -39
  9. package/cjs/components/material-exercise/context/context.js +1 -5
  10. package/cjs/components/material-exercise/context/recoil.js +293 -542
  11. package/cjs/components/material-exercise/context/subjects.js +4 -4
  12. package/cjs/components/material-exercise/context/types.d.ts +2 -2
  13. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +78 -100
  14. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +8 -12
  15. package/cjs/components/material-exercise/exercise-file/ExerciseFile.js +27 -30
  16. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +149 -225
  17. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +13 -20
  18. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +29 -49
  19. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.d.ts +2 -1
  20. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +4 -10
  21. package/cjs/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/ExerciseFileTabsFileTreeButton.js +36 -53
  22. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +211 -353
  23. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.d.ts +2 -1
  24. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +4 -10
  25. package/cjs/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +15 -18
  26. package/cjs/components/material-exercise/exercise-menu/ExerciseMenu.js +12 -21
  27. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +11 -12
  28. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +80 -123
  29. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +67 -100
  30. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuReset.js +22 -40
  31. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +119 -144
  32. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +13 -17
  33. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +19 -32
  34. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.d.ts +2 -1
  35. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +4 -10
  36. package/cjs/components/material-exercise/exercise-preview/ExercisePreview.js +24 -31
  37. package/cjs/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +6 -13
  38. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +35 -51
  39. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +6 -14
  40. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +78 -90
  41. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.js +12 -25
  42. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.styled.js +12 -18
  43. package/cjs/components/material-exercise/exercise-room/ExerciseRoomDetail.js +349 -504
  44. package/cjs/components/material-exercise/exercise-room/ExerciseRoomList.js +132 -197
  45. package/cjs/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -2
  46. package/cjs/components/material-exercise/exercise-runner/ExerciseRunner.js +142 -205
  47. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +1 -5
  48. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerController.js +16 -25
  49. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +86 -118
  50. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +19 -33
  51. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +82 -95
  52. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +52 -68
  53. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +87 -136
  54. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +2 -6
  55. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +15 -21
  56. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +23 -36
  57. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +248 -402
  58. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +8 -12
  59. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +50 -74
  60. package/cjs/components/shared/exercise-menu-button/ExerciseMenuButton.js +23 -32
  61. package/cjs/components/shared/exercise-shimmer/ExerciseFileShimmer.js +38 -44
  62. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +20 -26
  63. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +8 -14
  64. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +22 -28
  65. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +9 -24
  66. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.js +5 -6
  67. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.styled.js +1 -5
  68. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.js +10 -10
  69. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +5 -13
  70. package/cjs/components/shared/file-icon/FileIcon.js +16 -23
  71. package/cjs/components/shared/file-tabs/FileTab.js +33 -47
  72. package/cjs/components/shared/file-tabs/FileTab.styled.js +15 -23
  73. package/cjs/components/shared/file-tabs/FileTabs.js +39 -66
  74. package/cjs/components/shared/file-tabs/FileTabs.styled.js +2 -6
  75. package/cjs/components/shared/file-tabs/util.js +14 -27
  76. package/cjs/components/shared/file-tree/FileTree.js +10 -20
  77. package/cjs/components/shared/file-tree/FileTreeConfig.js +40 -46
  78. package/cjs/components/shared/file-tree/FileTreeList.js +40 -43
  79. package/cjs/components/shared/file-tree/FileTreeListItemContent.js +99 -128
  80. package/cjs/components/shared/file-tree/FileTreeListItemContent.styled.js +21 -29
  81. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.js +96 -106
  82. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.styled.js +6 -10
  83. package/cjs/components/shared/file-tree/FileTreeListItemContentMenu.js +91 -133
  84. package/cjs/components/shared/file-tree/FileTreeListItems.js +137 -149
  85. package/cjs/components/shared/file-tree/FileTreeListItems.styled.js +2 -6
  86. package/cjs/components/shared/file-tree/FileTreeToolbar.styled.js +1 -5
  87. package/cjs/components/shared/file-tree/context/FileTreeContext.d.ts +1 -1
  88. package/cjs/components/shared/file-tree/context/FileTreeContext.js +79 -101
  89. package/cjs/components/shared/file-tree/file-tree-toolbar/FileTreeToolbar.js +54 -59
  90. package/cjs/components/shared/file-tree/utils/fileTreeFiles.js +20 -24
  91. package/cjs/components/shared/file-tree/utils/fileTreeGenerator.js +146 -193
  92. package/cjs/components/shared/file-tree/utils/fileTreeInput.js +0 -11
  93. package/cjs/components/shared/file-tree/utils/fileTreeItem.js +1 -1
  94. package/cjs/components/shared/file-tree/utils/fileTreePath.js +6 -5
  95. package/cjs/components/shared/file-viewer/FileViewer.js +46 -76
  96. package/cjs/components/shared/file-viewer/FileViewerCsv.js +167 -262
  97. package/cjs/components/shared/file-viewer/FileViewerImage.js +12 -16
  98. package/cjs/components/shared/file-viewer/FileViewerIpynb.js +11 -27
  99. package/cjs/components/shared/file-viewer/FileViewerNonViewable.js +47 -65
  100. package/cjs/components/shared/file-viewer/FileViewerText.js +11 -23
  101. package/cjs/components/shared/material-modal/MaterialModal.js +11 -20
  102. package/cjs/components/shared/material-modal/MaterialModal.styled.js +5 -9
  103. package/cjs/components/shared/monaco-editor/MonacoEditor.js +74 -102
  104. package/cjs/components/shared/monaco-editor/MonacoEditorLazy.js +7 -15
  105. package/cjs/components/shared/monaco-editor/MonacoEditorMobile.js +34 -49
  106. package/cjs/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +194 -249
  107. package/cjs/components/shared/monaco-editor/constants/grammars/index.js +28 -82
  108. package/cjs/components/shared/monaco-editor/constants/monaco/preferences.js +5 -5
  109. package/cjs/components/shared/monaco-editor/constants/themes/index.js +17 -49
  110. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +10 -11
  111. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +14 -15
  112. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +8 -9
  113. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +30 -34
  114. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +7 -9
  115. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +6 -6
  116. package/cjs/components/shared/monaco-editor/editor-languages/css/formatter.js +10 -33
  117. package/cjs/components/shared/monaco-editor/editor-languages/css/index.js +2 -3
  118. package/cjs/components/shared/monaco-editor/editor-languages/html/formatter.js +10 -33
  119. package/cjs/components/shared/monaco-editor/editor-languages/html/index.js +2 -3
  120. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -1
  121. package/cjs/components/shared/monaco-editor/editor-languages/typescript/formatter.js +10 -37
  122. package/cjs/components/shared/monaco-editor/editor-languages/typescript/index.js +5 -6
  123. package/cjs/components/shared/monaco-editor/hooks/useEditorOptions.js +5 -11
  124. package/cjs/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +12 -10
  125. package/cjs/components/shared/monaco-editor/utils/emmet/registerProvider.js +6 -12
  126. package/cjs/components/shared/monaco-editor/utils/grammar/index.js +24 -67
  127. package/cjs/components/shared/monaco-editor/utils/grammar/onigasm.js +6 -25
  128. package/cjs/components/shared/monaco-editor/utils/grammar/textmate.js +37 -70
  129. package/cjs/components/shared/monaco-editor/utils/monacoLanguage.js +7 -8
  130. package/cjs/components/shared/monaco-editor/utils/monacoPreference.js +4 -6
  131. package/cjs/components/shared/monaco-editor/utils/prettier/config.js +2 -2
  132. package/cjs/components/shared/monaco-editor/utils/prettier/index.js +7 -27
  133. package/cjs/components/shared/monaco-editor/utils/theme/convert.js +14 -24
  134. package/cjs/components/shared/monaco-editor/utils/theme/index.js +3 -22
  135. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +56 -77
  136. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +68 -82
  137. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +93 -120
  138. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +132 -155
  139. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +92 -104
  140. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -2
  141. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +6 -1
  142. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -2
  143. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +158 -177
  144. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -3
  145. package/cjs/components/shared/no-vnc/NoVnc.js +78 -118
  146. package/cjs/components/shared/no-vnc/NoVncLazy.js +7 -15
  147. package/cjs/components/shared/preview-container/PreviewContainer.js +13 -18
  148. package/cjs/components/shared/web-browser/WebBrowser.js +52 -74
  149. package/cjs/components/shared/xterm/Xterm.js +57 -82
  150. package/cjs/components/shared/xterm/XtermLazy.js +7 -15
  151. package/cjs/constants/arduino.js +10 -10
  152. package/cjs/constants/color.js +1 -1
  153. package/cjs/constants/shortcutKeyMap.js +1 -3
  154. package/cjs/constants/stylesheets.js +5 -7
  155. package/cjs/hooks/useArduino.js +141 -282
  156. package/cjs/hooks/useExerciseFile.js +22 -24
  157. package/cjs/hooks/useExericseShortcut.js +4 -6
  158. package/cjs/hooks/useMaterialExerciseFileUrl.js +33 -55
  159. package/cjs/hooks/useRunnerRoomWebSocket.js +27 -51
  160. package/cjs/hooks/useStdioTextConcator.js +11 -15
  161. package/cjs/hooks/useStdioWebSocket.js +28 -32
  162. package/cjs/hooks/useUsercodeEditWebSocket.js +158 -238
  163. package/cjs/hooks/useUsercodeHistory.js +63 -115
  164. package/cjs/utils/arduino.js +11 -23
  165. package/cjs/utils/exerciseFile.js +10 -8
  166. package/cjs/utils/runner.js +17 -33
  167. package/es/assets/empty.png.js +2 -1
  168. package/es/components/material-exercise/MaterialExercise.d.ts +1 -1
  169. package/es/components/material-exercise/MaterialExercise.js +75 -107
  170. package/es/components/material-exercise/MaterialExercise.styled.js +14 -14
  171. package/es/components/material-exercise/MaterialExerciseMobile.d.ts +1 -1
  172. package/es/components/material-exercise/MaterialExerciseMobile.js +7 -13
  173. package/es/components/material-exercise/context/ExerciseProvider.js +58 -63
  174. package/es/components/material-exercise/context/ExerciseProviderNoImage.js +30 -35
  175. package/es/components/material-exercise/context/context.js +1 -1
  176. package/es/components/material-exercise/context/recoil.js +290 -535
  177. package/es/components/material-exercise/context/subjects.js +4 -4
  178. package/es/components/material-exercise/context/types.d.ts +2 -2
  179. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +78 -95
  180. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +8 -8
  181. package/es/components/material-exercise/exercise-file/ExerciseFile.js +27 -25
  182. package/es/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +149 -221
  183. package/es/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +13 -15
  184. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +29 -44
  185. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.d.ts +2 -1
  186. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +4 -6
  187. package/es/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/ExerciseFileTabsFileTreeButton.js +36 -48
  188. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +211 -348
  189. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.d.ts +2 -1
  190. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +4 -6
  191. package/es/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +15 -14
  192. package/es/components/material-exercise/exercise-menu/ExerciseMenu.js +12 -16
  193. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +11 -12
  194. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +80 -119
  195. package/es/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +67 -96
  196. package/es/components/material-exercise/exercise-menu/ExerciseMenuReset.js +23 -41
  197. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +122 -143
  198. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +13 -13
  199. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +19 -28
  200. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.d.ts +2 -1
  201. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +4 -6
  202. package/es/components/material-exercise/exercise-preview/ExercisePreview.js +24 -26
  203. package/es/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +7 -14
  204. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +35 -47
  205. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +6 -10
  206. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +78 -85
  207. package/es/components/material-exercise/exercise-room/ExerciseRoom.js +12 -21
  208. package/es/components/material-exercise/exercise-room/ExerciseRoom.styled.js +12 -14
  209. package/es/components/material-exercise/exercise-room/ExerciseRoomDetail.js +349 -498
  210. package/es/components/material-exercise/exercise-room/ExerciseRoomList.js +133 -193
  211. package/es/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -2
  212. package/es/components/material-exercise/exercise-runner/ExerciseRunner.js +142 -200
  213. package/es/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +1 -1
  214. package/es/components/material-exercise/exercise-runner/ExerciseRunnerController.js +16 -20
  215. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +85 -112
  216. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +20 -30
  217. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +82 -90
  218. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +52 -63
  219. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +87 -131
  220. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +2 -2
  221. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +15 -17
  222. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +23 -31
  223. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +250 -399
  224. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +8 -8
  225. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +49 -68
  226. package/es/components/shared/exercise-menu-button/ExerciseMenuButton.js +24 -29
  227. package/es/components/shared/exercise-shimmer/ExerciseFileShimmer.js +38 -40
  228. package/es/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +20 -22
  229. package/es/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +8 -10
  230. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +22 -24
  231. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +9 -19
  232. package/es/components/shared/exercise-version-list/ExerciseVersionList.js +5 -6
  233. package/es/components/shared/exercise-version-list/ExerciseVersionList.styled.js +1 -1
  234. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.js +10 -10
  235. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +5 -9
  236. package/es/components/shared/file-icon/FileIcon.js +16 -19
  237. package/es/components/shared/file-tabs/FileTab.js +33 -43
  238. package/es/components/shared/file-tabs/FileTab.styled.js +15 -19
  239. package/es/components/shared/file-tabs/FileTabs.js +40 -62
  240. package/es/components/shared/file-tabs/FileTabs.styled.js +2 -2
  241. package/es/components/shared/file-tabs/util.js +14 -27
  242. package/es/components/shared/file-tree/FileTree.js +10 -16
  243. package/es/components/shared/file-tree/FileTreeConfig.js +39 -39
  244. package/es/components/shared/file-tree/FileTreeList.js +40 -38
  245. package/es/components/shared/file-tree/FileTreeListItemContent.js +99 -124
  246. package/es/components/shared/file-tree/FileTreeListItemContent.styled.js +21 -25
  247. package/es/components/shared/file-tree/FileTreeListItemContentInput.js +96 -102
  248. package/es/components/shared/file-tree/FileTreeListItemContentInput.styled.js +6 -6
  249. package/es/components/shared/file-tree/FileTreeListItemContentMenu.js +91 -129
  250. package/es/components/shared/file-tree/FileTreeListItems.js +137 -149
  251. package/es/components/shared/file-tree/FileTreeListItems.styled.js +2 -2
  252. package/es/components/shared/file-tree/FileTreeToolbar.styled.js +1 -1
  253. package/es/components/shared/file-tree/context/FileTreeContext.d.ts +1 -1
  254. package/es/components/shared/file-tree/context/FileTreeContext.js +79 -97
  255. package/es/components/shared/file-tree/file-tree-toolbar/FileTreeToolbar.js +54 -55
  256. package/es/components/shared/file-tree/utils/fileTreeFiles.js +20 -20
  257. package/es/components/shared/file-tree/utils/fileTreeGenerator.js +146 -193
  258. package/es/components/shared/file-tree/utils/fileTreeInput.js +1 -11
  259. package/es/components/shared/file-tree/utils/fileTreeItem.js +1 -1
  260. package/es/components/shared/file-tree/utils/fileTreePath.js +6 -5
  261. package/es/components/shared/file-viewer/FileViewer.js +46 -69
  262. package/es/components/shared/file-viewer/FileViewerCsv.js +167 -257
  263. package/es/components/shared/file-viewer/FileViewerImage.js +12 -12
  264. package/es/components/shared/file-viewer/FileViewerIpynb.js +11 -21
  265. package/es/components/shared/file-viewer/FileViewerNonViewable.js +47 -60
  266. package/es/components/shared/file-viewer/FileViewerText.js +11 -19
  267. package/es/components/shared/material-modal/MaterialModal.js +11 -20
  268. package/es/components/shared/material-modal/MaterialModal.styled.js +5 -5
  269. package/es/components/shared/monaco-editor/MonacoEditor.js +72 -95
  270. package/es/components/shared/monaco-editor/MonacoEditorLazy.js +7 -11
  271. package/es/components/shared/monaco-editor/MonacoEditorMobile.js +32 -43
  272. package/es/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +194 -244
  273. package/es/components/shared/monaco-editor/constants/grammars/index.js +28 -82
  274. package/es/components/shared/monaco-editor/constants/monaco/preferences.js +5 -5
  275. package/es/components/shared/monaco-editor/constants/themes/index.js +17 -49
  276. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +10 -11
  277. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +14 -15
  278. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +8 -9
  279. package/es/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +30 -34
  280. package/es/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +7 -9
  281. package/es/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +6 -6
  282. package/es/components/shared/monaco-editor/editor-languages/css/formatter.js +10 -33
  283. package/es/components/shared/monaco-editor/editor-languages/html/formatter.js +10 -33
  284. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -1
  285. package/es/components/shared/monaco-editor/editor-languages/typescript/formatter.js +10 -37
  286. package/es/components/shared/monaco-editor/editor-languages/typescript/index.js +3 -3
  287. package/es/components/shared/monaco-editor/hooks/useEditorOptions.js +5 -11
  288. package/es/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +12 -10
  289. package/es/components/shared/monaco-editor/utils/emmet/registerProvider.js +6 -12
  290. package/es/components/shared/monaco-editor/utils/grammar/index.js +24 -67
  291. package/es/components/shared/monaco-editor/utils/grammar/onigasm.js +6 -25
  292. package/es/components/shared/monaco-editor/utils/grammar/textmate.js +35 -67
  293. package/es/components/shared/monaco-editor/utils/monacoLanguage.js +5 -5
  294. package/es/components/shared/monaco-editor/utils/monacoPreference.js +4 -6
  295. package/es/components/shared/monaco-editor/utils/prettier/config.js +2 -2
  296. package/es/components/shared/monaco-editor/utils/prettier/index.js +7 -27
  297. package/es/components/shared/monaco-editor/utils/theme/convert.js +13 -19
  298. package/es/components/shared/monaco-editor/utils/theme/index.js +3 -22
  299. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +56 -77
  300. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +68 -82
  301. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +93 -120
  302. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +130 -152
  303. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +92 -104
  304. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -2
  305. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +6 -1
  306. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -2
  307. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +156 -171
  308. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -3
  309. package/es/components/shared/no-vnc/NoVnc.js +71 -99
  310. package/es/components/shared/no-vnc/NoVncLazy.js +7 -11
  311. package/es/components/shared/preview-container/PreviewContainer.js +14 -15
  312. package/es/components/shared/web-browser/WebBrowser.js +52 -69
  313. package/es/components/shared/xterm/Xterm.js +57 -77
  314. package/es/components/shared/xterm/XtermLazy.js +7 -11
  315. package/es/constants/arduino.js +10 -10
  316. package/es/constants/color.js +1 -1
  317. package/es/constants/shortcutKeyMap.js +1 -3
  318. package/es/constants/stylesheets.js +5 -7
  319. package/es/hooks/useArduino.js +141 -278
  320. package/es/hooks/useExerciseFile.js +22 -24
  321. package/es/hooks/useExericseShortcut.js +4 -6
  322. package/es/hooks/useMaterialExerciseFileUrl.js +34 -52
  323. package/es/hooks/useRunnerRoomWebSocket.js +27 -51
  324. package/es/hooks/useStdioTextConcator.js +11 -11
  325. package/es/hooks/useStdioWebSocket.js +28 -32
  326. package/es/hooks/useUsercodeEditWebSocket.js +157 -232
  327. package/es/hooks/useUsercodeHistory.js +63 -115
  328. package/es/utils/arduino.js +12 -24
  329. package/es/utils/exerciseFile.js +10 -8
  330. package/es/utils/runner.js +17 -33
  331. package/package.json +15 -11
  332. package/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -519
  333. package/cjs/components/index.js +0 -25
  334. package/cjs/components/locales/index.js +0 -13
  335. package/cjs/components/material-exercise/context/index.js +0 -57
  336. package/cjs/components/material-exercise/exercise-code-history/index.js +0 -7
  337. package/cjs/components/material-exercise/exercise-code-history/locales/index.js +0 -13
  338. package/cjs/components/material-exercise/exercise-file/index.js +0 -7
  339. package/cjs/components/material-exercise/exercise-file-editor/index.js +0 -7
  340. package/cjs/components/material-exercise/exercise-file-editor/locales/index.js +0 -13
  341. package/cjs/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/index.js +0 -7
  342. package/cjs/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/locales/index.js +0 -13
  343. package/cjs/components/material-exercise/exercise-file-tabs/index.js +0 -9
  344. package/cjs/components/material-exercise/exercise-file-tabs/locales/index.js +0 -13
  345. package/cjs/components/material-exercise/exercise-file-tree/index.js +0 -9
  346. package/cjs/components/material-exercise/exercise-file-tree/locales/index.js +0 -13
  347. package/cjs/components/material-exercise/exercise-file-viewer/index.js +0 -7
  348. package/cjs/components/material-exercise/exercise-menu/index.js +0 -7
  349. package/cjs/components/material-exercise/exercise-menu/locales/index.js +0 -13
  350. package/cjs/components/material-exercise/exercise-multilang-dropdown/index.js +0 -9
  351. package/cjs/components/material-exercise/exercise-preview/index.js +0 -7
  352. package/cjs/components/material-exercise/exercise-preview/locales/index.js +0 -13
  353. package/cjs/components/material-exercise/exercise-rightpane/index.js +0 -7
  354. package/cjs/components/material-exercise/exercise-rightpane/locales/index.js +0 -13
  355. package/cjs/components/material-exercise/exercise-room/helpers/index.js +0 -7
  356. package/cjs/components/material-exercise/exercise-room/index.js +0 -7
  357. package/cjs/components/material-exercise/exercise-room/locales/index.js +0 -13
  358. package/cjs/components/material-exercise/exercise-runner/index.js +0 -7
  359. package/cjs/components/material-exercise/exercise-runner/locales/index.js +0 -13
  360. package/cjs/components/material-exercise/exercise-submit-history/index.js +0 -7
  361. package/cjs/components/material-exercise/exercise-submit-history/locales/index.js +0 -13
  362. package/cjs/components/material-exercise/index.js +0 -9
  363. package/cjs/components/shared/exercise-menu-button/index.js +0 -7
  364. package/cjs/components/shared/exercise-shimmer/index.js +0 -15
  365. package/cjs/components/shared/exercise-version-list/index.js +0 -9
  366. package/cjs/components/shared/file-icon/index.js +0 -7
  367. package/cjs/components/shared/file-tabs/index.js +0 -7
  368. package/cjs/components/shared/file-tree/context/index.js +0 -9
  369. package/cjs/components/shared/file-tree/file-tree-toolbar/index.js +0 -7
  370. package/cjs/components/shared/file-tree/file-tree-toolbar/locales/index.js +0 -13
  371. package/cjs/components/shared/file-tree/index.js +0 -7
  372. package/cjs/components/shared/file-tree/locales/index.js +0 -13
  373. package/cjs/components/shared/file-tree/utils/index.js +0 -20
  374. package/cjs/components/shared/file-viewer/index.js +0 -7
  375. package/cjs/components/shared/file-viewer/locales/index.js +0 -21
  376. package/cjs/components/shared/material-modal/index.js +0 -7
  377. package/cjs/components/shared/monaco-editor/constants/index.js +0 -13
  378. package/cjs/components/shared/monaco-editor/constants/monaco/index.js +0 -11
  379. package/cjs/components/shared/monaco-editor/editor-hooks/index.js +0 -17
  380. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/index.js +0 -11
  381. package/cjs/components/shared/monaco-editor/hooks/index.js +0 -7
  382. package/cjs/components/shared/monaco-editor/index.js +0 -21
  383. package/cjs/components/shared/monaco-editor/locales/index.js +0 -13
  384. package/cjs/components/shared/monaco-editor/utils/emmet/index.js +0 -9
  385. package/cjs/components/shared/monaco-editor/utils/index.js +0 -9
  386. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/index.js +0 -12
  387. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/index.js +0 -11
  388. package/cjs/components/shared/no-vnc/index.js +0 -7
  389. package/cjs/components/shared/preview-container/index.js +0 -9
  390. package/cjs/components/shared/web-browser/index.js +0 -7
  391. package/cjs/components/shared/xterm/index.js +0 -7
  392. package/cjs/components/shared/xterm/locales/index.js +0 -13
  393. package/cjs/constants/index.js +0 -7
  394. package/cjs/hooks/index.js +0 -20
  395. package/cjs/utils/index.js +0 -10
  396. package/es/_virtual/_rollupPluginBabelHelpers.js +0 -499
  397. package/es/components/index.js +0 -8
  398. package/es/components/locales/index.js +0 -4
  399. package/es/components/material-exercise/context/index.js +0 -5
  400. package/es/components/material-exercise/exercise-code-history/index.js +0 -1
  401. package/es/components/material-exercise/exercise-code-history/locales/index.js +0 -4
  402. package/es/components/material-exercise/exercise-file/index.js +0 -1
  403. package/es/components/material-exercise/exercise-file-editor/index.js +0 -1
  404. package/es/components/material-exercise/exercise-file-editor/locales/index.js +0 -4
  405. package/es/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/index.js +0 -1
  406. package/es/components/material-exercise/exercise-file-tabs/exercise-file-tabs-file-tree-button/locales/index.js +0 -4
  407. package/es/components/material-exercise/exercise-file-tabs/index.js +0 -2
  408. package/es/components/material-exercise/exercise-file-tabs/locales/index.js +0 -4
  409. package/es/components/material-exercise/exercise-file-tree/index.js +0 -2
  410. package/es/components/material-exercise/exercise-file-tree/locales/index.js +0 -4
  411. package/es/components/material-exercise/exercise-file-viewer/index.js +0 -1
  412. package/es/components/material-exercise/exercise-menu/index.js +0 -1
  413. package/es/components/material-exercise/exercise-menu/locales/index.js +0 -4
  414. package/es/components/material-exercise/exercise-multilang-dropdown/index.js +0 -2
  415. package/es/components/material-exercise/exercise-preview/index.js +0 -1
  416. package/es/components/material-exercise/exercise-preview/locales/index.js +0 -4
  417. package/es/components/material-exercise/exercise-rightpane/index.js +0 -1
  418. package/es/components/material-exercise/exercise-rightpane/locales/index.js +0 -4
  419. package/es/components/material-exercise/exercise-room/helpers/index.js +0 -1
  420. package/es/components/material-exercise/exercise-room/index.js +0 -1
  421. package/es/components/material-exercise/exercise-room/locales/index.js +0 -4
  422. package/es/components/material-exercise/exercise-runner/index.js +0 -1
  423. package/es/components/material-exercise/exercise-runner/locales/index.js +0 -4
  424. package/es/components/material-exercise/exercise-submit-history/index.js +0 -1
  425. package/es/components/material-exercise/exercise-submit-history/locales/index.js +0 -4
  426. package/es/components/material-exercise/index.js +0 -2
  427. package/es/components/shared/exercise-menu-button/index.js +0 -1
  428. package/es/components/shared/exercise-shimmer/index.js +0 -5
  429. package/es/components/shared/exercise-version-list/index.js +0 -2
  430. package/es/components/shared/file-icon/index.js +0 -1
  431. package/es/components/shared/file-tabs/index.js +0 -1
  432. package/es/components/shared/file-tree/context/index.js +0 -1
  433. package/es/components/shared/file-tree/file-tree-toolbar/index.js +0 -1
  434. package/es/components/shared/file-tree/file-tree-toolbar/locales/index.js +0 -4
  435. package/es/components/shared/file-tree/index.js +0 -1
  436. package/es/components/shared/file-tree/locales/index.js +0 -4
  437. package/es/components/shared/file-tree/utils/index.js +0 -5
  438. package/es/components/shared/file-viewer/index.js +0 -1
  439. package/es/components/shared/file-viewer/locales/index.js +0 -8
  440. package/es/components/shared/material-modal/index.js +0 -1
  441. package/es/components/shared/monaco-editor/constants/index.js +0 -2
  442. package/es/components/shared/monaco-editor/constants/monaco/index.js +0 -1
  443. package/es/components/shared/monaco-editor/editor-hooks/index.js +0 -6
  444. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/index.js +0 -3
  445. package/es/components/shared/monaco-editor/hooks/index.js +0 -1
  446. package/es/components/shared/monaco-editor/index.js +0 -6
  447. package/es/components/shared/monaco-editor/locales/index.js +0 -4
  448. package/es/components/shared/monaco-editor/utils/emmet/index.js +0 -1
  449. package/es/components/shared/monaco-editor/utils/index.js +0 -2
  450. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/index.js +0 -3
  451. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/index.js +0 -2
  452. package/es/components/shared/no-vnc/index.js +0 -1
  453. package/es/components/shared/preview-container/index.js +0 -1
  454. package/es/components/shared/web-browser/index.js +0 -1
  455. package/es/components/shared/xterm/index.js +0 -1
  456. package/es/components/shared/xterm/locales/index.js +0 -4
  457. package/es/constants/index.js +0 -1
  458. package/es/hooks/index.js +0 -7
  459. package/es/utils/index.js +0 -2
@@ -1,26 +1,35 @@
1
- import { toConsumableArray as _toConsumableArray, typeof as _typeof } from '../../../../../_virtual/_rollupPluginBabelHelpers.js';
2
1
  import expand, { resolveConfig, extract } from 'emmet';
3
2
  import { cssData, htmlData } from './data.js';
4
3
  import { syntaxes } from './configCompat.js';
5
4
 
5
+ /* ====================================================================================================
6
+ * These codes forked and modified from `microsoft/vscode-emmet-helper`
7
+ * under the terms of the MIT license.
8
+ * Make sure to check the original project if any issue exists.
9
+ * - project: https://github.com/microsoft/vscode-emmet-helper
10
+ * - codes: https://github.com/microsoft/vscode-emmet-helper/blob/e64481648451f0189216794979ce2ace82ee8148/src/emmetHelper.ts
11
+ * ==================================================================================================== */
12
+ /* istanbul ignore file */
13
+ /* tslint:disable */
14
+ /* eslint-disable */
6
15
  // /* workaround for webpack issue: https://github.com/webpack/webpack/issues/5756
7
16
  // @emmetio/extract-abbreviation has a cjs that uses a default export
8
17
  // */
9
18
  // const extract = typeof _extractAbbreviation === 'function' ? _extractAbbreviation : _extractAbbreviation.default;
10
- var snippetKeyCache = new Map();
11
- var markupSnippetKeys;
12
- var stylesheetCustomSnippetsKeyCache = new Map();
13
- var htmlAbbreviationStartRegex = /^[a-z,A-Z,!,(,[,#,\.\{]/;
19
+ const snippetKeyCache = new Map();
20
+ let markupSnippetKeys;
21
+ const stylesheetCustomSnippetsKeyCache = new Map();
22
+ const htmlAbbreviationStartRegex = /^[a-z,A-Z,!,(,[,#,\.\{]/;
14
23
  // take off { for jsx because it interferes with the language
15
- var jsxAbbreviationStartRegex = /^[a-z,A-Z,!,(,[,#,\.]/;
16
- var cssAbbreviationRegex = /^-?[a-z,A-Z,!,@,#]/;
17
- var htmlAbbreviationRegex = /[a-z,A-Z\.]/;
18
- var commonlyUsedTags = [].concat(_toConsumableArray(htmlData.tags), ['lorem']);
19
- var bemFilterSuffix = 'bem';
20
- var filterDelimitor = '|';
21
- var trimFilterSuffix = 't';
22
- var commentFilterSuffix = 'c';
23
- var maxFilters = 3;
24
+ const jsxAbbreviationStartRegex = /^[a-z,A-Z,!,(,[,#,\.]/;
25
+ const cssAbbreviationRegex = /^-?[a-z,A-Z,!,@,#]/;
26
+ const htmlAbbreviationRegex = /[a-z,A-Z\.]/;
27
+ const commonlyUsedTags = [...htmlData.tags, 'lorem'];
28
+ const bemFilterSuffix = 'bem';
29
+ const filterDelimitor = '|';
30
+ const trimFilterSuffix = 't';
31
+ const commentFilterSuffix = 'c';
32
+ const maxFilters = 3;
24
33
  /**
25
34
  * Returns all applicable emmet expansions for abbreviation at given position in a CompletionList
26
35
  */
@@ -29,40 +38,42 @@ function doComplete(_monaco, model, position, syntax, emmetConfig) {
29
38
  if (emmetConfig.showExpandedAbbreviation === 'never' || !getEmmetMode(syntax, emmetConfig.excludeLanguages)) {
30
39
  return;
31
40
  }
32
- var isStyleSheetRes = isStyleSheet(syntax);
41
+ const isStyleSheetRes = isStyleSheet(syntax);
33
42
  // Fetch markupSnippets so that we can provide possible abbreviation completions
34
43
  // For example, when text at position is `a`, completions should return `a:blank`, `a:link`, `acr` etc.
35
44
  if (!isStyleSheetRes) {
36
45
  if (!snippetKeyCache.has(syntax)) {
37
- var registry = (_a = customSnippetsRegistry[syntax]) !== null && _a !== void 0 ? _a : getDefaultSnippets(syntax);
46
+ const registry = (_a = customSnippetsRegistry[syntax]) !== null && _a !== void 0 ? _a : getDefaultSnippets(syntax);
38
47
  snippetKeyCache.set(syntax, Object.keys(registry));
39
48
  }
40
49
  markupSnippetKeys = (_b = snippetKeyCache.get(syntax)) !== null && _b !== void 0 ? _b : [];
41
50
  }
42
- var extractOptions = {
51
+ const extractOptions = {
43
52
  lookAhead: !isStyleSheetRes,
44
53
  type: isStyleSheetRes ? 'stylesheet' : 'markup'
45
54
  };
46
- var extractedValue = extractAbbreviation(_monaco, model, position, extractOptions);
55
+ const extractedValue = extractAbbreviation(_monaco, model, position, extractOptions);
47
56
  if (!extractedValue) {
48
57
  return;
49
58
  }
50
- var abbreviationRange = extractedValue.abbreviationRange,
51
- abbreviation = extractedValue.abbreviation,
52
- filter = extractedValue.filter;
53
- var currentLineTillPosition = getCurrentLine(model, position).substr(0, position.column - 1);
54
- var currentWord = getCurrentWord(currentLineTillPosition);
59
+ const {
60
+ abbreviationRange,
61
+ abbreviation,
62
+ filter
63
+ } = extractedValue;
64
+ const currentLineTillPosition = getCurrentLine(model, position).substr(0, position.column - 1);
65
+ const currentWord = getCurrentWord(currentLineTillPosition);
55
66
  // Don't attempt to expand open tags
56
- if (currentWord === abbreviation && currentLineTillPosition.endsWith("<".concat(abbreviation)) && syntaxes.markup.includes(syntax)) {
67
+ if (currentWord === abbreviation && currentLineTillPosition.endsWith(`<${abbreviation}`) && syntaxes.markup.includes(syntax)) {
57
68
  return;
58
69
  }
59
- var expandOptions = getExpandOptions(syntax, emmetConfig, filter);
60
- var expandedText = "";
61
- var expandedAbbr;
62
- var completionItems = [];
70
+ const expandOptions = getExpandOptions(syntax, emmetConfig, filter);
71
+ let expandedText = "";
72
+ let expandedAbbr;
73
+ let completionItems = [];
63
74
  // Create completion item after expanding given abbreviation
64
75
  // if abbreviation is valid and expanded value is not noise
65
- var createExpandedAbbr = function createExpandedAbbr(syntax, abbr) {
76
+ const createExpandedAbbr = (syntax, abbr) => {
66
77
  if (!isAbbreviationValid(syntax, abbreviation)) {
67
78
  return;
68
79
  }
@@ -90,9 +101,7 @@ function doComplete(_monaco, model, position, syntax, emmetConfig) {
90
101
  if (isStyleSheet(syntax)) {
91
102
  createExpandedAbbr(syntax, abbreviation);
92
103
  // When abbr is longer than usual emmet snippets and matches better with existing css property, then no emmet
93
- if (abbreviation.length > 4 && cssData.properties.find(function (x) {
94
- return x.startsWith(abbreviation);
95
- })) {
104
+ if (abbreviation.length > 4 && cssData.properties.find(x => x.startsWith(abbreviation))) {
96
105
  return {
97
106
  suggestions: [],
98
107
  incomplete: true
@@ -105,17 +114,13 @@ function doComplete(_monaco, model, position, syntax, emmetConfig) {
105
114
  expandedAbbr.label = removeTabStops(expandedText);
106
115
  expandedAbbr.filterText = abbreviation;
107
116
  // Custom snippets should show up in completions if abbreviation is a prefix
108
- var stylesheetCustomSnippetsKeys = stylesheetCustomSnippetsKeyCache.has(syntax) ? stylesheetCustomSnippetsKeyCache.get(syntax) : stylesheetCustomSnippetsKeyCache.get('css');
117
+ const stylesheetCustomSnippetsKeys = stylesheetCustomSnippetsKeyCache.has(syntax) ? stylesheetCustomSnippetsKeyCache.get(syntax) : stylesheetCustomSnippetsKeyCache.get('css');
109
118
  completionItems = makeSnippetSuggestion(_monaco, stylesheetCustomSnippetsKeys !== null && stylesheetCustomSnippetsKeys !== void 0 ? stylesheetCustomSnippetsKeys : [], abbreviation, abbreviation, abbreviationRange, expandOptions, 'Emmet Custom Snippet', false);
110
- if (!completionItems.find(function (x) {
111
- return x.insertText === (expandedAbbr === null || expandedAbbr === void 0 ? void 0 : expandedAbbr.insertText);
112
- })) {
119
+ if (!completionItems.find(x => x.insertText === (expandedAbbr === null || expandedAbbr === void 0 ? void 0 : expandedAbbr.insertText))) {
113
120
  // Fix for https://github.com/Microsoft/vscode/issues/28933#issuecomment-309236902
114
121
  // When user types in propertyname, emmet uses it to match with snippet names, resulting in width -> widows or font-family -> font: family
115
122
  // Filter out those cases here.
116
- var abbrRegex = new RegExp('.*' + abbreviation.split('').map(function (x) {
117
- return x === '$' || x === '+' ? '\\' + x : x;
118
- }).join('.*') + '.*', 'i');
123
+ const abbrRegex = new RegExp('.*' + abbreviation.split('').map(x => x === '$' || x === '+' ? '\\' + x : x).join('.*') + '.*', 'i');
119
124
  if (/\d/.test(abbreviation) || abbrRegex.test(expandedAbbr.label)) {
120
125
  completionItems.push(expandedAbbr);
121
126
  }
@@ -123,23 +128,21 @@ function doComplete(_monaco, model, position, syntax, emmetConfig) {
123
128
  }
124
129
  } else {
125
130
  createExpandedAbbr(syntax, abbreviation);
126
- var tagToFindMoreSuggestionsFor = abbreviation;
127
- var newTagMatches = /(>|\+)([\w:-]+)$/.exec(abbreviation);
131
+ let tagToFindMoreSuggestionsFor = abbreviation;
132
+ const newTagMatches = /(>|\+)([\w:-]+)$/.exec(abbreviation);
128
133
  if (newTagMatches && newTagMatches.length === 3) {
129
134
  tagToFindMoreSuggestionsFor = newTagMatches[2];
130
135
  }
131
136
  if (syntax !== 'xml') {
132
- var commonlyUsedTagSuggestions = makeSnippetSuggestion(_monaco, commonlyUsedTags, tagToFindMoreSuggestionsFor, abbreviation, abbreviationRange, expandOptions, 'Emmet Abbreviation');
137
+ const commonlyUsedTagSuggestions = makeSnippetSuggestion(_monaco, commonlyUsedTags, tagToFindMoreSuggestionsFor, abbreviation, abbreviationRange, expandOptions, 'Emmet Abbreviation');
133
138
  completionItems = completionItems.concat(commonlyUsedTagSuggestions);
134
139
  }
135
140
  if (emmetConfig.showAbbreviationSuggestions === true) {
136
- var abbreviationSuggestions = makeSnippetSuggestion(_monaco, markupSnippetKeys.filter(function (x) {
137
- return !commonlyUsedTags.includes(x);
138
- }), tagToFindMoreSuggestionsFor, abbreviation, abbreviationRange, expandOptions, 'Emmet Abbreviation');
141
+ const abbreviationSuggestions = makeSnippetSuggestion(_monaco, markupSnippetKeys.filter(x => !commonlyUsedTags.includes(x)), tagToFindMoreSuggestionsFor, abbreviation, abbreviationRange, expandOptions, 'Emmet Abbreviation');
139
142
  // Workaround for the main expanded abbr not appearing before the snippet suggestions
140
143
  if (expandedAbbr && abbreviationSuggestions.length > 0 && tagToFindMoreSuggestionsFor !== abbreviation) {
141
144
  expandedAbbr.sortText = '0' + expandedAbbr.label;
142
- abbreviationSuggestions.forEach(function (item) {
145
+ abbreviationSuggestions.forEach(item => {
143
146
  // Workaround for snippet suggestions items getting filtered out as the complete abbr does not start with snippetKey
144
147
  item.filterText = abbreviation;
145
148
  // Workaround for the main expanded abbr not appearing before the snippet suggestions
@@ -149,16 +152,12 @@ function doComplete(_monaco, model, position, syntax, emmetConfig) {
149
152
  completionItems = completionItems.concat(abbreviationSuggestions);
150
153
  }
151
154
  // https://github.com/microsoft/vscode/issues/66680
152
- if (syntax === 'html' && completionItems.length >= 2 && abbreviation.includes(":") && (expandedAbbr === null || expandedAbbr === void 0 ? void 0 : expandedAbbr.insertText) === "<".concat(abbreviation, ">${0}</").concat(abbreviation, ">")) {
153
- completionItems = completionItems.filter(function (item) {
154
- return item.label !== abbreviation;
155
- });
155
+ if (syntax === 'html' && completionItems.length >= 2 && abbreviation.includes(":") && (expandedAbbr === null || expandedAbbr === void 0 ? void 0 : expandedAbbr.insertText) === `<${abbreviation}>\${0}</${abbreviation}>`) {
156
+ completionItems = completionItems.filter(item => item.label !== abbreviation);
156
157
  }
157
158
  }
158
159
  if (emmetConfig.showSuggestionsAsSnippets === true) {
159
- completionItems.forEach(function (x) {
160
- return x.kind = _monaco.languages.CompletionItemKind.Snippet;
161
- });
160
+ completionItems.forEach(x => x.kind = _monaco.languages.CompletionItemKind.Snippet);
162
161
  }
163
162
  return completionItems.length ? {
164
163
  suggestions: completionItems,
@@ -168,25 +167,24 @@ function doComplete(_monaco, model, position, syntax, emmetConfig) {
168
167
  /**
169
168
  * Create & return snippets for snippet keys that start with given prefix
170
169
  */
171
- function makeSnippetSuggestion(_monaco, snippetKeys, prefix, abbreviation, abbreviationRange, expandOptions, snippetDetail) {
172
- var skipFullMatch = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : true;
170
+ function makeSnippetSuggestion(_monaco, snippetKeys, prefix, abbreviation, abbreviationRange, expandOptions, snippetDetail, skipFullMatch = true) {
173
171
  if (!prefix || !snippetKeys) {
174
172
  return [];
175
173
  }
176
- var snippetCompletions = [];
177
- snippetKeys.forEach(function (snippetKey) {
174
+ const snippetCompletions = [];
175
+ snippetKeys.forEach(snippetKey => {
178
176
  if (!snippetKey.startsWith(prefix.toLowerCase()) || skipFullMatch && snippetKey === prefix.toLowerCase()) {
179
177
  return;
180
178
  }
181
- var currentAbbr = abbreviation + snippetKey.substr(prefix.length);
182
- var expandedAbbr;
179
+ const currentAbbr = abbreviation + snippetKey.substr(prefix.length);
180
+ let expandedAbbr;
183
181
  try {
184
182
  expandedAbbr = expand(currentAbbr, expandOptions);
185
183
  } catch (e) {}
186
184
  if (!expandedAbbr) {
187
185
  return;
188
186
  }
189
- var item = {
187
+ const item = {
190
188
  kind: _monaco.languages.CompletionItemKind.Property,
191
189
  label: prefix + snippetKey.substr(prefix.length),
192
190
  documentation: replaceTabStopsWithCursors(expandedAbbr),
@@ -201,7 +199,7 @@ function makeSnippetSuggestion(_monaco, snippetKeys, prefix, abbreviation, abbre
201
199
  }
202
200
  function getCurrentWord(currentLineTillPosition) {
203
201
  if (currentLineTillPosition) {
204
- var matches = /[\w,:,-,\.]*$/.exec(currentLineTillPosition);
202
+ const matches = /[\w,:,-,\.]*$/.exec(currentLineTillPosition);
205
203
  if (matches) {
206
204
  return matches[0];
207
205
  }
@@ -220,12 +218,12 @@ function addFinalTabStop(text) {
220
218
  if (!text || !text.trim()) {
221
219
  return text;
222
220
  }
223
- var maxTabStop = -1;
224
- var maxTabStopRanges = [];
225
- var foundLastStop = false;
226
- var replaceWithLastStop = false;
227
- var i = 0;
228
- var n = text.length;
221
+ let maxTabStop = -1;
222
+ let maxTabStopRanges = [];
223
+ let foundLastStop = false;
224
+ let replaceWithLastStop = false;
225
+ let i = 0;
226
+ const n = text.length;
229
227
  try {
230
228
  while (i < n && !foundLastStop) {
231
229
  // Look for ${
@@ -233,8 +231,8 @@ function addFinalTabStop(text) {
233
231
  continue;
234
232
  }
235
233
  // Find tabstop
236
- var numberStart = -1;
237
- var numberEnd = -1;
234
+ let numberStart = -1;
235
+ let numberEnd = -1;
238
236
  while (i < n && /\d/.test(text[i])) {
239
237
  numberStart = numberStart < 0 ? i : numberStart;
240
238
  numberEnd = i + 1;
@@ -245,12 +243,12 @@ function addFinalTabStop(text) {
245
243
  continue;
246
244
  }
247
245
  // If ${0} was found, then break
248
- var currentTabStop = text.substring(numberStart, numberEnd);
246
+ const currentTabStop = text.substring(numberStart, numberEnd);
249
247
  foundLastStop = currentTabStop === '0';
250
248
  if (foundLastStop) {
251
249
  break;
252
250
  }
253
- var foundPlaceholder = false;
251
+ let foundPlaceholder = false;
254
252
  if (text[i++] == ':') {
255
253
  // TODO: Nested placeholders may break here
256
254
  while (i < n) {
@@ -265,37 +263,35 @@ function addFinalTabStop(text) {
265
263
  if (Number(currentTabStop) > Number(maxTabStop)) {
266
264
  maxTabStop = Number(currentTabStop);
267
265
  maxTabStopRanges = [{
268
- numberStart: numberStart,
269
- numberEnd: numberEnd
266
+ numberStart,
267
+ numberEnd
270
268
  }];
271
269
  replaceWithLastStop = !foundPlaceholder;
272
270
  } else if (Number(currentTabStop) === maxTabStop) {
273
271
  maxTabStopRanges.push({
274
- numberStart: numberStart,
275
- numberEnd: numberEnd
272
+ numberStart,
273
+ numberEnd
276
274
  });
277
275
  }
278
276
  }
279
277
  } catch (e) {}
280
278
  if (replaceWithLastStop && !foundLastStop) {
281
- for (var _i = 0; _i < maxTabStopRanges.length; _i++) {
282
- var rangeStart = maxTabStopRanges[_i].numberStart;
283
- var rangeEnd = maxTabStopRanges[_i].numberEnd;
279
+ for (let i = 0; i < maxTabStopRanges.length; i++) {
280
+ const rangeStart = maxTabStopRanges[i].numberStart;
281
+ const rangeEnd = maxTabStopRanges[i].numberEnd;
284
282
  text = text.substr(0, rangeStart) + '0' + text.substr(rangeEnd);
285
283
  }
286
284
  }
287
285
  return text;
288
286
  }
289
287
  function getCurrentLine(model, position) {
290
- var currentLine = model.getLineContent(position.lineNumber);
288
+ const currentLine = model.getLineContent(position.lineNumber);
291
289
  return currentLine;
292
290
  }
293
- var customSnippetsRegistry = {};
294
- var variablesFromFile = {};
295
- var profilesFromFile = {};
296
- var emmetSnippetField = function emmetSnippetField(index, placeholder) {
297
- return "${".concat(index).concat(placeholder ? ':' + placeholder : '', "}");
298
- };
291
+ let customSnippetsRegistry = {};
292
+ let variablesFromFile = {};
293
+ let profilesFromFile = {};
294
+ const emmetSnippetField = (index, placeholder) => `\${${index}${placeholder ? ':' + placeholder : ''}}`;
299
295
  /** Returns whether or not syntax is a supported stylesheet syntax, like CSS */
300
296
  function isStyleSheet(syntax) {
301
297
  return syntaxes.stylesheet.includes(syntax);
@@ -310,26 +306,26 @@ function getDefaultSyntax(syntax) {
310
306
  }
311
307
  /** Returns the default snippets that Emmet suggests */
312
308
  function getDefaultSnippets(syntax) {
313
- var syntaxType = getSyntaxType(syntax);
314
- var emptyUserConfig = {
309
+ const syntaxType = getSyntaxType(syntax);
310
+ const emptyUserConfig = {
315
311
  type: syntaxType,
316
- syntax: syntax
312
+ syntax
317
313
  };
318
- var resolvedConfig = resolveConfig(emptyUserConfig);
314
+ const resolvedConfig = resolveConfig(emptyUserConfig);
319
315
  // https://github.com/microsoft/vscode/issues/97632
320
316
  // don't return markup (HTML) snippets for XML
321
317
  return syntax === 'xml' ? {} : resolvedConfig.snippets;
322
318
  }
323
319
  function getFilters(text, pos) {
324
- var filter;
325
- for (var i = 0; i < maxFilters; i++) {
326
- if (text.endsWith("".concat(filterDelimitor).concat(bemFilterSuffix), pos)) {
320
+ let filter;
321
+ for (let i = 0; i < maxFilters; i++) {
322
+ if (text.endsWith(`${filterDelimitor}${bemFilterSuffix}`, pos)) {
327
323
  pos -= bemFilterSuffix.length + 1;
328
324
  filter = filter ? bemFilterSuffix + ',' + filter : bemFilterSuffix;
329
- } else if (text.endsWith("".concat(filterDelimitor).concat(commentFilterSuffix), pos)) {
325
+ } else if (text.endsWith(`${filterDelimitor}${commentFilterSuffix}`, pos)) {
330
326
  pos -= commentFilterSuffix.length + 1;
331
327
  filter = filter ? commentFilterSuffix + ',' + filter : commentFilterSuffix;
332
- } else if (text.endsWith("".concat(filterDelimitor).concat(trimFilterSuffix), pos)) {
328
+ } else if (text.endsWith(`${filterDelimitor}${trimFilterSuffix}`, pos)) {
333
329
  pos -= trimFilterSuffix.length + 1;
334
330
  filter = filter ? trimFilterSuffix + ',' + filter : trimFilterSuffix;
335
331
  } else {
@@ -345,21 +341,22 @@ function getFilters(text, pos) {
345
341
  * Extracts abbreviation from the given position in the given document
346
342
  */
347
343
  function extractAbbreviation(_monaco, model, position, options) {
348
- var currentLine = model.getLineContent(position.lineNumber);
349
- var currentLineTillPosition = currentLine.substr(0, position.column - 1);
350
- var _getFilters = getFilters(currentLineTillPosition, position.column - 1),
351
- pos = _getFilters.pos,
352
- filter = _getFilters.filter;
353
- var lengthOccupiedByFilter = filter ? filter.length + 1 : 0;
354
- var result = extract(currentLine, pos, options);
344
+ const currentLine = model.getLineContent(position.lineNumber);
345
+ const currentLineTillPosition = currentLine.substr(0, position.column - 1);
346
+ const {
347
+ pos,
348
+ filter
349
+ } = getFilters(currentLineTillPosition, position.column - 1);
350
+ const lengthOccupiedByFilter = filter ? filter.length + 1 : 0;
351
+ const result = extract(currentLine, pos, options);
355
352
  if (!result) {
356
353
  return;
357
354
  }
358
- var rangeToReplace = new _monaco.Range(position.lineNumber, result.location + 1, position.lineNumber, result.location + result.abbreviation.length + lengthOccupiedByFilter + 1);
355
+ const rangeToReplace = new _monaco.Range(position.lineNumber, result.location + 1, position.lineNumber, result.location + result.abbreviation.length + lengthOccupiedByFilter + 1);
359
356
  return {
360
357
  abbreviationRange: rangeToReplace,
361
358
  abbreviation: result.abbreviation,
362
- filter: filter
359
+ filter
363
360
  };
364
361
  }
365
362
  /**
@@ -375,7 +372,7 @@ function isAbbreviationValid(syntax, abbreviation) {
375
372
  if (isStyleSheet(syntax)) {
376
373
  if (abbreviation.includes('#')) {
377
374
  if (abbreviation.startsWith('#')) {
378
- var hexColorRegex = /^#[\d,a-f,A-F]{1,6}$/;
375
+ const hexColorRegex = /^#[\d,a-f,A-F]{1,6}$/;
379
376
  return hexColorRegex.test(abbreviation);
380
377
  } else if (commonlyUsedTags.includes(abbreviation.substring(0, abbreviation.indexOf('#')))) {
381
378
  return false;
@@ -401,18 +398,16 @@ function isExpandedTextNoise(syntax, abbreviation, expandedText, options) {
401
398
  // Unresolved css abbreviations get expanded to a blank property value
402
399
  // Eg: abc -> abc: ; or abc:d -> abc: d; which is noise if it gets suggested for every word typed
403
400
  if (isStyleSheet(syntax) && options) {
404
- var between = (_a = options['stylesheet.between']) !== null && _a !== void 0 ? _a : ': ';
405
- var after = (_b = options['stylesheet.after']) !== null && _b !== void 0 ? _b : ';';
401
+ const between = (_a = options['stylesheet.between']) !== null && _a !== void 0 ? _a : ': ';
402
+ const after = (_b = options['stylesheet.after']) !== null && _b !== void 0 ? _b : ';';
406
403
  // Remove overlapping between `abbreviation` and `between`, if any
407
- var endPrefixIndex = abbreviation.indexOf(between[0], Math.max(abbreviation.length - between.length, 0));
404
+ let endPrefixIndex = abbreviation.indexOf(between[0], Math.max(abbreviation.length - between.length, 0));
408
405
  endPrefixIndex = endPrefixIndex >= 0 ? endPrefixIndex : abbreviation.length;
409
- var abbr = abbreviation.substring(0, endPrefixIndex);
410
- return expandedText === "".concat(abbr).concat(between, "${0}").concat(after) || expandedText.replace(/\s/g, '') === abbreviation.replace(/\s/g, '') + after;
406
+ const abbr = abbreviation.substring(0, endPrefixIndex);
407
+ return expandedText === `${abbr}${between}\${0}${after}` || expandedText.replace(/\s/g, '') === abbreviation.replace(/\s/g, '') + after;
411
408
  }
412
409
  // we don't want common html tags suggested for xml
413
- if (syntax === 'xml' && commonlyUsedTags.some(function (tag) {
414
- return tag.startsWith(abbreviation.toLowerCase());
415
- })) {
410
+ if (syntax === 'xml' && commonlyUsedTags.some(tag => tag.startsWith(abbreviation.toLowerCase()))) {
416
411
  return true;
417
412
  }
418
413
  if (commonlyUsedTags.includes(abbreviation.toLowerCase()) || markupSnippetKeys.includes(abbreviation)) {
@@ -430,7 +425,7 @@ function isExpandedTextNoise(syntax, abbreviation, expandedText, options) {
430
425
  if (abbreviation === '.') {
431
426
  return false;
432
427
  }
433
- var dotMatches = /^([a-z,A-Z,\d]*)\.$/.exec(abbreviation);
428
+ const dotMatches = /^([a-z,A-Z,\d]*)\.$/.exec(abbreviation);
434
429
  if (dotMatches) {
435
430
  // Valid html tags such as `div.`
436
431
  if (dotMatches[1] && htmlData.tags.includes(dotMatches[1])) {
@@ -446,7 +441,7 @@ function isExpandedTextNoise(syntax, abbreviation, expandedText, options) {
446
441
  }
447
442
  // Unresolved html abbreviations get expanded as if it were a tag
448
443
  // Eg: abc -> <abc></abc> which is noise if it gets suggested for every word typed
449
- return expandedText.toLowerCase() === "<".concat(abbreviation.toLowerCase(), ">${1}</").concat(abbreviation.toLowerCase(), ">");
444
+ return expandedText.toLowerCase() === `<${abbreviation.toLowerCase()}>\${1}</${abbreviation.toLowerCase()}>`;
450
445
  }
451
446
  /**
452
447
  * Returns options to be used by emmet
@@ -455,26 +450,20 @@ function getExpandOptions(syntax, emmetConfig, filter) {
455
450
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
456
451
  emmetConfig = emmetConfig !== null && emmetConfig !== void 0 ? emmetConfig : {};
457
452
  emmetConfig['preferences'] = (_a = emmetConfig['preferences']) !== null && _a !== void 0 ? _a : {};
458
- var preferences = emmetConfig['preferences'];
459
- var stylesheetSyntax = isStyleSheet(syntax) ? syntax : 'css';
453
+ const preferences = emmetConfig['preferences'];
454
+ const stylesheetSyntax = isStyleSheet(syntax) ? syntax : 'css';
460
455
  // Fetch Profile
461
- var profile = getProfile(syntax, (_b = emmetConfig['syntaxProfiles']) !== null && _b !== void 0 ? _b : {});
462
- var filtersFromProfile = profile && profile['filters'] ? profile['filters'].split(',') : [];
463
- var trimmedFilters = filtersFromProfile.map(function (filterFromProfile) {
464
- return filterFromProfile.trim();
465
- });
466
- var bemEnabled = filter && filter.split(',').some(function (x) {
467
- return x.trim() === 'bem';
468
- }) || trimmedFilters.includes('bem');
469
- var commentEnabled = filter && filter.split(',').some(function (x) {
470
- return x.trim() === 'c';
471
- }) || trimmedFilters.includes('c');
456
+ const profile = getProfile(syntax, (_b = emmetConfig['syntaxProfiles']) !== null && _b !== void 0 ? _b : {});
457
+ const filtersFromProfile = profile && profile['filters'] ? profile['filters'].split(',') : [];
458
+ const trimmedFilters = filtersFromProfile.map(filterFromProfile => filterFromProfile.trim());
459
+ const bemEnabled = filter && filter.split(',').some(x => x.trim() === 'bem') || trimmedFilters.includes('bem');
460
+ const commentEnabled = filter && filter.split(',').some(x => x.trim() === 'c') || trimmedFilters.includes('c');
472
461
  // Fetch formatters
473
- var formatters = getFormatters(syntax, emmetConfig['preferences']);
474
- var unitAliases = (formatters === null || formatters === void 0 ? void 0 : formatters.stylesheet) && formatters.stylesheet['unitAliases'] || {};
462
+ const formatters = getFormatters(syntax, emmetConfig['preferences']);
463
+ const unitAliases = (formatters === null || formatters === void 0 ? void 0 : formatters.stylesheet) && formatters.stylesheet['unitAliases'] || {};
475
464
  // These options are the default values provided by vscode for
476
465
  // extension preferences
477
- var defaultVSCodeOptions = {
466
+ const defaultVSCodeOptions = {
478
467
  // inlineElements: string[],
479
468
  // 'output.indent': string,
480
469
  // 'output.baseIndent': string,
@@ -520,7 +509,7 @@ function getExpandOptions(syntax, emmetConfig, filter) {
520
509
  'stylesheet.fuzzySearchMinScore': 0.3
521
510
  };
522
511
  // These options come from user prefs in the vscode repo
523
- var userPreferenceOptions = {
512
+ const userPreferenceOptions = {
524
513
  // inlineElements: string[],
525
514
  // 'output.indent': string,
526
515
  // 'output.baseIndent': string,
@@ -551,8 +540,8 @@ function getExpandOptions(syntax, emmetConfig, filter) {
551
540
  // 'stylesheet.keywords': string[],
552
541
  // 'stylesheet.unitless': string[],
553
542
  'stylesheet.shortHex': preferences['css.color.short'],
554
- 'stylesheet.between': preferences["".concat(stylesheetSyntax, ".valueSeparator")],
555
- 'stylesheet.after': preferences["".concat(stylesheetSyntax, ".propertyEnd")],
543
+ 'stylesheet.between': preferences[`${stylesheetSyntax}.valueSeparator`],
544
+ 'stylesheet.after': preferences[`${stylesheetSyntax}.propertyEnd`],
556
545
  'stylesheet.intUnit': preferences['css.intUnit'],
557
546
  'stylesheet.floatUnit': preferences['css.floatUnit'],
558
547
  'stylesheet.unitAliases': unitAliases,
@@ -560,24 +549,24 @@ function getExpandOptions(syntax, emmetConfig, filter) {
560
549
  // 'stylesheet.jsonDoubleQuotes': boolean,
561
550
  'stylesheet.fuzzySearchMinScore': preferences['css.fuzzySearchMinScore']
562
551
  };
563
- var combinedOptions = {};
564
- [].concat(_toConsumableArray(Object.keys(defaultVSCodeOptions)), _toConsumableArray(Object.keys(userPreferenceOptions))).forEach(function (key) {
552
+ const combinedOptions = {};
553
+ [...Object.keys(defaultVSCodeOptions), ...Object.keys(userPreferenceOptions)].forEach(key => {
565
554
  var _a;
566
- var castKey = key;
555
+ const castKey = key;
567
556
  combinedOptions[castKey] = (_a = userPreferenceOptions[castKey]) !== null && _a !== void 0 ? _a : defaultVSCodeOptions[castKey];
568
557
  });
569
- var mergedAliases = Object.assign(Object.assign({}, defaultVSCodeOptions['stylesheet.unitAliases']), userPreferenceOptions['stylesheet.unitAliases']);
558
+ const mergedAliases = Object.assign(Object.assign({}, defaultVSCodeOptions['stylesheet.unitAliases']), userPreferenceOptions['stylesheet.unitAliases']);
570
559
  combinedOptions['stylesheet.unitAliases'] = mergedAliases;
571
- var type = getSyntaxType(syntax);
572
- var variables = getVariables(emmetConfig['variables']);
573
- var baseSyntax = getDefaultSyntax(syntax);
574
- var snippets = type === 'stylesheet' ? (_k = customSnippetsRegistry[syntax]) !== null && _k !== void 0 ? _k : customSnippetsRegistry[baseSyntax] : customSnippetsRegistry[syntax];
560
+ const type = getSyntaxType(syntax);
561
+ const variables = getVariables(emmetConfig['variables']);
562
+ const baseSyntax = getDefaultSyntax(syntax);
563
+ const snippets = type === 'stylesheet' ? (_k = customSnippetsRegistry[syntax]) !== null && _k !== void 0 ? _k : customSnippetsRegistry[baseSyntax] : customSnippetsRegistry[syntax];
575
564
  return {
576
- type: type,
565
+ type,
577
566
  options: combinedOptions,
578
- variables: variables,
579
- snippets: snippets,
580
- syntax: syntax,
567
+ variables,
568
+ snippets,
569
+ syntax,
581
570
  // context: null,
582
571
  text: undefined,
583
572
  maxRepeat: 1000
@@ -607,8 +596,8 @@ function getProfile(syntax, profilesFromSettings) {
607
596
  if (!profilesFromSettings) {
608
597
  profilesFromSettings = {};
609
598
  }
610
- var profilesConfig = Object.assign({}, profilesFromFile, profilesFromSettings);
611
- var options = profilesConfig[syntax];
599
+ const profilesConfig = Object.assign({}, profilesFromFile, profilesFromSettings);
600
+ const options = profilesConfig[syntax];
612
601
  if (!options || typeof options === 'string') {
613
602
  if (options === 'xhtml') {
614
603
  return {
@@ -617,8 +606,8 @@ function getProfile(syntax, profilesFromSettings) {
617
606
  }
618
607
  return {};
619
608
  }
620
- var newOptions = {};
621
- for (var key in options) {
609
+ const newOptions = {};
610
+ for (const key in options) {
622
611
  switch (key) {
623
612
  case 'tag_case':
624
613
  newOptions['tagCase'] = options[key] === 'lower' || options[key] === 'upper' ? options[key] : '';
@@ -666,12 +655,12 @@ function getVariables(variablesFromSettings) {
666
655
  return Object.assign({}, variablesFromFile, variablesFromSettings);
667
656
  }
668
657
  function getFormatters(syntax, preferences) {
669
- if (!preferences || _typeof(preferences) !== 'object') {
658
+ if (!preferences || typeof preferences !== 'object') {
670
659
  return {};
671
660
  }
672
661
  if (!isStyleSheet(syntax)) {
673
- var commentFormatter = {};
674
- for (var key in preferences) {
662
+ const commentFormatter = {};
663
+ for (const key in preferences) {
675
664
  switch (key) {
676
665
  case 'filter.commentAfter':
677
666
  commentFormatter['after'] = preferences[key];
@@ -688,31 +677,31 @@ function getFormatters(syntax, preferences) {
688
677
  comment: commentFormatter
689
678
  };
690
679
  }
691
- var fuzzySearchMinScore = typeof (preferences === null || preferences === void 0 ? void 0 : preferences['css.fuzzySearchMinScore']) === 'number' ? preferences['css.fuzzySearchMinScore'] : 0.3;
680
+ let fuzzySearchMinScore = typeof (preferences === null || preferences === void 0 ? void 0 : preferences['css.fuzzySearchMinScore']) === 'number' ? preferences['css.fuzzySearchMinScore'] : 0.3;
692
681
  if (fuzzySearchMinScore > 1) {
693
682
  fuzzySearchMinScore = 1;
694
683
  } else if (fuzzySearchMinScore < 0) {
695
684
  fuzzySearchMinScore = 0;
696
685
  }
697
- var stylesheetFormatter = {
686
+ const stylesheetFormatter = {
698
687
  'fuzzySearchMinScore': fuzzySearchMinScore
699
688
  };
700
- var _loop = function _loop() {
701
- switch (_key) {
689
+ for (const key in preferences) {
690
+ switch (key) {
702
691
  case 'css.floatUnit':
703
- stylesheetFormatter['floatUnit'] = preferences[_key];
692
+ stylesheetFormatter['floatUnit'] = preferences[key];
704
693
  break;
705
694
  case 'css.intUnit':
706
- stylesheetFormatter['intUnit'] = preferences[_key];
695
+ stylesheetFormatter['intUnit'] = preferences[key];
707
696
  break;
708
697
  case 'css.unitAliases':
709
- var unitAliases = {};
710
- preferences[_key].split(',').forEach(function (alias) {
698
+ const unitAliases = {};
699
+ preferences[key].split(',').forEach(alias => {
711
700
  if (!alias || !alias.trim() || !alias.includes(':')) {
712
701
  return;
713
702
  }
714
- var aliasName = alias.substr(0, alias.indexOf(':'));
715
- var aliasValue = alias.substr(aliasName.length + 1);
703
+ const aliasName = alias.substr(0, alias.indexOf(':'));
704
+ const aliasValue = alias.substr(aliasName.length + 1);
716
705
  if (!aliasName.trim() || !aliasValue) {
717
706
  return;
718
707
  }
@@ -720,16 +709,13 @@ function getFormatters(syntax, preferences) {
720
709
  });
721
710
  stylesheetFormatter['unitAliases'] = unitAliases;
722
711
  break;
723
- case "".concat(syntax, ".valueSeparator"):
724
- stylesheetFormatter['between'] = preferences[_key];
712
+ case `${syntax}.valueSeparator`:
713
+ stylesheetFormatter['between'] = preferences[key];
725
714
  break;
726
- case "".concat(syntax, ".propertyEnd"):
727
- stylesheetFormatter['after'] = preferences[_key];
715
+ case `${syntax}.propertyEnd`:
716
+ stylesheetFormatter['after'] = preferences[key];
728
717
  break;
729
718
  }
730
- };
731
- for (var _key in preferences) {
732
- _loop();
733
719
  }
734
720
  return {
735
721
  stylesheet: stylesheetFormatter
@@ -744,8 +730,7 @@ function getFormatters(syntax, preferences) {
744
730
  * @param language
745
731
  * @param exlcudedLanguages Array of language ids that user has chosen to exlcude for emmet
746
732
  */
747
- function getEmmetMode(language) {
748
- var excludedLanguages = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
733
+ function getEmmetMode(language, excludedLanguages = []) {
749
734
  if (!language || excludedLanguages.includes(language)) {
750
735
  return;
751
736
  }