From 74455bbe39797cab0f225d56d34c40f2216bfe88 Mon Sep 17 00:00:00 2001 From: Aryan Malik <88618913+Aryan9592@users.noreply.github.com> Date: Tue, 17 Oct 2023 22:11:47 +0530 Subject: [PATCH 1/2] Create shelljs.js --- npm_Modules/ShellJs/shelljs.js | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 npm_Modules/ShellJs/shelljs.js diff --git a/npm_Modules/ShellJs/shelljs.js b/npm_Modules/ShellJs/shelljs.js new file mode 100644 index 0000000..28a54bb --- /dev/null +++ b/npm_Modules/ShellJs/shelljs.js @@ -0,0 +1,25 @@ +var shell = require('shelljs'); + +if (!shell.which('git')) { + shell.echo('Sorry, this script requires git'); + shell.exit(1); +} + +// Copy files to release dir +shell.rm('-rf', 'out/Release'); +shell.cp('-R', 'stuff/', 'out/Release'); + +// Replace macros in each .js file +shell.cd('lib'); +shell.ls('*.js').forEach(function (file) { + shell.sed('-i', 'BUILD_VERSION', 'v0.1.2', file); + shell.sed('-i', /^.*REMOVE_THIS_LINE.*$/, '', file); + shell.sed('-i', /.*REPLACE_LINE_WITH_MACRO.*\n/, shell.cat('macro.js'), file); +}); +shell.cd('..'); + +// Run external tool synchronously +if (shell.exec('git commit -am "Auto-commit"').code !== 0) { + shell.echo('Error: Git commit failed'); + shell.exit(1); +} From c602c1397113bafde904e1e7175da28e6980dd33 Mon Sep 17 00:00:00 2001 From: Aryan Malik <88618913+Aryan9592@users.noreply.github.com> Date: Tue, 17 Oct 2023 22:17:53 +0530 Subject: [PATCH 2/2] Create README.md --- npm_Modules/ShellJs/README.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 npm_Modules/ShellJs/README.md diff --git a/npm_Modules/ShellJs/README.md b/npm_Modules/ShellJs/README.md new file mode 100644 index 0000000..9768006 --- /dev/null +++ b/npm_Modules/ShellJs/README.md @@ -0,0 +1,20 @@ +## ShellJs Module + +`ShellJS` is an npm module that provides portable Unix shell commands for `Node.js`. It allows you to execute shell commands within your Node.js applications, +making it easier to interact with the file system, run scripts, and perform other command-line operations. + +# Installation + + Here '-g' is used for a global installation + ``` + $ npm install [-g] shelljs + ``` + +# Features: + +- ShellJS is a portable implementation of Unix shell commands that can be used on Windows, Linux, and macOS. +- It is built on top of the Node.js API, providing a convenient way to execute shell commands using JavaScript +- With ShellJS, you can perform common shell operations such as copying files, moving files, deleting files, creating directories, and running shell scripts. +- It provides a simple and intuitive API that mimics the behavior of popular Unix shell commands, making it easy to write cross-platform scripts. +- ShellJS is widely used in Node.js projects for automating tasks, building scripts, and managing file operations. +- It offers a range of features, including globbing patterns for file matching, piping commands, and handling command output.