Skip to content

Commit

Permalink
[COMMIT] [docs] [improvement] Minor changes of the function argument …
Browse files Browse the repository at this point in the history
…names for better intellisense and documenting the readme for the APIs
  • Loading branch information
ganeshkbhat committed Oct 15, 2022
1 parent 1ff3cb6 commit 9f95ee3
Show file tree
Hide file tree
Showing 2 changed files with 103 additions and 14 deletions.
97 changes: 93 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,30 +97,119 @@ TODO

#### API for traverse-fs / fssys


- traverse.dir

- traverse.returns
Usage:
```
require("traverse-fs").dir(
directory = "./",
recursive = false,
fetchModifierCallback = defaultFetch,
handleProcessExit = false,
errorHandler = defaultErrorHandler,
returnType = "nestedarray"
)
```

- traverse.returnNestedArray

Usage:

```
require("traverse-fs").returnNestedArray(
directory = "./",
recursive = false,
fetchModifierCallback = defaultFetch,
handleProcessExit = false,
errorHandler = defaultErrorHandler,
type = "nestedarray"
)
```

- traverse.returnFlatArray

Usage:

```
require("traverse-fs").returnFlatArray(
directory = "./",
recursive = false,
fetchModifierCallback = defaultFetch,
handleProcessExit = false,
errorHandler = defaultErrorHandler,
type = "flatarray"
)
```

- traverse.returnJSON

Usage:

- traverse.returnNestedArray
```
- traverse.returnFlatArray
require("traverse-fs").returnJSON(
directory = "./",
recursive = false,
fetchModifierCallback = defaultFetch,
handleProcessExit = false,
errorHandler = defaultErrorHandler,
type = "json"
)
- traverse.returnJSON
```

- traverse.callbacks
Usage for traverse.callbacks API

- traverse.callbacks.defaultFetch

Default Implementation:

```
(directory, fileDirent) => path.join(directory, fileDirent.name)
```

- traverse.callbacks.jsonFetch

Default Implementation:

```
(directory, fileDirent) => {
if ((os.type() === "Windows_NT") && fileDirent.name.includes("\\")) {
return path.join(fileDirent.name.split("\\").at(-1));
}
return path.join(fileDirent.name.split("/").at(-1))
}
```

- traverse.callbacks.errorHandler

Default Implementation:

```
(error) => console.log(error)
```

- traverse.search

- traverse.regex

- traverse.cliargs


# Contribution

Please feel to make contributions or raise issues to the repository by creating a pull request or [raising an issue](https://github.com/ganeshkbhat/glob-traverse-fs/issues)
Expand Down
20 changes: 10 additions & 10 deletions src/traverse.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,14 @@ const os = require("os");
const cliArgs = require("./cli.args").cliArgs;


const defaultFetch = (d, f) => path.join(d, f.name);
const defaultJSONFetch = (d, f) => {
if ((os.type() === "Windows_NT") && f.name.includes("\\")) {
return path.join(f.name.split("\\").at(-1));
const defaultFetch = (directory, fileDirent) => path.join(directory, fileDirent.name);
const defaultJSONFetch = (directory, fileDirent) => {
if ((os.type() === "Windows_NT") && fileDirent.name.includes("\\")) {
return path.join(fileDirent.name.split("\\").at(-1));
}
return path.join(f.name.split("/").at(-1))
return path.join(fileDirent.name.split("/").at(-1))
};
const defaultErrorHandler = (e) => console.log(e);
const defaultErrorHandler = (error) => console.log(error);

async function getFilesFolders(d, r = false, cb = defaultFetch, pe = false, pef = defaultErrorHandler, type = "nestedarray") {
var dir, result = [];
Expand Down Expand Up @@ -73,10 +73,10 @@ async function getFilesFolders(d, r = false, cb = defaultFetch, pe = false, pef
}
}

function invoke(d, r, cb, pe, pef, type) { return getFilesFolders(d, r, cb, pe, pef, type).then(result => result).catch(pef); };
function nestedArray(d, r, cb = defaultFetch, pe, pef, type = "nestedarray") { return invoke(d, r, cb, pe, pef, type).then(res => res) };
function flatArray(d, r, cb = defaultFetch, pe, pef, type = "flatarray") { return invoke(d, r, cb, pe, pef, type).then(res => res) };
function json(d, r, cb = defaultJSONFetch, pe, pef, type = "json") { return invoke(d, r, cb, pe, pef, type).then(res => res) };
function invoke(directory, recursive, fetchModifierCallback, handleProcessExit, errorHandler, type) { return getFilesFolders(directory, recursive, fetchModifierCallback, handleProcessExit, errorHandler, type).then(result => result).catch(errorHandler); };
function nestedArray(directory, recursive, fetchModifierCallback = defaultFetch, handleProcessExit, errorHandler, type = "nestedarray") { return invoke(directory, recursive, fetchModifierCallback, handleProcessExit, errorHandler, type).then(res => res) };
function flatArray(directory, recursive, fetchModifierCallback = defaultFetch, handleProcessExit, errorHandler, type = "flatarray") { return invoke(directory, recursive, fetchModifierCallback, handleProcessExit, errorHandler, type).then(res => res) };
function json(directory, recursive, fetchModifierCallback = defaultJSONFetch, handleProcessExit, errorHandler, type = "json") { return invoke(directory, recursive, fetchModifierCallback, handleProcessExit, errorHandler, type).then(res => res) };

// invoke("./", true, defaultFetch, false, defaultErrorHandler, "nestedarray").then(console.log)
// invoke("./", true, defaultJSONFetch, false, defaultErrorHandler, "json").then(console.log)
Expand Down

0 comments on commit 9f95ee3

Please sign in to comment.