code-server-2/uriTransformer.js

29 lines
953 B
JavaScript
Raw Normal View History

// This file is included via a regular Node require. I'm not sure how (or if)
// we can write this in Typescript and have it compile to non-AMD syntax.
2019-07-10 21:29:15 +00:00
module.exports = (remoteAuthority, https) => {
return {
transformIncoming: (uri) => {
switch (uri.scheme) {
2019-07-10 21:29:15 +00:00
case "https": return { scheme: "file", path: uri.path };
case "http": return { scheme: "file", path: uri.path };
2019-07-02 15:34:03 +00:00
case "file": return { scheme: "vscode-local", path: uri.path };
default: return uri;
}
},
transformOutgoing: (uri) => {
switch (uri.scheme) {
case "vscode-local": return { scheme: "file", path: uri.path };
2019-07-10 21:29:15 +00:00
case "file": return { scheme: https ? "https" : "http", authority: remoteAuthority, path: uri.path };
default: return uri;
}
},
transformOutgoingScheme: (scheme) => {
switch (scheme) {
case "vscode-local": return "file";
2019-07-10 21:29:15 +00:00
case "file": return https ? "https" : "http";
default: return scheme;
}
},
};
};