diff --git a/docker-compose.yml b/docker-compose.yml index 45f66d0..a4771b7 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -9,6 +9,6 @@ services: volumes: - ./:/code ports: - - 8080:8080 + - 49153:8080 labels: - com.centurylinklabs.watchtower.enable=true diff --git a/index.html b/index.html index 8c6ed93..48a11f0 100644 --- a/index.html +++ b/index.html @@ -21,6 +21,8 @@ <script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> + + <!-- Sthope GSheet Head START--> </head> <body class="hold-transition skin-blue sidebar-mini" style="overflow-y:scroll"> <div id="root"></div> diff --git a/package-lock.json b/package-lock.json index 0e31bf2..21484a6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,6 +16,7 @@ "datatables.net-bs": "^1.10.19", "faker": "^3.1.0", "fs": "^0.0.1-security", + "google-spreadsheet": "^3.0.11", "googleapis": "^95.0.0", "hideseek": "^0.7.0", "http-server": "^0.9.0", @@ -25,6 +26,7 @@ "moment": "^2.12.0", "net": "^1.0.2", "readline": "^1.3.0", + "sheetsu-node": "0.0.7", "tls": "^0.0.1", "vue": "^2.2.2", "vue-date-picker": "^1.0.2", @@ -2515,6 +2517,17 @@ "browserslist": "cli.js" } }, + "node_modules/btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==", + "bin": { + "btoa": "bin/btoa.js" + }, + "engines": { + "node": ">= 0.4.0" + } + }, "node_modules/buffer": { "version": "4.9.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", @@ -6529,6 +6542,89 @@ "node": ">=10" } }, + "node_modules/google-spreadsheet": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/google-spreadsheet/-/google-spreadsheet-3.2.0.tgz", + "integrity": "sha512-z7XMaqb+26rdo8p51r5O03u8aPLAPzn5YhOXYJPcf2hdMVr0dUbIARgdkRdmGiBeoV/QoU/7VNhq1MMCLZv3kQ==", + "dependencies": { + "axios": "^0.21.4", + "google-auth-library": "^6.1.3", + "lodash": "^4.17.21" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/google-spreadsheet/node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "engines": { + "node": ">=8" + } + }, + "node_modules/google-spreadsheet/node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, + "node_modules/google-spreadsheet/node_modules/follow-redirects": { + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/google-spreadsheet/node_modules/google-auth-library": { + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-6.1.6.tgz", + "integrity": "sha512-Q+ZjUEvLQj/lrVHF/IQwRo6p3s8Nc44Zk/DALsN+ac3T4HY/g/3rrufkgtl+nZ1TW7DNAw5cTChdVp4apUXVgQ==", + "dependencies": { + "arrify": "^2.0.0", + "base64-js": "^1.3.0", + "ecdsa-sig-formatter": "^1.0.11", + "fast-text-encoding": "^1.0.0", + "gaxios": "^4.0.0", + "gcp-metadata": "^4.2.0", + "gtoken": "^5.0.4", + "jws": "^4.0.0", + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/google-spreadsheet/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/google-spreadsheet/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/googleapis": { "version": "95.0.0", "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-95.0.0.tgz", @@ -8217,10 +8313,9 @@ } }, "node_modules/lodash": { - "version": "4.17.4", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", - "dev": true + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "node_modules/lodash._arraycopy": { "version": "3.0.0", @@ -11700,6 +11795,19 @@ "node": ">=0.10.0" } }, + "node_modules/sheetsu-node": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/sheetsu-node/-/sheetsu-node-0.0.7.tgz", + "integrity": "sha1-yjKY1Nh6uaE62UVmzCm/+XSx74g=", + "dependencies": { + "btoa": "^1.1.2", + "xhr2": "^0.1.4", + "xmlhttprequest": "^1.8.0" + }, + "engines": { + "node": "*" + } + }, "node_modules/shelljs": { "version": "0.7.8", "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", @@ -13449,6 +13557,14 @@ "integrity": "sha1-OS2LotDxw00e4tYw8V0O+2jhBIo=", "dev": true }, + "node_modules/xhr2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/xhr2/-/xhr2-0.1.4.tgz", + "integrity": "sha1-f4dliEdxbbUCYyOBL4GMras4el8=", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/xml-char-classes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/xml-char-classes/-/xml-char-classes-1.0.0.tgz", @@ -13458,6 +13574,14 @@ "node": ">=0.10.0" } }, + "node_modules/xmlhttprequest": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", + "integrity": "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=", + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/xmlhttprequest-ssl": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.3.tgz", @@ -15854,6 +15978,11 @@ "electron-to-chromium": "^1.2.7" } }, + "btoa": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz", + "integrity": "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==" + }, "buffer": { "version": "4.9.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", @@ -19304,6 +19433,65 @@ "node-forge": "^1.0.0" } }, + "google-spreadsheet": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/google-spreadsheet/-/google-spreadsheet-3.2.0.tgz", + "integrity": "sha512-z7XMaqb+26rdo8p51r5O03u8aPLAPzn5YhOXYJPcf2hdMVr0dUbIARgdkRdmGiBeoV/QoU/7VNhq1MMCLZv3kQ==", + "requires": { + "axios": "^0.21.4", + "google-auth-library": "^6.1.3", + "lodash": "^4.17.21" + }, + "dependencies": { + "arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==" + }, + "axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "requires": { + "follow-redirects": "^1.14.0" + } + }, + "follow-redirects": { + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==" + }, + "google-auth-library": { + "version": "6.1.6", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-6.1.6.tgz", + "integrity": "sha512-Q+ZjUEvLQj/lrVHF/IQwRo6p3s8Nc44Zk/DALsN+ac3T4HY/g/3rrufkgtl+nZ1TW7DNAw5cTChdVp4apUXVgQ==", + "requires": { + "arrify": "^2.0.0", + "base64-js": "^1.3.0", + "ecdsa-sig-formatter": "^1.0.11", + "fast-text-encoding": "^1.0.0", + "gaxios": "^4.0.0", + "gcp-metadata": "^4.2.0", + "gtoken": "^5.0.4", + "jws": "^4.0.0", + "lru-cache": "^6.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, "googleapis": { "version": "95.0.0", "resolved": "https://registry.npmjs.org/googleapis/-/googleapis-95.0.0.tgz", @@ -20701,10 +20889,9 @@ } }, "lodash": { - "version": "4.17.4", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=", - "dev": true + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "lodash._arraycopy": { "version": "3.0.0", @@ -23715,6 +23902,16 @@ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true }, + "sheetsu-node": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/sheetsu-node/-/sheetsu-node-0.0.7.tgz", + "integrity": "sha1-yjKY1Nh6uaE62UVmzCm/+XSx74g=", + "requires": { + "btoa": "^1.1.2", + "xhr2": "^0.1.4", + "xmlhttprequest": "^1.8.0" + } + }, "shelljs": { "version": "0.7.8", "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz", @@ -25237,12 +25434,22 @@ "integrity": "sha1-OS2LotDxw00e4tYw8V0O+2jhBIo=", "dev": true }, + "xhr2": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/xhr2/-/xhr2-0.1.4.tgz", + "integrity": "sha1-f4dliEdxbbUCYyOBL4GMras4el8=" + }, "xml-char-classes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/xml-char-classes/-/xml-char-classes-1.0.0.tgz", "integrity": "sha1-ZGV4SKIP/F31g6Qq2KJ3tFErvE0=", "dev": true }, + "xmlhttprequest": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", + "integrity": "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=" + }, "xmlhttprequest-ssl": { "version": "1.5.3", "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.3.tgz", diff --git a/package.json b/package.json index 75955e9..0264478 100644 --- a/package.json +++ b/package.json @@ -37,6 +37,8 @@ "vue-resource": "^1.0.3", "vue-router": "^2.2.0", "vuex": "^2.0.0", + "sheetsu-node": "0.0.7", + "google-spreadsheet": "^3.0.11", "vuex-router-sync": "^4.1.2" }, "devDependencies": { diff --git a/src/components/layout/SidebarMenu.vue b/src/components/layout/SidebarMenu.vue index 681d4c5..607feff 100644 --- a/src/components/layout/SidebarMenu.vue +++ b/src/components/layout/SidebarMenu.vue @@ -1,27 +1,21 @@ <template> <ul class="sidebar-menu"> - <!-- <li class="header">TOOLS</li> - <router-link tag="li" class="pageLink" to="/"> + <li class="header">CPHA</li> + + <router-link tag="li" class="pageLink" to="/sthopetest"> <a> - <i class="fa fa-desktop"></i> - <span class="page">Dashboard</span> + <i class="fa fa-bug"></i> + <span class="page">Sthope</span> </a> </router-link> - <router-link tag="li" class="pageLink" to="/tables"> - <a> - <i class="fa fa-table"></i> - <span class="page">Tables</span> - </a> - </router-link> --> - - <li class="header">CPHA</li> <router-link tag="li" class="pageLink" to="/personalfinances"> <a> <i class="fa fa-money"></i> <span class="page">Personal Finances</span> </a> </router-link> + <router-link tag="li" class="pageLink" to="/cryptos"> <a> <i class="fa fa-btc"></i> diff --git a/src/components/views/PersonalFinances.vue b/src/components/views/PersonalFinances.vue index 5af2ce3..4b69a81 100644 --- a/src/components/views/PersonalFinances.vue +++ b/src/components/views/PersonalFinances.vue @@ -155,13 +155,14 @@ export default { fill: false, borderColor: '#284184', pointBackgroundColor: '#284184', - backgroundColor: 'rgba(0, 0, 0, 0)', + backgroundColor: '#284184', data: this.coPilotNumbers }, { label: 'Expenses', + fill: false, borderColor: '#4BC0C0', pointBackgroundColor: '#4BC0C0', - backgroundColor: 'rgba(0, 0, 0, 0)', + backgroundColor: '#4BC0C0', data: this.personalNumbers }] }, diff --git a/src/routes.js b/src/routes.js index 48eb05d..412b654 100644 --- a/src/routes.js +++ b/src/routes.js @@ -12,13 +12,11 @@ import SettingsConfigurationsView from './components/views/Settings_Configuratio import SettingsGoogleView from './components/views/Settings_Google.vue' import SettingsMQTTHAView from './components/views/Settings_MQTT_HA.vue' import SettingsUserView from './components/views/Settings_User.vue' +// Sthope Testing Tab +// import SthopeView from './components/views/Sthope.vue' // Routes const routes = [ - // { - // path: '/login', - // component: LoginView - // }, { path: '/', component: DashView, diff --git a/yarn.lock b/yarn.lock index d520a5b..10ed6b5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -344,6 +344,13 @@ dependencies: "follow-redirects" "1.0.0" +"axios@^0.21.4": + "integrity" "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==" + "resolved" "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz" + "version" "0.21.4" + dependencies: + "follow-redirects" "^1.14.0" + "babel-code-frame@^6.11.0", "babel-code-frame@^6.16.0", "babel-code-frame@^6.22.0", "babel-code-frame@^6.26.0": "integrity" "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=" "resolved" "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz" @@ -1240,6 +1247,11 @@ "caniuse-lite" "^1.0.30000792" "electron-to-chromium" "^1.3.30" +"btoa@^1.1.2": + "integrity" "sha512-SB4/MIGlsiVkMcHmT+pSmIPoNDoHg+7cMzmt3Uxt628MTz2487DKSqK/fuhFBrkuqrYv5UCEnACpF4dTFNKc/g==" + "resolved" "https://registry.npmjs.org/btoa/-/btoa-1.2.1.tgz" + "version" "1.2.1" + "buffer-equal-constant-time@1.0.1": "integrity" "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=" "resolved" "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz" @@ -3076,6 +3088,11 @@ "inherits" "^2.0.1" "readable-stream" "^2.0.4" +"follow-redirects@^1.14.0": + "integrity" "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==" + "resolved" "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz" + "version" "1.14.9" + "follow-redirects@1.0.0": "integrity" "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=" "resolved" "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz" @@ -3371,6 +3388,21 @@ "pify" "^3.0.0" "slash" "^1.0.0" +"google-auth-library@^6.1.3": + "integrity" "sha512-Q+ZjUEvLQj/lrVHF/IQwRo6p3s8Nc44Zk/DALsN+ac3T4HY/g/3rrufkgtl+nZ1TW7DNAw5cTChdVp4apUXVgQ==" + "resolved" "https://registry.npmjs.org/google-auth-library/-/google-auth-library-6.1.6.tgz" + "version" "6.1.6" + dependencies: + "arrify" "^2.0.0" + "base64-js" "^1.3.0" + "ecdsa-sig-formatter" "^1.0.11" + "fast-text-encoding" "^1.0.0" + "gaxios" "^4.0.0" + "gcp-metadata" "^4.2.0" + "gtoken" "^5.0.4" + "jws" "^4.0.0" + "lru-cache" "^6.0.0" + "google-auth-library@^7.0.2", "google-auth-library@^7.14.0": "integrity" "sha512-or8r7qUqGVI3W8lVSdPh0ZpeFyQHeE73g5c0p+bLNTTUFXJ+GSeDQmZRZ2p4H8cF/RJYa4PNvi/A1ar1uVNLFA==" "resolved" "https://registry.npmjs.org/google-auth-library/-/google-auth-library-7.14.0.tgz" @@ -3393,6 +3425,15 @@ dependencies: "node-forge" "^1.0.0" +"google-spreadsheet@^3.0.11": + "integrity" "sha512-z7XMaqb+26rdo8p51r5O03u8aPLAPzn5YhOXYJPcf2hdMVr0dUbIARgdkRdmGiBeoV/QoU/7VNhq1MMCLZv3kQ==" + "resolved" "https://registry.npmjs.org/google-spreadsheet/-/google-spreadsheet-3.2.0.tgz" + "version" "3.2.0" + dependencies: + "axios" "^0.21.4" + "google-auth-library" "^6.1.3" + "lodash" "^4.17.21" + "googleapis-common@^5.0.2": "integrity" "sha512-RXrif+Gzhq1QAzfjxulbGvAY3FPj8zq/CYcvgjzDbaBNCD6bUl+86I7mUs4DKWHGruuK26ijjR/eDpWIDgNROA==" "resolved" "https://registry.npmjs.org/googleapis-common/-/googleapis-common-5.1.0.tgz" @@ -4730,10 +4771,10 @@ "resolved" "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz" "version" "3.10.1" -"lodash@^4.0.0", "lodash@^4.0.1", "lodash@^4.14.0", "lodash@^4.17.2", "lodash@^4.17.3", "lodash@^4.17.4", "lodash@^4.3.0", "lodash@^4.5.0": - "integrity" "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" - "resolved" "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz" - "version" "4.17.4" +"lodash@^4.0.0", "lodash@^4.0.1", "lodash@^4.14.0", "lodash@^4.17.2", "lodash@^4.17.21", "lodash@^4.17.3", "lodash@^4.17.4", "lodash@^4.3.0", "lodash@^4.5.0": + "integrity" "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "resolved" "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" + "version" "4.17.21" "log-symbols@^1.0.2": "integrity" "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=" @@ -6710,6 +6751,15 @@ "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" "version" "1.0.0" +"sheetsu-node@0.0.7": + "integrity" "sha1-yjKY1Nh6uaE62UVmzCm/+XSx74g=" + "resolved" "https://registry.npmjs.org/sheetsu-node/-/sheetsu-node-0.0.7.tgz" + "version" "0.0.7" + dependencies: + "btoa" "^1.1.2" + "xhr2" "^0.1.4" + "xmlhttprequest" "^1.8.0" + "shelljs@^0.7.4", "shelljs@^0.7.5": "integrity" "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=" "resolved" "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz" @@ -7799,6 +7849,11 @@ "resolved" "https://registry.npmjs.org/wtf-8/-/wtf-8-1.0.0.tgz" "version" "1.0.0" +"xhr2@^0.1.4": + "integrity" "sha1-f4dliEdxbbUCYyOBL4GMras4el8=" + "resolved" "https://registry.npmjs.org/xhr2/-/xhr2-0.1.4.tgz" + "version" "0.1.4" + "xml-char-classes@^1.0.0": "integrity" "sha1-ZGV4SKIP/F31g6Qq2KJ3tFErvE0=" "resolved" "https://registry.npmjs.org/xml-char-classes/-/xml-char-classes-1.0.0.tgz" @@ -7809,6 +7864,11 @@ "resolved" "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.3.tgz" "version" "1.5.3" +"xmlhttprequest@^1.8.0": + "integrity" "sha1-Z/4HXFwk/vOfnWX197f+dRcZaPw=" + "resolved" "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz" + "version" "1.8.0" + "xregexp@2.0.0": "integrity" "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=" "resolved" "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz"