@elice/material-exercise 1.231212.0 → 1.231228.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/cjs/components/material-exercise/MaterialExercise.i18n.js +2 -4
  2. package/cjs/components/material-exercise/MaterialExercise.js +54 -59
  3. package/cjs/components/material-exercise/MaterialExercise.styled.js +14 -20
  4. package/cjs/components/material-exercise/MaterialExerciseMobile.js +8 -15
  5. package/cjs/components/material-exercise/context/ExerciseIntlProvider.js +14 -18
  6. package/cjs/components/material-exercise/context/ExerciseProvider.js +58 -66
  7. package/cjs/components/material-exercise/context/ExerciseProviderNoImage.js +19 -24
  8. package/cjs/components/material-exercise/context/context.js +1 -7
  9. package/cjs/components/material-exercise/context/locales/noImage.en.json.js +1 -1
  10. package/cjs/components/material-exercise/context/locales/noImage.ko.json.js +1 -1
  11. package/cjs/components/material-exercise/context/recoil.js +293 -544
  12. package/cjs/components/material-exercise/context/recoilTypes.js +0 -2
  13. package/cjs/components/material-exercise/context/subjects.js +3 -5
  14. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +60 -67
  15. package/cjs/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +8 -14
  16. package/cjs/components/material-exercise/exercise-code-history/locales/en.json.js +1 -1
  17. package/cjs/components/material-exercise/exercise-code-history/locales/ko.json.js +1 -1
  18. package/cjs/components/material-exercise/exercise-file/ExerciseFile.js +17 -21
  19. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +133 -203
  20. package/cjs/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +8 -12
  21. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +24 -40
  22. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.js +38 -52
  23. package/cjs/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +5 -9
  24. package/cjs/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.en.json.js +1 -1
  25. package/cjs/components/material-exercise/exercise-file-tabs/locales/fileTreeButton.ko.json.js +1 -1
  26. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +189 -328
  27. package/cjs/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +5 -9
  28. package/cjs/components/material-exercise/exercise-file-tree/locales/en.json.js +1 -1
  29. package/cjs/components/material-exercise/exercise-file-tree/locales/ko.json.js +1 -1
  30. package/cjs/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +14 -17
  31. package/cjs/components/material-exercise/exercise-menu/ExerciseMenu.js +11 -15
  32. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +7 -11
  33. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +44 -65
  34. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +32 -61
  35. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuReset.js +19 -35
  36. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +48 -62
  37. package/cjs/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +12 -18
  38. package/cjs/components/material-exercise/exercise-menu/locales/en.json.js +1 -1
  39. package/cjs/components/material-exercise/exercise-menu/locales/ko.json.js +1 -1
  40. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +21 -32
  41. package/cjs/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +4 -8
  42. package/cjs/components/material-exercise/exercise-preview/ExercisePreview.js +23 -27
  43. package/cjs/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +7 -17
  44. package/cjs/components/material-exercise/exercise-preview/locales/en.json.js +1 -1
  45. package/cjs/components/material-exercise/exercise-preview/locales/ko.json.js +1 -1
  46. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +23 -32
  47. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +7 -15
  48. package/cjs/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +79 -86
  49. package/cjs/components/material-exercise/exercise-rightpane/locales/en.json.js +1 -1
  50. package/cjs/components/material-exercise/exercise-rightpane/locales/ko.json.js +1 -1
  51. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.js +11 -22
  52. package/cjs/components/material-exercise/exercise-room/ExerciseRoom.styled.js +12 -20
  53. package/cjs/components/material-exercise/exercise-room/ExerciseRoomDetail.js +180 -288
  54. package/cjs/components/material-exercise/exercise-room/ExerciseRoomList.js +82 -116
  55. package/cjs/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -4
  56. package/cjs/components/material-exercise/exercise-room/locales/en.json.js +1 -1
  57. package/cjs/components/material-exercise/exercise-room/locales/ko.json.js +1 -1
  58. package/cjs/components/material-exercise/exercise-runner/ExerciseRunner.js +125 -181
  59. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +1 -7
  60. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerController.js +13 -17
  61. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +43 -58
  62. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +15 -27
  63. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +65 -68
  64. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +23 -32
  65. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +58 -92
  66. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +3 -7
  67. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +11 -16
  68. package/cjs/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +18 -29
  69. package/cjs/components/material-exercise/exercise-runner/locales/en.json.js +1 -1
  70. package/cjs/components/material-exercise/exercise-runner/locales/ko.json.js +1 -1
  71. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +162 -282
  72. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +8 -14
  73. package/cjs/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +41 -54
  74. package/cjs/components/material-exercise/exercise-submit-history/locales/en.json.js +1 -1
  75. package/cjs/components/material-exercise/exercise-submit-history/locales/ko.json.js +1 -1
  76. package/cjs/components/shared/exercise-menu-button/ExerciseMenuButton.js +15 -21
  77. package/cjs/components/shared/exercise-shimmer/ExerciseFileShimmer.js +14 -19
  78. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +16 -21
  79. package/cjs/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +5 -10
  80. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +18 -23
  81. package/cjs/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +10 -21
  82. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.js +5 -8
  83. package/cjs/components/shared/exercise-version-list/ExerciseVersionList.styled.js +1 -7
  84. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.js +8 -11
  85. package/cjs/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +5 -15
  86. package/cjs/components/shared/file-icon/FileIcon.js +17 -23
  87. package/cjs/components/shared/file-tabs/FileTab.js +30 -36
  88. package/cjs/components/shared/file-tabs/FileTab.styled.js +15 -25
  89. package/cjs/components/shared/file-tabs/FileTabs.js +38 -63
  90. package/cjs/components/shared/file-tabs/FileTabs.styled.js +2 -8
  91. package/cjs/components/shared/file-tabs/util.js +14 -29
  92. package/cjs/components/shared/file-tree/FileTree.js +12 -17
  93. package/cjs/components/shared/file-tree/FileTreeConfig.js +22 -25
  94. package/cjs/components/shared/file-tree/FileTreeList.js +37 -39
  95. package/cjs/components/shared/file-tree/FileTreeListItemContent.js +61 -75
  96. package/cjs/components/shared/file-tree/FileTreeListItemContent.styled.js +21 -31
  97. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.js +64 -72
  98. package/cjs/components/shared/file-tree/FileTreeListItemContentInput.styled.js +6 -12
  99. package/cjs/components/shared/file-tree/FileTreeListItemContentMenu.js +63 -74
  100. package/cjs/components/shared/file-tree/FileTreeListItems.js +136 -151
  101. package/cjs/components/shared/file-tree/FileTreeListItems.styled.js +2 -8
  102. package/cjs/components/shared/file-tree/FileTreeToolbar.js +31 -32
  103. package/cjs/components/shared/file-tree/FileTreeToolbar.styled.js +1 -7
  104. package/cjs/components/shared/file-tree/context/FileTreeContext.js +76 -97
  105. package/cjs/components/shared/file-tree/locales/en.json.js +1 -1
  106. package/cjs/components/shared/file-tree/locales/ko.json.js +1 -1
  107. package/cjs/components/shared/file-tree/utils/fileTreeFiles.js +20 -26
  108. package/cjs/components/shared/file-tree/utils/fileTreeGenerator.js +146 -195
  109. package/cjs/components/shared/file-tree/utils/fileTreeInput.js +0 -2
  110. package/cjs/components/shared/file-tree/utils/fileTreeItem.js +1 -3
  111. package/cjs/components/shared/file-tree/utils/fileTreePath.js +6 -7
  112. package/cjs/components/shared/file-viewer/FileViewer.js +37 -61
  113. package/cjs/components/shared/file-viewer/FileViewerCsv.js +108 -172
  114. package/cjs/components/shared/file-viewer/FileViewerImage.js +8 -12
  115. package/cjs/components/shared/file-viewer/FileViewerIpynb.js +10 -23
  116. package/cjs/components/shared/file-viewer/FileViewerNonViewable.js +33 -42
  117. package/cjs/components/shared/file-viewer/FileViewerText.js +12 -24
  118. package/cjs/components/shared/file-viewer/locales/en.json.js +1 -1
  119. package/cjs/components/shared/file-viewer/locales/ko.json.js +1 -1
  120. package/cjs/components/shared/file-viewer/locales/nonViewable.en.json.js +1 -1
  121. package/cjs/components/shared/file-viewer/locales/nonViewable.ko.json.js +1 -1
  122. package/cjs/components/shared/material-modal/MaterialModal.js +11 -14
  123. package/cjs/components/shared/material-modal/MaterialModal.styled.js +5 -11
  124. package/cjs/components/shared/monaco-editor/MonacoEditor.js +74 -99
  125. package/cjs/components/shared/monaco-editor/MonacoEditorLazy.js +6 -12
  126. package/cjs/components/shared/monaco-editor/MonacoEditorMobile.js +36 -50
  127. package/cjs/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +91 -110
  128. package/cjs/components/shared/monaco-editor/constants/grammars/JSON.tmLanguage.json.js +1 -1
  129. package/cjs/components/shared/monaco-editor/constants/grammars/MagicPython.tmLanguage.json.js +1 -1
  130. package/cjs/components/shared/monaco-editor/constants/grammars/TypeScriptReact.tmLanguage.json.js +1 -1
  131. package/cjs/components/shared/monaco-editor/constants/grammars/asp-vb-net.tmlanguage.json.js +1 -1
  132. package/cjs/components/shared/monaco-editor/constants/grammars/c.tmLanguage.json.js +1 -1
  133. package/cjs/components/shared/monaco-editor/constants/grammars/cpp.tmLanguage.json.js +1 -1
  134. package/cjs/components/shared/monaco-editor/constants/grammars/csharp.tmLanguage.json.js +1 -1
  135. package/cjs/components/shared/monaco-editor/constants/grammars/css.tmLanguage.json.js +1 -1
  136. package/cjs/components/shared/monaco-editor/constants/grammars/dart.tmLanguage.json.js +1 -1
  137. package/cjs/components/shared/monaco-editor/constants/grammars/fsharp.tmLanguage.json.js +1 -1
  138. package/cjs/components/shared/monaco-editor/constants/grammars/go.tmLanguage.json.js +1 -1
  139. package/cjs/components/shared/monaco-editor/constants/grammars/html.tmLanguage.json.js +1 -1
  140. package/cjs/components/shared/monaco-editor/constants/grammars/index.js +28 -84
  141. package/cjs/components/shared/monaco-editor/constants/grammars/java.tmLanguage.json.js +1 -1
  142. package/cjs/components/shared/monaco-editor/constants/grammars/lua.tmLanguage.json.js +1 -1
  143. package/cjs/components/shared/monaco-editor/constants/grammars/objective-c.tmLanguage.json.js +1 -1
  144. package/cjs/components/shared/monaco-editor/constants/grammars/php.tmLanguage.json.js +1 -1
  145. package/cjs/components/shared/monaco-editor/constants/grammars/r.tmLanguage.json.js +1 -1
  146. package/cjs/components/shared/monaco-editor/constants/grammars/ruby.tmLanguage.json.js +1 -1
  147. package/cjs/components/shared/monaco-editor/constants/grammars/rust.tmLanguage.json.js +1 -1
  148. package/cjs/components/shared/monaco-editor/constants/grammars/scss.tmLanguage.json.js +1 -1
  149. package/cjs/components/shared/monaco-editor/constants/grammars/sql.tmLanguage.json.js +1 -1
  150. package/cjs/components/shared/monaco-editor/constants/grammars/swift.tmLanguage.json.js +1 -1
  151. package/cjs/components/shared/monaco-editor/constants/grammars/xml.tmLanguage.json.js +1 -1
  152. package/cjs/components/shared/monaco-editor/constants/grammars/yaml.tmLanguage.json.js +1 -1
  153. package/cjs/components/shared/monaco-editor/constants/monaco/preferences.js +5 -7
  154. package/cjs/components/shared/monaco-editor/constants/themes/abyss.json.js +1 -1
  155. package/cjs/components/shared/monaco-editor/constants/themes/elice.json.js +1 -1
  156. package/cjs/components/shared/monaco-editor/constants/themes/index.js +17 -51
  157. package/cjs/components/shared/monaco-editor/constants/themes/kimbie-dark.json.js +1 -1
  158. package/cjs/components/shared/monaco-editor/constants/themes/monokai.json.js +1 -1
  159. package/cjs/components/shared/monaco-editor/constants/themes/quietlight.json.js +1 -1
  160. package/cjs/components/shared/monaco-editor/constants/themes/red.json.js +1 -1
  161. package/cjs/components/shared/monaco-editor/constants/themes/solarized-dark.json.js +1 -1
  162. package/cjs/components/shared/monaco-editor/constants/themes/solarized-light.json.js +1 -1
  163. package/cjs/components/shared/monaco-editor/constants/themes/tomorrow-night-blue.json.js +1 -1
  164. package/cjs/components/shared/monaco-editor/constants/themes/vs-dark-plus.json.js +1 -1
  165. package/cjs/components/shared/monaco-editor/constants/themes/vs-dark.json.js +1 -1
  166. package/cjs/components/shared/monaco-editor/constants/themes/vs-hc-black.json.js +1 -1
  167. package/cjs/components/shared/monaco-editor/constants/themes/vs-hc-light.json.js +1 -1
  168. package/cjs/components/shared/monaco-editor/constants/themes/vs-light-plus.json.js +1 -1
  169. package/cjs/components/shared/monaco-editor/constants/themes/vs-light.json.js +1 -1
  170. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +10 -13
  171. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +14 -17
  172. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +8 -11
  173. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +30 -36
  174. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +7 -11
  175. package/cjs/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +6 -8
  176. package/cjs/components/shared/monaco-editor/editor-languages/css/formatter.js +11 -52
  177. package/cjs/components/shared/monaco-editor/editor-languages/css/index.js +7 -8
  178. package/cjs/components/shared/monaco-editor/editor-languages/html/formatter.js +11 -52
  179. package/cjs/components/shared/monaco-editor/editor-languages/html/index.js +5 -6
  180. package/cjs/components/shared/monaco-editor/editor-languages/index.js +4 -4
  181. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -3
  182. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/express.js +1 -1
  183. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/propTypes.js +1 -1
  184. package/cjs/components/shared/monaco-editor/editor-languages/typescript/dts/react.js +1 -1
  185. package/cjs/components/shared/monaco-editor/editor-languages/typescript/formatter.js +11 -56
  186. package/cjs/components/shared/monaco-editor/editor-languages/typescript/index.js +17 -18
  187. package/cjs/components/shared/monaco-editor/hooks/useEditorOptions.js +5 -13
  188. package/cjs/components/shared/monaco-editor/locales/en.json.js +1 -1
  189. package/cjs/components/shared/monaco-editor/locales/ko.json.js +1 -1
  190. package/cjs/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +12 -12
  191. package/cjs/components/shared/monaco-editor/utils/emmet/emmet.js +0 -2
  192. package/cjs/components/shared/monaco-editor/utils/emmet/registerProvider.js +6 -14
  193. package/cjs/components/shared/monaco-editor/utils/grammar/index.js +25 -69
  194. package/cjs/components/shared/monaco-editor/utils/grammar/onigasm.js +6 -27
  195. package/cjs/components/shared/monaco-editor/utils/grammar/textmate.js +38 -73
  196. package/cjs/components/shared/monaco-editor/utils/monacoLanguage.js +8 -11
  197. package/cjs/components/shared/monaco-editor/utils/monacoPreference.js +4 -8
  198. package/cjs/components/shared/monaco-editor/utils/prettier/config.js +2 -4
  199. package/cjs/components/shared/monaco-editor/utils/prettier/index.js +8 -46
  200. package/cjs/components/shared/monaco-editor/utils/theme/convert.js +14 -26
  201. package/cjs/components/shared/monaco-editor/utils/theme/index.js +3 -24
  202. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +56 -79
  203. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +68 -84
  204. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +93 -122
  205. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +133 -158
  206. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +92 -106
  207. package/cjs/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -4
  208. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +6 -3
  209. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -4
  210. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +158 -179
  211. package/cjs/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -5
  212. package/cjs/components/shared/no-vnc/NoVnc.js +57 -86
  213. package/cjs/components/shared/no-vnc/NoVncLazy.js +5 -11
  214. package/cjs/components/shared/preview-container/PreviewContainer.js +11 -15
  215. package/cjs/components/shared/web-browser/WebBrowser.js +37 -53
  216. package/cjs/components/shared/xterm/Xterm.js +58 -81
  217. package/cjs/components/shared/xterm/XtermLazy.js +5 -11
  218. package/cjs/components/shared/xterm/locales/en.json.js +1 -1
  219. package/cjs/components/shared/xterm/locales/ko.json.js +1 -1
  220. package/cjs/components/shared/xterm/utils/index.js +0 -2
  221. package/cjs/constants/arduino.js +10 -12
  222. package/cjs/constants/shortcutKeyMap.js +2 -4
  223. package/cjs/constants/stylesheets.js +5 -9
  224. package/cjs/hooks/useArduino.js +141 -284
  225. package/cjs/hooks/useExerciseFile.js +22 -26
  226. package/cjs/hooks/useExericseShortcut.js +4 -8
  227. package/cjs/hooks/useMaterialExerciseFileUrl.js +33 -57
  228. package/cjs/hooks/useRunnerRoomWebSocket.js +27 -53
  229. package/cjs/hooks/useStdioTextConcator.js +10 -22
  230. package/cjs/hooks/useStdioWebSocket.js +28 -34
  231. package/cjs/hooks/useUsercodeEditWebSocket.js +158 -240
  232. package/cjs/hooks/useUsercodeHistory.js +63 -117
  233. package/cjs/index.js +4 -6
  234. package/cjs/utils/arduino.js +11 -25
  235. package/cjs/utils/exerciseFile.js +10 -10
  236. package/cjs/utils/runner.js +15 -31
  237. package/es/components/material-exercise/MaterialExercise.i18n.js +2 -2
  238. package/es/components/material-exercise/MaterialExercise.js +34 -35
  239. package/es/components/material-exercise/MaterialExercise.styled.js +14 -14
  240. package/es/components/material-exercise/MaterialExerciseMobile.js +6 -9
  241. package/es/components/material-exercise/context/ExerciseIntlProvider.js +10 -8
  242. package/es/components/material-exercise/context/ExerciseProvider.js +52 -55
  243. package/es/components/material-exercise/context/ExerciseProviderNoImage.js +10 -10
  244. package/es/components/material-exercise/context/context.js +1 -1
  245. package/es/components/material-exercise/context/recoil.js +290 -535
  246. package/es/components/material-exercise/context/subjects.js +3 -3
  247. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.js +51 -53
  248. package/es/components/material-exercise/exercise-code-history/ExerciseCodeHistory.styled.js +8 -8
  249. package/es/components/material-exercise/exercise-file/ExerciseFile.js +9 -8
  250. package/es/components/material-exercise/exercise-file-editor/ExerciseFileEditor.js +127 -193
  251. package/es/components/material-exercise/exercise-file-editor/ExerciseFileReadOnlyBanner.js +5 -4
  252. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabs.js +20 -31
  253. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsFileTreeButton.js +35 -44
  254. package/es/components/material-exercise/exercise-file-tabs/ExerciseFileTabsLazy.js +1 -1
  255. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTree.js +181 -315
  256. package/es/components/material-exercise/exercise-file-tree/ExerciseFileTreeLazy.js +1 -1
  257. package/es/components/material-exercise/exercise-file-viewer/ExerciseFileViewer.js +11 -10
  258. package/es/components/material-exercise/exercise-menu/ExerciseMenu.js +7 -6
  259. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoAgentModalButton.js +3 -3
  260. package/es/components/material-exercise/exercise-menu/ExerciseMenuArduinoSettings.js +25 -42
  261. package/es/components/material-exercise/exercise-menu/ExerciseMenuDropdown.js +26 -51
  262. package/es/components/material-exercise/exercise-menu/ExerciseMenuReset.js +11 -23
  263. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.js +21 -31
  264. package/es/components/material-exercise/exercise-menu/ExerciseMenuStdioFileBrowser.styled.js +12 -12
  265. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdown.js +19 -26
  266. package/es/components/material-exercise/exercise-multilang-dropdown/ExerciseMultilangDropdownLazy.js +1 -1
  267. package/es/components/material-exercise/exercise-preview/ExercisePreview.js +15 -14
  268. package/es/components/material-exercise/exercise-preview/ExercisePreviewDisplayModeButton.js +5 -11
  269. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpane.js +11 -15
  270. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEditorPerference.js +5 -9
  271. package/es/components/material-exercise/exercise-rightpane/ExerciseRightpaneEnvironment.js +78 -80
  272. package/es/components/material-exercise/exercise-room/ExerciseRoom.js +6 -13
  273. package/es/components/material-exercise/exercise-room/ExerciseRoom.styled.js +12 -14
  274. package/es/components/material-exercise/exercise-room/ExerciseRoomDetail.js +134 -236
  275. package/es/components/material-exercise/exercise-room/ExerciseRoomList.js +65 -94
  276. package/es/components/material-exercise/exercise-room/helpers/exerciseRoomPermissionStringConvertor.js +2 -2
  277. package/es/components/material-exercise/exercise-runner/ExerciseRunner.js +116 -167
  278. package/es/components/material-exercise/exercise-runner/ExerciseRunnerContext.js +1 -1
  279. package/es/components/material-exercise/exercise-runner/ExerciseRunnerController.js +8 -7
  280. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoAgentModal.js +17 -27
  281. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerArduinoStatusMessage.js +11 -18
  282. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerButtonGroup.js +52 -50
  283. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerCodeHelpRequestButton.js +10 -14
  284. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerRunningInfo.js +46 -75
  285. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusIndicator.js +2 -2
  286. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerStatusMessage.js +4 -4
  287. package/es/components/material-exercise/exercise-runner/ExerciseRunnerControllerTimer.js +15 -21
  288. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.js +138 -253
  289. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistory.styled.js +8 -8
  290. package/es/components/material-exercise/exercise-submit-history/ExerciseSubmitHistoryOutput.js +29 -37
  291. package/es/components/shared/exercise-menu-button/ExerciseMenuButton.js +12 -13
  292. package/es/components/shared/exercise-shimmer/ExerciseFileShimmer.js +2 -2
  293. package/es/components/shared/exercise-shimmer/ExerciseFileTabShimmer.js +12 -12
  294. package/es/components/shared/exercise-shimmer/ExerciseFileTabsShimmer.js +2 -2
  295. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListItemShimmer.js +14 -14
  296. package/es/components/shared/exercise-shimmer/ExerciseFileTreeListShimmer.js +9 -15
  297. package/es/components/shared/exercise-version-list/ExerciseVersionList.js +3 -2
  298. package/es/components/shared/exercise-version-list/ExerciseVersionList.styled.js +1 -1
  299. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.js +6 -5
  300. package/es/components/shared/exercise-version-list/ExerciseVersionListItem.styled.js +5 -9
  301. package/es/components/shared/file-icon/FileIcon.js +15 -17
  302. package/es/components/shared/file-tabs/FileTab.js +22 -24
  303. package/es/components/shared/file-tabs/FileTab.styled.js +15 -19
  304. package/es/components/shared/file-tabs/FileTabs.js +35 -55
  305. package/es/components/shared/file-tabs/FileTabs.styled.js +2 -2
  306. package/es/components/shared/file-tabs/util.js +14 -27
  307. package/es/components/shared/file-tree/FileTree.js +3 -3
  308. package/es/components/shared/file-tree/FileTreeConfig.js +18 -15
  309. package/es/components/shared/file-tree/FileTreeList.js +33 -29
  310. package/es/components/shared/file-tree/FileTreeListItemContent.js +45 -55
  311. package/es/components/shared/file-tree/FileTreeListItemContent.styled.js +21 -25
  312. package/es/components/shared/file-tree/FileTreeListItemContentInput.js +60 -64
  313. package/es/components/shared/file-tree/FileTreeListItemContentInput.styled.js +6 -6
  314. package/es/components/shared/file-tree/FileTreeListItemContentMenu.js +39 -46
  315. package/es/components/shared/file-tree/FileTreeListItems.js +134 -145
  316. package/es/components/shared/file-tree/FileTreeListItems.styled.js +2 -2
  317. package/es/components/shared/file-tree/FileTreeToolbar.js +25 -22
  318. package/es/components/shared/file-tree/FileTreeToolbar.styled.js +1 -1
  319. package/es/components/shared/file-tree/context/FileTreeContext.js +74 -89
  320. package/es/components/shared/file-tree/utils/fileTreeFiles.js +20 -20
  321. package/es/components/shared/file-tree/utils/fileTreeGenerator.js +146 -193
  322. package/es/components/shared/file-tree/utils/fileTreeItem.js +1 -1
  323. package/es/components/shared/file-tree/utils/fileTreePath.js +6 -5
  324. package/es/components/shared/file-viewer/FileViewer.js +21 -38
  325. package/es/components/shared/file-viewer/FileViewerCsv.js +70 -129
  326. package/es/components/shared/file-viewer/FileViewerImage.js +4 -3
  327. package/es/components/shared/file-viewer/FileViewerIpynb.js +7 -14
  328. package/es/components/shared/file-viewer/FileViewerNonViewable.js +15 -18
  329. package/es/components/shared/file-viewer/FileViewerText.js +9 -17
  330. package/es/components/shared/material-modal/MaterialModal.js +8 -7
  331. package/es/components/shared/material-modal/MaterialModal.styled.js +5 -5
  332. package/es/components/shared/monaco-editor/MonacoEditor.js +67 -87
  333. package/es/components/shared/monaco-editor/MonacoEditorLazy.js +2 -4
  334. package/es/components/shared/monaco-editor/MonacoEditorMobile.js +31 -41
  335. package/es/components/shared/monaco-editor/MonacoEditorPerferenceForm.js +52 -66
  336. package/es/components/shared/monaco-editor/constants/grammars/index.js +28 -82
  337. package/es/components/shared/monaco-editor/constants/monaco/preferences.js +5 -5
  338. package/es/components/shared/monaco-editor/constants/themes/index.js +17 -49
  339. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventChange.js +10 -11
  340. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventCursor.js +14 -15
  341. package/es/components/shared/monaco-editor/editor-hooks/useMonacoEventScroll.js +8 -9
  342. package/es/components/shared/monaco-editor/editor-hooks/useMonacoMarkers.js +30 -34
  343. package/es/components/shared/monaco-editor/editor-hooks/useMonacoOptions.js +7 -9
  344. package/es/components/shared/monaco-editor/editor-hooks/useMonacoTheme.js +6 -6
  345. package/es/components/shared/monaco-editor/editor-languages/css/formatter.js +10 -33
  346. package/es/components/shared/monaco-editor/editor-languages/html/formatter.js +10 -33
  347. package/es/components/shared/monaco-editor/editor-languages/typescript/dts/_helper.js +1 -1
  348. package/es/components/shared/monaco-editor/editor-languages/typescript/formatter.js +10 -37
  349. package/es/components/shared/monaco-editor/editor-languages/typescript/index.js +3 -3
  350. package/es/components/shared/monaco-editor/hooks/useEditorOptions.js +5 -11
  351. package/es/components/shared/monaco-editor/utils/emmet/abbreviationActions.js +12 -10
  352. package/es/components/shared/monaco-editor/utils/emmet/registerProvider.js +6 -12
  353. package/es/components/shared/monaco-editor/utils/grammar/index.js +24 -68
  354. package/es/components/shared/monaco-editor/utils/grammar/onigasm.js +6 -25
  355. package/es/components/shared/monaco-editor/utils/grammar/textmate.js +35 -67
  356. package/es/components/shared/monaco-editor/utils/monacoLanguage.js +5 -5
  357. package/es/components/shared/monaco-editor/utils/monacoPreference.js +4 -6
  358. package/es/components/shared/monaco-editor/utils/prettier/config.js +2 -2
  359. package/es/components/shared/monaco-editor/utils/prettier/index.js +7 -27
  360. package/es/components/shared/monaco-editor/utils/theme/convert.js +13 -19
  361. package/es/components/shared/monaco-editor/utils/theme/index.js +3 -22
  362. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursor.js +56 -77
  363. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorManager.js +68 -82
  364. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteCursorWidget.js +93 -120
  365. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelection.js +130 -152
  366. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/RemoteSelectionManager.js +92 -104
  367. package/es/components/shared/monaco-editor/vendors/monaco-collab-ext/styles.js +2 -2
  368. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/configCompat.js +6 -1
  369. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/data.js +2 -2
  370. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/emmetHelper.js +157 -172
  371. package/es/components/shared/monaco-editor/vendors/vscode-emmet-helper/utils.js +3 -3
  372. package/es/components/shared/no-vnc/NoVnc.js +42 -59
  373. package/es/components/shared/no-vnc/NoVncLazy.js +2 -4
  374. package/es/components/shared/preview-container/PreviewContainer.js +8 -7
  375. package/es/components/shared/web-browser/WebBrowser.js +29 -40
  376. package/es/components/shared/xterm/Xterm.js +51 -69
  377. package/es/components/shared/xterm/XtermLazy.js +2 -4
  378. package/es/constants/arduino.js +10 -10
  379. package/es/constants/shortcutKeyMap.js +1 -3
  380. package/es/constants/stylesheets.js +5 -7
  381. package/es/hooks/useArduino.js +141 -278
  382. package/es/hooks/useExerciseFile.js +22 -24
  383. package/es/hooks/useExericseShortcut.js +4 -6
  384. package/es/hooks/useMaterialExerciseFileUrl.js +34 -52
  385. package/es/hooks/useRunnerRoomWebSocket.js +27 -51
  386. package/es/hooks/useStdioTextConcator.js +10 -16
  387. package/es/hooks/useStdioWebSocket.js +28 -32
  388. package/es/hooks/useUsercodeEditWebSocket.js +157 -232
  389. package/es/hooks/useUsercodeHistory.js +63 -115
  390. package/es/utils/arduino.js +11 -23
  391. package/es/utils/exerciseFile.js +10 -8
  392. package/es/utils/runner.js +15 -29
  393. package/package.json +11 -7
  394. package/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -521
  395. package/es/_virtual/_rollupPluginBabelHelpers.js +0 -499
@@ -12,4 +12,4 @@ var react = _helper.dts({
12
12
  content: "/// <reference path=\"global.d.ts\" />\nimport*as CSS from'csstype';import*as PropTypes from'prop-types';import{Interaction as SchedulerInteraction}from'scheduler/tracing';type NativeAnimationEvent=AnimationEvent;type NativeClipboardEvent=ClipboardEvent;type NativeCompositionEvent=CompositionEvent;type NativeDragEvent=DragEvent;type NativeFocusEvent=FocusEvent;type NativeKeyboardEvent=KeyboardEvent;type NativeMouseEvent=MouseEvent;type NativeTouchEvent=TouchEvent;type NativePointerEvent=PointerEvent;type NativeTransitionEvent=TransitionEvent;type NativeUIEvent=UIEvent;type NativeWheelEvent=WheelEvent;type Booleanish=boolean|'true'|'false';declare const UNDEFINED_VOID_ONLY:unique symbol;type Destructor=()=>void|{[UNDEFINED_VOID_ONLY]:never};export=React;export as namespace React;declare namespace React{type ElementType<P=any>={[K in keyof JSX.IntrinsicElements]:P extends JSX.IntrinsicElements[K]?K:never}[keyof JSX.IntrinsicElements]|\nComponentType<P>;type ReactType<P=any>=ElementType<P>;type ComponentType<P={}>=ComponentClass<P>|FunctionComponent<P>;type JSXElementConstructor<P>=|((props:P)=>ReactElement<any,any>|null)|(new(props:P)=>Component<P,any>);interface RefObject<T>{readonly current:T|null;}type RefCallback<T>={bivarianceHack(instance:T|null):void}[\"bivarianceHack\"];type Ref<T>=RefCallback<T>|RefObject<T>|null;type LegacyRef<T>=string|Ref<T>;type ElementRef<\nC extends|ForwardRefExoticComponent<any>|{new(props:any):Component<any>}|((props:any,context?:any)=>ReactElement|null)|keyof JSX.IntrinsicElements>=\"ref\"extends keyof ComponentPropsWithRef<C>?NonNullable<ComponentPropsWithRef<C>[\"ref\"]>extends Ref<infer Instance>?Instance:never:never;type ComponentState=any;type Key=string|number;interface Attributes{key?:Key|null;}interface RefAttributes<T>extends Attributes{ref?:Ref<T>;}interface ClassAttributes<T>extends Attributes{ref?:LegacyRef<T>;}interface ReactElement<P=any,Textends string|JSXElementConstructor<any>=string|JSXElementConstructor<any>>{type:T;props:P;key:Key|null;}interface ReactComponentElement<\nT extends keyof JSX.IntrinsicElements|JSXElementConstructor<any>,P=Pick<ComponentProps<T>,Exclude<keyof ComponentProps<T>,'key'|'ref'>>>extends ReactElement<P,Exclude<T,number>>{}type SFCElement<P>=FunctionComponentElement<P>;interface FunctionComponentElement<P>extends ReactElement<P,FunctionComponent<P>>{ref?:'ref'extends keyof P?P extends{ref?:infer R}?R:never:never;}type CElement<P,T extends Component<P,ComponentState>>=ComponentElement<P,T>;interface ComponentElement<P,T extends Component<P,ComponentState>>extends ReactElement<P,ComponentClass<P>>{ref?:LegacyRef<T>;}type ClassicElement<P>=CElement<P,ClassicComponent<P,ComponentState>>;interface DOMElement<P extends HTMLAttributes<T>|SVGAttributes<T>,T extendsElement>extends ReactElement<P,string>{ref:LegacyRef<T>;}interface ReactHTMLElement<T extends HTMLElement>extends DetailedReactHTMLElement<AllHTMLAttributes<T>,T>{}interface DetailedReactHTMLElement<P extends HTMLAttributes<T>,T extends HTMLElement>extends DOMElement<P,T>{type:keyof ReactHTML;}interface ReactSVGElement extends DOMElement<SVGAttributes<SVGElement>,SVGElement>{type:keyof ReactSVG;}interface ReactPortal extends ReactElement{key:Key|null;children:ReactNode;}typeFactory<P>=(props?:Attributes&P,...children:ReactNode[])=>ReactElement<P>;type SFCFactory<P>=FunctionComponentFactory<P>;type FunctionComponentFactory<P>=(props?:Attributes&P,...children:ReactNode[])=>FunctionComponentElement<P>;type ComponentFactory<P,T extends Component<P,ComponentState>>=(props?:ClassAttributes<T>&P,...children:ReactNode[])=>CElement<P,T>;type CFactory<P,T extends Component<P,ComponentState>>=ComponentFactory<P,T>;type ClassicFactory<P>=CFactory<P,ClassicComponent<P,ComponentState>>;type DOMFactory<P extends DOMAttributes<T>,T extends Element>=(props?:ClassAttributes<T>&P|null,...children:ReactNode[])=>DOMElement<P,T>;interface HTMLFactory<T extends HTMLElement>extends DetailedHTMLFactory<AllHTMLAttributes<T>,T>{}interface DetailedHTMLFactory<P extends HTMLAttributes<T>,T extends HTMLElement>extends DOMFactory<P,T>{(props?:ClassAttributes<T>&P|null,...children:ReactNode[]):DetailedReactHTMLElement<P,T>;}interface SVGFactory extends DOMFactory<SVGAttributes<SVGElement>,SVGElement>{(props?:ClassAttributes<SVGElement>&SVGAttributes<SVGElement>|null,...children:ReactNode[]):ReactSVGElement;}type ReactText=string|number;type ReactChild=ReactElement|ReactText;interface ReactNodeArray extends Array<ReactNode>{}typeReactFragment={}|ReactNodeArray;type ReactNode=ReactChild|ReactFragment|ReactPortal|boolean|null|undefined;function createFactory<T extends HTMLElement>(type:keyof ReactHTML):HTMLFactory<T>;function createFactory(type:keyof ReactSVG):SVGFactory;function createFactory<P extends DOMAttributes<T>,T extends Element>(type:string):DOMFactory<P,T>;function createFactory<P>(type:FunctionComponent<P>):FunctionComponentFactory<P>;function createFactory<P>(type:ClassType<P,ClassicComponent<P,ComponentState>,ClassicComponentClass<P>>):CFactory<P,ClassicComponent<P,ComponentState>>;function createFactory<P,T extends Component<P,ComponentState>,C extends ComponentClass<P>>(type:ClassType<P,T,C>):CFactory<P,T>;function createFactory<P>(type:ComponentClass<P>):Factory<P>;function createElement(type:\"input\",props?:InputHTMLAttributes<HTMLInputElement>&ClassAttributes<HTMLInputElement>|null,...children:ReactNode[]):DetailedReactHTMLElement<InputHTMLAttributes<HTMLInputElement>,HTMLInputElement>;function createElement<P extends HTMLAttributes<T>,T extends HTMLElement>(type:keyof ReactHTML,props?:ClassAttributes<T>&P|null,...children:ReactNode[]):DetailedReactHTMLElement<P,T>;function createElement<P extends SVGAttributes<T>,T extends SVGElement>(type:keyof ReactSVG,props?:ClassAttributes<T>&P|null,...children:ReactNode[]):ReactSVGElement;function createElement<P extends DOMAttributes<T>,T extends Element>(type:string,props?:ClassAttributes<T>&P|null,...children:ReactNode[]):DOMElement<P,T>;function createElement<P extends{}>(type:FunctionComponent<P>,props?:Attributes&P|null,...children:ReactNode[]):FunctionComponentElement<P>;function createElement<P extends{}>(type:ClassType<P,ClassicComponent<P,ComponentState>,ClassicComponentClass<P>>,props?:ClassAttributes<ClassicComponent<P,ComponentState>>&P|null,...children:ReactNode[]):CElement<P,ClassicComponent<P,ComponentState>>;function createElement<P extends{},T extends Component<P,ComponentState>,C extends ComponentClass<P>>(type:ClassType<P,T,C>,props?:ClassAttributes<T>&P|null,...children:ReactNode[]):CElement<P,T>;function createElement<P extends{}>(type:FunctionComponent<P>|ComponentClass<P>|string,props?:Attributes&P|null,...children:ReactNode[]):ReactElement<P>;function cloneElement<P extends HTMLAttributes<T>,T extends HTMLElement>(element:DetailedReactHTMLElement<P,T>,props?:P,...children:ReactNode[]):DetailedReactHTMLElement<P,T>;function cloneElement<P extends HTMLAttributes<T>,T extends HTMLElement>(element:ReactHTMLElement<T>,props?:P,...children:ReactNode[]):ReactHTMLElement<T>;function cloneElement<P extends SVGAttributes<T>,T extends SVGElement>(element:ReactSVGElement,props?:P,...children:ReactNode[]):ReactSVGElement;function cloneElement<P extends DOMAttributes<T>,T extends Element>(element:DOMElement<P,T>,props?:DOMAttributes<T>&P,...children:ReactNode[]):DOMElement<P,T>;function cloneElement<P>(element:FunctionComponentElement<P>,props?:Partial<P>&Attributes,...children:ReactNode[]):FunctionComponentElement<P>;function cloneElement<P,T extends Component<P,ComponentState>>(element:CElement<P,T>,props?:Partial<P>&ClassAttributes<T>,...children:ReactNode[]):CElement<P,T>;function cloneElement<P>(element:ReactElement<P>,props?:Partial<P>&Attributes,...children:ReactNode[]):ReactElement<P>;interface ProviderProps<T>{value:T;children?:ReactNode;}interface ConsumerProps<T>{children:(value:T)=>ReactNode;}interface ExoticComponent<P={}>{(props:P):(ReactElement|null);readonly $$typeof:symbol;}interface NamedExoticComponent<P={}>extends ExoticComponent<P>{displayName?:string;}interface ProviderExoticComponent<P>extends ExoticComponent<P>{propTypes?:WeakValidationMap<P>;}type ContextType<C extends Context<any>>=C extends Context<infer T>?T:never;type Provider<T>=ProviderExoticComponent<ProviderProps<T>>;type Consumer<T>=ExoticComponent<ConsumerProps<T>>;interface Context<T>{Provider:Provider<T>;Consumer:Consumer<T>;displayName?:string;}function createContext<T>(defaultValue:T,):Context<T>;function isValidElement<P>(object:{}|null|undefined):object is ReactElement<P>;const Children:ReactChildren;const Fragment:ExoticComponent<{children?:ReactNode}>;const StrictMode:ExoticComponent<{children?:ReactNode}>;interface SuspenseProps{children?:ReactNode;fallback:NonNullable<ReactNode>|null;}const Suspense:ExoticComponent<SuspenseProps>;const version:string;type ProfilerOnRenderCallback=(id:string,phase:\"mount\"|\"update\",actualDuration:number,baseDuration:number,startTime:number,commitTime:number,interactions:Set<SchedulerInteraction>,)=>void;interface ProfilerProps{children?:ReactNode;id:string;onRender:ProfilerOnRenderCallback;}const Profiler:ExoticComponent<ProfilerProps>;type ReactInstance=Component<any>|Element;interface Component<P={},S={},SS=any>extends ComponentLifecycle<P,S,SS>{}class Component<P,S>{static contextType?:Context<any>;context:any;constructor(props:Readonly<P>|P);constructor(props:P,context:any);setState<K extends keyof S>(state:((prevState:Readonly<S>,props:Readonly<P>)=>(Pick<S,K>|S|null))|(Pick<S,K>|S|null),callback?:()=>void):void;forceUpdate(callback?:()=>void):void;render():ReactNode;readonly props:Readonly<P>&Readonly<{children?:ReactNode}>;state:Readonly<S>;refs:{[key:string]:ReactInstance};}class PureComponent<P={},S={},SS=any>extends Component<P,S,SS>{}interface ClassicComponent<P={},S={}>extends Component<P,S>{replaceState(nextState:S,callback?:()=>void):void;isMounted():boolean;getInitialState?():S;}interface ChildContextProvider<CC>{getChildContext():CC;}type SFC<P={}>=FunctionComponent<P>;type StatelessComponent<P={}>=FunctionComponent<P>;type FC<P={}>=FunctionComponent<P>;interface FunctionComponent<P={}>{(props:PropsWithChildren<P>,context?:any):ReactElement<any,any>|null;propTypes?:WeakValidationMap<P>;contextTypes?:ValidationMap<any>;defaultProps?:Partial<P>;displayName?:string;}type VFC<P={}>=VoidFunctionComponent<P>;interface VoidFunctionComponent<P={}>{(props:P,context?:any):ReactElement<any,any>|null;propTypes?:WeakValidationMap<P>;contextTypes?:ValidationMap<any>;defaultProps?:Partial<P>;displayName?:string;}type ForwardedRef<T>=((instance:T|null)=>void)|MutableRefObject<T|null>|null;interface ForwardRefRenderFunction<T,P={}>{(props:PropsWithChildren<P>,ref:ForwardedRef<T>):ReactElement|null;displayName?:string;defaultProps?:never;propTypes?:never;}interface RefForwardingComponent<T,P={}>extends ForwardRefRenderFunction<T,P>{}interface ComponentClass<P={},S=ComponentState>extends StaticLifecycle<P,S>{new(props:P,context?:any):Component<P,S>;propTypes?:WeakValidationMap<P>;contextType?:Context<any>;contextTypes?:ValidationMap<any>;childContextTypes?:ValidationMap<any>;defaultProps?:Partial<P>;displayName?:string;}interface ClassicComponentClass<P={}>extends ComponentClass<P>{new(props:P,context?:any):ClassicComponent<P,ComponentState>;getDefaultProps?():P;}type ClassType<P,T extends Component<P,ComponentState>,C extends ComponentClass<P>>=\nC&(new(props:P,context?:any)=>T);interface ComponentLifecycle<P,S,SS=any>extends NewLifecycle<P,S,SS>,DeprecatedLifecycle<P,S>{componentDidMount?():void;shouldComponentUpdate?(nextProps:Readonly<P>,nextState:Readonly<S>,nextContext:any):boolean;componentWillUnmount?():void;componentDidCatch?(error:Error,errorInfo:ErrorInfo):void;}interface StaticLifecycle<P,S>{getDerivedStateFromProps?:GetDerivedStateFromProps<P,S>;getDerivedStateFromError?:GetDerivedStateFromError<P,S>;}type GetDerivedStateFromProps<P,S>=(nextProps:Readonly<P>,prevState:S)=>Partial<S>|null;type GetDerivedStateFromError<P,S>=(error:any)=>Partial<S>|null;interface NewLifecycle<P,S,SS>{getSnapshotBeforeUpdate?(prevProps:Readonly<P>,prevState:Readonly<S>):SS|null;componentDidUpdate?(prevProps:Readonly<P>,prevState:Readonly<S>,snapshot?:SS):void;}interface DeprecatedLifecycle<P,S>{componentWillMount?():void;UNSAFE_componentWillMount?():void;componentWillReceiveProps?(nextProps:Readonly<P>,nextContext:any):void;UNSAFE_componentWillReceiveProps?(nextProps:Readonly<P>,nextContext:any):void;componentWillUpdate?(nextProps:Readonly<P>,nextState:Readonly<S>,nextContext:any):void;UNSAFE_componentWillUpdate?(nextProps:Readonly<P>,nextState:Readonly<S>,nextContext:any):void;}interface Mixin<P,S>extends ComponentLifecycle<P,S>{mixins?:Array<Mixin<P,S>>;statics?:{[key:string]:any;};displayName?:string;propTypes?:ValidationMap<any>;contextTypes?:ValidationMap<any>;childContextTypes?:ValidationMap<any>;getDefaultProps?():P;getInitialState?():S;}interface ComponentSpec<P,S>extends Mixin<P,S>{render():ReactNode;[propertyName:string]:any;}function createRef<T>():RefObject<T>;interface ForwardRefExoticComponent<P>extends NamedExoticComponent<P>{defaultProps?:Partial<P>;propTypes?:WeakValidationMap<P>;}function forwardRef<T,P={}>(render:ForwardRefRenderFunction<T,P>):ForwardRefExoticComponent<PropsWithoutRef<P>&RefAttributes<T>>;type PropsWithoutRef<P>='ref'extends keyof P?Pick<P,Exclude<keyof P,'ref'>>:P;type PropsWithRef<P>='ref'extends keyof P?P extends{ref?:infer R}?string extends R?PropsWithoutRef<P>&{ref?:Exclude<R,string>}:P:P:P;type PropsWithChildren<P>=P&{children?:ReactNode};type ComponentProps<T extends keyof JSX.IntrinsicElements|JSXElementConstructor<any>>=\nT extends JSXElementConstructor<infer P>?P:T extends keyof JSX.IntrinsicElements?JSX.IntrinsicElements[T]:{};type ComponentPropsWithRef<T extends ElementType>=\nT extends ComponentClass<infer P>?PropsWithoutRef<P>&RefAttributes<InstanceType<T>>:PropsWithRef<ComponentProps<T>>;type ComponentPropsWithoutRef<T extends ElementType>=\nPropsWithoutRef<ComponentProps<T>>;type MemoExoticComponent<T extends ComponentType<any>>=NamedExoticComponent<ComponentPropsWithRef<T>>&{readonly type:T;};function memo<P extends object>(Component:SFC<P>,propsAreEqual?:(prevProps:Readonly<PropsWithChildren<P>>,nextProps:Readonly<PropsWithChildren<P>>)=>boolean):NamedExoticComponent<P>;function memo<T extends ComponentType<any>>(Component:T,propsAreEqual?:(prevProps:Readonly<ComponentProps<T>>,nextProps:Readonly<ComponentProps<T>>)=>boolean):MemoExoticComponent<T>;type LazyExoticComponent<T extends ComponentType<any>>=ExoticComponent<ComponentPropsWithRef<T>>&{readonly _result:T;};function lazy<T extends ComponentType<any>>(factory:()=>Promise<{default:T}>):LazyExoticComponent<T>;type SetStateAction<S>=S|((prevState:S)=>S);type Dispatch<A>=(value:A)=>void;type DispatchWithoutAction=()=>void;type Reducer<S,A>=(prevState:S,action:A)=>S;type ReducerWithoutAction<S>=(prevState:S)=>S;type ReducerState<R extends Reducer<any,any>>=R extends Reducer<infer S,any>?S:never;type ReducerAction<R extends Reducer<any,any>>=R extends Reducer<any,infer A>?A:never;type ReducerStateWithoutAction<R extends ReducerWithoutAction<any>>=\nR extends ReducerWithoutAction<infer S>?S:never;type DependencyList=ReadonlyArray<any>;type EffectCallback=()=>(void|Destructor);interface MutableRefObject<T>{current:T;}function useContext<T>(context:Context<T>):T;functionuseState<S>(initialState:S|(()=>S)):[S,Dispatch<SetStateAction<S>>];function useState<S=undefined>():[S|undefined,Dispatch<SetStateAction<S|undefined>>];function useReducer<R extends ReducerWithoutAction<any>,I>(reducer:R,initializerArg:I,initializer:(arg:I)=>ReducerStateWithoutAction<R>):[ReducerStateWithoutAction<R>,DispatchWithoutAction];function useReducer<R extends ReducerWithoutAction<any>>(reducer:R,initializerArg:ReducerStateWithoutAction<R>,initializer?:undefined):[ReducerStateWithoutAction<R>,DispatchWithoutAction];function useReducer<R extends Reducer<any,any>,I>(reducer:R,initializerArg:I&ReducerState<R>,initializer:(arg:I&ReducerState<R>)=>ReducerState<R>):[ReducerState<R>,Dispatch<ReducerAction<R>>];function useReducer<R extends Reducer<any,any>,I>(reducer:R,initializerArg:I,initializer:(arg:I)=>ReducerState<R>):[ReducerState<R>,Dispatch<ReducerAction<R>>];function useReducer<R extends Reducer<any,any>>(reducer:R,initialState:ReducerState<R>,initializer?:undefined):[ReducerState<R>,Dispatch<ReducerAction<R>>];function useRef<T>(initialValue:T):MutableRefObject<T>;function useRef<T>(initialValue:T|null):RefObject<T>;function useRef<T=undefined>():MutableRefObject<T|undefined>;function useLayoutEffect(effect:EffectCallback,deps?:DependencyList):void;function useEffect(effect:EffectCallback,deps?:DependencyList):void;function useImperativeHandle<T,R extends T>(ref:Ref<T>|undefined,init:()=>R,deps?:DependencyList):void;function useCallback<T extends(...args:any[])=>any>(callback:T,deps:DependencyList):T;function useMemo<T>(factory:()=>T,deps:DependencyList|undefined):T;function useDebugValue<T>(value:T,format?:(value:T)=>any):void;interface BaseSyntheticEvent<E=object,C=any,T=any>{nativeEvent:E;currentTarget:C;target:T;bubbles:boolean;cancelable:boolean;defaultPrevented:boolean;eventPhase:number;isTrusted:boolean;preventDefault():void;isDefaultPrevented():boolean;stopPropagation():void;isPropagationStopped():boolean;persist():void;timeStamp:number;type:string;}interface SyntheticEvent<T=Element,E=Event>extends BaseSyntheticEvent<E,EventTarget&T,EventTarget>{}interface ClipboardEvent<T=Element>extends SyntheticEvent<T,NativeClipboardEvent>{clipboardData:DataTransfer;}interface CompositionEvent<T=Element>extends SyntheticEvent<T,NativeCompositionEvent>{data:string;}interface DragEvent<T=Element>extends MouseEvent<T,NativeDragEvent>{dataTransfer:DataTransfer;}interface PointerEvent<T=Element>extends MouseEvent<T,NativePointerEvent>{pointerId:number;pressure:number;tangentialPressure:number;tiltX:number;tiltY:number;twist:number;width:number;height:number;pointerType:'mouse'|'pen'|'touch';isPrimary:boolean;}interface FocusEvent<T=Element>extends SyntheticEvent<T,NativeFocusEvent>{relatedTarget:EventTarget|null;target:EventTarget&T;}interface FormEvent<T=Element>extends SyntheticEvent<T>{}interface InvalidEvent<T=Element>extends SyntheticEvent<T>{target:EventTarget&T;}interface ChangeEvent<T=Element>extends SyntheticEvent<T>{target:EventTarget&T;}interface KeyboardEvent<T=Element>extends SyntheticEvent<T,NativeKeyboardEvent>{altKey:boolean;charCode:number;ctrlKey:boolean;code:string;getModifierState(key:string):boolean;key:string;keyCode:number;locale:string;location:number;metaKey:boolean;repeat:boolean;shiftKey:boolean;which:number;}interface MouseEvent<T=Element,E=NativeMouseEvent>extends UIEvent<T,E>{altKey:boolean;button:number;buttons:number;clientX:number;clientY:number;ctrlKey:boolean;getModifierState(key:string):boolean;metaKey:boolean;movementX:number;movementY:number;pageX:number;pageY:number;relatedTarget:EventTarget|null;screenX:number;screenY:number;shiftKey:boolean;}interface TouchEvent<T=Element>extends UIEvent<T,NativeTouchEvent>{altKey:boolean;changedTouches:TouchList;ctrlKey:boolean;getModifierState(key:string):boolean;metaKey:boolean;shiftKey:boolean;targetTouches:TouchList;touches:TouchList;}interface UIEvent<T=Element,E=NativeUIEvent>extends SyntheticEvent<T,E>{detail:number;view:AbstractView;}interface WheelEvent<T=Element>extends MouseEvent<T,NativeWheelEvent>{deltaMode:number;deltaX:number;deltaY:number;deltaZ:number;}interface AnimationEvent<T=Element>extends SyntheticEvent<T,NativeAnimationEvent>{animationName:string;elapsedTime:number;pseudoElement:string;}interface TransitionEvent<T=Element>extends SyntheticEvent<T,NativeTransitionEvent>{elapsedTime:number;propertyName:string;pseudoElement:string;}type EventHandler<E extends SyntheticEvent<any>>={bivarianceHack(event:E):void}[\"bivarianceHack\"];type ReactEventHandler<T=Element>=EventHandler<SyntheticEvent<T>>;type ClipboardEventHandler<T=Element>=EventHandler<ClipboardEvent<T>>;type CompositionEventHandler<T=Element>=EventHandler<CompositionEvent<T>>;type DragEventHandler<T=Element>=EventHandler<DragEvent<T>>;type FocusEventHandler<T=Element>=EventHandler<FocusEvent<T>>;type FormEventHandler<T=Element>=EventHandler<FormEvent<T>>;type ChangeEventHandler<T=Element>=EventHandler<ChangeEvent<T>>;type KeyboardEventHandler<T=Element>=EventHandler<KeyboardEvent<T>>;type MouseEventHandler<T=Element>=EventHandler<MouseEvent<T>>;type TouchEventHandler<T=Element>=EventHandler<TouchEvent<T>>;type PointerEventHandler<T=Element>=EventHandler<PointerEvent<T>>;type UIEventHandler<T=Element>=EventHandler<UIEvent<T>>;type WheelEventHandler<T=Element>=EventHandler<WheelEvent<T>>;type AnimationEventHandler<T=Element>=EventHandler<AnimationEvent<T>>;type TransitionEventHandler<T=Element>=EventHandler<TransitionEvent<T>>;interface Props<T>{children?:ReactNode;key?:Key;ref?:LegacyRef<T>;}interface HTMLProps<T>extends AllHTMLAttributes<T>,ClassAttributes<T>{}type DetailedHTMLProps<E extends HTMLAttributes<T>,T>=ClassAttributes<T>&E;interface SVGProps<T>extends SVGAttributes<T>,ClassAttributes<T>{}interface DOMAttributes<T>{children?:ReactNode;dangerouslySetInnerHTML?:{__html:string;};onCopy?:ClipboardEventHandler<T>;onCopyCapture?:ClipboardEventHandler<T>;onCut?:ClipboardEventHandler<T>;onCutCapture?:ClipboardEventHandler<T>;onPaste?:ClipboardEventHandler<T>;onPasteCapture?:ClipboardEventHandler<T>;onCompositionEnd?:CompositionEventHandler<T>;onCompositionEndCapture?:CompositionEventHandler<T>;onCompositionStart?:CompositionEventHandler<T>;onCompositionStartCapture?:CompositionEventHandler<T>;onCompositionUpdate?:CompositionEventHandler<T>;onCompositionUpdateCapture?:CompositionEventHandler<T>;onFocus?:FocusEventHandler<T>;onFocusCapture?:FocusEventHandler<T>;onBlur?:FocusEventHandler<T>;onBlurCapture?:FocusEventHandler<T>;onChange?:FormEventHandler<T>;onChangeCapture?:FormEventHandler<T>;onBeforeInput?:FormEventHandler<T>;onBeforeInputCapture?:FormEventHandler<T>;onInput?:FormEventHandler<T>;onInputCapture?:FormEventHandler<T>;onReset?:FormEventHandler<T>;onResetCapture?:FormEventHandler<T>;onSubmit?:FormEventHandler<T>;onSubmitCapture?:FormEventHandler<T>;onInvalid?:FormEventHandler<T>;onInvalidCapture?:FormEventHandler<T>;onLoad?:ReactEventHandler<T>;onLoadCapture?:ReactEventHandler<T>;onError?:ReactEventHandler<T>;onErrorCapture?:ReactEventHandler<T>;onKeyDown?:KeyboardEventHandler<T>;onKeyDownCapture?:KeyboardEventHandler<T>;onKeyPress?:KeyboardEventHandler<T>;onKeyPressCapture?:KeyboardEventHandler<T>;onKeyUp?:KeyboardEventHandler<T>;onKeyUpCapture?:KeyboardEventHandler<T>;onAbort?:ReactEventHandler<T>;onAbortCapture?:ReactEventHandler<T>;onCanPlay?:ReactEventHandler<T>;onCanPlayCapture?:ReactEventHandler<T>;onCanPlayThrough?:ReactEventHandler<T>;onCanPlayThroughCapture?:ReactEventHandler<T>;onDurationChange?:ReactEventHandler<T>;onDurationChangeCapture?:ReactEventHandler<T>;onEmptied?:ReactEventHandler<T>;onEmptiedCapture?:ReactEventHandler<T>;onEncrypted?:ReactEventHandler<T>;onEncryptedCapture?:ReactEventHandler<T>;onEnded?:ReactEventHandler<T>;onEndedCapture?:ReactEventHandler<T>;onLoadedData?:ReactEventHandler<T>;onLoadedDataCapture?:ReactEventHandler<T>;onLoadedMetadata?:ReactEventHandler<T>;onLoadedMetadataCapture?:ReactEventHandler<T>;onLoadStart?:ReactEventHandler<T>;onLoadStartCapture?:ReactEventHandler<T>;onPause?:ReactEventHandler<T>;onPauseCapture?:ReactEventHandler<T>;onPlay?:ReactEventHandler<T>;onPlayCapture?:ReactEventHandler<T>;onPlaying?:ReactEventHandler<T>;onPlayingCapture?:ReactEventHandler<T>;onProgress?:ReactEventHandler<T>;onProgressCapture?:ReactEventHandler<T>;onRateChange?:ReactEventHandler<T>;onRateChangeCapture?:ReactEventHandler<T>;onSeeked?:ReactEventHandler<T>;onSeekedCapture?:ReactEventHandler<T>;onSeeking?:ReactEventHandler<T>;onSeekingCapture?:ReactEventHandler<T>;onStalled?:ReactEventHandler<T>;onStalledCapture?:ReactEventHandler<T>;onSuspend?:ReactEventHandler<T>;onSuspendCapture?:ReactEventHandler<T>;onTimeUpdate?:ReactEventHandler<T>;onTimeUpdateCapture?:ReactEventHandler<T>;onVolumeChange?:ReactEventHandler<T>;onVolumeChangeCapture?:ReactEventHandler<T>;onWaiting?:ReactEventHandler<T>;onWaitingCapture?:ReactEventHandler<T>;onAuxClick?:MouseEventHandler<T>;onAuxClickCapture?:MouseEventHandler<T>;onClick?:MouseEventHandler<T>;onClickCapture?:MouseEventHandler<T>;onContextMenu?:MouseEventHandler<T>;onContextMenuCapture?:MouseEventHandler<T>;onDoubleClick?:MouseEventHandler<T>;onDoubleClickCapture?:MouseEventHandler<T>;onDrag?:DragEventHandler<T>;onDragCapture?:DragEventHandler<T>;onDragEnd?:DragEventHandler<T>;onDragEndCapture?:DragEventHandler<T>;onDragEnter?:DragEventHandler<T>;onDragEnterCapture?:DragEventHandler<T>;onDragExit?:DragEventHandler<T>;onDragExitCapture?:DragEventHandler<T>;onDragLeave?:DragEventHandler<T>;onDragLeaveCapture?:DragEventHandler<T>;onDragOver?:DragEventHandler<T>;onDragOverCapture?:DragEventHandler<T>;onDragStart?:DragEventHandler<T>;onDragStartCapture?:DragEventHandler<T>;onDrop?:DragEventHandler<T>;onDropCapture?:DragEventHandler<T>;onMouseDown?:MouseEventHandler<T>;onMouseDownCapture?:MouseEventHandler<T>;onMouseEnter?:MouseEventHandler<T>;onMouseLeave?:MouseEventHandler<T>;onMouseMove?:MouseEventHandler<T>;onMouseMoveCapture?:MouseEventHandler<T>;onMouseOut?:MouseEventHandler<T>;onMouseOutCapture?:MouseEventHandler<T>;onMouseOver?:MouseEventHandler<T>;onMouseOverCapture?:MouseEventHandler<T>;onMouseUp?:MouseEventHandler<T>;onMouseUpCapture?:MouseEventHandler<T>;onSelect?:ReactEventHandler<T>;onSelectCapture?:ReactEventHandler<T>;onTouchCancel?:TouchEventHandler<T>;onTouchCancelCapture?:TouchEventHandler<T>;onTouchEnd?:TouchEventHandler<T>;onTouchEndCapture?:TouchEventHandler<T>;onTouchMove?:TouchEventHandler<T>;onTouchMoveCapture?:TouchEventHandler<T>;onTouchStart?:TouchEventHandler<T>;onTouchStartCapture?:TouchEventHandler<T>;onPointerDown?:PointerEventHandler<T>;onPointerDownCapture?:PointerEventHandler<T>;onPointerMove?:PointerEventHandler<T>;onPointerMoveCapture?:PointerEventHandler<T>;onPointerUp?:PointerEventHandler<T>;onPointerUpCapture?:PointerEventHandler<T>;onPointerCancel?:PointerEventHandler<T>;onPointerCancelCapture?:PointerEventHandler<T>;onPointerEnter?:PointerEventHandler<T>;onPointerEnterCapture?:PointerEventHandler<T>;onPointerLeave?:PointerEventHandler<T>;onPointerLeaveCapture?:PointerEventHandler<T>;onPointerOver?:PointerEventHandler<T>;onPointerOverCapture?:PointerEventHandler<T>;onPointerOut?:PointerEventHandler<T>;onPointerOutCapture?:PointerEventHandler<T>;onGotPointerCapture?:PointerEventHandler<T>;onGotPointerCaptureCapture?:PointerEventHandler<T>;onLostPointerCapture?:PointerEventHandler<T>;onLostPointerCaptureCapture?:PointerEventHandler<T>;onScroll?:UIEventHandler<T>;onScrollCapture?:UIEventHandler<T>;onWheel?:WheelEventHandler<T>;onWheelCapture?:WheelEventHandler<T>;onAnimationStart?:AnimationEventHandler<T>;onAnimationStartCapture?:AnimationEventHandler<T>;onAnimationEnd?:AnimationEventHandler<T>;onAnimationEndCapture?:AnimationEventHandler<T>;onAnimationIteration?:AnimationEventHandler<T>;onAnimationIterationCapture?:AnimationEventHandler<T>;onTransitionEnd?:TransitionEventHandler<T>;onTransitionEndCapture?:TransitionEventHandler<T>;}export interface CSSProperties extends CSS.Properties<string|number>{}interface AriaAttributes{'aria-activedescendant'?:string;'aria-atomic'?:boolean|'false'|'true';'aria-autocomplete'?:'none'|'inline'|'list'|'both';'aria-busy'?:boolean|'false'|'true';'aria-checked'?:boolean|'false'|'mixed'|'true';'aria-colcount'?:number;'aria-colindex'?:number;'aria-colspan'?:number;'aria-controls'?:string;'aria-current'?:boolean|'false'|'true'|'page'|'step'|'location'|'date'|'time';'aria-describedby'?:string;'aria-details'?:string;'aria-disabled'?:boolean|'false'|'true';'aria-dropeffect'?:'none'|'copy'|'execute'|'link'|'move'|'popup';'aria-errormessage'?:string;'aria-expanded'?:boolean|'false'|'true';'aria-flowto'?:string;'aria-grabbed'?:boolean|'false'|'true';'aria-haspopup'?:boolean|'false'|'true'|'menu'|'listbox'|'tree'|'grid'|'dialog';'aria-hidden'?:boolean|'false'|'true';'aria-invalid'?:boolean|'false'|'true'|'grammar'|'spelling';'aria-keyshortcuts'?:string;'aria-label'?:string;'aria-labelledby'?:string;'aria-level'?:number;'aria-live'?:'off'|'assertive'|'polite';'aria-modal'?:boolean|'false'|'true';'aria-multiline'?:boolean|'false'|'true';'aria-multiselectable'?:boolean|'false'|'true';'aria-orientation'?:'horizontal'|'vertical';'aria-owns'?:string;'aria-placeholder'?:string;'aria-posinset'?:number;'aria-pressed'?:boolean|'false'|'mixed'|'true';'aria-readonly'?:boolean|'false'|'true';'aria-relevant'?:'additions'|'additions removals'|'additions text'|'all'|'removals'|'removals additions'|'removals text'|'text'|'text additions'|'text removals';'aria-required'?:boolean|'false'|'true';'aria-roledescription'?:string;'aria-rowcount'?:number;'aria-rowindex'?:number;'aria-rowspan'?:number;'aria-selected'?:boolean|'false'|'true';'aria-setsize'?:number;'aria-sort'?:'none'|'ascending'|'descending'|'other';'aria-valuemax'?:number;'aria-valuemin'?:number;'aria-valuenow'?:number;'aria-valuetext'?:string;}type AriaRole=|'alert'|'alertdialog'|'application'|'article'|'banner'|'button'|'cell'|'checkbox'|'columnheader'|'combobox'|'complementary'|'contentinfo'|'definition'|'dialog'|'directory'|'document'|'feed'|'figure'|'form'|'grid'|'gridcell'|'group'|'heading'|'img'|'link'|'list'|'listbox'|'listitem'|'log'|'main'|'marquee'|'math'|'menu'|'menubar'|'menuitem'|'menuitemcheckbox'|'menuitemradio'|'navigation'|'none'|'note'|'option'|'presentation'|'progressbar'|'radio'|'radiogroup'|'region'|'row'|'rowgroup'|'rowheader'|'scrollbar'|'search'|'searchbox'|'separator'|'slider'|'spinbutton'|'status'|'switch'|'tab'|'table'|'tablist'|'tabpanel'|'term'|'textbox'|'timer'|'toolbar'|'tooltip'|'tree'|'treegrid'|'treeitem'|(string&{});interface HTMLAttributes<T>extends AriaAttributes,DOMAttributes<T>{defaultChecked?:boolean;defaultValue?:string|number|ReadonlyArray<string>;suppressContentEditableWarning?:boolean;suppressHydrationWarning?:boolean;accessKey?:string;className?:string;contentEditable?:Booleanish|\"inherit\";contextMenu?:string;dir?:string;draggable?:Booleanish;hidden?:boolean;id?:string;lang?:string;placeholder?:string;slot?:string;spellCheck?:Booleanish;style?:CSSProperties;tabIndex?:number;title?:string;translate?:'yes'|'no';radioGroup?:string;role?:AriaRole;about?:string;datatype?:string;inlist?:any;prefix?:string;property?:string;resource?:string;typeof?:string;vocab?:string;autoCapitalize?:string;autoCorrect?:string;autoSave?:string;color?:string;itemProp?:string;itemScope?:boolean;itemType?:string;itemID?:string;itemRef?:string;results?:number;security?:string;unselectable?:'on'|'off';inputMode?:'none'|'text'|'tel'|'url'|'email'|'numeric'|'decimal'|'search';is?:string;}interface AllHTMLAttributes<T>extends HTMLAttributes<T>{accept?:string;acceptCharset?:string;action?:string;allowFullScreen?:boolean;allowTransparency?:boolean;alt?:string;as?:string;async?:boolean;autoComplete?:string;autoFocus?:boolean;autoPlay?:boolean;capture?:boolean|string;cellPadding?:number|string;cellSpacing?:number|string;charSet?:string;challenge?:string;checked?:boolean;cite?:string;classID?:string;cols?:number;colSpan?:number;content?:string;controls?:boolean;coords?:string;crossOrigin?:string;data?:string;dateTime?:string;default?:boolean;defer?:boolean;disabled?:boolean;download?:any;encType?:string;form?:string;formAction?:string;formEncType?:string;formMethod?:string;formNoValidate?:boolean;formTarget?:string;frameBorder?:number|string;headers?:string;height?:number|string;high?:number;href?:string;hrefLang?:string;htmlFor?:string;httpEquiv?:string;integrity?:string;keyParams?:string;keyType?:string;kind?:string;label?:string;list?:string;loop?:boolean;low?:number;manifest?:string;marginHeight?:number;marginWidth?:number;max?:number|string;maxLength?:number;media?:string;mediaGroup?:string;method?:string;min?:number|string;minLength?:number;multiple?:boolean;muted?:boolean;name?:string;nonce?:string;noValidate?:boolean;open?:boolean;optimum?:number;pattern?:string;placeholder?:string;playsInline?:boolean;poster?:string;preload?:string;readOnly?:boolean;rel?:string;required?:boolean;reversed?:boolean;rows?:number;rowSpan?:number;sandbox?:string;scope?:string;scoped?:boolean;scrolling?:string;seamless?:boolean;selected?:boolean;shape?:string;size?:number;sizes?:string;span?:number;src?:string;srcDoc?:string;srcLang?:string;srcSet?:string;start?:number;step?:number|string;summary?:string;target?:string;type?:string;useMap?:string;value?:string|ReadonlyArray<string>|number;width?:number|string;wmode?:string;wrap?:string;}type HTMLAttributeReferrerPolicy=|''|'no-referrer'|'no-referrer-when-downgrade'|'origin'|'origin-when-cross-origin'|'same-origin'|'strict-origin'|'strict-origin-when-cross-origin'|'unsafe-url';interface AnchorHTMLAttributes<T>extends HTMLAttributes<T>{download?:any;href?:string;hrefLang?:string;media?:string;ping?:string;rel?:string;target?:string;type?:string;referrerPolicy?:HTMLAttributeReferrerPolicy;}interface AudioHTMLAttributes<T>extends MediaHTMLAttributes<T>{}interface AreaHTMLAttributes<T>extends HTMLAttributes<T>{alt?:string;coords?:string;download?:any;href?:string;hrefLang?:string;media?:string;referrerPolicy?:HTMLAttributeReferrerPolicy;rel?:string;shape?:string;target?:string;}interface BaseHTMLAttributes<T>extends HTMLAttributes<T>{href?:string;target?:string;}interface BlockquoteHTMLAttributes<T>extends HTMLAttributes<T>{cite?:string;}interface ButtonHTMLAttributes<T>extends HTMLAttributes<T>{autoFocus?:boolean;disabled?:boolean;form?:string;formAction?:string;formEncType?:string;formMethod?:string;formNoValidate?:boolean;formTarget?:string;name?:string;type?:'submit'|'reset'|'button';value?:string|ReadonlyArray<string>|number;}interface CanvasHTMLAttributes<T>extends HTMLAttributes<T>{height?:number|string;width?:number|string;}interface ColHTMLAttributes<T>extends HTMLAttributes<T>{span?:number;width?:number|string;}interface ColgroupHTMLAttributes<T>extends HTMLAttributes<T>{span?:number;}interface DataHTMLAttributes<T>extends HTMLAttributes<T>{value?:string|ReadonlyArray<string>|number;}interface DetailsHTMLAttributes<T>extends HTMLAttributes<T>{open?:boolean;onToggle?:ReactEventHandler<T>;}interface DelHTMLAttributes<T>extends HTMLAttributes<T>{cite?:string;dateTime?:string;}interface DialogHTMLAttributes<T>extends HTMLAttributes<T>{open?:boolean;}interface EmbedHTMLAttributes<T>extends HTMLAttributes<T>{height?:number|string;src?:string;type?:string;width?:number|string;}interface FieldsetHTMLAttributes<T>extends HTMLAttributes<T>{disabled?:boolean;form?:string;name?:string;}interface FormHTMLAttributes<T>extends HTMLAttributes<T>{acceptCharset?:string;action?:string;autoComplete?:string;encType?:string;method?:string;name?:string;noValidate?:boolean;target?:string;}interface HtmlHTMLAttributes<T>extends HTMLAttributes<T>{manifest?:string;}interface IframeHTMLAttributes<T>extends HTMLAttributes<T>{allow?:string;allowFullScreen?:boolean;allowTransparency?:boolean;frameBorder?:number|string;height?:number|string;loading?:\"eager\"|\"lazy\";marginHeight?:number;marginWidth?:number;name?:string;referrerPolicy?:HTMLAttributeReferrerPolicy;sandbox?:string;scrolling?:string;seamless?:boolean;src?:string;srcDoc?:string;width?:number|string;}interface ImgHTMLAttributes<T>extends HTMLAttributes<T>{alt?:string;crossOrigin?:\"anonymous\"|\"use-credentials\"|\"\";decoding?:\"async\"|\"auto\"|\"sync\";height?:number|string;loading?:\"eager\"|\"lazy\";referrerPolicy?:HTMLAttributeReferrerPolicy;sizes?:string;src?:string;srcSet?:string;useMap?:string;width?:number|string;}interface InsHTMLAttributes<T>extends HTMLAttributes<T>{cite?:string;dateTime?:string;}interface InputHTMLAttributes<T>extends HTMLAttributes<T>{accept?:string;alt?:string;autoComplete?:string;autoFocus?:boolean;capture?:boolean|string;checked?:boolean;crossOrigin?:string;disabled?:boolean;enterKeyHint?:'enter'|'done'|'go'|'next'|'previous'|'search'|'send';form?:string;formAction?:string;formEncType?:string;formMethod?:string;formNoValidate?:boolean;formTarget?:string;height?:number|string;list?:string;max?:number|string;maxLength?:number;min?:number|string;minLength?:number;multiple?:boolean;name?:string;pattern?:string;placeholder?:string;readOnly?:boolean;required?:boolean;size?:number;src?:string;step?:number|string;type?:string;value?:string|ReadonlyArray<string>|number;width?:number|string;onChange?:ChangeEventHandler<T>;}interface KeygenHTMLAttributes<T>extends HTMLAttributes<T>{autoFocus?:boolean;challenge?:string;disabled?:boolean;form?:string;keyType?:string;keyParams?:string;name?:string;}interface LabelHTMLAttributes<T>extends HTMLAttributes<T>{form?:string;htmlFor?:string;}interface LiHTMLAttributes<T>extends HTMLAttributes<T>{value?:string|ReadonlyArray<string>|number;}interface LinkHTMLAttributes<T>extends HTMLAttributes<T>{as?:string;crossOrigin?:string;href?:string;hrefLang?:string;integrity?:string;media?:string;referrerPolicy?:HTMLAttributeReferrerPolicy;rel?:string;sizes?:string;type?:string;charSet?:string;}interface MapHTMLAttributes<T>extends HTMLAttributes<T>{name?:string;}interface MenuHTMLAttributes<T>extends HTMLAttributes<T>{type?:string;}interface MediaHTMLAttributes<T>extends HTMLAttributes<T>{autoPlay?:boolean;controls?:boolean;controlsList?:string;crossOrigin?:string;loop?:boolean;mediaGroup?:string;muted?:boolean;playsInline?:boolean;preload?:string;src?:string;}interface MetaHTMLAttributes<T>extends HTMLAttributes<T>{charSet?:string;content?:string;httpEquiv?:string;name?:string;}interface MeterHTMLAttributes<T>extends HTMLAttributes<T>{form?:string;high?:number;low?:number;max?:number|string;min?:number|string;optimum?:number;value?:string|ReadonlyArray<string>|number;}interface QuoteHTMLAttributes<T>extends HTMLAttributes<T>{cite?:string;}interface ObjectHTMLAttributes<T>extends HTMLAttributes<T>{classID?:string;data?:string;form?:string;height?:number|string;name?:string;type?:string;useMap?:string;width?:number|string;wmode?:string;}interface OlHTMLAttributes<T>extends HTMLAttributes<T>{reversed?:boolean;start?:number;type?:'1'|'a'|'A'|'i'|'I';}interface OptgroupHTMLAttributes<T>extends HTMLAttributes<T>{disabled?:boolean;label?:string;}interface OptionHTMLAttributes<T>extends HTMLAttributes<T>{disabled?:boolean;label?:string;selected?:boolean;value?:string|ReadonlyArray<string>|number;}interface OutputHTMLAttributes<T>extends HTMLAttributes<T>{form?:string;htmlFor?:string;name?:string;}interface ParamHTMLAttributes<T>extends HTMLAttributes<T>{name?:string;value?:string|ReadonlyArray<string>|number;}interface ProgressHTMLAttributes<T>extends HTMLAttributes<T>{max?:number|string;value?:string|ReadonlyArray<string>|number;}interface SlotHTMLAttributes<T>extends HTMLAttributes<T>{name?:string;}interface ScriptHTMLAttributes<T>extends HTMLAttributes<T>{async?:boolean;charSet?:string;crossOrigin?:string;defer?:boolean;integrity?:string;noModule?:boolean;nonce?:string;referrerPolicy?:HTMLAttributeReferrerPolicy;src?:string;type?:string;}interface SelectHTMLAttributes<T>extends HTMLAttributes<T>{autoComplete?:string;autoFocus?:boolean;disabled?:boolean;form?:string;multiple?:boolean;name?:string;required?:boolean;size?:number;value?:string|ReadonlyArray<string>|number;onChange?:ChangeEventHandler<T>;}interface SourceHTMLAttributes<T>extends HTMLAttributes<T>{media?:string;sizes?:string;src?:string;srcSet?:string;type?:string;}interface StyleHTMLAttributes<T>extends HTMLAttributes<T>{media?:string;nonce?:string;scoped?:boolean;type?:string;}interface TableHTMLAttributes<T>extends HTMLAttributes<T>{cellPadding?:number|string;cellSpacing?:number|string;summary?:string;width?:number|string;}interface TextareaHTMLAttributes<T>extends HTMLAttributes<T>{autoComplete?:string;autoFocus?:boolean;cols?:number;dirName?:string;disabled?:boolean;form?:string;maxLength?:number;minLength?:number;name?:string;placeholder?:string;readOnly?:boolean;required?:boolean;rows?:number;value?:string|ReadonlyArray<string>|number;wrap?:string;onChange?:ChangeEventHandler<T>;}interface TdHTMLAttributes<T>extends HTMLAttributes<T>{align?:\"left\"|\"center\"|\"right\"|\"justify\"|\"char\";colSpan?:number;headers?:string;rowSpan?:number;scope?:string;abbr?:string;height?:number|string;width?:number|string;valign?:\"top\"|\"middle\"|\"bottom\"|\"baseline\";}interface ThHTMLAttributes<T>extends HTMLAttributes<T>{align?:\"left\"|\"center\"|\"right\"|\"justify\"|\"char\";colSpan?:number;headers?:string;rowSpan?:number;scope?:string;abbr?:string;}interface TimeHTMLAttributes<T>extends HTMLAttributes<T>{dateTime?:string;}interface TrackHTMLAttributes<T>extends HTMLAttributes<T>{default?:boolean;kind?:string;label?:string;src?:string;srcLang?:string;}interface VideoHTMLAttributes<T>extends MediaHTMLAttributes<T>{height?:number|string;playsInline?:boolean;poster?:string;width?:number|string;disablePictureInPicture?:boolean;disableRemotePlayback?:boolean;}interface SVGAttributes<T>extends AriaAttributes,DOMAttributes<T>{className?:string;color?:string;height?:number|string;id?:string;lang?:string;max?:number|string;media?:string;method?:string;min?:number|string;name?:string;style?:CSSProperties;target?:string;type?:string;width?:number|string;role?:AriaRole;tabIndex?:number;crossOrigin?:\"anonymous\"|\"use-credentials\"|\"\";accentHeight?:number|string;accumulate?:\"none\"|\"sum\";additive?:\"replace\"|\"sum\";alignmentBaseline?:\"auto\"|\"baseline\"|\"before-edge\"|\"text-before-edge\"|\"middle\"|\"central\"|\"after-edge\"|\"text-after-edge\"|\"ideographic\"|\"alphabetic\"|\"hanging\"|\"mathematical\"|\"inherit\";allowReorder?:\"no\"|\"yes\";alphabetic?:number|string;amplitude?:number|string;arabicForm?:\"initial\"|\"medial\"|\"terminal\"|\"isolated\";ascent?:number|string;attributeName?:string;attributeType?:string;autoReverse?:Booleanish;azimuth?:number|string;baseFrequency?:number|string;baselineShift?:number|string;baseProfile?:number|string;bbox?:number|string;begin?:number|string;bias?:number|string;by?:number|string;calcMode?:number|string;capHeight?:number|string;clip?:number|string;clipPath?:string;clipPathUnits?:number|string;clipRule?:number|string;colorInterpolation?:number|string;colorInterpolationFilters?:\"auto\"|\"sRGB\"|\"linearRGB\"|\"inherit\";colorProfile?:number|string;colorRendering?:number|string;contentScriptType?:number|string;contentStyleType?:number|string;cursor?:number|string;cx?:number|string;cy?:number|string;d?:string;decelerate?:number|string;descent?:number|string;diffuseConstant?:number|string;direction?:number|string;display?:number|string;divisor?:number|string;dominantBaseline?:number|string;dur?:number|string;dx?:number|string;dy?:number|string;edgeMode?:number|string;elevation?:number|string;enableBackground?:number|string;end?:number|string;exponent?:number|string;externalResourcesRequired?:Booleanish;fill?:string;fillOpacity?:number|string;fillRule?:\"nonzero\"|\"evenodd\"|\"inherit\";filter?:string;filterRes?:number|string;filterUnits?:number|string;floodColor?:number|string;floodOpacity?:number|string;focusable?:Booleanish|\"auto\";fontFamily?:string;fontSize?:number|string;fontSizeAdjust?:number|string;fontStretch?:number|string;fontStyle?:number|string;fontVariant?:number|string;fontWeight?:number|string;format?:number|string;from?:number|string;fx?:number|string;fy?:number|string;g1?:number|string;g2?:number|string;glyphName?:number|string;glyphOrientationHorizontal?:number|string;glyphOrientationVertical?:number|string;glyphRef?:number|string;gradientTransform?:string;gradientUnits?:string;hanging?:number|string;horizAdvX?:number|string;horizOriginX?:number|string;href?:string;ideographic?:number|string;imageRendering?:number|string;in2?:number|string;in?:string;intercept?:number|string;k1?:number|string;k2?:number|string;k3?:number|string;k4?:number|string;k?:number|string;kernelMatrix?:number|string;kernelUnitLength?:number|string;kerning?:number|string;keyPoints?:number|string;keySplines?:number|string;keyTimes?:number|string;lengthAdjust?:number|string;letterSpacing?:number|string;lightingColor?:number|string;limitingConeAngle?:number|string;local?:number|string;markerEnd?:string;markerHeight?:number|string;markerMid?:string;markerStart?:string;markerUnits?:number|string;markerWidth?:number|string;mask?:string;maskContentUnits?:number|string;maskUnits?:number|string;mathematical?:number|string;mode?:number|string;numOctaves?:number|string;offset?:number|string;opacity?:number|string;operator?:number|string;order?:number|string;orient?:number|string;orientation?:number|string;origin?:number|string;overflow?:number|string;overlinePosition?:number|string;overlineThickness?:number|string;paintOrder?:number|string;panose1?:number|string;path?:string;pathLength?:number|string;patternContentUnits?:string;patternTransform?:number|string;patternUnits?:string;pointerEvents?:number|string;points?:string;pointsAtX?:number|string;pointsAtY?:number|string;pointsAtZ?:number|string;preserveAlpha?:Booleanish;preserveAspectRatio?:string;primitiveUnits?:number|string;r?:number|string;radius?:number|string;refX?:number|string;refY?:number|string;renderingIntent?:number|string;repeatCount?:number|string;repeatDur?:number|string;requiredExtensions?:number|string;requiredFeatures?:number|string;restart?:number|string;result?:string;rotate?:number|string;rx?:number|string;ry?:number|string;scale?:number|string;seed?:number|string;shapeRendering?:number|string;slope?:number|string;spacing?:number|string;specularConstant?:number|string;specularExponent?:number|string;speed?:number|string;spreadMethod?:string;startOffset?:number|string;stdDeviation?:number|string;stemh?:number|string;stemv?:number|string;stitchTiles?:number|string;stopColor?:string;stopOpacity?:number|string;strikethroughPosition?:number|string;strikethroughThickness?:number|string;string?:number|string;stroke?:string;strokeDasharray?:string|number;strokeDashoffset?:string|number;strokeLinecap?:\"butt\"|\"round\"|\"square\"|\"inherit\";strokeLinejoin?:\"miter\"|\"round\"|\"bevel\"|\"inherit\";strokeMiterlimit?:number|string;strokeOpacity?:number|string;strokeWidth?:number|string;surfaceScale?:number|string;systemLanguage?:number|string;tableValues?:number|string;targetX?:number|string;targetY?:number|string;textAnchor?:string;textDecoration?:number|string;textLength?:number|string;textRendering?:number|string;to?:number|string;transform?:string;u1?:number|string;u2?:number|string;underlinePosition?:number|string;underlineThickness?:number|string;unicode?:number|string;unicodeBidi?:number|string;unicodeRange?:number|string;unitsPerEm?:number|string;vAlphabetic?:number|string;values?:string;vectorEffect?:number|string;version?:string;vertAdvY?:number|string;vertOriginX?:number|string;vertOriginY?:number|string;vHanging?:number|string;vIdeographic?:number|string;viewBox?:string;viewTarget?:number|string;visibility?:number|string;vMathematical?:number|string;widths?:number|string;wordSpacing?:number|string;writingMode?:number|string;x1?:number|string;x2?:number|string;x?:number|string;xChannelSelector?:string;xHeight?:number|string;xlinkActuate?:string;xlinkArcrole?:string;xlinkHref?:string;xlinkRole?:string;xlinkShow?:string;xlinkTitle?:string;xlinkType?:string;xmlBase?:string;xmlLang?:string;xmlns?:string;xmlnsXlink?:string;xmlSpace?:string;y1?:number|string;y2?:number|string;y?:number|string;yChannelSelector?:string;z?:number|string;zoomAndPan?:string;}interface WebViewHTMLAttributes<T>extends HTMLAttributes<T>{allowFullScreen?:boolean;allowpopups?:boolean;autoFocus?:boolean;autosize?:boolean;blinkfeatures?:string;disableblinkfeatures?:string;disableguestresize?:boolean;disablewebsecurity?:boolean;guestinstance?:string;httpreferrer?:string;nodeintegration?:boolean;partition?:string;plugins?:boolean;preload?:string;src?:string;useragent?:string;webpreferences?:string;}interface ReactHTML{a:DetailedHTMLFactory<AnchorHTMLAttributes<HTMLAnchorElement>,HTMLAnchorElement>;abbr:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;address:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;area:DetailedHTMLFactory<AreaHTMLAttributes<HTMLAreaElement>,HTMLAreaElement>;article:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;aside:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;audio:DetailedHTMLFactory<AudioHTMLAttributes<HTMLAudioElement>,HTMLAudioElement>;b:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;base:DetailedHTMLFactory<BaseHTMLAttributes<HTMLBaseElement>,HTMLBaseElement>;bdi:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;bdo:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;big:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;blockquote:DetailedHTMLFactory<BlockquoteHTMLAttributes<HTMLElement>,HTMLElement>;body:DetailedHTMLFactory<HTMLAttributes<HTMLBodyElement>,HTMLBodyElement>;br:DetailedHTMLFactory<HTMLAttributes<HTMLBRElement>,HTMLBRElement>;button:DetailedHTMLFactory<ButtonHTMLAttributes<HTMLButtonElement>,HTMLButtonElement>;canvas:DetailedHTMLFactory<CanvasHTMLAttributes<HTMLCanvasElement>,HTMLCanvasElement>;caption:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;cite:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;code:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;col:DetailedHTMLFactory<ColHTMLAttributes<HTMLTableColElement>,HTMLTableColElement>;colgroup:DetailedHTMLFactory<ColgroupHTMLAttributes<HTMLTableColElement>,HTMLTableColElement>;data:DetailedHTMLFactory<DataHTMLAttributes<HTMLDataElement>,HTMLDataElement>;datalist:DetailedHTMLFactory<HTMLAttributes<HTMLDataListElement>,HTMLDataListElement>;dd:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;del:DetailedHTMLFactory<DelHTMLAttributes<HTMLElement>,HTMLElement>;details:DetailedHTMLFactory<DetailsHTMLAttributes<HTMLElement>,HTMLElement>;dfn:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;dialog:DetailedHTMLFactory<DialogHTMLAttributes<HTMLDialogElement>,HTMLDialogElement>;div:DetailedHTMLFactory<HTMLAttributes<HTMLDivElement>,HTMLDivElement>;dl:DetailedHTMLFactory<HTMLAttributes<HTMLDListElement>,HTMLDListElement>;dt:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;em:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;embed:DetailedHTMLFactory<EmbedHTMLAttributes<HTMLEmbedElement>,HTMLEmbedElement>;fieldset:DetailedHTMLFactory<FieldsetHTMLAttributes<HTMLFieldSetElement>,HTMLFieldSetElement>;figcaption:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;figure:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;footer:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;form:DetailedHTMLFactory<FormHTMLAttributes<HTMLFormElement>,HTMLFormElement>;h1:DetailedHTMLFactory<HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h2:DetailedHTMLFactory<HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h3:DetailedHTMLFactory<HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h4:DetailedHTMLFactory<HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h5:DetailedHTMLFactory<HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h6:DetailedHTMLFactory<HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;head:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLHeadElement>;header:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;hgroup:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;hr:DetailedHTMLFactory<HTMLAttributes<HTMLHRElement>,HTMLHRElement>;html:DetailedHTMLFactory<HtmlHTMLAttributes<HTMLHtmlElement>,HTMLHtmlElement>;i:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;iframe:DetailedHTMLFactory<IframeHTMLAttributes<HTMLIFrameElement>,HTMLIFrameElement>;img:DetailedHTMLFactory<ImgHTMLAttributes<HTMLImageElement>,HTMLImageElement>;input:DetailedHTMLFactory<InputHTMLAttributes<HTMLInputElement>,HTMLInputElement>;ins:DetailedHTMLFactory<InsHTMLAttributes<HTMLModElement>,HTMLModElement>;kbd:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;keygen:DetailedHTMLFactory<KeygenHTMLAttributes<HTMLElement>,HTMLElement>;label:DetailedHTMLFactory<LabelHTMLAttributes<HTMLLabelElement>,HTMLLabelElement>;legend:DetailedHTMLFactory<HTMLAttributes<HTMLLegendElement>,HTMLLegendElement>;li:DetailedHTMLFactory<LiHTMLAttributes<HTMLLIElement>,HTMLLIElement>;link:DetailedHTMLFactory<LinkHTMLAttributes<HTMLLinkElement>,HTMLLinkElement>;main:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;map:DetailedHTMLFactory<MapHTMLAttributes<HTMLMapElement>,HTMLMapElement>;mark:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;menu:DetailedHTMLFactory<MenuHTMLAttributes<HTMLElement>,HTMLElement>;menuitem:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;meta:DetailedHTMLFactory<MetaHTMLAttributes<HTMLMetaElement>,HTMLMetaElement>;meter:DetailedHTMLFactory<MeterHTMLAttributes<HTMLElement>,HTMLElement>;nav:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;noscript:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;object:DetailedHTMLFactory<ObjectHTMLAttributes<HTMLObjectElement>,HTMLObjectElement>;ol:DetailedHTMLFactory<OlHTMLAttributes<HTMLOListElement>,HTMLOListElement>;optgroup:DetailedHTMLFactory<OptgroupHTMLAttributes<HTMLOptGroupElement>,HTMLOptGroupElement>;option:DetailedHTMLFactory<OptionHTMLAttributes<HTMLOptionElement>,HTMLOptionElement>;output:DetailedHTMLFactory<OutputHTMLAttributes<HTMLElement>,HTMLElement>;p:DetailedHTMLFactory<HTMLAttributes<HTMLParagraphElement>,HTMLParagraphElement>;param:DetailedHTMLFactory<ParamHTMLAttributes<HTMLParamElement>,HTMLParamElement>;picture:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;pre:DetailedHTMLFactory<HTMLAttributes<HTMLPreElement>,HTMLPreElement>;progress:DetailedHTMLFactory<ProgressHTMLAttributes<HTMLProgressElement>,HTMLProgressElement>;q:DetailedHTMLFactory<QuoteHTMLAttributes<HTMLQuoteElement>,HTMLQuoteElement>;rp:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;rt:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;ruby:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;s:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;samp:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;slot:DetailedHTMLFactory<SlotHTMLAttributes<HTMLSlotElement>,HTMLSlotElement>;script:DetailedHTMLFactory<ScriptHTMLAttributes<HTMLScriptElement>,HTMLScriptElement>;section:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;select:DetailedHTMLFactory<SelectHTMLAttributes<HTMLSelectElement>,HTMLSelectElement>;small:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;source:DetailedHTMLFactory<SourceHTMLAttributes<HTMLSourceElement>,HTMLSourceElement>;span:DetailedHTMLFactory<HTMLAttributes<HTMLSpanElement>,HTMLSpanElement>;strong:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;style:DetailedHTMLFactory<StyleHTMLAttributes<HTMLStyleElement>,HTMLStyleElement>;sub:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;summary:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;sup:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;table:DetailedHTMLFactory<TableHTMLAttributes<HTMLTableElement>,HTMLTableElement>;template:DetailedHTMLFactory<HTMLAttributes<HTMLTemplateElement>,HTMLTemplateElement>;tbody:DetailedHTMLFactory<HTMLAttributes<HTMLTableSectionElement>,HTMLTableSectionElement>;td:DetailedHTMLFactory<TdHTMLAttributes<HTMLTableDataCellElement>,HTMLTableDataCellElement>;textarea:DetailedHTMLFactory<TextareaHTMLAttributes<HTMLTextAreaElement>,HTMLTextAreaElement>;tfoot:DetailedHTMLFactory<HTMLAttributes<HTMLTableSectionElement>,HTMLTableSectionElement>;th:DetailedHTMLFactory<ThHTMLAttributes<HTMLTableHeaderCellElement>,HTMLTableHeaderCellElement>;thead:DetailedHTMLFactory<HTMLAttributes<HTMLTableSectionElement>,HTMLTableSectionElement>;time:DetailedHTMLFactory<TimeHTMLAttributes<HTMLElement>,HTMLElement>;title:DetailedHTMLFactory<HTMLAttributes<HTMLTitleElement>,HTMLTitleElement>;tr:DetailedHTMLFactory<HTMLAttributes<HTMLTableRowElement>,HTMLTableRowElement>;track:DetailedHTMLFactory<TrackHTMLAttributes<HTMLTrackElement>,HTMLTrackElement>;u:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;ul:DetailedHTMLFactory<HTMLAttributes<HTMLUListElement>,HTMLUListElement>;\"var\":DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;video:DetailedHTMLFactory<VideoHTMLAttributes<HTMLVideoElement>,HTMLVideoElement>;wbr:DetailedHTMLFactory<HTMLAttributes<HTMLElement>,HTMLElement>;webview:DetailedHTMLFactory<WebViewHTMLAttributes<HTMLWebViewElement>,HTMLWebViewElement>;}interface ReactSVG{animate:SVGFactory;circle:SVGFactory;clipPath:SVGFactory;defs:SVGFactory;desc:SVGFactory;ellipse:SVGFactory;feBlend:SVGFactory;feColorMatrix:SVGFactory;feComponentTransfer:SVGFactory;feComposite:SVGFactory;feConvolveMatrix:SVGFactory;feDiffuseLighting:SVGFactory;feDisplacementMap:SVGFactory;feDistantLight:SVGFactory;feDropShadow:SVGFactory;feFlood:SVGFactory;feFuncA:SVGFactory;feFuncB:SVGFactory;feFuncG:SVGFactory;feFuncR:SVGFactory;feGaussianBlur:SVGFactory;feImage:SVGFactory;feMerge:SVGFactory;feMergeNode:SVGFactory;feMorphology:SVGFactory;feOffset:SVGFactory;fePointLight:SVGFactory;feSpecularLighting:SVGFactory;feSpotLight:SVGFactory;feTile:SVGFactory;feTurbulence:SVGFactory;filter:SVGFactory;foreignObject:SVGFactory;g:SVGFactory;image:SVGFactory;line:SVGFactory;linearGradient:SVGFactory;marker:SVGFactory;mask:SVGFactory;metadata:SVGFactory;path:SVGFactory;pattern:SVGFactory;polygon:SVGFactory;polyline:SVGFactory;radialGradient:SVGFactory;rect:SVGFactory;stop:SVGFactory;svg:SVGFactory;switch:SVGFactory;symbol:SVGFactory;text:SVGFactory;textPath:SVGFactory;tspan:SVGFactory;use:SVGFactory;view:SVGFactory;}interface ReactDOM extends ReactHTML,ReactSVG{}type Validator<T>=PropTypes.Validator<T>;type Requireable<T>=PropTypes.Requireable<T>;type ValidationMap<T>=PropTypes.ValidationMap<T>;type WeakValidationMap<T>={[K in keyof T]?:null extends T[K]?Validator<T[K]|null|undefined>:undefined extends T[K]?Validator<T[K]|null|undefined>:Validator<T[K]>};interface ReactPropTypes{any:typeof PropTypes.any;array:typeof PropTypes.array;bool:typeof PropTypes.bool;func:typeof PropTypes.func;number:typeof PropTypes.number;object:typeof PropTypes.object;string:typeof PropTypes.string;node:typeof PropTypes.node;element:typeof PropTypes.element;instanceOf:typeof PropTypes.instanceOf;oneOf:typeof PropTypes.oneOf;oneOfType:typeof PropTypes.oneOfType;arrayOf:typeof PropTypes.arrayOf;objectOf:typeof PropTypes.objectOf;shape:typeof PropTypes.shape;exact:typeof PropTypes.exact;}interface ReactChildren{map<T,C>(children:C|C[],fn:(child:C,index:number)=>T):C extends null|undefined?C:Array<Exclude<T,boolean|null|undefined>>;forEach<C>(children:C|C[],fn:(child:C,index:number)=>void):void;count(children:any):number;only<C>(children:C):C extends any[]?never:C;toArray(children:ReactNode|ReactNode[]):Array<Exclude<ReactNode,boolean|null|undefined>>;}interface AbstractView{styleMedia:StyleMedia;document:Document;}interface Touch{identifier:number;target:EventTarget;screenX:number;screenY:number;clientX:number;clientY:number;pageX:number;pageY:number;}interface TouchList{[index:number]:Touch;length:number;item(index:number):Touch;identifiedTouch(identifier:number):Touch;}interface ErrorInfo{componentStack:string;}}type IsExactlyAny<T>=boolean extends(T extends never?true:false)?true:false;type ExactlyAnyPropertyKeys<T>={[K in keyof T]:IsExactlyAny<T[K]>extends true?K:never}[keyof T];type NotExactlyAnyPropertyKeys<T>=Exclude<keyof T,ExactlyAnyPropertyKeys<T>>;type MergePropTypes<P,T>=\nP extends any?IsExactlyAny<P>extends true?T:string extends keyof P?P:&Pick<P,NotExactlyAnyPropertyKeys<P>>&Pick<T,Exclude<keyof T,NotExactlyAnyPropertyKeys<P>>>&Pick<P,Exclude<keyof P,keyof T>>:never;type Defaultize<P,D>=P extends any?string extends keyof P?P:&Pick<P,Exclude<keyof P,keyof D>>&Partial<Pick<P,Extract<keyof P,keyof D>>>&Partial<Pick<D,Exclude<keyof D,keyof P>>>:never;type ReactManagedAttributes<C,P>=C extends{propTypes:infer T;defaultProps:infer D;}?Defaultize<MergePropTypes<P,PropTypes.InferProps<T>>,D>:C extends{propTypes:infer T;}?MergePropTypes<P,PropTypes.InferProps<T>>:C extends{defaultProps:infer D;}?Defaultize<P,D>:P;declare global{namespace JSX{interface Element extends React.ReactElement<any,any>{}interface ElementClass extends React.Component<any>{render():React.ReactNode;}interface ElementAttributesProperty{props:{};}interface ElementChildrenAttribute{children:{};}type LibraryManagedAttributes<C,P>=C extends React.MemoExoticComponent<infer T>|React.LazyExoticComponent<infer T>?T extends React.MemoExoticComponent<infer U>|React.LazyExoticComponent<infer U>?ReactManagedAttributes<U,P>:ReactManagedAttributes<T,P>:ReactManagedAttributes<C,P>;interface IntrinsicAttributes extends React.Attributes{}interface IntrinsicClassAttributes<T>extends React.ClassAttributes<T>{}interface IntrinsicElements{a:React.DetailedHTMLProps<React.AnchorHTMLAttributes<HTMLAnchorElement>,HTMLAnchorElement>;abbr:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;address:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;area:React.DetailedHTMLProps<React.AreaHTMLAttributes<HTMLAreaElement>,HTMLAreaElement>;article:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;aside:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;audio:React.DetailedHTMLProps<React.AudioHTMLAttributes<HTMLAudioElement>,HTMLAudioElement>;b:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;base:React.DetailedHTMLProps<React.BaseHTMLAttributes<HTMLBaseElement>,HTMLBaseElement>;bdi:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;bdo:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;big:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;blockquote:React.DetailedHTMLProps<React.BlockquoteHTMLAttributes<HTMLElement>,HTMLElement>;body:React.DetailedHTMLProps<React.HTMLAttributes<HTMLBodyElement>,HTMLBodyElement>;br:React.DetailedHTMLProps<React.HTMLAttributes<HTMLBRElement>,HTMLBRElement>;button:React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>,HTMLButtonElement>;canvas:React.DetailedHTMLProps<React.CanvasHTMLAttributes<HTMLCanvasElement>,HTMLCanvasElement>;caption:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;cite:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;code:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;col:React.DetailedHTMLProps<React.ColHTMLAttributes<HTMLTableColElement>,HTMLTableColElement>;colgroup:React.DetailedHTMLProps<React.ColgroupHTMLAttributes<HTMLTableColElement>,HTMLTableColElement>;data:React.DetailedHTMLProps<React.DataHTMLAttributes<HTMLDataElement>,HTMLDataElement>;datalist:React.DetailedHTMLProps<React.HTMLAttributes<HTMLDataListElement>,HTMLDataListElement>;dd:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;del:React.DetailedHTMLProps<React.DelHTMLAttributes<HTMLElement>,HTMLElement>;details:React.DetailedHTMLProps<React.DetailsHTMLAttributes<HTMLElement>,HTMLElement>;dfn:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;dialog:React.DetailedHTMLProps<React.DialogHTMLAttributes<HTMLDialogElement>,HTMLDialogElement>;div:React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>,HTMLDivElement>;dl:React.DetailedHTMLProps<React.HTMLAttributes<HTMLDListElement>,HTMLDListElement>;dt:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;em:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;embed:React.DetailedHTMLProps<React.EmbedHTMLAttributes<HTMLEmbedElement>,HTMLEmbedElement>;fieldset:React.DetailedHTMLProps<React.FieldsetHTMLAttributes<HTMLFieldSetElement>,HTMLFieldSetElement>;figcaption:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;figure:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;footer:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;form:React.DetailedHTMLProps<React.FormHTMLAttributes<HTMLFormElement>,HTMLFormElement>;h1:React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h2:React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h3:React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h4:React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h5:React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;h6:React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>,HTMLHeadingElement>;head:React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadElement>,HTMLHeadElement>;header:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;hgroup:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;hr:React.DetailedHTMLProps<React.HTMLAttributes<HTMLHRElement>,HTMLHRElement>;html:React.DetailedHTMLProps<React.HtmlHTMLAttributes<HTMLHtmlElement>,HTMLHtmlElement>;i:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;iframe:React.DetailedHTMLProps<React.IframeHTMLAttributes<HTMLIFrameElement>,HTMLIFrameElement>;img:React.DetailedHTMLProps<React.ImgHTMLAttributes<HTMLImageElement>,HTMLImageElement>;input:React.DetailedHTMLProps<React.InputHTMLAttributes<HTMLInputElement>,HTMLInputElement>;ins:React.DetailedHTMLProps<React.InsHTMLAttributes<HTMLModElement>,HTMLModElement>;kbd:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;keygen:React.DetailedHTMLProps<React.KeygenHTMLAttributes<HTMLElement>,HTMLElement>;label:React.DetailedHTMLProps<React.LabelHTMLAttributes<HTMLLabelElement>,HTMLLabelElement>;legend:React.DetailedHTMLProps<React.HTMLAttributes<HTMLLegendElement>,HTMLLegendElement>;li:React.DetailedHTMLProps<React.LiHTMLAttributes<HTMLLIElement>,HTMLLIElement>;link:React.DetailedHTMLProps<React.LinkHTMLAttributes<HTMLLinkElement>,HTMLLinkElement>;main:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;map:React.DetailedHTMLProps<React.MapHTMLAttributes<HTMLMapElement>,HTMLMapElement>;mark:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;menu:React.DetailedHTMLProps<React.MenuHTMLAttributes<HTMLElement>,HTMLElement>;menuitem:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;meta:React.DetailedHTMLProps<React.MetaHTMLAttributes<HTMLMetaElement>,HTMLMetaElement>;meter:React.DetailedHTMLProps<React.MeterHTMLAttributes<HTMLElement>,HTMLElement>;nav:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;noindex:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;noscript:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;object:React.DetailedHTMLProps<React.ObjectHTMLAttributes<HTMLObjectElement>,HTMLObjectElement>;ol:React.DetailedHTMLProps<React.OlHTMLAttributes<HTMLOListElement>,HTMLOListElement>;optgroup:React.DetailedHTMLProps<React.OptgroupHTMLAttributes<HTMLOptGroupElement>,HTMLOptGroupElement>;option:React.DetailedHTMLProps<React.OptionHTMLAttributes<HTMLOptionElement>,HTMLOptionElement>;output:React.DetailedHTMLProps<React.OutputHTMLAttributes<HTMLElement>,HTMLElement>;p:React.DetailedHTMLProps<React.HTMLAttributes<HTMLParagraphElement>,HTMLParagraphElement>;param:React.DetailedHTMLProps<React.ParamHTMLAttributes<HTMLParamElement>,HTMLParamElement>;picture:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;pre:React.DetailedHTMLProps<React.HTMLAttributes<HTMLPreElement>,HTMLPreElement>;progress:React.DetailedHTMLProps<React.ProgressHTMLAttributes<HTMLProgressElement>,HTMLProgressElement>;q:React.DetailedHTMLProps<React.QuoteHTMLAttributes<HTMLQuoteElement>,HTMLQuoteElement>;rp:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;rt:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;ruby:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;s:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;samp:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;slot:React.DetailedHTMLProps<React.SlotHTMLAttributes<HTMLSlotElement>,HTMLSlotElement>;script:React.DetailedHTMLProps<React.ScriptHTMLAttributes<HTMLScriptElement>,HTMLScriptElement>;section:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;select:React.DetailedHTMLProps<React.SelectHTMLAttributes<HTMLSelectElement>,HTMLSelectElement>;small:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;source:React.DetailedHTMLProps<React.SourceHTMLAttributes<HTMLSourceElement>,HTMLSourceElement>;span:React.DetailedHTMLProps<React.HTMLAttributes<HTMLSpanElement>,HTMLSpanElement>;strong:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;style:React.DetailedHTMLProps<React.StyleHTMLAttributes<HTMLStyleElement>,HTMLStyleElement>;sub:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;summary:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;sup:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;table:React.DetailedHTMLProps<React.TableHTMLAttributes<HTMLTableElement>,HTMLTableElement>;template:React.DetailedHTMLProps<React.HTMLAttributes<HTMLTemplateElement>,HTMLTemplateElement>;tbody:React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableSectionElement>,HTMLTableSectionElement>;td:React.DetailedHTMLProps<React.TdHTMLAttributes<HTMLTableDataCellElement>,HTMLTableDataCellElement>;textarea:React.DetailedHTMLProps<React.TextareaHTMLAttributes<HTMLTextAreaElement>,HTMLTextAreaElement>;tfoot:React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableSectionElement>,HTMLTableSectionElement>;th:React.DetailedHTMLProps<React.ThHTMLAttributes<HTMLTableHeaderCellElement>,HTMLTableHeaderCellElement>;thead:React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableSectionElement>,HTMLTableSectionElement>;time:React.DetailedHTMLProps<React.TimeHTMLAttributes<HTMLElement>,HTMLElement>;title:React.DetailedHTMLProps<React.HTMLAttributes<HTMLTitleElement>,HTMLTitleElement>;tr:React.DetailedHTMLProps<React.HTMLAttributes<HTMLTableRowElement>,HTMLTableRowElement>;track:React.DetailedHTMLProps<React.TrackHTMLAttributes<HTMLTrackElement>,HTMLTrackElement>;u:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;ul:React.DetailedHTMLProps<React.HTMLAttributes<HTMLUListElement>,HTMLUListElement>;\"var\":React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;video:React.DetailedHTMLProps<React.VideoHTMLAttributes<HTMLVideoElement>,HTMLVideoElement>;wbr:React.DetailedHTMLProps<React.HTMLAttributes<HTMLElement>,HTMLElement>;webview:React.DetailedHTMLProps<React.WebViewHTMLAttributes<HTMLWebViewElement>,HTMLWebViewElement>;svg:React.SVGProps<SVGSVGElement>;animate:React.SVGProps<SVGElement>;animateMotion:React.SVGProps<SVGElement>;animateTransform:React.SVGProps<SVGElement>;circle:React.SVGProps<SVGCircleElement>;clipPath:React.SVGProps<SVGClipPathElement>;defs:React.SVGProps<SVGDefsElement>;desc:React.SVGProps<SVGDescElement>;ellipse:React.SVGProps<SVGEllipseElement>;feBlend:React.SVGProps<SVGFEBlendElement>;feColorMatrix:React.SVGProps<SVGFEColorMatrixElement>;feComponentTransfer:React.SVGProps<SVGFEComponentTransferElement>;feComposite:React.SVGProps<SVGFECompositeElement>;feConvolveMatrix:React.SVGProps<SVGFEConvolveMatrixElement>;feDiffuseLighting:React.SVGProps<SVGFEDiffuseLightingElement>;feDisplacementMap:React.SVGProps<SVGFEDisplacementMapElement>;feDistantLight:React.SVGProps<SVGFEDistantLightElement>;feDropShadow:React.SVGProps<SVGFEDropShadowElement>;feFlood:React.SVGProps<SVGFEFloodElement>;feFuncA:React.SVGProps<SVGFEFuncAElement>;feFuncB:React.SVGProps<SVGFEFuncBElement>;feFuncG:React.SVGProps<SVGFEFuncGElement>;feFuncR:React.SVGProps<SVGFEFuncRElement>;feGaussianBlur:React.SVGProps<SVGFEGaussianBlurElement>;feImage:React.SVGProps<SVGFEImageElement>;feMerge:React.SVGProps<SVGFEMergeElement>;feMergeNode:React.SVGProps<SVGFEMergeNodeElement>;feMorphology:React.SVGProps<SVGFEMorphologyElement>;feOffset:React.SVGProps<SVGFEOffsetElement>;fePointLight:React.SVGProps<SVGFEPointLightElement>;feSpecularLighting:React.SVGProps<SVGFESpecularLightingElement>;feSpotLight:React.SVGProps<SVGFESpotLightElement>;feTile:React.SVGProps<SVGFETileElement>;feTurbulence:React.SVGProps<SVGFETurbulenceElement>;filter:React.SVGProps<SVGFilterElement>;foreignObject:React.SVGProps<SVGForeignObjectElement>;g:React.SVGProps<SVGGElement>;image:React.SVGProps<SVGImageElement>;line:React.SVGProps<SVGLineElement>;linearGradient:React.SVGProps<SVGLinearGradientElement>;marker:React.SVGProps<SVGMarkerElement>;mask:React.SVGProps<SVGMaskElement>;metadata:React.SVGProps<SVGMetadataElement>;mpath:React.SVGProps<SVGElement>;path:React.SVGProps<SVGPathElement>;pattern:React.SVGProps<SVGPatternElement>;polygon:React.SVGProps<SVGPolygonElement>;polyline:React.SVGProps<SVGPolylineElement>;radialGradient:React.SVGProps<SVGRadialGradientElement>;rect:React.SVGProps<SVGRectElement>;stop:React.SVGProps<SVGStopElement>;switch:React.SVGProps<SVGSwitchElement>;symbol:React.SVGProps<SVGSymbolElement>;text:React.SVGProps<SVGTextElement>;textPath:React.SVGProps<SVGTextPathElement>;tspan:React.SVGProps<SVGTSpanElement>;use:React.SVGProps<SVGUseElement>;view:React.SVGProps<SVGViewElement>;}}}"
13
13
  });
14
14
 
15
- exports["default"] = react;
15
+ exports.default = react;
@@ -2,64 +2,19 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _rollupPluginBabelHelpers = require('../../../../../_virtual/_rollupPluginBabelHelpers.js');
6
5
  var index = require('../../utils/prettier/index.js');
7
6
 
8
- function _interopNamespace(e) {
9
- if (e && e.__esModule) return e;
10
- var n = Object.create(null);
11
- if (e) {
12
- Object.keys(e).forEach(function (k) {
13
- if (k !== 'default') {
14
- var d = Object.getOwnPropertyDescriptor(e, k);
15
- Object.defineProperty(n, k, d.get ? d : {
16
- enumerable: true,
17
- get: function () { return e[k]; }
18
- });
19
- }
20
- });
21
- }
22
- n["default"] = e;
23
- return Object.freeze(n);
24
- }
25
-
26
- var TypescriptDocumentFormattingEditProvider = {
27
- provideDocumentFormattingEdits: function provideDocumentFormattingEdits(model) {
28
- return _rollupPluginBabelHelpers.asyncToGenerator( /*#__PURE__*/_rollupPluginBabelHelpers.regeneratorRuntime().mark(function _callee() {
29
- var text;
30
- return _rollupPluginBabelHelpers.regeneratorRuntime().wrap(function _callee$(_context) {
31
- while (1) switch (_context.prev = _context.next) {
32
- case 0:
33
- _context.t0 = index["default"];
34
- _context.t1 = model.getValue();
35
- _context.next = 4;
36
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('prettier/plugins/babel')); });
37
- case 4:
38
- _context.t2 = _context.sent;
39
- _context.next = 7;
40
- return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('prettier/plugins/estree')); });
41
- case 7:
42
- _context.t3 = _context.sent;
43
- _context.t4 = [_context.t2, _context.t3];
44
- _context.t5 = {
45
- parser: 'babel-ts',
46
- plugins: _context.t4
47
- };
48
- _context.next = 12;
49
- return (0, _context.t0)(_context.t1, _context.t5);
50
- case 12:
51
- text = _context.sent;
52
- return _context.abrupt("return", [{
53
- range: model.getFullModelRange(),
54
- text: text
55
- }]);
56
- case 14:
57
- case "end":
58
- return _context.stop();
59
- }
60
- }, _callee);
61
- }))();
7
+ const TypescriptDocumentFormattingEditProvider = {
8
+ async provideDocumentFormattingEdits(model) {
9
+ const text = await index.default(model.getValue(), {
10
+ parser: 'babel-ts',
11
+ plugins: [await import('prettier/plugins/babel'), await import('prettier/plugins/estree')]
12
+ });
13
+ return [{
14
+ range: model.getFullModelRange(),
15
+ text
16
+ }];
62
17
  }
63
18
  };
64
19
 
65
- exports["default"] = TypescriptDocumentFormattingEditProvider;
20
+ exports.default = TypescriptDocumentFormattingEditProvider;
@@ -9,8 +9,7 @@ var propTypes = require('./dts/propTypes.js');
9
9
  var react = require('./dts/react.js');
10
10
  var formatter = require('./formatter.js');
11
11
 
12
- function _interopNamespace(e) {
13
- if (e && e.__esModule) return e;
12
+ function _interopNamespaceDefault(e) {
14
13
  var n = Object.create(null);
15
14
  if (e) {
16
15
  Object.keys(e).forEach(function (k) {
@@ -23,11 +22,11 @@ function _interopNamespace(e) {
23
22
  }
24
23
  });
25
24
  }
26
- n["default"] = e;
25
+ n.default = e;
27
26
  return Object.freeze(n);
28
27
  }
29
28
 
30
- var monaco__namespace = /*#__PURE__*/_interopNamespace(monaco);
29
+ var monaco__namespace = /*#__PURE__*/_interopNamespaceDefault(monaco);
31
30
 
32
31
  /* eslint-disable react/forbid-foreign-prop-types */
33
32
  //
@@ -37,16 +36,16 @@ var monaco__namespace = /*#__PURE__*/_interopNamespace(monaco);
37
36
  * Set TypeScript document formatting provider.
38
37
  */
39
38
  function setDocumentFormattingEditProvider() {
40
- monaco__namespace.languages.registerDocumentFormattingEditProvider('javascript', formatter["default"]);
41
- monaco__namespace.languages.registerDocumentFormattingEditProvider('javascriptreact', formatter["default"]);
42
- monaco__namespace.languages.registerDocumentFormattingEditProvider('typescript', formatter["default"]);
43
- monaco__namespace.languages.registerDocumentFormattingEditProvider('typescriptreact', formatter["default"]);
39
+ monaco__namespace.languages.registerDocumentFormattingEditProvider('javascript', formatter.default);
40
+ monaco__namespace.languages.registerDocumentFormattingEditProvider('javascriptreact', formatter.default);
41
+ monaco__namespace.languages.registerDocumentFormattingEditProvider('typescript', formatter.default);
42
+ monaco__namespace.languages.registerDocumentFormattingEditProvider('typescriptreact', formatter.default);
44
43
  }
45
44
  /**
46
45
  * Set TypeScript compiler options.
47
46
  */
48
47
  function setCompilerOptions() {
49
- var compilerOptions = {
48
+ const compilerOptions = {
50
49
  allowNonTsExtensions: true,
51
50
  allowSyntheticDefaultImports: true,
52
51
  target: monaco__namespace.languages.typescript.ScriptTarget.ES2016,
@@ -55,7 +54,7 @@ function setCompilerOptions() {
55
54
  lib: ['dom', 'dom.iterable', 'es2020'],
56
55
  noEmit: true
57
56
  };
58
- var compilerOptionsReact = Object.assign(Object.assign({}, compilerOptions), {
57
+ const compilerOptionsReact = Object.assign(Object.assign({}, compilerOptions), {
59
58
  jsx: monaco__namespace.languages.typescript.JsxEmit.React,
60
59
  jsxFactory: 'React.createElement',
61
60
  esModuleInterop: true
@@ -67,7 +66,7 @@ function setCompilerOptions() {
67
66
  * Set TypeScript diagnostics options.
68
67
  */
69
68
  function setDiagnosticsOptions() {
70
- var diagnosticsOptions = {
69
+ const diagnosticsOptions = {
71
70
  noSuggestionDiagnostics: false,
72
71
  noSemanticValidation: true,
73
72
  noSyntaxValidation: true
@@ -83,14 +82,14 @@ function setDiagnosticsOptions() {
83
82
  */
84
83
  function setExernalLibs() {
85
84
  // express
86
- monaco__namespace.languages.typescript.javascriptDefaults.addExtraLib(express["default"].content, express["default"].path);
87
- monaco__namespace.languages.typescript.typescriptDefaults.addExtraLib(express["default"].content, express["default"].path);
85
+ monaco__namespace.languages.typescript.javascriptDefaults.addExtraLib(express.default.content, express.default.path);
86
+ monaco__namespace.languages.typescript.typescriptDefaults.addExtraLib(express.default.content, express.default.path);
88
87
  // prop-types
89
- monaco__namespace.languages.typescript.javascriptDefaults.addExtraLib(propTypes["default"].content, propTypes["default"].path);
90
- monaco__namespace.languages.typescript.typescriptDefaults.addExtraLib(propTypes["default"].content, propTypes["default"].path);
88
+ monaco__namespace.languages.typescript.javascriptDefaults.addExtraLib(propTypes.default.content, propTypes.default.path);
89
+ monaco__namespace.languages.typescript.typescriptDefaults.addExtraLib(propTypes.default.content, propTypes.default.path);
91
90
  // react
92
- monaco__namespace.languages.typescript.javascriptDefaults.addExtraLib(react["default"].content, react["default"].path);
93
- monaco__namespace.languages.typescript.typescriptDefaults.addExtraLib(react["default"].content, react["default"].path);
91
+ monaco__namespace.languages.typescript.javascriptDefaults.addExtraLib(react.default.content, react.default.path);
92
+ monaco__namespace.languages.typescript.typescriptDefaults.addExtraLib(react.default.content, react.default.path);
94
93
  }
95
94
  /**
96
95
  * Sync all the models to the worker eagerly.
@@ -118,7 +117,7 @@ function typescript () {
118
117
  setEnableFeatrueEmmet();
119
118
  }
120
119
 
121
- exports["default"] = typescript;
120
+ exports.default = typescript;
122
121
  exports.setCompilerOptions = setCompilerOptions;
123
122
  exports.setDiagnosticsOptions = setDiagnosticsOptions;
124
123
  exports.setDocumentFormattingEditProvider = setDocumentFormattingEditProvider;
@@ -1,8 +1,5 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var _rollupPluginBabelHelpers = require('../../../../_virtual/_rollupPluginBabelHelpers.js');
6
3
  var React = require('react');
7
4
  var reactUse = require('react-use');
8
5
  var preferences = require('../constants/monaco/preferences.js');
@@ -15,8 +12,8 @@ var monacoPreference = require('../utils/monacoPreference.js');
15
12
  /**
16
13
  * Get editor options from props and preferences.
17
14
  */
18
- var getEditorOptions = function getEditorOptions(props) {
19
- var normalized = monacoPreference.normalizeMonacoPreference(props.preference);
15
+ const getEditorOptions = props => {
16
+ const normalized = monacoPreference.normalizeMonacoPreference(props.preference);
20
17
  return Object.assign(Object.assign({}, normalized), {
21
18
  tabSize: normalized.detectIndentation ? undefined : normalized.tabSize,
22
19
  // font
@@ -75,14 +72,9 @@ var getEditorOptions = function getEditorOptions(props) {
75
72
  /**
76
73
  * Hook to get editor options from props.
77
74
  */
78
- var useEditorOptions = function useEditorOptions(props) {
79
- var _useState = React.useState(getEditorOptions(props)),
80
- _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
81
- editorOptions = _useState2[0],
82
- setEditorOptions = _useState2[1];
83
- reactUse.useDeepCompareEffect(function () {
84
- return setEditorOptions(getEditorOptions(props));
85
- }, [props]);
75
+ const useEditorOptions = props => {
76
+ const [editorOptions, setEditorOptions] = React.useState(getEditorOptions(props));
77
+ reactUse.useDeepCompareEffect(() => setEditorOptions(getEditorOptions(props)), [props]);
86
78
  return editorOptions;
87
79
  };
88
80
 
@@ -4,4 +4,4 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var phrasesEn = {"monacoEditorPerferenceForm.displaying.item.cursorSmoothCaretAnimation.name":"Cursor Smooth Caret Animation","monacoEditorPerferenceForm.displaying.item.fontSize.name":"Font Size","monacoEditorPerferenceForm.displaying.item.minimap.name":"Minimap","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.name":"Render Whitespace","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.all":"All","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.boundary":"Boundary","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.none":"None","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.selection":"Selection","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.trailing":"Trailing","monacoEditorPerferenceForm.displaying.item.theme.name":"Color Theme","monacoEditorPerferenceForm.displaying.item.wordWrap.name":"Word Wrap","monacoEditorPerferenceForm.displaying.title":"Displaying","monacoEditorPerferenceForm.textEditing.item.autoClosingBrackets.name":"Auto Closing Brackets","monacoEditorPerferenceForm.textEditing.item.detectIndentation.name":"Detect Indentation","monacoEditorPerferenceForm.textEditing.item.tabSize.name":"Tab Size","monacoEditorPerferenceForm.textEditing.title":"Text Editing"};
6
6
 
7
- exports["default"] = phrasesEn;
7
+ exports.default = phrasesEn;
@@ -4,4 +4,4 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var phrasesKo = {"monacoEditorPerferenceForm.displaying.item.cursorSmoothCaretAnimation.name":"커서 이동 애니메이션","monacoEditorPerferenceForm.displaying.item.fontSize.name":"글자 크기","monacoEditorPerferenceForm.displaying.item.minimap.name":"에디터 미니맵","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.name":"조판 부호 보이기","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.all":"언제나","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.boundary":"글자 사이 제외","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.none":"보이지 않음","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.selection":"선택 시에만","monacoEditorPerferenceForm.displaying.item.renderWhiteSpace.value.trailing":"글자 뒤에만","monacoEditorPerferenceForm.displaying.item.theme.name":"에디터 테마","monacoEditorPerferenceForm.displaying.item.wordWrap.name":"줄 바꿈","monacoEditorPerferenceForm.displaying.title":"화면 표시","monacoEditorPerferenceForm.textEditing.item.autoClosingBrackets.name":"자동 괄호 닫기","monacoEditorPerferenceForm.textEditing.item.detectIndentation.name":"탭 크기 자동 인식","monacoEditorPerferenceForm.textEditing.item.tabSize.name":"탭 크기","monacoEditorPerferenceForm.textEditing.title":"텍스트 편집"};
6
6
 
7
- exports["default"] = phrasesKo;
7
+ exports.default = phrasesKo;
@@ -1,12 +1,10 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
3
  /**
6
4
  * Validate if the given position is valid for emmet abbreviation.
7
5
  */
8
6
  function isValidEmmetToken(tokens, index, syntax, language) {
9
- var currentTokenType = tokens[index].type;
7
+ const currentTokenType = tokens[index].type;
10
8
  switch (syntax) {
11
9
  case 'html':
12
10
  return currentTokenType === 'text.html.basic';
@@ -23,25 +21,27 @@ function isValidEmmetToken(tokens, index, syntax, language) {
23
21
  * @see https://github.com/microsoft/vscode/blob/50140a53cc2088f478a5560683ccd354f2d5f431/extensions/emmet/src/abbreviationActions.ts#L438
24
22
  */
25
23
  function isValidLocationForEmmetAbbreviation(model, position, syntax, language) {
26
- var column = position.column,
27
- lineNumber = position.lineNumber;
24
+ const {
25
+ column,
26
+ lineNumber
27
+ } = position;
28
28
  // get current line's tokens
29
- var _tokenization =
29
+ const _tokenization =
30
30
  // monaco-editor < 0.34.0
31
31
  model._tokenization ||
32
32
  // monaco-editor >= 0.34.0
33
33
  model.tokenization._tokenization;
34
- var _tokenizationStateStore = _tokenization._tokenizationStateStore;
35
- var _tokenizationSupport =
34
+ const _tokenizationStateStore = _tokenization._tokenizationStateStore;
35
+ const _tokenizationSupport =
36
36
  // monaco-editor >= 0.32.0
37
37
  _tokenizationStateStore.tokenizationSupport ||
38
38
  // monaco-editor < 0.32.0
39
39
  _tokenization._tokenizationSupport;
40
- var state = _tokenizationStateStore.getBeginState(lineNumber - 1).clone();
41
- var tokenizationResult = _tokenizationSupport.tokenize(model.getLineContent(lineNumber), true, state, 0);
42
- var tokens = tokenizationResult.tokens;
40
+ const state = _tokenizationStateStore.getBeginState(lineNumber - 1).clone();
41
+ const tokenizationResult = _tokenizationSupport.tokenize(model.getLineContent(lineNumber), true, state, 0);
42
+ const tokens = tokenizationResult.tokens;
43
43
  // get token type at current column
44
- for (var i = tokens.length - 1; i >= 0; i--) {
44
+ for (let i = tokens.length - 1; i >= 0; i--) {
45
45
  if (column - 1 > tokens[i].offset) {
46
46
  // return true if current token is valid for emmet
47
47
  if (isValidEmmetToken(tokens, i, syntax)) {
@@ -1,7 +1,5 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
3
  var registerProvider = require('./registerProvider.js');
6
4
 
7
5
  /**
@@ -1,7 +1,5 @@
1
1
  'use strict';
2
2
 
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
3
  var emmetHelper = require('../../vendors/vscode-emmet-helper/emmetHelper.js');
6
4
  var utils = require('../../vendors/vscode-emmet-helper/utils.js');
7
5
  var abbreviationActions = require('./abbreviationActions.js');
@@ -13,18 +11,12 @@ function registerProvider(_monaco, languages, syntax) {
13
11
  if (!_monaco) {
14
12
  return;
15
13
  }
16
- var providers = languages.map(function (language) {
17
- return _monaco.languages.registerCompletionItemProvider(language, {
18
- triggerCharacters: utils.LANGUAGE_MODES[utils.MAPPED_MODES[language] || language],
19
- provideCompletionItems: function provideCompletionItems(model, position) {
20
- return abbreviationActions.isValidLocationForEmmetAbbreviation(model, position, syntax) ? emmetHelper.doComplete(_monaco, model, position, syntax, utils.DEFAULT_CONFIG) : undefined;
21
- }
22
- });
23
- });
24
- return function () {
25
- providers.forEach(function (provider) {
26
- return provider.dispose();
27
- });
14
+ const providers = languages.map(language => _monaco.languages.registerCompletionItemProvider(language, {
15
+ triggerCharacters: utils.LANGUAGE_MODES[utils.MAPPED_MODES[language] || language],
16
+ provideCompletionItems: (model, position) => abbreviationActions.isValidLocationForEmmetAbbreviation(model, position, syntax) ? emmetHelper.doComplete(_monaco, model, position, syntax, utils.DEFAULT_CONFIG) : undefined
17
+ }));
18
+ return () => {
19
+ providers.forEach(provider => provider.dispose());
28
20
  };
29
21
  }
30
22