@theia/plugin-ext 1.34.3 → 1.34.4
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/LICENSE +641 -641
- package/README.md +54 -54
- package/lib/common/arrays.d.ts +19 -19
- package/lib/common/arrays.js +46 -46
- package/lib/common/assert.d.ts +1 -1
- package/lib/common/assert.js +25 -25
- package/lib/common/cache.d.ts +11 -11
- package/lib/common/cache.js +47 -47
- package/lib/common/character-classifier.d.ts +18 -18
- package/lib/common/character-classifier.js +60 -60
- package/lib/common/collections.d.ts +4 -4
- package/lib/common/collections.js +39 -39
- package/lib/common/connection.d.ts +54 -54
- package/lib/common/connection.js +107 -107
- package/lib/common/disposable-util.d.ts +6 -6
- package/lib/common/disposable-util.js +37 -37
- package/lib/common/editor-options.d.ts +30 -30
- package/lib/common/editor-options.js +72 -72
- package/lib/common/env.d.ts +3 -3
- package/lib/common/env.js +17 -17
- package/lib/common/errors.d.ts +3 -3
- package/lib/common/errors.js +42 -42
- package/lib/common/id-generator.d.ts +6 -6
- package/lib/common/id-generator.js +28 -28
- package/lib/common/index.d.ts +3 -3
- package/lib/common/index.js +33 -33
- package/lib/common/link-computer.d.ts +41 -41
- package/lib/common/link-computer.js +275 -275
- package/lib/common/object-identifier.d.ts +8 -8
- package/lib/common/object-identifier.js +32 -32
- package/lib/common/objects.d.ts +1 -1
- package/lib/common/objects.js +46 -46
- package/lib/common/paths-util.d.ts +3 -3
- package/lib/common/paths-util.js +144 -144
- package/lib/common/plugin-api-rpc-model.d.ts +728 -728
- package/lib/common/plugin-api-rpc-model.js +173 -173
- package/lib/common/plugin-api-rpc.d.ts +1710 -1710
- package/lib/common/plugin-api-rpc.js +279 -279
- package/lib/common/plugin-ext-api-contribution.d.ts +58 -58
- package/lib/common/plugin-ext-api-contribution.js +5 -5
- package/lib/common/plugin-identifiers.d.ts +40 -40
- package/lib/common/plugin-identifiers.js +80 -80
- package/lib/common/plugin-protocol.d.ts +840 -840
- package/lib/common/plugin-protocol.js +67 -67
- package/lib/common/proxy-handler.d.ts +65 -65
- package/lib/common/proxy-handler.js +97 -97
- package/lib/common/reference-map.d.ts +7 -7
- package/lib/common/reference-map.js +39 -39
- package/lib/common/rpc-protocol.d.ts +65 -65
- package/lib/common/rpc-protocol.js +229 -229
- package/lib/common/semantic-tokens-dto.d.ts +18 -18
- package/lib/common/semantic-tokens-dto.js +162 -162
- package/lib/common/types.d.ts +37 -37
- package/lib/common/types.js +121 -121
- package/lib/common/uint.d.ts +7 -7
- package/lib/common/uint.js +33 -33
- package/lib/common/uri-components.d.ts +39 -39
- package/lib/common/uri-components.js +66 -66
- package/lib/hosted/browser/hosted-plugin-watcher.d.ts +15 -15
- package/lib/hosted/browser/hosted-plugin-watcher.js +59 -59
- package/lib/hosted/browser/hosted-plugin.d.ts +145 -145
- package/lib/hosted/browser/hosted-plugin.js +787 -787
- package/lib/hosted/browser/plugin-worker.d.ts +6 -6
- package/lib/hosted/browser/plugin-worker.js +57 -57
- package/lib/hosted/browser/worker/debug-stub.d.ts +3 -3
- package/lib/hosted/browser/worker/debug-stub.js +29 -29
- package/lib/hosted/browser/worker/plugin-manifest-loader.d.ts +2 -2
- package/lib/hosted/browser/worker/plugin-manifest-loader.js +107 -107
- package/lib/hosted/browser/worker/worker-env-ext.d.ts +14 -14
- package/lib/hosted/browser/worker/worker-env-ext.js +38 -38
- package/lib/hosted/browser/worker/worker-main.d.ts +1 -1
- package/lib/hosted/browser/worker/worker-main.js +192 -192
- package/lib/hosted/node/hosted-plugin-cli-contribution.d.ts +16 -16
- package/lib/hosted/node/hosted-plugin-cli-contribution.js +76 -76
- package/lib/hosted/node/hosted-plugin-deployer-handler.d.ts +42 -42
- package/lib/hosted/node/hosted-plugin-deployer-handler.js +264 -264
- package/lib/hosted/node/hosted-plugin-localization-service.d.ts +34 -34
- package/lib/hosted/node/hosted-plugin-localization-service.js +239 -239
- package/lib/hosted/node/hosted-plugin-process.d.ts +47 -47
- package/lib/hosted/node/hosted-plugin-process.js +224 -224
- package/lib/hosted/node/hosted-plugin-protocol.d.ts +21 -21
- package/lib/hosted/node/hosted-plugin-protocol.js +36 -36
- package/lib/hosted/node/hosted-plugin.d.ts +36 -36
- package/lib/hosted/node/hosted-plugin.js +118 -118
- package/lib/hosted/node/metadata-scanner.d.ts +17 -17
- package/lib/hosted/node/metadata-scanner.js +82 -82
- package/lib/hosted/node/plugin-ext-hosted-backend-module.d.ts +3 -3
- package/lib/hosted/node/plugin-ext-hosted-backend-module.js +73 -73
- package/lib/hosted/node/plugin-host-proxy.d.ts +17 -17
- package/lib/hosted/node/plugin-host-proxy.js +69 -69
- package/lib/hosted/node/plugin-host-rpc.d.ts +21 -21
- package/lib/hosted/node/plugin-host-rpc.js +216 -216
- package/lib/hosted/node/plugin-host.d.ts +1 -1
- package/lib/hosted/node/plugin-host.js +101 -101
- package/lib/hosted/node/plugin-manifest-loader.d.ts +1 -1
- package/lib/hosted/node/plugin-manifest-loader.js +34 -34
- package/lib/hosted/node/plugin-reader.d.ts +25 -25
- package/lib/hosted/node/plugin-reader.js +141 -141
- package/lib/hosted/node/plugin-service.d.ts +39 -39
- package/lib/hosted/node/plugin-service.js +193 -193
- package/lib/hosted/node/scanners/backend-init-theia.d.ts +2 -2
- package/lib/hosted/node/scanners/backend-init-theia.js +60 -60
- package/lib/hosted/node/scanners/file-plugin-uri-factory.d.ts +10 -10
- package/lib/hosted/node/scanners/file-plugin-uri-factory.js +40 -40
- package/lib/hosted/node/scanners/grammars-reader.d.ts +5 -5
- package/lib/hosted/node/scanners/grammars-reader.js +63 -63
- package/lib/hosted/node/scanners/plugin-uri-factory.d.ts +16 -16
- package/lib/hosted/node/scanners/plugin-uri-factory.js +19 -19
- package/lib/hosted/node/scanners/scanner-theia.d.ts +56 -56
- package/lib/hosted/node/scanners/scanner-theia.js +842 -842
- package/lib/hosted/node-electron/plugin-ext-hosted-electron-backend-module.d.ts +2 -2
- package/lib/hosted/node-electron/plugin-ext-hosted-electron-backend-module.js +26 -26
- package/lib/hosted/node-electron/scanner-theia-electron.d.ts +5 -5
- package/lib/hosted/node-electron/scanner-theia-electron.js +40 -40
- package/lib/main/browser/authentication-main.d.ts +51 -51
- package/lib/main/browser/authentication-main.js +299 -299
- package/lib/main/browser/clipboard-main.d.ts +9 -9
- package/lib/main/browser/clipboard-main.js +32 -32
- package/lib/main/browser/command-registry-main.d.ts +23 -23
- package/lib/main/browser/command-registry-main.js +97 -97
- package/lib/main/browser/commands.d.ts +12 -12
- package/lib/main/browser/commands.js +102 -102
- package/lib/main/browser/comments/comment-glyph-widget.d.ts +12 -12
- package/lib/main/browser/comments/comment-glyph-widget.js +42 -42
- package/lib/main/browser/comments/comment-thread-widget.d.ts +153 -153
- package/lib/main/browser/comments/comment-thread-widget.js +466 -466
- package/lib/main/browser/comments/comments-context-key-service.d.ts +17 -17
- package/lib/main/browser/comments/comments-context-key-service.js +80 -80
- package/lib/main/browser/comments/comments-contribution.d.ts +31 -31
- package/lib/main/browser/comments/comments-contribution.js +264 -264
- package/lib/main/browser/comments/comments-decorator.d.ts +15 -15
- package/lib/main/browser/comments/comments-decorator.js +107 -107
- package/lib/main/browser/comments/comments-main.d.ts +106 -106
- package/lib/main/browser/comments/comments-main.js +341 -341
- package/lib/main/browser/comments/comments-service.d.ts +75 -75
- package/lib/main/browser/comments/comments-service.js +120 -120
- package/lib/main/browser/custom-editors/custom-editor-contribution.d.ts +6 -6
- package/lib/main/browser/custom-editors/custom-editor-contribution.js +50 -50
- package/lib/main/browser/custom-editors/custom-editor-opener.d.ts +21 -21
- package/lib/main/browser/custom-editors/custom-editor-opener.js +111 -111
- package/lib/main/browser/custom-editors/custom-editor-service.d.ts +16 -16
- package/lib/main/browser/custom-editors/custom-editor-service.js +102 -102
- package/lib/main/browser/custom-editors/custom-editor-widget-factory.d.ts +9 -9
- package/lib/main/browser/custom-editors/custom-editor-widget-factory.js +39 -39
- package/lib/main/browser/custom-editors/custom-editor-widget.d.ts +36 -36
- package/lib/main/browser/custom-editors/custom-editor-widget.js +115 -115
- package/lib/main/browser/custom-editors/custom-editors-main.d.ts +120 -120
- package/lib/main/browser/custom-editors/custom-editors-main.js +447 -447
- package/lib/main/browser/custom-editors/plugin-custom-editor-registry.d.ts +23 -23
- package/lib/main/browser/custom-editors/plugin-custom-editor-registry.js +142 -142
- package/lib/main/browser/custom-editors/undo-redo-service.d.ts +23 -23
- package/lib/main/browser/custom-editors/undo-redo-service.js +110 -110
- package/lib/main/browser/debug/debug-main.d.ts +48 -48
- package/lib/main/browser/debug/debug-main.js +295 -295
- package/lib/main/browser/debug/plugin-debug-adapter-contribution.d.ts +18 -18
- package/lib/main/browser/debug/plugin-debug-adapter-contribution.js +42 -42
- package/lib/main/browser/debug/plugin-debug-configuration-provider.d.ts +12 -12
- package/lib/main/browser/debug/plugin-debug-configuration-provider.js +38 -38
- package/lib/main/browser/debug/plugin-debug-service.d.ts +52 -52
- package/lib/main/browser/debug/plugin-debug-service.js +283 -283
- package/lib/main/browser/debug/plugin-debug-session-contribution-registry.d.ts +30 -30
- package/lib/main/browser/debug/plugin-debug-session-contribution-registry.js +75 -75
- package/lib/main/browser/debug/plugin-debug-session-factory.d.ts +55 -55
- package/lib/main/browser/debug/plugin-debug-session-factory.js +70 -70
- package/lib/main/browser/decorations/decorations-main.d.ts +15 -15
- package/lib/main/browser/decorations/decorations-main.js +119 -119
- package/lib/main/browser/dialogs/modal-notification.d.ts +18 -18
- package/lib/main/browser/dialogs/modal-notification.js +107 -107
- package/lib/main/browser/dialogs-main.d.ts +16 -16
- package/lib/main/browser/dialogs-main.js +162 -162
- package/lib/main/browser/documents-main.d.ts +50 -50
- package/lib/main/browser/documents-main.js +249 -249
- package/lib/main/browser/editors-and-documents-main.d.ts +32 -32
- package/lib/main/browser/editors-and-documents-main.js +301 -301
- package/lib/main/browser/env-main.d.ts +15 -15
- package/lib/main/browser/env-main.js +82 -82
- package/lib/main/browser/file-system-main-impl.d.ts +27 -27
- package/lib/main/browser/file-system-main-impl.js +199 -199
- package/lib/main/browser/hierarchy/hierarchy-types-converters.d.ts +24 -24
- package/lib/main/browser/hierarchy/hierarchy-types-converters.js +174 -174
- package/lib/main/browser/keybindings/keybindings-contribution-handler.d.ts +9 -9
- package/lib/main/browser/keybindings/keybindings-contribution-handler.js +77 -77
- package/lib/main/browser/label-service-main.d.ts +10 -10
- package/lib/main/browser/label-service-main.js +46 -46
- package/lib/main/browser/languages-main.d.ts +136 -136
- package/lib/main/browser/languages-main.js +1116 -1116
- package/lib/main/browser/main-context.d.ts +3 -3
- package/lib/main/browser/main-context.js +137 -137
- package/lib/main/browser/main-file-system-event-service.d.ts +7 -7
- package/lib/main/browser/main-file-system-event-service.js +65 -65
- package/lib/main/browser/menus/menus-contribution-handler.d.ts +29 -29
- package/lib/main/browser/menus/menus-contribution-handler.js +194 -194
- package/lib/main/browser/menus/plugin-menu-command-adapter.d.ts +43 -43
- package/lib/main/browser/menus/plugin-menu-command-adapter.js +279 -279
- package/lib/main/browser/menus/vscode-theia-menu-mappings.d.ts +17 -17
- package/lib/main/browser/menus/vscode-theia-menu-mappings.js +93 -93
- package/lib/main/browser/message-registry-main.d.ts +8 -8
- package/lib/main/browser/message-registry-main.js +52 -52
- package/lib/main/browser/notification-main.d.ts +18 -18
- package/lib/main/browser/notification-main.js +75 -75
- package/lib/main/browser/output-channel-registry-main.d.ts +10 -10
- package/lib/main/browser/output-channel-registry-main.js +60 -60
- package/lib/main/browser/plugin-authentication-service.d.ts +13 -13
- package/lib/main/browser/plugin-authentication-service.js +80 -80
- package/lib/main/browser/plugin-contribution-handler.d.ts +66 -66
- package/lib/main/browser/plugin-contribution-handler.js +580 -580
- package/lib/main/browser/plugin-ext-frontend-module.d.ts +7 -7
- package/lib/main/browser/plugin-ext-frontend-module.js +216 -216
- package/lib/main/browser/plugin-ext-widget.d.ts +28 -28
- package/lib/main/browser/plugin-ext-widget.js +129 -129
- package/lib/main/browser/plugin-frontend-contribution.d.ts +6 -6
- package/lib/main/browser/plugin-frontend-contribution.js +45 -45
- package/lib/main/browser/plugin-frontend-view-contribution.d.ts +6 -6
- package/lib/main/browser/plugin-frontend-view-contribution.js +50 -50
- package/lib/main/browser/plugin-icon-theme-service.d.ts +135 -135
- package/lib/main/browser/plugin-icon-theme-service.js +519 -519
- package/lib/main/browser/plugin-shared-style.d.ts +36 -36
- package/lib/main/browser/plugin-shared-style.js +126 -126
- package/lib/main/browser/plugin-storage.d.ts +13 -13
- package/lib/main/browser/plugin-storage.js +46 -46
- package/lib/main/browser/plugin-terminal-registry.d.ts +4 -4
- package/lib/main/browser/plugin-terminal-registry.js +34 -34
- package/lib/main/browser/preference-registry-main.d.ts +19 -19
- package/lib/main/browser/preference-registry-main.js +104 -104
- package/lib/main/browser/quick-open-main.d.ts +31 -31
- package/lib/main/browser/quick-open-main.js +274 -274
- package/lib/main/browser/scm-main.d.ts +100 -100
- package/lib/main/browser/scm-main.js +330 -330
- package/lib/main/browser/secrets-main.d.ts +12 -12
- package/lib/main/browser/secrets-main.js +67 -67
- package/lib/main/browser/selection-provider-command.d.ts +12 -12
- package/lib/main/browser/selection-provider-command.js +57 -57
- package/lib/main/browser/status-bar-message-registry-main.d.ts +16 -16
- package/lib/main/browser/status-bar-message-registry-main.js +55 -55
- package/lib/main/browser/tabs/tabs-main.d.ts +40 -40
- package/lib/main/browser/tabs/tabs-main.js +282 -282
- package/lib/main/browser/tasks-main.d.ts +33 -33
- package/lib/main/browser/tasks-main.js +205 -205
- package/lib/main/browser/terminal-main.d.ts +49 -49
- package/lib/main/browser/terminal-main.js +268 -268
- package/lib/main/browser/text-editor-main.d.ts +47 -47
- package/lib/main/browser/text-editor-main.js +374 -374
- package/lib/main/browser/text-editor-model-service.d.ts +28 -28
- package/lib/main/browser/text-editor-model-service.js +108 -108
- package/lib/main/browser/text-editors-main.d.ts +38 -38
- package/lib/main/browser/text-editors-main.js +158 -158
- package/lib/main/browser/theme-icon-override.d.ts +1 -1
- package/lib/main/browser/theme-icon-override.js +247 -247
- package/lib/main/browser/theming-main.d.ts +9 -9
- package/lib/main/browser/theming-main.js +35 -35
- package/lib/main/browser/timeline-main.d.ts +13 -13
- package/lib/main/browser/timeline-main.js +46 -46
- package/lib/main/browser/view/dnd-file-content-store.d.ts +7 -7
- package/lib/main/browser/view/dnd-file-content-store.js +51 -51
- package/lib/main/browser/view/plugin-tree-view-node-label-provider.d.ts +11 -11
- package/lib/main/browser/view/plugin-tree-view-node-label-provider.js +90 -90
- package/lib/main/browser/view/plugin-view-registry.d.ts +106 -106
- package/lib/main/browser/view/plugin-view-registry.js +836 -836
- package/lib/main/browser/view/plugin-view-widget.d.ts +50 -50
- package/lib/main/browser/view/plugin-view-widget.js +166 -166
- package/lib/main/browser/view/tree-view-decorator-service.d.ts +30 -30
- package/lib/main/browser/view/tree-view-decorator-service.js +68 -68
- package/lib/main/browser/view/tree-view-widget.d.ts +160 -160
- package/lib/main/browser/view/tree-view-widget.js +761 -761
- package/lib/main/browser/view/tree-views-main.d.ts +31 -31
- package/lib/main/browser/view/tree-views-main.js +163 -163
- package/lib/main/browser/view/view-context-key-service.d.ts +30 -30
- package/lib/main/browser/view/view-context-key-service.js +84 -84
- package/lib/main/browser/view-column-service.d.ts +23 -23
- package/lib/main/browser/view-column-service.js +129 -129
- package/lib/main/browser/webview/webview-environment.d.ts +15 -15
- package/lib/main/browser/webview/webview-environment.js +93 -93
- package/lib/main/browser/webview/webview-frontend-security-warnings.d.ts +11 -11
- package/lib/main/browser/webview/webview-frontend-security-warnings.js +73 -73
- package/lib/main/browser/webview/webview-preferences.d.ts +12 -12
- package/lib/main/browser/webview/webview-preferences.js +57 -57
- package/lib/main/browser/webview/webview-resource-cache.d.ts +17 -17
- package/lib/main/browser/webview/webview-resource-cache.js +90 -90
- package/lib/main/browser/webview/webview-theme-data-provider.d.ts +30 -30
- package/lib/main/browser/webview/webview-theme-data-provider.js +132 -132
- package/lib/main/browser/webview/webview-widget-factory.d.ts +8 -8
- package/lib/main/browser/webview/webview-widget-factory.js +38 -38
- package/lib/main/browser/webview/webview.d.ts +130 -130
- package/lib/main/browser/webview/webview.js +549 -549
- package/lib/main/browser/webview-views/webview-views-main.d.ts +30 -30
- package/lib/main/browser/webview-views/webview-views-main.js +126 -126
- package/lib/main/browser/webview-views/webview-views.d.ts +14 -14
- package/lib/main/browser/webview-views/webview-views.js +22 -22
- package/lib/main/browser/webviews-main.d.ts +39 -39
- package/lib/main/browser/webviews-main.js +231 -231
- package/lib/main/browser/window-state-main.d.ts +16 -16
- package/lib/main/browser/window-state-main.js +61 -61
- package/lib/main/browser/workspace-main.d.ts +69 -69
- package/lib/main/browser/workspace-main.js +316 -316
- package/lib/main/common/plugin-paths-protocol.d.ts +8 -8
- package/lib/main/common/plugin-paths-protocol.js +21 -21
- package/lib/main/common/plugin-theia-environment.d.ts +7 -7
- package/lib/main/common/plugin-theia-environment.js +47 -47
- package/lib/main/common/webview-protocol.d.ts +12 -12
- package/lib/main/common/webview-protocol.js +31 -31
- package/lib/main/electron-browser/plugin-ext-frontend-electron-module.d.ts +3 -3
- package/lib/main/electron-browser/plugin-ext-frontend-electron-module.js +25 -25
- package/lib/main/electron-browser/webview/electron-webview-widget-factory.d.ts +22 -22
- package/lib/main/electron-browser/webview/electron-webview-widget-factory.js +64 -64
- package/lib/main/node/handlers/plugin-theia-directory-handler.d.ts +10 -10
- package/lib/main/node/handlers/plugin-theia-directory-handler.js +113 -113
- package/lib/main/node/handlers/plugin-theia-file-handler.d.ts +9 -9
- package/lib/main/node/handlers/plugin-theia-file-handler.js +66 -66
- package/lib/main/node/paths/const.d.ts +5 -5
- package/lib/main/node/paths/const.js +24 -24
- package/lib/main/node/paths/plugin-paths-service.d.ts +23 -23
- package/lib/main/node/paths/plugin-paths-service.js +169 -169
- package/lib/main/node/plugin-cli-contribution.d.ts +21 -21
- package/lib/main/node/plugin-cli-contribution.js +84 -84
- package/lib/main/node/plugin-deployer-contribution.d.ts +8 -8
- package/lib/main/node/plugin-deployer-contribution.js +47 -47
- package/lib/main/node/plugin-deployer-directory-handler-context-impl.d.ts +7 -7
- package/lib/main/node/plugin-deployer-directory-handler-context-impl.js +44 -44
- package/lib/main/node/plugin-deployer-entry-impl.d.ts +34 -34
- package/lib/main/node/plugin-deployer-entry-impl.js +109 -109
- package/lib/main/node/plugin-deployer-file-handler-context-impl.d.ts +7 -7
- package/lib/main/node/plugin-deployer-file-handler-context-impl.js +31 -31
- package/lib/main/node/plugin-deployer-impl.d.ts +61 -61
- package/lib/main/node/plugin-deployer-impl.js +341 -341
- package/lib/main/node/plugin-deployer-proxy-entry-impl.d.ts +29 -29
- package/lib/main/node/plugin-deployer-proxy-entry-impl.js +98 -98
- package/lib/main/node/plugin-deployer-resolver-context-impl.d.ts +15 -15
- package/lib/main/node/plugin-deployer-resolver-context-impl.js +42 -42
- package/lib/main/node/plugin-ext-backend-module.d.ts +2 -2
- package/lib/main/node/plugin-ext-backend-module.js +70 -70
- package/lib/main/node/plugin-github-resolver.d.ts +21 -21
- package/lib/main/node/plugin-github-resolver.js +142 -142
- package/lib/main/node/plugin-http-resolver.d.ts +18 -18
- package/lib/main/node/plugin-http-resolver.js +91 -91
- package/lib/main/node/plugin-localization-backend-contribution.d.ts +9 -9
- package/lib/main/node/plugin-localization-backend-contribution.js +58 -58
- package/lib/main/node/plugin-server-handler.d.ts +16 -16
- package/lib/main/node/plugin-server-handler.js +74 -74
- package/lib/main/node/plugin-service.d.ts +19 -19
- package/lib/main/node/plugin-service.js +91 -91
- package/lib/main/node/plugin-theia-deployer-participant.d.ts +6 -6
- package/lib/main/node/plugin-theia-deployer-participant.js +43 -43
- package/lib/main/node/plugin-uninstallation-manager.d.ts +14 -14
- package/lib/main/node/plugin-uninstallation-manager.js +84 -84
- package/lib/main/node/plugins-key-value-storage.d.ts +15 -15
- package/lib/main/node/plugins-key-value-storage.js +128 -128
- package/lib/main/node/resolvers/local-directory-plugin-deployer-resolver.d.ts +7 -7
- package/lib/main/node/resolvers/local-directory-plugin-deployer-resolver.js +43 -43
- package/lib/main/node/resolvers/local-plugin-deployer-resolver.d.ts +8 -8
- package/lib/main/node/resolvers/local-plugin-deployer-resolver.js +59 -59
- package/lib/main/node/temp-dir-util.d.ts +1 -1
- package/lib/main/node/temp-dir-util.js +30 -30
- package/lib/main/node/webview-backend-security-warnings.d.ts +5 -5
- package/lib/main/node/webview-backend-security-warnings.js +51 -51
- package/lib/plugin/authentication-ext.d.ts +34 -34
- package/lib/plugin/authentication-ext.js +94 -94
- package/lib/plugin/clipboard-ext.d.ts +9 -9
- package/lib/plugin/clipboard-ext.js +31 -31
- package/lib/plugin/command-registry.d.ts +43 -43
- package/lib/plugin/command-registry.js +176 -176
- package/lib/plugin/comments.d.ts +89 -89
- package/lib/plugin/comments.js +368 -368
- package/lib/plugin/custom-editors.d.ts +47 -47
- package/lib/plugin/custom-editors.js +255 -255
- package/lib/plugin/debug/debug-ext.d.ts +86 -86
- package/lib/plugin/debug/debug-ext.js +391 -391
- package/lib/plugin/debug/plugin-debug-adapter-creator.d.ts +10 -10
- package/lib/plugin/debug/plugin-debug-adapter-creator.js +41 -41
- package/lib/plugin/debug/plugin-debug-adapter-session.d.ts +26 -26
- package/lib/plugin/debug/plugin-debug-adapter-session.js +96 -96
- package/lib/plugin/debug/plugin-debug-adapter-tracker.d.ts +12 -12
- package/lib/plugin/debug/plugin-debug-adapter-tracker.js +77 -77
- package/lib/plugin/decorations.d.ts +14 -14
- package/lib/plugin/decorations.js +112 -112
- package/lib/plugin/dialogs.d.ts +10 -10
- package/lib/plugin/dialogs.js +91 -91
- package/lib/plugin/document-data.d.ts +38 -38
- package/lib/plugin/document-data.js +309 -309
- package/lib/plugin/documents.d.ts +56 -56
- package/lib/plugin/documents.js +253 -253
- package/lib/plugin/editors-and-documents.d.ts +26 -26
- package/lib/plugin/editors-and-documents.js +137 -137
- package/lib/plugin/env.d.ts +42 -42
- package/lib/plugin/env.js +101 -101
- package/lib/plugin/file-system-event-service-ext-impl.d.ts +40 -40
- package/lib/plugin/file-system-event-service-ext-impl.js +203 -203
- package/lib/plugin/file-system-ext-impl.d.ts +50 -50
- package/lib/plugin/file-system-ext-impl.js +354 -354
- package/lib/plugin/known-commands.d.ts +5 -5
- package/lib/plugin/known-commands.js +386 -386
- package/lib/plugin/known-commands.spec.d.ts +1 -1
- package/lib/plugin/known-commands.spec.js +42 -42
- package/lib/plugin/label-service.d.ts +11 -11
- package/lib/plugin/label-service.js +35 -35
- package/lib/plugin/languages/call-hierarchy.d.ts +20 -20
- package/lib/plugin/languages/call-hierarchy.js +101 -101
- package/lib/plugin/languages/code-action.d.ts +24 -24
- package/lib/plugin/languages/code-action.js +137 -137
- package/lib/plugin/languages/color.d.ts +12 -12
- package/lib/plugin/languages/color.js +58 -58
- package/lib/plugin/languages/completion.d.ts +20 -20
- package/lib/plugin/languages/completion.js +161 -161
- package/lib/plugin/languages/declaration.d.ts +11 -11
- package/lib/plugin/languages/declaration.js +58 -58
- package/lib/plugin/languages/definition.d.ts +11 -11
- package/lib/plugin/languages/definition.js +58 -58
- package/lib/plugin/languages/diagnostics.d.ts +49 -49
- package/lib/plugin/languages/diagnostics.js +281 -281
- package/lib/plugin/languages/document-formatting.d.ts +10 -10
- package/lib/plugin/languages/document-formatting.js +40 -40
- package/lib/plugin/languages/document-highlight.d.ts +12 -12
- package/lib/plugin/languages/document-highlight.js +50 -50
- package/lib/plugin/languages/evaluatable-expression.d.ts +11 -11
- package/lib/plugin/languages/evaluatable-expression.js +40 -40
- package/lib/plugin/languages/folding.d.ts +10 -10
- package/lib/plugin/languages/folding.js +39 -39
- package/lib/plugin/languages/hover.d.ts +11 -11
- package/lib/plugin/languages/hover.js +48 -48
- package/lib/plugin/languages/implementation.d.ts +11 -11
- package/lib/plugin/languages/implementation.js +58 -58
- package/lib/plugin/languages/inlay-hints.d.ts +19 -19
- package/lib/plugin/languages/inlay-hints.js +127 -127
- package/lib/plugin/languages/inline-completion.d.ts +20 -20
- package/lib/plugin/languages/inline-completion.js +93 -93
- package/lib/plugin/languages/inline-values.d.ts +10 -10
- package/lib/plugin/languages/inline-values.js +44 -44
- package/lib/plugin/languages/lens.d.ts +19 -19
- package/lib/plugin/languages/lens.js +89 -89
- package/lib/plugin/languages/link-provider.d.ts +14 -14
- package/lib/plugin/languages/link-provider.js +71 -71
- package/lib/plugin/languages/linked-editing-range.d.ts +11 -11
- package/lib/plugin/languages/linked-editing-range.js +40 -40
- package/lib/plugin/languages/on-type-formatting.d.ts +11 -11
- package/lib/plugin/languages/on-type-formatting.js +41 -41
- package/lib/plugin/languages/outline.d.ts +20 -20
- package/lib/plugin/languages/outline.js +115 -115
- package/lib/plugin/languages/range-formatting.d.ts +10 -10
- package/lib/plugin/languages/range-formatting.js +41 -41
- package/lib/plugin/languages/reference.d.ts +11 -11
- package/lib/plugin/languages/reference.js +47 -47
- package/lib/plugin/languages/rename.d.ts +14 -14
- package/lib/plugin/languages/rename.js +114 -114
- package/lib/plugin/languages/selection-range.d.ts +11 -11
- package/lib/plugin/languages/selection-range.js +65 -65
- package/lib/plugin/languages/semantic-highlighting.d.ts +28 -28
- package/lib/plugin/languages/semantic-highlighting.js +175 -175
- package/lib/plugin/languages/signature.d.ts +15 -15
- package/lib/plugin/languages/signature.js +71 -71
- package/lib/plugin/languages/type-definition.d.ts +11 -11
- package/lib/plugin/languages/type-definition.js +58 -58
- package/lib/plugin/languages/type-hierarchy.d.ts +18 -18
- package/lib/plugin/languages/type-hierarchy.js +95 -95
- package/lib/plugin/languages/util.d.ts +4 -4
- package/lib/plugin/languages/util.js +27 -27
- package/lib/plugin/languages/workspace-symbol.d.ts +8 -8
- package/lib/plugin/languages/workspace-symbol.js +61 -61
- package/lib/plugin/languages-utils.d.ts +5 -5
- package/lib/plugin/languages-utils.js +52 -52
- package/lib/plugin/languages.d.ts +118 -118
- package/lib/plugin/languages.js +679 -679
- package/lib/plugin/markdown-string.d.ts +24 -24
- package/lib/plugin/markdown-string.js +124 -124
- package/lib/plugin/message-registry.d.ts +8 -8
- package/lib/plugin/message-registry.js +60 -60
- package/lib/plugin/node/debug/debug.spec.d.ts +1 -1
- package/lib/plugin/node/debug/debug.spec.js +67 -67
- package/lib/plugin/node/debug/plugin-node-debug-adapter-creator.d.ts +17 -17
- package/lib/plugin/node/debug/plugin-node-debug-adapter-creator.js +154 -154
- package/lib/plugin/node/env-node-ext.d.ts +21 -21
- package/lib/plugin/node/env-node-ext.js +63 -63
- package/lib/plugin/notification.d.ts +17 -17
- package/lib/plugin/notification.js +67 -67
- package/lib/plugin/output-channel/output-channel-item.d.ts +17 -17
- package/lib/plugin/output-channel/output-channel-item.js +51 -51
- package/lib/plugin/output-channel-registry.d.ts +8 -8
- package/lib/plugin/output-channel-registry.js +35 -35
- package/lib/plugin/path.d.ts +2 -2
- package/lib/plugin/path.js +59 -59
- package/lib/plugin/path.spec.d.ts +1 -1
- package/lib/plugin/path.spec.js +34 -34
- package/lib/plugin/plugin-context.d.ts +56 -56
- package/lib/plugin/plugin-context.js +1072 -1072
- package/lib/plugin/plugin-icon-path.d.ts +11 -11
- package/lib/plugin/plugin-icon-path.js +49 -49
- package/lib/plugin/plugin-manager.d.ts +80 -80
- package/lib/plugin/plugin-manager.js +366 -366
- package/lib/plugin/plugin-storage.d.ts +36 -36
- package/lib/plugin/plugin-storage.js +99 -99
- package/lib/plugin/preference-registry.d.ts +36 -36
- package/lib/plugin/preference-registry.js +295 -295
- package/lib/plugin/preference-registry.spec.d.ts +1 -1
- package/lib/plugin/preference-registry.spec.js +251 -251
- package/lib/plugin/prefix-sum-computer.d.ts +30 -30
- package/lib/plugin/prefix-sum-computer.js +172 -172
- package/lib/plugin/quick-open.d.ts +202 -202
- package/lib/plugin/quick-open.js +637 -637
- package/lib/plugin/scm.d.ts +53 -53
- package/lib/plugin/scm.js +713 -713
- package/lib/plugin/secrets-ext.d.ts +30 -30
- package/lib/plugin/secrets-ext.js +68 -68
- package/lib/plugin/status-bar/status-bar-item.d.ts +44 -44
- package/lib/plugin/status-bar/status-bar-item.js +122 -122
- package/lib/plugin/status-bar-message-registry.d.ts +20 -20
- package/lib/plugin/status-bar-message-registry.js +84 -84
- package/lib/plugin/stubs/tests-api.d.ts +22 -22
- package/lib/plugin/stubs/tests-api.js +66 -66
- package/lib/plugin/tabs.d.ts +22 -22
- package/lib/plugin/tabs.js +358 -358
- package/lib/plugin/tasks/task-provider.d.ts +8 -8
- package/lib/plugin/tasks/task-provider.js +56 -56
- package/lib/plugin/tasks/tasks.d.ts +45 -45
- package/lib/plugin/tasks/tasks.js +210 -210
- package/lib/plugin/terminal-ext.d.ts +101 -101
- package/lib/plugin/terminal-ext.js +422 -422
- package/lib/plugin/text-editor.d.ts +100 -100
- package/lib/plugin/text-editor.js +409 -409
- package/lib/plugin/text-editors.d.ts +37 -37
- package/lib/plugin/text-editors.js +126 -126
- package/lib/plugin/theming.d.ts +15 -15
- package/lib/plugin/theming.js +61 -61
- package/lib/plugin/timeline.d.ts +20 -20
- package/lib/plugin/timeline.js +152 -152
- package/lib/plugin/tree/tree-views.d.ts +93 -93
- package/lib/plugin/tree/tree-views.js +523 -523
- package/lib/plugin/type-converters.d.ts +131 -131
- package/lib/plugin/type-converters.js +1292 -1292
- package/lib/plugin/type-converters.spec.d.ts +1 -1
- package/lib/plugin/type-converters.spec.js +391 -391
- package/lib/plugin/types-impl.d.ts +1464 -1464
- package/lib/plugin/types-impl.js +2956 -2956
- package/lib/plugin/types-impl.spec.d.ts +1 -1
- package/lib/plugin/types-impl.spec.js +78 -78
- package/lib/plugin/webview-views.d.ts +52 -52
- package/lib/plugin/webview-views.js +144 -144
- package/lib/plugin/webviews.d.ts +95 -95
- package/lib/plugin/webviews.js +340 -340
- package/lib/plugin/window-state.d.ts +16 -16
- package/lib/plugin/window-state.js +55 -55
- package/lib/plugin/word-helper.d.ts +21 -21
- package/lib/plugin/word-helper.js +125 -125
- package/lib/plugin/workspace.d.ts +53 -53
- package/lib/plugin/workspace.js +371 -371
- package/lib/plugin-ext-backend-electron-module.d.ts +3 -3
- package/lib/plugin-ext-backend-electron-module.js +24 -24
- package/lib/plugin-ext-backend-module.d.ts +3 -3
- package/lib/plugin-ext-backend-module.js +24 -24
- package/lib/plugin-ext-frontend-electron-module.d.ts +2 -2
- package/lib/plugin-ext-frontend-electron-module.js +19 -19
- package/lib/plugin-ext-frontend-module.d.ts +2 -2
- package/lib/plugin-ext-frontend-module.js +19 -19
- package/package.json +27 -27
- package/src/common/arrays.ts +54 -54
- package/src/common/assert.ts +23 -23
- package/src/common/cache.ts +51 -51
- package/src/common/character-classifier.ts +73 -73
- package/src/common/collections.ts +37 -37
- package/src/common/connection.ts +137 -137
- package/src/common/disposable-util.ts +39 -39
- package/src/common/editor-options.ts +74 -74
- package/src/common/env.ts +19 -19
- package/src/common/errors.ts +37 -37
- package/src/common/id-generator.ts +26 -26
- package/src/common/index.ts +24 -24
- package/src/common/link-computer.ts +354 -354
- package/src/common/object-identifier.ts +33 -33
- package/src/common/objects.ts +50 -50
- package/src/common/paths-util.ts +158 -158
- package/src/common/plugin-api-rpc-model.ts +864 -864
- package/src/common/plugin-api-rpc.ts +2202 -2202
- package/src/common/plugin-ext-api-contribution.ts +82 -82
- package/src/common/plugin-identifiers.ts +84 -84
- package/src/common/plugin-protocol.ts +987 -987
- package/src/common/proxy-handler.ts +126 -126
- package/src/common/reference-map.ts +38 -38
- package/src/common/rpc-protocol.ts +272 -272
- package/src/common/semantic-tokens-dto.ts +182 -182
- package/src/common/types.ts +129 -129
- package/src/common/uint.ts +37 -37
- package/src/common/uri-components.ts +85 -85
- package/src/hosted/browser/hosted-plugin-watcher.ts +54 -54
- package/src/hosted/browser/hosted-plugin.ts +830 -830
- package/src/hosted/browser/plugin-worker.ts +52 -52
- package/src/hosted/browser/worker/debug-stub.ts +28 -28
- package/src/hosted/browser/worker/plugin-manifest-loader.ts +114 -114
- package/src/hosted/browser/worker/worker-env-ext.ts +41 -41
- package/src/hosted/browser/worker/worker-main.ts +221 -221
- package/src/hosted/node/hosted-plugin-cli-contribution.ts +75 -75
- package/src/hosted/node/hosted-plugin-deployer-handler.ts +261 -261
- package/src/hosted/node/hosted-plugin-localization-service.ts +254 -254
- package/src/hosted/node/hosted-plugin-process.ts +248 -248
- package/src/hosted/node/hosted-plugin-protocol.ts +49 -49
- package/src/hosted/node/hosted-plugin.ts +116 -116
- package/src/hosted/node/metadata-scanner.ts +64 -64
- package/src/hosted/node/plugin-ext-hosted-backend-module.ts +80 -80
- package/src/hosted/node/plugin-host-proxy.ts +80 -80
- package/src/hosted/node/plugin-host-rpc.ts +245 -245
- package/src/hosted/node/plugin-host.ts +108 -108
- package/src/hosted/node/plugin-manifest-loader.ts +31 -31
- package/src/hosted/node/plugin-reader.ts +131 -131
- package/src/hosted/node/plugin-service.ts +175 -175
- package/src/hosted/node/scanners/backend-init-theia.ts +71 -71
- package/src/hosted/node/scanners/file-plugin-uri-factory.ts +32 -32
- package/src/hosted/node/scanners/grammars-reader.ts +56 -56
- package/src/hosted/node/scanners/plugin-uri-factory.ts +33 -33
- package/src/hosted/node/scanners/scanner-theia.ts +938 -938
- package/src/hosted/node-electron/plugin-ext-hosted-electron-backend-module.ts +26 -26
- package/src/hosted/node-electron/scanner-theia-electron.ts +32 -32
- package/src/main/browser/authentication-main.ts +369 -369
- package/src/main/browser/clipboard-main.ts +38 -38
- package/src/main/browser/command-registry-main.ts +110 -110
- package/src/main/browser/commands.ts +104 -104
- package/src/main/browser/comments/comment-glyph-widget.ts +66 -66
- package/src/main/browser/comments/comment-thread-widget.tsx +691 -691
- package/src/main/browser/comments/comments-context-key-service.ts +68 -68
- package/src/main/browser/comments/comments-contribution.ts +264 -264
- package/src/main/browser/comments/comments-decorator.ts +110 -110
- package/src/main/browser/comments/comments-main.ts +465 -465
- package/src/main/browser/comments/comments-service.ts +205 -205
- package/src/main/browser/custom-editors/custom-editor-contribution.ts +38 -38
- package/src/main/browser/custom-editors/custom-editor-opener.tsx +105 -105
- package/src/main/browser/custom-editors/custom-editor-service.ts +108 -108
- package/src/main/browser/custom-editors/custom-editor-widget-factory.ts +44 -44
- package/src/main/browser/custom-editors/custom-editor-widget.ts +127 -127
- package/src/main/browser/custom-editors/custom-editors-main.ts +606 -606
- package/src/main/browser/custom-editors/plugin-custom-editor-registry.ts +142 -142
- package/src/main/browser/custom-editors/undo-redo-service.ts +120 -120
- package/src/main/browser/debug/debug-main.ts +373 -373
- package/src/main/browser/debug/plugin-debug-adapter-contribution.ts +48 -48
- package/src/main/browser/debug/plugin-debug-configuration-provider.ts +63 -63
- package/src/main/browser/debug/plugin-debug-service.ts +338 -338
- package/src/main/browser/debug/plugin-debug-session-contribution-registry.ts +76 -76
- package/src/main/browser/debug/plugin-debug-session-factory.ts +105 -105
- package/src/main/browser/decorations/decorations-main.ts +146 -146
- package/src/main/browser/dialogs/modal-notification.ts +110 -110
- package/src/main/browser/dialogs/style/modal-notification.css +123 -123
- package/src/main/browser/dialogs-main.ts +185 -185
- package/src/main/browser/documents-main.ts +289 -289
- package/src/main/browser/editors-and-documents-main.ts +394 -394
- package/src/main/browser/env-main.ts +87 -87
- package/src/main/browser/file-system-main-impl.ts +263 -263
- package/src/main/browser/hierarchy/hierarchy-types-converters.ts +189 -189
- package/src/main/browser/keybindings/keybindings-contribution-handler.ts +66 -66
- package/src/main/browser/label-service-main.ts +51 -51
- package/src/main/browser/languages-main.ts +1387 -1387
- package/src/main/browser/main-context.ts +187 -187
- package/src/main/browser/main-file-system-event-service.ts +76 -76
- package/src/main/browser/menus/menus-contribution-handler.ts +162 -162
- package/src/main/browser/menus/plugin-menu-command-adapter.ts +264 -264
- package/src/main/browser/menus/vscode-theia-menu-mappings.ts +91 -91
- package/src/main/browser/message-registry-main.ts +56 -56
- package/src/main/browser/notification-main.ts +86 -86
- package/src/main/browser/output-channel-registry-main.ts +53 -53
- package/src/main/browser/plugin-authentication-service.ts +71 -71
- package/src/main/browser/plugin-contribution-handler.ts +609 -609
- package/src/main/browser/plugin-ext-frontend-module.ts +249 -249
- package/src/main/browser/plugin-ext-widget.tsx +132 -132
- package/src/main/browser/plugin-frontend-contribution.ts +35 -35
- package/src/main/browser/plugin-frontend-view-contribution.ts +38 -38
- package/src/main/browser/plugin-icon-theme-service.ts +585 -585
- package/src/main/browser/plugin-shared-style.ts +133 -133
- package/src/main/browser/plugin-storage.ts +55 -55
- package/src/main/browser/plugin-terminal-registry.ts +27 -27
- package/src/main/browser/preference-registry-main.ts +123 -123
- package/src/main/browser/quick-open-main.ts +324 -324
- package/src/main/browser/scm-main.ts +453 -453
- package/src/main/browser/secrets-main.ts +82 -82
- package/src/main/browser/selection-provider-command.ts +46 -46
- package/src/main/browser/status-bar-message-registry-main.ts +90 -90
- package/src/main/browser/style/comments.css +345 -345
- package/src/main/browser/style/index.css +85 -85
- package/src/main/browser/style/plugin-sidebar.css +73 -73
- package/src/main/browser/style/test.svg +13 -13
- package/src/main/browser/style/tree.css +52 -52
- package/src/main/browser/style/webview.css +53 -53
- package/src/main/browser/tabs/tabs-main.ts +323 -323
- package/src/main/browser/tasks-main.ts +268 -268
- package/src/main/browser/terminal-main.ts +301 -301
- package/src/main/browser/text-editor-main.ts +463 -463
- package/src/main/browser/text-editor-model-service.ts +102 -102
- package/src/main/browser/text-editors-main.ts +206 -206
- package/src/main/browser/theme-icon-override.ts +252 -252
- package/src/main/browser/theming-main.ts +42 -42
- package/src/main/browser/timeline-main.ts +80 -80
- package/src/main/browser/view/dnd-file-content-store.ts +42 -42
- package/src/main/browser/view/plugin-tree-view-node-label-provider.ts +81 -81
- package/src/main/browser/view/plugin-view-registry.ts +885 -885
- package/src/main/browser/view/plugin-view-widget.ts +173 -173
- package/src/main/browser/view/tree-view-decorator-service.ts +51 -51
- package/src/main/browser/view/tree-view-widget.tsx +859 -859
- package/src/main/browser/view/tree-views-main.ts +191 -191
- package/src/main/browser/view/view-context-key-service.ts +77 -77
- package/src/main/browser/view-column-service.ts +125 -125
- package/src/main/browser/webview/pre/fake.html +14 -14
- package/src/main/browser/webview/pre/host.js +130 -130
- package/src/main/browser/webview/pre/index.html +17 -17
- package/src/main/browser/webview/pre/main.js +632 -632
- package/src/main/browser/webview/pre/service-worker.js +295 -295
- package/src/main/browser/webview/webview-environment.ts +83 -83
- package/src/main/browser/webview/webview-frontend-security-warnings.ts +59 -59
- package/src/main/browser/webview/webview-preferences.ts +72 -72
- package/src/main/browser/webview/webview-resource-cache.ts +88 -88
- package/src/main/browser/webview/webview-theme-data-provider.ts +124 -124
- package/src/main/browser/webview/webview-widget-factory.ts +43 -43
- package/src/main/browser/webview/webview.ts +629 -629
- package/src/main/browser/webview-views/webview-views-main.ts +142 -142
- package/src/main/browser/webview-views/webview-views.ts +38 -38
- package/src/main/browser/webviews-main.ts +269 -269
- package/src/main/browser/window-state-main.ts +76 -76
- package/src/main/browser/workspace-main.ts +383 -383
- package/src/main/common/plugin-paths-protocol.ts +26 -26
- package/src/main/common/plugin-theia-environment.ts +36 -36
- package/src/main/common/webview-protocol.ts +28 -28
- package/src/main/electron-browser/plugin-ext-frontend-electron-module.ts +25 -25
- package/src/main/electron-browser/webview/electron-webview-widget-factory.ts +70 -70
- package/src/main/node/handlers/plugin-theia-directory-handler.ts +105 -105
- package/src/main/node/handlers/plugin-theia-file-handler.ts +54 -54
- package/src/main/node/paths/const.ts +21 -21
- package/src/main/node/paths/plugin-paths-service.ts +170 -170
- package/src/main/node/plugin-cli-contribution.ts +85 -85
- package/src/main/node/plugin-deployer-contribution.ts +34 -34
- package/src/main/node/plugin-deployer-directory-handler-context-impl.ts +45 -45
- package/src/main/node/plugin-deployer-entry-impl.ts +130 -130
- package/src/main/node/plugin-deployer-file-handler-context-impl.ts +33 -33
- package/src/main/node/plugin-deployer-impl.ts +367 -367
- package/src/main/node/plugin-deployer-proxy-entry-impl.ts +96 -96
- package/src/main/node/plugin-deployer-resolver-context-impl.ts +55 -55
- package/src/main/node/plugin-ext-backend-module.ts +93 -93
- package/src/main/node/plugin-github-resolver.ts +148 -148
- package/src/main/node/plugin-http-resolver.ts +91 -91
- package/src/main/node/plugin-localization-backend-contribution.ts +42 -42
- package/src/main/node/plugin-server-handler.ts +69 -69
- package/src/main/node/plugin-service.ts +82 -82
- package/src/main/node/plugin-theia-deployer-participant.ts +32 -32
- package/src/main/node/plugin-uninstallation-manager.ts +74 -74
- package/src/main/node/plugins-key-value-storage.ts +117 -117
- package/src/main/node/resolvers/local-directory-plugin-deployer-resolver.ts +37 -37
- package/src/main/node/resolvers/local-plugin-deployer-resolver.ts +56 -56
- package/src/main/node/temp-dir-util.ts +27 -27
- package/src/main/node/webview-backend-security-warnings.ts +45 -45
- package/src/main/style/status-bar.css +35 -35
- package/src/plugin/authentication-ext.ts +125 -125
- package/src/plugin/clipboard-ext.ts +37 -37
- package/src/plugin/command-registry.ts +218 -218
- package/src/plugin/comments.ts +518 -518
- package/src/plugin/custom-editors.ts +336 -336
- package/src/plugin/debug/debug-ext.ts +487 -487
- package/src/plugin/debug/plugin-debug-adapter-creator.ts +50 -50
- package/src/plugin/debug/plugin-debug-adapter-session.ts +106 -106
- package/src/plugin/debug/plugin-debug-adapter-tracker.ts +85 -85
- package/src/plugin/decorations.ts +140 -140
- package/src/plugin/dialogs.ts +96 -96
- package/src/plugin/document-data.ts +366 -366
- package/src/plugin/documents.ts +283 -283
- package/src/plugin/editors-and-documents.ts +170 -170
- package/src/plugin/env.ts +134 -134
- package/src/plugin/file-system-event-service-ext-impl.ts +256 -256
- package/src/plugin/file-system-ext-impl.ts +412 -412
- package/src/plugin/known-commands.spec.ts +50 -50
- package/src/plugin/known-commands.ts +412 -412
- package/src/plugin/label-service.ts +36 -36
- package/src/plugin/languages/call-hierarchy.ts +124 -124
- package/src/plugin/languages/code-action.ts +162 -162
- package/src/plugin/languages/color.ts +75 -75
- package/src/plugin/languages/completion.ts +179 -179
- package/src/plugin/languages/declaration.ts +72 -72
- package/src/plugin/languages/definition.ts +73 -73
- package/src/plugin/languages/diagnostics.ts +325 -325
- package/src/plugin/languages/document-formatting.ts +47 -47
- package/src/plugin/languages/document-highlight.ts +61 -61
- package/src/plugin/languages/evaluatable-expression.ts +47 -47
- package/src/plugin/languages/folding.ts +46 -46
- package/src/plugin/languages/hover.ts +58 -58
- package/src/plugin/languages/implementation.ts +73 -73
- package/src/plugin/languages/inlay-hints.ts +149 -149
- package/src/plugin/languages/inline-completion.ts +126 -126
- package/src/plugin/languages/inline-values.ts +50 -50
- package/src/plugin/languages/lens.ts +102 -102
- package/src/plugin/languages/link-provider.ts +79 -79
- package/src/plugin/languages/linked-editing-range.ts +48 -48
- package/src/plugin/languages/on-type-formatting.ts +50 -50
- package/src/plugin/languages/outline.ts +126 -126
- package/src/plugin/languages/range-formatting.ts +48 -48
- package/src/plugin/languages/reference.ts +58 -58
- package/src/plugin/languages/rename.ts +130 -130
- package/src/plugin/languages/selection-range.ts +80 -80
- package/src/plugin/languages/semantic-highlighting.ts +211 -211
- package/src/plugin/languages/signature.ts +82 -82
- package/src/plugin/languages/type-definition.ts +73 -73
- package/src/plugin/languages/type-hierarchy.ts +117 -117
- package/src/plugin/languages/util.ts +26 -26
- package/src/plugin/languages/workspace-symbol.ts +66 -66
- package/src/plugin/languages-utils.ts +56 -56
- package/src/plugin/languages.ts +969 -969
- package/src/plugin/markdown-string.ts +115 -115
- package/src/plugin/message-registry.ts +65 -65
- package/src/plugin/node/debug/debug.spec.ts +94 -94
- package/src/plugin/node/debug/plugin-node-debug-adapter-creator.ts +167 -167
- package/src/plugin/node/env-node-ext.ts +69 -69
- package/src/plugin/notification.ts +80 -80
- package/src/plugin/output-channel/output-channel-item.ts +73 -73
- package/src/plugin/output-channel-registry.ts +39 -39
- package/src/plugin/path.spec.ts +40 -40
- package/src/plugin/path.ts +68 -68
- package/src/plugin/plugin-context.ts +1387 -1387
- package/src/plugin/plugin-icon-path.ts +50 -50
- package/src/plugin/plugin-manager.ts +446 -446
- package/src/plugin/plugin-storage.ts +120 -120
- package/src/plugin/preference-registry.spec.ts +299 -299
- package/src/plugin/preference-registry.ts +337 -337
- package/src/plugin/prefix-sum-computer.ts +218 -218
- package/src/plugin/quick-open.ts +772 -772
- package/src/plugin/scm.ts +910 -910
- package/src/plugin/secrets-ext.ts +84 -84
- package/src/plugin/status-bar/status-bar-item.ts +193 -193
- package/src/plugin/status-bar-message-registry.ts +103 -103
- package/src/plugin/stubs/tests-api.ts +96 -96
- package/src/plugin/tabs.ts +426 -426
- package/src/plugin/tasks/task-provider.ts +60 -60
- package/src/plugin/tasks/tasks.ts +247 -247
- package/src/plugin/terminal-ext.ts +494 -494
- package/src/plugin/text-editor.ts +522 -522
- package/src/plugin/text-editors.ts +150 -150
- package/src/plugin/theming.ts +73 -73
- package/src/plugin/timeline.ts +186 -186
- package/src/plugin/tree/tree-views.ts +612 -612
- package/src/plugin/type-converters.spec.ts +476 -476
- package/src/plugin/type-converters.ts +1350 -1350
- package/src/plugin/types-impl.spec.ts +85 -85
- package/src/plugin/types-impl.ts +3407 -3407
- package/src/plugin/webview-views.ts +213 -213
- package/src/plugin/webviews.ts +433 -433
- package/src/plugin/window-state.ts +68 -68
- package/src/plugin/word-helper.ts +162 -162
- package/src/plugin/workspace.ts +448 -448
- package/src/plugin-ext-backend-electron-module.ts +24 -24
- package/src/plugin-ext-backend-module.ts +24 -24
- package/src/plugin-ext-frontend-electron-module.ts +19 -19
- package/src/plugin-ext-frontend-module.ts +19 -19
- package/src/typings/index.d.ts +25 -25
|
@@ -1,170 +1,170 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2018 Red Hat, Inc. and others.
|
|
4
|
-
//
|
|
5
|
-
// This program and the accompanying materials are made available under the
|
|
6
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
//
|
|
9
|
-
// This Source Code may also be made available under the following Secondary
|
|
10
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
// with the GNU Classpath Exception which is available at
|
|
13
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
//
|
|
15
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
-
// *****************************************************************************
|
|
17
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
18
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
19
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
20
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
21
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
22
|
-
};
|
|
23
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
24
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
25
|
-
};
|
|
26
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
-
exports.PluginPathsServiceImpl = void 0;
|
|
28
|
-
const inversify_1 = require("@theia/core/shared/inversify");
|
|
29
|
-
const uri_1 = require("@theia/core/lib/common/uri");
|
|
30
|
-
const path = require("path");
|
|
31
|
-
const fs = require("@theia/core/shared/fs-extra");
|
|
32
|
-
const fs_extra_1 = require("@theia/core/shared/fs-extra");
|
|
33
|
-
const crypto = require("crypto");
|
|
34
|
-
const core_1 = require("@theia/core");
|
|
35
|
-
const node_1 = require("@theia/core/lib/node");
|
|
36
|
-
const const_1 = require("./const");
|
|
37
|
-
const common_1 = require("@theia/workspace/lib/common");
|
|
38
|
-
const env_variables_1 = require("@theia/core/lib/common/env-variables");
|
|
39
|
-
const plugin_cli_contribution_1 = require("../plugin-cli-contribution");
|
|
40
|
-
const SESSION_TIMESTAMP_PATTERN = /^\d{8}T\d{6}$/;
|
|
41
|
-
// Service to provide configuration paths for plugin api.
|
|
42
|
-
let PluginPathsServiceImpl = class PluginPathsServiceImpl {
|
|
43
|
-
async getHostLogPath() {
|
|
44
|
-
const parentLogsDir = await this.getLogsDirPath();
|
|
45
|
-
if (!parentLogsDir) {
|
|
46
|
-
throw new Error('Unable to get parent log directory');
|
|
47
|
-
}
|
|
48
|
-
const pluginDirPath = path.join(parentLogsDir, this.generateTimeFolderName(), 'host');
|
|
49
|
-
await fs.mkdirs(pluginDirPath);
|
|
50
|
-
// no `await` as We should never wait for the cleanup
|
|
51
|
-
this.cleanupOldLogs(parentLogsDir);
|
|
52
|
-
return pluginDirPath;
|
|
53
|
-
}
|
|
54
|
-
async getHostStoragePath(workspaceUri, rootUris) {
|
|
55
|
-
const parentStorageDir = await this.getWorkspaceStorageDirPath();
|
|
56
|
-
if (!parentStorageDir) {
|
|
57
|
-
throw new Error('Unable to get parent storage directory');
|
|
58
|
-
}
|
|
59
|
-
if (!workspaceUri) {
|
|
60
|
-
return undefined;
|
|
61
|
-
}
|
|
62
|
-
await fs.mkdirs(parentStorageDir);
|
|
63
|
-
const storageDirName = await this.buildWorkspaceId(workspaceUri, rootUris);
|
|
64
|
-
const storageDirPath = path.join(parentStorageDir, storageDirName);
|
|
65
|
-
await fs.mkdirs(storageDirPath);
|
|
66
|
-
return storageDirPath;
|
|
67
|
-
}
|
|
68
|
-
async buildWorkspaceId(workspaceUri, rootUris) {
|
|
69
|
-
const untitledWorkspace = await (0, common_1.getTemporaryWorkspaceFileUri)(this.envServer);
|
|
70
|
-
if (untitledWorkspace.toString() === workspaceUri) {
|
|
71
|
-
// if workspace is temporary
|
|
72
|
-
// then let create a storage path for each set of workspace roots
|
|
73
|
-
const rootsStr = rootUris.sort().join(',');
|
|
74
|
-
return this.createHash(rootsStr);
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
let stat;
|
|
78
|
-
try {
|
|
79
|
-
stat = await fs.stat(node_1.FileUri.fsPath(workspaceUri));
|
|
80
|
-
}
|
|
81
|
-
catch ( /* no-op */_a) { /* no-op */ }
|
|
82
|
-
let displayName = new uri_1.default(workspaceUri).displayName;
|
|
83
|
-
if ((!stat || !stat.isDirectory()) && (displayName.endsWith(`.${common_1.THEIA_EXT}`) || displayName.endsWith(`.${common_1.VSCODE_EXT}`))) {
|
|
84
|
-
displayName = displayName.slice(0, displayName.lastIndexOf('.'));
|
|
85
|
-
}
|
|
86
|
-
return this.createHash(workspaceUri);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Creates a hash digest of the given string.
|
|
91
|
-
*/
|
|
92
|
-
createHash(str) {
|
|
93
|
-
try {
|
|
94
|
-
// md5 is not FIPS-approved but we have to continue use it as there're existing storage folders based on it
|
|
95
|
-
return crypto.createHash('md5').update(str).digest('hex');
|
|
96
|
-
}
|
|
97
|
-
catch (e) {
|
|
98
|
-
if (e.message.indexOf('disabled for FIPS') > -1) {
|
|
99
|
-
// SHA256 is FIPS-compliant
|
|
100
|
-
return crypto.createHash('sha256').update(str).digest('hex');
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
throw e;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
// see more details in the issues 8378
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Generate time folder name in format: YYYYMMDDTHHMMSS, for example: 20181205T093828
|
|
110
|
-
*/
|
|
111
|
-
generateTimeFolderName() {
|
|
112
|
-
const timeStamp = new Date().toISOString().replace(/[-:]|(\..*)/g, '');
|
|
113
|
-
// Helps ensure our timestamp generation logic is "valid".
|
|
114
|
-
// Changes to the timestamp structure may break old logs deletion logic.
|
|
115
|
-
if (!SESSION_TIMESTAMP_PATTERN.test(timeStamp)) {
|
|
116
|
-
this.logger.error(`Generated log folder name: "${timeStamp}" does not match expected pattern: ${SESSION_TIMESTAMP_PATTERN}`);
|
|
117
|
-
}
|
|
118
|
-
return timeStamp;
|
|
119
|
-
}
|
|
120
|
-
async getLogsDirPath() {
|
|
121
|
-
const configDirUri = await this.envServer.getConfigDirUri();
|
|
122
|
-
return path.join(node_1.FileUri.fsPath(configDirUri), const_1.PluginPaths.PLUGINS_LOGS_DIR);
|
|
123
|
-
}
|
|
124
|
-
async getWorkspaceStorageDirPath() {
|
|
125
|
-
const configDirUri = await this.envServer.getConfigDirUri();
|
|
126
|
-
return path.join(node_1.FileUri.fsPath(configDirUri), const_1.PluginPaths.PLUGINS_WORKSPACE_STORAGE_DIR);
|
|
127
|
-
}
|
|
128
|
-
async cleanupOldLogs(parentLogsDir) {
|
|
129
|
-
// @ts-ignore - fs-extra types (Even latest version) is not updated with the `withFileTypes` option.
|
|
130
|
-
const dirEntries = await (0, fs_extra_1.readdir)(parentLogsDir, { withFileTypes: true });
|
|
131
|
-
// `Dirent` type is defined in @types/node since 10.10.0
|
|
132
|
-
// However, upgrading the @types/node in theia to 10.11 (as defined in engine field)
|
|
133
|
-
// Causes other packages to break in compilation, so we are using the infamous `any` type...
|
|
134
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
135
|
-
const subDirEntries = dirEntries.filter((dirent) => dirent.isDirectory());
|
|
136
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
137
|
-
const subDirNames = subDirEntries.map((dirent) => dirent.name);
|
|
138
|
-
// We never clean a folder that is not a Theia logs session folder.
|
|
139
|
-
// Even if it does appears under the `parentLogsDir`...
|
|
140
|
-
const sessionSubDirNames = subDirNames.filter((dirName) => SESSION_TIMESTAMP_PATTERN.test(dirName));
|
|
141
|
-
// [].sort is ascending order and we need descending order (newest first).
|
|
142
|
-
const sortedSessionSubDirNames = sessionSubDirNames.sort().reverse();
|
|
143
|
-
const maxSessionLogsFolders = this.cliContribution.maxSessionLogsFolders();
|
|
144
|
-
// [5,4,3,2,1].slice(2) --> [2,1] --> only keep N latest session folders.
|
|
145
|
-
const oldSessionSubDirNames = sortedSessionSubDirNames.slice(maxSessionLogsFolders);
|
|
146
|
-
oldSessionSubDirNames.forEach((sessionDir) => {
|
|
147
|
-
const sessionDirPath = path.resolve(parentLogsDir, sessionDir);
|
|
148
|
-
// we are not waiting for the async `remove` to finish before returning
|
|
149
|
-
// in order to minimize impact on Theia startup time.
|
|
150
|
-
(0, fs_extra_1.remove)(sessionDirPath);
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
};
|
|
154
|
-
__decorate([
|
|
155
|
-
(0, inversify_1.inject)(core_1.ILogger),
|
|
156
|
-
__metadata("design:type", Object)
|
|
157
|
-
], PluginPathsServiceImpl.prototype, "logger", void 0);
|
|
158
|
-
__decorate([
|
|
159
|
-
(0, inversify_1.inject)(env_variables_1.EnvVariablesServer),
|
|
160
|
-
__metadata("design:type", Object)
|
|
161
|
-
], PluginPathsServiceImpl.prototype, "envServer", void 0);
|
|
162
|
-
__decorate([
|
|
163
|
-
(0, inversify_1.inject)(plugin_cli_contribution_1.PluginCliContribution),
|
|
164
|
-
__metadata("design:type", plugin_cli_contribution_1.PluginCliContribution)
|
|
165
|
-
], PluginPathsServiceImpl.prototype, "cliContribution", void 0);
|
|
166
|
-
PluginPathsServiceImpl = __decorate([
|
|
167
|
-
(0, inversify_1.injectable)()
|
|
168
|
-
], PluginPathsServiceImpl);
|
|
169
|
-
exports.PluginPathsServiceImpl = PluginPathsServiceImpl;
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2018 Red Hat, Inc. and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
18
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
19
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
20
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
21
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
22
|
+
};
|
|
23
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
24
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
25
|
+
};
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.PluginPathsServiceImpl = void 0;
|
|
28
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
29
|
+
const uri_1 = require("@theia/core/lib/common/uri");
|
|
30
|
+
const path = require("path");
|
|
31
|
+
const fs = require("@theia/core/shared/fs-extra");
|
|
32
|
+
const fs_extra_1 = require("@theia/core/shared/fs-extra");
|
|
33
|
+
const crypto = require("crypto");
|
|
34
|
+
const core_1 = require("@theia/core");
|
|
35
|
+
const node_1 = require("@theia/core/lib/node");
|
|
36
|
+
const const_1 = require("./const");
|
|
37
|
+
const common_1 = require("@theia/workspace/lib/common");
|
|
38
|
+
const env_variables_1 = require("@theia/core/lib/common/env-variables");
|
|
39
|
+
const plugin_cli_contribution_1 = require("../plugin-cli-contribution");
|
|
40
|
+
const SESSION_TIMESTAMP_PATTERN = /^\d{8}T\d{6}$/;
|
|
41
|
+
// Service to provide configuration paths for plugin api.
|
|
42
|
+
let PluginPathsServiceImpl = class PluginPathsServiceImpl {
|
|
43
|
+
async getHostLogPath() {
|
|
44
|
+
const parentLogsDir = await this.getLogsDirPath();
|
|
45
|
+
if (!parentLogsDir) {
|
|
46
|
+
throw new Error('Unable to get parent log directory');
|
|
47
|
+
}
|
|
48
|
+
const pluginDirPath = path.join(parentLogsDir, this.generateTimeFolderName(), 'host');
|
|
49
|
+
await fs.mkdirs(pluginDirPath);
|
|
50
|
+
// no `await` as We should never wait for the cleanup
|
|
51
|
+
this.cleanupOldLogs(parentLogsDir);
|
|
52
|
+
return pluginDirPath;
|
|
53
|
+
}
|
|
54
|
+
async getHostStoragePath(workspaceUri, rootUris) {
|
|
55
|
+
const parentStorageDir = await this.getWorkspaceStorageDirPath();
|
|
56
|
+
if (!parentStorageDir) {
|
|
57
|
+
throw new Error('Unable to get parent storage directory');
|
|
58
|
+
}
|
|
59
|
+
if (!workspaceUri) {
|
|
60
|
+
return undefined;
|
|
61
|
+
}
|
|
62
|
+
await fs.mkdirs(parentStorageDir);
|
|
63
|
+
const storageDirName = await this.buildWorkspaceId(workspaceUri, rootUris);
|
|
64
|
+
const storageDirPath = path.join(parentStorageDir, storageDirName);
|
|
65
|
+
await fs.mkdirs(storageDirPath);
|
|
66
|
+
return storageDirPath;
|
|
67
|
+
}
|
|
68
|
+
async buildWorkspaceId(workspaceUri, rootUris) {
|
|
69
|
+
const untitledWorkspace = await (0, common_1.getTemporaryWorkspaceFileUri)(this.envServer);
|
|
70
|
+
if (untitledWorkspace.toString() === workspaceUri) {
|
|
71
|
+
// if workspace is temporary
|
|
72
|
+
// then let create a storage path for each set of workspace roots
|
|
73
|
+
const rootsStr = rootUris.sort().join(',');
|
|
74
|
+
return this.createHash(rootsStr);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
let stat;
|
|
78
|
+
try {
|
|
79
|
+
stat = await fs.stat(node_1.FileUri.fsPath(workspaceUri));
|
|
80
|
+
}
|
|
81
|
+
catch ( /* no-op */_a) { /* no-op */ }
|
|
82
|
+
let displayName = new uri_1.default(workspaceUri).displayName;
|
|
83
|
+
if ((!stat || !stat.isDirectory()) && (displayName.endsWith(`.${common_1.THEIA_EXT}`) || displayName.endsWith(`.${common_1.VSCODE_EXT}`))) {
|
|
84
|
+
displayName = displayName.slice(0, displayName.lastIndexOf('.'));
|
|
85
|
+
}
|
|
86
|
+
return this.createHash(workspaceUri);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Creates a hash digest of the given string.
|
|
91
|
+
*/
|
|
92
|
+
createHash(str) {
|
|
93
|
+
try {
|
|
94
|
+
// md5 is not FIPS-approved but we have to continue use it as there're existing storage folders based on it
|
|
95
|
+
return crypto.createHash('md5').update(str).digest('hex');
|
|
96
|
+
}
|
|
97
|
+
catch (e) {
|
|
98
|
+
if (e.message.indexOf('disabled for FIPS') > -1) {
|
|
99
|
+
// SHA256 is FIPS-compliant
|
|
100
|
+
return crypto.createHash('sha256').update(str).digest('hex');
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
throw e;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// see more details in the issues 8378
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Generate time folder name in format: YYYYMMDDTHHMMSS, for example: 20181205T093828
|
|
110
|
+
*/
|
|
111
|
+
generateTimeFolderName() {
|
|
112
|
+
const timeStamp = new Date().toISOString().replace(/[-:]|(\..*)/g, '');
|
|
113
|
+
// Helps ensure our timestamp generation logic is "valid".
|
|
114
|
+
// Changes to the timestamp structure may break old logs deletion logic.
|
|
115
|
+
if (!SESSION_TIMESTAMP_PATTERN.test(timeStamp)) {
|
|
116
|
+
this.logger.error(`Generated log folder name: "${timeStamp}" does not match expected pattern: ${SESSION_TIMESTAMP_PATTERN}`);
|
|
117
|
+
}
|
|
118
|
+
return timeStamp;
|
|
119
|
+
}
|
|
120
|
+
async getLogsDirPath() {
|
|
121
|
+
const configDirUri = await this.envServer.getConfigDirUri();
|
|
122
|
+
return path.join(node_1.FileUri.fsPath(configDirUri), const_1.PluginPaths.PLUGINS_LOGS_DIR);
|
|
123
|
+
}
|
|
124
|
+
async getWorkspaceStorageDirPath() {
|
|
125
|
+
const configDirUri = await this.envServer.getConfigDirUri();
|
|
126
|
+
return path.join(node_1.FileUri.fsPath(configDirUri), const_1.PluginPaths.PLUGINS_WORKSPACE_STORAGE_DIR);
|
|
127
|
+
}
|
|
128
|
+
async cleanupOldLogs(parentLogsDir) {
|
|
129
|
+
// @ts-ignore - fs-extra types (Even latest version) is not updated with the `withFileTypes` option.
|
|
130
|
+
const dirEntries = await (0, fs_extra_1.readdir)(parentLogsDir, { withFileTypes: true });
|
|
131
|
+
// `Dirent` type is defined in @types/node since 10.10.0
|
|
132
|
+
// However, upgrading the @types/node in theia to 10.11 (as defined in engine field)
|
|
133
|
+
// Causes other packages to break in compilation, so we are using the infamous `any` type...
|
|
134
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
135
|
+
const subDirEntries = dirEntries.filter((dirent) => dirent.isDirectory());
|
|
136
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
137
|
+
const subDirNames = subDirEntries.map((dirent) => dirent.name);
|
|
138
|
+
// We never clean a folder that is not a Theia logs session folder.
|
|
139
|
+
// Even if it does appears under the `parentLogsDir`...
|
|
140
|
+
const sessionSubDirNames = subDirNames.filter((dirName) => SESSION_TIMESTAMP_PATTERN.test(dirName));
|
|
141
|
+
// [].sort is ascending order and we need descending order (newest first).
|
|
142
|
+
const sortedSessionSubDirNames = sessionSubDirNames.sort().reverse();
|
|
143
|
+
const maxSessionLogsFolders = this.cliContribution.maxSessionLogsFolders();
|
|
144
|
+
// [5,4,3,2,1].slice(2) --> [2,1] --> only keep N latest session folders.
|
|
145
|
+
const oldSessionSubDirNames = sortedSessionSubDirNames.slice(maxSessionLogsFolders);
|
|
146
|
+
oldSessionSubDirNames.forEach((sessionDir) => {
|
|
147
|
+
const sessionDirPath = path.resolve(parentLogsDir, sessionDir);
|
|
148
|
+
// we are not waiting for the async `remove` to finish before returning
|
|
149
|
+
// in order to minimize impact on Theia startup time.
|
|
150
|
+
(0, fs_extra_1.remove)(sessionDirPath);
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
};
|
|
154
|
+
__decorate([
|
|
155
|
+
(0, inversify_1.inject)(core_1.ILogger),
|
|
156
|
+
__metadata("design:type", Object)
|
|
157
|
+
], PluginPathsServiceImpl.prototype, "logger", void 0);
|
|
158
|
+
__decorate([
|
|
159
|
+
(0, inversify_1.inject)(env_variables_1.EnvVariablesServer),
|
|
160
|
+
__metadata("design:type", Object)
|
|
161
|
+
], PluginPathsServiceImpl.prototype, "envServer", void 0);
|
|
162
|
+
__decorate([
|
|
163
|
+
(0, inversify_1.inject)(plugin_cli_contribution_1.PluginCliContribution),
|
|
164
|
+
__metadata("design:type", plugin_cli_contribution_1.PluginCliContribution)
|
|
165
|
+
], PluginPathsServiceImpl.prototype, "cliContribution", void 0);
|
|
166
|
+
PluginPathsServiceImpl = __decorate([
|
|
167
|
+
(0, inversify_1.injectable)()
|
|
168
|
+
], PluginPathsServiceImpl);
|
|
169
|
+
exports.PluginPathsServiceImpl = PluginPathsServiceImpl;
|
|
170
170
|
//# sourceMappingURL=plugin-paths-service.js.map
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
/// <reference types="yargs" />
|
|
2
|
-
import { Argv, Arguments } from '@theia/core/shared/yargs';
|
|
3
|
-
import { CliContribution } from '@theia/core/lib/node/cli';
|
|
4
|
-
export declare class PluginCliContribution implements CliContribution {
|
|
5
|
-
static PLUGINS: string;
|
|
6
|
-
static PLUGIN_MAX_SESSION_LOGS_FOLDERS: string;
|
|
7
|
-
static UNCOMPRESSED_PLUGINS_IN_PLACE: string;
|
|
8
|
-
/**
|
|
9
|
-
* This is the default value used in VSCode, see:
|
|
10
|
-
* - https://github.com/Microsoft/vscode/blob/613447d6b3f458ef7fee227e3876303bf5184580/src/vs/code/electron-browser/sharedProcess/contrib/logsDataCleaner.ts#L32
|
|
11
|
-
*/
|
|
12
|
-
static DEFAULT_PLUGIN_MAX_SESSION_LOGS_FOLDERS: number;
|
|
13
|
-
protected _localDir: string | undefined;
|
|
14
|
-
protected _maxSessionLogsFolders: number;
|
|
15
|
-
protected _keepUncompressedInPlace: boolean;
|
|
16
|
-
configure(conf: Argv): void;
|
|
17
|
-
setArguments(args: Arguments): void;
|
|
18
|
-
localDir(): string | undefined;
|
|
19
|
-
maxSessionLogsFolders(): number;
|
|
20
|
-
copyUncompressedPlugins(): boolean;
|
|
21
|
-
}
|
|
1
|
+
/// <reference types="yargs" />
|
|
2
|
+
import { Argv, Arguments } from '@theia/core/shared/yargs';
|
|
3
|
+
import { CliContribution } from '@theia/core/lib/node/cli';
|
|
4
|
+
export declare class PluginCliContribution implements CliContribution {
|
|
5
|
+
static PLUGINS: string;
|
|
6
|
+
static PLUGIN_MAX_SESSION_LOGS_FOLDERS: string;
|
|
7
|
+
static UNCOMPRESSED_PLUGINS_IN_PLACE: string;
|
|
8
|
+
/**
|
|
9
|
+
* This is the default value used in VSCode, see:
|
|
10
|
+
* - https://github.com/Microsoft/vscode/blob/613447d6b3f458ef7fee227e3876303bf5184580/src/vs/code/electron-browser/sharedProcess/contrib/logsDataCleaner.ts#L32
|
|
11
|
+
*/
|
|
12
|
+
static DEFAULT_PLUGIN_MAX_SESSION_LOGS_FOLDERS: number;
|
|
13
|
+
protected _localDir: string | undefined;
|
|
14
|
+
protected _maxSessionLogsFolders: number;
|
|
15
|
+
protected _keepUncompressedInPlace: boolean;
|
|
16
|
+
configure(conf: Argv): void;
|
|
17
|
+
setArguments(args: Arguments): void;
|
|
18
|
+
localDir(): string | undefined;
|
|
19
|
+
maxSessionLogsFolders(): number;
|
|
20
|
+
copyUncompressedPlugins(): boolean;
|
|
21
|
+
}
|
|
22
22
|
//# sourceMappingURL=plugin-cli-contribution.d.ts.map
|
|
@@ -1,85 +1,85 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// *****************************************************************************
|
|
3
|
-
// Copyright (C) 2019 TypeFox and others.
|
|
4
|
-
//
|
|
5
|
-
// This program and the accompanying materials are made available under the
|
|
6
|
-
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
-
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
-
//
|
|
9
|
-
// This Source Code may also be made available under the following Secondary
|
|
10
|
-
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
-
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
-
// with the GNU Classpath Exception which is available at
|
|
13
|
-
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
-
//
|
|
15
|
-
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
-
// *****************************************************************************
|
|
17
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
18
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
19
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
20
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
21
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
22
|
-
};
|
|
23
|
-
var PluginCliContribution_1;
|
|
24
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.PluginCliContribution = void 0;
|
|
26
|
-
const inversify_1 = require("@theia/core/shared/inversify");
|
|
27
|
-
const local_directory_plugin_deployer_resolver_1 = require("./resolvers/local-directory-plugin-deployer-resolver");
|
|
28
|
-
let PluginCliContribution = PluginCliContribution_1 = class PluginCliContribution {
|
|
29
|
-
constructor() {
|
|
30
|
-
this._keepUncompressedInPlace = false;
|
|
31
|
-
}
|
|
32
|
-
configure(conf) {
|
|
33
|
-
conf.option(PluginCliContribution_1.PLUGINS, {
|
|
34
|
-
// eslint-disable-next-line max-len
|
|
35
|
-
description: `Provides further refinement for the plugins. Example: --${PluginCliContribution_1.PLUGINS}=${local_directory_plugin_deployer_resolver_1.LocalDirectoryPluginDeployerResolver.LOCAL_DIR}:path/to/your/plugins`,
|
|
36
|
-
type: 'string',
|
|
37
|
-
nargs: 1
|
|
38
|
-
});
|
|
39
|
-
const maxLogSessionExample = `Example: --${PluginCliContribution_1.PLUGIN_MAX_SESSION_LOGS_FOLDERS}=5`;
|
|
40
|
-
conf.option(PluginCliContribution_1.PLUGIN_MAX_SESSION_LOGS_FOLDERS, {
|
|
41
|
-
description: `The maximum number of plugin logs sessions folders to retain. ${maxLogSessionExample}`,
|
|
42
|
-
type: 'number',
|
|
43
|
-
default: PluginCliContribution_1.DEFAULT_PLUGIN_MAX_SESSION_LOGS_FOLDERS,
|
|
44
|
-
nargs: 1
|
|
45
|
-
});
|
|
46
|
-
conf.option(PluginCliContribution_1.UNCOMPRESSED_PLUGINS_IN_PLACE, {
|
|
47
|
-
description: 'Whether user plugins that are stored on disk as uncompressed directories should be run in place or copied to temporary folder.',
|
|
48
|
-
type: 'boolean',
|
|
49
|
-
default: false,
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
setArguments(args) {
|
|
53
|
-
const pluginsArg = args[PluginCliContribution_1.PLUGINS];
|
|
54
|
-
if (pluginsArg && String(pluginsArg).startsWith(`${local_directory_plugin_deployer_resolver_1.LocalDirectoryPluginDeployerResolver.LOCAL_DIR}:`)) {
|
|
55
|
-
this._localDir = pluginsArg;
|
|
56
|
-
}
|
|
57
|
-
const maxSessionLogsFoldersArg = args[PluginCliContribution_1.PLUGIN_MAX_SESSION_LOGS_FOLDERS];
|
|
58
|
-
if (maxSessionLogsFoldersArg && Number.isInteger(maxSessionLogsFoldersArg) && maxSessionLogsFoldersArg > 0) {
|
|
59
|
-
this._maxSessionLogsFolders = maxSessionLogsFoldersArg;
|
|
60
|
-
}
|
|
61
|
-
this._keepUncompressedInPlace = Boolean(args[PluginCliContribution_1.UNCOMPRESSED_PLUGINS_IN_PLACE]);
|
|
62
|
-
}
|
|
63
|
-
localDir() {
|
|
64
|
-
return this._localDir;
|
|
65
|
-
}
|
|
66
|
-
maxSessionLogsFolders() {
|
|
67
|
-
return this._maxSessionLogsFolders;
|
|
68
|
-
}
|
|
69
|
-
copyUncompressedPlugins() {
|
|
70
|
-
return !this._keepUncompressedInPlace;
|
|
71
|
-
}
|
|
72
|
-
};
|
|
73
|
-
PluginCliContribution.PLUGINS = 'plugins';
|
|
74
|
-
PluginCliContribution.PLUGIN_MAX_SESSION_LOGS_FOLDERS = 'plugin-max-session-logs-folders';
|
|
75
|
-
PluginCliContribution.UNCOMPRESSED_PLUGINS_IN_PLACE = 'uncompressed-plugins-in-place';
|
|
76
|
-
/**
|
|
77
|
-
* This is the default value used in VSCode, see:
|
|
78
|
-
* - https://github.com/Microsoft/vscode/blob/613447d6b3f458ef7fee227e3876303bf5184580/src/vs/code/electron-browser/sharedProcess/contrib/logsDataCleaner.ts#L32
|
|
79
|
-
*/
|
|
80
|
-
PluginCliContribution.DEFAULT_PLUGIN_MAX_SESSION_LOGS_FOLDERS = 10;
|
|
81
|
-
PluginCliContribution = PluginCliContribution_1 = __decorate([
|
|
82
|
-
(0, inversify_1.injectable)()
|
|
83
|
-
], PluginCliContribution);
|
|
84
|
-
exports.PluginCliContribution = PluginCliContribution;
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2019 TypeFox and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
18
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
19
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
20
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
21
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
22
|
+
};
|
|
23
|
+
var PluginCliContribution_1;
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.PluginCliContribution = void 0;
|
|
26
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
27
|
+
const local_directory_plugin_deployer_resolver_1 = require("./resolvers/local-directory-plugin-deployer-resolver");
|
|
28
|
+
let PluginCliContribution = PluginCliContribution_1 = class PluginCliContribution {
|
|
29
|
+
constructor() {
|
|
30
|
+
this._keepUncompressedInPlace = false;
|
|
31
|
+
}
|
|
32
|
+
configure(conf) {
|
|
33
|
+
conf.option(PluginCliContribution_1.PLUGINS, {
|
|
34
|
+
// eslint-disable-next-line max-len
|
|
35
|
+
description: `Provides further refinement for the plugins. Example: --${PluginCliContribution_1.PLUGINS}=${local_directory_plugin_deployer_resolver_1.LocalDirectoryPluginDeployerResolver.LOCAL_DIR}:path/to/your/plugins`,
|
|
36
|
+
type: 'string',
|
|
37
|
+
nargs: 1
|
|
38
|
+
});
|
|
39
|
+
const maxLogSessionExample = `Example: --${PluginCliContribution_1.PLUGIN_MAX_SESSION_LOGS_FOLDERS}=5`;
|
|
40
|
+
conf.option(PluginCliContribution_1.PLUGIN_MAX_SESSION_LOGS_FOLDERS, {
|
|
41
|
+
description: `The maximum number of plugin logs sessions folders to retain. ${maxLogSessionExample}`,
|
|
42
|
+
type: 'number',
|
|
43
|
+
default: PluginCliContribution_1.DEFAULT_PLUGIN_MAX_SESSION_LOGS_FOLDERS,
|
|
44
|
+
nargs: 1
|
|
45
|
+
});
|
|
46
|
+
conf.option(PluginCliContribution_1.UNCOMPRESSED_PLUGINS_IN_PLACE, {
|
|
47
|
+
description: 'Whether user plugins that are stored on disk as uncompressed directories should be run in place or copied to temporary folder.',
|
|
48
|
+
type: 'boolean',
|
|
49
|
+
default: false,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
setArguments(args) {
|
|
53
|
+
const pluginsArg = args[PluginCliContribution_1.PLUGINS];
|
|
54
|
+
if (pluginsArg && String(pluginsArg).startsWith(`${local_directory_plugin_deployer_resolver_1.LocalDirectoryPluginDeployerResolver.LOCAL_DIR}:`)) {
|
|
55
|
+
this._localDir = pluginsArg;
|
|
56
|
+
}
|
|
57
|
+
const maxSessionLogsFoldersArg = args[PluginCliContribution_1.PLUGIN_MAX_SESSION_LOGS_FOLDERS];
|
|
58
|
+
if (maxSessionLogsFoldersArg && Number.isInteger(maxSessionLogsFoldersArg) && maxSessionLogsFoldersArg > 0) {
|
|
59
|
+
this._maxSessionLogsFolders = maxSessionLogsFoldersArg;
|
|
60
|
+
}
|
|
61
|
+
this._keepUncompressedInPlace = Boolean(args[PluginCliContribution_1.UNCOMPRESSED_PLUGINS_IN_PLACE]);
|
|
62
|
+
}
|
|
63
|
+
localDir() {
|
|
64
|
+
return this._localDir;
|
|
65
|
+
}
|
|
66
|
+
maxSessionLogsFolders() {
|
|
67
|
+
return this._maxSessionLogsFolders;
|
|
68
|
+
}
|
|
69
|
+
copyUncompressedPlugins() {
|
|
70
|
+
return !this._keepUncompressedInPlace;
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
PluginCliContribution.PLUGINS = 'plugins';
|
|
74
|
+
PluginCliContribution.PLUGIN_MAX_SESSION_LOGS_FOLDERS = 'plugin-max-session-logs-folders';
|
|
75
|
+
PluginCliContribution.UNCOMPRESSED_PLUGINS_IN_PLACE = 'uncompressed-plugins-in-place';
|
|
76
|
+
/**
|
|
77
|
+
* This is the default value used in VSCode, see:
|
|
78
|
+
* - https://github.com/Microsoft/vscode/blob/613447d6b3f458ef7fee227e3876303bf5184580/src/vs/code/electron-browser/sharedProcess/contrib/logsDataCleaner.ts#L32
|
|
79
|
+
*/
|
|
80
|
+
PluginCliContribution.DEFAULT_PLUGIN_MAX_SESSION_LOGS_FOLDERS = 10;
|
|
81
|
+
PluginCliContribution = PluginCliContribution_1 = __decorate([
|
|
82
|
+
(0, inversify_1.injectable)()
|
|
83
|
+
], PluginCliContribution);
|
|
84
|
+
exports.PluginCliContribution = PluginCliContribution;
|
|
85
85
|
//# sourceMappingURL=plugin-cli-contribution.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { BackendApplicationContribution } from '@theia/core/lib/node';
|
|
2
|
-
import { PluginDeployer } from '../../common/plugin-protocol';
|
|
3
|
-
import { ILogger } from '@theia/core';
|
|
4
|
-
export declare class PluginDeployerContribution implements BackendApplicationContribution {
|
|
5
|
-
protected readonly logger: ILogger;
|
|
6
|
-
protected pluginDeployer: PluginDeployer;
|
|
7
|
-
initialize(): void;
|
|
8
|
-
}
|
|
1
|
+
import { BackendApplicationContribution } from '@theia/core/lib/node';
|
|
2
|
+
import { PluginDeployer } from '../../common/plugin-protocol';
|
|
3
|
+
import { ILogger } from '@theia/core';
|
|
4
|
+
export declare class PluginDeployerContribution implements BackendApplicationContribution {
|
|
5
|
+
protected readonly logger: ILogger;
|
|
6
|
+
protected pluginDeployer: PluginDeployer;
|
|
7
|
+
initialize(): void;
|
|
8
|
+
}
|
|
9
9
|
//# sourceMappingURL=plugin-deployer-contribution.d.ts.map
|