Skip to content

Commit e3e7d6f

Browse files
Add files via upload
1 parent 330f33e commit e3e7d6f

File tree

4 files changed

+185
-109
lines changed

4 files changed

+185
-109
lines changed

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<!-- Logo -->
2-
# [![img](https://u.cubeupload.com/Wojtek_Game/codeguilogo.png#gh-dark-mode-only)](https://github.com/WojtekCodesToday/code-gui/) [![imgw](https://u.cubeupload.com/Wojtek_Game/codeguilogowhite.png#gh-light-mode-only)](https://github.com/WojtekCodesToday/code-gui/)
2+
# [![img](https://u.cubeupload.com/Wojtek_Game/codeguilogo.png)](https://github.com/WojtekCodesToday/code-gui/)
33
[![install size](https://packagephobia.com/badge?p=code-gui)](https://packagephobia.com/result?p=code-gui)
44
[![code-gui](https://snyk.io/advisor/npm-package/code-gui/badge.svg)](https://snyk.io/advisor/npm-package/code-gui)
55
[![npm-install](https://nodei.co/npm/code-gui.png?mini=true)](https://npmjs.com/package/code-gui)
@@ -47,4 +47,4 @@ To contribute, you have to:
4747
- Apply to GitHub's rules
4848
- Read this topic: https://scratch.mit.edu/discuss/topic/664129/
4949
# Source code
50-
[see source code](https://unpkg.com/code-gui/)
50+
[see source code](https://unpkg.com/code-gui/)

index.js

Lines changed: 176 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,176 @@
1+
//Copyright WojtekGame 2023 - npm: code-gui, github: WojtekCodesToday/code-gui
2+
import * as fs from 'fs/promises'
3+
import colors from 'colors';
4+
function __e(err) {
5+
console.error("(err) " + err);
6+
}
7+
/**
8+
* # loadDir
9+
* An code-gui function allowing to display folder contents in the terminal.
10+
*
11+
* Example:
12+
* ```
13+
* import loadDir from "code-gui";
14+
* loadDir("C:/", {"type":"text"})
15+
* ```
16+
* ## History
17+
* Added by [@WojtekCodesToday](github.com/WojtekCodesToday) on [GitHub](github.com)
18+
*/
19+
async function loadDir(dir, set) {
20+
let
21+
gdir = colors.yellow.bold(" " + dir),
22+
rest, name = "";
23+
rest = ""
24+
for (let c = 0; c < gdir.length; c++) {
25+
switch (set.style) {
26+
case "emoji":
27+
rest = `${rest}`;
28+
break;
29+
case "emoji-hacker":
30+
rest = `${rest}`;
31+
break;
32+
case "text-hacker":
33+
rest = `${rest}1`;
34+
break;
35+
case "text":
36+
rest = `${rest}-`;
37+
break;
38+
case "text-2":
39+
rest = `${rest}─`;
40+
break;
41+
case "keyboard":
42+
rest = `${rest}I`;
43+
break;
44+
//default:
45+
// break;
46+
}
47+
} try {
48+
var folder = await fs.opendir(dir);
49+
switch (set.style) {
50+
case "emoji":
51+
console.log(`⏹️⬅️⬅️ 🔍${gdir}`);
52+
break;
53+
case "emoji-hacker":
54+
console.log(`#️⃣0️⃣1️⃣ 🔍${gdir}`);
55+
break;
56+
case "text":
57+
console.log(`#--${gdir}`);
58+
break;
59+
case "text-2":
60+
console.log(`┌──${gdir}`);
61+
break;
62+
case "keyboard":
63+
console.log(`OIII${gdir}`);
64+
break;
65+
case "text-hacker":
66+
console.log(`#0110${gdir}`);
67+
break;
68+
//default:
69+
// break;
70+
}
71+
let dircount = 0,
72+
filecount = 0,
73+
nullcount = 0;
74+
function __frame() {
75+
let about = "";
76+
if (e.isFile() === false) {
77+
dircount = dircount + 1;
78+
about = colors.gray(` // <Directory> Directory count: ${dircount}`);
79+
} else if (e.isDirectory() === true) {
80+
filecount = filecount + 1
81+
about = colors.gray(` // <File> File count: ${filecount}`);
82+
} else {
83+
nullcount = nullcount + 1
84+
about = colors.gray(` // <NULL> Null count: ${nullcount}`);
85+
}
86+
if (set.limitNames === true) {
87+
if (name.length > 20) {
88+
let abc = "";
89+
for (let integr = 0; integr < 20; integr++) {
90+
abc = abc + name[integr];
91+
92+
}
93+
name = `${abc}...`;
94+
}
95+
}
96+
switch (set.style) {
97+
case "emoji":
98+
console.log(`⬇️ ${name}${about}`);
99+
break;
100+
case "emoji-hacker":
101+
var z = Math.floor(Math.random() * 2);
102+
switch (z) {
103+
case 1:
104+
console.log(`0️⃣ ${name}${about}`);
105+
break;
106+
default:
107+
console.log(`1️⃣${name}${about}`);
108+
break;
109+
}
110+
break;
111+
case "text":
112+
console.log(`| ${name}${about}`);
113+
break;
114+
case "text-2":
115+
console.log(`│ ${name}${about}`);
116+
break;
117+
case "keyboard":
118+
console.log(`l ${name}${about}`);
119+
break;
120+
case "text-hacker":
121+
var z = Math.floor(Math.random() * 2);
122+
switch (z) {
123+
case 1:
124+
console.log(`0️ ${name}${about}`);
125+
break;
126+
default:
127+
console.log(`1️ ${name}${about}`);
128+
break;
129+
}
130+
break;
131+
default:
132+
break;
133+
}
134+
}
135+
if (set.showItems === undefined) {
136+
for await (var e of folder) {
137+
name = e.name;
138+
__frame()
139+
}
140+
} else {
141+
var i = 0
142+
for await (var e of folder) {
143+
if (i < set.showItems) {
144+
__frame()
145+
}
146+
i = i + 1
147+
}
148+
}
149+
switch (set.style) {
150+
case "emoji":
151+
console.log(`⏹️➡️➡️${rest}`);
152+
break;
153+
case "emoji-hacker":
154+
console.log(`#️⃣1️⃣0️⃣${rest}`);
155+
break;
156+
case "text":
157+
console.log(`#--${rest}`);
158+
break;
159+
case "text-2":
160+
console.log(`└──${rest}`)
161+
break;
162+
case "keyboard":
163+
console.log(`OII${rest}`)
164+
break;
165+
case "text-hacker":
166+
console.log(`#10${rest}`)
167+
break;
168+
169+
//default:
170+
// break;
171+
}
172+
} catch (err) {
173+
__e(err);
174+
}
175+
}
176+
export default loadDir

package-lock.json

Lines changed: 3 additions & 98 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,10 @@
11
{
22
"type": "module",
33
"name": "code-gui",
4-
"version": "1.1.2",
4+
"version": "1.1.3",
55
"description": "Show contents in a Graphical way in the console.",
6-
"main": "index.cjs",
7-
"entry point": "index.cjs",
8-
"scripts": {
9-
"test": "node index.cjs",
10-
"start": "node index.cjs"
11-
},
6+
"main": "index.js",
7+
"entry point": "index.js",
128
"git repository": "https://github.com/WojtekCodesToday/code-gui",
139
"keywords": [
1410
"code",
@@ -24,7 +20,6 @@
2420
"author": "WojtekGame",
2521
"license": "ISC",
2622
"dependencies": {
27-
"colors": "^1.4.0",
28-
"loaddir": "^2.1.4"
23+
"colors": "^1.4.0"
2924
}
3025
}

0 commit comments

Comments
 (0)