Merge pull request #839 from ethereum/bump-remixd

Fixed remixd for windows
pull/5370/head
David Disu 4 years ago committed by GitHub
commit 174ebb468a
  1. 2
      libs/remixd/package.json
  2. 19
      libs/remixd/src/utils.ts

@ -1,6 +1,6 @@
{ {
"name": "@remix-project/remixd", "name": "@remix-project/remixd",
"version": "0.3.0", "version": "0.3.2",
"description": "remix server: allow accessing file system from remix.ethereum.org and start a dev environment (see help section)", "description": "remix server: allow accessing file system from remix.ethereum.org and start a dev environment (see help section)",
"main": "index.js", "main": "index.js",
"types": "./index.d.ts", "types": "./index.d.ts",

@ -29,10 +29,10 @@ function relativePath (path: string, sharedFolder: string): string {
} }
function normalizePath (path: string): string { function normalizePath (path: string): string {
if (path === '/') path = './'
if (process.platform === 'win32') { if (process.platform === 'win32') {
return path.replace(/\\/g, '/') return path.replace(/\\/g, '/')
} }
if (path === '/') path = './'
return path return path
} }
@ -42,8 +42,15 @@ function walkSync (dir: string, filelist: Filelist, sharedFolder: string): Filel
filelist = filelist || {} filelist = filelist || {}
files.forEach(function (file) { files.forEach(function (file) {
const subElement = pathModule.join(dir, file) const subElement = pathModule.join(dir, file)
let isSymbolicLink
if (!fs.lstatSync(subElement).isSymbolicLink()) { try {
isSymbolicLink = !fs.lstatSync(subElement).isSymbolicLink()
} catch (error) {
isSymbolicLink = false
}
if (isSymbolicLink) {
if (fs.statSync(subElement).isDirectory()) { if (fs.statSync(subElement).isDirectory()) {
filelist = walkSync(subElement, filelist, sharedFolder) filelist = walkSync(subElement, filelist, sharedFolder)
} else { } else {
@ -62,8 +69,14 @@ function resolveDirectory (dir: string, sharedFolder: string): ResolveDirectory
files.forEach(function (file) { files.forEach(function (file) {
const subElement = pathModule.join(dir, file) const subElement = pathModule.join(dir, file)
let isSymbolicLink
if (!fs.lstatSync(subElement).isSymbolicLink()) { try {
isSymbolicLink = !fs.lstatSync(subElement).isSymbolicLink()
} catch (error) {
isSymbolicLink = false
}
if (isSymbolicLink) {
const relative: string = relativePath(subElement, sharedFolder) const relative: string = relativePath(subElement, sharedFolder)
ret[relative] = { isDirectory: fs.statSync(subElement).isDirectory() } ret[relative] = { isDirectory: fs.statSync(subElement).isDirectory() }

Loading…
Cancel
Save