diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..c999619 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,17 @@ +{"version": "0.2.0", +"configurations": [ + + { + "type": "node", + "request": "launch", + "name": "sssas", + // "program": "${workspaceFolder}/bin/test", + "program": "${workspaceFolder}/app.js", + "args": [ + "init", + "aasas", + ], + "console": "integratedTerminal" + }, +], +} \ No newline at end of file diff --git a/AdbWinApi.dll b/AdbWinApi.dll new file mode 100644 index 0000000..b5586eb Binary files /dev/null and b/AdbWinApi.dll differ diff --git a/AdbWinUsbApi.dll b/AdbWinUsbApi.dll new file mode 100644 index 0000000..0c9e00b Binary files /dev/null and b/AdbWinUsbApi.dll differ diff --git a/adb.exe b/adb.exe new file mode 100644 index 0000000..9678e99 Binary files /dev/null and b/adb.exe differ diff --git a/app.js b/app.js index 3225967..ecf4166 100644 --- a/app.js +++ b/app.js @@ -1,33 +1,30 @@ const chalk = require('chalk'); const clear = require('clear'); const figlet = require('figlet'); - -const files = require('./lib/files'); +const common = require('./lib/common'); const inquirer = require('./lib/inquirer'); +const connectWifi = require('./pages/pages') -clear(); -console.log( - chalk.red( - figlet.textSync('MiWatch Kleaner', { - horizontalLayout: 'full' - }) - ) -); -console.log(chalk.red('2.0.0')); - -console.log( - chalk.red( - '-------------------------------------------------------------------------------------------------------' - ) -) - -const run = async () => { +const mainMenu = async () => { + common.header() + console.log(chalk.blue('Main Menu')) + console.log(chalk.red('----------')) const mainMenuSelection = await inquirer.mainMenu(); console.log(mainMenuSelection); + switch(mainMenuSelection.mainMenu) { + case 'connect to miwatch via wifi': + connectWifi.connectWifi() + break; + case 'y': + // code block + break; + default: + // code block + } }; -run(); +mainMenu(); // if (files.directoryExists('.git')) { diff --git a/lib/common.js b/lib/common.js new file mode 100644 index 0000000..59423fa --- /dev/null +++ b/lib/common.js @@ -0,0 +1,24 @@ +const chalk = require('chalk'); +const clear = require('clear'); +const figlet = require('figlet'); + +module.exports = { + header: () => { + clear(); + console.log( + chalk.red( + figlet.textSync('MiWatch Kleaner', { + horizontalLayout: 'full' + }) + ) + ); + + console.log(chalk.red(' 2.0.0')); + + console.log( + chalk.red( + '-------------------------------------------------------------------------------------------------------' + ) + ) + } +} \ No newline at end of file diff --git a/lib/inquirer.js b/lib/inquirer.js index c684943..5415b32 100644 --- a/lib/inquirer.js +++ b/lib/inquirer.js @@ -13,4 +13,12 @@ module.exports = { }]; return inquirer.prompt(questions); }, + connectWifi: () => { + const questions = [ { + type: 'input', + name: 'connectWifi', + message: 'What is your MiWatch IpAdress?', + },]; + return inquirer.prompt(questions); + }, }; \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index c331b79..5ec6a6b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -45,6 +45,33 @@ "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" }, + "adbkit": { + "version": "2.11.1", + "resolved": "https://registry.npmjs.org/adbkit/-/adbkit-2.11.1.tgz", + "integrity": "sha512-hDTiRg9NX3HQt7WoDAPCplUpvzr4ZzQa2lq7BdTTJ/iOZ6O7YNAs6UYD8sFAiBEcYHDRIyq3cm9sZP6uZnhvXw==", + "requires": { + "adbkit-logcat": "^1.1.0", + "adbkit-monkey": "~1.0.1", + "bluebird": "~2.9.24", + "commander": "^2.3.0", + "debug": "~2.6.3", + "node-forge": "^0.7.1", + "split": "~0.3.3" + } + }, + "adbkit-logcat": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/adbkit-logcat/-/adbkit-logcat-1.1.0.tgz", + "integrity": "sha1-Adf5sM75CTowvLOwB+//MBUIli8=" + }, + "adbkit-monkey": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/adbkit-monkey/-/adbkit-monkey-1.0.1.tgz", + "integrity": "sha1-8pG+cBou/FZ6Y/x6pq/N7TFDC+E=", + "requires": { + "async": "~0.2.9" + } + }, "ajv": { "version": "6.12.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", @@ -96,6 +123,11 @@ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, + "async": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", + "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=" + }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -119,6 +151,11 @@ "tweetnacl": "^0.14.3" } }, + "bluebird": { + "version": "2.9.34", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-2.9.34.tgz", + "integrity": "sha1-L3tOyAIWMoqf3evfacjUlC/v99g=" + }, "braces": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", @@ -209,6 +246,11 @@ "delayed-stream": "~1.0.0" } }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", @@ -230,6 +272,14 @@ "assert-plus": "^1.0.0" } }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", @@ -828,6 +878,11 @@ "minimist": "^1.2.5" } }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, "multistream": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/multistream/-/multistream-2.1.1.tgz", @@ -852,6 +907,11 @@ "resolved": "https://registry.npmjs.org/node-adb/-/node-adb-0.1.6.tgz", "integrity": "sha512-wai4LqO1NQJVeGerMTSln/Sp0vwuPmod9G0aRJJmgo0tk5wBAmyqUQ74wgcZIn0Ja9BCkBOmyz0LEA6nE8dWIg==" }, + "node-forge": { + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.6.tgz", + "integrity": "sha512-sol30LUpz1jQFBjOKwbjxijiE3b6pjd74YwfD0fJOKPjF+fONKb2Yg8rYgS6+bK6VDl+/wfr4IYpC7jDzLUIfw==" + }, "oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", @@ -997,6 +1057,11 @@ "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" }, + "promise-android-tools": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/promise-android-tools/-/promise-android-tools-2.0.4.tgz", + "integrity": "sha512-1q3QA8TpDBNNEY3wXwJdjeb6cHYp+gse07cmYaxsjQQu8hGNv5gzbPq5beUwizXVkmSTf6jBxyezly2RhFP8WQ==" + }, "psl": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", @@ -1147,6 +1212,14 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "optional": true }, + "split": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", + "integrity": "sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=", + "requires": { + "through": "2" + } + }, "sshpk": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", diff --git a/package.json b/package.json index 404de7d..889b2ea 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "author": "Karl Hudgell", "license": "ISC", "dependencies": { + "adbkit": "^2.11.1", "chalk": "^4.0.0", "clear": "^0.1.0", "clui": "^0.3.6", @@ -22,6 +23,7 @@ "lodash": "^4.17.15", "minimist": "^1.2.5", "node-adb": "^0.1.6", - "pkg": "^4.4.7" + "pkg": "^4.4.7", + "promise-android-tools": "^2.0.4" } } diff --git a/pages/pages.js b/pages/pages.js new file mode 100644 index 0000000..5ebcc2e --- /dev/null +++ b/pages/pages.js @@ -0,0 +1,23 @@ +const chalk = require('chalk'); +const clear = require('clear'); +const figlet = require('figlet'); +const common = require('../lib/common'); +const inquirer = require('../lib/inquirer'); +const adb = require('node-adb'); + + +module.exports = { + connectWifi: async () => { + common.header() + console.log(chalk.blue('Connect Wifi')) + console.log(chalk.red('----------')) + + const miWatchIpaddress = await inquirer.connectWifi(); + console.log(miWatchIpaddress.connectWifi) + adb({ + cmd: ['devices'] + }, function (result) { + console.log(result) + }); + } +}; \ No newline at end of file