@theia/workspace 1.77.0-next.6 → 1.77.0-next.63
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/lib/browser/metadata-storage/workspace-metadata-storage-service.spec.js +3 -2
- package/lib/browser/metadata-storage/workspace-metadata-storage-service.spec.js.map +1 -1
- package/lib/browser/quick-open-workspace.js +1 -1
- package/lib/browser/quick-open-workspace.js.map +1 -1
- package/lib/browser/test/with-workspace-service-defaults.d.ts +8 -0
- package/lib/browser/test/with-workspace-service-defaults.d.ts.map +1 -0
- package/lib/browser/test/with-workspace-service-defaults.js +28 -0
- package/lib/browser/test/with-workspace-service-defaults.js.map +1 -0
- package/lib/browser/workspace-commands.spec.js +2 -1
- package/lib/browser/workspace-commands.spec.js.map +1 -1
- package/lib/browser/workspace-delete-handler.js +1 -1
- package/lib/browser/workspace-delete-handler.js.map +1 -1
- package/lib/browser/workspace-schema-updater.js +1 -1
- package/lib/browser/workspace-schema-updater.js.map +1 -1
- package/lib/browser/workspace-search-filter-service.spec.js +2 -1
- package/lib/browser/workspace-search-filter-service.spec.js.map +1 -1
- package/lib/browser/workspace-service.d.ts +85 -0
- package/lib/browser/workspace-service.d.ts.map +1 -1
- package/lib/browser/workspace-service.js +203 -5
- package/lib/browser/workspace-service.js.map +1 -1
- package/lib/browser/workspace-service.spec.d.ts +2 -0
- package/lib/browser/workspace-service.spec.d.ts.map +1 -0
- package/lib/browser/workspace-service.spec.js +232 -0
- package/lib/browser/workspace-service.spec.js.map +1 -0
- package/lib/browser/workspace-trust-service.js +1 -1
- package/lib/browser/workspace-trust-service.js.map +1 -1
- package/lib/browser/workspace-trust-service.spec.js +3 -2
- package/lib/browser/workspace-trust-service.spec.js.map +1 -1
- package/lib/browser/workspace-uri-contribution.d.ts +14 -0
- package/lib/browser/workspace-uri-contribution.d.ts.map +1 -1
- package/lib/browser/workspace-uri-contribution.js +44 -2
- package/lib/browser/workspace-uri-contribution.js.map +1 -1
- package/lib/browser/workspace-uri-contribution.spec.js +43 -5
- package/lib/browser/workspace-uri-contribution.spec.js.map +1 -1
- package/lib/node/default-workspace-server.js +4 -4
- package/lib/node/default-workspace-server.js.map +1 -1
- package/lib/node/default-workspace-server.spec.js +3 -2
- package/lib/node/default-workspace-server.spec.js.map +1 -1
- package/package.json +5 -5
- package/src/browser/test/with-workspace-service-defaults.ts +26 -0
- package/src/browser/workspace-service.spec.ts +274 -0
- package/src/browser/workspace-service.ts +216 -2
- package/src/browser/workspace-uri-contribution.spec.ts +45 -3
- package/src/browser/workspace-uri-contribution.ts +43 -1
|
@@ -18,7 +18,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
exports.WorkspaceData = exports.WorkspaceService = exports.WorkspaceHandlingContribution = exports.WorkspaceOpenHandlerContribution = void 0;
|
|
19
19
|
const tslib_1 = require("tslib");
|
|
20
20
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
|
-
const uri_1 = require("@theia/core/lib/common/uri");
|
|
21
|
+
const uri_1 = tslib_1.__importDefault(require("@theia/core/lib/common/uri"));
|
|
22
|
+
const path_1 = require("@theia/core/lib/common/path");
|
|
22
23
|
const common_1 = require("../common");
|
|
23
24
|
const window_service_1 = require("@theia/core/lib/browser/window/window-service");
|
|
24
25
|
const window_1 = require("@theia/core/lib/common/window");
|
|
@@ -27,8 +28,8 @@ const promise_util_1 = require("@theia/core/lib/common/promise-util");
|
|
|
27
28
|
const env_variables_1 = require("@theia/core/lib/common/env-variables");
|
|
28
29
|
const core_1 = require("@theia/core");
|
|
29
30
|
const workspace_preferences_1 = require("../common/workspace-preferences");
|
|
30
|
-
const jsoncparser = require("jsonc-parser");
|
|
31
|
-
const
|
|
31
|
+
const jsoncparser = tslib_1.__importStar(require("jsonc-parser"));
|
|
32
|
+
const ajv_1 = tslib_1.__importDefault(require("@theia/core/shared/ajv"));
|
|
32
33
|
const files_1 = require("@theia/filesystem/lib/common/files");
|
|
33
34
|
const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
|
|
34
35
|
const window_title_service_1 = require("@theia/core/lib/browser/window/window-title-service");
|
|
@@ -239,6 +240,7 @@ let WorkspaceService = class WorkspaceService {
|
|
|
239
240
|
}
|
|
240
241
|
if (rootsChanged) {
|
|
241
242
|
this._roots = newRoots;
|
|
243
|
+
this.rootNamesCache = undefined;
|
|
242
244
|
this.deferredRoots.resolve(this._roots); // in order to resolve first
|
|
243
245
|
this.deferredRoots = new promise_util_1.Deferred();
|
|
244
246
|
this.deferredRoots.resolve(this._roots);
|
|
@@ -490,6 +492,7 @@ let WorkspaceService = class WorkspaceService {
|
|
|
490
492
|
this.windowService.setSafeToShutDown();
|
|
491
493
|
this._workspace = undefined;
|
|
492
494
|
this._roots.length = 0;
|
|
495
|
+
this.rootNamesCache = undefined;
|
|
493
496
|
if (!this.isRemoteSession()) {
|
|
494
497
|
await this.server.setMostRecentlyUsedWorkspace('');
|
|
495
498
|
}
|
|
@@ -706,13 +709,208 @@ let WorkspaceService = class WorkspaceService {
|
|
|
706
709
|
if (!rootUri) {
|
|
707
710
|
return uri.path.fsPath();
|
|
708
711
|
}
|
|
709
|
-
const rootName = rootUri.path.base;
|
|
712
|
+
const rootName = this.getRootName(rootUri) ?? rootUri.path.base;
|
|
710
713
|
const relative = rootUri.relative(uri);
|
|
711
714
|
if (!relative || relative.toString() === '') {
|
|
712
715
|
return rootName;
|
|
713
716
|
}
|
|
714
717
|
return `${rootName}/${relative.toString()}`;
|
|
715
718
|
}
|
|
719
|
+
/**
|
|
720
|
+
* Returns a unique name for each workspace root, in workspace order.
|
|
721
|
+
*
|
|
722
|
+
* A root is named after its directory basename, e.g. `backend`. Roots that share a basename are
|
|
723
|
+
* treated as peers: each of them is named after the shortest tail of its path that tells them
|
|
724
|
+
* apart, e.g. `alice/app` and `bob/app`. A name that another name starts with, e.g. `alice` next to
|
|
725
|
+
* `alice/app`, is qualified in the same way, e.g. `work/alice`, so that every path resolves to the root
|
|
726
|
+
* it came from. The names are thus always the ending of the real path, so they match what appears in
|
|
727
|
+
* terminal output, compiler errors and the like.
|
|
728
|
+
*
|
|
729
|
+
* These are the root names used by {@link getRootPrefixedPath} and resolved by {@link resolveRootPrefixedPath}.
|
|
730
|
+
*/
|
|
731
|
+
getRootNames() {
|
|
732
|
+
return this.getRootNamesCache().names;
|
|
733
|
+
}
|
|
734
|
+
getRootNamesCache() {
|
|
735
|
+
if (!this.rootNamesCache) {
|
|
736
|
+
const names = this.computeRootNames(this.tryGetRoots());
|
|
737
|
+
const namesByRoot = new Map(Array.from(names, ([name, uri]) => [uri.toString(), name]));
|
|
738
|
+
this.rootNamesCache = { names, namesByRoot };
|
|
739
|
+
}
|
|
740
|
+
return this.rootNamesCache;
|
|
741
|
+
}
|
|
742
|
+
computeRootNames(workspaceRoots) {
|
|
743
|
+
const roots = [];
|
|
744
|
+
for (const root of workspaceRoots) {
|
|
745
|
+
if (!roots.some(other => other.isEqual(root.resource))) {
|
|
746
|
+
roots.push(root.resource);
|
|
747
|
+
}
|
|
748
|
+
}
|
|
749
|
+
const byBasename = new Map();
|
|
750
|
+
for (const root of roots) {
|
|
751
|
+
const peers = byBasename.get(root.path.base) ?? [];
|
|
752
|
+
peers.push(root);
|
|
753
|
+
byBasename.set(root.path.base, peers);
|
|
754
|
+
}
|
|
755
|
+
const names = new Map();
|
|
756
|
+
for (const root of roots) {
|
|
757
|
+
names.set(this.computeRootName(root, byBasename.get(root.path.base)), root);
|
|
758
|
+
}
|
|
759
|
+
return this.qualifyRootNames(names);
|
|
760
|
+
}
|
|
761
|
+
/**
|
|
762
|
+
* Returns the name of the given workspace root, as assigned by {@link getRootNames}, or
|
|
763
|
+
* `undefined` if the URI is not a workspace root.
|
|
764
|
+
*/
|
|
765
|
+
getRootName(rootUri) {
|
|
766
|
+
return this.getRootNamesCache().namesByRoot.get(rootUri.toString());
|
|
767
|
+
}
|
|
768
|
+
/**
|
|
769
|
+
* Resolves a path in the format of {@link getRootPrefixedPath}, i.e. `<rootName>/<relativePath>`
|
|
770
|
+
* or a bare `<rootName>`, to a URI. If more than one root name is a prefix of the path, which is
|
|
771
|
+
* the case when a root named `a` has a subfolder `b` and another root is named `a/b`, the longest
|
|
772
|
+
* one wins.
|
|
773
|
+
*
|
|
774
|
+
* @returns `undefined` if the path is absolute, does not start with a root name or leaves its root.
|
|
775
|
+
*/
|
|
776
|
+
resolveRootPrefixedPath(rootPrefixedPath) {
|
|
777
|
+
const path = new path_1.Path(path_1.Path.normalizePathSeparator(rootPrefixedPath)).normalize();
|
|
778
|
+
if (path.isAbsolute || path_1.Path.isDrive(path.toString().split('/')[0])) {
|
|
779
|
+
return undefined;
|
|
780
|
+
}
|
|
781
|
+
const segments = path.toString().split('/').filter(segment => segment.length > 0);
|
|
782
|
+
if (segments.includes('..')) {
|
|
783
|
+
return undefined;
|
|
784
|
+
}
|
|
785
|
+
const match = this.splitRootPrefixedPath(segments.join('/'));
|
|
786
|
+
if (!match) {
|
|
787
|
+
return undefined;
|
|
788
|
+
}
|
|
789
|
+
return match.rest ? match.rootUri.resolve(match.rest) : match.rootUri;
|
|
790
|
+
}
|
|
791
|
+
/**
|
|
792
|
+
* Resolves a path that contains the basename of a workspace root, preceded by nothing or by the
|
|
793
|
+
* trailing segments of the root's parent path, e.g. `bob/app/src` for the root `/home/bob/app`.
|
|
794
|
+
* Unlike {@link resolveRootPrefixedPath}, this does not depend on the current root names, so it
|
|
795
|
+
* also resolves paths that were prefixed with a root name before the workspace roots changed.
|
|
796
|
+
*
|
|
797
|
+
* @returns the distinct candidates in workspace order, which are several if the path is ambiguous,
|
|
798
|
+
* or none if the path is absolute, leaves its root or does not contain the basename of a root.
|
|
799
|
+
*/
|
|
800
|
+
resolveSupraRelativePath(supraRelativePath) {
|
|
801
|
+
const path = new path_1.Path(path_1.Path.normalizePathSeparator(supraRelativePath)).normalize();
|
|
802
|
+
const segments = path.toString().split('/').filter(segment => segment.length > 0);
|
|
803
|
+
if (path.isAbsolute || path_1.Path.isDrive(segments[0] ?? '') || segments.includes('..')) {
|
|
804
|
+
return [];
|
|
805
|
+
}
|
|
806
|
+
const candidates = [];
|
|
807
|
+
for (const root of this.tryGetRoots()) {
|
|
808
|
+
const candidate = this.resolveSupraRelativeSegments(root.resource, segments);
|
|
809
|
+
if (candidate && !candidates.some(other => other.isEqual(candidate))) {
|
|
810
|
+
candidates.push(candidate);
|
|
811
|
+
}
|
|
812
|
+
}
|
|
813
|
+
return candidates;
|
|
814
|
+
}
|
|
815
|
+
/**
|
|
816
|
+
* Resolves `segments` against the given root as described in {@link resolveSupraRelativePath}.
|
|
817
|
+
*/
|
|
818
|
+
resolveSupraRelativeSegments(rootUri, segments) {
|
|
819
|
+
const rootBasename = rootUri.path.base;
|
|
820
|
+
const rootPathSegments = rootUri.path.toString().split('/').filter(segment => segment.length > 0);
|
|
821
|
+
const rootPrecedingSegments = rootPathSegments.slice(0, rootPathSegments.length - 1);
|
|
822
|
+
for (let i = 0; i < segments.length; i++) {
|
|
823
|
+
if (segments[i] !== rootBasename) {
|
|
824
|
+
continue;
|
|
825
|
+
}
|
|
826
|
+
const pathPrecedingSegments = segments.slice(0, i);
|
|
827
|
+
if (pathPrecedingSegments.length > rootPrecedingSegments.length) {
|
|
828
|
+
continue;
|
|
829
|
+
}
|
|
830
|
+
const rootTail = rootPrecedingSegments.slice(rootPrecedingSegments.length - pathPrecedingSegments.length);
|
|
831
|
+
if (pathPrecedingSegments.every((segment, j) => segment === rootTail[j])) {
|
|
832
|
+
const rest = segments.slice(i + 1).join('/');
|
|
833
|
+
return rest ? rootUri.resolve(rest) : rootUri;
|
|
834
|
+
}
|
|
835
|
+
}
|
|
836
|
+
return undefined;
|
|
837
|
+
}
|
|
838
|
+
/**
|
|
839
|
+
* Splits a `/`-separated path that starts with a root name, as in {@link getRootPrefixedPath}, into
|
|
840
|
+
* that root and the rest of the path, which is empty for a bare root name. The rest is not normalized,
|
|
841
|
+
* so it may as well be a glob. If more than one root name is a prefix of the path, the longest one wins.
|
|
842
|
+
*
|
|
843
|
+
* @returns `undefined` if the path does not start with a root name.
|
|
844
|
+
*/
|
|
845
|
+
splitRootPrefixedPath(rootPrefixedPath) {
|
|
846
|
+
const segments = rootPrefixedPath.split('/');
|
|
847
|
+
let match;
|
|
848
|
+
for (const [rootName, rootUri] of this.getRootNames()) {
|
|
849
|
+
const nameSegments = rootName.split('/');
|
|
850
|
+
const matches = nameSegments.length <= segments.length && nameSegments.every((segment, i) => segment === segments[i]);
|
|
851
|
+
if (matches && (!match || nameSegments.length > match.length)) {
|
|
852
|
+
match = { rootName, rootUri, length: nameSegments.length };
|
|
853
|
+
}
|
|
854
|
+
}
|
|
855
|
+
return match && { rootName: match.rootName, rootUri: match.rootUri, rest: segments.slice(match.length).join('/') };
|
|
856
|
+
}
|
|
857
|
+
/**
|
|
858
|
+
* Computes the name of a root from the roots that share its basename (including itself).
|
|
859
|
+
*/
|
|
860
|
+
computeRootName(root, peers) {
|
|
861
|
+
if (peers.length === 1) {
|
|
862
|
+
return root.path.base || root.path.toString();
|
|
863
|
+
}
|
|
864
|
+
const segmentsOf = (uri) => uri.path.toString().split('/').filter(segment => segment.length > 0);
|
|
865
|
+
const rootSegments = segmentsOf(root);
|
|
866
|
+
const peerSegments = peers.filter(peer => !peer.isEqual(root)).map(segmentsOf);
|
|
867
|
+
// A root with a shorter path than a peer, e.g. `/app` next to `/x/app`, is named by its whole path, `app`.
|
|
868
|
+
const maxLength = Math.max(rootSegments.length, ...peerSegments.map(segments => segments.length));
|
|
869
|
+
for (let length = 2; length <= maxLength; length++) {
|
|
870
|
+
const tail = rootSegments.slice(-length).join('/');
|
|
871
|
+
if (peerSegments.every(segments => segments.slice(-length).join('/') !== tail)) {
|
|
872
|
+
return tail;
|
|
873
|
+
}
|
|
874
|
+
}
|
|
875
|
+
// The paths are the same, e.g. in different URI schemes, so only the full URI tells them apart.
|
|
876
|
+
return root.toString();
|
|
877
|
+
}
|
|
878
|
+
/**
|
|
879
|
+
* Qualifies a root name that another root name starts with, e.g. `alice` next to `alice/app`, by more
|
|
880
|
+
* segments of its path, as a path in the one root would otherwise resolve to the other. If the root
|
|
881
|
+
* named `alice/app` is the `app` folder of the root named `alice`, the names are left as they are:
|
|
882
|
+
* the nested root is then also the one that {@link getRootPrefixedPath} names its files after.
|
|
883
|
+
*/
|
|
884
|
+
qualifyRootNames(names) {
|
|
885
|
+
const entries = Array.from(names, ([name, root]) => ({ name, root }));
|
|
886
|
+
let qualified = true;
|
|
887
|
+
while (qualified) {
|
|
888
|
+
qualified = false;
|
|
889
|
+
for (const shorter of entries) {
|
|
890
|
+
for (const longer of entries) {
|
|
891
|
+
if (longer.name.startsWith(shorter.name + '/')
|
|
892
|
+
&& !shorter.root.resolve(longer.name.substring(shorter.name.length + 1)).isEqual(longer.root)) {
|
|
893
|
+
qualified = this.qualifyRootName(shorter) || this.qualifyRootName(longer) || qualified;
|
|
894
|
+
}
|
|
895
|
+
}
|
|
896
|
+
}
|
|
897
|
+
}
|
|
898
|
+
return new Map(entries.map(({ name, root }) => [name, root]));
|
|
899
|
+
}
|
|
900
|
+
/**
|
|
901
|
+
* Adds the next parent segment to the name of a root, unless the name is its whole path or its URI already.
|
|
902
|
+
*
|
|
903
|
+
* @returns whether the name was qualified
|
|
904
|
+
*/
|
|
905
|
+
qualifyRootName(entry) {
|
|
906
|
+
const segments = entry.root.path.toString().split('/').filter(segment => segment.length > 0);
|
|
907
|
+
const length = entry.name.split('/').length;
|
|
908
|
+
if (entry.name === entry.root.toString() || length >= segments.length) {
|
|
909
|
+
return false;
|
|
910
|
+
}
|
|
911
|
+
entry.name = segments.slice(-(length + 1)).join('/');
|
|
912
|
+
return true;
|
|
913
|
+
}
|
|
716
914
|
areWorkspaceRoots(uris) {
|
|
717
915
|
if (!uris.length) {
|
|
718
916
|
return false;
|
|
@@ -826,7 +1024,7 @@ exports.WorkspaceService = WorkspaceService = tslib_1.__decorate([
|
|
|
826
1024
|
], WorkspaceService);
|
|
827
1025
|
var WorkspaceData;
|
|
828
1026
|
(function (WorkspaceData) {
|
|
829
|
-
const validateSchema = new
|
|
1027
|
+
const validateSchema = new ajv_1.default().compile(workspace_schema_updater_1.workspaceSchema);
|
|
830
1028
|
function is(data) {
|
|
831
1029
|
return !!validateSchema(data);
|
|
832
1030
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-service.js","sourceRoot":"","sources":["../../src/browser/workspace-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspace-service.js","sourceRoot":"","sources":["../../src/browser/workspace-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-service.spec.d.ts","sourceRoot":"","sources":["../../src/browser/workspace-service.spec.ts"],"names":[],"mappings":""}
|