use promise for rate limit
This commit is contained in:
Vendored
+18
-11
@@ -172,10 +172,19 @@ exports.Input = Input;
|
|||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 5544:
|
/***/ 5544:
|
||||||
/***/ ((__unused_webpack_module, exports, __nccwpck_require__) => {
|
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
|
||||||
|
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
||||||
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
||||||
|
return new (P || (P = Promise))(function (resolve, reject) {
|
||||||
|
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
||||||
|
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
||||||
|
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
||||||
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
||||||
|
});
|
||||||
|
};
|
||||||
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
||||||
exports.deletePackageVersions = exports.deletePackageVersion = exports.getRateLimit = void 0;
|
exports.deletePackageVersions = exports.deletePackageVersion = exports.getRateLimit = void 0;
|
||||||
const rxjs_1 = __nccwpck_require__(5805);
|
const rxjs_1 = __nccwpck_require__(5805);
|
||||||
@@ -201,19 +210,17 @@ query {
|
|||||||
}
|
}
|
||||||
}`;
|
}`;
|
||||||
function getRateLimit(token) {
|
function getRateLimit(token) {
|
||||||
return rxjs_1.from(graphql_1.graphql(token, ratelimitQuery, {
|
return __awaiter(this, void 0, void 0, function* () {
|
||||||
headers: {
|
return graphql_1.graphql(token, ratelimitQuery, {
|
||||||
Accept: 'application/vnd.github.package-deletes-preview+json'
|
headers: {
|
||||||
}
|
Accept: 'application/vnd.github.package-deletes-preview+json'
|
||||||
})).pipe(operators_1.catchError(err => {
|
}
|
||||||
return rxjs_1.throwError(err.errors && err.errors.length > 0
|
});
|
||||||
? `${err.errors[0].message}`
|
});
|
||||||
: `unknown error`);
|
|
||||||
}));
|
|
||||||
}
|
}
|
||||||
exports.getRateLimit = getRateLimit;
|
exports.getRateLimit = getRateLimit;
|
||||||
function deletePackageVersion(packageVersionId, token) {
|
function deletePackageVersion(packageVersionId, token) {
|
||||||
getRateLimit(token).pipe(operators_1.map(value => console.log(`login: ${value.viewer.login}, rate limit: ${value.ratelimit.limit}, cost: ${value.ratelimit.cost}, remaining: ${value.ratelimit.remaining}`)));
|
getRateLimit(token).then(value => console.log(`login: ${value.viewer.login}, rate limit: ${value.ratelimit.limit}, cost: ${value.ratelimit.cost}, remaining: ${value.ratelimit.remaining}`));
|
||||||
if (deleted === 99) {
|
if (deleted === 99) {
|
||||||
console.log(`reaching rate limit`);
|
console.log(`reaching rate limit`);
|
||||||
operators_1.delay(5000);
|
operators_1.delay(5000);
|
||||||
|
|||||||
@@ -43,35 +43,24 @@ query {
|
|||||||
}
|
}
|
||||||
}`
|
}`
|
||||||
|
|
||||||
export function getRateLimit(token: string): Observable<RateLimitResponse> {
|
export async function getRateLimit(token: string): Promise<RateLimitResponse> {
|
||||||
return from(
|
return graphql(token, ratelimitQuery, {
|
||||||
graphql(token, ratelimitQuery, {
|
headers: {
|
||||||
headers: {
|
Accept: 'application/vnd.github.package-deletes-preview+json'
|
||||||
Accept: 'application/vnd.github.package-deletes-preview+json'
|
}
|
||||||
}
|
}) as Promise<RateLimitResponse>
|
||||||
}) as Promise<RateLimitResponse>
|
|
||||||
).pipe(
|
|
||||||
catchError(err => {
|
|
||||||
return throwError(
|
|
||||||
err.errors && err.errors.length > 0
|
|
||||||
? `${err.errors[0].message}`
|
|
||||||
: `unknown error`
|
|
||||||
)
|
|
||||||
})
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
export function deletePackageVersion(
|
export function deletePackageVersion(
|
||||||
packageVersionId: string,
|
packageVersionId: string,
|
||||||
token: string
|
token: string
|
||||||
): Observable<boolean> {
|
): Observable<boolean> {
|
||||||
getRateLimit(token).pipe(
|
getRateLimit(token).then(value =>
|
||||||
tap(value =>
|
console.log(
|
||||||
console.log(
|
`login: ${value.viewer.login}, rate limit: ${value.ratelimit.limit}, cost: ${value.ratelimit.cost}, remaining: ${value.ratelimit.remaining}`
|
||||||
`login: ${value.viewer.login}, rate limit: ${value.ratelimit.limit}, cost: ${value.ratelimit.cost}, remaining: ${value.ratelimit.remaining}`
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
if (deleted === 99) {
|
if (deleted === 99) {
|
||||||
console.log(`reaching rate limit`)
|
console.log(`reaching rate limit`)
|
||||||
delay(5000)
|
delay(5000)
|
||||||
|
|||||||
Reference in New Issue
Block a user