stuff
This commit is contained in:
69
buildfiles/node_modules/env-paths/index.d.ts
generated
vendored
Normal file
69
buildfiles/node_modules/env-paths/index.d.ts
generated
vendored
Normal file
@ -0,0 +1,69 @@
|
||||
declare namespace envPaths {
|
||||
export interface Options {
|
||||
/**
|
||||
__Don't use this option unless you really have to!__
|
||||
|
||||
Suffix appended to the project name to avoid name conflicts with native apps. Pass an empty string to disable it.
|
||||
|
||||
@default 'nodejs'
|
||||
*/
|
||||
readonly suffix?: string;
|
||||
}
|
||||
|
||||
export interface Paths {
|
||||
/**
|
||||
Directory for data files.
|
||||
*/
|
||||
readonly data: string;
|
||||
|
||||
/**
|
||||
Directory for data files.
|
||||
*/
|
||||
readonly config: string;
|
||||
|
||||
/**
|
||||
Directory for non-essential data files.
|
||||
*/
|
||||
readonly cache: string;
|
||||
|
||||
/**
|
||||
Directory for log files.
|
||||
*/
|
||||
readonly log: string;
|
||||
|
||||
/**
|
||||
Directory for temporary files.
|
||||
*/
|
||||
readonly temp: string;
|
||||
}
|
||||
}
|
||||
|
||||
declare const envPaths: {
|
||||
/**
|
||||
Get paths for storing things like data, config, cache, etc.
|
||||
|
||||
@param name - Name of your project. Used to generate the paths.
|
||||
@returns The paths to use for your project on current OS.
|
||||
|
||||
@example
|
||||
```
|
||||
import envPaths = require('env-paths');
|
||||
|
||||
const paths = envPaths('MyApp');
|
||||
|
||||
paths.data;
|
||||
//=> '/home/sindresorhus/.local/share/MyApp-nodejs'
|
||||
|
||||
paths.config
|
||||
//=> '/home/sindresorhus/.config/MyApp-nodejs'
|
||||
```
|
||||
*/
|
||||
(name: string, options?: envPaths.Options): envPaths.Paths;
|
||||
|
||||
// TODO: Remove this for the next major release, refactor the whole definition to:
|
||||
// declare function envPaths(name: string, options?: envPaths.Options): envPaths.Paths;
|
||||
// export = envPaths;
|
||||
default: typeof envPaths;
|
||||
};
|
||||
|
||||
export = envPaths;
|
74
buildfiles/node_modules/env-paths/index.js
generated
vendored
Normal file
74
buildfiles/node_modules/env-paths/index.js
generated
vendored
Normal file
@ -0,0 +1,74 @@
|
||||
'use strict';
|
||||
const path = require('path');
|
||||
const os = require('os');
|
||||
|
||||
const homedir = os.homedir();
|
||||
const tmpdir = os.tmpdir();
|
||||
const {env} = process;
|
||||
|
||||
const macos = name => {
|
||||
const library = path.join(homedir, 'Library');
|
||||
|
||||
return {
|
||||
data: path.join(library, 'Application Support', name),
|
||||
config: path.join(library, 'Preferences', name),
|
||||
cache: path.join(library, 'Caches', name),
|
||||
log: path.join(library, 'Logs', name),
|
||||
temp: path.join(tmpdir, name)
|
||||
};
|
||||
};
|
||||
|
||||
const windows = name => {
|
||||
const appData = env.APPDATA || path.join(homedir, 'AppData', 'Roaming');
|
||||
const localAppData = env.LOCALAPPDATA || path.join(homedir, 'AppData', 'Local');
|
||||
|
||||
return {
|
||||
// Data/config/cache/log are invented by me as Windows isn't opinionated about this
|
||||
data: path.join(localAppData, name, 'Data'),
|
||||
config: path.join(appData, name, 'Config'),
|
||||
cache: path.join(localAppData, name, 'Cache'),
|
||||
log: path.join(localAppData, name, 'Log'),
|
||||
temp: path.join(tmpdir, name)
|
||||
};
|
||||
};
|
||||
|
||||
// https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html
|
||||
const linux = name => {
|
||||
const username = path.basename(homedir);
|
||||
|
||||
return {
|
||||
data: path.join(env.XDG_DATA_HOME || path.join(homedir, '.local', 'share'), name),
|
||||
config: path.join(env.XDG_CONFIG_HOME || path.join(homedir, '.config'), name),
|
||||
cache: path.join(env.XDG_CACHE_HOME || path.join(homedir, '.cache'), name),
|
||||
// https://wiki.debian.org/XDGBaseDirectorySpecification#state
|
||||
log: path.join(env.XDG_STATE_HOME || path.join(homedir, '.local', 'state'), name),
|
||||
temp: path.join(tmpdir, username, name)
|
||||
};
|
||||
};
|
||||
|
||||
const envPaths = (name, options) => {
|
||||
if (typeof name !== 'string') {
|
||||
throw new TypeError(`Expected string, got ${typeof name}`);
|
||||
}
|
||||
|
||||
options = Object.assign({suffix: 'nodejs'}, options);
|
||||
|
||||
if (options.suffix) {
|
||||
// Add suffix to prevent possible conflict with native apps
|
||||
name += `-${options.suffix}`;
|
||||
}
|
||||
|
||||
if (process.platform === 'darwin') {
|
||||
return macos(name);
|
||||
}
|
||||
|
||||
if (process.platform === 'win32') {
|
||||
return windows(name);
|
||||
}
|
||||
|
||||
return linux(name);
|
||||
};
|
||||
|
||||
module.exports = envPaths;
|
||||
// TODO: Remove this for the next major release
|
||||
module.exports.default = envPaths;
|
9
buildfiles/node_modules/env-paths/license
generated
vendored
Normal file
9
buildfiles/node_modules/env-paths/license
generated
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
77
buildfiles/node_modules/env-paths/package.json
generated
vendored
Normal file
77
buildfiles/node_modules/env-paths/package.json
generated
vendored
Normal file
@ -0,0 +1,77 @@
|
||||
{
|
||||
"_from": "env-paths@^2.2.0",
|
||||
"_id": "env-paths@2.2.0",
|
||||
"_inBundle": false,
|
||||
"_integrity": "sha512-6u0VYSCo/OW6IoD5WCLLy9JUGARbamfSavcNXry/eu8aHVFei6CD3Sw+VGX5alea1i9pgPHW0mbu6Xj0uBh7gA==",
|
||||
"_location": "/env-paths",
|
||||
"_phantomChildren": {},
|
||||
"_requested": {
|
||||
"type": "range",
|
||||
"registry": true,
|
||||
"raw": "env-paths@^2.2.0",
|
||||
"name": "env-paths",
|
||||
"escapedName": "env-paths",
|
||||
"rawSpec": "^2.2.0",
|
||||
"saveSpec": null,
|
||||
"fetchSpec": "^2.2.0"
|
||||
},
|
||||
"_requiredBy": [
|
||||
"/@electron/get"
|
||||
],
|
||||
"_resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.0.tgz",
|
||||
"_shasum": "cdca557dc009152917d6166e2febe1f039685e43",
|
||||
"_spec": "env-paths@^2.2.0",
|
||||
"_where": "/home/shihaam/www/freezer.shihaam.me/node_modules/@electron/get",
|
||||
"author": {
|
||||
"name": "Sindre Sorhus",
|
||||
"email": "sindresorhus@gmail.com",
|
||||
"url": "sindresorhus.com"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/sindresorhus/env-paths/issues"
|
||||
},
|
||||
"bundleDependencies": false,
|
||||
"deprecated": false,
|
||||
"description": "Get paths for storing things like data, config, cache, etc",
|
||||
"devDependencies": {
|
||||
"ava": "^1.4.1",
|
||||
"tsd": "^0.7.1",
|
||||
"xo": "^0.24.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
},
|
||||
"files": [
|
||||
"index.js",
|
||||
"index.d.ts"
|
||||
],
|
||||
"homepage": "https://github.com/sindresorhus/env-paths#readme",
|
||||
"keywords": [
|
||||
"common",
|
||||
"user",
|
||||
"paths",
|
||||
"env",
|
||||
"environment",
|
||||
"directory",
|
||||
"dir",
|
||||
"appdir",
|
||||
"path",
|
||||
"data",
|
||||
"config",
|
||||
"cache",
|
||||
"logs",
|
||||
"temp",
|
||||
"linux",
|
||||
"unix"
|
||||
],
|
||||
"license": "MIT",
|
||||
"name": "env-paths",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "git+https://github.com/sindresorhus/env-paths.git"
|
||||
},
|
||||
"scripts": {
|
||||
"test": "xo && ava && tsd"
|
||||
},
|
||||
"version": "2.2.0"
|
||||
}
|
76
buildfiles/node_modules/env-paths/readme.md
generated
vendored
Normal file
76
buildfiles/node_modules/env-paths/readme.md
generated
vendored
Normal file
@ -0,0 +1,76 @@
|
||||
# env-paths [](https://travis-ci.org/sindresorhus/env-paths)
|
||||
|
||||
> Get paths for storing things like data, config, cache, etc
|
||||
|
||||
Uses the correct OS-specific paths. Most developers get this wrong.
|
||||
|
||||
|
||||
## Install
|
||||
|
||||
```
|
||||
$ npm install env-paths
|
||||
```
|
||||
|
||||
|
||||
## Usage
|
||||
|
||||
```js
|
||||
const envPaths = require('env-paths');
|
||||
|
||||
const paths = envPaths('MyApp');
|
||||
|
||||
paths.data;
|
||||
//=> '/home/sindresorhus/.local/share/MyApp-nodejs'
|
||||
|
||||
paths.config
|
||||
//=> '/home/sindresorhus/.config/MyApp-nodejs'
|
||||
```
|
||||
|
||||
|
||||
## API
|
||||
|
||||
### paths = envPaths(name, [options])
|
||||
|
||||
#### name
|
||||
|
||||
Type: `string`
|
||||
|
||||
Name of your project. Used to generate the paths.
|
||||
|
||||
#### options
|
||||
|
||||
Type: `Object`
|
||||
|
||||
##### suffix
|
||||
|
||||
Type: `string`<br>
|
||||
Default: `'nodejs'`
|
||||
|
||||
**Don't use this option unless you really have to!**<br>
|
||||
Suffix appended to the project name to avoid name conflicts with native
|
||||
apps. Pass an empty string to disable it.
|
||||
|
||||
### paths.data
|
||||
|
||||
Directory for data files.
|
||||
|
||||
### paths.config
|
||||
|
||||
Directory for config files.
|
||||
|
||||
### paths.cache
|
||||
|
||||
Directory for non-essential data files.
|
||||
|
||||
### paths.log
|
||||
|
||||
Directory for log files.
|
||||
|
||||
### paths.temp
|
||||
|
||||
Directory for temporary files.
|
||||
|
||||
|
||||
## License
|
||||
|
||||
MIT © [Sindre Sorhus](https://sindresorhus.com)
|
Reference in New Issue
Block a user