aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app.html6
-rw-r--r--package-lock.json39
-rw-r--r--package.json5
-rw-r--r--src/renderer.ts18
-rw-r--r--src/systemLevelInformation.ts33
5 files changed, 75 insertions, 26 deletions
diff --git a/app.html b/app.html
index 7f5b6a1..2bc9f11 100644
--- a/app.html
+++ b/app.html
@@ -14,13 +14,15 @@
<div class="two_pane">
<div class="sidebar">
<ul>
- <li class="selected"><i class="icofont-files-stack"></i>Everything</li>
+ <li class="selected"><i class="icofont-home"></i><span id="username"></span></li>
</ul>
</div>
<div class="content">
Hello Main Area
</div>
</div>
- <script src="./ts_compiled/renderer.js"></script>
+ <script>
+ require("./ts_compiled/renderer.js");
+ </script>
</body>
</html> \ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index f8be17b..8ab7e82 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -133,12 +133,28 @@
"defer-to-connect": "^1.0.1"
}
},
+ "@types/glob": {
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz",
+ "integrity": "sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==",
+ "dev": true,
+ "requires": {
+ "@types/minimatch": "*",
+ "@types/node": "*"
+ }
+ },
"@types/json-schema": {
"version": "7.0.6",
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz",
"integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==",
"dev": true
},
+ "@types/minimatch": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz",
+ "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==",
+ "dev": true
+ },
"@types/node": {
"version": "12.19.9",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.19.9.tgz",
@@ -305,8 +321,7 @@
"balanced-match": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
- "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
- "dev": true
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
},
"boolean": {
"version": "3.0.2",
@@ -319,7 +334,6 @@
"version": "1.1.11",
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
"integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -462,8 +476,7 @@
"concat-map": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
- "dev": true
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
},
"concat-stream": {
"version": "1.6.2",
@@ -929,8 +942,7 @@
"fs.realpath": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
- "dev": true
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
},
"functional-red-black-tree": {
"version": "1.0.1",
@@ -951,7 +963,6 @@
"version": "7.1.6",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
"integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
- "dev": true,
"requires": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
@@ -1103,7 +1114,6 @@
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
"integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "dev": true,
"requires": {
"once": "^1.3.0",
"wrappy": "1"
@@ -1112,8 +1122,7 @@
"inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
"ini": {
"version": "1.3.8",
@@ -1287,7 +1296,6 @@
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "dev": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -1347,7 +1355,6 @@
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "dev": true,
"requires": {
"wrappy": "1"
}
@@ -1384,8 +1391,7 @@
"path-is-absolute": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
- "dev": true
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18="
},
"path-key": {
"version": "3.1.1",
@@ -1848,8 +1854,7 @@
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
- "dev": true
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
},
"yallist": {
"version": "4.0.0",
diff --git a/package.json b/package.json
index 4d6a44b..bf47935 100644
--- a/package.json
+++ b/package.json
@@ -24,8 +24,11 @@
],
"author": "BackSlash Linux",
"license": "MIT",
- "dependencies": {},
+ "dependencies": {
+ "glob": "^7.1.6"
+ },
"devDependencies": {
+ "@types/glob": "^7.1.3",
"@typescript-eslint/eslint-plugin": "^4.11.0",
"@typescript-eslint/parser": "^4.11.0",
"electron": "^11.1.1",
diff --git a/src/renderer.ts b/src/renderer.ts
index 66042ac..d3a21bc 100644
--- a/src/renderer.ts
+++ b/src/renderer.ts
@@ -1,6 +1,12 @@
-// This file is required by the app.html file and will
-// be executed in the renderer process for that window.
-// No Node.js APIs are available in this process unless
-// nodeIntegration is set to true in webPreferences.
-// Use preload.js to selectively enable features
-// needed in the renderer process.
+import systemLevelInformation from './systemLevelInformation';
+
+// Listing Files in Home Directory
+
+const currentHomeDir: string = systemLevelInformation.getUserInfo().homedir;
+document.getElementById('username').innerHTML = systemLevelInformation.getUserInfo().username;
+
+// This variable will keep track of current path
+var currentDirectoryPath: string = currentHomeDir;
+
+const currentHomeFolders: any = systemLevelInformation.getAllFilesOfDirectory(currentHomeDir);
+
diff --git a/src/systemLevelInformation.ts b/src/systemLevelInformation.ts
new file mode 100644
index 0000000..e902d32
--- /dev/null
+++ b/src/systemLevelInformation.ts
@@ -0,0 +1,33 @@
+import * as os from 'os';
+import * as glob from 'glob';
+import { statSync, readdirSync } from 'fs';
+import { extname, basename } from 'path';
+
+class systemLevelInformation {
+
+ getUserInfo(): { username: string, homedir: string } {
+ return {
+ username: os.userInfo().username,
+ homedir: os.userInfo().homedir
+ };
+ }
+
+ getAllFilesOfDirectory(currentDirectory): { files: string[], directories: string[] } {
+ const currentFilteredItems: string[] = readdirSync(currentDirectory).filter((item: string) => item.indexOf(".") !== 0);
+ const files: string[] = [];
+ const directories: string[] = [];
+
+ currentFilteredItems.forEach((item: string) => {
+ if (statSync(`${currentDirectory}/${item}`).isDirectory()) {
+ directories.push(item);
+ } else {
+ files.push(item);
+ }
+ });
+
+ return { files, directories };
+ }
+
+}
+
+export default new systemLevelInformation;