@lvce-editor/server 0.0.30 → 0.0.31
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.
- package/ThirdPartyNotices.txt +2 -2
- package/package.json +2 -2
- package/src/server.js +1 -1
- package/static/{56ac02a → 0e4d46a}/config/builtinCommands.json +0 -0
- package/static/{56ac02a → 0e4d46a}/config/colorTheme.json +0 -0
- package/static/{56ac02a → 0e4d46a}/config/defaultKeyBindings.json +0 -0
- package/static/{56ac02a → 0e4d46a}/config/defaultSettings.json +0 -0
- package/static/{56ac02a → 0e4d46a}/css/App.css +12 -12
- package/static/{56ac02a → 0e4d46a}/fonts/FiraCode-VariableFont.ttf +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/arrow-right.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/check.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/chevron-right.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/debug-alt-2.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/ellipsis.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/extensionDefaultIcon.png +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/extensions.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/files.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/icon-close.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/icon-source-control.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/icon-sync.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/icon.png +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/language-icon.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/pwa-icon-192.png +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/pwa-icon-512.png +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/search.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/settings-gear.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/source-control.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-array.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-boolean.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-class.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-color.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-constant.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-enum-member.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-enum.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-event.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-field.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-file.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-interface.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-key.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-keyword.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-method.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-misc.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-namespace.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-numeric.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-operator.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-parameter.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-property.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-ruler.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-snippet.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-string.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-structure.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/symbol-variable.svg +0 -0
- package/static/{56ac02a → 0e4d46a}/icons/theme-icon.png +0 -0
- package/static/0e4d46a/packages/renderer-process/dist/rendererProcessMain.js +9263 -0
- package/static/0e4d46a/packages/renderer-process/dist/rendererProcessMain.js.map +7 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/AriaAlert/AriaAlert.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Assert/Assert.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Audio/Audio.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Audio/Audio.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/BackDrop/BackDrop.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Callback/Callback.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ClipBoard/ClipBoard.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ClipBoard/ClipBoard.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Command/Command.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Context/Context.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Css/Css.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Css/Css.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Developer/Developer.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Developer/Developer.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Dialog/Dialog.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Dialog/Dialog.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Download/Download.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Download/Download.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/Editor.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/EditorHelper.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/LayerCursor.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/LayerDecoration2.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/LayerDiagnostics.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/LayerLineNumbers.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/LayerMarker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/LayerScreenReader.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/LayerScrollBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/LayerSelections.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Editor/LayerText.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/EditorError/EditorError.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/EditorError/EditorError.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/EditorGroup/EditorGroup.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/EditorHover/EditorHover.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/EditorHover/EditorHover.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/EditorRename/EditorRename.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/EditorRename/EditorRename.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/EditorTab/EditorTab.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Errors/JsonRpcError.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/FindWidget/FindWidget.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/FindWidget/FindWidget.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Focus/Focus.js +0 -2
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ImagePreview/ImagePreview.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ImagePreview/ImagePreview.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/InitData/InitData.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/InitData/InitData.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/InputBox/InputBox.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/IpcClient/IpcClient.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/IpcParent/IpcParent.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/IpcParent/IpcParentWithMessagePort.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/IpcParent/IpcParentWithModuleWorker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/IpcParent/IpcParentWithReferencePort.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/KeyBindings/KeyBindings.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/KeyBindings/KeyBindings.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Layout/Layout.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Layout/Layout.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Location/Location.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Location/Location.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/MenuItem/MenuItem.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Meta/Meta.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Meta/Meta.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Notification/Notification.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Notification/Notification.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/OldMenu/Menu.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/OldMenu/Menu.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/OldMenu/Menu2.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Open/Open.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Open/Open.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Platform/Platform.js +3 -3
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Renderer/Renderer.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Renderer/RendererExtension.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Renderer/RendererQuickPick.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Renderer/RendererSearchResult.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Renderer/RendererSuggestWidget.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Renderer/RendererTree.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/RendererWorker/RendererWorker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ServiceWorker/ServiceWorker.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ServiceWorker/ServiceWorker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Terminal/Terminal.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Terminal/Terminal.js +1 -1
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TestFrameWork/ConditionErrors.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TestFrameWork/ElementActions.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TestFrameWork/HtmlElements.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TestFrameWork/KeyBoardActions.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TestFrameWork/MultiElementConditions.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TestFrameWork/QuerySelector.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TestFrameWork/SingleElementConditions.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TestFrameWork/TestFrameWork.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TestFrameWork/TestFrameWork.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/TitleBarMenuBar/TitleBarMenuBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/VError/VError.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/ExplorerModel.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/TreeProviderJson.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/TreeProviderNpm.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/TreeView.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/TreeView2.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/TreeViewClass.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/TreeViewNumber.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/Viewlet.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/Viewlet.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/ViewletDebugConsole.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/ViewletEditorImage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/ViewletEditorPlainText.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/ViewletEditorText.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/ViewletEmpty.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/ViewletIframe.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Viewlet/ViewletList.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletActivityBar/ViewletActivityBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletClock/ViewletClock.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletController/ViewletProblems.controller.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletEditorCompletion/ViewletEditorCompletion.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletExplorer/ViewletExplorer.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletExtensions/ViewletExtensions.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletImplementations/ViewletImplementations.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletLocations/ViewletLocations.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletMain/ViewletMain.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletOutput/ViewletOutput.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletPanel/ViewletPanel.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletProblems/ViewletProblems.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletQuickPick/ViewletQuickPick.js +26 -5
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletReferences/ViewletReferences.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletRunAndDebug/ViewletRunAndDebug.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletSearch/ViewletSearch.js +6 -3
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletSideBar/ViewletSideBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletSourceControl/ViewletSourceControl.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletStatusBar/ViewletStatusBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletTerminal/ViewletTerminal.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/ViewletTitleBar/ViewletTitleBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/WebStorage/WebStorage.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/WebStorage/WebStorage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Widget/Widget.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/WidgetManager/WidgetManager.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Window/Window.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/parts/Window/Window.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/rendererProcessMain.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-process/src/shared/findIndex.js +0 -0
- package/static/0e4d46a/packages/renderer-worker/dist/rendererWorkerMain.js +22391 -0
- package/static/0e4d46a/packages/renderer-worker/dist/rendererWorkerMain.js.map +7 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Ajax/Ajax.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Ajax/Ajax.js +1 -1
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Arrays/Arrays.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Assert/Assert.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Audio/Audio.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Audio/Audio.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Base64/Base64.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Base64/Base64.js +1 -1
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Blob/Blob.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Blob/Blob.js +1 -1
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/CacheStorage/CacheStorage.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/CacheStorage/CacheStorage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Callback/Callback.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Callback/Callback.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ClipBoard/ClipBoard.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ClipBoard/ClipBoard.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ColorPicker/ColorPicker.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ColorPicker/ColorPicker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ColorTheme/Color.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ColorTheme/ColorTheme.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ColorTheme/ColorTheme.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ColorThemeFromJson/ColorThemeFromJson.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ColorThemeFromJson/ColorThemeFromJson.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Command/Command.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Context/ContextImpl.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ContextMenu/ContextMenu.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ContextMenu/ContextMenu.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Css/Css.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/CustomEditor/CustomEditor.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/CustomEditor/CustomEditorExtension.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Developer/Developer.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Developer/Developer.js +1 -1
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Dialog/Dialog.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Dialog/Dialog.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Download/Download.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Download/Download.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Editor/Editor.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Editor/EditorCursor.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Editor/EditorScrolling.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Editor/EditorSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Editor/EditorText.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandApplyEdit.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandBlur.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandBraceCompletion.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCancelSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCompletion.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandComposition.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCopy.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCopyLineDown.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCopyLineUp.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorCharacterLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorCharacterRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorDown.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorEnd.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorHome.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorHorizontalLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorHorizontalRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorSet.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorUp.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorVertical.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorWordLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorWordPartLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorWordPartRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCursorWordRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandCut.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteAllLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteAllRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteCharacterLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteCharacterRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteHorizontal.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteHorizontalLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteHorizontalRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteWordLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteWordPartLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteWordPartRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDeleteWordRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandDelta.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandFormat.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandGetPositionLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandGetPositionRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandGetSelectionFromNativeRange.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandGoToDefinition.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandGoToTypeDefinition.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleContextMenu.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleDoubleClick.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleMouseMove.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleMouseMoveWithAltKey.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleNativeBeforeInputFromContentEditable.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleNativeSelectionChange.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleScrollBarClick.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleScrollBarMove.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleSingleClick.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleTab.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleTouchEnd.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleTouchMove.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleTouchStart.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleTripleClick.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandHandleWheel.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandIndent.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandIndentLess.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandIndentMore.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandIndentSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandInsertLineBreak.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandMoveLineDown.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandMoveLineUp.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandMoveRectangleSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandMoveRectangleSelectionPx.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandMoveSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandMoveSelectionPx.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandPaste.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandPasteText.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandPosition.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandReplaceRange.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandReplaceSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSave.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectAll.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectAllLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectAllOccurrences.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectAllRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectCharacterLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectCharacterRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectHorizontalLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectHorizontalRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectInsideString.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectLine.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectNextOccurrence.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectPreviousOccurrence.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectWord.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectWordLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelectWordRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSetDecorations.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSetDeltaY.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSetLanguageId.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandShowMessage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandSnippet.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandTabCompletion.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandToggleBlockComment.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandToggleComment.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandToggleLineComment.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandType.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandUndo.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorCommandUnindent.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorCommand/EditorIndent.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorDiagnostics/EditorDiagnostics.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorDiagnostics/EditorDiagnostics.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorError/EditorError.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorError/EditorError.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorRename/EditorRename.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorRename/EditorRename.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/EditorSelection/EditorSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ErrorHandling/ErrorHandling.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ErrorHandling/ErrorHandling.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Errors/CancelationError.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Errors/Errors.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostBraceCompletion.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostClosingTagCompletion.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostCommands.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostCompletion.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostCore.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostCore.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostDefinition.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostDiagnostic.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostFileSystem.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostFormatting.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostHover.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostImplementation.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostLanguages.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostOutput.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostQuickPick.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostReference.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostRename.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostSemanticTokens.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostShared.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostSourceControl.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostStatusBarItems.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostTabCompletion.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostTextDocument.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/ExtensionHostTypeDefinition.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHost/shared.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostIpc/ExtensionHostIpc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostIpc/ExtensionHostIpcWithMessagePort.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostIpc/ExtensionHostIpcWithModuleWorker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostIpc/ExtensionHostIpcWithReferencePort.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostIpc/ExtensionHostIpcWithSharedProcess.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostIpc/ExtensionHostIpcWithWebSocket.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostManagement/ExtensionHostManagement.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostManagement/ExtensionHostManagementBrowser.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostManagement/ExtensionHostManagementNode.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionHostManagement/ExtensionHostManagementShared.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionManagement/ExtensionManagement.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionMarketplace/ExtensionMarketplace.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionMeta/ExtensionMeta.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionMeta/ExtensionMeta.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Extensions/Extensions.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Extensions/Extensions.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ExtensionsSomething/ExtensionsSomething.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystem.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystem.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemApp.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemAppMemoryUsage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemAppRecentlyOpened.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemAppSession.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemAppSettings.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemAppShared.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemAppStartupPerformance.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemData.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemDisk.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemGitHub.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemMemory.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FileSystem/FileSystemWeb.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FindInWorkspace/FindInWorkspace.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FindInWorkspace/FindInWorkspace.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FindWidget/FindWidget.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FindWidget/FindWidget.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Focus/Focus.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Format/Format.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Format/Format.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FuzzySearch/FuzzySearch.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/FuzzySearch/FuzzySearchMrAleph.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/GitHubRestApi/GitHubRestApi.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/GlobalEventBus/GlobalEventBus.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Highlight/Highlight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/History/History.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IconTheme/IconTheme.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IconTheme/IconTheme.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Id/Id.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ImagePreview/ImagePreview.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ImagePreview/ImagePreview.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IndexedDb/IndexedDb.js +1 -1
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/InitData/InitData.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcChild/IpcChild.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcChild/IpcChildWithMessagePort.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcChild/IpcChildWithModuleWorker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcChild/IpcChildWithReferencePort.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcParent/IpcParent.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcParent/IpcParentWithElectron.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcParent/IpcParentWithMessagePort.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcParent/IpcParentWithModuleWorker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcParent/IpcParentWithReferencePort.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/IpcParent/IpcParentWithWebSocket.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Json/Json.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/JsonRpc/JsonRpc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/KeyBindings/KeyBindings.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/KeyBindings/KeyBindings.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/KeyBindingsInitial/KeyBindingsInitial.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/KeyBindingsInitial/KeyBindingsInitial.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/LanguageFeatures/LanguageFeatures.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Languages/Languages.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Layout/Layout.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Layout/Layout.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/LifeCycle/LifeCycle.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/List/List.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Listener/Listener.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Listener/Listener.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/LocalStorage/LocalStorage.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/LocalStorage/LocalStorage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Location/Location.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/Main.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/MainCloseActiveEditor.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/MainCloseAllEditors.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/MainCloseEditorsToTheLeft.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/MainCloseEditorsToTheRight.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/MainFocusFirst.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/MainFocusIndex.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/MainFocusLast.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/MainFocusNext.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Main/MainFocusPrevious.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Menu/Menu.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Menu/Menu.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuCore/MenuCore.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntries.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesActivityBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesActivityBarAdditionalViews.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesEdit.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesEditor.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesExplorer.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesExplorerFile.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesExplorerFolder.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesFile.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesGo.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesHelp.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesManageExtension.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesOpenRecent.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesRun.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesSelection.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesSettings.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesTab.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesTerminal.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesTitleBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/MenuEntries/MenuEntriesView.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Meta/Meta.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Navigation/Navigation.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Navigation/Navigation.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/NestedError/NestedError.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Notification/Notification.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Notification/Notification.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Open/Open.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Open/Open.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Performance/Performance.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Platform/Platform.js +2 -2
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Preferences/Preferences.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Preferences/Preferences.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickColorTheme.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickCommand.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickEverything.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickFile.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickGoToLine.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickNoop.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickNumber.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickOpenRecent.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickSymbol.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickView.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/QuickPick/QuickPickWorkspaceSymbol.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/RecentlyOpened/RecentlyOpened.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/RecentlyOpened/RecentlyOpened.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/RendererProcess/RendererProcess.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SaveState/SaveState.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SaveState/SaveState.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ServiceWorker/ServiceWorker.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ServiceWorker/ServiceWorker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SessionReplay/SessionReplay.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SessionReplay/SessionReplay.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SessionStorage/SessionStorage.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SessionStorage/SessionStorage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SharedProcess/SharedProcess.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SourceControl/SourceControl.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SourceControl/SourceControl.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Storage/Storage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/SyntaxHighlightingWorker/SyntaxHighlightingWorker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Test/Test.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Test/Test.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWork/Locator.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWork/TestFrameWork.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWorkComponent/TestFrameWorkComponent.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWorkComponent/TestFrameWorkComponentContextMenu.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWorkComponent/TestFrameWorkComponentEditor.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWorkComponent/TestFrameWorkComponentExplorer.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWorkComponent/TestFrameWorkComponentExtension.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWorkComponent/TestFrameWorkComponentFileSystem.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWorkComponent/TestFrameWorkComponentKeyBoard.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWorkComponent/TestFrameWorkComponentMain.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TestFrameWorkComponent/TestFrameWorkComponentWorkspace.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TextDocument/TextDocument.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TextSegmenter/TextSegmenter.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Timers/Timers.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TitleBarMenuBar/TitleBarMenuBar.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/TitleBarMenuBar/TitleBarMenuBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Tokenizer/TokenizePlainText.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Tokenizer/Tokenizer.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/VError/VError.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Viewlet/Viewlet.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Viewlet/Viewlet.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Viewlet/ViewletExtension.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Viewlet/ViewletExtensionsHeader.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Viewlet/ViewletExtensionsList.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletActivityBar/ViewletActivityBar.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletActivityBar/ViewletActivityBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletClock/ViewletClock.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletClock/ViewletClock.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletContextMenu/ViewletContextMenu.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletCounter/ViewletCounter.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletDebugConsole/ViewletDebugConsole.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletDebugConsole/ViewletDebugConsole.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletEditorCompletion/ViewletEditorCompletion.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletEditorCompletion/ViewletEditorCompletion.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletEditorImage/ViewletEditorImage.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletEditorImage/ViewletEditorImage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletEditorPlainText/ViewletEditorPlainText.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletEditorPlainText/ViewletEditorPlainText.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletEditorText/ViewletEditorText.ipc.js +2 -2
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletEditorText/ViewletEditorText.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletEmpty/ViewletEmpty.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletExplorer/ViewletExplorer.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletExplorer/ViewletExplorer.js +48 -15
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletExtensions/ViewletExtensions.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletExtensions/ViewletExtensions.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletIframe/ViewletIframe.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletImplementations/ViewletImplementations.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletImplementations/ViewletImplementations.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletList/ViewletList.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletList/ViewletList.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletLocations/ViewletLocations.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletLocations/ViewletLocations.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletMain/ViewletMain.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletMain/ViewletMain.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletManager/ViewletManager.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletNoop/ViewletNoop.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletNoop/ViewletNoop.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletOutput/ViewletOutput.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletOutput/ViewletOutput.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletPanel/ViewletPanel.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletPanel/ViewletPanel.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletProblems/ViewletProblems.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletProblems/ViewletProblems.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletQuickPick/ViewletQuickPick.ipc.js +1 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletQuickPick/ViewletQuickPick.js +89 -65
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletReferences/ViewletReferences.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletReferences/ViewletReferences.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletRunAndDebug/ViewletRunAndDebug.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletRunAndDebug/ViewletRunAndDebug.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletSearch/ViewletSearch.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletSearch/ViewletSearch.js +12 -11
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletSideBar/ViewletSideBar.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletSideBar/ViewletSideBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletSourceControl/ViewletSourceControl.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletSourceControl/ViewletSourceControl.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletStates/ViewletStates.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletStatusBar/ViewletStatusBar.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletStatusBar/ViewletStatusBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletTerminal/ViewletTerminal.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletTerminal/ViewletTerminal.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletTitleBar/ViewletTitleBar.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletTitleBar/ViewletTitleBar.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/ViewletTodoList/ViewletTodoList.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/WebSocket/WebSocket.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/WebSocket/WebSocketNew.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/WebStorage/WebStorage.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Window/Window.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Window/Window.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Workbench/Workbench.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Workbench/Workbench.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Worker/Worker.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Workspace/Workspace.ipc.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/parts/Workspace/Workspace.js +0 -0
- package/static/{56ac02a → 0e4d46a}/packages/renderer-worker/src/rendererWorkerMain.js +0 -0
- package/static/{56ac02a → 0e4d46a}/sounds/bell.oga +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/blob-util.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/idb/build/async-iterators.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/idb/build/index.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/idb/build/wrap-idb-value.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/idb/with-async-ittr.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/js-base64.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/ky.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/p-min-delay.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/pretty-bytes.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/termterm.js +0 -0
- package/static/{56ac02a → 0e4d46a}/static/js/yoctodelay.js +0 -0
- package/static/index.html +7 -7
- package/static/manifest.json +2 -2
- package/static/serviceWorker.js +1 -1
- package/static/56ac02a/packages/renderer-process/dist/Audio.ipc.js +0 -13
- package/static/56ac02a/packages/renderer-process/dist/Audio.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ClipBoard.ipc.js +0 -18
- package/static/56ac02a/packages/renderer-process/dist/ClipBoard.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/Developer.ipc.js +0 -80
- package/static/56ac02a/packages/renderer-process/dist/Developer.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/Dialog.ipc.js +0 -182
- package/static/56ac02a/packages/renderer-process/dist/Dialog.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/Download.ipc.js +0 -15
- package/static/56ac02a/packages/renderer-process/dist/Download.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/EditorError.ipc.js +0 -73
- package/static/56ac02a/packages/renderer-process/dist/EditorError.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/EditorHover.ipc.js +0 -20
- package/static/56ac02a/packages/renderer-process/dist/EditorHover.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/EditorRename.ipc.js +0 -46
- package/static/56ac02a/packages/renderer-process/dist/EditorRename.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/FindWidget.ipc.js +0 -67
- package/static/56ac02a/packages/renderer-process/dist/FindWidget.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ImagePreview.ipc.js +0 -12
- package/static/56ac02a/packages/renderer-process/dist/ImagePreview.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ImagePreview.js +0 -72
- package/static/56ac02a/packages/renderer-process/dist/ImagePreview.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/InitData.ipc.js +0 -24
- package/static/56ac02a/packages/renderer-process/dist/InitData.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/InputBox.js +0 -13
- package/static/56ac02a/packages/renderer-process/dist/InputBox.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/Menu.ipc.js +0 -14
- package/static/56ac02a/packages/renderer-process/dist/Menu.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/Meta.ipc.js +0 -17
- package/static/56ac02a/packages/renderer-process/dist/Meta.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/Notification.ipc.js +0 -76
- package/static/56ac02a/packages/renderer-process/dist/Notification.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/Open.ipc.js +0 -12
- package/static/56ac02a/packages/renderer-process/dist/Open.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/TestFrameWork.ipc.js +0 -515
- package/static/56ac02a/packages/renderer-process/dist/TestFrameWork.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletClock.js +0 -25
- package/static/56ac02a/packages/renderer-process/dist/ViewletClock.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletDebugConsole.js +0 -27
- package/static/56ac02a/packages/renderer-process/dist/ViewletDebugConsole.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletEditorCompletion.js +0 -134
- package/static/56ac02a/packages/renderer-process/dist/ViewletEditorCompletion.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletEditorImage.js +0 -27
- package/static/56ac02a/packages/renderer-process/dist/ViewletEditorImage.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletEditorPlainText.js +0 -24
- package/static/56ac02a/packages/renderer-process/dist/ViewletEditorPlainText.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletEditorText.js +0 -49
- package/static/56ac02a/packages/renderer-process/dist/ViewletEditorText.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletEmpty.js +0 -19
- package/static/56ac02a/packages/renderer-process/dist/ViewletEmpty.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletExplorer.js +0 -420
- package/static/56ac02a/packages/renderer-process/dist/ViewletExplorer.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletExtensions.js +0 -465
- package/static/56ac02a/packages/renderer-process/dist/ViewletExtensions.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletImplementations.js +0 -7
- package/static/56ac02a/packages/renderer-process/dist/ViewletImplementations.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletLocations.js +0 -140
- package/static/56ac02a/packages/renderer-process/dist/ViewletLocations.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletMain.js +0 -463
- package/static/56ac02a/packages/renderer-process/dist/ViewletMain.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletOutput.js +0 -97
- package/static/56ac02a/packages/renderer-process/dist/ViewletOutput.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletPanel.js +0 -115
- package/static/56ac02a/packages/renderer-process/dist/ViewletPanel.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletProblems.js +0 -48
- package/static/56ac02a/packages/renderer-process/dist/ViewletProblems.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletQuickPick.js +0 -343
- package/static/56ac02a/packages/renderer-process/dist/ViewletQuickPick.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletReferences.js +0 -7
- package/static/56ac02a/packages/renderer-process/dist/ViewletReferences.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletRunAndDebug.js +0 -42
- package/static/56ac02a/packages/renderer-process/dist/ViewletRunAndDebug.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletSearch.js +0 -173
- package/static/56ac02a/packages/renderer-process/dist/ViewletSearch.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletSideBar.js +0 -59
- package/static/56ac02a/packages/renderer-process/dist/ViewletSideBar.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletSourceControl.js +0 -93
- package/static/56ac02a/packages/renderer-process/dist/ViewletSourceControl.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/ViewletTerminal.js +0 -1628
- package/static/56ac02a/packages/renderer-process/dist/ViewletTerminal.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/WebStorage.ipc.js +0 -41
- package/static/56ac02a/packages/renderer-process/dist/WebStorage.ipc.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/renderer-process.modern.js +0 -2
- package/static/56ac02a/packages/renderer-process/dist/renderer-process.modern.js.map +0 -1
- package/static/56ac02a/packages/renderer-process/dist/rendererProcessMain.js +0 -3937
- package/static/56ac02a/packages/renderer-process/dist/rendererProcessMain.js.map +0 -1
- package/static/56ac02a/packages/renderer-worker/dist/rendererWorkerMain.js +0 -22959
- package/static/56ac02a/packages/renderer-worker/dist/rendererWorkerMain.js.map +0 -1
|
@@ -1,3937 +0,0 @@
|
|
|
1
|
-
const MODULE_NOTIFICATION = 2;
|
|
2
|
-
const MODULE_VIEW_SERVICE = 9;
|
|
3
|
-
const MODULE_WINDOW = 14;
|
|
4
|
-
const MODULE_DEVELOPER = 15;
|
|
5
|
-
const MODULE_LAYOUT = 16;
|
|
6
|
-
const MODULE_PANEL = 18;
|
|
7
|
-
const MODULE_WORKBENCH = 20;
|
|
8
|
-
const MODULE_VIEWLET = 21;
|
|
9
|
-
const MODULE_FIND_WIDGET = 23;
|
|
10
|
-
const MODULE_KEYBINDINGS = 26;
|
|
11
|
-
const MODULE_MENU = 31;
|
|
12
|
-
const MODULE_DIALOG = 36;
|
|
13
|
-
const MODULE_EDITOR_HOVER = 37;
|
|
14
|
-
const MODULE_CSS = 38;
|
|
15
|
-
const MODULE_EDITOR_RENAME = 39;
|
|
16
|
-
const MODULE_EDITOR_ERROR = 40;
|
|
17
|
-
const MODULE_EDITOR_CONTROLLER = 41;
|
|
18
|
-
const MODULE_SERVICE_WORKER = 42;
|
|
19
|
-
const MODULE_IMAGE_PREVIEW = 43;
|
|
20
|
-
const MODULE_LOCATION = 44;
|
|
21
|
-
const MODULE_AUDIO = 45;
|
|
22
|
-
const MODULE_META = 46;
|
|
23
|
-
const MODULE_DOWNLOAD = 47;
|
|
24
|
-
const MODULE_OPEN = 48;
|
|
25
|
-
const MODULE_CLIPBOARD = 49;
|
|
26
|
-
const MODULE_INIT_DATA = 50;
|
|
27
|
-
const MODULE_TEST_FRAME_WORK = 51;
|
|
28
|
-
const MODULE_WEB_STORAGE = 52;
|
|
29
|
-
|
|
30
|
-
const state$9 = {
|
|
31
|
-
commands: Object.create(null),
|
|
32
|
-
pendingModules: Object.create(null),
|
|
33
|
-
};
|
|
34
|
-
|
|
35
|
-
const loadModule = (moduleId) => {
|
|
36
|
-
switch (moduleId) {
|
|
37
|
-
case MODULE_NOTIFICATION:
|
|
38
|
-
return import('./Notification.ipc.js')
|
|
39
|
-
case MODULE_WINDOW:
|
|
40
|
-
return Promise.resolve().then(function () { return M30; })
|
|
41
|
-
case MODULE_DEVELOPER:
|
|
42
|
-
return import('./Developer.ipc.js')
|
|
43
|
-
case MODULE_LAYOUT:
|
|
44
|
-
return Promise.resolve().then(function () { return M2; })
|
|
45
|
-
case MODULE_VIEWLET:
|
|
46
|
-
return Promise.resolve().then(function () { return M6; })
|
|
47
|
-
case MODULE_FIND_WIDGET:
|
|
48
|
-
return import('./FindWidget.ipc.js')
|
|
49
|
-
case MODULE_KEYBINDINGS:
|
|
50
|
-
return Promise.resolve().then(function () { return M7; })
|
|
51
|
-
case MODULE_MENU:
|
|
52
|
-
return import('./Menu.ipc.js')
|
|
53
|
-
case MODULE_WEB_STORAGE:
|
|
54
|
-
return import('./WebStorage.ipc.js')
|
|
55
|
-
case MODULE_DIALOG:
|
|
56
|
-
return import('./Dialog.ipc.js')
|
|
57
|
-
case MODULE_EDITOR_HOVER:
|
|
58
|
-
return import('./EditorHover.ipc.js')
|
|
59
|
-
case MODULE_CSS:
|
|
60
|
-
return Promise.resolve().then(function () { return M1; })
|
|
61
|
-
case MODULE_EDITOR_RENAME:
|
|
62
|
-
return import('./EditorRename.ipc.js')
|
|
63
|
-
case MODULE_EDITOR_ERROR:
|
|
64
|
-
return import('./EditorError.ipc.js')
|
|
65
|
-
case MODULE_SERVICE_WORKER:
|
|
66
|
-
return Promise.resolve().then(function () { return M22; })
|
|
67
|
-
case MODULE_IMAGE_PREVIEW:
|
|
68
|
-
return import('./ImagePreview.ipc.js')
|
|
69
|
-
case MODULE_LOCATION:
|
|
70
|
-
return Promise.resolve().then(function () { return M26; })
|
|
71
|
-
case MODULE_AUDIO:
|
|
72
|
-
return import('./Audio.ipc.js')
|
|
73
|
-
case MODULE_META:
|
|
74
|
-
return import('./Meta.ipc.js')
|
|
75
|
-
case MODULE_DOWNLOAD:
|
|
76
|
-
return import('./Download.ipc.js')
|
|
77
|
-
case MODULE_OPEN:
|
|
78
|
-
return import('./Open.ipc.js')
|
|
79
|
-
case MODULE_CLIPBOARD:
|
|
80
|
-
return import('./ClipBoard.ipc.js')
|
|
81
|
-
case MODULE_INIT_DATA:
|
|
82
|
-
return import('./InitData.ipc.js')
|
|
83
|
-
case MODULE_TEST_FRAME_WORK:
|
|
84
|
-
return import('./TestFrameWork.ipc.js')
|
|
85
|
-
default:
|
|
86
|
-
throw new Error('unknown module')
|
|
87
|
-
}
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
const getOrLoadModule = (moduleId) => {
|
|
91
|
-
if (!state$9.pendingModules[moduleId]) {
|
|
92
|
-
const importPromise = loadModule(moduleId);
|
|
93
|
-
state$9.pendingModules[moduleId] = importPromise.then((module) =>
|
|
94
|
-
module.__initialize__()
|
|
95
|
-
);
|
|
96
|
-
}
|
|
97
|
-
return state$9.pendingModules[moduleId]
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
const getModuleId = (commandId) => {
|
|
101
|
-
switch (commandId) {
|
|
102
|
-
case 'TestFrameWork.showOverlay':
|
|
103
|
-
case 'TestFrameWork.performAction':
|
|
104
|
-
case 'TestFrameWork.checkSingleElementCondition':
|
|
105
|
-
case 'TestFrameWork.checkMultiElementCondition':
|
|
106
|
-
case 'TestFrameWork.performKeyBoardAction':
|
|
107
|
-
return MODULE_TEST_FRAME_WORK
|
|
108
|
-
case 'ClipBoard.readText':
|
|
109
|
-
case 'ClipBoard.writeText':
|
|
110
|
-
return MODULE_CLIPBOARD
|
|
111
|
-
case 'Developer.showState':
|
|
112
|
-
case 'Developer.getMemoryUsage':
|
|
113
|
-
return MODULE_DEVELOPER
|
|
114
|
-
case 'Download.downloadFile':
|
|
115
|
-
return MODULE_DOWNLOAD
|
|
116
|
-
case 'Open.openUrl':
|
|
117
|
-
return MODULE_OPEN
|
|
118
|
-
case 'InitData.getInitData':
|
|
119
|
-
return MODULE_INIT_DATA
|
|
120
|
-
case 549:
|
|
121
|
-
case 550:
|
|
122
|
-
case 551:
|
|
123
|
-
return MODULE_VIEW_SERVICE
|
|
124
|
-
case 'KeyBindings.hydrate':
|
|
125
|
-
return MODULE_KEYBINDINGS
|
|
126
|
-
case 764:
|
|
127
|
-
case 765:
|
|
128
|
-
case 766:
|
|
129
|
-
case 767:
|
|
130
|
-
case 768:
|
|
131
|
-
case 769:
|
|
132
|
-
case 770:
|
|
133
|
-
case 771:
|
|
134
|
-
case 772:
|
|
135
|
-
case 773:
|
|
136
|
-
case 774:
|
|
137
|
-
case 775:
|
|
138
|
-
case 776:
|
|
139
|
-
case 777:
|
|
140
|
-
return MODULE_EDITOR_CONTROLLER
|
|
141
|
-
case 'Notification.create':
|
|
142
|
-
case 'Notification.dispose':
|
|
143
|
-
case 'Notification.createWithOptions':
|
|
144
|
-
return MODULE_NOTIFICATION
|
|
145
|
-
case 'Layout.update':
|
|
146
|
-
case 'Layout.hydrate':
|
|
147
|
-
case 'Layout.hide':
|
|
148
|
-
case 'Layout.getBounds':
|
|
149
|
-
case 'Layout.show':
|
|
150
|
-
return MODULE_LAYOUT
|
|
151
|
-
case 'Viewlet.refresh':
|
|
152
|
-
case 'Viewlet.invoke':
|
|
153
|
-
case 'Viewlet.send':
|
|
154
|
-
case 'Viewlet.focus':
|
|
155
|
-
case 'Viewlet.dispose':
|
|
156
|
-
case 'Viewlet.appendViewlet':
|
|
157
|
-
case 'Viewlet.load':
|
|
158
|
-
case 'Viewlet.handleError':
|
|
159
|
-
case 'Viewlet.sendMultiple':
|
|
160
|
-
return MODULE_VIEWLET
|
|
161
|
-
case 'Audio.play':
|
|
162
|
-
return MODULE_AUDIO
|
|
163
|
-
case 'ImagePreview.create':
|
|
164
|
-
case 'ImagePreview.dispose':
|
|
165
|
-
case 'ImagePreview.update':
|
|
166
|
-
case 'ImagePreview.showError':
|
|
167
|
-
return MODULE_IMAGE_PREVIEW
|
|
168
|
-
case 'EditorError.create':
|
|
169
|
-
return MODULE_EDITOR_ERROR
|
|
170
|
-
|
|
171
|
-
case 'FindWidget.create':
|
|
172
|
-
case 'FindWidget.dispose':
|
|
173
|
-
case 'FindWidget.setResults':
|
|
174
|
-
return MODULE_FIND_WIDGET
|
|
175
|
-
case 'EditorRename.create':
|
|
176
|
-
case 'EditorRename.finish':
|
|
177
|
-
case 'EditorRename.dispose':
|
|
178
|
-
return MODULE_EDITOR_RENAME
|
|
179
|
-
case 'Css.setInlineStyle':
|
|
180
|
-
return MODULE_CSS
|
|
181
|
-
case 'Location.getPathName':
|
|
182
|
-
case 'Location.setPathName':
|
|
183
|
-
case 'Location.hydrate':
|
|
184
|
-
case 'Location.getHref':
|
|
185
|
-
return MODULE_LOCATION
|
|
186
|
-
case 'EditorHover.create':
|
|
187
|
-
return MODULE_EDITOR_HOVER
|
|
188
|
-
case 6661:
|
|
189
|
-
case 6662:
|
|
190
|
-
case 6663:
|
|
191
|
-
case 6664:
|
|
192
|
-
return MODULE_PANEL
|
|
193
|
-
case 33111:
|
|
194
|
-
return MODULE_WORKBENCH
|
|
195
|
-
case 'Dialog.prompt':
|
|
196
|
-
case 'Dialog.alert':
|
|
197
|
-
case 'Dialog.showErrorDialogWithOptions':
|
|
198
|
-
case 'Dialog.close':
|
|
199
|
-
return MODULE_DIALOG
|
|
200
|
-
case 'Menu.showControlled':
|
|
201
|
-
case 'Menu.hide':
|
|
202
|
-
case 'Menu.focusIndex':
|
|
203
|
-
case 'Menu.showSubMenu':
|
|
204
|
-
case 'Menu.hideSubMenu':
|
|
205
|
-
case 'Menu.showMenu':
|
|
206
|
-
case 'Menu.showContextMenu':
|
|
207
|
-
case 'Menu.show':
|
|
208
|
-
return MODULE_MENU
|
|
209
|
-
case 'Window.reload':
|
|
210
|
-
case 'Window.minimize':
|
|
211
|
-
case 'Window.maximize':
|
|
212
|
-
case 'Window.unmaximize':
|
|
213
|
-
case 'Window.close':
|
|
214
|
-
case 'Window.setTitle':
|
|
215
|
-
case 'Window.onVisibilityChange':
|
|
216
|
-
return MODULE_WINDOW
|
|
217
|
-
case 'StorageBrowser.clear':
|
|
218
|
-
case 'StorageBrowser.getItem':
|
|
219
|
-
case 'StorageBrowser.setItem':
|
|
220
|
-
return MODULE_WEB_STORAGE
|
|
221
|
-
case 'Meta.setThemeColor':
|
|
222
|
-
return MODULE_META
|
|
223
|
-
case 'ServiceWorker.register':
|
|
224
|
-
case 'ServiceWorker.uninstall':
|
|
225
|
-
return MODULE_SERVICE_WORKER
|
|
226
|
-
default:
|
|
227
|
-
throw new Error(`command ${commandId} not found`)
|
|
228
|
-
}
|
|
229
|
-
};
|
|
230
|
-
|
|
231
|
-
const loadCommand = async (command) => {
|
|
232
|
-
await getOrLoadModule(getModuleId(command));
|
|
233
|
-
};
|
|
234
|
-
|
|
235
|
-
const register$1 = (commandId, listener) => {
|
|
236
|
-
state$9.commands[commandId] = listener;
|
|
237
|
-
};
|
|
238
|
-
|
|
239
|
-
const hasThrown = new Set();
|
|
240
|
-
|
|
241
|
-
const executeCommandAsync = async (command, ...args) => {
|
|
242
|
-
try {
|
|
243
|
-
await loadCommand(command);
|
|
244
|
-
} catch (error) {
|
|
245
|
-
// @ts-ignore
|
|
246
|
-
throw new Error(`Failed to load command ${command}`, {
|
|
247
|
-
cause: error,
|
|
248
|
-
})
|
|
249
|
-
}
|
|
250
|
-
if (!(command in state$9.commands)) {
|
|
251
|
-
if (hasThrown.has(command)) {
|
|
252
|
-
return
|
|
253
|
-
}
|
|
254
|
-
hasThrown.add(command);
|
|
255
|
-
throw new Error(`Command did not register "${command}"`)
|
|
256
|
-
}
|
|
257
|
-
return execute(command, ...args)
|
|
258
|
-
};
|
|
259
|
-
|
|
260
|
-
const execute = (command, ...args) => {
|
|
261
|
-
if (command in state$9.commands) {
|
|
262
|
-
return state$9.commands[command](...args)
|
|
263
|
-
}
|
|
264
|
-
return executeCommandAsync(command, ...args)
|
|
265
|
-
};
|
|
266
|
-
|
|
267
|
-
const setInlineStyle = (id, css) => {
|
|
268
|
-
const $ExistingStyle = document.getElementById(id);
|
|
269
|
-
if ($ExistingStyle) {
|
|
270
|
-
$ExistingStyle.textContent = css;
|
|
271
|
-
} else {
|
|
272
|
-
const $Style = document.createElement('style');
|
|
273
|
-
$Style.id = id;
|
|
274
|
-
$Style.textContent = css;
|
|
275
|
-
document.head.append($Style);
|
|
276
|
-
}
|
|
277
|
-
};
|
|
278
|
-
|
|
279
|
-
const __initialize__$6 = () => {
|
|
280
|
-
register$1('Css.setInlineStyle', setInlineStyle);
|
|
281
|
-
};
|
|
282
|
-
|
|
283
|
-
var M1 = {
|
|
284
|
-
__proto__: null,
|
|
285
|
-
__initialize__: __initialize__$6
|
|
286
|
-
};
|
|
287
|
-
|
|
288
|
-
const callbacks = Object.create(null);
|
|
289
|
-
|
|
290
|
-
const resolve = (id, result) => {
|
|
291
|
-
if (!(id in callbacks)) {
|
|
292
|
-
console.warn(`callback ${id} may already be disposed`);
|
|
293
|
-
return
|
|
294
|
-
}
|
|
295
|
-
callbacks[id].resolve(result);
|
|
296
|
-
};
|
|
297
|
-
|
|
298
|
-
class JsonRpcError extends Error {
|
|
299
|
-
constructor(message) {
|
|
300
|
-
super(message);
|
|
301
|
-
this.name = 'JsonRpcError';
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
|
|
305
|
-
// TODO treeshake out this whole module in production
|
|
306
|
-
|
|
307
|
-
const getType = (value) => {
|
|
308
|
-
switch (typeof value) {
|
|
309
|
-
case 'number':
|
|
310
|
-
return 'number'
|
|
311
|
-
case 'function':
|
|
312
|
-
return 'function'
|
|
313
|
-
case 'string':
|
|
314
|
-
return 'string'
|
|
315
|
-
case 'object':
|
|
316
|
-
if (value === null) {
|
|
317
|
-
return 'null'
|
|
318
|
-
}
|
|
319
|
-
if (Array.isArray(value)) {
|
|
320
|
-
return 'array'
|
|
321
|
-
}
|
|
322
|
-
return 'object'
|
|
323
|
-
case 'boolean':
|
|
324
|
-
return 'boolean'
|
|
325
|
-
default:
|
|
326
|
-
return 'unknown'
|
|
327
|
-
}
|
|
328
|
-
};
|
|
329
|
-
|
|
330
|
-
const object = (value) => {
|
|
331
|
-
const type = getType(value);
|
|
332
|
-
if (type !== 'object') {
|
|
333
|
-
throw new Error('expected value to be of type object')
|
|
334
|
-
}
|
|
335
|
-
};
|
|
336
|
-
|
|
337
|
-
const number = (value) => {
|
|
338
|
-
const type = getType(value);
|
|
339
|
-
if (type !== 'number') {
|
|
340
|
-
throw new Error('expected value to be of type number')
|
|
341
|
-
}
|
|
342
|
-
};
|
|
343
|
-
|
|
344
|
-
const array = (value) => {
|
|
345
|
-
const type = getType(value);
|
|
346
|
-
if (type !== 'array') {
|
|
347
|
-
throw new Error('expected value to be of type array')
|
|
348
|
-
}
|
|
349
|
-
};
|
|
350
|
-
|
|
351
|
-
const string = (value) => {
|
|
352
|
-
const type = getType(value);
|
|
353
|
-
if (type !== 'string') {
|
|
354
|
-
throw new Error('expected value to be of type string')
|
|
355
|
-
}
|
|
356
|
-
};
|
|
357
|
-
|
|
358
|
-
const boolean = (value) => {
|
|
359
|
-
const type = getType(value);
|
|
360
|
-
if (type !== 'boolean') {
|
|
361
|
-
throw new Error('expected value to be of type boolean')
|
|
362
|
-
}
|
|
363
|
-
};
|
|
364
|
-
|
|
365
|
-
const create$8 = async ({ url }) => {
|
|
366
|
-
string(url);
|
|
367
|
-
const port = await new Promise((resolve) => {
|
|
368
|
-
globalThis.acceptPort = resolve;
|
|
369
|
-
import(url);
|
|
370
|
-
});
|
|
371
|
-
delete globalThis.acceptPort;
|
|
372
|
-
return port
|
|
373
|
-
};
|
|
374
|
-
|
|
375
|
-
var IpcParentWithMessagePort = {
|
|
376
|
-
__proto__: null,
|
|
377
|
-
create: create$8
|
|
378
|
-
};
|
|
379
|
-
|
|
380
|
-
const getDisplayName = (name) => {
|
|
381
|
-
if (!name) {
|
|
382
|
-
return '<unknown> worker'
|
|
383
|
-
}
|
|
384
|
-
if (name.endsWith('Worker')) {
|
|
385
|
-
return name.toLowerCase()
|
|
386
|
-
}
|
|
387
|
-
return `${name} worker`
|
|
388
|
-
};
|
|
389
|
-
|
|
390
|
-
const tryToGetActualErrorMessage = async ({ url, name }) => {
|
|
391
|
-
const displayName = getDisplayName(name);
|
|
392
|
-
try {
|
|
393
|
-
await import(url);
|
|
394
|
-
return `Failed to start ${displayName}: Unknown Error`
|
|
395
|
-
} catch (error) {
|
|
396
|
-
if (
|
|
397
|
-
error &&
|
|
398
|
-
error instanceof Error &&
|
|
399
|
-
error.message.startsWith('Failed to fetch dynamically imported module')
|
|
400
|
-
) {
|
|
401
|
-
try {
|
|
402
|
-
const response = await fetch(url);
|
|
403
|
-
switch (response.status) {
|
|
404
|
-
case 404:
|
|
405
|
-
return `Failed to start ${displayName}: Not found (404)`
|
|
406
|
-
default:
|
|
407
|
-
return `Failed to start ${displayName}: Unknown Network Error`
|
|
408
|
-
}
|
|
409
|
-
} catch {
|
|
410
|
-
return `Failed to start ${displayName}: Unknown Network Error`
|
|
411
|
-
}
|
|
412
|
-
}
|
|
413
|
-
return `Failed to start ${displayName}: ${error}`
|
|
414
|
-
}
|
|
415
|
-
};
|
|
416
|
-
|
|
417
|
-
const isFirefoxError = (message) => {
|
|
418
|
-
return [
|
|
419
|
-
'SyntaxError: import declarations may only appear at top level of a module',
|
|
420
|
-
'SyntaxError: export declarations may only appear at top level of a module',
|
|
421
|
-
].includes(message)
|
|
422
|
-
};
|
|
423
|
-
|
|
424
|
-
const create$7 = async ({ url, name }) => {
|
|
425
|
-
try {
|
|
426
|
-
const worker = new Worker(url, {
|
|
427
|
-
type: 'module',
|
|
428
|
-
name,
|
|
429
|
-
});
|
|
430
|
-
await new Promise((resolve, reject) => {
|
|
431
|
-
const cleanup = () => {
|
|
432
|
-
worker.onmessage = null;
|
|
433
|
-
worker.onerror = null;
|
|
434
|
-
};
|
|
435
|
-
const handleFirstMessage = (event) => {
|
|
436
|
-
cleanup();
|
|
437
|
-
if (event.data === 'ready') {
|
|
438
|
-
resolve(undefined);
|
|
439
|
-
} else {
|
|
440
|
-
reject(new Error('unexpected first message from renderer worker'));
|
|
441
|
-
}
|
|
442
|
-
};
|
|
443
|
-
const handleFirstError = async (event) => {
|
|
444
|
-
cleanup();
|
|
445
|
-
if (isFirefoxError(event.message)) {
|
|
446
|
-
event.preventDefault();
|
|
447
|
-
reject(new Error('module workers are not supported in firefox'));
|
|
448
|
-
} else {
|
|
449
|
-
const actualErrorMessage = await tryToGetActualErrorMessage({
|
|
450
|
-
url,
|
|
451
|
-
name,
|
|
452
|
-
});
|
|
453
|
-
reject(new Error(actualErrorMessage));
|
|
454
|
-
}
|
|
455
|
-
};
|
|
456
|
-
worker.onmessage = handleFirstMessage;
|
|
457
|
-
worker.onerror = handleFirstError;
|
|
458
|
-
});
|
|
459
|
-
return worker
|
|
460
|
-
} catch (error) {
|
|
461
|
-
if (
|
|
462
|
-
error &&
|
|
463
|
-
error instanceof Error &&
|
|
464
|
-
error.message === 'module workers are not supported in firefox'
|
|
465
|
-
) {
|
|
466
|
-
const IpcParentWithMessagePort$1 = await Promise.resolve().then(function () { return IpcParentWithMessagePort; });
|
|
467
|
-
return IpcParentWithMessagePort$1.create({ url })
|
|
468
|
-
}
|
|
469
|
-
throw error
|
|
470
|
-
}
|
|
471
|
-
};
|
|
472
|
-
|
|
473
|
-
const create$6 = async (url) => {
|
|
474
|
-
const referencePort = await new Promise((resolve) => {
|
|
475
|
-
globalThis.acceptReferencePort = resolve;
|
|
476
|
-
import(url);
|
|
477
|
-
});
|
|
478
|
-
delete globalThis.acceptReferencePort;
|
|
479
|
-
return referencePort
|
|
480
|
-
};
|
|
481
|
-
|
|
482
|
-
// TODO lazyload these files
|
|
483
|
-
|
|
484
|
-
/* istanbul ignore file */
|
|
485
|
-
|
|
486
|
-
const Methods = {
|
|
487
|
-
MessagePort: 1,
|
|
488
|
-
ModuleWorker: 2,
|
|
489
|
-
ReferencePort: 3,
|
|
490
|
-
};
|
|
491
|
-
|
|
492
|
-
/**
|
|
493
|
-
* @type {number}
|
|
494
|
-
*/
|
|
495
|
-
const METHOD_PREFERRED = Methods.ModuleWorker;
|
|
496
|
-
|
|
497
|
-
const create$5 = async ({ method, ...options }) => {
|
|
498
|
-
switch (METHOD_PREFERRED) {
|
|
499
|
-
case Methods.ModuleWorker:
|
|
500
|
-
return create$7(options)
|
|
501
|
-
case Methods.MessagePort:
|
|
502
|
-
return create$8(options)
|
|
503
|
-
case Methods.ReferencePort:
|
|
504
|
-
return create$6(options)
|
|
505
|
-
default:
|
|
506
|
-
throw new Error('unknown method')
|
|
507
|
-
}
|
|
508
|
-
};
|
|
509
|
-
|
|
510
|
-
/* istanbul ignore file */
|
|
511
|
-
|
|
512
|
-
// TODO this should always be completely tree shaken out during build
|
|
513
|
-
|
|
514
|
-
/**
|
|
515
|
-
* @returns {'electron'|'remote'|'web'}
|
|
516
|
-
*/
|
|
517
|
-
const getPlatform = () => {
|
|
518
|
-
// @ts-ignore
|
|
519
|
-
{
|
|
520
|
-
// @ts-ignore
|
|
521
|
-
return 'remote'
|
|
522
|
-
}
|
|
523
|
-
};
|
|
524
|
-
|
|
525
|
-
const platform = getPlatform();
|
|
526
|
-
|
|
527
|
-
// TODO treeshake this function out when targeting electron
|
|
528
|
-
|
|
529
|
-
const state$8 = {
|
|
530
|
-
cachedIsMobileOrTablet: undefined,
|
|
531
|
-
isMobileOrTablet() {
|
|
532
|
-
// @ts-ignore
|
|
533
|
-
const userAgentData = navigator.userAgentData;
|
|
534
|
-
if (userAgentData && userAgentData.mobile) {
|
|
535
|
-
return true
|
|
536
|
-
}
|
|
537
|
-
// copied from https://stackoverflow.com/questions/11381673/detecting-a-mobile-browser
|
|
538
|
-
let check = false
|
|
539
|
-
;(function (a) {
|
|
540
|
-
if (
|
|
541
|
-
/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(
|
|
542
|
-
a
|
|
543
|
-
) ||
|
|
544
|
-
/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[23]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(
|
|
545
|
-
a.slice(0, 4)
|
|
546
|
-
)
|
|
547
|
-
) {
|
|
548
|
-
check = true;
|
|
549
|
-
}
|
|
550
|
-
// @ts-ignore
|
|
551
|
-
})(navigator.userAgent || navigator.vendor || window.opera);
|
|
552
|
-
return check
|
|
553
|
-
},
|
|
554
|
-
getAssetDir() {
|
|
555
|
-
// @ts-ignore
|
|
556
|
-
{
|
|
557
|
-
// @ts-ignore
|
|
558
|
-
return '/56ac02a'
|
|
559
|
-
}
|
|
560
|
-
},
|
|
561
|
-
supportsHtml5Dialog() {
|
|
562
|
-
const $Dialog = document.createElement('dialog');
|
|
563
|
-
// @ts-ignore
|
|
564
|
-
return typeof $Dialog.showModal === 'function'
|
|
565
|
-
},
|
|
566
|
-
isElectron() {
|
|
567
|
-
return (
|
|
568
|
-
// @ts-ignore
|
|
569
|
-
window.myApi &&
|
|
570
|
-
// @ts-ignore
|
|
571
|
-
window.myApi.ipcConnect &&
|
|
572
|
-
// @ts-ignore
|
|
573
|
-
typeof window.myApi.ipcConnect === 'function'
|
|
574
|
-
)
|
|
575
|
-
},
|
|
576
|
-
};
|
|
577
|
-
|
|
578
|
-
const isMobileOrTablet = () => {
|
|
579
|
-
return state$8.isMobileOrTablet()
|
|
580
|
-
};
|
|
581
|
-
|
|
582
|
-
// TODO if necessary support more browser detection
|
|
583
|
-
const getBrowser = () => {
|
|
584
|
-
if (platform === 'electron') {
|
|
585
|
-
return 'electron'
|
|
586
|
-
}
|
|
587
|
-
// @ts-ignore
|
|
588
|
-
const userAgentData = navigator.userAgentData;
|
|
589
|
-
if (userAgentData) {
|
|
590
|
-
for (const brand of userAgentData.brands) {
|
|
591
|
-
const actualBrand = brand.brand.toLowerCase();
|
|
592
|
-
switch (actualBrand) {
|
|
593
|
-
case 'firefox':
|
|
594
|
-
return 'firefox'
|
|
595
|
-
case 'chromium':
|
|
596
|
-
return 'chromium'
|
|
597
|
-
}
|
|
598
|
-
}
|
|
599
|
-
}
|
|
600
|
-
const userAgent = navigator.userAgent.toLowerCase();
|
|
601
|
-
if (userAgent.includes('firefox')) {
|
|
602
|
-
return 'firefox'
|
|
603
|
-
}
|
|
604
|
-
if (userAgent.includes('Electron')) {
|
|
605
|
-
return 'electron'
|
|
606
|
-
}
|
|
607
|
-
return 'chromium'
|
|
608
|
-
};
|
|
609
|
-
|
|
610
|
-
const getAssetDir = () => {
|
|
611
|
-
return state$8.getAssetDir()
|
|
612
|
-
};
|
|
613
|
-
|
|
614
|
-
const supportsHtml5Dialog = () => {
|
|
615
|
-
return state$8.supportsHtml5Dialog()
|
|
616
|
-
};
|
|
617
|
-
|
|
618
|
-
const isElectron = () => {
|
|
619
|
-
return state$8.isElectron()
|
|
620
|
-
};
|
|
621
|
-
|
|
622
|
-
const getRendererWorkerUrl = () => {
|
|
623
|
-
const assetDir = getAssetDir();
|
|
624
|
-
const urlRendererWorker = `${assetDir}/packages/renderer-worker/src/rendererWorkerMain.js`;
|
|
625
|
-
return urlRendererWorker
|
|
626
|
-
};
|
|
627
|
-
|
|
628
|
-
var M18 = {
|
|
629
|
-
__proto__: null,
|
|
630
|
-
platform: platform,
|
|
631
|
-
state: state$8,
|
|
632
|
-
isMobileOrTablet: isMobileOrTablet,
|
|
633
|
-
getBrowser: getBrowser,
|
|
634
|
-
getAssetDir: getAssetDir,
|
|
635
|
-
supportsHtml5Dialog: supportsHtml5Dialog,
|
|
636
|
-
isElectron: isElectron,
|
|
637
|
-
getRendererWorkerUrl: getRendererWorkerUrl
|
|
638
|
-
};
|
|
639
|
-
|
|
640
|
-
// const URL_RENDERER_WORKER =
|
|
641
|
-
// '/packages/renderer-worker/distmin/rendererWorkerMain-0ead0bed.js'
|
|
642
|
-
|
|
643
|
-
const state$7 = {
|
|
644
|
-
/**
|
|
645
|
-
* @type {any}
|
|
646
|
-
*/
|
|
647
|
-
ipc: undefined,
|
|
648
|
-
};
|
|
649
|
-
|
|
650
|
-
class NonError extends Error {
|
|
651
|
-
name = 'NonError'
|
|
652
|
-
|
|
653
|
-
constructor(message) {
|
|
654
|
-
super(message);
|
|
655
|
-
}
|
|
656
|
-
}
|
|
657
|
-
|
|
658
|
-
// ensureError based on https://github.com/sindresorhus/ensure-error/blob/main/index.js (License MIT)
|
|
659
|
-
const ensureError = (input) => {
|
|
660
|
-
if (!(input instanceof Error)) {
|
|
661
|
-
return new NonError(input)
|
|
662
|
-
}
|
|
663
|
-
return input
|
|
664
|
-
};
|
|
665
|
-
|
|
666
|
-
const serializeError = (error) => {
|
|
667
|
-
error = ensureError(error);
|
|
668
|
-
return {
|
|
669
|
-
stack: error.stack,
|
|
670
|
-
message: error.message,
|
|
671
|
-
}
|
|
672
|
-
};
|
|
673
|
-
|
|
674
|
-
const handleMessageFromRendererWorker = async (event) => {
|
|
675
|
-
const message = event.data;
|
|
676
|
-
if ('id' in message) {
|
|
677
|
-
if ('method' in message) {
|
|
678
|
-
try {
|
|
679
|
-
const result = await execute(message.method, ...message.params);
|
|
680
|
-
state$7.ipc.send({
|
|
681
|
-
jsonrpc: '2.0',
|
|
682
|
-
id: message.id,
|
|
683
|
-
result,
|
|
684
|
-
});
|
|
685
|
-
return
|
|
686
|
-
} catch (error) {
|
|
687
|
-
const serializedError = serializeError(error);
|
|
688
|
-
state$7.ipc.send({
|
|
689
|
-
jsonrpc: '2.0',
|
|
690
|
-
id: message.id,
|
|
691
|
-
error: {
|
|
692
|
-
message: serializedError.message,
|
|
693
|
-
stack: serializedError.stack,
|
|
694
|
-
},
|
|
695
|
-
});
|
|
696
|
-
}
|
|
697
|
-
return
|
|
698
|
-
}
|
|
699
|
-
resolve(message.id, message);
|
|
700
|
-
return
|
|
701
|
-
}
|
|
702
|
-
throw new JsonRpcError('unexpected message from renderer process')
|
|
703
|
-
};
|
|
704
|
-
|
|
705
|
-
const getIpc = async () => {
|
|
706
|
-
const rendererWorker = await create$5({
|
|
707
|
-
method: Methods.ModuleWorker,
|
|
708
|
-
url: getRendererWorkerUrl(),
|
|
709
|
-
name: 'Renderer Worker',
|
|
710
|
-
});
|
|
711
|
-
return {
|
|
712
|
-
send(message) {
|
|
713
|
-
rendererWorker.postMessage(message);
|
|
714
|
-
},
|
|
715
|
-
sendAndTransfer(message, transferables) {
|
|
716
|
-
rendererWorker.postMessage(message, transferables);
|
|
717
|
-
},
|
|
718
|
-
get onmessage() {
|
|
719
|
-
return rendererWorker.onmessage
|
|
720
|
-
},
|
|
721
|
-
set onmessage(listener) {
|
|
722
|
-
rendererWorker.onmessage = listener;
|
|
723
|
-
},
|
|
724
|
-
}
|
|
725
|
-
};
|
|
726
|
-
|
|
727
|
-
const hydrate$2 = async (config) => {
|
|
728
|
-
const ipc = await getIpc();
|
|
729
|
-
|
|
730
|
-
// setup electron message port
|
|
731
|
-
if (isElectron()) {
|
|
732
|
-
await new Promise((resolve, reject) => {
|
|
733
|
-
const handleIpcMessage = (event) => {
|
|
734
|
-
if (event.data !== 'get-port') {
|
|
735
|
-
reject(new Error('unexpected message from renderer worker'));
|
|
736
|
-
return
|
|
737
|
-
}
|
|
738
|
-
const handleMessageFromWindow = (event) => {
|
|
739
|
-
const port = event.ports[0];
|
|
740
|
-
ipc.sendAndTransfer('port', [port]);
|
|
741
|
-
resolve();
|
|
742
|
-
};
|
|
743
|
-
|
|
744
|
-
// @ts-ignore
|
|
745
|
-
window.addEventListener('message', handleMessageFromWindow, {
|
|
746
|
-
once: true,
|
|
747
|
-
});
|
|
748
|
-
// @ts-ignore
|
|
749
|
-
window.myApi.ipcConnect();
|
|
750
|
-
};
|
|
751
|
-
ipc.onmessage = handleIpcMessage;
|
|
752
|
-
});
|
|
753
|
-
}
|
|
754
|
-
ipc.onmessage = handleMessageFromRendererWorker;
|
|
755
|
-
state$7.ipc = ipc;
|
|
756
|
-
};
|
|
757
|
-
|
|
758
|
-
const send$1 = (method, ...params) => {
|
|
759
|
-
state$7.ipc.send({
|
|
760
|
-
jsonrpc: '2.0',
|
|
761
|
-
method,
|
|
762
|
-
params,
|
|
763
|
-
});
|
|
764
|
-
};
|
|
765
|
-
|
|
766
|
-
const state$6 = {
|
|
767
|
-
$ActivityBar: undefined,
|
|
768
|
-
$StatusBar: undefined,
|
|
769
|
-
$TitleBar: undefined,
|
|
770
|
-
$Main: undefined,
|
|
771
|
-
$SideBar: undefined,
|
|
772
|
-
$Panel: undefined,
|
|
773
|
-
$Workbench: undefined,
|
|
774
|
-
$SashSideBar: undefined,
|
|
775
|
-
$SashPanel: undefined,
|
|
776
|
-
};
|
|
777
|
-
|
|
778
|
-
// TODO when nodes are not visible, they are still kept in memory as detached dom nodes
|
|
779
|
-
// maybe it doesn't matter but maybe they should be garbage collected
|
|
780
|
-
|
|
781
|
-
const update = (points) => {
|
|
782
|
-
const $ActivityBar = state$6.$ActivityBar;
|
|
783
|
-
const $Main = state$6.$Main;
|
|
784
|
-
const $TitleBar = state$6.$TitleBar;
|
|
785
|
-
const $SideBar = state$6.$SideBar;
|
|
786
|
-
const $StatusBar = state$6.$StatusBar;
|
|
787
|
-
const $Panel = state$6.$Panel;
|
|
788
|
-
const $SashSideBar = state$6.$SashSideBar;
|
|
789
|
-
const $SashPanel = state$6.$SashPanel;
|
|
790
|
-
|
|
791
|
-
if (points.activityBarVisible) {
|
|
792
|
-
$ActivityBar.style.top = `${points.activityBarTop}px`;
|
|
793
|
-
$ActivityBar.style.left = `${points.activityBarLeft}px`;
|
|
794
|
-
$ActivityBar.style.width = `${points.activityBarWidth}px`;
|
|
795
|
-
$ActivityBar.style.height = `${points.activityBarHeight}px`;
|
|
796
|
-
$ActivityBar.style.display = '';
|
|
797
|
-
} else {
|
|
798
|
-
$ActivityBar.style.display = 'none';
|
|
799
|
-
}
|
|
800
|
-
if (points.mainVisible) {
|
|
801
|
-
$Main.style.top = `${points.mainTop}px`;
|
|
802
|
-
$Main.style.left = `${points.mainLeft}px`;
|
|
803
|
-
$Main.style.width = `${points.mainWidth}px`;
|
|
804
|
-
$Main.style.height = `${points.mainHeight}px`;
|
|
805
|
-
$Main.style.display = '';
|
|
806
|
-
} else {
|
|
807
|
-
$Main.style.display = 'none';
|
|
808
|
-
}
|
|
809
|
-
if (points.panelVisible) {
|
|
810
|
-
$Panel.style.top = `${points.panelTop}px`;
|
|
811
|
-
$Panel.style.left = `${points.panelLeft}px`;
|
|
812
|
-
$Panel.style.width = `${points.panelWidth}px`;
|
|
813
|
-
$Panel.style.height = `${points.panelHeight}px`;
|
|
814
|
-
$Panel.style.display = '';
|
|
815
|
-
|
|
816
|
-
$SashPanel.style.top = `${points.panelTop}px`;
|
|
817
|
-
$SashPanel.style.left = `${points.panelLeft}px`;
|
|
818
|
-
$SashPanel.style.width = `${points.panelWidth}px`;
|
|
819
|
-
} else {
|
|
820
|
-
$Panel.style.display = 'none';
|
|
821
|
-
}
|
|
822
|
-
if (points.sideBarVisible) {
|
|
823
|
-
$SideBar.style.top = `${points.sideBarTop}px`;
|
|
824
|
-
$SideBar.style.left = `${points.sideBarLeft}px`;
|
|
825
|
-
$SideBar.style.width = `${points.sideBarWidth}px`;
|
|
826
|
-
$SideBar.style.height = `${points.sideBarHeight}px`;
|
|
827
|
-
$SideBar.style.display = '';
|
|
828
|
-
|
|
829
|
-
$SashSideBar.style.left = `${points.sideBarLeft}px`;
|
|
830
|
-
$SashSideBar.style.top = `${points.sideBarTop}px`;
|
|
831
|
-
$SashSideBar.style.height = `${points.sideBarHeight}px`;
|
|
832
|
-
} else {
|
|
833
|
-
$SideBar.style.display = 'none';
|
|
834
|
-
}
|
|
835
|
-
if (points.statusBarVisible) {
|
|
836
|
-
$StatusBar.style.top = `${points.statusBarTop}px`;
|
|
837
|
-
$StatusBar.style.left = `${points.statusBarLeft}px`;
|
|
838
|
-
$StatusBar.style.width = `${points.statusBarWidth}px`;
|
|
839
|
-
$StatusBar.style.height = `${points.statusBarHeight}px`;
|
|
840
|
-
$StatusBar.style.display = '';
|
|
841
|
-
} else {
|
|
842
|
-
$StatusBar.style.display = 'none';
|
|
843
|
-
}
|
|
844
|
-
if (points.titleBarVisible) {
|
|
845
|
-
$TitleBar.style.top = `${points.titleBarTop}px`;
|
|
846
|
-
$TitleBar.style.left = `${points.titleBarLeft}px`;
|
|
847
|
-
$TitleBar.style.width = `${points.titleBarWidth}px`;
|
|
848
|
-
$TitleBar.style.height = `${points.titleBarHeight}px`;
|
|
849
|
-
$TitleBar.style.display = '';
|
|
850
|
-
} else {
|
|
851
|
-
// TODO remove elements from dom instead of hiding them
|
|
852
|
-
$TitleBar.style.display = 'none';
|
|
853
|
-
}
|
|
854
|
-
};
|
|
855
|
-
|
|
856
|
-
// export const get$ActivityBar = () => {
|
|
857
|
-
// return state.$ActivityBar
|
|
858
|
-
// }
|
|
859
|
-
|
|
860
|
-
// export const get$SideBar = () => {
|
|
861
|
-
// return state.$SideBar
|
|
862
|
-
// }
|
|
863
|
-
|
|
864
|
-
// export const get$Panel = () => {
|
|
865
|
-
// return state.$Panel
|
|
866
|
-
// }
|
|
867
|
-
|
|
868
|
-
// export const get$TitleBar = () => {
|
|
869
|
-
// return state.$TitleBar
|
|
870
|
-
// }
|
|
871
|
-
|
|
872
|
-
// export const get$Main = () => {
|
|
873
|
-
// return state.$Main
|
|
874
|
-
// }
|
|
875
|
-
|
|
876
|
-
const getTitleBarHeight = () => {
|
|
877
|
-
if (
|
|
878
|
-
// @ts-ignore
|
|
879
|
-
navigator.windowControlsOverlay &&
|
|
880
|
-
// @ts-ignore
|
|
881
|
-
navigator.windowControlsOverlay.getTitlebarAreaRect
|
|
882
|
-
) {
|
|
883
|
-
// @ts-ignore
|
|
884
|
-
const titleBarRect = navigator.windowControlsOverlay.getTitlebarAreaRect();
|
|
885
|
-
return titleBarRect.height
|
|
886
|
-
}
|
|
887
|
-
return 0
|
|
888
|
-
};
|
|
889
|
-
|
|
890
|
-
const getBounds = () => {
|
|
891
|
-
return {
|
|
892
|
-
windowWidth: window.innerWidth,
|
|
893
|
-
windowHeight: window.innerHeight,
|
|
894
|
-
titleBarHeight: getTitleBarHeight(),
|
|
895
|
-
}
|
|
896
|
-
};
|
|
897
|
-
|
|
898
|
-
const handleResize = (event) => {
|
|
899
|
-
send$1(
|
|
900
|
-
/* Layout.handleResize */ 'Layout.handleResize',
|
|
901
|
-
/* bounds */ getBounds()
|
|
902
|
-
);
|
|
903
|
-
};
|
|
904
|
-
|
|
905
|
-
const getSashId = ($Target) => {
|
|
906
|
-
console.log({ $Target });
|
|
907
|
-
if ($Target.id === 'SashPanel') {
|
|
908
|
-
return 'Panel'
|
|
909
|
-
}
|
|
910
|
-
if ($Target.id === 'SashSideBar') {
|
|
911
|
-
return 'SideBar'
|
|
912
|
-
}
|
|
913
|
-
return ''
|
|
914
|
-
};
|
|
915
|
-
|
|
916
|
-
const handleSashPointerMove = (event) => {
|
|
917
|
-
const x = event.clientX;
|
|
918
|
-
const y = event.clientY;
|
|
919
|
-
send$1(
|
|
920
|
-
/* Layout.handleSashPointerMove */ 'Layout.handleSashPointerMove',
|
|
921
|
-
/* x */ x,
|
|
922
|
-
/* y */ y
|
|
923
|
-
);
|
|
924
|
-
};
|
|
925
|
-
|
|
926
|
-
const handleSashPointerUp = () => {
|
|
927
|
-
document.body.style.removeProperty('cursor');
|
|
928
|
-
window.removeEventListener('pointermove', handleSashPointerMove);
|
|
929
|
-
window.removeEventListener('pointerup', handleSashPointerUp);
|
|
930
|
-
const $Style = document.getElementById('SashStyle');
|
|
931
|
-
// @ts-ignore
|
|
932
|
-
$Style.remove();
|
|
933
|
-
};
|
|
934
|
-
|
|
935
|
-
const handleSashPointerDown = (event) => {
|
|
936
|
-
// TODO maybe add a class to body instead?
|
|
937
|
-
const $Style = document.createElement('style');
|
|
938
|
-
$Style.id = 'SashStyle';
|
|
939
|
-
$Style.textContent = `* {
|
|
940
|
-
cursor: col-resize !important;
|
|
941
|
-
pointer-events: none;
|
|
942
|
-
}
|
|
943
|
-
|
|
944
|
-
.SashVertical {
|
|
945
|
-
pointer-events: all;
|
|
946
|
-
}
|
|
947
|
-
.
|
|
948
|
-
`;
|
|
949
|
-
document.head.append($Style);
|
|
950
|
-
window.addEventListener('pointermove', handleSashPointerMove);
|
|
951
|
-
window.addEventListener('pointerup', handleSashPointerUp);
|
|
952
|
-
const $Target = event.target;
|
|
953
|
-
const id = getSashId($Target);
|
|
954
|
-
send$1(
|
|
955
|
-
/* Layout.handleSashPointerDown */ 'Layout.handleSashPointerDown',
|
|
956
|
-
/* id */ id
|
|
957
|
-
);
|
|
958
|
-
};
|
|
959
|
-
|
|
960
|
-
const show = (points) => {
|
|
961
|
-
const $ActivityBar = document.createElement('div');
|
|
962
|
-
$ActivityBar.id = 'ActivityBar';
|
|
963
|
-
|
|
964
|
-
const $StatusBar = document.createElement('div');
|
|
965
|
-
$StatusBar.id = 'StatusBar';
|
|
966
|
-
|
|
967
|
-
const $TitleBar = document.createElement('div');
|
|
968
|
-
$TitleBar.id = 'TitleBar';
|
|
969
|
-
|
|
970
|
-
const $Main = document.createElement('main');
|
|
971
|
-
$Main.id = 'Main';
|
|
972
|
-
|
|
973
|
-
const $SideBar = document.createElement('div');
|
|
974
|
-
$SideBar.id = 'SideBar';
|
|
975
|
-
|
|
976
|
-
const $Panel = document.createElement('div');
|
|
977
|
-
$Panel.id = 'Panel';
|
|
978
|
-
|
|
979
|
-
// TODO use aria role splitter once supported https://github.com/w3c/aria/issues/1348
|
|
980
|
-
const $SashSideBar = document.createElement('div');
|
|
981
|
-
$SashSideBar.className = 'SashVertical';
|
|
982
|
-
$SashSideBar.id = 'SashSideBar';
|
|
983
|
-
|
|
984
|
-
// TODO use aria role splitter once supported https://github.com/w3c/aria/issues/1348
|
|
985
|
-
const $SashPanel = document.createElement('div');
|
|
986
|
-
$SashPanel.className = 'SashHorizontal';
|
|
987
|
-
$SashPanel.id = 'SashPanel';
|
|
988
|
-
|
|
989
|
-
const $Workbench = document.createElement('div');
|
|
990
|
-
$Workbench.id = 'Workbench';
|
|
991
|
-
$Workbench.append(
|
|
992
|
-
$TitleBar,
|
|
993
|
-
$Main,
|
|
994
|
-
$SideBar,
|
|
995
|
-
$ActivityBar,
|
|
996
|
-
$Panel,
|
|
997
|
-
$StatusBar,
|
|
998
|
-
$SashSideBar,
|
|
999
|
-
$SashPanel
|
|
1000
|
-
);
|
|
1001
|
-
// TODO don't like the random side effects here
|
|
1002
|
-
state$6.$ActivityBar = $ActivityBar;
|
|
1003
|
-
state$6.$Main = $Main;
|
|
1004
|
-
state$6.$Panel = $Panel;
|
|
1005
|
-
state$6.$SideBar = $SideBar;
|
|
1006
|
-
state$6.$StatusBar = $StatusBar;
|
|
1007
|
-
state$6.$TitleBar = $TitleBar;
|
|
1008
|
-
state$6.$Workbench = $Workbench;
|
|
1009
|
-
state$6.$SashPanel = $SashPanel;
|
|
1010
|
-
state$6.$SashSideBar = $SashSideBar;
|
|
1011
|
-
update(points);
|
|
1012
|
-
// document.body.role= 'application' // TODO this doesn't seem to work
|
|
1013
|
-
// @ts-ignore
|
|
1014
|
-
$Workbench.role = 'application';
|
|
1015
|
-
document.body.append($Workbench);
|
|
1016
|
-
window.addEventListener('resize', handleResize, { passive: true });
|
|
1017
|
-
$SashSideBar.addEventListener('pointerdown', handleSashPointerDown);
|
|
1018
|
-
$SashPanel.addEventListener('pointerdown', handleSashPointerDown);
|
|
1019
|
-
};
|
|
1020
|
-
|
|
1021
|
-
const hide$1 = () => {
|
|
1022
|
-
state$6.$Workbench.remove();
|
|
1023
|
-
window.removeEventListener('resize', handleResize);
|
|
1024
|
-
};
|
|
1025
|
-
|
|
1026
|
-
const __initialize__$5 = () => {
|
|
1027
|
-
register$1('Layout.update', update);
|
|
1028
|
-
// Command.register(1101, Layout.hideSideBar)
|
|
1029
|
-
// Command.register(1102, Layout.toggleSideBar)
|
|
1030
|
-
// Command.register(1103, Layout.showPanel)
|
|
1031
|
-
// Command.register(1104, Layout.hidePanel)
|
|
1032
|
-
// Command.register(1105, Layout.togglePanel)
|
|
1033
|
-
// Command.register(1106, Layout.showActivityBar)
|
|
1034
|
-
// Command.register(1107, Layout.hideActivityBar)
|
|
1035
|
-
// Command.register(1108, Layout.toggleActivityBar)
|
|
1036
|
-
register$1('Layout.show', show);
|
|
1037
|
-
register$1('Layout.hide', hide$1);
|
|
1038
|
-
register$1('Layout.getBounds', getBounds);
|
|
1039
|
-
};
|
|
1040
|
-
|
|
1041
|
-
var M2 = {
|
|
1042
|
-
__proto__: null,
|
|
1043
|
-
__initialize__: __initialize__$5
|
|
1044
|
-
};
|
|
1045
|
-
|
|
1046
|
-
const state$5 = {
|
|
1047
|
-
// contexts: Object.create(null),
|
|
1048
|
-
contexts: {},
|
|
1049
|
-
};
|
|
1050
|
-
|
|
1051
|
-
// TODO all context keys should be numeric
|
|
1052
|
-
// comparing numbers is faster and more efficient than comparing strings every time
|
|
1053
|
-
// e.g. map 'focus.editor' -> 1
|
|
1054
|
-
// e.g. map 'focus.explorer' -> 2
|
|
1055
|
-
// Context.get(1), Context.get(2)
|
|
1056
|
-
|
|
1057
|
-
const get$1 = (key) => {
|
|
1058
|
-
return state$5.contexts[key]
|
|
1059
|
-
};
|
|
1060
|
-
|
|
1061
|
-
const set = (key, value) => {
|
|
1062
|
-
state$5.contexts[key] = value;
|
|
1063
|
-
};
|
|
1064
|
-
|
|
1065
|
-
const remove$1 = (key) => {
|
|
1066
|
-
delete state$5.contexts[key];
|
|
1067
|
-
};
|
|
1068
|
-
|
|
1069
|
-
// TODO not sure if its worth to have a separate module for this or keep it inside Context.js
|
|
1070
|
-
// export const setFocus = (item) => {
|
|
1071
|
-
// if (Context.state.currentFocus) {
|
|
1072
|
-
// Context.remove(Context.state.currentFocus)
|
|
1073
|
-
// }
|
|
1074
|
-
// Context.set(`focus.${item}`, true)
|
|
1075
|
-
// }
|
|
1076
|
-
|
|
1077
|
-
const state$4 = {
|
|
1078
|
-
$PreviousFocusElement: undefined,
|
|
1079
|
-
currentFocus: '',
|
|
1080
|
-
};
|
|
1081
|
-
|
|
1082
|
-
const setFocus = (key) => {
|
|
1083
|
-
if (state$4.currentFocus) {
|
|
1084
|
-
remove$1(state$4.currentFocus);
|
|
1085
|
-
}
|
|
1086
|
-
// TODO could make focus key numeric enum which would be more efficient
|
|
1087
|
-
state$4.currentFocus = `focus.${key}`;
|
|
1088
|
-
set(state$4.currentFocus, true);
|
|
1089
|
-
};
|
|
1090
|
-
|
|
1091
|
-
const setAdditionalFocus = (key) => {
|
|
1092
|
-
// TODO key should be numeric
|
|
1093
|
-
set(`focus.${key}`, true);
|
|
1094
|
-
};
|
|
1095
|
-
|
|
1096
|
-
const removeAdditionalFocus = (key) => {
|
|
1097
|
-
remove$1(`focus.${key}`);
|
|
1098
|
-
};
|
|
1099
|
-
|
|
1100
|
-
const focus$4 = ($Element, key) => {
|
|
1101
|
-
if ($Element === document.activeElement) {
|
|
1102
|
-
console.log('focus return');
|
|
1103
|
-
return
|
|
1104
|
-
}
|
|
1105
|
-
console.log(state$4.$PreviousFocusElement);
|
|
1106
|
-
state$4.$PreviousFocusElement = document.activeElement;
|
|
1107
|
-
$Element.focus({ preventScroll: true });
|
|
1108
|
-
setFocus(key);
|
|
1109
|
-
};
|
|
1110
|
-
|
|
1111
|
-
const focusPrevious = () => {
|
|
1112
|
-
if (state$4.$PreviousFocusElement) {
|
|
1113
|
-
console.log(state$4.$PreviousFocusElement);
|
|
1114
|
-
state$4.$PreviousFocusElement.focus();
|
|
1115
|
-
}
|
|
1116
|
-
};
|
|
1117
|
-
|
|
1118
|
-
var M5 = {
|
|
1119
|
-
__proto__: null,
|
|
1120
|
-
state: state$4,
|
|
1121
|
-
setFocus: setFocus,
|
|
1122
|
-
setAdditionalFocus: setAdditionalFocus,
|
|
1123
|
-
removeAdditionalFocus: removeAdditionalFocus,
|
|
1124
|
-
focus: focus$4,
|
|
1125
|
-
focusPrevious: focusPrevious
|
|
1126
|
-
};
|
|
1127
|
-
|
|
1128
|
-
const create$Cursor = () => {
|
|
1129
|
-
const $Cursor = document.createElement('div');
|
|
1130
|
-
$Cursor.className = 'EditorCursor';
|
|
1131
|
-
return $Cursor
|
|
1132
|
-
};
|
|
1133
|
-
|
|
1134
|
-
const render$Cursor = ($Cursor, $Texts, cursor) => {
|
|
1135
|
-
$Cursor.style.top = `${cursor.top}px`;
|
|
1136
|
-
const range = document.createRange();
|
|
1137
|
-
if (cursor.leftIndex === -1) {
|
|
1138
|
-
console.warn('cursor left is negative');
|
|
1139
|
-
$Cursor.style.left = '0px'; // TODO need to compute column width, this would only work for monospace fonts
|
|
1140
|
-
return
|
|
1141
|
-
}
|
|
1142
|
-
const $Row = $Texts.children[cursor.topIndex];
|
|
1143
|
-
if (!$Row) {
|
|
1144
|
-
console.warn('no row', cursor, $Row);
|
|
1145
|
-
return
|
|
1146
|
-
}
|
|
1147
|
-
const $Node = $Row.children[cursor.leftIndex];
|
|
1148
|
-
if (!$Node) {
|
|
1149
|
-
console.warn('no node', cursor, $Row);
|
|
1150
|
-
return
|
|
1151
|
-
}
|
|
1152
|
-
if (cursor.leftIndex === 0 && cursor.remainingOffset === 0) {
|
|
1153
|
-
$Cursor.style.left = '0px';
|
|
1154
|
-
} else {
|
|
1155
|
-
const $TextNode = $Node.firstChild;
|
|
1156
|
-
range.setStart($TextNode, cursor.remainingOffset);
|
|
1157
|
-
range.setEnd($TextNode, cursor.remainingOffset);
|
|
1158
|
-
const rect = range.getBoundingClientRect();
|
|
1159
|
-
const left = Math.round(rect.left);
|
|
1160
|
-
$Cursor.style.left = `${left}px`;
|
|
1161
|
-
}
|
|
1162
|
-
};
|
|
1163
|
-
|
|
1164
|
-
const render$CursorsLess = ($Cursors, $Texts, cursors) => {
|
|
1165
|
-
for (let i = 0; i < $Cursors.children.length; i++) {
|
|
1166
|
-
render$Cursor($Cursors.children[i], cursors[i]);
|
|
1167
|
-
}
|
|
1168
|
-
const fragment = document.createDocumentFragment();
|
|
1169
|
-
for (let i = $Cursors.children.length; i < cursors.length; i++) {
|
|
1170
|
-
const $Cursor = create$Cursor();
|
|
1171
|
-
render$Cursor($Cursor, $Texts, cursors[i]);
|
|
1172
|
-
fragment.append($Cursor);
|
|
1173
|
-
}
|
|
1174
|
-
$Cursors.append(fragment);
|
|
1175
|
-
};
|
|
1176
|
-
|
|
1177
|
-
const render$CursorsEqual = ($Cursors, $Texts, cursors) => {
|
|
1178
|
-
for (let i = 0; i < cursors.length; i++) {
|
|
1179
|
-
render$Cursor($Cursors.children[i], $Texts, cursors[i]);
|
|
1180
|
-
}
|
|
1181
|
-
};
|
|
1182
|
-
|
|
1183
|
-
const render$CursorsMore = ($Cursors, $Texts, cursors) => {
|
|
1184
|
-
for (let i = 0; i < cursors.length; i++) {
|
|
1185
|
-
render$Cursor($Cursors.children[i], $Texts, cursors[i]);
|
|
1186
|
-
}
|
|
1187
|
-
const diff = $Cursors.children.length - cursors.length;
|
|
1188
|
-
for (let i = 0; i < diff; i++) {
|
|
1189
|
-
$Cursors.lastChild.remove();
|
|
1190
|
-
}
|
|
1191
|
-
};
|
|
1192
|
-
|
|
1193
|
-
const render$Cursors = ($Cursors, $Texts, cursors) => {
|
|
1194
|
-
if ($Cursors.children.length < cursors.length) {
|
|
1195
|
-
render$CursorsLess($Cursors, $Texts, cursors);
|
|
1196
|
-
} else if ($Cursors.children.length === cursors.length) {
|
|
1197
|
-
render$CursorsEqual($Cursors, $Texts, cursors);
|
|
1198
|
-
} else {
|
|
1199
|
-
render$CursorsMore($Cursors, $Texts, cursors);
|
|
1200
|
-
}
|
|
1201
|
-
};
|
|
1202
|
-
|
|
1203
|
-
const renderCursorsNative = (state, cursors) => {
|
|
1204
|
-
if (cursors.length > 1) {
|
|
1205
|
-
console.warn('[editor] cannot render more than one native cursor');
|
|
1206
|
-
return
|
|
1207
|
-
}
|
|
1208
|
-
if (cursors.length === 0) {
|
|
1209
|
-
return
|
|
1210
|
-
}
|
|
1211
|
-
const cursor = cursors[0];
|
|
1212
|
-
const $Rows = state.$LayerText;
|
|
1213
|
-
const $StartRow = $Rows.children[cursor.rowIndex];
|
|
1214
|
-
let startOffset = 0;
|
|
1215
|
-
let $Anchor;
|
|
1216
|
-
for (let i = 0; i < $StartRow.children.length; i++) {
|
|
1217
|
-
if (startOffset >= cursor.columnIndex) {
|
|
1218
|
-
console.log({ startOffset });
|
|
1219
|
-
$Anchor = $StartRow.children[i - 1].firstChild;
|
|
1220
|
-
startOffset -= $Anchor.textContent.length;
|
|
1221
|
-
startOffset = cursor.columnIndex - startOffset;
|
|
1222
|
-
break
|
|
1223
|
-
}
|
|
1224
|
-
startOffset += $StartRow.children[i].textContent.length;
|
|
1225
|
-
}
|
|
1226
|
-
if (!$Anchor) {
|
|
1227
|
-
$Anchor = $StartRow.children[$StartRow.children.length - 1].firstChild;
|
|
1228
|
-
startOffset -= $Anchor.textContent.length;
|
|
1229
|
-
startOffset = cursor.columnIndex - startOffset;
|
|
1230
|
-
}
|
|
1231
|
-
const selection = document.getSelection();
|
|
1232
|
-
if (
|
|
1233
|
-
selection.anchorNode === $Anchor &&
|
|
1234
|
-
selection.focusNode === $Anchor &&
|
|
1235
|
-
selection.anchorOffset === startOffset &&
|
|
1236
|
-
selection.focusOffset === startOffset
|
|
1237
|
-
) {
|
|
1238
|
-
return
|
|
1239
|
-
}
|
|
1240
|
-
state.shouldIgnoreSelectionChange = true;
|
|
1241
|
-
const documentRange = document.createRange();
|
|
1242
|
-
documentRange.setStart($Anchor, startOffset);
|
|
1243
|
-
documentRange.setEnd($Anchor, startOffset);
|
|
1244
|
-
selection.removeAllRanges();
|
|
1245
|
-
selection.addRange(documentRange);
|
|
1246
|
-
};
|
|
1247
|
-
|
|
1248
|
-
const setCursors = (state, cursors) => {
|
|
1249
|
-
if (isMobileOrTablet()) {
|
|
1250
|
-
renderCursorsNative(state, cursors);
|
|
1251
|
-
return
|
|
1252
|
-
}
|
|
1253
|
-
render$Cursors(state.$LayerCursor, state.$LayerText, cursors);
|
|
1254
|
-
};
|
|
1255
|
-
|
|
1256
|
-
const create$Diagnostic = () => {
|
|
1257
|
-
const $Diagnostic = document.createElement('div');
|
|
1258
|
-
$Diagnostic.className = 'EditorDiagnostic';
|
|
1259
|
-
return $Diagnostic
|
|
1260
|
-
};
|
|
1261
|
-
|
|
1262
|
-
const render$Diagnostic = ($Diagnostic, diagnostic) => {
|
|
1263
|
-
$Diagnostic.style.top = `${diagnostic.top}px`;
|
|
1264
|
-
$Diagnostic.style.left = `${diagnostic.left}px`;
|
|
1265
|
-
$Diagnostic.style.width = `${diagnostic.width}px`;
|
|
1266
|
-
$Diagnostic.style.height = `${diagnostic.height}px`;
|
|
1267
|
-
};
|
|
1268
|
-
|
|
1269
|
-
const render$DiagnosticsLess = ($Diagnostics, diagnostics) => {
|
|
1270
|
-
for (let i = 0; i < $Diagnostics.children.length; i++) {
|
|
1271
|
-
render$Diagnostic($Diagnostics.children[i], diagnostics[i]);
|
|
1272
|
-
}
|
|
1273
|
-
const fragment = document.createDocumentFragment();
|
|
1274
|
-
for (let i = $Diagnostics.children.length; i < diagnostics.length; i++) {
|
|
1275
|
-
const $Diagnostic = create$Diagnostic();
|
|
1276
|
-
render$Diagnostic($Diagnostic, diagnostics[i]);
|
|
1277
|
-
fragment.append($Diagnostic);
|
|
1278
|
-
}
|
|
1279
|
-
$Diagnostics.append(fragment);
|
|
1280
|
-
};
|
|
1281
|
-
|
|
1282
|
-
const render$DiagnosticsEqual = ($Diagnostics, diagnostics) => {
|
|
1283
|
-
for (let i = 0; i < diagnostics.length; i++) {
|
|
1284
|
-
render$Diagnostic($Diagnostics.children[i], diagnostics[i]);
|
|
1285
|
-
}
|
|
1286
|
-
};
|
|
1287
|
-
|
|
1288
|
-
const render$DiagnosticsMore = ($Diagnostics, diagnostics) => {
|
|
1289
|
-
for (let i = 0; i < diagnostics.length; i++) {
|
|
1290
|
-
render$Diagnostic($Diagnostics.children[i], diagnostics[i]);
|
|
1291
|
-
}
|
|
1292
|
-
const diff = $Diagnostics.children.length - diagnostics.length;
|
|
1293
|
-
for (let i = 0; i < diff; i++) {
|
|
1294
|
-
$Diagnostics.lastChild.remove();
|
|
1295
|
-
}
|
|
1296
|
-
};
|
|
1297
|
-
|
|
1298
|
-
const render$Diagnostics = ($Diagnostics, diagnostics) => {
|
|
1299
|
-
if ($Diagnostics.children.length < diagnostics.length) {
|
|
1300
|
-
render$DiagnosticsLess($Diagnostics, diagnostics);
|
|
1301
|
-
} else if ($Diagnostics.children.length === diagnostics.length) {
|
|
1302
|
-
render$DiagnosticsEqual($Diagnostics, diagnostics);
|
|
1303
|
-
} else {
|
|
1304
|
-
render$DiagnosticsMore($Diagnostics, diagnostics);
|
|
1305
|
-
}
|
|
1306
|
-
};
|
|
1307
|
-
|
|
1308
|
-
const setDiagnostics$1 = (state, diagnostics) => {
|
|
1309
|
-
render$Diagnostics(state.$LayerDiagnostics, diagnostics);
|
|
1310
|
-
};
|
|
1311
|
-
|
|
1312
|
-
const setPosition = (state, scrollBarY, scrollBarHeight) => {
|
|
1313
|
-
state.$ScrollBarThumb.style.top = `${scrollBarY}px`;
|
|
1314
|
-
state.$ScrollBarThumb.style.height = `${scrollBarHeight}px`;
|
|
1315
|
-
};
|
|
1316
|
-
|
|
1317
|
-
// TODO scrollbar decorations should be own layer maybe
|
|
1318
|
-
const create$ScrollBarDiagnostic = () => {
|
|
1319
|
-
const $ScrollBarDiagnostic = document.createElement('div');
|
|
1320
|
-
$ScrollBarDiagnostic.className = 'ScrollBarDiagnostic';
|
|
1321
|
-
return $ScrollBarDiagnostic
|
|
1322
|
-
};
|
|
1323
|
-
|
|
1324
|
-
const render$ScrollBarDiagnostic = (
|
|
1325
|
-
$ScrollBarDiagnostic,
|
|
1326
|
-
scrollBarDiagnostic
|
|
1327
|
-
) => {
|
|
1328
|
-
$ScrollBarDiagnostic.style.top = `${scrollBarDiagnostic.top}px`;
|
|
1329
|
-
};
|
|
1330
|
-
|
|
1331
|
-
const render$ScrollBarDiagnosticsLess = (
|
|
1332
|
-
$ScrollBarDiagnostics,
|
|
1333
|
-
scrollBarDiagnostics
|
|
1334
|
-
) => {
|
|
1335
|
-
for (let i = 0; i < $ScrollBarDiagnostics.children.length; i++) {
|
|
1336
|
-
render$ScrollBarDiagnostic(
|
|
1337
|
-
$ScrollBarDiagnostics.children[i],
|
|
1338
|
-
scrollBarDiagnostics[i]
|
|
1339
|
-
);
|
|
1340
|
-
}
|
|
1341
|
-
const fragment = document.createDocumentFragment();
|
|
1342
|
-
for (
|
|
1343
|
-
let i = $ScrollBarDiagnostics.children.length;
|
|
1344
|
-
i < scrollBarDiagnostics.length;
|
|
1345
|
-
i++
|
|
1346
|
-
) {
|
|
1347
|
-
const $ScrollBarDiagnostic = create$ScrollBarDiagnostic();
|
|
1348
|
-
render$ScrollBarDiagnostic($ScrollBarDiagnostic, scrollBarDiagnostics[i]);
|
|
1349
|
-
fragment.append($ScrollBarDiagnostic);
|
|
1350
|
-
}
|
|
1351
|
-
$ScrollBarDiagnostics.append(fragment);
|
|
1352
|
-
};
|
|
1353
|
-
|
|
1354
|
-
const render$ScrollBarDiagnosticsEqual = (
|
|
1355
|
-
$ScrollBarDiagnostics,
|
|
1356
|
-
scrollBarDiagnostics
|
|
1357
|
-
) => {
|
|
1358
|
-
for (let i = 0; i < scrollBarDiagnostics.length; i++) {
|
|
1359
|
-
render$ScrollBarDiagnostic(
|
|
1360
|
-
$ScrollBarDiagnostics.children[i],
|
|
1361
|
-
scrollBarDiagnostics[i]
|
|
1362
|
-
);
|
|
1363
|
-
}
|
|
1364
|
-
};
|
|
1365
|
-
|
|
1366
|
-
const render$ScrollBarDiagnosticsMore = (
|
|
1367
|
-
$ScrollBarDiagnostics,
|
|
1368
|
-
scrollBarDiagnostics
|
|
1369
|
-
) => {
|
|
1370
|
-
for (let i = 0; i < scrollBarDiagnostics.length; i++) {
|
|
1371
|
-
render$ScrollBarDiagnostic(
|
|
1372
|
-
$ScrollBarDiagnostics.children[i],
|
|
1373
|
-
scrollBarDiagnostics[i]
|
|
1374
|
-
);
|
|
1375
|
-
}
|
|
1376
|
-
const diff =
|
|
1377
|
-
$ScrollBarDiagnostics.children.length - scrollBarDiagnostics.length;
|
|
1378
|
-
for (let i = 0; i < diff; i++) {
|
|
1379
|
-
$ScrollBarDiagnostics.lastChild.remove();
|
|
1380
|
-
}
|
|
1381
|
-
};
|
|
1382
|
-
|
|
1383
|
-
const render$ScrollBarDiagnostics = (
|
|
1384
|
-
$ScrollBarDiagnostics,
|
|
1385
|
-
scrollBarDiagnostics
|
|
1386
|
-
) => {
|
|
1387
|
-
if ($ScrollBarDiagnostics.children.length < scrollBarDiagnostics.length) {
|
|
1388
|
-
render$ScrollBarDiagnosticsLess($ScrollBarDiagnostics, scrollBarDiagnostics);
|
|
1389
|
-
} else if (
|
|
1390
|
-
$ScrollBarDiagnostics.children.length === scrollBarDiagnostics.length
|
|
1391
|
-
) {
|
|
1392
|
-
render$ScrollBarDiagnosticsEqual(
|
|
1393
|
-
$ScrollBarDiagnostics,
|
|
1394
|
-
scrollBarDiagnostics
|
|
1395
|
-
);
|
|
1396
|
-
} else {
|
|
1397
|
-
render$ScrollBarDiagnosticsMore($ScrollBarDiagnostics, scrollBarDiagnostics);
|
|
1398
|
-
}
|
|
1399
|
-
};
|
|
1400
|
-
|
|
1401
|
-
const setDiagnostics = (editor, scrollBarDiagnostics) => {
|
|
1402
|
-
render$ScrollBarDiagnostics(
|
|
1403
|
-
editor.$ScrollBarDiagnostics,
|
|
1404
|
-
scrollBarDiagnostics
|
|
1405
|
-
);
|
|
1406
|
-
};
|
|
1407
|
-
|
|
1408
|
-
const create$Selection = () => {
|
|
1409
|
-
const $Selection = document.createElement('div');
|
|
1410
|
-
$Selection.className = 'EditorSelection';
|
|
1411
|
-
return $Selection
|
|
1412
|
-
};
|
|
1413
|
-
|
|
1414
|
-
const render$Selection = ($Selection, selections, i) => {
|
|
1415
|
-
const top = selections[i * 4];
|
|
1416
|
-
const left = selections[i * 4 + 1];
|
|
1417
|
-
const width = selections[i * 4 + 2];
|
|
1418
|
-
const height = selections[i * 4 + 3];
|
|
1419
|
-
// TODO have many decorations per row
|
|
1420
|
-
// no absolute positioning
|
|
1421
|
-
$Selection.style.top = `${top}px`;
|
|
1422
|
-
$Selection.style.left = `${left}px`;
|
|
1423
|
-
$Selection.style.width = `${width}px`;
|
|
1424
|
-
$Selection.style.height = `${height}px`;
|
|
1425
|
-
};
|
|
1426
|
-
|
|
1427
|
-
const render$SelectionsLess = (
|
|
1428
|
-
$Selections,
|
|
1429
|
-
childCount,
|
|
1430
|
-
selections,
|
|
1431
|
-
selectionCount
|
|
1432
|
-
) => {
|
|
1433
|
-
for (let i = 0, j = 0; i < childCount; i++, j += 4) {
|
|
1434
|
-
render$Selection($Selections.children[i], selections[i]);
|
|
1435
|
-
}
|
|
1436
|
-
const fragment = document.createDocumentFragment();
|
|
1437
|
-
for (let i = childCount; i < selectionCount; i++) {
|
|
1438
|
-
const $Selection = create$Selection();
|
|
1439
|
-
render$Selection($Selection, selections, i);
|
|
1440
|
-
fragment.append($Selection);
|
|
1441
|
-
}
|
|
1442
|
-
$Selections.append(fragment);
|
|
1443
|
-
};
|
|
1444
|
-
|
|
1445
|
-
const render$SelectionsEqual = (
|
|
1446
|
-
$Selections,
|
|
1447
|
-
childCount,
|
|
1448
|
-
selections,
|
|
1449
|
-
selectionCount
|
|
1450
|
-
) => {
|
|
1451
|
-
for (let i = 0; i < selectionCount; i++) {
|
|
1452
|
-
render$Selection($Selections.children[i], selections, i);
|
|
1453
|
-
}
|
|
1454
|
-
};
|
|
1455
|
-
|
|
1456
|
-
const render$SelectionsMore = (
|
|
1457
|
-
$Selections,
|
|
1458
|
-
childCount,
|
|
1459
|
-
selections,
|
|
1460
|
-
selectionCount
|
|
1461
|
-
) => {
|
|
1462
|
-
for (let i = 0; i < selectionCount; i++) {
|
|
1463
|
-
render$Selection($Selections.children[i], selections, i);
|
|
1464
|
-
}
|
|
1465
|
-
const diff = childCount - selectionCount;
|
|
1466
|
-
for (let i = 0; i < diff; i++) {
|
|
1467
|
-
$Selections.lastChild.remove();
|
|
1468
|
-
}
|
|
1469
|
-
};
|
|
1470
|
-
|
|
1471
|
-
const render$Selections = ($Selections, selections) => {
|
|
1472
|
-
const selectionsCount = selections.length / 4;
|
|
1473
|
-
const childCount = $Selections.children.length;
|
|
1474
|
-
if (childCount < selectionsCount) {
|
|
1475
|
-
render$SelectionsLess($Selections, childCount, selections, selectionsCount);
|
|
1476
|
-
} else if (childCount === selectionsCount) {
|
|
1477
|
-
render$SelectionsEqual($Selections, childCount, selections, selectionsCount);
|
|
1478
|
-
} else {
|
|
1479
|
-
render$SelectionsMore($Selections, childCount, selections, selectionsCount);
|
|
1480
|
-
}
|
|
1481
|
-
};
|
|
1482
|
-
|
|
1483
|
-
const renderSelectionsNative = (state, selections) => {
|
|
1484
|
-
if (selections.length > 1) {
|
|
1485
|
-
console.warn('[editor] cannot render more than one native selection');
|
|
1486
|
-
}
|
|
1487
|
-
};
|
|
1488
|
-
|
|
1489
|
-
const setSelections$1 = (state, selections) => {
|
|
1490
|
-
if (isMobileOrTablet()) {
|
|
1491
|
-
renderSelectionsNative(state, selections);
|
|
1492
|
-
return
|
|
1493
|
-
}
|
|
1494
|
-
render$Selections(state.$LayerSelections, selections);
|
|
1495
|
-
};
|
|
1496
|
-
|
|
1497
|
-
const create$Row = () => {
|
|
1498
|
-
const $Row = document.createElement('div');
|
|
1499
|
-
$Row.className = 'EditorRow';
|
|
1500
|
-
return $Row
|
|
1501
|
-
};
|
|
1502
|
-
|
|
1503
|
-
const create$Token = () => {
|
|
1504
|
-
const $Token = document.createElement('span');
|
|
1505
|
-
$Token.className = 'Token';
|
|
1506
|
-
return $Token
|
|
1507
|
-
};
|
|
1508
|
-
|
|
1509
|
-
// TODO maybe use createTextNode (codeMirror uses that)
|
|
1510
|
-
// This function seems to be a hot spot
|
|
1511
|
-
const render$Token = ($Token, text, className) => {
|
|
1512
|
-
$Token.className = className;
|
|
1513
|
-
if ($Token.firstChild) {
|
|
1514
|
-
// recycle text node
|
|
1515
|
-
$Token.firstChild.nodeValue = text;
|
|
1516
|
-
} else {
|
|
1517
|
-
$Token.textContent = text;
|
|
1518
|
-
}
|
|
1519
|
-
};
|
|
1520
|
-
|
|
1521
|
-
const render$LineLess = ($Line, lineInfo) => {
|
|
1522
|
-
let i = 0;
|
|
1523
|
-
while (i < $Line.children.length * 2) {
|
|
1524
|
-
const text = lineInfo[i++];
|
|
1525
|
-
const className = lineInfo[i++];
|
|
1526
|
-
render$Token($Line.children[i / 2 - 1], text, className);
|
|
1527
|
-
}
|
|
1528
|
-
const fragment = document.createDocumentFragment();
|
|
1529
|
-
while (i < lineInfo.length) {
|
|
1530
|
-
const text = lineInfo[i++];
|
|
1531
|
-
const className = lineInfo[i++];
|
|
1532
|
-
const $Token = create$Token();
|
|
1533
|
-
render$Token($Token, text, className);
|
|
1534
|
-
fragment.append($Token);
|
|
1535
|
-
}
|
|
1536
|
-
$Line.append(fragment);
|
|
1537
|
-
};
|
|
1538
|
-
|
|
1539
|
-
const render$LineEqual = ($Line, lineInfo) => {
|
|
1540
|
-
let i = 0;
|
|
1541
|
-
while (i < lineInfo.length) {
|
|
1542
|
-
const text = lineInfo[i++];
|
|
1543
|
-
const className = lineInfo[i++];
|
|
1544
|
-
render$Token($Line.children[i / 2 - 1], text, className);
|
|
1545
|
-
}
|
|
1546
|
-
};
|
|
1547
|
-
|
|
1548
|
-
const render$LineMore = ($Line, lineInfo) => {
|
|
1549
|
-
let i = 0;
|
|
1550
|
-
while (i < lineInfo.length) {
|
|
1551
|
-
const text = lineInfo[i++];
|
|
1552
|
-
const className = lineInfo[i++];
|
|
1553
|
-
render$Token($Line.children[i / 2 - 1], text, className);
|
|
1554
|
-
}
|
|
1555
|
-
const diff = $Line.children.length - lineInfo.length / 2;
|
|
1556
|
-
for (let i = lineInfo.length; i < lineInfo.length + diff; i++) {
|
|
1557
|
-
$Line.lastChild.remove();
|
|
1558
|
-
}
|
|
1559
|
-
};
|
|
1560
|
-
|
|
1561
|
-
const render$Line = ($Line, lineInfo) => {
|
|
1562
|
-
if ($Line.children.length < lineInfo.length / 2) {
|
|
1563
|
-
render$LineLess($Line, lineInfo);
|
|
1564
|
-
} else if ($Line.children.length === lineInfo.length / 2) {
|
|
1565
|
-
render$LineEqual($Line, lineInfo);
|
|
1566
|
-
} else {
|
|
1567
|
-
render$LineMore($Line, lineInfo);
|
|
1568
|
-
}
|
|
1569
|
-
};
|
|
1570
|
-
|
|
1571
|
-
const render$LinesLess = ($Lines, lineInfos) => {
|
|
1572
|
-
for (let i = 0; i < $Lines.children.length; i++) {
|
|
1573
|
-
render$Line($Lines.children[i], lineInfos[i]);
|
|
1574
|
-
}
|
|
1575
|
-
const fragment = document.createDocumentFragment();
|
|
1576
|
-
for (let i = $Lines.children.length; i < lineInfos.length; i++) {
|
|
1577
|
-
const $Line = create$Row();
|
|
1578
|
-
render$Line($Line, lineInfos[i]);
|
|
1579
|
-
fragment.append($Line);
|
|
1580
|
-
}
|
|
1581
|
-
$Lines.append(fragment);
|
|
1582
|
-
};
|
|
1583
|
-
|
|
1584
|
-
const render$LinesEqual = ($Lines, lineInfos) => {
|
|
1585
|
-
for (let i = 0; i < lineInfos.length; i++) {
|
|
1586
|
-
render$Line($Lines.children[i], lineInfos[i]);
|
|
1587
|
-
}
|
|
1588
|
-
};
|
|
1589
|
-
|
|
1590
|
-
const render$LinesMore = ($Lines, lineInfos) => {
|
|
1591
|
-
for (let i = 0; i < lineInfos.length; i++) {
|
|
1592
|
-
render$Line($Lines.children[i], lineInfos[i]);
|
|
1593
|
-
}
|
|
1594
|
-
const diff = $Lines.children.length - lineInfos.length;
|
|
1595
|
-
for (let i = lineInfos.length; i < lineInfos.length + diff; i++) {
|
|
1596
|
-
$Lines.lastChild.remove();
|
|
1597
|
-
}
|
|
1598
|
-
};
|
|
1599
|
-
|
|
1600
|
-
const render$Lines = ($Lines, lineInfos) => {
|
|
1601
|
-
object($Lines);
|
|
1602
|
-
array(lineInfos);
|
|
1603
|
-
if ($Lines.children.length < lineInfos.length) {
|
|
1604
|
-
render$LinesLess($Lines, lineInfos);
|
|
1605
|
-
} else if ($Lines.children.length === lineInfos.length) {
|
|
1606
|
-
render$LinesEqual($Lines, lineInfos);
|
|
1607
|
-
} else {
|
|
1608
|
-
render$LinesMore($Lines, lineInfos);
|
|
1609
|
-
}
|
|
1610
|
-
};
|
|
1611
|
-
|
|
1612
|
-
const setLineInfos = (state, lineInfos) => {
|
|
1613
|
-
render$Lines(state.$LayerText, lineInfos);
|
|
1614
|
-
};
|
|
1615
|
-
|
|
1616
|
-
// TODO so many things in this file
|
|
1617
|
-
|
|
1618
|
-
// TODO go back to edit mode after pressing escape so screenreaders can navigate https://stackoverflow.com/questions/53909477/how-to-handle-tabbing-for-accessibility-with-a-textarea-that-uses-the-tab-button
|
|
1619
|
-
|
|
1620
|
-
// TODO tree shake out mobile support when targeting electron -> less code -> less event listeners -> less memory -> less cpu
|
|
1621
|
-
|
|
1622
|
-
const handleContextMenu$2 = (event) => {
|
|
1623
|
-
event.preventDefault();
|
|
1624
|
-
const x = event.clientX;
|
|
1625
|
-
const y = event.clientY;
|
|
1626
|
-
send$1(
|
|
1627
|
-
/* ContextMenu.show */ 'ContextMenu.show',
|
|
1628
|
-
/* x */ x,
|
|
1629
|
-
/* y */ y,
|
|
1630
|
-
/* id */ 'editor'
|
|
1631
|
-
);
|
|
1632
|
-
};
|
|
1633
|
-
|
|
1634
|
-
const handleFocus = (event) => {
|
|
1635
|
-
setFocus('EditorText');
|
|
1636
|
-
};
|
|
1637
|
-
|
|
1638
|
-
const handleBlur$1 = (event) => {
|
|
1639
|
-
// needed for save on blur
|
|
1640
|
-
// also needed to close completions on blur
|
|
1641
|
-
send$1(/* EditorBlur.editorBlur */ 'Editor.blur');
|
|
1642
|
-
};
|
|
1643
|
-
|
|
1644
|
-
const handleBeforeInput = (event) => {
|
|
1645
|
-
event.preventDefault();
|
|
1646
|
-
switch (event.inputType) {
|
|
1647
|
-
case 'insertText':
|
|
1648
|
-
send$1(
|
|
1649
|
-
/* Editor.type */ 'Editor.type',
|
|
1650
|
-
/* text */ event.data
|
|
1651
|
-
);
|
|
1652
|
-
break
|
|
1653
|
-
}
|
|
1654
|
-
// if (!event.data) {
|
|
1655
|
-
// return
|
|
1656
|
-
// }
|
|
1657
|
-
};
|
|
1658
|
-
|
|
1659
|
-
// TODO composition should be better supported,
|
|
1660
|
-
// for example
|
|
1661
|
-
// - gedit draws a line below the composed text
|
|
1662
|
-
// - codemirror 6 also draws that line
|
|
1663
|
-
// - codemirror 5 also draws that line
|
|
1664
|
-
// - vscode does not draw a line, but displays characters during composition
|
|
1665
|
-
|
|
1666
|
-
const handleCompositionStart = (event) => {
|
|
1667
|
-
send$1(
|
|
1668
|
-
/* Editor.compositionStart */ 'Editor.compositionStart',
|
|
1669
|
-
/* text */ event.data
|
|
1670
|
-
);
|
|
1671
|
-
};
|
|
1672
|
-
|
|
1673
|
-
const handleCompositionUpdate = (event) => {
|
|
1674
|
-
send$1(
|
|
1675
|
-
/* Editor.compositionUpdate */ 'Editor.compositionUpdate',
|
|
1676
|
-
/* text */ event.data
|
|
1677
|
-
);
|
|
1678
|
-
};
|
|
1679
|
-
|
|
1680
|
-
const handleCompositionEnd = (event) => {
|
|
1681
|
-
send$1(
|
|
1682
|
-
/* Editor.compositionEnd */ 'Editor.compositionEnd',
|
|
1683
|
-
/* text */ event.data
|
|
1684
|
-
);
|
|
1685
|
-
};
|
|
1686
|
-
|
|
1687
|
-
const handleCut = (event) => {
|
|
1688
|
-
event.preventDefault();
|
|
1689
|
-
send$1(/* Editor.cut */ 'Editor.cut');
|
|
1690
|
-
};
|
|
1691
|
-
|
|
1692
|
-
const handleSelectionMove = (event) => {
|
|
1693
|
-
const x = event.clientX;
|
|
1694
|
-
const y = event.clientY;
|
|
1695
|
-
const totalOffset = getTotalOffset(event);
|
|
1696
|
-
if (event.altKey) {
|
|
1697
|
-
send$1(
|
|
1698
|
-
/* Editor.moveRectangleSelectionPx */ 'Editor.moveRectangleSelectionPx',
|
|
1699
|
-
/* x */ x,
|
|
1700
|
-
/* y */ y,
|
|
1701
|
-
/* offset */ totalOffset
|
|
1702
|
-
);
|
|
1703
|
-
} else {
|
|
1704
|
-
send$1(
|
|
1705
|
-
/* Editor.moveSelectionPx */ 'Editor.moveSelectionPx',
|
|
1706
|
-
/* x */ x,
|
|
1707
|
-
/* y */ y,
|
|
1708
|
-
/* offset */ totalOffset
|
|
1709
|
-
);
|
|
1710
|
-
}
|
|
1711
|
-
};
|
|
1712
|
-
|
|
1713
|
-
const handleSelectionDone = (event) => {
|
|
1714
|
-
document.removeEventListener('mousemove', handleSelectionMove);
|
|
1715
|
-
document.removeEventListener('mouseup', handleSelectionDone);
|
|
1716
|
-
};
|
|
1717
|
-
|
|
1718
|
-
const getModifier$1 = (event) => {
|
|
1719
|
-
if (event.ctrlKey) {
|
|
1720
|
-
return 'ctrl'
|
|
1721
|
-
}
|
|
1722
|
-
if (event.altKey) {
|
|
1723
|
-
return 'alt'
|
|
1724
|
-
}
|
|
1725
|
-
return ''
|
|
1726
|
-
};
|
|
1727
|
-
|
|
1728
|
-
const handleSingleClick = (event, x, y, offset) => {
|
|
1729
|
-
console.log('click', { x, y, offset });
|
|
1730
|
-
const modifier = getModifier$1(event);
|
|
1731
|
-
send$1(
|
|
1732
|
-
/* Editor.handleSingleClick */ 'Editor.handleSingleClick',
|
|
1733
|
-
/* modifier */ modifier,
|
|
1734
|
-
/* x */ x,
|
|
1735
|
-
/* y */ y,
|
|
1736
|
-
/* offset */ offset
|
|
1737
|
-
);
|
|
1738
|
-
// const $InputBox = $Target.closest('.Editor').firstElementChild
|
|
1739
|
-
// $InputBox.focus()
|
|
1740
|
-
// TODO this logic should be in renderer worker
|
|
1741
|
-
document.addEventListener('mousemove', handleSelectionMove, { passive: true });
|
|
1742
|
-
document.addEventListener('mouseup', handleSelectionDone);
|
|
1743
|
-
};
|
|
1744
|
-
|
|
1745
|
-
const handleDoubleClick = (event, x, y, offset) => {
|
|
1746
|
-
send$1(
|
|
1747
|
-
/* Editor.handleDoubleClick */ 'Editor.handleDoubleClick',
|
|
1748
|
-
/* x */ x,
|
|
1749
|
-
/* y */ y,
|
|
1750
|
-
/* offset */ offset
|
|
1751
|
-
);
|
|
1752
|
-
};
|
|
1753
|
-
|
|
1754
|
-
const handleTripleClick = (event, x, y, offset) => {
|
|
1755
|
-
send$1(
|
|
1756
|
-
/* Editor.handleTripleClick */ 'Editor.handleTripleClick',
|
|
1757
|
-
/* x */ x,
|
|
1758
|
-
/* y */ y,
|
|
1759
|
-
/* offset */ offset
|
|
1760
|
-
);
|
|
1761
|
-
};
|
|
1762
|
-
|
|
1763
|
-
const isRightClick = (event) => {
|
|
1764
|
-
return event.button === 2
|
|
1765
|
-
};
|
|
1766
|
-
|
|
1767
|
-
const getTextNodeOffset = (textNode) => {
|
|
1768
|
-
let $Token = textNode.parentElement;
|
|
1769
|
-
let offset = 0;
|
|
1770
|
-
while ($Token.previousSibling) {
|
|
1771
|
-
$Token = $Token.previousSibling;
|
|
1772
|
-
offset += $Token.textContent.length;
|
|
1773
|
-
}
|
|
1774
|
-
return offset
|
|
1775
|
-
};
|
|
1776
|
-
|
|
1777
|
-
const getTotalOffset = (event) => {
|
|
1778
|
-
if (document.caretRangeFromPoint) {
|
|
1779
|
-
// chrome uses deprecated version
|
|
1780
|
-
const range = document.caretRangeFromPoint(event.clientX, event.clientY);
|
|
1781
|
-
if (!range) {
|
|
1782
|
-
return 0
|
|
1783
|
-
}
|
|
1784
|
-
const textNode = range.startContainer;
|
|
1785
|
-
const textNodeOffset = getTextNodeOffset(textNode);
|
|
1786
|
-
const offset = range.startOffset;
|
|
1787
|
-
const totalOffset = textNodeOffset + offset;
|
|
1788
|
-
return totalOffset
|
|
1789
|
-
// @ts-ignore
|
|
1790
|
-
}
|
|
1791
|
-
// @ts-ignore
|
|
1792
|
-
if (document.caretPositionFromPoint) {
|
|
1793
|
-
// firefox uses new version
|
|
1794
|
-
// @ts-ignore
|
|
1795
|
-
const range = document.caretPositionFromPoint(event.clientX, event.clientY);
|
|
1796
|
-
if (!range) {
|
|
1797
|
-
return 0
|
|
1798
|
-
}
|
|
1799
|
-
const textNode = range.offsetNode;
|
|
1800
|
-
const textNodeOffset = getTextNodeOffset(textNode);
|
|
1801
|
-
const offset = range.offset;
|
|
1802
|
-
const totalOffset = textNodeOffset + offset;
|
|
1803
|
-
return totalOffset
|
|
1804
|
-
}
|
|
1805
|
-
throw new Error('caret position is not supported')
|
|
1806
|
-
};
|
|
1807
|
-
|
|
1808
|
-
const handleMouseDown$1 = (event) => {
|
|
1809
|
-
if (isRightClick(event)) {
|
|
1810
|
-
return
|
|
1811
|
-
}
|
|
1812
|
-
event.preventDefault();
|
|
1813
|
-
const totalOffset = getTotalOffset(event);
|
|
1814
|
-
const x = event.clientX;
|
|
1815
|
-
const y = event.clientY;
|
|
1816
|
-
console.log('detail', event.detail);
|
|
1817
|
-
switch (event.detail) {
|
|
1818
|
-
case 1:
|
|
1819
|
-
handleSingleClick(event, x, y, totalOffset);
|
|
1820
|
-
break
|
|
1821
|
-
case 2:
|
|
1822
|
-
handleDoubleClick(event, x, y, totalOffset);
|
|
1823
|
-
break
|
|
1824
|
-
case 3:
|
|
1825
|
-
handleTripleClick(event, x, y, totalOffset);
|
|
1826
|
-
break
|
|
1827
|
-
}
|
|
1828
|
-
};
|
|
1829
|
-
|
|
1830
|
-
// TODO figure out whether it is possible to register hover provider without mousemove
|
|
1831
|
-
// mousemove handler is called very often and could slow down editor / drain battery
|
|
1832
|
-
|
|
1833
|
-
// disabled for now because of constant cpu usage on mousemove
|
|
1834
|
-
// bad for performance
|
|
1835
|
-
const handleMouseMove$1 = (event) => {
|
|
1836
|
-
const x = event.clientX;
|
|
1837
|
-
const y = event.clientY;
|
|
1838
|
-
if (event.altKey) {
|
|
1839
|
-
const offset = getTotalOffset(event);
|
|
1840
|
-
send$1(
|
|
1841
|
-
/* Editor.handleMouseMoveWithAltKey */ 'Editor.handleMouseMoveWithAltKey',
|
|
1842
|
-
/* x */ x,
|
|
1843
|
-
/* y */ y,
|
|
1844
|
-
/* offset */ offset
|
|
1845
|
-
);
|
|
1846
|
-
}
|
|
1847
|
-
// console.log(event.altKey)
|
|
1848
|
-
// RendererWorker.send(/* Editor.handleMouseMove */ 389, /* x */ x, /* y */ y)
|
|
1849
|
-
};
|
|
1850
|
-
|
|
1851
|
-
const handleWheel = (event) => {
|
|
1852
|
-
// event.preventDefault()
|
|
1853
|
-
// const state = EditorHelper.getStateFromEvent(event)
|
|
1854
|
-
// TODO send editor id
|
|
1855
|
-
switch (event.deltaMode) {
|
|
1856
|
-
case event.DOM_DELTA_LINE:
|
|
1857
|
-
send$1(
|
|
1858
|
-
/* Editor.setDeltaY */ 'Editor.setDeltaY',
|
|
1859
|
-
/* value */ event.deltaY
|
|
1860
|
-
);
|
|
1861
|
-
break
|
|
1862
|
-
case event.DOM_DELTA_PIXEL:
|
|
1863
|
-
send$1(
|
|
1864
|
-
/* Editor.setDeltaY */ 'Editor.setDeltaY',
|
|
1865
|
-
/* value */ event.deltaY
|
|
1866
|
-
);
|
|
1867
|
-
break
|
|
1868
|
-
}
|
|
1869
|
-
};
|
|
1870
|
-
|
|
1871
|
-
const handlePaste = (event) => {
|
|
1872
|
-
event.preventDefault();
|
|
1873
|
-
const text = event.clipboardData.getData('text');
|
|
1874
|
-
send$1(/* Editor.paste */ 'Editor.paste', /* text */ text);
|
|
1875
|
-
};
|
|
1876
|
-
|
|
1877
|
-
const handleScrollBarThumbMouseMove = (event) => {
|
|
1878
|
-
const y = event.clientY;
|
|
1879
|
-
send$1(
|
|
1880
|
-
/* Editor.handleScrollBarMouseMove */ 'Editor.handleScrollBarMove',
|
|
1881
|
-
/* y */ y
|
|
1882
|
-
);
|
|
1883
|
-
};
|
|
1884
|
-
|
|
1885
|
-
const handleScrollBarThumbMouseUp = () => {
|
|
1886
|
-
window.removeEventListener('mousemove', handleScrollBarThumbMouseMove);
|
|
1887
|
-
window.removeEventListener('mouseup', handleScrollBarThumbMouseUp);
|
|
1888
|
-
};
|
|
1889
|
-
|
|
1890
|
-
const handleScrollBarThumbMouseDown = (event) => {
|
|
1891
|
-
window.addEventListener('mousemove', handleScrollBarThumbMouseMove);
|
|
1892
|
-
window.addEventListener('mouseup', handleScrollBarThumbMouseUp);
|
|
1893
|
-
};
|
|
1894
|
-
|
|
1895
|
-
const handleScrollBarMouseDown = (event) => {
|
|
1896
|
-
const y = event.clientY;
|
|
1897
|
-
send$1(
|
|
1898
|
-
/* EditorHandleScrollBarClick.editorHandleScrollBarClick */ 'Editor.handleScrollBarClick',
|
|
1899
|
-
/* y */ y
|
|
1900
|
-
);
|
|
1901
|
-
};
|
|
1902
|
-
|
|
1903
|
-
const toSimpleTouch = (touch) => {
|
|
1904
|
-
return {
|
|
1905
|
-
x: touch.clientX,
|
|
1906
|
-
y: touch.clientY,
|
|
1907
|
-
}
|
|
1908
|
-
};
|
|
1909
|
-
|
|
1910
|
-
const toSimpleTouchEvent = (event) => {
|
|
1911
|
-
const touches = Array.from(event.touches).map(toSimpleTouch);
|
|
1912
|
-
const changedTouches = Array.from(event.changedTouches).map(toSimpleTouch);
|
|
1913
|
-
return {
|
|
1914
|
-
touches,
|
|
1915
|
-
changedTouches,
|
|
1916
|
-
}
|
|
1917
|
-
};
|
|
1918
|
-
|
|
1919
|
-
// TODO add touch cancel handler
|
|
1920
|
-
|
|
1921
|
-
// TODO use touch events for scrolling
|
|
1922
|
-
|
|
1923
|
-
const handleTouchStart = (event) => {
|
|
1924
|
-
const touchEvent = toSimpleTouchEvent(event);
|
|
1925
|
-
send$1(
|
|
1926
|
-
/* EditorHandleTouchStart.editorHandleTouchStart */ 'Editor.handleTouchStart',
|
|
1927
|
-
/* touchEvent */ touchEvent
|
|
1928
|
-
);
|
|
1929
|
-
};
|
|
1930
|
-
|
|
1931
|
-
const handleTouchMove = (event) => {
|
|
1932
|
-
const touchEvent = toSimpleTouchEvent(event);
|
|
1933
|
-
send$1(
|
|
1934
|
-
/* EditorHandleTouchMove.editorHandleTouchMove */ 'Editor.handleTouchMove',
|
|
1935
|
-
/* touchEvent */ touchEvent
|
|
1936
|
-
);
|
|
1937
|
-
};
|
|
1938
|
-
|
|
1939
|
-
const handleTouchEnd = (event) => {
|
|
1940
|
-
if (event.cancelable) {
|
|
1941
|
-
event.preventDefault();
|
|
1942
|
-
}
|
|
1943
|
-
const touchEvent = toSimpleTouchEvent(event);
|
|
1944
|
-
send$1(
|
|
1945
|
-
/* EditorHandleTouchEnd.editorHandleTouchEnd */ 'Editor.handleTouchEnd',
|
|
1946
|
-
/* touchEvent */ touchEvent
|
|
1947
|
-
);
|
|
1948
|
-
};
|
|
1949
|
-
|
|
1950
|
-
const getRangeFromSelection = (selection) => {
|
|
1951
|
-
if (!selection.anchorNode) {
|
|
1952
|
-
return undefined
|
|
1953
|
-
}
|
|
1954
|
-
const $StartToken = selection.anchorNode.parentNode;
|
|
1955
|
-
const $EndToken = selection.focusNode.parentNode;
|
|
1956
|
-
const $StartRow = $StartToken.parentNode;
|
|
1957
|
-
const $EndRow = $EndToken.parentNode;
|
|
1958
|
-
const $Rows = $StartRow.parentNode;
|
|
1959
|
-
let startRowIndex = 0;
|
|
1960
|
-
for (let i = 0; i < $Rows.children.length; i++) {
|
|
1961
|
-
if ($Rows.children[i] === $StartRow) {
|
|
1962
|
-
startRowIndex = i;
|
|
1963
|
-
break
|
|
1964
|
-
}
|
|
1965
|
-
}
|
|
1966
|
-
let startColumnIndex = 0;
|
|
1967
|
-
for (let i = 0; i < $StartRow.children.length; i++) {
|
|
1968
|
-
if ($StartRow.children[i] === $StartToken) {
|
|
1969
|
-
break
|
|
1970
|
-
}
|
|
1971
|
-
startColumnIndex += $StartRow.children[i].textContent.length;
|
|
1972
|
-
}
|
|
1973
|
-
startColumnIndex += selection.anchorOffset;
|
|
1974
|
-
let endRowIndex = 0;
|
|
1975
|
-
for (let i = 0; i < $Rows.children.length; i++) {
|
|
1976
|
-
if ($Rows.children[i] === $EndRow) {
|
|
1977
|
-
endRowIndex = i;
|
|
1978
|
-
break
|
|
1979
|
-
}
|
|
1980
|
-
}
|
|
1981
|
-
let endColumnIndex = 0;
|
|
1982
|
-
for (let i = 0; i < $EndRow.children.length; i++) {
|
|
1983
|
-
if ($EndRow.children[i] === $EndToken) {
|
|
1984
|
-
break
|
|
1985
|
-
}
|
|
1986
|
-
endColumnIndex += $EndRow.children[i].textContent.length;
|
|
1987
|
-
}
|
|
1988
|
-
endColumnIndex += selection.focusOffset;
|
|
1989
|
-
return {
|
|
1990
|
-
startRowIndex,
|
|
1991
|
-
startColumnIndex,
|
|
1992
|
-
endRowIndex,
|
|
1993
|
-
endColumnIndex,
|
|
1994
|
-
}
|
|
1995
|
-
};
|
|
1996
|
-
|
|
1997
|
-
const handleContentEditableBeforeInput = (event) => {
|
|
1998
|
-
const selection = document.getSelection();
|
|
1999
|
-
const range = getRangeFromSelection(selection);
|
|
2000
|
-
if (!range) {
|
|
2001
|
-
console.error('[Editor] cannot handle input event without selection');
|
|
2002
|
-
return
|
|
2003
|
-
}
|
|
2004
|
-
send$1(
|
|
2005
|
-
/* EditorHandleBeforeInputFromContentEditable.editorHandleBeforeInputFromContentEditable */ 'Editor.handleBeforeInputFromContentEditable',
|
|
2006
|
-
/* data */ event.data || '',
|
|
2007
|
-
/* range */ range
|
|
2008
|
-
);
|
|
2009
|
-
};
|
|
2010
|
-
|
|
2011
|
-
const handleNativeSelectionChange = (event) => {
|
|
2012
|
-
// if (state.shouldIgnoreSelectionChange) {
|
|
2013
|
-
// state.shouldIgnoreSelectionChange = false
|
|
2014
|
-
// return
|
|
2015
|
-
// }
|
|
2016
|
-
// const selection = document.getSelection()
|
|
2017
|
-
// const range = getRangeFromSelection(selection)
|
|
2018
|
-
// if (!range) {
|
|
2019
|
-
// return
|
|
2020
|
-
// }
|
|
2021
|
-
// RendererWorker.send(
|
|
2022
|
-
// /* EditorHandleNativeSelectionChange.editorHandleNativeSelectionChange */ 'Editor.handleNativeSelectionChange',
|
|
2023
|
-
// /* range */ range
|
|
2024
|
-
// )
|
|
2025
|
-
};
|
|
2026
|
-
|
|
2027
|
-
// TODO all create functions should have no arguments
|
|
2028
|
-
// and be split into two parts
|
|
2029
|
-
// 1. create -> only create dom elements
|
|
2030
|
-
// 2. render -> fill elements with attributes and data
|
|
2031
|
-
// that way all dom nodes can be recycled
|
|
2032
|
-
const create$4 = () => {
|
|
2033
|
-
const $EditorInput = document.createElement('textarea');
|
|
2034
|
-
$EditorInput.className = 'EditorInput';
|
|
2035
|
-
$EditorInput.ariaAutoComplete = 'list';
|
|
2036
|
-
$EditorInput.ariaRoleDescription = 'editor';
|
|
2037
|
-
$EditorInput.ariaMultiLine = 'true';
|
|
2038
|
-
$EditorInput.setAttribute('autocomplete', 'off');
|
|
2039
|
-
$EditorInput.setAttribute('autocapitalize', 'off');
|
|
2040
|
-
$EditorInput.setAttribute('autocorrect', 'off');
|
|
2041
|
-
$EditorInput.setAttribute('wrap', 'off');
|
|
2042
|
-
$EditorInput.setAttribute('spellcheck', 'false');
|
|
2043
|
-
// @ts-ignore
|
|
2044
|
-
$EditorInput.role= 'textbox';
|
|
2045
|
-
$EditorInput.onpaste = handlePaste;
|
|
2046
|
-
// TODO where to best put listeners (side effects)
|
|
2047
|
-
$EditorInput.addEventListener('beforeinput', handleBeforeInput);
|
|
2048
|
-
$EditorInput.addEventListener('compositionstart', handleCompositionStart);
|
|
2049
|
-
$EditorInput.addEventListener('compositionupdate', handleCompositionUpdate);
|
|
2050
|
-
$EditorInput.addEventListener('compositionend', handleCompositionEnd);
|
|
2051
|
-
$EditorInput.onfocus = handleFocus;
|
|
2052
|
-
$EditorInput.onblur = handleBlur$1;
|
|
2053
|
-
$EditorInput.oncut = handleCut;
|
|
2054
|
-
|
|
2055
|
-
const $LayerCursor = document.createElement('div');
|
|
2056
|
-
$LayerCursor.className = 'LayerCursor';
|
|
2057
|
-
|
|
2058
|
-
const $LayerText = document.createElement('div');
|
|
2059
|
-
$LayerText.className = 'EditorRows';
|
|
2060
|
-
if (isMobileOrTablet()) {
|
|
2061
|
-
$LayerText.setAttribute('contenteditable', 'plaintext-only');
|
|
2062
|
-
$LayerText.setAttribute('autocapitalize', 'off');
|
|
2063
|
-
$LayerText.setAttribute('spellcheck', 'false');
|
|
2064
|
-
$LayerText.setAttribute('autocorrect', 'off');
|
|
2065
|
-
$LayerText.addEventListener('beforeinput', handleContentEditableBeforeInput);
|
|
2066
|
-
// TODO remove listener once editor is disposed
|
|
2067
|
-
// TODO why is there no selection change listener for the element?
|
|
2068
|
-
document.addEventListener('selectionchange', handleNativeSelectionChange);
|
|
2069
|
-
} else {
|
|
2070
|
-
$LayerText.addEventListener('mousedown', handleMouseDown$1);
|
|
2071
|
-
}
|
|
2072
|
-
|
|
2073
|
-
const $ScrollBarThumb = document.createElement('div');
|
|
2074
|
-
$ScrollBarThumb.className = 'ScrollBarThumb';
|
|
2075
|
-
$ScrollBarThumb.addEventListener('mousedown', handleScrollBarThumbMouseDown);
|
|
2076
|
-
|
|
2077
|
-
// TODO only create $ScrollBarDiagnostics lazily when there are actually diagnostics
|
|
2078
|
-
const $ScrollBarDiagnostics = document.createElement('div');
|
|
2079
|
-
$ScrollBarDiagnostics.className = 'EditorScrollBarDiagnostics';
|
|
2080
|
-
|
|
2081
|
-
const $ScrollBar = document.createElement('div');
|
|
2082
|
-
$ScrollBar.className = 'ScrollBar';
|
|
2083
|
-
if (!isMobileOrTablet()) {
|
|
2084
|
-
$ScrollBar.onmousedown = handleScrollBarMouseDown;
|
|
2085
|
-
}
|
|
2086
|
-
$ScrollBar.append($ScrollBarThumb);
|
|
2087
|
-
|
|
2088
|
-
// $EditorRows.addEventListener('mousemove', handleMouseMove, { passive: true })
|
|
2089
|
-
|
|
2090
|
-
// TODO function should be hoisted (maybe -> one listener for all editors (definitely))
|
|
2091
|
-
// only problem is $EditorInput closure
|
|
2092
|
-
|
|
2093
|
-
// TODO when mousedown on completions -> this shouldn't be called
|
|
2094
|
-
|
|
2095
|
-
const $LayerSelections = document.createElement('div');
|
|
2096
|
-
$LayerSelections.className = 'Selections';
|
|
2097
|
-
|
|
2098
|
-
// TODO maybe use css grid to position layers on top of each other
|
|
2099
|
-
// TODO maybe merge layerDiagnostics with LayerSelections
|
|
2100
|
-
// TODO maybe this should be more generic, e.g. LayerDecorations
|
|
2101
|
-
// where decoration = {top,left, width, height, type/className}
|
|
2102
|
-
const $LayerDiagnostics = document.createElement('div');
|
|
2103
|
-
$LayerDiagnostics.className = 'LayerDiagnostics';
|
|
2104
|
-
|
|
2105
|
-
const $EditorLayers = document.createElement('div');
|
|
2106
|
-
$EditorLayers.className = 'EditorLayers';
|
|
2107
|
-
$EditorLayers.append(
|
|
2108
|
-
$LayerSelections,
|
|
2109
|
-
$LayerText,
|
|
2110
|
-
$LayerCursor,
|
|
2111
|
-
$LayerDiagnostics
|
|
2112
|
-
);
|
|
2113
|
-
|
|
2114
|
-
const $Editor = document.createElement('div');
|
|
2115
|
-
$Editor.className = 'Viewlet Editor';
|
|
2116
|
-
$Editor.dataset.viewletId = 'EditorText';
|
|
2117
|
-
// @ts-ignore
|
|
2118
|
-
$Editor.role= 'code';
|
|
2119
|
-
$Editor.append($EditorInput, $EditorLayers, $ScrollBarDiagnostics, $ScrollBar);
|
|
2120
|
-
if (isMobileOrTablet()) {
|
|
2121
|
-
$Editor.addEventListener('touchstart', handleTouchStart, { passive: true });
|
|
2122
|
-
$Editor.addEventListener('touchmove', handleTouchMove, { passive: true });
|
|
2123
|
-
$Editor.addEventListener('touchend', handleTouchEnd);
|
|
2124
|
-
} else {
|
|
2125
|
-
$Editor.addEventListener('contextmenu', handleContextMenu$2);
|
|
2126
|
-
$Editor.addEventListener('wheel', handleWheel, { passive: true });
|
|
2127
|
-
}
|
|
2128
|
-
$Editor.addEventListener('mousemove', handleMouseMove$1, { passive: true });
|
|
2129
|
-
return {
|
|
2130
|
-
$LayerCursor,
|
|
2131
|
-
$LayerSelections,
|
|
2132
|
-
$LayerText,
|
|
2133
|
-
$EditorLayers,
|
|
2134
|
-
$Editor,
|
|
2135
|
-
$EditorInput,
|
|
2136
|
-
$ScrollBarThumb,
|
|
2137
|
-
$LayerDiagnostics,
|
|
2138
|
-
$ScrollBarDiagnostics,
|
|
2139
|
-
shouldIgnoreSelectionChange: false,
|
|
2140
|
-
$Viewlet: $Editor,
|
|
2141
|
-
}
|
|
2142
|
-
};
|
|
2143
|
-
|
|
2144
|
-
const setText = (state, textInfos) => {
|
|
2145
|
-
setLineInfos(state, textInfos);
|
|
2146
|
-
};
|
|
2147
|
-
|
|
2148
|
-
const setSettings = (state, fontSize, lineHeight, letterSpacing) => {
|
|
2149
|
-
// TODO many properties on <html> element in chrome devtools looks ugly
|
|
2150
|
-
// maybe put styles into a stylesheet instead of using inline styles?
|
|
2151
|
-
const root = document.documentElement;
|
|
2152
|
-
root.style.setProperty('--EditorFontSize', `${fontSize}px`);
|
|
2153
|
-
root.style.setProperty('--EditorLineHeight', `${lineHeight}px`);
|
|
2154
|
-
root.style.setProperty('--EditorLetterSpacing', letterSpacing);
|
|
2155
|
-
};
|
|
2156
|
-
|
|
2157
|
-
const setScrollBar = (state, scrollBarY, scrollBarHeight) => {
|
|
2158
|
-
setPosition(state, scrollBarY, scrollBarHeight);
|
|
2159
|
-
};
|
|
2160
|
-
|
|
2161
|
-
const renderCursors = (state, cursorInfos) => {
|
|
2162
|
-
setCursors(state, cursorInfos);
|
|
2163
|
-
};
|
|
2164
|
-
|
|
2165
|
-
const renderSelections = (state, selectionInfos) => {
|
|
2166
|
-
setSelections$1(state, selectionInfos);
|
|
2167
|
-
};
|
|
2168
|
-
|
|
2169
|
-
const renderTextAndCursors = (state, textInfos, cursorInfos) => {
|
|
2170
|
-
setLineInfos(state, textInfos);
|
|
2171
|
-
setCursors(state, cursorInfos);
|
|
2172
|
-
};
|
|
2173
|
-
|
|
2174
|
-
const setSelections = (state, cursorInfos, selectionInfos) => {
|
|
2175
|
-
setCursors(state, cursorInfos);
|
|
2176
|
-
setSelections$1(state, selectionInfos);
|
|
2177
|
-
};
|
|
2178
|
-
|
|
2179
|
-
const renderTextAndCursorsAndSelections = (
|
|
2180
|
-
state,
|
|
2181
|
-
scrollBarY,
|
|
2182
|
-
scrollBarHeight,
|
|
2183
|
-
textInfos,
|
|
2184
|
-
cursorInfos,
|
|
2185
|
-
selectionInfos
|
|
2186
|
-
) => {
|
|
2187
|
-
object(state);
|
|
2188
|
-
number(scrollBarY);
|
|
2189
|
-
number(scrollBarHeight);
|
|
2190
|
-
array(textInfos);
|
|
2191
|
-
array(cursorInfos);
|
|
2192
|
-
array(selectionInfos);
|
|
2193
|
-
setPosition(state, scrollBarY, scrollBarHeight);
|
|
2194
|
-
setLineInfos(state, textInfos);
|
|
2195
|
-
setCursors(state, cursorInfos);
|
|
2196
|
-
setSelections$1(state, selectionInfos);
|
|
2197
|
-
};
|
|
2198
|
-
|
|
2199
|
-
const mount = (state, $Parent) => {
|
|
2200
|
-
$Parent.append(state.$Editor);
|
|
2201
|
-
};
|
|
2202
|
-
|
|
2203
|
-
const dispose$3 = (state) => {};
|
|
2204
|
-
|
|
2205
|
-
const focus$3 = (state) => {
|
|
2206
|
-
const { $EditorInput } = state;
|
|
2207
|
-
console.log('focus editor');
|
|
2208
|
-
$EditorInput.focus();
|
|
2209
|
-
};
|
|
2210
|
-
|
|
2211
|
-
const setLanguageId = async (state, languageId) => {
|
|
2212
|
-
// state.languageId = languageId
|
|
2213
|
-
// state.$Editor.dataset.languageId = languageId
|
|
2214
|
-
// loadTokenizer(languageId)
|
|
2215
|
-
};
|
|
2216
|
-
|
|
2217
|
-
const renderDiagnostics = (state, diagnostics, scrollBarDiagnostics) => {
|
|
2218
|
-
setDiagnostics$1(state, diagnostics);
|
|
2219
|
-
setDiagnostics(state, scrollBarDiagnostics);
|
|
2220
|
-
};
|
|
2221
|
-
|
|
2222
|
-
var M4 = {
|
|
2223
|
-
__proto__: null,
|
|
2224
|
-
create: create$4,
|
|
2225
|
-
setText: setText,
|
|
2226
|
-
setSettings: setSettings,
|
|
2227
|
-
setScrollBar: setScrollBar,
|
|
2228
|
-
renderCursors: renderCursors,
|
|
2229
|
-
renderSelections: renderSelections,
|
|
2230
|
-
renderTextAndCursors: renderTextAndCursors,
|
|
2231
|
-
setSelections: setSelections,
|
|
2232
|
-
renderTextAndCursorsAndSelections: renderTextAndCursorsAndSelections,
|
|
2233
|
-
mount: mount,
|
|
2234
|
-
dispose: dispose$3,
|
|
2235
|
-
focus: focus$3,
|
|
2236
|
-
setLanguageId: setLanguageId,
|
|
2237
|
-
renderDiagnostics: renderDiagnostics
|
|
2238
|
-
};
|
|
2239
|
-
|
|
2240
|
-
const state$3 = {
|
|
2241
|
-
instances: Object.create(null),
|
|
2242
|
-
currentSideBarView: undefined,
|
|
2243
|
-
currentPanelView: undefined,
|
|
2244
|
-
modules: Object.create(null),
|
|
2245
|
-
};
|
|
2246
|
-
|
|
2247
|
-
const get = (id) => {
|
|
2248
|
-
switch (id) {
|
|
2249
|
-
case 'Explorer':
|
|
2250
|
-
return import('./ViewletExplorer.js')
|
|
2251
|
-
case 'Run and Debug':
|
|
2252
|
-
return import('./ViewletRunAndDebug.js')
|
|
2253
|
-
case 'Search':
|
|
2254
|
-
return import('./ViewletSearch.js')
|
|
2255
|
-
case 'Source Control':
|
|
2256
|
-
return import('./ViewletSourceControl.js')
|
|
2257
|
-
case 'Terminal':
|
|
2258
|
-
return import('./ViewletTerminal.js')
|
|
2259
|
-
case 'Extensions':
|
|
2260
|
-
return import('./ViewletExtensions.js')
|
|
2261
|
-
case 'Debug Console':
|
|
2262
|
-
return import('./ViewletDebugConsole.js')
|
|
2263
|
-
case 'Output':
|
|
2264
|
-
return import('./ViewletOutput.js')
|
|
2265
|
-
case 'Problems':
|
|
2266
|
-
return import('./ViewletProblems.js')
|
|
2267
|
-
case 'Empty':
|
|
2268
|
-
return import('./ViewletEmpty.js')
|
|
2269
|
-
case 'EditorText':
|
|
2270
|
-
return import('./ViewletEditorText.js')
|
|
2271
|
-
case 'EditorPlainText':
|
|
2272
|
-
return import('./ViewletEditorPlainText.js')
|
|
2273
|
-
case 'EditorImage':
|
|
2274
|
-
return import('./ViewletEditorImage.js')
|
|
2275
|
-
case 'Clock':
|
|
2276
|
-
return import('./ViewletClock.js')
|
|
2277
|
-
case 'SideBar':
|
|
2278
|
-
return import('./ViewletSideBar.js')
|
|
2279
|
-
case 'Panel':
|
|
2280
|
-
return import('./ViewletPanel.js')
|
|
2281
|
-
case 'ActivityBar':
|
|
2282
|
-
return Promise.resolve().then(function () { return M27; })
|
|
2283
|
-
case 'ImagePreview':
|
|
2284
|
-
return import('./ImagePreview.js')
|
|
2285
|
-
case 'QuickPick':
|
|
2286
|
-
return import('./ViewletQuickPick.js')
|
|
2287
|
-
case 'StatusBar':
|
|
2288
|
-
return Promise.resolve().then(function () { return M28; })
|
|
2289
|
-
case 'TitleBar':
|
|
2290
|
-
return Promise.resolve().then(function () { return M29; })
|
|
2291
|
-
case 'Main':
|
|
2292
|
-
return import('./ViewletMain.js')
|
|
2293
|
-
case 'EditorCompletion':
|
|
2294
|
-
return import('./ViewletEditorCompletion.js')
|
|
2295
|
-
case 'References':
|
|
2296
|
-
return import('./ViewletReferences.js')
|
|
2297
|
-
case 'Implementations':
|
|
2298
|
-
return import('./ViewletImplementations.js')
|
|
2299
|
-
default:
|
|
2300
|
-
throw new Error(`unknown viewlet ${id}`)
|
|
2301
|
-
}
|
|
2302
|
-
};
|
|
2303
|
-
|
|
2304
|
-
const load = async (id, ...args) => {
|
|
2305
|
-
const module = await get(id);
|
|
2306
|
-
state$3.modules[id] = module;
|
|
2307
|
-
state$3.instances[id] = {
|
|
2308
|
-
state: module.create(...args),
|
|
2309
|
-
factory: module,
|
|
2310
|
-
};
|
|
2311
|
-
};
|
|
2312
|
-
|
|
2313
|
-
const invoke = (viewletId, method, ...args) => {
|
|
2314
|
-
const instance = state$3.instances[viewletId];
|
|
2315
|
-
if (!instance) {
|
|
2316
|
-
console.warn(`viewlet instance ${viewletId} not found`);
|
|
2317
|
-
return
|
|
2318
|
-
}
|
|
2319
|
-
if (typeof instance.factory[method] !== 'function') {
|
|
2320
|
-
console.warn(`method ${method} in ${viewletId} not implemented`);
|
|
2321
|
-
console.log(instance.factory);
|
|
2322
|
-
return
|
|
2323
|
-
}
|
|
2324
|
-
return instance.factory[method](instance.state, ...args)
|
|
2325
|
-
};
|
|
2326
|
-
|
|
2327
|
-
const focus$2 = (viewletId) => {
|
|
2328
|
-
const instance = state$3.instances[viewletId];
|
|
2329
|
-
if (instance && instance.factory && instance.factory.focus) {
|
|
2330
|
-
instance.factory.focus(instance.state);
|
|
2331
|
-
}
|
|
2332
|
-
};
|
|
2333
|
-
|
|
2334
|
-
/**
|
|
2335
|
-
* @deprecated
|
|
2336
|
-
*/
|
|
2337
|
-
const refresh = (viewletId, viewletContext) => {
|
|
2338
|
-
console.log('REFRESH', viewletId);
|
|
2339
|
-
const instance = state$3.instances[viewletId];
|
|
2340
|
-
if (instance) {
|
|
2341
|
-
instance.factory.refresh(instance.state, viewletContext);
|
|
2342
|
-
} else {
|
|
2343
|
-
// console.warn('no instance yet of ' + viewletId)
|
|
2344
|
-
state$3.refreshContext[viewletId] = viewletContext;
|
|
2345
|
-
}
|
|
2346
|
-
};
|
|
2347
|
-
|
|
2348
|
-
const sendMultiple = (commands) => {
|
|
2349
|
-
for (const command of commands) {
|
|
2350
|
-
const [_, viewletId, method, ...args] = command;
|
|
2351
|
-
invoke(viewletId, method, ...args);
|
|
2352
|
-
}
|
|
2353
|
-
};
|
|
2354
|
-
|
|
2355
|
-
/**
|
|
2356
|
-
* @deprecated
|
|
2357
|
-
*/
|
|
2358
|
-
const dispose$2 = (id) => {
|
|
2359
|
-
string(id);
|
|
2360
|
-
const instance = state$3.instances[id];
|
|
2361
|
-
if (!instance) {
|
|
2362
|
-
console.warn(`viewlet instance ${id} not found and cannot be disposed`);
|
|
2363
|
-
return
|
|
2364
|
-
}
|
|
2365
|
-
try {
|
|
2366
|
-
instance.factory.dispose(instance.state);
|
|
2367
|
-
if (instance.state.$Viewlet && instance.state.$Viewlet.isConnected) {
|
|
2368
|
-
instance.state.$Viewlet.remove();
|
|
2369
|
-
}
|
|
2370
|
-
} catch (error) {
|
|
2371
|
-
console.error(error);
|
|
2372
|
-
}
|
|
2373
|
-
delete state$3.instances[id];
|
|
2374
|
-
};
|
|
2375
|
-
|
|
2376
|
-
const handleError$1 = (id, parentId, message) => {
|
|
2377
|
-
console.log(`[viewlet-error] ${id}: ${message}`);
|
|
2378
|
-
const instance = state$3.instances[id];
|
|
2379
|
-
if (instance && instance.factory && instance.factory.handleError) {
|
|
2380
|
-
instance.factory.handleError(instance.state, message);
|
|
2381
|
-
return
|
|
2382
|
-
}
|
|
2383
|
-
// TODO error should bubble up to until highest possible component
|
|
2384
|
-
const parentInstance = state$3.instances[parentId];
|
|
2385
|
-
if (
|
|
2386
|
-
parentInstance &&
|
|
2387
|
-
parentInstance.factory &&
|
|
2388
|
-
parentInstance.factory.handleError
|
|
2389
|
-
) {
|
|
2390
|
-
parentInstance.factory.handleError(instance.state, message);
|
|
2391
|
-
console.log('parent instance', parentInstance);
|
|
2392
|
-
return
|
|
2393
|
-
}
|
|
2394
|
-
if (
|
|
2395
|
-
instance &&
|
|
2396
|
-
instance.state.$Viewlet &&
|
|
2397
|
-
instance.state.$Viewlet.isConnected
|
|
2398
|
-
) {
|
|
2399
|
-
instance.state.$Viewlet.textContent = `${message}`;
|
|
2400
|
-
}
|
|
2401
|
-
};
|
|
2402
|
-
|
|
2403
|
-
/**
|
|
2404
|
-
* @deprecated
|
|
2405
|
-
*/
|
|
2406
|
-
const appendViewlet = (parentId, childId, focus) => {
|
|
2407
|
-
if (parentId === 'Widget') {
|
|
2408
|
-
// TODO
|
|
2409
|
-
return
|
|
2410
|
-
}
|
|
2411
|
-
const parentInstanceState = state$3.instances[parentId]; // TODO must ensure that parent is already created
|
|
2412
|
-
const parentModule = parentInstanceState.factory;
|
|
2413
|
-
const childInstance = state$3.instances[childId];
|
|
2414
|
-
if (!childInstance) {
|
|
2415
|
-
throw new Error('child instance must be defined to be appended to parent')
|
|
2416
|
-
}
|
|
2417
|
-
parentModule.appendViewlet(
|
|
2418
|
-
parentInstanceState.state,
|
|
2419
|
-
childInstance.factory.name,
|
|
2420
|
-
childInstance.state.$Viewlet
|
|
2421
|
-
);
|
|
2422
|
-
if (focus) {
|
|
2423
|
-
childInstance.factory.focus(childInstance.state);
|
|
2424
|
-
}
|
|
2425
|
-
};
|
|
2426
|
-
|
|
2427
|
-
const __initialize__$4 = () => {
|
|
2428
|
-
register$1('Viewlet.refresh', refresh);
|
|
2429
|
-
register$1('Viewlet.invoke', invoke);
|
|
2430
|
-
register$1('Viewlet.send', invoke);
|
|
2431
|
-
register$1('Viewlet.focus', focus$2);
|
|
2432
|
-
register$1('Viewlet.dispose', dispose$2);
|
|
2433
|
-
register$1('Viewlet.appendViewlet', appendViewlet);
|
|
2434
|
-
register$1('Viewlet.load', load);
|
|
2435
|
-
register$1('Viewlet.handleError', handleError$1);
|
|
2436
|
-
register$1('Viewlet.sendMultiple', sendMultiple);
|
|
2437
|
-
};
|
|
2438
|
-
|
|
2439
|
-
var M6 = {
|
|
2440
|
-
__proto__: null,
|
|
2441
|
-
__initialize__: __initialize__$4
|
|
2442
|
-
};
|
|
2443
|
-
|
|
2444
|
-
const state$2 = {
|
|
2445
|
-
keyBindings: [],
|
|
2446
|
-
modifier: '',
|
|
2447
|
-
modifierTimeout: -1,
|
|
2448
|
-
};
|
|
2449
|
-
|
|
2450
|
-
const getIdentifier = (event) => {
|
|
2451
|
-
let identifier = '';
|
|
2452
|
-
if (event.ctrlKey) {
|
|
2453
|
-
identifier += 'ctrl+';
|
|
2454
|
-
}
|
|
2455
|
-
if (event.shiftKey) {
|
|
2456
|
-
identifier += 'shift+';
|
|
2457
|
-
}
|
|
2458
|
-
if (event.altKey) {
|
|
2459
|
-
identifier += 'alt+';
|
|
2460
|
-
}
|
|
2461
|
-
let key = event.key;
|
|
2462
|
-
if (key === ' ') {
|
|
2463
|
-
key = 'Space';
|
|
2464
|
-
}
|
|
2465
|
-
if (key.length === 1) {
|
|
2466
|
-
key = key.toLowerCase();
|
|
2467
|
-
}
|
|
2468
|
-
identifier += key;
|
|
2469
|
-
return identifier
|
|
2470
|
-
};
|
|
2471
|
-
|
|
2472
|
-
// TODO store keybindings as json somewhere
|
|
2473
|
-
|
|
2474
|
-
// TODO sort keybindings by `when` priority -> focus.editorCompletions: 10, focus.editor:9 etc.
|
|
2475
|
-
|
|
2476
|
-
// TODO does it make sense to have all of these configurable?
|
|
2477
|
-
// could remove some context logic and have less user configuration when these are default
|
|
2478
|
-
// e.g. arrow down focuses next, arrow up always focuses previous item (like in aria spec)
|
|
2479
|
-
|
|
2480
|
-
// TODO ui should only have keys -> commands get resolved inside renderer worker
|
|
2481
|
-
// TODO should toggle terminal, not only open
|
|
2482
|
-
|
|
2483
|
-
const matchesContext = (keybinding) => {
|
|
2484
|
-
if (!keybinding.when) {
|
|
2485
|
-
return true
|
|
2486
|
-
}
|
|
2487
|
-
return get$1(keybinding.when)
|
|
2488
|
-
};
|
|
2489
|
-
|
|
2490
|
-
const getMatchingKeyBinding = (identifier) => {
|
|
2491
|
-
// TODO this could be more efficient in O(N) instead of O(2N)
|
|
2492
|
-
const matchesIdentifier = (keyBinding) => {
|
|
2493
|
-
return keyBinding.key === identifier
|
|
2494
|
-
};
|
|
2495
|
-
const matchingKeyBindings = state$2.keyBindings.filter(matchesIdentifier);
|
|
2496
|
-
const matchingKeyBinding = matchingKeyBindings.find(matchesContext);
|
|
2497
|
-
return matchingKeyBinding
|
|
2498
|
-
};
|
|
2499
|
-
|
|
2500
|
-
const getModifier = (event) => {
|
|
2501
|
-
switch (event.key) {
|
|
2502
|
-
case 'Control':
|
|
2503
|
-
return 'ctrl'
|
|
2504
|
-
case 'Shift':
|
|
2505
|
-
return 'shift'
|
|
2506
|
-
case 'Alt':
|
|
2507
|
-
return 'alt'
|
|
2508
|
-
}
|
|
2509
|
-
return ''
|
|
2510
|
-
};
|
|
2511
|
-
|
|
2512
|
-
const clearModifier = () => {
|
|
2513
|
-
if (!state$2.modifier) {
|
|
2514
|
-
return
|
|
2515
|
-
}
|
|
2516
|
-
if (state$2.modifierTimeout !== -1) {
|
|
2517
|
-
clearTimeout(state$2.modifierTimeout);
|
|
2518
|
-
state$2.modifier = '';
|
|
2519
|
-
state$2.modifierTimeout = -1;
|
|
2520
|
-
}
|
|
2521
|
-
};
|
|
2522
|
-
|
|
2523
|
-
const handleMatchingKeyBinding = (matchingKeyBinding) => {
|
|
2524
|
-
// TODO execute command directly or -> executeCommand -> keybindings -> executeCommand
|
|
2525
|
-
// better directly
|
|
2526
|
-
// TODO always should be number
|
|
2527
|
-
// when launching keybindings -> map string command to number
|
|
2528
|
-
// TODO should args always be defined? (probably yes -> monomorphism & simpler code since all objects are the same)
|
|
2529
|
-
|
|
2530
|
-
// TODO matchingKeyBinding.command should always be number
|
|
2531
|
-
send$1(
|
|
2532
|
-
/* KeyBindings.handleKeyBinding */ 'KeyBindings.handleKeyBinding',
|
|
2533
|
-
/* keyBinding */ matchingKeyBinding
|
|
2534
|
-
);
|
|
2535
|
-
};
|
|
2536
|
-
|
|
2537
|
-
const handleKeyDown$2 = (event) => {
|
|
2538
|
-
const identifier = getIdentifier(event);
|
|
2539
|
-
const matchingKeyBinding = getMatchingKeyBinding(identifier);
|
|
2540
|
-
if (!matchingKeyBinding) {
|
|
2541
|
-
return
|
|
2542
|
-
}
|
|
2543
|
-
event.preventDefault();
|
|
2544
|
-
handleMatchingKeyBinding(matchingKeyBinding);
|
|
2545
|
-
};
|
|
2546
|
-
|
|
2547
|
-
const handleKeyUp = (event) => {
|
|
2548
|
-
const modifier = getModifier(event);
|
|
2549
|
-
if (!modifier) {
|
|
2550
|
-
clearModifier();
|
|
2551
|
-
return
|
|
2552
|
-
}
|
|
2553
|
-
if (state$2.modifier === modifier) {
|
|
2554
|
-
clearModifier();
|
|
2555
|
-
const identifier = `${modifier} ${modifier}`;
|
|
2556
|
-
const matchingKeyBinding = getMatchingKeyBinding(identifier);
|
|
2557
|
-
if (matchingKeyBinding) {
|
|
2558
|
-
handleMatchingKeyBinding(matchingKeyBinding);
|
|
2559
|
-
}
|
|
2560
|
-
return
|
|
2561
|
-
}
|
|
2562
|
-
|
|
2563
|
-
state$2.modifier = modifier;
|
|
2564
|
-
// @ts-ignore
|
|
2565
|
-
state$2.modifierTimeout = setTimeout(clearModifier, 300);
|
|
2566
|
-
};
|
|
2567
|
-
|
|
2568
|
-
const hydrate$1 = async (keyBindings) => {
|
|
2569
|
-
// TODO is this the right place for browser context ?
|
|
2570
|
-
// maybe in env file / env service
|
|
2571
|
-
const browser = getBrowser();
|
|
2572
|
-
set(`browser.${browser}`, true);
|
|
2573
|
-
state$2.keyBindings = keyBindings;
|
|
2574
|
-
window.addEventListener('keydown', handleKeyDown$2);
|
|
2575
|
-
// TODO only need keyup listener if keybindings include double modifier key (e.g "shift shift")
|
|
2576
|
-
window.addEventListener('keyup', handleKeyUp);
|
|
2577
|
-
};
|
|
2578
|
-
|
|
2579
|
-
// TODO should be in renderer worker
|
|
2580
|
-
const lookupKeyBinding = (commandId) => {
|
|
2581
|
-
switch (commandId) {
|
|
2582
|
-
case 'scm.acceptInput':
|
|
2583
|
-
return 'Ctrl+Enter'
|
|
2584
|
-
default:
|
|
2585
|
-
return ''
|
|
2586
|
-
}
|
|
2587
|
-
};
|
|
2588
|
-
|
|
2589
|
-
const __initialize__$3 = () => {
|
|
2590
|
-
register$1('KeyBindings.hydrate', hydrate$1);
|
|
2591
|
-
// Command.register(756, KeyBindings.setKeyBindings)
|
|
2592
|
-
};
|
|
2593
|
-
|
|
2594
|
-
var M7 = {
|
|
2595
|
-
__proto__: null,
|
|
2596
|
-
__initialize__: __initialize__$3
|
|
2597
|
-
};
|
|
2598
|
-
|
|
2599
|
-
const state$1 = {
|
|
2600
|
-
isInDom: false,
|
|
2601
|
-
$PreviousFocusElement: undefined,
|
|
2602
|
-
widgetSet: new Set(),
|
|
2603
|
-
$Widgets: undefined,
|
|
2604
|
-
};
|
|
2605
|
-
|
|
2606
|
-
const create$Widgets = () => {
|
|
2607
|
-
const $Widgets = document.createElement('div');
|
|
2608
|
-
$Widgets.id = 'Widgets';
|
|
2609
|
-
return $Widgets
|
|
2610
|
-
};
|
|
2611
|
-
|
|
2612
|
-
const append = ($Element) => {
|
|
2613
|
-
// TODO should not call append in the first place if it is already in dom
|
|
2614
|
-
if (state$1.widgetSet.has($Element)) {
|
|
2615
|
-
return
|
|
2616
|
-
}
|
|
2617
|
-
state$1.widgetSet.add($Element);
|
|
2618
|
-
if (state$1.$Widgets) {
|
|
2619
|
-
state$1.$Widgets.append($Element);
|
|
2620
|
-
} else {
|
|
2621
|
-
state$1.$Widgets = create$Widgets();
|
|
2622
|
-
state$1.$Widgets.append($Element);
|
|
2623
|
-
document.body.append(state$1.$Widgets);
|
|
2624
|
-
}
|
|
2625
|
-
};
|
|
2626
|
-
|
|
2627
|
-
const find = (id) => {
|
|
2628
|
-
for (const $Widget of state$1.widgetSet) {
|
|
2629
|
-
if ($Widget.dataset.id === id) {
|
|
2630
|
-
return $Widget
|
|
2631
|
-
}
|
|
2632
|
-
}
|
|
2633
|
-
return undefined
|
|
2634
|
-
};
|
|
2635
|
-
|
|
2636
|
-
const remove = ($Element) => {
|
|
2637
|
-
if (!$Element) {
|
|
2638
|
-
// TODO $Element should always be defined
|
|
2639
|
-
return
|
|
2640
|
-
}
|
|
2641
|
-
state$1.widgetSet.delete($Element);
|
|
2642
|
-
$Element.remove();
|
|
2643
|
-
// TODO state.$Widgets should always be defined at this point
|
|
2644
|
-
if (state$1.widgetSet.size === 0 && state$1.$Widgets) {
|
|
2645
|
-
state$1.$Widgets.remove();
|
|
2646
|
-
state$1.$Widgets = undefined;
|
|
2647
|
-
}
|
|
2648
|
-
};
|
|
2649
|
-
|
|
2650
|
-
var M14 = {
|
|
2651
|
-
__proto__: null,
|
|
2652
|
-
state: state$1,
|
|
2653
|
-
append: append,
|
|
2654
|
-
find: find,
|
|
2655
|
-
remove: remove
|
|
2656
|
-
};
|
|
2657
|
-
|
|
2658
|
-
const supportsServiceWorker = () => {
|
|
2659
|
-
return 'serviceWorker' in navigator
|
|
2660
|
-
};
|
|
2661
|
-
|
|
2662
|
-
const handleUpdateFound = () => {
|
|
2663
|
-
// console.info('[service-worker] update found')
|
|
2664
|
-
};
|
|
2665
|
-
|
|
2666
|
-
const handleControllerChange = () => {
|
|
2667
|
-
// console.info('[service-worker] controller changed - reloading page')
|
|
2668
|
-
location.reload();
|
|
2669
|
-
};
|
|
2670
|
-
|
|
2671
|
-
const register = async (url) => {
|
|
2672
|
-
if (!supportsServiceWorker()) {
|
|
2673
|
-
return
|
|
2674
|
-
}
|
|
2675
|
-
const registration = await navigator.serviceWorker.register(url, {
|
|
2676
|
-
scope: '/',
|
|
2677
|
-
type: 'module',
|
|
2678
|
-
});
|
|
2679
|
-
registration.onupdatefound = handleUpdateFound;
|
|
2680
|
-
navigator.serviceWorker.oncontrollerchange = handleControllerChange;
|
|
2681
|
-
};
|
|
2682
|
-
|
|
2683
|
-
const uninstallRegistration = async (registration) => {
|
|
2684
|
-
await registration.unregister();
|
|
2685
|
-
};
|
|
2686
|
-
|
|
2687
|
-
const uninstall = async () => {
|
|
2688
|
-
if (!supportsServiceWorker()) {
|
|
2689
|
-
return
|
|
2690
|
-
}
|
|
2691
|
-
const registrations = await navigator.serviceWorker.getRegistrations();
|
|
2692
|
-
await Promise.all(registrations.map(uninstallRegistration));
|
|
2693
|
-
};
|
|
2694
|
-
|
|
2695
|
-
const __initialize__$2 = () => {
|
|
2696
|
-
register$1('ServiceWorker.register', register);
|
|
2697
|
-
register$1('ServiceWorker.uninstall', uninstall);
|
|
2698
|
-
};
|
|
2699
|
-
|
|
2700
|
-
var M22 = {
|
|
2701
|
-
__proto__: null,
|
|
2702
|
-
__initialize__: __initialize__$2
|
|
2703
|
-
};
|
|
2704
|
-
|
|
2705
|
-
const getPathName = () => {
|
|
2706
|
-
return location.pathname
|
|
2707
|
-
};
|
|
2708
|
-
|
|
2709
|
-
const getHref = () => {
|
|
2710
|
-
return location.href
|
|
2711
|
-
};
|
|
2712
|
-
|
|
2713
|
-
// TODO should do nothing if it is already at this path
|
|
2714
|
-
const setPathName = (pathName) => {
|
|
2715
|
-
const currentPathName = getPathName();
|
|
2716
|
-
if (currentPathName === pathName) {
|
|
2717
|
-
return
|
|
2718
|
-
}
|
|
2719
|
-
history.pushState(null, null, pathName);
|
|
2720
|
-
};
|
|
2721
|
-
|
|
2722
|
-
const handlePopState = (event) => {
|
|
2723
|
-
send$1(/* Workspace.hydrate */ 'Workspace.hydrate');
|
|
2724
|
-
};
|
|
2725
|
-
|
|
2726
|
-
const hydrate = () => {
|
|
2727
|
-
addEventListener('popstate', handlePopState);
|
|
2728
|
-
};
|
|
2729
|
-
|
|
2730
|
-
const __initialize__$1 = () => {
|
|
2731
|
-
register$1('Location.getHref', getHref);
|
|
2732
|
-
register$1('Location.getPathName', getPathName);
|
|
2733
|
-
register$1('Location.hydrate', hydrate);
|
|
2734
|
-
register$1('Location.setPathName', setPathName);
|
|
2735
|
-
};
|
|
2736
|
-
|
|
2737
|
-
var M26 = {
|
|
2738
|
-
__proto__: null,
|
|
2739
|
-
__initialize__: __initialize__$1
|
|
2740
|
-
};
|
|
2741
|
-
|
|
2742
|
-
// TODO this module should be called dom or dom utils
|
|
2743
|
-
|
|
2744
|
-
// TODO this module makes for weird code splitting chunks,
|
|
2745
|
-
// maybe duplicate the code per file for better chunks
|
|
2746
|
-
|
|
2747
|
-
const findIndex = ($Container, $Target) => {
|
|
2748
|
-
while ($Target && $Target.parentNode !== $Container) {
|
|
2749
|
-
$Target = $Target.parentNode;
|
|
2750
|
-
}
|
|
2751
|
-
if (!$Target) {
|
|
2752
|
-
// console.log('no target to find', $Target, event.target)
|
|
2753
|
-
return -1
|
|
2754
|
-
}
|
|
2755
|
-
for (let i = 0; i < $Container.children.length; i++) {
|
|
2756
|
-
if ($Container.children[i] === $Target) {
|
|
2757
|
-
return i
|
|
2758
|
-
}
|
|
2759
|
-
}
|
|
2760
|
-
return -1
|
|
2761
|
-
};
|
|
2762
|
-
|
|
2763
|
-
const getLabel = (item) => {
|
|
2764
|
-
if (!item || !item.label) {
|
|
2765
|
-
console.warn('menu item has missing label', item);
|
|
2766
|
-
return 'n/a'
|
|
2767
|
-
}
|
|
2768
|
-
return item.label
|
|
2769
|
-
};
|
|
2770
|
-
|
|
2771
|
-
const create$MenuItem = (item) => {
|
|
2772
|
-
const $MenuItem = document.createElement('li');
|
|
2773
|
-
switch (item.flags) {
|
|
2774
|
-
case /* None */ 0:
|
|
2775
|
-
$MenuItem.className = 'MenuItem';
|
|
2776
|
-
// @ts-ignore
|
|
2777
|
-
$MenuItem.role = 'menuitem';
|
|
2778
|
-
$MenuItem.textContent = getLabel(item);
|
|
2779
|
-
$MenuItem.tabIndex = -1;
|
|
2780
|
-
break
|
|
2781
|
-
case /* Separator */ 1:
|
|
2782
|
-
$MenuItem.className = 'MenuItemSeparator';
|
|
2783
|
-
// @ts-ignore
|
|
2784
|
-
$MenuItem.role = 'separator';
|
|
2785
|
-
break
|
|
2786
|
-
case /* Checked */ 2:
|
|
2787
|
-
$MenuItem.className = 'MenuItem';
|
|
2788
|
-
// @ts-ignore
|
|
2789
|
-
$MenuItem.role = 'menuitemcheckbox';
|
|
2790
|
-
$MenuItem.ariaChecked = 'true';
|
|
2791
|
-
$MenuItem.textContent = getLabel(item);
|
|
2792
|
-
$MenuItem.tabIndex = -1;
|
|
2793
|
-
break
|
|
2794
|
-
case /* UnChecked */ 3:
|
|
2795
|
-
$MenuItem.className = 'MenuItem';
|
|
2796
|
-
// @ts-ignore
|
|
2797
|
-
$MenuItem.role = 'menuitemcheckbox';
|
|
2798
|
-
$MenuItem.ariaChecked = 'false';
|
|
2799
|
-
$MenuItem.textContent = getLabel(item);
|
|
2800
|
-
$MenuItem.tabIndex = -1;
|
|
2801
|
-
break
|
|
2802
|
-
case /* SubMenu */ 4:
|
|
2803
|
-
$MenuItem.className = 'MenuItem';
|
|
2804
|
-
// @ts-ignore
|
|
2805
|
-
$MenuItem.role = 'menuitem';
|
|
2806
|
-
$MenuItem.textContent = getLabel(item);
|
|
2807
|
-
$MenuItem.tabIndex = -1;
|
|
2808
|
-
$MenuItem.ariaHasPopup = 'true';
|
|
2809
|
-
$MenuItem.ariaExpanded = 'false';
|
|
2810
|
-
break
|
|
2811
|
-
case /* Disabled */ 5:
|
|
2812
|
-
$MenuItem.className = 'MenuItem';
|
|
2813
|
-
// @ts-ignore
|
|
2814
|
-
$MenuItem.role = 'menuitem';
|
|
2815
|
-
$MenuItem.textContent = getLabel(item);
|
|
2816
|
-
$MenuItem.tabIndex = -1;
|
|
2817
|
-
$MenuItem.setAttribute('disabled', 'true');
|
|
2818
|
-
break
|
|
2819
|
-
default:
|
|
2820
|
-
$MenuItem.className = 'MenuItem';
|
|
2821
|
-
// @ts-ignore
|
|
2822
|
-
$MenuItem.role = 'menuitem';
|
|
2823
|
-
$MenuItem.textContent = getLabel(item);
|
|
2824
|
-
$MenuItem.tabIndex = -1;
|
|
2825
|
-
console.warn('invalid menu item flags:', item);
|
|
2826
|
-
break
|
|
2827
|
-
}
|
|
2828
|
-
return $MenuItem
|
|
2829
|
-
};
|
|
2830
|
-
|
|
2831
|
-
const create$BackDrop = () => {
|
|
2832
|
-
const $BackDrop = document.createElement('div');
|
|
2833
|
-
$BackDrop.id = 'BackDrop';
|
|
2834
|
-
return $BackDrop
|
|
2835
|
-
};
|
|
2836
|
-
|
|
2837
|
-
// TODO when pressing tab -> focus next element in tab order and close menu
|
|
2838
|
-
|
|
2839
|
-
// TODO menu and contextmenu should have own keybinding logic
|
|
2840
|
-
// seems not possible to do with just one keybinding listener
|
|
2841
|
-
|
|
2842
|
-
// TODO similar to context menu, show sub menu entries
|
|
2843
|
-
// there can be multiple instances (parent -> child -> child) submenus
|
|
2844
|
-
|
|
2845
|
-
// TODO using .style.top, .style.left causes chrome devtools to show many layout shift -> maybe use transform instead
|
|
2846
|
-
|
|
2847
|
-
// TODO when cycling through items, recalculate style is much slower
|
|
2848
|
-
// than in vscode (1.49ms vs 0.33ms)
|
|
2849
|
-
// paint is also faster in vscode (0.32ms vs 0.14ms)
|
|
2850
|
-
|
|
2851
|
-
// TODO focus on menu is not announced to screenreader
|
|
2852
|
-
|
|
2853
|
-
// TODO recalculate style and paint is slow when cycling through items:
|
|
2854
|
-
// 0.59ms recalculate style
|
|
2855
|
-
// 36us update layer tree
|
|
2856
|
-
// 0.35ms paint
|
|
2857
|
-
// 0.20ms composite layer
|
|
2858
|
-
|
|
2859
|
-
// const contextMenuWidth = 150
|
|
2860
|
-
// const contextMenuHeight = 150 + /* padding */ 8 * 4
|
|
2861
|
-
|
|
2862
|
-
// TODO keyboard handling
|
|
2863
|
-
|
|
2864
|
-
const state = {
|
|
2865
|
-
handleKeyDown(event) {},
|
|
2866
|
-
handleFocusOut(event) {},
|
|
2867
|
-
$$Menus: [],
|
|
2868
|
-
anchorX: 0,
|
|
2869
|
-
anchorY: 0,
|
|
2870
|
-
anchorTime: -1,
|
|
2871
|
-
$BackDrop: undefined,
|
|
2872
|
-
};
|
|
2873
|
-
|
|
2874
|
-
const getLevel = ($Menu) => {
|
|
2875
|
-
return state.$$Menus.indexOf($Menu)
|
|
2876
|
-
};
|
|
2877
|
-
|
|
2878
|
-
const handleMouseDown = (event) => {
|
|
2879
|
-
const $Target = event.target;
|
|
2880
|
-
const $Menu = $Target.closest('.Menu');
|
|
2881
|
-
const index = findIndex($Menu, $Target);
|
|
2882
|
-
if (index === -1) {
|
|
2883
|
-
console.log('index is negative one');
|
|
2884
|
-
return
|
|
2885
|
-
}
|
|
2886
|
-
event.preventDefault();
|
|
2887
|
-
const level = getLevel($Menu);
|
|
2888
|
-
send$1(
|
|
2889
|
-
/* Menu.handleClick */ 'Menu.selectIndex',
|
|
2890
|
-
/* level */ level,
|
|
2891
|
-
/* index */ index
|
|
2892
|
-
);
|
|
2893
|
-
};
|
|
2894
|
-
|
|
2895
|
-
/**
|
|
2896
|
-
*
|
|
2897
|
-
* @param {MouseEvent} event
|
|
2898
|
-
*/
|
|
2899
|
-
const handleMouseEnter$1 = (event) => {
|
|
2900
|
-
const $Target = event.target;
|
|
2901
|
-
// @ts-ignore
|
|
2902
|
-
const $Menu = $Target.closest('.Menu');
|
|
2903
|
-
const x = event.clientX;
|
|
2904
|
-
const y = event.clientY;
|
|
2905
|
-
const timeStamp = event.timeStamp;
|
|
2906
|
-
|
|
2907
|
-
const index = findIndex($Menu, $Target);
|
|
2908
|
-
if (index === -1) {
|
|
2909
|
-
return
|
|
2910
|
-
}
|
|
2911
|
-
const level = getLevel($Menu);
|
|
2912
|
-
send$1(
|
|
2913
|
-
/* Menu.handleMouseEnter */ 'Menu.handleMouseEnter',
|
|
2914
|
-
/* level */ level,
|
|
2915
|
-
/* index */ index,
|
|
2916
|
-
/* x */ x,
|
|
2917
|
-
/* y */ y,
|
|
2918
|
-
/* timeStamp */ timeStamp
|
|
2919
|
-
);
|
|
2920
|
-
};
|
|
2921
|
-
|
|
2922
|
-
const handleMouseMove = (event) => {
|
|
2923
|
-
// const x = event.clientX
|
|
2924
|
-
// const y = event.clientY
|
|
2925
|
-
// console.log('move', { x, y })
|
|
2926
|
-
};
|
|
2927
|
-
|
|
2928
|
-
const handleMouseLeave = (event) => {
|
|
2929
|
-
// const x = event.clientX
|
|
2930
|
-
// const y = event.clientY
|
|
2931
|
-
// console.log('leave', { x, y })
|
|
2932
|
-
};
|
|
2933
|
-
|
|
2934
|
-
// const handleBlur = (event) => {}
|
|
2935
|
-
const handleKeyDown$1 = (event) => {
|
|
2936
|
-
state.handleKeyDown(event);
|
|
2937
|
-
};
|
|
2938
|
-
|
|
2939
|
-
const handleFocusOut$1 = (event) => {
|
|
2940
|
-
state.handleFocusOut(event);
|
|
2941
|
-
};
|
|
2942
|
-
|
|
2943
|
-
const create$Menu = () => {
|
|
2944
|
-
// TODO set aria label on menu (e.g. File, Edit, Selection)
|
|
2945
|
-
const $Menu = document.createElement('ul');
|
|
2946
|
-
$Menu.className = 'Menu';
|
|
2947
|
-
// @ts-ignore
|
|
2948
|
-
$Menu.role = 'menu';
|
|
2949
|
-
$Menu.tabIndex = -1;
|
|
2950
|
-
// $ContextMenu.onmousedown = contextMenuHandleMouseDown
|
|
2951
|
-
// TODO mousedown vs click? (click is usually better but mousedown is faster, why wait 100ms?)
|
|
2952
|
-
$Menu.addEventListener('mousedown', handleMouseDown);
|
|
2953
|
-
$Menu.addEventListener('mouseenter', handleMouseEnter$1, {
|
|
2954
|
-
capture: true,
|
|
2955
|
-
});
|
|
2956
|
-
$Menu.addEventListener('mouseleave', handleMouseLeave, {
|
|
2957
|
-
capture: true,
|
|
2958
|
-
});
|
|
2959
|
-
$Menu.addEventListener('mousemove', handleMouseMove, {
|
|
2960
|
-
passive: true,
|
|
2961
|
-
});
|
|
2962
|
-
$Menu.onkeydown = handleKeyDown$1;
|
|
2963
|
-
$Menu.addEventListener('focusout', handleFocusOut$1);
|
|
2964
|
-
$Menu.oncontextmenu = handleContextMenu$1;
|
|
2965
|
-
// $ContextMenu.onfocus = handleFocus
|
|
2966
|
-
// $ContextMenu.onblur = handleBlur
|
|
2967
|
-
return $Menu
|
|
2968
|
-
};
|
|
2969
|
-
|
|
2970
|
-
const focusIndex$1 = (level, oldFocusedIndex, newFocusedIndex) => {
|
|
2971
|
-
const $Menu = state.$$Menus[level];
|
|
2972
|
-
if (oldFocusedIndex !== -1) {
|
|
2973
|
-
$Menu.children[oldFocusedIndex].classList.remove('Focused');
|
|
2974
|
-
}
|
|
2975
|
-
if (newFocusedIndex !== -1) {
|
|
2976
|
-
$Menu.children[newFocusedIndex].classList.add('Focused');
|
|
2977
|
-
$Menu.children[newFocusedIndex].focus();
|
|
2978
|
-
}
|
|
2979
|
-
};
|
|
2980
|
-
|
|
2981
|
-
// TODO replace function that recycles menu dom nodes
|
|
2982
|
-
|
|
2983
|
-
const handleBackDropMouseDown = () => {
|
|
2984
|
-
send$1(/* Menu.hide */ 'Menu.hide');
|
|
2985
|
-
};
|
|
2986
|
-
|
|
2987
|
-
const handleContextMenu$1 = (event) => {
|
|
2988
|
-
event.preventDefault();
|
|
2989
|
-
};
|
|
2990
|
-
|
|
2991
|
-
const showMenu = (
|
|
2992
|
-
x,
|
|
2993
|
-
y,
|
|
2994
|
-
width,
|
|
2995
|
-
height,
|
|
2996
|
-
items,
|
|
2997
|
-
level,
|
|
2998
|
-
parentIndex = -1,
|
|
2999
|
-
mouseBlocking = false
|
|
3000
|
-
) => {
|
|
3001
|
-
if (mouseBlocking) {
|
|
3002
|
-
const $BackDrop = create$BackDrop();
|
|
3003
|
-
$BackDrop.onmousedown = handleBackDropMouseDown;
|
|
3004
|
-
$BackDrop.oncontextmenu = handleContextMenu$1;
|
|
3005
|
-
state.$BackDrop = $BackDrop;
|
|
3006
|
-
append($BackDrop);
|
|
3007
|
-
}
|
|
3008
|
-
|
|
3009
|
-
const $Menu = create$Menu();
|
|
3010
|
-
$Menu.append(...items.map(create$MenuItem));
|
|
3011
|
-
$Menu.style.left = `${x}px`;
|
|
3012
|
-
$Menu.style.top = `${y}px`;
|
|
3013
|
-
$Menu.id = `Menu-${level}`;
|
|
3014
|
-
|
|
3015
|
-
if (parentIndex !== -1) {
|
|
3016
|
-
const $ParentMenu = state.$$Menus[level - 1];
|
|
3017
|
-
const $ParentMenuItem = $ParentMenu.children[parentIndex];
|
|
3018
|
-
$ParentMenuItem.ariaExpanded = 'true';
|
|
3019
|
-
$ParentMenuItem.setAttribute('aria-owns', $Menu.id);
|
|
3020
|
-
}
|
|
3021
|
-
|
|
3022
|
-
state.$$Menus.push($Menu);
|
|
3023
|
-
append($Menu);
|
|
3024
|
-
|
|
3025
|
-
if (level === 0) {
|
|
3026
|
-
focus$4($Menu, 'menu');
|
|
3027
|
-
}
|
|
3028
|
-
};
|
|
3029
|
-
|
|
3030
|
-
const showContextMenu = (x, y, width, height, level, items) => {
|
|
3031
|
-
for (const $Menu of state.$$Menus) {
|
|
3032
|
-
remove($Menu);
|
|
3033
|
-
}
|
|
3034
|
-
state.$$Menus = [];
|
|
3035
|
-
while (state.$$Menus.length > 0) {
|
|
3036
|
-
state.$$Menus[0].remove();
|
|
3037
|
-
}
|
|
3038
|
-
const $Menu = create$Menu();
|
|
3039
|
-
$Menu.append(...items.map(create$MenuItem));
|
|
3040
|
-
$Menu.style.left = `${x}px`;
|
|
3041
|
-
$Menu.style.top = `${y}px`;
|
|
3042
|
-
$Menu.id = `Menu-${level}`;
|
|
3043
|
-
append($Menu);
|
|
3044
|
-
state.$$Menus.push($Menu);
|
|
3045
|
-
// TODO create backdrop
|
|
3046
|
-
};
|
|
3047
|
-
|
|
3048
|
-
const closeSubMenu = () => {
|
|
3049
|
-
const $SubMenu = state.$$Menus.pop();
|
|
3050
|
-
state.$$Menus.at(-1);
|
|
3051
|
-
remove($SubMenu);
|
|
3052
|
-
};
|
|
3053
|
-
|
|
3054
|
-
const hideSubMenu = (level) => {
|
|
3055
|
-
const $$ChildMenus = state.$$Menus.slice(level);
|
|
3056
|
-
for (const $ChildMenu of $$ChildMenus) {
|
|
3057
|
-
remove($ChildMenu);
|
|
3058
|
-
}
|
|
3059
|
-
};
|
|
3060
|
-
|
|
3061
|
-
// export const showSubMenu = (level, items, parentIndex) => {
|
|
3062
|
-
// const $$ChildMenus = state.$$Menus.slice(level)
|
|
3063
|
-
// for (const $ChildMenu of $$ChildMenus) {
|
|
3064
|
-
// Widget.remove($ChildMenu)
|
|
3065
|
-
// }
|
|
3066
|
-
// state.$$Menus = state.$$Menus.slice(0, level)
|
|
3067
|
-
// const $ParentMenu = state.$$Menus[level - 1]
|
|
3068
|
-
// const $ParentMenuItem = $ParentMenu.children[parentIndex]
|
|
3069
|
-
// const rect = $ParentMenuItem.getBoundingClientRect()
|
|
3070
|
-
// const x = rect.right
|
|
3071
|
-
// const y = rect.top
|
|
3072
|
-
// showMenu(x, y, items, level)
|
|
3073
|
-
// // TODO remove aria-owns when sub-menu is closed
|
|
3074
|
-
// $ParentMenuItem.setAttribute('aria-owns', 'Menu')
|
|
3075
|
-
// }
|
|
3076
|
-
|
|
3077
|
-
// TODO implement focusIndex like this
|
|
3078
|
-
// const focusIndex2=(id, index)=>{
|
|
3079
|
-
// const $Menu = state.menus[id]
|
|
3080
|
-
// $Menu.children[index].focus()
|
|
3081
|
-
// }
|
|
3082
|
-
|
|
3083
|
-
// TODO support nested menus / submenus
|
|
3084
|
-
const showControlled = ({
|
|
3085
|
-
x,
|
|
3086
|
-
y,
|
|
3087
|
-
items,
|
|
3088
|
-
handleKeyDown,
|
|
3089
|
-
handleFocusOut,
|
|
3090
|
-
$Parent,
|
|
3091
|
-
level,
|
|
3092
|
-
width,
|
|
3093
|
-
height,
|
|
3094
|
-
}) => {
|
|
3095
|
-
showMenu(x, y, width, height, items, level);
|
|
3096
|
-
// TODO menu should not necessarily know about parent (titleBarMenuBar)
|
|
3097
|
-
// it should be the other way around
|
|
3098
|
-
state.$Parent = $Parent;
|
|
3099
|
-
state.handleFocusOut = handleFocusOut;
|
|
3100
|
-
state.handleKeyDown = handleKeyDown;
|
|
3101
|
-
if ($Parent) {
|
|
3102
|
-
// state.$Menu.ariaLabel=''
|
|
3103
|
-
// state.$Menu.ariaLabelledBy =$Parent.id
|
|
3104
|
-
$Parent.setAttribute('aria-owns', 'Menu');
|
|
3105
|
-
}
|
|
3106
|
-
// Context.setFocus('menu') // TODO overlapping focus: titleBarMenuBar has focus (kinda) but also menu at the same time
|
|
3107
|
-
};
|
|
3108
|
-
|
|
3109
|
-
// TODO have function to show submenu
|
|
3110
|
-
|
|
3111
|
-
const hide = (restoreFocus = true) => {
|
|
3112
|
-
for (const $Menu of state.$$Menus) {
|
|
3113
|
-
remove($Menu);
|
|
3114
|
-
}
|
|
3115
|
-
state.$$Menus = [];
|
|
3116
|
-
if (state.$BackDrop) {
|
|
3117
|
-
remove(state.$BackDrop);
|
|
3118
|
-
state.$BackDrop = undefined;
|
|
3119
|
-
}
|
|
3120
|
-
// TODO focus previous item
|
|
3121
|
-
if (restoreFocus) {
|
|
3122
|
-
focusPrevious();
|
|
3123
|
-
}
|
|
3124
|
-
};
|
|
3125
|
-
|
|
3126
|
-
const contains = ($Element) => {
|
|
3127
|
-
for (const $Menu of state.$$Menus) {
|
|
3128
|
-
if ($Menu.contains($Element)) {
|
|
3129
|
-
return true
|
|
3130
|
-
}
|
|
3131
|
-
}
|
|
3132
|
-
return false
|
|
3133
|
-
};
|
|
3134
|
-
|
|
3135
|
-
var M13 = {
|
|
3136
|
-
__proto__: null,
|
|
3137
|
-
state: state,
|
|
3138
|
-
focusIndex: focusIndex$1,
|
|
3139
|
-
showMenu: showMenu,
|
|
3140
|
-
showContextMenu: showContextMenu,
|
|
3141
|
-
closeSubMenu: closeSubMenu,
|
|
3142
|
-
hideSubMenu: hideSubMenu,
|
|
3143
|
-
showControlled: showControlled,
|
|
3144
|
-
hide: hide,
|
|
3145
|
-
contains: contains
|
|
3146
|
-
};
|
|
3147
|
-
|
|
3148
|
-
// TODO set aria-selected false when sidebar is collapsed
|
|
3149
|
-
|
|
3150
|
-
const create$ActivityBarItemIcon = (icon) => {
|
|
3151
|
-
const $ActivityBarItemIcon = document.createElement('div');
|
|
3152
|
-
$ActivityBarItemIcon.className = 'ActivityBarItemIcon';
|
|
3153
|
-
// @ts-ignore
|
|
3154
|
-
$ActivityBarItemIcon.style.maskImage = `url(${icon})`;
|
|
3155
|
-
$ActivityBarItemIcon.style.webkitMaskImage = `url(${icon})`;
|
|
3156
|
-
return $ActivityBarItemIcon
|
|
3157
|
-
};
|
|
3158
|
-
|
|
3159
|
-
// TODO assetDir might not work with non-builtin extension icons
|
|
3160
|
-
const create$ActivityBarItem = (item) => {
|
|
3161
|
-
const assetDir = getAssetDir();
|
|
3162
|
-
const $ActivityBarItemIcon = create$ActivityBarItemIcon(
|
|
3163
|
-
`${assetDir}/${item.icon}`
|
|
3164
|
-
);
|
|
3165
|
-
const $ActivityBarItem = document.createElement('div');
|
|
3166
|
-
$ActivityBarItem.className = 'ActivityBarItem';
|
|
3167
|
-
$ActivityBarItem.ariaLabel = ''; // aria-label is determined by content TODO is empty aria-label necessary or can it be left off?
|
|
3168
|
-
$ActivityBarItem.title = item.id;
|
|
3169
|
-
$ActivityBarItem.tabIndex = -1;
|
|
3170
|
-
$ActivityBarItem.dataset.viewletId = item.id;
|
|
3171
|
-
if (item.keyShortcuts) {
|
|
3172
|
-
$ActivityBarItem.ariaKeyShortcuts = item.keyShortcuts;
|
|
3173
|
-
}
|
|
3174
|
-
switch (item.flags) {
|
|
3175
|
-
case /* Tab */ 1:
|
|
3176
|
-
// @ts-ignore
|
|
3177
|
-
$ActivityBarItem.role = 'tab';
|
|
3178
|
-
$ActivityBarItem.ariaSelected = 'false';
|
|
3179
|
-
break
|
|
3180
|
-
case /* Button */ 2:
|
|
3181
|
-
// @ts-ignore
|
|
3182
|
-
$ActivityBarItem.role = 'button';
|
|
3183
|
-
$ActivityBarItem.ariaHasPopup = 'true';
|
|
3184
|
-
break
|
|
3185
|
-
default:
|
|
3186
|
-
console.warn(`unknown activity bar item flags ${item.flags}`);
|
|
3187
|
-
break
|
|
3188
|
-
}
|
|
3189
|
-
$ActivityBarItem.append($ActivityBarItemIcon);
|
|
3190
|
-
return $ActivityBarItem
|
|
3191
|
-
};
|
|
3192
|
-
|
|
3193
|
-
const get$ItemFromEvent = (event) => {
|
|
3194
|
-
const $Target = event.target;
|
|
3195
|
-
switch ($Target.className) {
|
|
3196
|
-
case 'ActivityBarItemIcon':
|
|
3197
|
-
return $Target.parentNode
|
|
3198
|
-
case 'ActivityBarItem':
|
|
3199
|
-
return $Target
|
|
3200
|
-
default:
|
|
3201
|
-
return undefined
|
|
3202
|
-
}
|
|
3203
|
-
};
|
|
3204
|
-
|
|
3205
|
-
const getNodeIndex$1 = ($Node) => {
|
|
3206
|
-
let index = 0;
|
|
3207
|
-
while (($Node = $Node.previousElementSibling)) {
|
|
3208
|
-
index++;
|
|
3209
|
-
}
|
|
3210
|
-
return index
|
|
3211
|
-
};
|
|
3212
|
-
|
|
3213
|
-
const handleMousedown = (event) => {
|
|
3214
|
-
if (event.button !== 0) {
|
|
3215
|
-
return
|
|
3216
|
-
}
|
|
3217
|
-
const $Item = get$ItemFromEvent(event);
|
|
3218
|
-
if (!$Item) {
|
|
3219
|
-
return
|
|
3220
|
-
}
|
|
3221
|
-
event.preventDefault();
|
|
3222
|
-
event.stopPropagation();
|
|
3223
|
-
const index = getNodeIndex$1($Item);
|
|
3224
|
-
const x = event.clientX;
|
|
3225
|
-
const y = event.clientY;
|
|
3226
|
-
send$1(
|
|
3227
|
-
/* ActivityBar.handleClick */ 'ActivityBar.handleClick',
|
|
3228
|
-
/* index */ index,
|
|
3229
|
-
/* x */ x,
|
|
3230
|
-
/* y */ y
|
|
3231
|
-
);
|
|
3232
|
-
};
|
|
3233
|
-
|
|
3234
|
-
const handleContextMenu = (event) => {
|
|
3235
|
-
event.preventDefault();
|
|
3236
|
-
// TODO also move side bar position command
|
|
3237
|
-
const x = event.clientX;
|
|
3238
|
-
const y = event.clientY;
|
|
3239
|
-
send$1(
|
|
3240
|
-
/* activityBarHandleContextMenu */ 'ActivityBar.handleContextMenu',
|
|
3241
|
-
/* x */ x,
|
|
3242
|
-
/* y */ y
|
|
3243
|
-
);
|
|
3244
|
-
};
|
|
3245
|
-
|
|
3246
|
-
const handleBlur = () => {};
|
|
3247
|
-
|
|
3248
|
-
const name = 'ActivityBar';
|
|
3249
|
-
|
|
3250
|
-
const create$3 = () => {
|
|
3251
|
-
const $ActivityBar = state$6.$ActivityBar;
|
|
3252
|
-
$ActivityBar.role = 'toolbar';
|
|
3253
|
-
$ActivityBar.ariaLabel = 'Activity Bar';
|
|
3254
|
-
$ActivityBar.ariaOrientation = 'vertical';
|
|
3255
|
-
// $ActivityBar.append(...activityBarItems.map(create$ActivityBarItem))
|
|
3256
|
-
$ActivityBar.onmousedown = handleMousedown;
|
|
3257
|
-
$ActivityBar.oncontextmenu = handleContextMenu;
|
|
3258
|
-
$ActivityBar.onblur = handleBlur;
|
|
3259
|
-
$ActivityBar.addEventListener('focusin', handleFocusIn);
|
|
3260
|
-
// $ActivityBar.children[focusedIndex].tabIndex = 0
|
|
3261
|
-
return {
|
|
3262
|
-
$ActivityBar,
|
|
3263
|
-
}
|
|
3264
|
-
};
|
|
3265
|
-
|
|
3266
|
-
const dispose$1 = (state) => {};
|
|
3267
|
-
|
|
3268
|
-
const setItems$1 = (state, activityBarItems) => {
|
|
3269
|
-
object(state);
|
|
3270
|
-
array(activityBarItems);
|
|
3271
|
-
const $ActivityBar = state.$ActivityBar;
|
|
3272
|
-
while ($ActivityBar.firstChild) {
|
|
3273
|
-
$ActivityBar.firstChild.remove();
|
|
3274
|
-
}
|
|
3275
|
-
$ActivityBar.append(...activityBarItems.map(create$ActivityBarItem));
|
|
3276
|
-
};
|
|
3277
|
-
|
|
3278
|
-
const handleFocusIn = () => {
|
|
3279
|
-
setFocus('activityBar');
|
|
3280
|
-
};
|
|
3281
|
-
|
|
3282
|
-
const selectIndex = (state, oldIndex, newIndex) => {
|
|
3283
|
-
if (oldIndex !== -1) {
|
|
3284
|
-
const $OldItem = state.$ActivityBar.children[oldIndex];
|
|
3285
|
-
$OldItem.ariaSelected = 'false';
|
|
3286
|
-
if (newIndex !== -1) {
|
|
3287
|
-
$OldItem.tabIndex = -1;
|
|
3288
|
-
}
|
|
3289
|
-
}
|
|
3290
|
-
if (newIndex !== -1) {
|
|
3291
|
-
const $NewItem = state.$ActivityBar.children[newIndex];
|
|
3292
|
-
$NewItem.ariaSelected = 'true';
|
|
3293
|
-
$NewItem.tabIndex = 0;
|
|
3294
|
-
}
|
|
3295
|
-
};
|
|
3296
|
-
|
|
3297
|
-
const focus$Item = ($Item) => {
|
|
3298
|
-
focus$4($Item, 'activityBar');
|
|
3299
|
-
};
|
|
3300
|
-
|
|
3301
|
-
const setFocusedIndex = (state, oldIndex, newIndex) => {
|
|
3302
|
-
const { $ActivityBar } = state;
|
|
3303
|
-
if (oldIndex !== -1) {
|
|
3304
|
-
const $OldItem = $ActivityBar.children[oldIndex];
|
|
3305
|
-
$OldItem.tabIndex = -1;
|
|
3306
|
-
$OldItem.classList.remove('FocusOutline');
|
|
3307
|
-
}
|
|
3308
|
-
if (newIndex !== -1) {
|
|
3309
|
-
const $NewItem = $ActivityBar.children[newIndex];
|
|
3310
|
-
$NewItem.tabIndex = 0;
|
|
3311
|
-
$NewItem.classList.add('FocusOutline');
|
|
3312
|
-
focus$Item($NewItem);
|
|
3313
|
-
}
|
|
3314
|
-
};
|
|
3315
|
-
|
|
3316
|
-
const setBadgeCount = (state, index, count) => {
|
|
3317
|
-
const { $ActivityBar } = state;
|
|
3318
|
-
const $Item = $ActivityBar.children[index];
|
|
3319
|
-
const $Badge = document.createElement('div');
|
|
3320
|
-
$Badge.className = 'ActivityBarItemBadge';
|
|
3321
|
-
$Badge.textContent = `${count}`;
|
|
3322
|
-
// @ts-ignore
|
|
3323
|
-
$Item.append($Badge);
|
|
3324
|
-
};
|
|
3325
|
-
|
|
3326
|
-
var M27 = {
|
|
3327
|
-
__proto__: null,
|
|
3328
|
-
name: name,
|
|
3329
|
-
create: create$3,
|
|
3330
|
-
dispose: dispose$1,
|
|
3331
|
-
setItems: setItems$1,
|
|
3332
|
-
selectIndex: selectIndex,
|
|
3333
|
-
setFocusedIndex: setFocusedIndex,
|
|
3334
|
-
setBadgeCount: setBadgeCount
|
|
3335
|
-
};
|
|
3336
|
-
|
|
3337
|
-
const getIconClassName = (icon) => {
|
|
3338
|
-
switch (icon) {
|
|
3339
|
-
case '$(sync-spin)':
|
|
3340
|
-
case '$(sync~spin)':
|
|
3341
|
-
return 'StatusBarIcon AnimationSpin'
|
|
3342
|
-
case '$(sync)':
|
|
3343
|
-
return 'StatusBarIcon'
|
|
3344
|
-
case '$(source-control)':
|
|
3345
|
-
return 'StatusBarIcon'
|
|
3346
|
-
default:
|
|
3347
|
-
console.warn(`unknown icon "${icon}"`);
|
|
3348
|
-
return ''
|
|
3349
|
-
}
|
|
3350
|
-
};
|
|
3351
|
-
|
|
3352
|
-
const getMaskImageUrl = (icon) => {
|
|
3353
|
-
switch (icon) {
|
|
3354
|
-
case '$(sync-spin)':
|
|
3355
|
-
case '$(sync~spin)':
|
|
3356
|
-
case '$(sync)':
|
|
3357
|
-
return 'url(/icons/icon-sync.svg)'
|
|
3358
|
-
case '$(source-control)':
|
|
3359
|
-
return 'url(/icons/icon-source-control.svg)'
|
|
3360
|
-
default:
|
|
3361
|
-
return ''
|
|
3362
|
-
}
|
|
3363
|
-
};
|
|
3364
|
-
|
|
3365
|
-
const create$StatusBarItem = (item) => {
|
|
3366
|
-
const $StatusBarItem = document.createElement('li');
|
|
3367
|
-
$StatusBarItem.className = 'StatusBarItem';
|
|
3368
|
-
// @ts-ignore
|
|
3369
|
-
$StatusBarItem.role = 'button';
|
|
3370
|
-
$StatusBarItem.dataset.name = item.name;
|
|
3371
|
-
$StatusBarItem.tabIndex = -1;
|
|
3372
|
-
$StatusBarItem.textContent = item.text;
|
|
3373
|
-
$StatusBarItem.dataset.command = item.command;
|
|
3374
|
-
if (item.tooltip) {
|
|
3375
|
-
$StatusBarItem.title = item.tooltip;
|
|
3376
|
-
}
|
|
3377
|
-
if (item.icon) {
|
|
3378
|
-
const $StatusBarItemIcon = document.createElement('span');
|
|
3379
|
-
$StatusBarItemIcon.className = getIconClassName(item.icon);
|
|
3380
|
-
// @ts-ignore
|
|
3381
|
-
$StatusBarItemIcon.style.maskImage = getMaskImageUrl(item.icon);
|
|
3382
|
-
$StatusBarItemIcon.style.webkitMaskImage = getMaskImageUrl(item.icon);
|
|
3383
|
-
$StatusBarItem.prepend($StatusBarItemIcon);
|
|
3384
|
-
}
|
|
3385
|
-
return $StatusBarItem
|
|
3386
|
-
};
|
|
3387
|
-
|
|
3388
|
-
const handleClick$1 = (event) => {
|
|
3389
|
-
const $Target = event.target;
|
|
3390
|
-
if ($Target.className !== 'StatusBarItem') {
|
|
3391
|
-
return
|
|
3392
|
-
}
|
|
3393
|
-
const command = Number.parseInt($Target.dataset.command, 10);
|
|
3394
|
-
send$1(command);
|
|
3395
|
-
};
|
|
3396
|
-
|
|
3397
|
-
// TODO get items from renderer worker
|
|
3398
|
-
// const statusBarItemsLeft = [
|
|
3399
|
-
// {
|
|
3400
|
-
// name: 'RunTests',
|
|
3401
|
-
// text: 'Run Tests',
|
|
3402
|
-
// tooltip: '',
|
|
3403
|
-
// command: 909021,
|
|
3404
|
-
// },
|
|
3405
|
-
// ]
|
|
3406
|
-
|
|
3407
|
-
// const statusBarItemsRight = []
|
|
3408
|
-
|
|
3409
|
-
const create$2 = (statusBarItemsLeft, statusBarItemsRight) => {
|
|
3410
|
-
const $StatusBarItemsLeft = document.createElement('ul');
|
|
3411
|
-
$StatusBarItemsLeft.id = 'StatusBarItemsLeft';
|
|
3412
|
-
|
|
3413
|
-
const $StatusBarItemsRight = document.createElement('ul');
|
|
3414
|
-
$StatusBarItemsRight.id = 'StatusBarItemsRight';
|
|
3415
|
-
|
|
3416
|
-
const $StatusBar = state$6.$StatusBar;
|
|
3417
|
-
$StatusBar.onclick = handleClick$1;
|
|
3418
|
-
$StatusBar.tabIndex = 0;
|
|
3419
|
-
$StatusBar.role = 'status';
|
|
3420
|
-
$StatusBar.ariaLive = 'off'; // see https://github.com/microsoft/vscode/issues/94677
|
|
3421
|
-
$StatusBar.append($StatusBarItemsLeft, $StatusBarItemsRight);
|
|
3422
|
-
|
|
3423
|
-
return {
|
|
3424
|
-
$StatusBar,
|
|
3425
|
-
$StatusBarItemsLeft,
|
|
3426
|
-
$StatusBarItemsRight,
|
|
3427
|
-
}
|
|
3428
|
-
};
|
|
3429
|
-
|
|
3430
|
-
const clearNode = (node) => {
|
|
3431
|
-
while (node.firstChild) {
|
|
3432
|
-
node.firstChild.remove();
|
|
3433
|
-
}
|
|
3434
|
-
};
|
|
3435
|
-
|
|
3436
|
-
const setItems = (state, statusBarItemsLeft, statusBarItemsRight) => {
|
|
3437
|
-
const $StatusBarItemsLeft = state.$StatusBarItemsLeft;
|
|
3438
|
-
const $StatusBarItemsRight = state.$StatusBarItemsRight;
|
|
3439
|
-
clearNode($StatusBarItemsLeft);
|
|
3440
|
-
clearNode($StatusBarItemsRight);
|
|
3441
|
-
$StatusBarItemsLeft.append(...statusBarItemsLeft.map(create$StatusBarItem));
|
|
3442
|
-
$StatusBarItemsRight.append(...statusBarItemsRight.map(create$StatusBarItem));
|
|
3443
|
-
};
|
|
3444
|
-
|
|
3445
|
-
const focus$1 = (state) => {
|
|
3446
|
-
object(state);
|
|
3447
|
-
state.$StatusBar.focus();
|
|
3448
|
-
};
|
|
3449
|
-
|
|
3450
|
-
var M28 = {
|
|
3451
|
-
__proto__: null,
|
|
3452
|
-
create: create$2,
|
|
3453
|
-
setItems: setItems,
|
|
3454
|
-
focus: focus$1
|
|
3455
|
-
};
|
|
3456
|
-
|
|
3457
|
-
// TODO set proper tabIndex 0 to focused item https://www.w3.org/TR/wai-aria-practices/examples/menubar/menubar-1/menubar-1.html
|
|
3458
|
-
|
|
3459
|
-
// TODO screenreader doesn't read top level label
|
|
3460
|
-
// when menu is open,
|
|
3461
|
-
// first item is selected,
|
|
3462
|
-
// right is clicked it just reads
|
|
3463
|
-
// "Expanded" instead of "Selection Expanded"
|
|
3464
|
-
|
|
3465
|
-
// TODO sometimes screenreader reads too much (e.g. "File, expanded, opens menu, expanded")
|
|
3466
|
-
|
|
3467
|
-
// TODO don't focus on separators
|
|
3468
|
-
|
|
3469
|
-
// TODO don't focus on hover
|
|
3470
|
-
// only focus on hover when it has already focus or the menu has focus
|
|
3471
|
-
|
|
3472
|
-
// TODO title bar menu bar is very inefficient:
|
|
3473
|
-
|
|
3474
|
-
// before: 5 times recalculate style
|
|
3475
|
-
// 1.37ms Recalculate style
|
|
3476
|
-
// 83us Update Layer tree
|
|
3477
|
-
// 0.34ms paint
|
|
3478
|
-
// 0.79ms composite layer
|
|
3479
|
-
// 0.23ms Hit test
|
|
3480
|
-
// 1.42ms Recalculate style
|
|
3481
|
-
// 1.44ms Recalculate style
|
|
3482
|
-
// 2.08ms Recalculate style
|
|
3483
|
-
// 0.44ms Recalculate style
|
|
3484
|
-
// 0.52ms Layout
|
|
3485
|
-
// 0.16ms Update Layer Tree
|
|
3486
|
-
// 48us hit test
|
|
3487
|
-
// 16us Update Layer Tree
|
|
3488
|
-
// 0.36ms paint
|
|
3489
|
-
// 0.33ms composite layer
|
|
3490
|
-
|
|
3491
|
-
// now: 2 recalculate styles
|
|
3492
|
-
// 0.43ms recalculate style
|
|
3493
|
-
// 0.53ms recalculate style
|
|
3494
|
-
// 0.19ms layout
|
|
3495
|
-
// 0.16ms update layer tree
|
|
3496
|
-
// 30us hit test
|
|
3497
|
-
// 17us update layer tree
|
|
3498
|
-
// 0.17ms paint
|
|
3499
|
-
// 0.19ms composite layers
|
|
3500
|
-
|
|
3501
|
-
const create$TopLevelEntry = (item) => {
|
|
3502
|
-
const $TitleBarTopLevelEntry = document.createElement('li');
|
|
3503
|
-
$TitleBarTopLevelEntry.className = 'TitleBarTopLevelEntry';
|
|
3504
|
-
$TitleBarTopLevelEntry.tabIndex = -1;
|
|
3505
|
-
$TitleBarTopLevelEntry.ariaHasPopup = 'true';
|
|
3506
|
-
$TitleBarTopLevelEntry.ariaExpanded = 'false';
|
|
3507
|
-
// @ts-ignore
|
|
3508
|
-
$TitleBarTopLevelEntry.role = 'menuitem';
|
|
3509
|
-
if (item.keyboardShortCut) {
|
|
3510
|
-
$TitleBarTopLevelEntry.ariaKeyShortcuts = item.keyboardShortCut;
|
|
3511
|
-
}
|
|
3512
|
-
$TitleBarTopLevelEntry.textContent = item.name;
|
|
3513
|
-
$TitleBarTopLevelEntry.dataset.id = item.id;
|
|
3514
|
-
$TitleBarTopLevelEntry.id = `MenuItem-${item.id}`;
|
|
3515
|
-
return $TitleBarTopLevelEntry
|
|
3516
|
-
};
|
|
3517
|
-
|
|
3518
|
-
const getMenuEntryBounds = (state, index) => {
|
|
3519
|
-
const $MenuEntry = state.$TitleBarMenu.children[index];
|
|
3520
|
-
const rect = $MenuEntry.getBoundingClientRect();
|
|
3521
|
-
return {
|
|
3522
|
-
left: rect.left,
|
|
3523
|
-
bottom: rect.bottom,
|
|
3524
|
-
}
|
|
3525
|
-
};
|
|
3526
|
-
|
|
3527
|
-
const getNodeIndex = ($Node) => {
|
|
3528
|
-
let index = 0;
|
|
3529
|
-
while (($Node = $Node.previousElementSibling)) {
|
|
3530
|
-
index++;
|
|
3531
|
-
}
|
|
3532
|
-
return index
|
|
3533
|
-
};
|
|
3534
|
-
|
|
3535
|
-
const getIndex = ($Target) => {
|
|
3536
|
-
switch ($Target.className) {
|
|
3537
|
-
case 'TitleBarTopLevelEntry':
|
|
3538
|
-
return getNodeIndex($Target)
|
|
3539
|
-
default:
|
|
3540
|
-
return -1
|
|
3541
|
-
}
|
|
3542
|
-
};
|
|
3543
|
-
|
|
3544
|
-
const handleClick = (event) => {
|
|
3545
|
-
const $Target = event.target;
|
|
3546
|
-
const index = getIndex($Target);
|
|
3547
|
-
if (index === -1) {
|
|
3548
|
-
return
|
|
3549
|
-
}
|
|
3550
|
-
// event.preventDefault()
|
|
3551
|
-
send$1(
|
|
3552
|
-
/* TitleBarMenu.toggleIndex */ 'TitleBarMenuBar.toggleIndex',
|
|
3553
|
-
/* index */ index
|
|
3554
|
-
);
|
|
3555
|
-
};
|
|
3556
|
-
|
|
3557
|
-
const focusIndex = (state, unFocusIndex, index) => {
|
|
3558
|
-
object(state);
|
|
3559
|
-
number(unFocusIndex);
|
|
3560
|
-
number(focusIndex);
|
|
3561
|
-
console.log('FOCUS ONE');
|
|
3562
|
-
console.log({ unFocusIndex, index });
|
|
3563
|
-
const $TitleBarMenu = state.$TitleBarMenu;
|
|
3564
|
-
if (unFocusIndex !== -1) {
|
|
3565
|
-
$TitleBarMenu.children[unFocusIndex].ariaExpanded = 'false';
|
|
3566
|
-
$TitleBarMenu.children[unFocusIndex].removeAttribute('aria-owns');
|
|
3567
|
-
}
|
|
3568
|
-
$TitleBarMenu.children[index].focus();
|
|
3569
|
-
};
|
|
3570
|
-
|
|
3571
|
-
const handleMouseEnter = (event) => {
|
|
3572
|
-
const $Target = event.target;
|
|
3573
|
-
const index = getIndex($Target);
|
|
3574
|
-
if (index === -1) {
|
|
3575
|
-
return
|
|
3576
|
-
}
|
|
3577
|
-
const enterX = event.clientX;
|
|
3578
|
-
const enterY = event.clientY;
|
|
3579
|
-
send$1(
|
|
3580
|
-
/* TitleBarMenu.focusIndex */ 'TitleBarMenuBar.focusIndex',
|
|
3581
|
-
/* index */ index,
|
|
3582
|
-
/* enterX */ enterX,
|
|
3583
|
-
/* enterY */ enterY
|
|
3584
|
-
);
|
|
3585
|
-
};
|
|
3586
|
-
|
|
3587
|
-
// TODO the focus variable is confusing: false means keep focus in menubar, true means focus the menu
|
|
3588
|
-
const openMenu = (
|
|
3589
|
-
state$1,
|
|
3590
|
-
unFocusIndex,
|
|
3591
|
-
index,
|
|
3592
|
-
level,
|
|
3593
|
-
menuItems,
|
|
3594
|
-
menuFocusedIndex,
|
|
3595
|
-
focus,
|
|
3596
|
-
x,
|
|
3597
|
-
y,
|
|
3598
|
-
width,
|
|
3599
|
-
height
|
|
3600
|
-
) => {
|
|
3601
|
-
object(state$1);
|
|
3602
|
-
number(unFocusIndex);
|
|
3603
|
-
number(index);
|
|
3604
|
-
number(level);
|
|
3605
|
-
array(menuItems);
|
|
3606
|
-
number(menuFocusedIndex);
|
|
3607
|
-
boolean(focus);
|
|
3608
|
-
number(x);
|
|
3609
|
-
number(y);
|
|
3610
|
-
number(width);
|
|
3611
|
-
number(height);
|
|
3612
|
-
// TODO this code is very unclean
|
|
3613
|
-
state$1.$TitleBarMenu.addEventListener('mouseenter', handleMouseEnter, {
|
|
3614
|
-
capture: true,
|
|
3615
|
-
});
|
|
3616
|
-
if (unFocusIndex !== -1) {
|
|
3617
|
-
state$1.$TitleBarMenu.children[unFocusIndex].ariaExpanded = 'false';
|
|
3618
|
-
state$1.$TitleBarMenu.children[unFocusIndex].removeAttribute('aria-owns');
|
|
3619
|
-
}
|
|
3620
|
-
state$1.$TitleBarMenu.children[index].ariaExpanded = 'true';
|
|
3621
|
-
const $$Menus = state.$$Menus;
|
|
3622
|
-
state.$$Menus = [];
|
|
3623
|
-
showControlled({
|
|
3624
|
-
x,
|
|
3625
|
-
y,
|
|
3626
|
-
width,
|
|
3627
|
-
height,
|
|
3628
|
-
items: menuItems,
|
|
3629
|
-
handleKeyDown,
|
|
3630
|
-
handleFocusOut,
|
|
3631
|
-
$Parent: state$1.$TitleBarMenu.children[index],
|
|
3632
|
-
level,
|
|
3633
|
-
});
|
|
3634
|
-
if (menuFocusedIndex !== -1) {
|
|
3635
|
-
focusIndex$1(0, -1, menuFocusedIndex);
|
|
3636
|
-
}
|
|
3637
|
-
for (const $Menu of $$Menus) {
|
|
3638
|
-
remove($Menu);
|
|
3639
|
-
}
|
|
3640
|
-
};
|
|
3641
|
-
|
|
3642
|
-
// TODO there need to be two variants of closeMenu: one just closes menu, another close menu and focuses top level entry
|
|
3643
|
-
const closeMenu = (state, unFocusIndex, index) => {
|
|
3644
|
-
if (unFocusIndex !== -1) {
|
|
3645
|
-
state.$TitleBarMenu.children[unFocusIndex].ariaExpanded = 'false';
|
|
3646
|
-
state.$TitleBarMenu.children[unFocusIndex].removeAttribute('aria-owns');
|
|
3647
|
-
}
|
|
3648
|
-
if (index !== -1) {
|
|
3649
|
-
state.$TitleBarMenu.children[index].focus();
|
|
3650
|
-
}
|
|
3651
|
-
hide(/* restoreFocus */ false);
|
|
3652
|
-
state.$TitleBarMenu.removeEventListener('mouseenter', handleMouseEnter, {
|
|
3653
|
-
capture: true,
|
|
3654
|
-
});
|
|
3655
|
-
};
|
|
3656
|
-
|
|
3657
|
-
// TODO should only have the one listener in KeyBindings.js
|
|
3658
|
-
const handleKeyDown = (event) => {
|
|
3659
|
-
switch (event.key) {
|
|
3660
|
-
case 'ArrowDown':
|
|
3661
|
-
event.preventDefault();
|
|
3662
|
-
event.stopPropagation();
|
|
3663
|
-
send$1(
|
|
3664
|
-
/* TitleBarMenu.handleKeyArrowDown */ 'TitleBarMenu.handleKeyArrowDown'
|
|
3665
|
-
);
|
|
3666
|
-
break
|
|
3667
|
-
case 'ArrowUp':
|
|
3668
|
-
event.preventDefault();
|
|
3669
|
-
event.stopPropagation();
|
|
3670
|
-
send$1(
|
|
3671
|
-
/* TitleBarMenu.handleKeyArrowUp */ 'TitleBarMenu.handleKeyArrowUp'
|
|
3672
|
-
);
|
|
3673
|
-
break
|
|
3674
|
-
case 'ArrowRight':
|
|
3675
|
-
console.log('arrow right');
|
|
3676
|
-
event.preventDefault();
|
|
3677
|
-
event.stopPropagation();
|
|
3678
|
-
send$1(
|
|
3679
|
-
/* TitleBarMenu.handleKeyArrowRight */ 'TitleBarMenu.handleKeyArrowRight'
|
|
3680
|
-
);
|
|
3681
|
-
break
|
|
3682
|
-
case 'ArrowLeft':
|
|
3683
|
-
event.preventDefault();
|
|
3684
|
-
event.stopPropagation();
|
|
3685
|
-
send$1(
|
|
3686
|
-
/* TitleBarMenu.handleKeyArrowLeft */ 'TitleBarMenu.handleKeyArrowLeft'
|
|
3687
|
-
);
|
|
3688
|
-
break
|
|
3689
|
-
case 'Enter':
|
|
3690
|
-
event.preventDefault();
|
|
3691
|
-
event.stopPropagation();
|
|
3692
|
-
send$1(
|
|
3693
|
-
/* TitleBarMenu.handleKeyEnter */ 'TitleBarMenu.handleKeyEnter'
|
|
3694
|
-
);
|
|
3695
|
-
break
|
|
3696
|
-
case ' ':
|
|
3697
|
-
event.preventDefault();
|
|
3698
|
-
event.stopPropagation();
|
|
3699
|
-
send$1(
|
|
3700
|
-
/* TitleBarMenu.handleKeySpace */ 'TitleBarMenu.handleKeySpace'
|
|
3701
|
-
);
|
|
3702
|
-
break
|
|
3703
|
-
case 'Home':
|
|
3704
|
-
case 'PageUp':
|
|
3705
|
-
event.preventDefault();
|
|
3706
|
-
event.stopPropagation();
|
|
3707
|
-
send$1(
|
|
3708
|
-
/* TitleBarMenu.handleKeyHome */ 'TitleBarMenu.handleKeyHome'
|
|
3709
|
-
);
|
|
3710
|
-
break
|
|
3711
|
-
case 'End':
|
|
3712
|
-
case 'PageDown':
|
|
3713
|
-
event.preventDefault();
|
|
3714
|
-
event.stopPropagation();
|
|
3715
|
-
send$1(
|
|
3716
|
-
/* TitleBarMenu.handleKeyEnd */ 'TitleBarMenu.handleKeyEnd'
|
|
3717
|
-
);
|
|
3718
|
-
break
|
|
3719
|
-
case 'Escape':
|
|
3720
|
-
event.preventDefault();
|
|
3721
|
-
event.stopPropagation();
|
|
3722
|
-
send$1(
|
|
3723
|
-
/* TitleBarMenu.handleKeyEscape */ 'TitleBarMenu.handleKeyEscape'
|
|
3724
|
-
);
|
|
3725
|
-
break
|
|
3726
|
-
}
|
|
3727
|
-
};
|
|
3728
|
-
|
|
3729
|
-
const isInsideTitleBarMenu = ($Element) => {
|
|
3730
|
-
return (
|
|
3731
|
-
$Element.classList.contains('MenuItem') ||
|
|
3732
|
-
$Element.classList.contains('Menu')
|
|
3733
|
-
)
|
|
3734
|
-
};
|
|
3735
|
-
|
|
3736
|
-
const handleFocusOut = (event) => {
|
|
3737
|
-
const $ActiveElement = event.relatedTarget;
|
|
3738
|
-
if ($ActiveElement && isInsideTitleBarMenu($ActiveElement)) {
|
|
3739
|
-
console.log('RETURN');
|
|
3740
|
-
return
|
|
3741
|
-
}
|
|
3742
|
-
send$1(
|
|
3743
|
-
/* TitleBarMenu.closeMenu */ 'TitleBarMenuBar.closeMenu',
|
|
3744
|
-
/* keepFocus */ false
|
|
3745
|
-
);
|
|
3746
|
-
};
|
|
3747
|
-
|
|
3748
|
-
const create$1 = () => {
|
|
3749
|
-
const $TitleBarMenu = document.createElement('ul');
|
|
3750
|
-
$TitleBarMenu.id = 'TitleBarMenu';
|
|
3751
|
-
// @ts-ignore
|
|
3752
|
-
$TitleBarMenu.role = 'menubar';
|
|
3753
|
-
$TitleBarMenu.onkeydown = handleKeyDown;
|
|
3754
|
-
// TODO could have one mousedown listener on titlebar that delegates to titlebarMenu if necessary
|
|
3755
|
-
$TitleBarMenu.onmousedown = handleClick;
|
|
3756
|
-
$TitleBarMenu.addEventListener('focusout', handleFocusOut);
|
|
3757
|
-
return $TitleBarMenu
|
|
3758
|
-
};
|
|
3759
|
-
|
|
3760
|
-
const setEntries = (state, titleBarEntries) => {
|
|
3761
|
-
const $TitleBarMenu = state.$TitleBarMenu;
|
|
3762
|
-
$TitleBarMenu.append(...titleBarEntries.map(create$TopLevelEntry));
|
|
3763
|
-
};
|
|
3764
|
-
|
|
3765
|
-
const create = () => {
|
|
3766
|
-
const $TitleBarMenu = create$1();
|
|
3767
|
-
// TODO set aria label for title bar menu
|
|
3768
|
-
// TODO add tests for aria properties
|
|
3769
|
-
const $TitleBar = state$6.$TitleBar;
|
|
3770
|
-
$TitleBar.ariaLabel = 'Title Bar';
|
|
3771
|
-
$TitleBar.role = 'contentinfo';
|
|
3772
|
-
$TitleBar.append($TitleBarMenu);
|
|
3773
|
-
return {
|
|
3774
|
-
$TitleBar,
|
|
3775
|
-
$TitleBarMenu,
|
|
3776
|
-
}
|
|
3777
|
-
};
|
|
3778
|
-
|
|
3779
|
-
const dispose = (state) => {};
|
|
3780
|
-
|
|
3781
|
-
const focus = (state) => {
|
|
3782
|
-
state.$TitleBarMenu.firstChild.focus();
|
|
3783
|
-
};
|
|
3784
|
-
|
|
3785
|
-
const menuSetEntries = setEntries;
|
|
3786
|
-
|
|
3787
|
-
const menuFocusIndex = focusIndex;
|
|
3788
|
-
|
|
3789
|
-
const menuOpen = openMenu;
|
|
3790
|
-
|
|
3791
|
-
const menuClose = closeMenu;
|
|
3792
|
-
|
|
3793
|
-
const menuGetEntryBounds = getMenuEntryBounds;
|
|
3794
|
-
|
|
3795
|
-
var M29 = {
|
|
3796
|
-
__proto__: null,
|
|
3797
|
-
create: create,
|
|
3798
|
-
dispose: dispose,
|
|
3799
|
-
focus: focus,
|
|
3800
|
-
menuSetEntries: menuSetEntries,
|
|
3801
|
-
menuFocusIndex: menuFocusIndex,
|
|
3802
|
-
menuOpen: menuOpen,
|
|
3803
|
-
menuClose: menuClose,
|
|
3804
|
-
menuGetEntryBounds: menuGetEntryBounds
|
|
3805
|
-
};
|
|
3806
|
-
|
|
3807
|
-
const reload = () => {
|
|
3808
|
-
location.reload();
|
|
3809
|
-
};
|
|
3810
|
-
|
|
3811
|
-
const minimize = () => {};
|
|
3812
|
-
|
|
3813
|
-
const maximize = () => {};
|
|
3814
|
-
|
|
3815
|
-
const unmaximize = () => {};
|
|
3816
|
-
|
|
3817
|
-
const close = () => {
|
|
3818
|
-
// window.close()
|
|
3819
|
-
};
|
|
3820
|
-
|
|
3821
|
-
const setTitle = (title) => {
|
|
3822
|
-
document.title = title;
|
|
3823
|
-
};
|
|
3824
|
-
|
|
3825
|
-
// cannot use visibilty change event because worker cannot process events when page closes
|
|
3826
|
-
// https://stackoverflow.com/questions/20084348/what-happens-to-a-web-worker-if-i-close-the-page-that-created-this-web-worker/20105455#20105455
|
|
3827
|
-
const onVisibilityChange = () => {
|
|
3828
|
-
// document.addEventListener('visibilitychange', handleVisibilityChange)
|
|
3829
|
-
const handleBeforeUnload = async () => {
|
|
3830
|
-
send$1(
|
|
3831
|
-
/* SaveState.handleVisibilityChange */ 'SaveState.handleVisibilityChange',
|
|
3832
|
-
/* visibilityState */ 'hidden'
|
|
3833
|
-
);
|
|
3834
|
-
// setTimeout(() => {
|
|
3835
|
-
// console.log('in timeout 1')
|
|
3836
|
-
// }, 3)
|
|
3837
|
-
// await new Promise((resolve, reject) => {
|
|
3838
|
-
// setTimeout(resolve, 100)
|
|
3839
|
-
// })
|
|
3840
|
-
// console.log('timeout done')
|
|
3841
|
-
};
|
|
3842
|
-
window.addEventListener('beforeunload', handleBeforeUnload);
|
|
3843
|
-
// document.addEventListener('visibilitychange', handleVisibilityChange)
|
|
3844
|
-
|
|
3845
|
-
// const handlePageHide = () => {
|
|
3846
|
-
// console.log('page hide')
|
|
3847
|
-
// RendererWorker.send(
|
|
3848
|
-
// /* SaveState.handleVisibilityChange */ 'SaveState.handleVisibilityChange',
|
|
3849
|
-
// /* visibilityState */ 'hidden'
|
|
3850
|
-
// )
|
|
3851
|
-
// }
|
|
3852
|
-
// window.addEventListener('pagehide', handlePageHide)
|
|
3853
|
-
};
|
|
3854
|
-
|
|
3855
|
-
const __initialize__ = () => {
|
|
3856
|
-
register$1('Window.reload', reload);
|
|
3857
|
-
register$1('Window.minimize', minimize);
|
|
3858
|
-
register$1('Window.maximize', maximize);
|
|
3859
|
-
register$1('Window.unmaximize', unmaximize);
|
|
3860
|
-
register$1('Window.close', close);
|
|
3861
|
-
register$1('Window.setTitle', setTitle);
|
|
3862
|
-
register$1('Window.onVisibilityChange', onVisibilityChange);
|
|
3863
|
-
};
|
|
3864
|
-
|
|
3865
|
-
var M30 = {
|
|
3866
|
-
__proto__: null,
|
|
3867
|
-
__initialize__: __initialize__
|
|
3868
|
-
};
|
|
3869
|
-
|
|
3870
|
-
// files that should be in initial chunk
|
|
3871
|
-
|
|
3872
|
-
// hack so that rollup doesn't tree-shake out these modules
|
|
3873
|
-
globalThis.M = [
|
|
3874
|
-
M1,
|
|
3875
|
-
M2,
|
|
3876
|
-
M4,
|
|
3877
|
-
M5,
|
|
3878
|
-
M6,
|
|
3879
|
-
M7,
|
|
3880
|
-
M13,
|
|
3881
|
-
M14,
|
|
3882
|
-
M18,
|
|
3883
|
-
M22,
|
|
3884
|
-
M26,
|
|
3885
|
-
M27,
|
|
3886
|
-
M28,
|
|
3887
|
-
M29,
|
|
3888
|
-
M30,
|
|
3889
|
-
];
|
|
3890
|
-
|
|
3891
|
-
const handleError = (error) => {
|
|
3892
|
-
console.info(`[renderer-process] Unhandled Error: ${error}`);
|
|
3893
|
-
alert(error);
|
|
3894
|
-
};
|
|
3895
|
-
|
|
3896
|
-
const handleUnhandledRejection = (event) => {
|
|
3897
|
-
console.info(`[renderer-process] Unhandled Rejection: ${event.reason}`);
|
|
3898
|
-
alert(event.reason);
|
|
3899
|
-
};
|
|
3900
|
-
|
|
3901
|
-
const main = async () => {
|
|
3902
|
-
onerror = handleError;
|
|
3903
|
-
onunhandledrejection = handleUnhandledRejection;
|
|
3904
|
-
|
|
3905
|
-
if (platform === 'web') {
|
|
3906
|
-
// disable prompt to download app as pwa
|
|
3907
|
-
// @ts-ignore
|
|
3908
|
-
window.onbeforeinstallprompt = (event) => {
|
|
3909
|
-
event.preventDefault();
|
|
3910
|
-
};
|
|
3911
|
-
}
|
|
3912
|
-
// TODO this is discovered very late
|
|
3913
|
-
await hydrate$2();
|
|
3914
|
-
dispatchEvent(new CustomEvent('code/ready'));
|
|
3915
|
-
// TODO avoid creating global variables
|
|
3916
|
-
globalThis.__codeLoaded = true;
|
|
3917
|
-
};
|
|
3918
|
-
|
|
3919
|
-
main();
|
|
3920
|
-
|
|
3921
|
-
// 1. invoke shared process to read file
|
|
3922
|
-
// 2. display file
|
|
3923
|
-
// 3. optimize
|
|
3924
|
-
|
|
3925
|
-
// DEBUG
|
|
3926
|
-
|
|
3927
|
-
// globalThis.Panel = Panel
|
|
3928
|
-
// globalThis.Context = Context
|
|
3929
|
-
// globalThis.StatusBar = StatusBar
|
|
3930
|
-
// globalThis.ViewService = ViewService
|
|
3931
|
-
// globalThis.SideBar = SideBar
|
|
3932
|
-
// globalThis.FileSystem = FileSystem
|
|
3933
|
-
|
|
3934
|
-
const send = send$1;
|
|
3935
|
-
|
|
3936
|
-
export { state$1 as A, focus$3 as B, state$6 as C, mount as D, setAdditionalFocus as E, removeAdditionalFocus as F, send as G, append as a, setFocus as b, showControlled as c, hideSubMenu as d, showMenu as e, focusIndex$1 as f, showContextMenu as g, hide as h, remove as i, focusPrevious as j, supportsHtml5Dialog as k, focus$4 as l, string as m, getHref as n, getBounds as o, object as p, array as q, register$1 as r, send$1 as s, number as t, findIndex as u, lookupKeyBinding as v, create$4 as w, setText as x, setSelections as y, setScrollBar as z };
|
|
3937
|
-
//# sourceMappingURL=rendererProcessMain.js.map
|