1
0
Fork 0

feat(remote): implement issue, label list methods for Gitlab

This commit is contained in:
ssube 2020-08-23 09:31:14 -05:00
parent 80caa7a579
commit 9f85e22196
Signed by: ssube
GPG Key ID: 3EED7B957D362AF1
11 changed files with 437 additions and 14 deletions

View File

@ -1,5 +1,6 @@
{
"names": [
"@gitbeaker/node",
"async_hooks",
"chai",
"dtrace-provider",

View File

@ -111,6 +111,7 @@ const bundle = {
alias({
resolve: ['.tsx', '.ts'],
entries: {
'@gitbeaker/node': require.resolve('@gitbeaker/node'),
'universal-user-agent': join('.', 'node_modules', 'universal-user-agent', 'dist-node', 'index.js'),
'universal-github-app-jwt': join('.', 'node_modules', 'universal-github-app-jwt', 'dist-node', 'index.js'),
},

View File

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index.md) &gt; [cautious-journey](./cautious-journey.md) &gt; [GitlabRemote](./cautious-journey.gitlabremote.md) &gt; [client](./cautious-journey.gitlabremote.client.md)
## GitlabRemote.client property
<b>Signature:</b>
```typescript
protected client?: RemoteBundle;
```

View File

@ -7,8 +7,15 @@
<b>Signature:</b>
```typescript
listIssues(): Promise<Array<IssueUpdate>>;
listIssues(options: IssueQuery): Promise<Array<IssueUpdate>>;
```
## Parameters
| Parameter | Type | Description |
| --- | --- | --- |
| options | IssueQuery | |
<b>Returns:</b>
Promise&lt;Array&lt;IssueUpdate&gt;&gt;

View File

@ -7,8 +7,15 @@
<b>Signature:</b>
```typescript
listLabels(): Promise<Array<LabelUpdate>>;
listLabels(options: ProjectQuery): Promise<Array<LabelUpdate>>;
```
## Parameters
| Parameter | Type | Description |
| --- | --- | --- |
| options | ProjectQuery | |
<b>Returns:</b>
Promise&lt;Array&lt;LabelUpdate&gt;&gt;

View File

@ -19,6 +19,13 @@ export declare class GitlabRemote implements Remote
| --- | --- | --- |
| [(constructor)(options)](./cautious-journey.gitlabremote._constructor_.md) | | Constructs a new instance of the <code>GitlabRemote</code> class |
## Properties
| Property | Modifiers | Type | Description |
| --- | --- | --- | --- |
| [client](./cautious-journey.gitlabremote.client.md) | | RemoteBundle | |
| [options](./cautious-journey.gitlabremote.options.md) | | [RemoteOptions](./cautious-journey.remoteoptions.md) | |
## Methods
| Method | Modifiers | Description |
@ -29,8 +36,9 @@ export declare class GitlabRemote implements Remote
| [deleteLabel()](./cautious-journey.gitlabremote.deletelabel.md) | | |
| [getIssue()](./cautious-journey.gitlabremote.getissue.md) | | |
| [getLabel()](./cautious-journey.gitlabremote.getlabel.md) | | |
| [listIssues()](./cautious-journey.gitlabremote.listissues.md) | | |
| [listLabels()](./cautious-journey.gitlabremote.listlabels.md) | | |
| [listIssues(options)](./cautious-journey.gitlabremote.listissues.md) | | |
| [listLabels(options)](./cautious-journey.gitlabremote.listlabels.md) | | |
| [resolvePath(path)](./cautious-journey.gitlabremote.resolvepath.md) | | |
| [updateIssue()](./cautious-journey.gitlabremote.updateissue.md) | | |
| [updateLabel()](./cautious-journey.gitlabremote.updatelabel.md) | | |

View File

@ -0,0 +1,11 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index.md) &gt; [cautious-journey](./cautious-journey.md) &gt; [GitlabRemote](./cautious-journey.gitlabremote.md) &gt; [options](./cautious-journey.gitlabremote.options.md)
## GitlabRemote.options property
<b>Signature:</b>
```typescript
protected options: RemoteOptions;
```

View File

@ -0,0 +1,25 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
[Home](./index.md) &gt; [cautious-journey](./cautious-journey.md) &gt; [GitlabRemote](./cautious-journey.gitlabremote.md) &gt; [resolvePath](./cautious-journey.gitlabremote.resolvepath.md)
## GitlabRemote.resolvePath() method
<b>Signature:</b>
```typescript
resolvePath(path: string): Promise<{
groupId: number;
projectId: number;
}>;
```
## Parameters
| Parameter | Type | Description |
| --- | --- | --- |
| path | string | |
<b>Returns:</b>
Promise&lt;{ groupId: number; projectId: number; }&gt;

View File

@ -14,6 +14,9 @@
"@apextoaster/js-config": "^0.1.2-7",
"@apextoaster/js-utils": "^0.2.1",
"@apextoaster/js-yaml-schema": "^0.4.0-3",
"@gitbeaker/browser": "^23.5.0",
"@gitbeaker/core": "^23.5.0",
"@gitbeaker/node": "^23.5.0",
"@istanbuljs/nyc-config-typescript": "1.0.1",
"@microsoft/api-documenter": "7.8.22",
"@microsoft/api-extractor": "7.9.3",

View File

@ -1,18 +1,41 @@
import { NotImplementedError } from '@apextoaster/js-utils';
import { mustExist, NotImplementedError } from '@apextoaster/js-utils';
import { GetResponse } from '@gitbeaker/core/dist/types/infrastructure/RequestHelper';
import { Bundle } from '@gitbeaker/core/dist/types/infrastructure/Utils';
import { Issues, Labels, Projects, ProjectsBundle } from '@gitbeaker/node';
import { IssueUpdate, LabelUpdate, Remote, RemoteOptions } from '.';
import { IssueQuery, IssueUpdate, LabelUpdate, ProjectQuery, Remote, RemoteOptions } from '.';
// gitbeaker exports the bundle types as const, breaking typeof
type RemoteBundle = InstanceType<Bundle<{
Issues: typeof Issues;
Labels: typeof Labels;
Projects: typeof Projects;
}, 'Issues' | 'Labels' | 'Projects'>>;
export function unwrapResponse<T>(resp: GetResponse): T {
return (resp as unknown) as T;
}
/**
* Gitlab API implementation of the `Remote` contract.
*/
export class GitlabRemote implements Remote {
protected client?: RemoteBundle;
protected options: RemoteOptions;
/* eslint-disable-next-line no-useless-constructor */
constructor(options: RemoteOptions) {
// TODO: set up gitlab API
this.options = options;
this.options.logger.debug(options, 'created gitlab remote');
}
public async connect(): Promise<boolean> {
throw new NotImplementedError();
this.client = new ProjectsBundle({
host: this.options.data.host,
token: mustExist(this.options.data.token),
});
return true;
}
public async createComment(): Promise<void> {
@ -35,12 +58,30 @@ export class GitlabRemote implements Remote {
throw new NotImplementedError();
}
public async listIssues(): Promise<Array<IssueUpdate>> {
throw new NotImplementedError();
public async listIssues(options: IssueQuery): Promise<Array<IssueUpdate>> {
const project = await this.resolvePath(options.project);
const data = unwrapResponse<Array<GitlabIssue>>(await mustExist(this.client).Issues.all({
...project,
}));
return data.map((issue) => ({
issue: issue.id.toString(),
labels: issue.labels,
name: issue.title,
project: options.project,
}));
}
public async listLabels(): Promise<Array<LabelUpdate>> {
throw new NotImplementedError();
public async listLabels(options: ProjectQuery): Promise<Array<LabelUpdate>> {
const project = await this.resolvePath(options.project);
const data = unwrapResponse<Array<GitlabLabel>>(await mustExist(this.client).Labels.all(project.projectId));
return data.map((label) => ({
color: label.color,
desc: label.description,
name: label.name,
project: options.project,
}));
}
public async updateIssue(): Promise<IssueUpdate> {
@ -50,5 +91,44 @@ export class GitlabRemote implements Remote {
public async updateLabel(): Promise<LabelUpdate> {
throw new NotImplementedError();
}
public async resolvePath(path: string): Promise<{
groupId: number;
projectId: number;
}> {
const project = unwrapResponse<GitlabProject>(await mustExist(this.client).Projects.show(path));
return {
groupId: project.namespace.id,
projectId: project.id,
};
}
}
interface GitlabProject {
id: number;
description: string;
name: string;
path: string;
namespace: {
id: number;
name: string;
path: string;
};
}
interface GitlabIssue {
id: number;
iid: number;
title: string;
description: string;
state: string;
labels: Array<string>;
}
interface GitlabLabel {
id: number;
name: string;
color: string;
description: string;
}

273
yarn.lock
View File

@ -210,6 +210,43 @@
reflect-metadata "^0.1.12"
tslib "^1.8.1"
"@gitbeaker/browser@^23.5.0":
version "23.5.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@gitbeaker/browser/-/browser-23.5.0.tgz#f97156955e0cc6d2a903f6deef694aaef1458c85"
integrity sha512-mqgYaLPTbkawKagAoUv2eVLT2+dEwhtaGko43UC6vWgBPKldDftQli9QsMaSjFO270PXA/l4ALZ0CTf/9GYXiA==
dependencies:
"@gitbeaker/core" "^23.5.0"
"@gitbeaker/requester-utils" "^23.5.0"
ky "^0.23.0"
"@gitbeaker/core@^23.5.0":
version "23.5.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@gitbeaker/core/-/core-23.5.0.tgz#e0be44eecd0d7bf5418c161997c36d45b0c1ba81"
integrity sha512-5geLk7SxAttABBJZxfuSp72lSYWRyRId583vGCpKB6ISkoDhP+vJxdE6ypmtOJPV4CaSRZhluAGAZd968pi9ng==
dependencies:
"@gitbeaker/requester-utils" "^23.5.0"
form-data "^3.0.0"
li "^1.3.0"
xcase "^2.0.1"
"@gitbeaker/node@^23.5.0":
version "23.5.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@gitbeaker/node/-/node-23.5.0.tgz#0243be78aad148e7d6b5d79b7acc340748b5fa94"
integrity sha512-GEyhcrF1Lm8YmsmwntfzuhXnq00TrG14wNZP2Hg+DGgexG25eBbbcyFXuFZlBFSaGMQlsc8aPeuEyfyGmgpwnw==
dependencies:
"@gitbeaker/core" "^23.5.0"
"@gitbeaker/requester-utils" "^23.5.0"
got "^11.1.4"
xcase "^2.0.1"
"@gitbeaker/requester-utils@^23.5.0":
version "23.5.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@gitbeaker/requester-utils/-/requester-utils-23.5.0.tgz#e6f5d0216cb978be95e6bf40adf606f23d426f14"
integrity sha512-MdmInOO4unkApvtbv6PnIpDYXosgZgClSOqbxF5S4aJRCZVTJ6oPjMoNP8luhyT9xQeknpKxn9Iv8psEh7IC1Q==
dependencies:
query-string "^6.12.1"
xcase "^2.0.1"
"@istanbuljs/load-nyc-config@^1.0.0":
version "1.1.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced"
@ -423,6 +460,11 @@
argparse "~1.0.9"
colors "~1.2.1"
"@sindresorhus/is@^3.0.0":
version "3.1.2"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@sindresorhus/is/-/is-3.1.2.tgz#548650de521b344e3781fbdb0ece4aa6f729afb8"
integrity sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ==
"@sinonjs/commons@^1", "@sinonjs/commons@^1.6.0", "@sinonjs/commons@^1.7.0", "@sinonjs/commons@^1.7.2":
version "1.8.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@sinonjs/commons/-/commons-1.8.1.tgz#e7df00f98a203324f6dc7cc606cad9d4a8ab2217"
@ -459,6 +501,13 @@
resolved "https://artifacts.apextoaster.com/repository/group-npm/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz#8da5c6530915653f3a1f38fd5f101d8c3f8079c5"
integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==
"@szmarczak/http-timer@^4.0.5":
version "4.0.5"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@szmarczak/http-timer/-/http-timer-4.0.5.tgz#bfbd50211e9dfa51ba07da58a14cdfd333205152"
integrity sha512-PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ==
dependencies:
defer-to-connect "^2.0.0"
"@types/argparse@1.0.38":
version "1.0.38"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/argparse/-/argparse-1.0.38.tgz#a81fd8606d481f873a3800c6ebae4f1d768a56a9"
@ -471,6 +520,16 @@
dependencies:
"@types/node" "*"
"@types/cacheable-request@^6.0.1":
version "6.0.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/cacheable-request/-/cacheable-request-6.0.1.tgz#5d22f3dded1fd3a84c0bbeb5039a7419c2c91976"
integrity sha512-ykFq2zmBGOCbpIXtoVbz4SKY5QriWPh3AjyU4G74RYbtt5yOc5OfaY75ftjg7mikMOla1CTGpX3lLbuJh8DTrQ==
dependencies:
"@types/http-cache-semantics" "*"
"@types/keyv" "*"
"@types/node" "*"
"@types/responselike" "*"
"@types/chai-as-promised@7.1.3":
version "7.1.3"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/chai-as-promised/-/chai-as-promised-7.1.3.tgz#779166b90fda611963a3adbfd00b339d03b747bd"
@ -503,6 +562,11 @@
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f"
integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==
"@types/http-cache-semantics@*":
version "4.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/http-cache-semantics/-/http-cache-semantics-4.0.0.tgz#9140779736aa2655635ee756e2467d787cfe8a2a"
integrity sha512-c3Xy026kOF7QOTn00hbIllV1dLR9hG9NkSrLQgCVs8NF6sBU+VGWjD3wLPhmh1TYAc7ugCFsvHYMN4VcBN1U1A==
"@types/js-yaml@^3.12.5":
version "3.12.5"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/js-yaml/-/js-yaml-3.12.5.tgz#136d5e6a57a931e1cce6f9d8126aa98a9c92a6bb"
@ -525,6 +589,13 @@
dependencies:
"@types/node" "*"
"@types/keyv@*":
version "3.1.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/keyv/-/keyv-3.1.1.tgz#e45a45324fca9dab716ab1230ee249c9fb52cfa7"
integrity sha512-MPtoySlAZQ37VoLaPcTHCu1RWJ4llDkULYZIzOYxlhxBqYPB0RsRlmMU0R6tahtFe27mIdkHV+551ZWV4PLmVw==
dependencies:
"@types/node" "*"
"@types/lodash@^4.14.159":
version "4.14.159"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/lodash/-/lodash-4.14.159.tgz#61089719dc6fdd9c5cb46efc827f2571d1517065"
@ -592,6 +663,13 @@
dependencies:
"@types/node" "*"
"@types/responselike@*", "@types/responselike@^1.0.0":
version "1.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29"
integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==
dependencies:
"@types/node" "*"
"@types/seedrandom@^2.4.28":
version "2.4.28"
resolved "https://artifacts.apextoaster.com/repository/group-npm/@types/seedrandom/-/seedrandom-2.4.28.tgz#9ce8fa048c1e8c85cb71d7fe4d704e000226036f"
@ -999,6 +1077,24 @@ bunyan@^1.8.14:
mv "~2"
safe-json-stringify "~1"
cacheable-lookup@^5.0.3:
version "5.0.3"
resolved "https://artifacts.apextoaster.com/repository/group-npm/cacheable-lookup/-/cacheable-lookup-5.0.3.tgz#049fdc59dffdd4fc285e8f4f82936591bd59fec3"
integrity sha512-W+JBqF9SWe18A72XFzN/V/CULFzPm7sBXzzR6ekkE+3tLG72wFZrBiBZhrZuDoYexop4PHJVdFAKb/Nj9+tm9w==
cacheable-request@^7.0.1:
version "7.0.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/cacheable-request/-/cacheable-request-7.0.1.tgz#062031c2856232782ed694a257fa35da93942a58"
integrity sha512-lt0mJ6YAnsrBErpTMWeu5kl/tg9xMAWjavYTN6VQXM1A/teBITuNcccXsCxF0tDQQJf9DfAaX5O4e0zp0KlfZw==
dependencies:
clone-response "^1.0.2"
get-stream "^5.1.0"
http-cache-semantics "^4.0.0"
keyv "^4.0.0"
lowercase-keys "^2.0.0"
normalize-url "^4.1.0"
responselike "^2.0.0"
caching-transform@^4.0.0:
version "4.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/caching-transform/-/caching-transform-4.0.0.tgz#00d297a4206d71e2163c39eaffa8157ac0651f0f"
@ -1161,6 +1257,13 @@ cliui@^6.0.0:
strip-ansi "^6.0.0"
wrap-ansi "^6.2.0"
clone-response@^1.0.2:
version "1.0.2"
resolved "https://artifacts.apextoaster.com/repository/group-npm/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b"
integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=
dependencies:
mimic-response "^1.0.0"
color-convert@^1.9.0:
version "1.9.3"
resolved "https://artifacts.apextoaster.com/repository/group-npm/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8"
@ -1190,7 +1293,7 @@ colors@~1.2.1:
resolved "https://artifacts.apextoaster.com/repository/group-npm/colors/-/colors-1.2.5.tgz#89c7ad9a374bc030df8013241f68136ed8835afc"
integrity sha512-erNRLao/Y3Fv54qUa0LBB+//Uf3YwMUmdJinN20yMXm9zdKKqH9wt7R9IIVZ+K7ShzfpLV/Zg8+VyrBJYB4lpg==
combined-stream@^1.0.6, combined-stream@~1.0.6:
combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6:
version "1.0.8"
resolved "https://artifacts.apextoaster.com/repository/group-npm/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
@ -1562,6 +1665,18 @@ decimal.js@^10.2.0:
resolved "https://artifacts.apextoaster.com/repository/group-npm/decimal.js/-/decimal.js-10.2.0.tgz#39466113a9e036111d02f82489b5fd6b0b5ed231"
integrity sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw==
decode-uri-component@^0.2.0:
version "0.2.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545"
integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=
decompress-response@^6.0.0:
version "6.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==
dependencies:
mimic-response "^3.1.0"
deep-eql@^3.0.1:
version "3.0.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/deep-eql/-/deep-eql-3.0.1.tgz#dfc9404400ad1c8fe023e7da1df1c147c4b444df"
@ -1581,6 +1696,11 @@ default-require-extensions@^3.0.0:
dependencies:
strip-bom "^4.0.0"
defer-to-connect@^2.0.0:
version "2.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/defer-to-connect/-/defer-to-connect-2.0.0.tgz#83d6b199db041593ac84d781b5222308ccf4c2c1"
integrity sha512-bYL2d05vOSf1JEZNx5vSAtPuBMkX8K9EUutg7zlKvTqKXHt7RhWJFbmd7qakVuf13i+IkGmp6FwSsONOf6VYIg==
define-properties@^1.1.2, define-properties@^1.1.3:
version "1.1.3"
resolved "https://artifacts.apextoaster.com/repository/group-npm/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
@ -1689,6 +1809,13 @@ emoji-regex@^8.0.0:
resolved "https://artifacts.apextoaster.com/repository/group-npm/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
end-of-stream@^1.1.0:
version "1.4.4"
resolved "https://artifacts.apextoaster.com/repository/group-npm/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
dependencies:
once "^1.4.0"
enquirer@^2.3.5:
version "2.3.6"
resolved "https://artifacts.apextoaster.com/repository/group-npm/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d"
@ -2168,6 +2295,15 @@ forever-agent@~0.6.1:
resolved "https://artifacts.apextoaster.com/repository/group-npm/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
form-data@^3.0.0:
version "3.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/form-data/-/form-data-3.0.0.tgz#31b7e39c85f1355b7139ee0c647cf0de7f83c682"
integrity sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==
dependencies:
asynckit "^0.4.0"
combined-stream "^1.0.8"
mime-types "^2.1.12"
form-data@~2.3.2:
version "2.3.3"
resolved "https://artifacts.apextoaster.com/repository/group-npm/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
@ -2263,6 +2399,13 @@ get-stdin@^4.0.1:
resolved "https://artifacts.apextoaster.com/repository/group-npm/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=
get-stream@^5.1.0:
version "5.2.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"
integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==
dependencies:
pump "^3.0.0"
getpass@^0.1.1:
version "0.1.7"
resolved "https://artifacts.apextoaster.com/repository/group-npm/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
@ -2366,6 +2509,23 @@ globals@^12.1.0:
dependencies:
type-fest "^0.8.1"
got@^11.1.4:
version "11.5.2"
resolved "https://artifacts.apextoaster.com/repository/group-npm/got/-/got-11.5.2.tgz#772e3f3a06d9c7589c7c94dc3c83cdb31ddbf742"
integrity sha512-yUhpEDLeuGiGJjRSzEq3kvt4zJtAcjKmhIiwNp/eUs75tRlXfWcHo5tcBaMQtnjHWC7nQYT5HkY/l0QOQTkVww==
dependencies:
"@sindresorhus/is" "^3.0.0"
"@szmarczak/http-timer" "^4.0.5"
"@types/cacheable-request" "^6.0.1"
"@types/responselike" "^1.0.0"
cacheable-lookup "^5.0.3"
cacheable-request "^7.0.1"
decompress-response "^6.0.0"
http2-wrapper "^1.0.0-beta.5.0"
lowercase-keys "^2.0.0"
p-cancelable "^2.0.0"
responselike "^2.0.0"
graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0:
version "4.2.4"
resolved "https://artifacts.apextoaster.com/repository/group-npm/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb"
@ -2472,6 +2632,11 @@ html-escaper@^2.0.0:
resolved "https://artifacts.apextoaster.com/repository/group-npm/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
http-cache-semantics@^4.0.0:
version "4.1.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390"
integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==
http-signature@~1.2.0:
version "1.2.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
@ -2481,6 +2646,14 @@ http-signature@~1.2.0:
jsprim "^1.2.2"
sshpk "^1.7.0"
http2-wrapper@^1.0.0-beta.5.0:
version "1.0.0-beta.5.2"
resolved "https://artifacts.apextoaster.com/repository/group-npm/http2-wrapper/-/http2-wrapper-1.0.0-beta.5.2.tgz#8b923deb90144aea65cf834b016a340fc98556f3"
integrity sha512-xYz9goEyBnC8XwXDTuC/MZ6t+MrKVQZOk4s7+PaDkwIsQd8IwqvM+0M6bA/2lvG8GHXcPdf+MejTUeO2LCPCeQ==
dependencies:
quick-lru "^5.1.1"
resolve-alpn "^1.0.0"
husky@^4.2.5:
version "4.2.5"
resolved "https://artifacts.apextoaster.com/repository/group-npm/husky/-/husky-4.2.5.tgz#2b4f7622673a71579f901d9885ed448394b5fa36"
@ -2966,6 +3139,11 @@ jsesc@^2.5.1:
resolved "https://artifacts.apextoaster.com/repository/group-npm/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4"
integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==
json-buffer@3.0.1:
version "3.0.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
json-parse-better-errors@^1.0.1:
version "1.0.2"
resolved "https://artifacts.apextoaster.com/repository/group-npm/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9"
@ -3065,11 +3243,23 @@ jws@^3.2.2:
jwa "^1.4.1"
safe-buffer "^5.0.1"
keyv@^4.0.0:
version "4.0.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/keyv/-/keyv-4.0.1.tgz#9fe703cb4a94d6d11729d320af033307efd02ee6"
integrity sha512-xz6Jv6oNkbhrFCvCP7HQa8AaII8y8LRpoSm661NOKLr4uHuBwhX4epXrPQgF3+xdJnN4Esm5X0xwY4bOlALOtw==
dependencies:
json-buffer "3.0.1"
kind-of@^6.0.3:
version "6.0.3"
resolved "https://artifacts.apextoaster.com/repository/group-npm/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
ky@^0.23.0:
version "0.23.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/ky/-/ky-0.23.0.tgz#54c2f3fa9003d591cb2f368384e6c84795a92e64"
integrity sha512-+t2CbQsLmpN3HeYPBxN+VbZqBOd86njF3cvnueC77pJKVHRjiMI0Ac+pfkB8e17Bw1dGHbMk9hrHst9Bw7ndgw==
levn@^0.3.0, levn@~0.3.0:
version "0.3.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee"
@ -3086,6 +3276,11 @@ levn@^0.4.1:
prelude-ls "^1.2.1"
type-check "~0.4.0"
li@^1.3.0:
version "1.3.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/li/-/li-1.3.0.tgz#22c59bcaefaa9a8ef359cf759784e4bf106aea1b"
integrity sha1-IsWbyu+qmo7zWc91l4TkvxBq6hs=
lines-and-columns@^1.1.6:
version "1.1.6"
resolved "https://artifacts.apextoaster.com/repository/group-npm/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00"
@ -3252,6 +3447,11 @@ loud-rejection@^1.0.0:
currently-unhandled "^0.4.1"
signal-exit "^3.0.0"
lowercase-keys@^2.0.0:
version "2.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"
integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==
lru-cache@^6.0.0:
version "6.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
@ -3380,6 +3580,16 @@ mimic-fn@^2.1.0:
resolved "https://artifacts.apextoaster.com/repository/group-npm/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
mimic-response@^1.0.0:
version "1.0.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
mimic-response@^3.1.0:
version "3.1.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"
integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==
min-indent@^1.0.0:
version "1.0.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869"
@ -3576,6 +3786,11 @@ normalize-path@^3.0.0, normalize-path@~3.0.0:
resolved "https://artifacts.apextoaster.com/repository/group-npm/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
normalize-url@^4.1.0:
version "4.5.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/normalize-url/-/normalize-url-4.5.0.tgz#453354087e6ca96957bd8f5baf753f5982142129"
integrity sha512-2s47yzUxdexf1OhyRi4Em83iQk0aPvwTddtFz4hnSSw9dCEsLEGf6SwIO8ss/19S9iBb5sJaOuTvTGDeZI00BQ==
null-check@^1.0.0:
version "1.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/null-check/-/null-check-1.0.0.tgz#977dffd7176012b9ec30d2a39db5cf72a0439edd"
@ -3664,7 +3879,7 @@ object.values@^1.1.1:
function-bind "^1.1.1"
has "^1.0.3"
once@^1.3.0, once@^1.4.0:
once@^1.3.0, once@^1.3.1, once@^1.4.0:
version "1.4.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
@ -3725,6 +3940,11 @@ os-tmpdir@~1.0.2:
resolved "https://artifacts.apextoaster.com/repository/group-npm/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=
p-cancelable@^2.0.0:
version "2.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/p-cancelable/-/p-cancelable-2.0.0.tgz#4a3740f5bdaf5ed5d7c3e34882c6fb5d6b266a6e"
integrity sha512-wvPXDmbMmu2ksjkB4Z3nZWTSkJEb9lqVdMaCKpZUGJG9TMiNp9XcbG3fn9fPKjem04fJMJnXoyFPk2FmgiaiNg==
p-limit@^1.1.0:
version "1.3.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8"
@ -4016,6 +4236,14 @@ psl@^1.1.28:
resolved "https://artifacts.apextoaster.com/repository/group-npm/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24"
integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
pump@^3.0.0:
version "3.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
dependencies:
end-of-stream "^1.1.0"
once "^1.3.1"
punycode@^2.1.0, punycode@^2.1.1:
version "2.1.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
@ -4038,6 +4266,15 @@ qs@~6.5.2:
resolved "https://artifacts.apextoaster.com/repository/group-npm/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36"
integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==
query-string@^6.12.1:
version "6.13.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/query-string/-/query-string-6.13.1.tgz#d913ccfce3b4b3a713989fe6d39466d92e71ccad"
integrity sha512-RfoButmcK+yCta1+FuU8REvisx1oEzhMKwhLUNcepQTPGcNMp1sIqjnfCtfnvGSQZQEhaBHvccujtWoUV3TTbA==
dependencies:
decode-uri-component "^0.2.0"
split-on-first "^1.0.0"
strict-uri-encode "^2.0.0"
quick-lru@^1.0.0:
version "1.1.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8"
@ -4048,6 +4285,11 @@ quick-lru@^4.0.1:
resolved "https://artifacts.apextoaster.com/repository/group-npm/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f"
integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==
quick-lru@^5.1.1:
version "5.1.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"
integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==
ramda@^0.27.1:
version "0.27.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/ramda/-/ramda-0.27.1.tgz#66fc2df3ef873874ffc2da6aa8984658abacf5c9"
@ -4295,6 +4537,11 @@ require-main-filename@^2.0.0:
resolved "https://artifacts.apextoaster.com/repository/group-npm/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b"
integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==
resolve-alpn@^1.0.0:
version "1.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/resolve-alpn/-/resolve-alpn-1.0.0.tgz#745ad60b3d6aff4b4a48e01b8c0bdc70959e0e8c"
integrity sha512-rTuiIEqFmGxne4IovivKSDzld2lWW9QCjqv80SYjPgf+gS35eaCAjaP54CCwGAwBtnCsvNLYtqxe1Nw+i6JEmA==
resolve-dir@^1.0.0:
version "1.0.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43"
@ -4320,6 +4567,13 @@ resolve@1.17.0, resolve@^1.1.6, resolve@^1.10.0, resolve@^1.11.0, resolve@^1.11.
dependencies:
path-parse "^1.0.6"
responselike@^2.0.0:
version "2.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/responselike/-/responselike-2.0.0.tgz#26391bcc3174f750f9a79eacc40a12a5c42d7723"
integrity sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==
dependencies:
lowercase-keys "^2.0.0"
restore-cursor@^3.1.0:
version "3.1.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"
@ -4751,6 +5005,11 @@ spdx-license-ids@^3.0.0:
resolved "https://artifacts.apextoaster.com/repository/group-npm/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz#3694b5804567a458d3c8045842a6358632f62654"
integrity sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==
split-on-first@^1.0.0:
version "1.1.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f"
integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==
split2@^2.0.0:
version "2.2.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493"
@ -4811,6 +5070,11 @@ stealthy-require@^1.1.1:
resolved "https://artifacts.apextoaster.com/repository/group-npm/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b"
integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=
strict-uri-encode@^2.0.0:
version "2.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546"
integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY=
"string-width@^1.0.2 || 2":
version "2.1.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
@ -5500,6 +5764,11 @@ ws@^7.2.3:
resolved "https://artifacts.apextoaster.com/repository/group-npm/ws/-/ws-7.3.1.tgz#d0547bf67f7ce4f12a72dfe31262c68d7dc551c8"
integrity sha512-D3RuNkynyHmEJIpD2qrgVkc9DQ23OrN/moAwZX4L8DfvszsJxpjQuUq3LMx6HoYji9fbIOBY18XWBsAux1ZZUA==
xcase@^2.0.1:
version "2.0.1"
resolved "https://artifacts.apextoaster.com/repository/group-npm/xcase/-/xcase-2.0.1.tgz#c7fa72caa0f440db78fd5673432038ac984450b9"
integrity sha1-x/pyyqD0QNt4/VZzQyA4rJhEULk=
xml-name-validator@^3.0.0:
version "3.0.0"
resolved "https://artifacts.apextoaster.com/repository/group-npm/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a"