mirror of
https://github.com/OutlineFoundation/outline-server.git
synced 2026-08-04 14:37:34 +00:00
Mostly convert server/
This commit is contained in:
parent
7b21d25601
commit
f288f80d1e
12 changed files with 620 additions and 19 deletions
|
|
@ -10,6 +10,8 @@
|
|||
"@types/jasmine": "^2.5.53",
|
||||
"@types/mkdirp": "^0.5.2",
|
||||
"@types/node": "^12.6.9",
|
||||
"@types/randomstring": "^1.1.6",
|
||||
"@types/restify": "2",
|
||||
"clang-format": "^1.2.2",
|
||||
"husky": "^1.3.1",
|
||||
"jasmine": "^2.6.0",
|
||||
|
|
@ -33,6 +35,10 @@
|
|||
"dependencies": {
|
||||
"js-yaml": "^3.13.1",
|
||||
"mkdirp": "^0.5.1",
|
||||
"request-lite": "^2.40.1"
|
||||
"ShadowsocksConfig": "Jigsaw-Code/outline-shadowsocksconfig#^v0.0.9",
|
||||
"randomstring": "^1.1.5",
|
||||
"request-lite": "^2.40.1",
|
||||
"restify": "4",
|
||||
"uuid": "^3.3.2"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -52,6 +52,7 @@ ts_library(
|
|||
"@npm//@types/jasmine",
|
||||
"@npm//@types/node",
|
||||
],
|
||||
testonly = True,
|
||||
)
|
||||
|
||||
jasmine_node_test(
|
||||
|
|
@ -107,6 +108,7 @@ ts_library(
|
|||
":rollout",
|
||||
"@npm//@types/jasmine",
|
||||
],
|
||||
testonly = True,
|
||||
)
|
||||
|
||||
jasmine_node_test(
|
||||
|
|
|
|||
7
src/shadowbox/model/BUILD
Normal file
7
src/shadowbox/model/BUILD
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
package(default_visibility=["//visibility:public"])
|
||||
load("@npm_bazel_typescript//:index.bzl", "ts_library")
|
||||
|
||||
ts_library(
|
||||
name = "model",
|
||||
srcs = glob(["*.ts"]),
|
||||
)
|
||||
159
src/shadowbox/server/BUILD
Normal file
159
src/shadowbox/server/BUILD
Normal file
|
|
@ -0,0 +1,159 @@
|
|||
package(default_visibility=["//visibility:public"])
|
||||
load("@npm_bazel_typescript//:index.bzl", "ts_library")
|
||||
load("@npm_bazel_jasmine//:index.bzl", "jasmine_node_test")
|
||||
|
||||
# TODO: main
|
||||
|
||||
ts_library(
|
||||
name = "manager_metrics",
|
||||
srcs = ["manager_metrics.ts"],
|
||||
deps = [
|
||||
"//src/shadowbox/infrastructure:prometheus_scraper",
|
||||
"//src/shadowbox/model",
|
||||
"@npm//uuid",
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "manager_metrics_test_lib",
|
||||
srcs = ["manager_metrics.spec.ts"],
|
||||
deps = [
|
||||
":manager_metrics",
|
||||
"//src/shadowbox/server/mocks",
|
||||
"//src/shadowbox/model",
|
||||
],
|
||||
testonly = True,
|
||||
)
|
||||
|
||||
jasmine_node_test(
|
||||
name = "manager_metrics_test",
|
||||
deps = [":manager_metrics_test_lib"],
|
||||
size = "small",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "manager_service",
|
||||
srcs = ["manager_service.ts"],
|
||||
deps = [
|
||||
":manager_metrics",
|
||||
":server_config",
|
||||
":shared_metrics",
|
||||
"//src/shadowbox/infrastructure:json_config",
|
||||
"//src/shadowbox/infrastructure:logging",
|
||||
"//src/shadowbox/model",
|
||||
"@npm//ShadowsocksConfig",
|
||||
"@npm//restify",
|
||||
"@npm//@types/restify",
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "manager_service_test_lib",
|
||||
srcs = ["manager_service.spec.ts"],
|
||||
deps = [
|
||||
":manager_service",
|
||||
"//src/shadowbox/infrastructure:get_port",
|
||||
"//src/shadowbox/infrastructure:json_config",
|
||||
"//src/shadowbox/model",
|
||||
"@npm//@types/jasmine",
|
||||
],
|
||||
testonly = True,
|
||||
)
|
||||
|
||||
jasmine_node_test(
|
||||
name = "manager_service_test",
|
||||
deps = [":manager_service_test_lib"],
|
||||
size = "small",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "outline_shadowsocks_server",
|
||||
srcs = ["outline_shadowsocks_server.ts"],
|
||||
deps = [
|
||||
"//src/shadowbox/infrastructure:logging",
|
||||
"//src/shadowbox/model",
|
||||
"@npm//js-yaml",
|
||||
"@npm//mkdirp",
|
||||
"@npm//@types/node",
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "server_access_key",
|
||||
srcs = ["server_access_key.ts"],
|
||||
deps = [
|
||||
"//src/shadowbox/infrastructure:clock",
|
||||
"//src/shadowbox/infrastructure:get_port",
|
||||
"//src/shadowbox/infrastructure:json_config",
|
||||
"//src/shadowbox/infrastructure:logging",
|
||||
"//src/shadowbox/infrastructure:prometheus_scraper",
|
||||
"//src/shadowbox/model",
|
||||
"@npm//randomstring",
|
||||
"@npm//uuid",
|
||||
"@npm//@types/randomstring",
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "server_access_key_test_lib",
|
||||
srcs = ["server_access_key.spec.ts"],
|
||||
deps = [
|
||||
":server_access_key",
|
||||
"//src/shadowbox/infrastructure:clock",
|
||||
"//src/shadowbox/infrastructure:get_port",
|
||||
"//src/shadowbox/infrastructure:json_config",
|
||||
"//src/shadowbox/model",
|
||||
"//src/shadowbox/server/mocks",
|
||||
"@npm//@types/jasmine",
|
||||
],
|
||||
testonly = True,
|
||||
)
|
||||
|
||||
jasmine_node_test(
|
||||
name = "server_access_key_test",
|
||||
deps = [":server_access_key_test_lib"],
|
||||
size = "small",
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "server_config",
|
||||
srcs = ["server_config.ts"],
|
||||
deps = [
|
||||
"//src/shadowbox/infrastructure:json_config",
|
||||
"@npm//uuid",
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "shared_metrics",
|
||||
srcs = ["shared_metrics.ts"],
|
||||
deps = [
|
||||
":server_config",
|
||||
"//src/shadowbox/infrastructure:clock",
|
||||
"//src/shadowbox/infrastructure:follow_redirects",
|
||||
"//src/shadowbox/infrastructure:json_config",
|
||||
"//src/shadowbox/infrastructure:logging",
|
||||
"//src/shadowbox/infrastructure:prometheus_scraper",
|
||||
"//src/shadowbox/model",
|
||||
],
|
||||
)
|
||||
|
||||
ts_library(
|
||||
name = "shared_metrics_test_lib",
|
||||
srcs = ["shared_metrics.spec.ts"],
|
||||
deps = [
|
||||
":server_config",
|
||||
":shared_metrics",
|
||||
"//src/shadowbox/infrastructure:clock",
|
||||
"//src/shadowbox/infrastructure:json_config",
|
||||
"//src/shadowbox/model",
|
||||
"@npm//@types/jasmine",
|
||||
],
|
||||
testonly = True,
|
||||
)
|
||||
|
||||
jasmine_node_test(
|
||||
name = "shared_metrics_test",
|
||||
deps = [":shared_metrics_test_lib"],
|
||||
size = "small",
|
||||
)
|
||||
|
|
@ -12,8 +12,6 @@
|
|||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
import {PrometheusClient, QueryResultData} from '../infrastructure/prometheus_scraper';
|
||||
import {DataUsageByUser} from '../model/metrics';
|
||||
import {PrometheusManagerMetrics} from './manager_metrics';
|
||||
import {FakePrometheusClient} from './mocks/mocks';
|
||||
|
||||
|
|
|
|||
|
|
@ -12,12 +12,10 @@
|
|||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
import {ManualClock} from '../infrastructure/clock';
|
||||
import {PortProvider} from '../infrastructure/get_port';
|
||||
import {InMemoryConfig} from '../infrastructure/json_config';
|
||||
import {AccessKey, AccessKeyQuota, AccessKeyRepository} from '../model/access_key';
|
||||
|
||||
import {ManagerMetrics} from './manager_metrics';
|
||||
import {ShadowsocksManagerService} from './manager_service';
|
||||
import {FakePrometheusClient, FakeShadowsocksServer} from './mocks/mocks';
|
||||
import {AccessKeyConfigJson, ServerAccessKeyRepository} from './server_access_key';
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
// limitations under the License.
|
||||
|
||||
import * as restify from 'restify';
|
||||
import {makeConfig, SIP002_URI} from 'ShadowsocksConfig/shadowsocks_config';
|
||||
import {makeConfig, SIP002_URI} from 'ShadowsocksConfig';
|
||||
|
||||
import {JsonConfig} from '../infrastructure/json_config';
|
||||
import * as logging from '../infrastructure/logging';
|
||||
|
|
|
|||
14
src/shadowbox/server/mocks/BUILD
Normal file
14
src/shadowbox/server/mocks/BUILD
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
package(default_visibility=["//visibility:public"])
|
||||
load("@npm_bazel_typescript//:index.bzl", "ts_library")
|
||||
|
||||
ts_library(
|
||||
name = "mocks",
|
||||
srcs = ["mocks.ts"],
|
||||
deps = [
|
||||
"//src/shadowbox/infrastructure:prometheus_scraper",
|
||||
"//src/shadowbox/infrastructure:text_file",
|
||||
"//src/shadowbox/model",
|
||||
"@npm//@types/jasmine",
|
||||
],
|
||||
testonly = True,
|
||||
)
|
||||
|
|
@ -19,7 +19,6 @@ import {AccessKeyQuota, AccessKeyRepository} from '../model/access_key';
|
|||
|
||||
import {FakePrometheusClient, FakeShadowsocksServer} from './mocks/mocks';
|
||||
import {AccessKeyConfigJson, ServerAccessKeyRepository} from './server_access_key';
|
||||
import {ServerConfigJson} from './server_config';
|
||||
|
||||
describe('ServerAccessKeyRepository', () => {
|
||||
it('Repos with non-existent files are created with no access keys', (done) => {
|
||||
|
|
@ -165,10 +164,10 @@ describe('ServerAccessKeyRepository', () => {
|
|||
it('can remove access key quotas', async (done) => {
|
||||
const repo = createRepo();
|
||||
const accessKey = await repo.createNewAccessKey();
|
||||
await expect(repo.setAccessKeyQuota(accessKey.id, {data: {bytes: 100}, window: {hours: 24}}))
|
||||
expect(await repo.setAccessKeyQuota(accessKey.id, {data: {bytes: 100}, window: {hours: 24}}))
|
||||
.toBeTruthy();
|
||||
expect(repo.listAccessKeys()[0].quotaUsage).toBeDefined();
|
||||
expect(repo.removeAccessKeyQuota(accessKey.id)).toBeTruthy();
|
||||
expect(await repo.removeAccessKeyQuota(accessKey.id)).toBeTruthy();
|
||||
expect(repo.listAccessKeys()[0].quotaUsage).toBeUndefined();
|
||||
done();
|
||||
});
|
||||
|
|
@ -193,7 +192,7 @@ describe('ServerAccessKeyRepository', () => {
|
|||
expect(server.getAccessKeys().length).toEqual(1);
|
||||
|
||||
// Remove the quota; expect the key to be under quota and enabled.
|
||||
expect(repo.removeAccessKeyQuota(accessKey.id)).toBeTruthy();
|
||||
expect(await repo.removeAccessKeyQuota(accessKey.id)).toBeTruthy();
|
||||
expect(server.getAccessKeys().length).toEqual(2);
|
||||
const accessKeys = await repo.listAccessKeys();
|
||||
expect(accessKeys[0].isOverQuota()).toBeFalsy();
|
||||
|
|
|
|||
|
|
@ -21,10 +21,7 @@ import {JsonConfig} from '../infrastructure/json_config';
|
|||
import * as logging from '../infrastructure/logging';
|
||||
import {PrometheusClient} from '../infrastructure/prometheus_scraper';
|
||||
import {AccessKey, AccessKeyId, AccessKeyMetricsId, AccessKeyQuota, AccessKeyQuotaUsage, AccessKeyRepository, ProxyParams} from '../model/access_key';
|
||||
import {ShadowsocksAccessKey, ShadowsocksServer} from '../model/shadowsocks_server';
|
||||
|
||||
import {ManagerMetrics} from './manager_metrics';
|
||||
import {ServerConfigJson} from './server_config';
|
||||
import {ShadowsocksServer} from '../model/shadowsocks_server';
|
||||
|
||||
// The format as json of access keys in the config file.
|
||||
interface AccessKeyJson {
|
||||
|
|
@ -233,7 +230,7 @@ export class ServerAccessKeyRepository implements AccessKeyRepository {
|
|||
quotaStatusChanged = quotaStatusChanged || await this.updateAccessKeyQuotaStatus(accessKey);
|
||||
}
|
||||
if (quotaStatusChanged) {
|
||||
this.updateServer();
|
||||
await this.updateServer();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -142,7 +142,7 @@ export class OutlineSharedMetricsPublisher implements SharedMetricsPublisher {
|
|||
if (!this.isSharingEnabled()) {
|
||||
return;
|
||||
}
|
||||
this.reportMetrics(await usageMetrics.getUsage());
|
||||
const ignoredPromise = this.reportMetrics(await usageMetrics.getUsage());
|
||||
usageMetrics.reset();
|
||||
}, MS_PER_HOUR);
|
||||
// TODO(fortuna): also trigger report on shutdown, so data loss is minimized.
|
||||
|
|
|
|||
427
yarn.lock
427
yarn.lock
|
|
@ -134,6 +134,13 @@
|
|||
resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
|
||||
integrity sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=
|
||||
|
||||
"@types/bunyan@*":
|
||||
version "1.8.6"
|
||||
resolved "https://registry.yarnpkg.com/@types/bunyan/-/bunyan-1.8.6.tgz#6527641cca30bedec5feb9ab527b7803b8000582"
|
||||
integrity sha512-YiozPOOsS6bIuz31ilYqR5SlLif4TBWsousN2aCWLi5233nZSX19tFbcQUPdR7xJ8ypPyxkCGNxg0CIV5n9qxQ==
|
||||
dependencies:
|
||||
"@types/node" "*"
|
||||
|
||||
"@types/jasmine@^2.5.53":
|
||||
version "2.5.53"
|
||||
resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-2.5.53.tgz#4e0cefad09df5ec48c8dd40433512f84b1568d61"
|
||||
|
|
@ -160,6 +167,26 @@
|
|||
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.14.14.tgz#a47955df2acf76ba7f0ac3b205d325da193dc9ad"
|
||||
integrity sha512-xXD08vZsvpv4xptQXj1+ky22f7ZoKu5ZNI/4l+/BXG3X+XaeZsmaFbbTKuhSE3NjjvRuZFxFf9sQBMXIcZNFMQ==
|
||||
|
||||
"@types/randomstring@^1.1.6":
|
||||
version "1.1.6"
|
||||
resolved "https://registry.yarnpkg.com/@types/randomstring/-/randomstring-1.1.6.tgz#45cdc060a6f043d610bcd46503a6887db2a209c3"
|
||||
integrity sha512-XRIZIMTxjcUukqQcYBdpFWGbcRDyNBXrvTEtTYgFMIbBNUVt+9mCKsU+jUUDLeFO/RXopUgR5OLiBqbY18vSHQ==
|
||||
|
||||
"@types/restify@2":
|
||||
version "2.0.42"
|
||||
resolved "https://registry.yarnpkg.com/@types/restify/-/restify-2.0.42.tgz#6592376dc230c45afcffd4f9ee7bccd2776b1e1a"
|
||||
integrity sha1-ZZI3bcIwxFr8/9T57nvM0ndrHho=
|
||||
dependencies:
|
||||
"@types/bunyan" "*"
|
||||
"@types/node" "*"
|
||||
|
||||
ShadowsocksConfig@Jigsaw-Code/outline-shadowsocksconfig#^v0.0.9:
|
||||
version "0.0.8"
|
||||
resolved "https://codeload.github.com/Jigsaw-Code/outline-shadowsocksconfig/tar.gz/e9e18dcdcc0fe76724dd5f0550e6e216b5b5114a"
|
||||
dependencies:
|
||||
base-64 "^0.1.0"
|
||||
punycode "^1.4.1"
|
||||
|
||||
ansi-regex@^2.0.0:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
|
||||
|
|
@ -184,6 +211,26 @@ argparse@^1.0.7:
|
|||
dependencies:
|
||||
sprintf-js "~1.0.2"
|
||||
|
||||
array-uniq@1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.2.tgz#5fcc373920775723cfd64d65c64bef53bf9eba6d"
|
||||
integrity sha1-X8w3OSB3VyPP1k1lxkvvU7+eum0=
|
||||
|
||||
asn1@0.1.11:
|
||||
version "0.1.11"
|
||||
resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.1.11.tgz#559be18376d08a4ec4dbe80877d27818639b2df7"
|
||||
integrity sha1-VZvhg3bQik7E2+gId9J4GGObLfc=
|
||||
|
||||
assert-plus@^0.1.5:
|
||||
version "0.1.5"
|
||||
resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.1.5.tgz#ee74009413002d84cec7219c6ac811812e723160"
|
||||
integrity sha1-7nQAlBMALYTOxyGcasgRgS5yMWA=
|
||||
|
||||
assert-plus@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
|
||||
integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=
|
||||
|
||||
async@^1.5.2:
|
||||
version "1.5.2"
|
||||
resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a"
|
||||
|
|
@ -196,10 +243,22 @@ babel-code-frame@^6.22.0:
|
|||
esutils "^2.0.2"
|
||||
js-tokens "^3.0.0"
|
||||
|
||||
backoff@^2.4.0:
|
||||
version "2.5.0"
|
||||
resolved "https://registry.yarnpkg.com/backoff/-/backoff-2.5.0.tgz#f616eda9d3e4b66b8ca7fca79f695722c5f8e26f"
|
||||
integrity sha1-9hbtqdPktmuMp/ynn2lXIsX44m8=
|
||||
dependencies:
|
||||
precond "0.2"
|
||||
|
||||
balanced-match@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
|
||||
|
||||
base-64@^0.1.0:
|
||||
version "0.1.0"
|
||||
resolved "https://registry.yarnpkg.com/base-64/-/base-64-0.1.0.tgz#780a99c84e7d600260361511c4877613bf24f6bb"
|
||||
integrity sha1-eAqZyE59YAJgNhURxId2E78k9rs=
|
||||
|
||||
brace-expansion@^1.1.7:
|
||||
version "1.1.8"
|
||||
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.8.tgz#c07b211c7c952ec1f8efd51a77ef0d1d3990a292"
|
||||
|
|
@ -215,6 +274,16 @@ builtin-modules@^1.0.0, builtin-modules@^1.1.1:
|
|||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
|
||||
|
||||
bunyan@^1.4.0:
|
||||
version "1.8.12"
|
||||
resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.12.tgz#f150f0f6748abdd72aeae84f04403be2ef113797"
|
||||
integrity sha1-8VDw9nSKvdcq6uhPBEA74u8RN5c=
|
||||
optionalDependencies:
|
||||
dtrace-provider "~0.8"
|
||||
moment "^2.10.6"
|
||||
mv "~2"
|
||||
safe-json-stringify "~1"
|
||||
|
||||
caller-callsite@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134"
|
||||
|
|
@ -309,6 +378,11 @@ concat-map@0.0.1:
|
|||
version "0.0.1"
|
||||
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
||||
|
||||
core-util-is@1.0.2, core-util-is@~1.0.0:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
|
||||
integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
|
||||
|
||||
cosmiconfig@^5.0.7:
|
||||
version "5.0.7"
|
||||
resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.0.7.tgz#39826b292ee0d78eda137dfa3173bd1c21a43b04"
|
||||
|
|
@ -346,6 +420,43 @@ cross-spawn@^6.0.0:
|
|||
shebang-command "^1.2.0"
|
||||
which "^1.2.9"
|
||||
|
||||
csv-generate@^0.0.6:
|
||||
version "0.0.6"
|
||||
resolved "https://registry.yarnpkg.com/csv-generate/-/csv-generate-0.0.6.tgz#97e4e63ae46b21912cd9475bc31469d26f5ade66"
|
||||
integrity sha1-l+TmOuRrIZEs2UdbwxRp0m9a3mY=
|
||||
|
||||
csv-parse@^1.0.0:
|
||||
version "1.3.3"
|
||||
resolved "https://registry.yarnpkg.com/csv-parse/-/csv-parse-1.3.3.tgz#d1cfd8743c2f849a0abb2fd544db56695d19a490"
|
||||
integrity sha1-0c/YdDwvhJoKuy/VRNtWaV0ZpJA=
|
||||
|
||||
csv-stringify@^0.0.8:
|
||||
version "0.0.8"
|
||||
resolved "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-0.0.8.tgz#52cc3b3dfc197758c55ad325a95be85071f9e51b"
|
||||
integrity sha1-Usw7PfwZd1jFWtMlqVvoUHH55Rs=
|
||||
|
||||
csv@^0.4.0:
|
||||
version "0.4.6"
|
||||
resolved "https://registry.yarnpkg.com/csv/-/csv-0.4.6.tgz#8dbae7ddfdbaae62c1ea987c3e0f8a9ac737b73d"
|
||||
integrity sha1-jbrn3f26rmLB6ph8Pg+Kmsc3tz0=
|
||||
dependencies:
|
||||
csv-generate "^0.0.6"
|
||||
csv-parse "^1.0.0"
|
||||
csv-stringify "^0.0.8"
|
||||
stream-transform "^0.1.0"
|
||||
|
||||
ctype@0.5.3:
|
||||
version "0.5.3"
|
||||
resolved "https://registry.yarnpkg.com/ctype/-/ctype-0.5.3.tgz#82c18c2461f74114ef16c135224ad0b9144ca12f"
|
||||
integrity sha1-gsGMJGH3QRTvFsE1IkrQuRRMoS8=
|
||||
|
||||
debug@^2.6.8:
|
||||
version "2.6.9"
|
||||
resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
|
||||
integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
|
||||
dependencies:
|
||||
ms "2.0.0"
|
||||
|
||||
debug@^3.1.0:
|
||||
version "3.1.0"
|
||||
resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
|
||||
|
|
@ -356,10 +467,22 @@ decamelize@^1.1.1:
|
|||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290"
|
||||
|
||||
detect-node@^2.0.3:
|
||||
version "2.0.4"
|
||||
resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.0.4.tgz#014ee8f8f669c5c58023da64b8179c083a28c46c"
|
||||
integrity sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==
|
||||
|
||||
diff@^3.2.0:
|
||||
version "3.2.0"
|
||||
resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9"
|
||||
|
||||
dtrace-provider@^0.8.2, dtrace-provider@~0.8:
|
||||
version "0.8.7"
|
||||
resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.7.tgz#dc939b4d3e0620cfe0c1cd803d0d2d7ed04ffd04"
|
||||
integrity sha1-3JObTT4GIM/gwc2APQ0tftBP/QQ=
|
||||
dependencies:
|
||||
nan "^2.10.0"
|
||||
|
||||
end-of-stream@^1.1.0:
|
||||
version "1.4.1"
|
||||
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.1.tgz#ed29634d19baba463b6ce6b80a37213eab71ec43"
|
||||
|
|
@ -373,6 +496,11 @@ error-ex@^1.3.1:
|
|||
dependencies:
|
||||
is-arrayish "^0.2.1"
|
||||
|
||||
escape-regexp-component@^1.0.2:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/escape-regexp-component/-/escape-regexp-component-1.0.2.tgz#9c63b6d0b25ff2a88c3adbd18c5b61acc3b9faa2"
|
||||
integrity sha1-nGO20LJf8qiMOtvRjFthrMO5+qI=
|
||||
|
||||
escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5:
|
||||
version "1.0.5"
|
||||
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
|
||||
|
|
@ -414,6 +542,16 @@ exit@^0.1.2:
|
|||
version "0.1.2"
|
||||
resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
|
||||
|
||||
extsprintf@1.2.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.2.0.tgz#5ad946c22f5b32ba7f8cd7426711c6e8a3fc2529"
|
||||
integrity sha1-WtlGwi9bMrp/jNdCZxHG6KP8JSk=
|
||||
|
||||
extsprintf@^1.2.0:
|
||||
version "1.4.0"
|
||||
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
|
||||
integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
|
||||
|
||||
find-up@^2.1.0:
|
||||
version "2.1.0"
|
||||
resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7"
|
||||
|
|
@ -440,6 +578,11 @@ forever-agent@~0.5.0:
|
|||
resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.5.2.tgz#6d0e09c4921f94a27f63d3b49c5feff1ea4c5130"
|
||||
integrity sha1-bQ4JxJIflKJ/Y9O0nF/v8epMUTA=
|
||||
|
||||
formidable@^1.0.14:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.2.1.tgz#70fb7ca0290ee6ff961090415f4b3df3d2082659"
|
||||
integrity sha512-Fs9VRguL0gqGHkXS5GQiMCr1VhZBxz0JnJs4JmMp/2jL18Fmbzvv7vOFRU+U8TBkHEE/CX1qDXzJplVULgsLeg==
|
||||
|
||||
fs.realpath@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
|
||||
|
|
@ -464,6 +607,17 @@ get-stream@^4.0.0:
|
|||
dependencies:
|
||||
pump "^3.0.0"
|
||||
|
||||
glob@^6.0.1:
|
||||
version "6.0.4"
|
||||
resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22"
|
||||
integrity sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=
|
||||
dependencies:
|
||||
inflight "^1.0.4"
|
||||
inherits "2"
|
||||
minimatch "2 || 3"
|
||||
once "^1.3.0"
|
||||
path-is-absolute "^1.0.0"
|
||||
|
||||
glob@^7.0.0, glob@^7.0.6, glob@^7.1.1:
|
||||
version "7.1.2"
|
||||
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
|
||||
|
|
@ -491,6 +645,11 @@ graceful-fs@^4.1.2:
|
|||
version "4.1.11"
|
||||
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
|
||||
|
||||
handle-thing@^1.2.5:
|
||||
version "1.2.5"
|
||||
resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-1.2.5.tgz#fd7aad726bf1a5fd16dfc29b2f7a6601d27139c4"
|
||||
integrity sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=
|
||||
|
||||
handlebars@^4.0.3:
|
||||
version "4.1.2"
|
||||
resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.1.2.tgz#b6b37c1ced0306b221e094fc7aca3ec23b131b67"
|
||||
|
|
@ -521,6 +680,30 @@ hosted-git-info@^2.1.4:
|
|||
version "2.6.0"
|
||||
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.6.0.tgz#23235b29ab230c576aab0d4f13fc046b0b038222"
|
||||
|
||||
hpack.js@^2.1.6:
|
||||
version "2.1.6"
|
||||
resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2"
|
||||
integrity sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=
|
||||
dependencies:
|
||||
inherits "^2.0.1"
|
||||
obuf "^1.0.0"
|
||||
readable-stream "^2.0.1"
|
||||
wbuf "^1.1.0"
|
||||
|
||||
http-deceiver@^1.2.7:
|
||||
version "1.2.7"
|
||||
resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87"
|
||||
integrity sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=
|
||||
|
||||
http-signature@^0.11.0:
|
||||
version "0.11.0"
|
||||
resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-0.11.0.tgz#1796cf67a001ad5cd6849dca0991485f09089fe6"
|
||||
integrity sha1-F5bPZ6ABrVzWhJ3KCZFIXwkIn+Y=
|
||||
dependencies:
|
||||
asn1 "0.1.11"
|
||||
assert-plus "^0.1.5"
|
||||
ctype "0.5.3"
|
||||
|
||||
husky@^1.3.1:
|
||||
version "1.3.1"
|
||||
resolved "https://registry.yarnpkg.com/husky/-/husky-1.3.1.tgz#26823e399300388ca2afff11cfa8a86b0033fae0"
|
||||
|
|
@ -556,6 +739,11 @@ inherits@2:
|
|||
version "2.0.3"
|
||||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
|
||||
|
||||
inherits@^2.0.1, inherits@~2.0.3:
|
||||
version "2.0.4"
|
||||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
|
||||
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
|
||||
|
||||
invert-kv@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6"
|
||||
|
|
@ -596,6 +784,11 @@ is-stream@^1.1.0:
|
|||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
|
||||
|
||||
isarray@~1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
|
||||
integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=
|
||||
|
||||
isexe@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
|
||||
|
|
@ -684,6 +877,11 @@ json-stringify-safe@~5.0.0:
|
|||
resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
|
||||
integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
|
||||
|
||||
keep-alive-agent@^0.0.1:
|
||||
version "0.0.1"
|
||||
resolved "https://registry.yarnpkg.com/keep-alive-agent/-/keep-alive-agent-0.0.1.tgz#44847ca394ce8d6b521ae85816bd64509942b385"
|
||||
integrity sha1-RIR8o5TOjWtSGuhYFr1kUJlCs4U=
|
||||
|
||||
lcid@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
|
||||
|
|
@ -739,11 +937,21 @@ mime-types@~1.0.1:
|
|||
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-1.0.2.tgz#995ae1392ab8affcbfcb2641dd054e943c0d5dce"
|
||||
integrity sha1-mVrhOSq4r/y/yyZB3QVOlDwNXc4=
|
||||
|
||||
mime@^1.2.11:
|
||||
version "1.6.0"
|
||||
resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
|
||||
integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
|
||||
|
||||
mimic-fn@^1.0.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022"
|
||||
|
||||
minimatch@^3.0.4:
|
||||
minimalistic-assert@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
|
||||
integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==
|
||||
|
||||
"minimatch@2 || 3", minimatch@^3.0.4:
|
||||
version "3.0.4"
|
||||
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
|
||||
dependencies:
|
||||
|
|
@ -758,16 +966,45 @@ minimist@~0.0.1:
|
|||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
|
||||
integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=
|
||||
|
||||
mkdirp@^0.5.0, mkdirp@^0.5.1:
|
||||
mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1:
|
||||
version "0.5.1"
|
||||
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
|
||||
dependencies:
|
||||
minimist "0.0.8"
|
||||
|
||||
moment@^2.10.6:
|
||||
version "2.24.0"
|
||||
resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b"
|
||||
integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==
|
||||
|
||||
ms@2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
|
||||
|
||||
mv@~2:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2"
|
||||
integrity sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI=
|
||||
dependencies:
|
||||
mkdirp "~0.5.1"
|
||||
ncp "~2.0.0"
|
||||
rimraf "~2.4.0"
|
||||
|
||||
nan@^2.10.0:
|
||||
version "2.14.0"
|
||||
resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.0.tgz#7818f722027b2459a86f0295d434d1fc2336c52c"
|
||||
integrity sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==
|
||||
|
||||
ncp@~2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3"
|
||||
integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M=
|
||||
|
||||
negotiator@^0.6.1:
|
||||
version "0.6.2"
|
||||
resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb"
|
||||
integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==
|
||||
|
||||
neo-async@^2.6.0:
|
||||
version "2.6.1"
|
||||
resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.1.tgz#ac27ada66167fa8849a6addd837f6b189ad2081c"
|
||||
|
|
@ -802,6 +1039,11 @@ number-is-nan@^1.0.0:
|
|||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
|
||||
|
||||
obuf@^1.0.0, obuf@^1.1.1:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e"
|
||||
integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==
|
||||
|
||||
once@^1.3.0, once@^1.3.1, once@^1.4.0:
|
||||
version "1.4.0"
|
||||
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
|
||||
|
|
@ -918,6 +1160,16 @@ please-upgrade-node@^3.1.1:
|
|||
dependencies:
|
||||
semver-compare "^1.0.0"
|
||||
|
||||
precond@0.2:
|
||||
version "0.2.3"
|
||||
resolved "https://registry.yarnpkg.com/precond/-/precond-0.2.3.tgz#aa9591bcaa24923f1e0f4849d240f47efc1075ac"
|
||||
integrity sha1-qpWRvKokkj8eD0hJ0kD0fvwQdaw=
|
||||
|
||||
process-nextick-args@~2.0.0:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
|
||||
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
|
||||
|
||||
protobufjs@6.8.8:
|
||||
version "6.8.8"
|
||||
resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-6.8.8.tgz#c8b4f1282fd7a90e6f5b109ed11c84af82908e7c"
|
||||
|
|
@ -949,11 +1201,28 @@ pump@^3.0.0:
|
|||
end-of-stream "^1.1.0"
|
||||
once "^1.3.1"
|
||||
|
||||
punycode@^1.4.1:
|
||||
version "1.4.1"
|
||||
resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
|
||||
integrity sha1-wNWmOycYgArY4esPpSachN1BhF4=
|
||||
|
||||
qs@^6.2.1:
|
||||
version "6.7.0"
|
||||
resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc"
|
||||
integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==
|
||||
|
||||
qs@~1.2.0:
|
||||
version "1.2.2"
|
||||
resolved "https://registry.yarnpkg.com/qs/-/qs-1.2.2.tgz#19b57ff24dc2a99ce1f8bdf6afcda59f8ef61f88"
|
||||
integrity sha1-GbV/8k3CqZzh+L32r82ln472H4g=
|
||||
|
||||
randomstring@^1.1.5:
|
||||
version "1.1.5"
|
||||
resolved "https://registry.yarnpkg.com/randomstring/-/randomstring-1.1.5.tgz#6df0628f75cbd5932930d9fe3ab4e956a18518c3"
|
||||
integrity sha1-bfBij3XL1ZMpMNn+OrTpVqGFGMM=
|
||||
dependencies:
|
||||
array-uniq "1.0.2"
|
||||
|
||||
read-pkg-up@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-4.0.0.tgz#1b221c6088ba7799601c808f91161c66e58f8978"
|
||||
|
|
@ -980,6 +1249,19 @@ read-pkg@^4.0.1:
|
|||
parse-json "^4.0.0"
|
||||
pify "^3.0.0"
|
||||
|
||||
readable-stream@^2.0.1, readable-stream@^2.2.9:
|
||||
version "2.3.6"
|
||||
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.6.tgz#b11c27d88b8ff1fbe070643cf94b0c79ae1b0aaf"
|
||||
integrity sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==
|
||||
dependencies:
|
||||
core-util-is "~1.0.0"
|
||||
inherits "~2.0.3"
|
||||
isarray "~1.0.0"
|
||||
process-nextick-args "~2.0.0"
|
||||
safe-buffer "~5.1.1"
|
||||
string_decoder "~1.1.1"
|
||||
util-deprecate "~1.0.1"
|
||||
|
||||
request-lite@^2.40.1:
|
||||
version "2.40.1"
|
||||
resolved "https://registry.yarnpkg.com/request-lite/-/request-lite-2.40.1.tgz#08a8a151eaa84117e01d3e14fe765e8529b3f3df"
|
||||
|
|
@ -1022,6 +1304,33 @@ resolve@^1.3.2:
|
|||
dependencies:
|
||||
path-parse "^1.0.5"
|
||||
|
||||
restify@4:
|
||||
version "4.3.4"
|
||||
resolved "https://registry.yarnpkg.com/restify/-/restify-4.3.4.tgz#361db8cdc64e2b14a0b1f5996cf291310c7e0eb5"
|
||||
integrity sha512-VSBV8nyXSya/yT/BPjkjoa+SE51Uyc/7vXbycGTv6waPKpgofg0nJnC5AMlWgPUAnX/N318hHFVRENbk+HVKfA==
|
||||
dependencies:
|
||||
assert-plus "^0.1.5"
|
||||
backoff "^2.4.0"
|
||||
bunyan "^1.4.0"
|
||||
csv "^0.4.0"
|
||||
escape-regexp-component "^1.0.2"
|
||||
formidable "^1.0.14"
|
||||
http-signature "^0.11.0"
|
||||
keep-alive-agent "^0.0.1"
|
||||
lru-cache "^4.0.1"
|
||||
mime "^1.2.11"
|
||||
negotiator "^0.6.1"
|
||||
once "^1.3.0"
|
||||
qs "^6.2.1"
|
||||
semver "^4.3.3"
|
||||
spdy "^3.3.3"
|
||||
tunnel-agent "^0.6.0"
|
||||
uuid "^3.0.1"
|
||||
vasync "1.6.3"
|
||||
verror "^1.4.0"
|
||||
optionalDependencies:
|
||||
dtrace-provider "^0.8.2"
|
||||
|
||||
rimraf@^2.6.2:
|
||||
version "2.6.3"
|
||||
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.3.tgz#b2d104fe0d8fb27cf9e0a1cda8262dd3833c6cab"
|
||||
|
|
@ -1029,11 +1338,38 @@ rimraf@^2.6.2:
|
|||
dependencies:
|
||||
glob "^7.1.3"
|
||||
|
||||
rimraf@~2.4.0:
|
||||
version "2.4.5"
|
||||
resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da"
|
||||
integrity sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto=
|
||||
dependencies:
|
||||
glob "^6.0.1"
|
||||
|
||||
run-node@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/run-node/-/run-node-1.0.0.tgz#46b50b946a2aa2d4947ae1d886e9856fd9cabe5e"
|
||||
integrity sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A==
|
||||
|
||||
safe-buffer@^5.0.1:
|
||||
version "5.2.0"
|
||||
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519"
|
||||
integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==
|
||||
|
||||
safe-buffer@~5.1.0, safe-buffer@~5.1.1:
|
||||
version "5.1.2"
|
||||
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
|
||||
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
|
||||
|
||||
safe-json-stringify@~1:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz#356e44bc98f1f93ce45df14bcd7c01cda86e0afd"
|
||||
integrity sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==
|
||||
|
||||
select-hose@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca"
|
||||
integrity sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=
|
||||
|
||||
semver-compare@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc"
|
||||
|
|
@ -1048,6 +1384,11 @@ semver@5.6.0:
|
|||
resolved "https://registry.yarnpkg.com/semver/-/semver-5.6.0.tgz#7e74256fbaa49c75aa7c7a205cc22799cac80004"
|
||||
integrity sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==
|
||||
|
||||
semver@^4.3.3:
|
||||
version "4.3.6"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da"
|
||||
integrity sha1-MAvG4OhjdPe6YQaLWx7NV/xlMto=
|
||||
|
||||
semver@^5.3.0:
|
||||
version "5.4.1"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e"
|
||||
|
|
@ -1125,10 +1466,40 @@ spdx-license-ids@^3.0.0:
|
|||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz#7a7cd28470cc6d3a1cfe6d66886f6bc430d3ac87"
|
||||
|
||||
spdy-transport@^2.0.18:
|
||||
version "2.1.1"
|
||||
resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-2.1.1.tgz#c54815d73858aadd06ce63001e7d25fa6441623b"
|
||||
integrity sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q==
|
||||
dependencies:
|
||||
debug "^2.6.8"
|
||||
detect-node "^2.0.3"
|
||||
hpack.js "^2.1.6"
|
||||
obuf "^1.1.1"
|
||||
readable-stream "^2.2.9"
|
||||
safe-buffer "^5.0.1"
|
||||
wbuf "^1.7.2"
|
||||
|
||||
spdy@^3.3.3:
|
||||
version "3.4.7"
|
||||
resolved "https://registry.yarnpkg.com/spdy/-/spdy-3.4.7.tgz#42ff41ece5cc0f99a3a6c28aabb73f5c3b03acbc"
|
||||
integrity sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=
|
||||
dependencies:
|
||||
debug "^2.6.8"
|
||||
handle-thing "^1.2.5"
|
||||
http-deceiver "^1.2.7"
|
||||
safe-buffer "^5.0.1"
|
||||
select-hose "^2.0.0"
|
||||
spdy-transport "^2.0.18"
|
||||
|
||||
sprintf-js@~1.0.2:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
|
||||
|
||||
stream-transform@^0.1.0:
|
||||
version "0.1.2"
|
||||
resolved "https://registry.yarnpkg.com/stream-transform/-/stream-transform-0.1.2.tgz#7d8e6b4e03ac4781778f8c79517501bfb0762a9f"
|
||||
integrity sha1-fY5rTgOsR4F3j4x5UXUBv7B2Kp8=
|
||||
|
||||
string-width@^1.0.1:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3"
|
||||
|
|
@ -1144,6 +1515,13 @@ string-width@^2.0.0, string-width@^2.1.1:
|
|||
is-fullwidth-code-point "^2.0.0"
|
||||
strip-ansi "^4.0.0"
|
||||
|
||||
string_decoder@~1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
|
||||
integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
|
||||
dependencies:
|
||||
safe-buffer "~5.1.0"
|
||||
|
||||
strip-ansi@^3.0.0, strip-ansi@^3.0.1:
|
||||
version "3.0.1"
|
||||
resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
|
||||
|
|
@ -1226,6 +1604,13 @@ tsutils@^2.12.1:
|
|||
dependencies:
|
||||
tslib "^1.8.1"
|
||||
|
||||
tunnel-agent@^0.6.0:
|
||||
version "0.6.0"
|
||||
resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
|
||||
integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=
|
||||
dependencies:
|
||||
safe-buffer "^5.0.1"
|
||||
|
||||
typescript@~3.4.0:
|
||||
version "3.4.5"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.4.5.tgz#2d2618d10bb566572b8d7aad5180d84257d70a99"
|
||||
|
|
@ -1239,9 +1624,15 @@ uglify-js@^3.1.4:
|
|||
commander "~2.20.0"
|
||||
source-map "~0.6.1"
|
||||
|
||||
uuid@^3.3.2:
|
||||
util-deprecate@~1.0.1:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
||||
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
|
||||
|
||||
uuid@^3.0.1, uuid@^3.3.2:
|
||||
version "3.3.2"
|
||||
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
|
||||
integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==
|
||||
|
||||
v8-coverage@1.0.9:
|
||||
version "1.0.9"
|
||||
|
|
@ -1274,6 +1665,36 @@ validate-npm-package-license@^3.0.1:
|
|||
spdx-correct "^3.0.0"
|
||||
spdx-expression-parse "^3.0.0"
|
||||
|
||||
vasync@1.6.3:
|
||||
version "1.6.3"
|
||||
resolved "https://registry.yarnpkg.com/vasync/-/vasync-1.6.3.tgz#4a69d7052a47f4ce85503d7641df1cbf40432a94"
|
||||
integrity sha1-SmnXBSpH9M6FUD12Qd8cv0BDKpQ=
|
||||
dependencies:
|
||||
verror "1.6.0"
|
||||
|
||||
verror@1.6.0:
|
||||
version "1.6.0"
|
||||
resolved "https://registry.yarnpkg.com/verror/-/verror-1.6.0.tgz#7d13b27b1facc2e2da90405eb5ea6e5bdd252ea5"
|
||||
integrity sha1-fROyex+swuLakEBetepuW90lLqU=
|
||||
dependencies:
|
||||
extsprintf "1.2.0"
|
||||
|
||||
verror@^1.4.0:
|
||||
version "1.10.0"
|
||||
resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
|
||||
integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=
|
||||
dependencies:
|
||||
assert-plus "^1.0.0"
|
||||
core-util-is "1.0.2"
|
||||
extsprintf "^1.2.0"
|
||||
|
||||
wbuf@^1.1.0, wbuf@^1.7.2:
|
||||
version "1.7.3"
|
||||
resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df"
|
||||
integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==
|
||||
dependencies:
|
||||
minimalistic-assert "^1.0.0"
|
||||
|
||||
which-module@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue