From 121bfc7a4fe9c1dbfbbe0067d96c37ae5774d688 Mon Sep 17 00:00:00 2001 From: Cody Carrell Date: Thu, 7 Mar 2019 19:27:17 -0500 Subject: [PATCH] refactor: remove font-manager and platform-folders dependecies --- .vscode/settings.json | 1 + lib/actions/configure.js | 6 +-- lib/utils/app-data.js | 12 ++++++ lib/utils/config.js | 6 +-- lib/utils/font-helper.js | 7 +++- package-lock.json | 82 ++++++++------------------------------ package.json | 2 - src/components/TheHome.vue | 6 +-- 8 files changed, 42 insertions(+), 80 deletions(-) create mode 100644 lib/utils/app-data.js diff --git a/.vscode/settings.json b/.vscode/settings.json index d2a82d3..d71c6b9 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -17,4 +17,5 @@ "**/lib-es5": true }, "eslint.enable": true, + "git.enableCommitSigning": true } diff --git a/lib/actions/configure.js b/lib/actions/configure.js index 5a5cd07..b9d4d55 100644 --- a/lib/actions/configure.js +++ b/lib/actions/configure.js @@ -3,7 +3,7 @@ import path from 'path' import fs from 'fs-extra' import inquirer from 'inquirer' import chalk from 'chalk' -import { getConfigHome } from 'platform-folders' +import appData from '../utils/app-data' import emoji from '../utils/emoji' import installSkin from '../utils/install-skin' import repoHelper from '../utils/repo-helper' @@ -95,11 +95,11 @@ async function askForInstallPath (state) { if (defaultLocation === '') { if (os.type() === 'Darwin') { - defaultLocation = path.resolve(getConfigHome(), 'Steam', 'Steam.AppBundle', 'Steam', 'Contents', 'MacOS', 'skins') + defaultLocation = path.resolve(appData('Steam'), 'Steam.AppBundle', 'Steam', 'Contents', 'MacOS', 'skins') } else if (os.type() === 'Windows_NT') { defaultLocation = 'C:\\Program Files (x86)\\Steam\\skins' } else if (os.type() === 'Linux') { - defaultLocation = path.resolve(os.userInfo().homedir, '.steam/skins') + defaultLocation = path.resolve(appData('steam'), 'skins') } if (!fs.existsSync(defaultLocation)) { diff --git a/lib/utils/app-data.js b/lib/utils/app-data.js new file mode 100644 index 0000000..56512e0 --- /dev/null +++ b/lib/utils/app-data.js @@ -0,0 +1,12 @@ +import os from 'os' +import path from 'path' + +export default (...app) => { + if (os.type() === 'Darwin') { + return path.join(process.env.HOME, 'Library', 'Application Support', ...app) + } else if (os.type() === 'Windows_NT') { + return path.join(process.env.APPDATA, ...app) + } else { + return path.join(process.env.HOME, '.config', ...app) + } +} diff --git a/lib/utils/config.js b/lib/utils/config.js index d20edd2..99bd28f 100644 --- a/lib/utils/config.js +++ b/lib/utils/config.js @@ -2,7 +2,7 @@ import path from 'path' import fs from 'fs-extra' import chalk from 'chalk' import extend from 'xtend' -import { getConfigHome } from 'platform-folders' +import appData from './app-data' function init (state) { if (JSON.stringify(read(state)) === '{}' || JSON.stringify(read(state)) === '') { @@ -18,9 +18,7 @@ function init (state) { } function determineLocation (state) { - // https://github.com/kingjan1999/platform-folders#readme - const rootConfigDir = getConfigHome() - const configDir = path.resolve(rootConfigDir, 'airforsteam-cli') + const configDir = appData('airforsteam-cli') if (state.get('configDir') !== '') { return } diff --git a/lib/utils/font-helper.js b/lib/utils/font-helper.js index 8950fd2..db19b06 100644 --- a/lib/utils/font-helper.js +++ b/lib/utils/font-helper.js @@ -1,7 +1,8 @@ +/* eslint-disable no-unreachable */ import os from 'os' import path from 'path' import fs from 'fs-extra' -import fontManager from 'font-manager' +// import fontManager from 'font-manager' import chalk from 'chalk' import execa from 'execa' import inquirer from 'inquirer' @@ -52,6 +53,8 @@ const skinFonts = { } async function init (state, force = false) { + // functionality temporarily disabled. + return true if (!state.get('firstRun') && !force) { return true } @@ -66,7 +69,7 @@ async function init (state, force = false) { let installedFonts = {} fontConfig.search.forEach((fontSearch) => { - fontManager.findFontsSync(fontSearch).forEach((font) => { installedFonts[font.postscriptName] = font }) + // fontManager.findFontsSync(fontSearch).forEach((font) => { installedFonts[font.postscriptName] = font }) }) installedFonts = Object.keys(installedFonts) diff --git a/package-lock.json b/package-lock.json index 33175e9..3db52db 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1981,7 +1981,6 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "dev": true, - "optional": true, "requires": { "co": "^4.6.0", "fast-deep-equal": "^1.0.0", @@ -2119,8 +2118,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", - "dev": true, - "optional": true + "dev": true }, "file-entry-cache": { "version": "2.0.0", @@ -2211,8 +2209,7 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true, - "optional": true + "dev": true }, "ms": { "version": "2.1.1", @@ -2256,7 +2253,6 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, - "optional": true, "requires": { "ansi-regex": "^3.0.0" } @@ -3688,14 +3684,6 @@ "integrity": "sha512-EgmjVLMn22z7eGGv3kcnHwSnJXmFHjISTY9E/S5lIcTD3Oxw05QTcBLNkJFzcb3cNueUdF/IN4U+d78V0zO8Hw==", "dev": true }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "requires": { - "file-uri-to-path": "1.0.0" - } - }, "bl": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz", @@ -8253,11 +8241,6 @@ } } }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" - }, "filename-regex": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", @@ -8451,14 +8434,6 @@ } } }, - "font-manager": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/font-manager/-/font-manager-0.3.0.tgz", - "integrity": "sha512-6N3pzO+9kxE3yD9c4VN7reg5fqgFvjcUdxZmwauRzsExaeKRu0APfEi3DOISFakokybgKlZcLFQHawwc2TMpQQ==", - "requires": { - "nan": ">=2.10.0" - } - }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -8668,8 +8643,7 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "aproba": { "version": "1.2.0", @@ -8690,14 +8664,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -8712,20 +8684,17 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -8842,8 +8811,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -8855,7 +8823,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -8870,7 +8837,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -8878,14 +8844,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -8904,7 +8868,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -8985,8 +8948,7 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "object-assign": { "version": "4.1.1", @@ -8998,7 +8960,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -9084,8 +9045,7 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "safer-buffer": { "version": "2.1.2", @@ -9121,7 +9081,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -9141,7 +9100,6 @@ "version": "3.0.1", "bundled": true, "dev": true, - "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -9185,14 +9143,12 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true } } }, @@ -12273,7 +12229,9 @@ "nan": { "version": "2.12.1", "resolved": "https://registry.npmjs.org/nan/-/nan-2.12.1.tgz", - "integrity": "sha512-JY7V6lRkStKcKTvHO5NVSQRv+RV+FIL5pvDoLiAtSL9pKlC5x9PKQcZDsq7m4FO4d57mkhC6Z+QhAh3Jdk5JFw==" + "integrity": "sha512-JY7V6lRkStKcKTvHO5NVSQRv+RV+FIL5pvDoLiAtSL9pKlC5x9PKQcZDsq7m4FO4d57mkhC6Z+QhAh3Jdk5JFw==", + "dev": true, + "optional": true }, "nanomatch": { "version": "1.2.13", @@ -13586,14 +13544,6 @@ "find-up": "^1.0.0" } }, - "platform-folders": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/platform-folders/-/platform-folders-0.4.0.tgz", - "integrity": "sha512-j9YtT40aH2Wvdor/FB6wpVBRsCg1uvrC9eM61AMCr0PjiqP4UBU/LmIM1M+FolyyGtkJLzp20GcRd+2NWKXTlA==", - "requires": { - "bindings": "^1.4.0" - } - }, "please-upgrade-node": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.1.1.tgz", diff --git a/package.json b/package.json index 5989db4..836196c 100644 --- a/package.json +++ b/package.json @@ -58,13 +58,11 @@ "chalk": "^2.4.2", "etl": "^0.5.19", "execa": "^1.0.0", - "font-manager": "^0.3.0", "fs-extra": "^7.0.1", "inquirer": "^6.2.2", "meow": "^5.0.0", "node-emoji": "^1.10.0", "ora": "^3.2.0", - "platform-folders": "^0.4.0", "register-service-worker": "^1.5.2", "unzipper": "^0.9.11", "update-notifier": "^2.5.0", diff --git a/src/components/TheHome.vue b/src/components/TheHome.vue index 512c190..33ac619 100644 --- a/src/components/TheHome.vue +++ b/src/components/TheHome.vue @@ -69,7 +69,7 @@ import { remote } from 'electron' import os from 'os' import path from 'path' import fs from 'fs' -import { getConfigHome } from 'platform-folders' +import appData from '../../lib/utils/app-data' export default { data: () => ({ @@ -142,11 +142,11 @@ export default { let defaultPath = JSON.parse(JSON.stringify(this.steamSkinFolder)) if (defaultPath === '') { if (os.type() === 'Darwin') { - defaultPath = path.resolve(getConfigHome(), 'Steam', 'Steam.AppBundle', 'Steam', 'Contents', 'MacOS', 'skins') + defaultPath = path.resolve(appData('Steam'), 'Steam.AppBundle', 'Steam', 'Contents', 'MacOS', 'skins') } else if (os.type() === 'Windows_NT') { defaultPath = 'C:\\Program Files (x86)\\Steam\\skins' } else if (os.type() === 'Linux') { - defaultPath = path.resolve(os.userInfo().homedir, '.steam/skins') + defaultPath = path.resolve(appData('steam'), 'skins') } if (!fs.existsSync(defaultPath)) {