docstar-cli 1.2.1-beta.0 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/api-test/whatsapp/send-message.js +35 -0
- package/dist/commands/config/get.d.ts +10 -0
- package/dist/commands/config/get.js +43 -0
- package/dist/commands/config/set.d.ts +11 -0
- package/dist/commands/config/set.js +33 -0
- package/dist/commands/github/apps/add-repo-to-installation-for-authenticated-user.js +31 -0
- package/dist/commands/github/apps/check-authorization.js +31 -0
- package/dist/commands/github/apps/check-token.js +30 -0
- package/dist/commands/github/apps/create-content-attachment.js +30 -0
- package/dist/commands/github/apps/create-from-manifest.js +30 -0
- package/dist/commands/github/apps/create-installation-access-token.js +30 -0
- package/dist/commands/github/apps/delete-authorization.js +30 -0
- package/dist/commands/github/apps/delete-installation.js +30 -0
- package/dist/commands/github/apps/delete-token.js +30 -0
- package/dist/commands/github/apps/get-authenticated.js +30 -0
- package/dist/commands/github/apps/get-by-slug.js +30 -0
- package/dist/commands/github/apps/get-installation.js +30 -0
- package/dist/commands/github/apps/get-org-installation.js +30 -0
- package/dist/commands/github/apps/get-repo-installation.js +31 -0
- package/dist/commands/github/apps/get-subscription-plan-for-account-stubbed.js +30 -0
- package/dist/commands/github/apps/get-subscription-plan-for-account.js +30 -0
- package/dist/commands/github/apps/get-user-installation.js +30 -0
- package/dist/commands/github/apps/get-webhook-config-for-app.js +30 -0
- package/dist/commands/github/apps/get-webhook-delivery.js +30 -0
- package/dist/commands/github/apps/list-accounts-for-plan-stubbed.js +34 -0
- package/dist/commands/github/apps/list-accounts-for-plan.js +34 -0
- package/dist/commands/github/apps/list-installation-repos-for-authenticated-user.js +32 -0
- package/dist/commands/github/apps/list-installations-for-authenticated-user.js +31 -0
- package/dist/commands/github/apps/list-installations.js +33 -0
- package/dist/commands/github/apps/list-plans-stubbed.js +31 -0
- package/dist/commands/github/apps/list-plans.js +31 -0
- package/dist/commands/github/apps/list-repos-accessible-to-installation.js +31 -0
- package/dist/commands/github/apps/list-subscriptions-for-authenticated-user-stubbed.js +31 -0
- package/dist/commands/github/apps/list-subscriptions-for-authenticated-user.js +31 -0
- package/dist/commands/github/apps/list-webhook-deliveries.js +32 -0
- package/dist/commands/github/apps/redeliver-webhook-delivery.js +30 -0
- package/dist/commands/github/apps/remove-repo-from-installation-for-authenticated-user.js +31 -0
- package/dist/commands/github/apps/reset-authorization.js +31 -0
- package/dist/commands/github/apps/reset-token.js +30 -0
- package/dist/commands/github/apps/revoke-authorization-for-application.js +31 -0
- package/dist/commands/github/apps/revoke-grant-for-application.js +31 -0
- package/dist/commands/github/apps/revoke-installation-access-token.js +30 -0
- package/dist/commands/github/apps/scope-token.js +30 -0
- package/dist/commands/github/apps/suspend-installation.js +30 -0
- package/dist/commands/github/apps/unsuspend-installation.js +30 -0
- package/dist/commands/github/apps/update-webhook-config-for-app.js +30 -0
- package/dist/commands/github/meta/get-all-versions.js +30 -0
- package/dist/commands/github/meta/get-octocat.js +30 -0
- package/dist/commands/github/meta/get-zen.js +30 -0
- package/dist/commands/github/meta/get.js +30 -0
- package/dist/commands/github/meta/root.js +30 -0
- package/dist/commands/github/oauth-authorizations/create-authorization.js +30 -0
- package/dist/commands/github/oauth-authorizations/delete-authorization.js +30 -0
- package/dist/commands/github/oauth-authorizations/delete-grant.js +30 -0
- package/dist/commands/github/oauth-authorizations/get-authorization.js +30 -0
- package/dist/commands/github/oauth-authorizations/get-grant.js +30 -0
- package/dist/commands/github/oauth-authorizations/get-or-create-authorization-for-app-and-fingerprint.js +31 -0
- package/dist/commands/github/oauth-authorizations/get-or-create-authorization-for-app.js +30 -0
- package/dist/commands/github/oauth-authorizations/list-authorizations.js +32 -0
- package/dist/commands/github/oauth-authorizations/list-grants.js +32 -0
- package/dist/commands/github/oauth-authorizations/update-authorization.js +30 -0
- package/dist/commands/msg91/hello/assign-ticket.js +40 -0
- package/dist/commands/msg91/hello/bot-analytics.js +33 -0
- package/dist/commands/msg91/hello/close-all-ticket-by-filter-id.js +35 -0
- package/dist/commands/msg91/hello/close-all-ticket.js +37 -0
- package/dist/commands/msg91/hello/create-draft-email.js +35 -0
- package/dist/commands/msg91/hello/create-update.js +35 -0
- package/dist/commands/msg91/hello/delete-draft-email.js +33 -0
- package/dist/commands/msg91/hello/delete-draft.js +33 -0
- package/dist/commands/msg91/hello/email-inbox-list-1.js +36 -0
- package/dist/commands/msg91/hello/get-agent-team-bot.js +38 -0
- package/dist/commands/msg91/hello/get-draft.js +34 -0
- package/dist/commands/msg91/hello/get-save-filter-list-by-filter-id.js +31 -0
- package/dist/commands/msg91/hello/get-tickets.js +37 -0
- package/dist/commands/msg91/hello/hello-mail-send-api.js +38 -0
- package/dist/commands/msg91/hello/hello-mail-send.js +37 -0
- package/dist/commands/msg91/hello/mail-ticket-list.js +34 -0
- package/dist/commands/msg91/hello/open-ticket.js +32 -0
- package/dist/commands/msg91/hello/saved-filter-list.js +32 -0
- package/dist/commands/msg91/hello/statechangeapi.js +34 -0
- package/dist/commands/msg91/hello/update-draft-email.js +36 -0
- package/dist/commands/msg91/hello/update-draft-whatsapp.js +36 -0
- package/dist/commands/msg91/sms/add-flow.js +32 -0
- package/dist/commands/msg91/sms/add-template-version.js +32 -0
- package/dist/commands/msg91/sms/get-template-versions.js +33 -0
- package/dist/commands/msg91/sms/mark-default.js +33 -0
- package/dist/commands/msg91/sms/send-sms.js +37 -0
- package/dist/commands/msg91/sms/sms-analytics.js +33 -0
- package/dist/commands/msg91/sms/sms-logs.js +36 -0
- package/dist/commands/msg91/whatsapp/approve-join-requests.js +33 -0
- package/dist/commands/msg91/whatsapp/check-whatsapp-prepaid-balance.js +34 -0
- package/dist/commands/msg91/whatsapp/create-group.js +35 -0
- package/dist/commands/msg91/whatsapp/create-whatsapp-template.js +37 -0
- package/dist/commands/msg91/whatsapp/delete-group.js +32 -0
- package/dist/commands/msg91/whatsapp/delete-template.js +33 -0
- package/dist/commands/msg91/whatsapp/edit-template-1.js +35 -0
- package/dist/commands/msg91/whatsapp/edit-template.js +35 -0
- package/dist/commands/msg91/whatsapp/get-group-by-id.js +33 -0
- package/dist/commands/msg91/whatsapp/get-group-by-number.js +33 -0
- package/dist/commands/msg91/whatsapp/get-joinee-request.js +32 -0
- package/dist/commands/msg91/whatsapp/get-templates.js +39 -0
- package/dist/commands/msg91/whatsapp/interactive-wa-send-location.js +35 -0
- package/dist/commands/msg91/whatsapp/interactive-whatsapp-buttons.js +36 -0
- package/dist/commands/msg91/whatsapp/interactive-whatsapp-list.js +36 -0
- package/dist/commands/msg91/whatsapp/multiple-product-catalog.js +36 -0
- package/dist/commands/msg91/whatsapp/reject-join-requests-1.js +33 -0
- package/dist/commands/msg91/whatsapp/remove-participants.js +33 -0
- package/dist/commands/msg91/whatsapp/reset-group-invite-link-1.js +33 -0
- package/dist/commands/msg91/whatsapp/send-message-in-text.js +36 -0
- package/dist/commands/msg91/whatsapp/send-message-on-group.js +36 -0
- package/dist/commands/msg91/whatsapp/send-payment-link-via-whatsapp-payments.js +37 -0
- package/dist/commands/msg91/whatsapp/single-product-catalog.js +36 -0
- package/dist/commands/msg91/whatsapp/template-bulk.js +35 -0
- package/dist/commands/msg91/whatsapp/to-fetch-whatsapp-number.js +32 -0
- package/dist/commands/msg91/whatsapp/whatsapp-analytics.js +33 -0
- package/dist/commands/msg91/whatsapp/whatsapp-logs.js +36 -0
- package/dist/commands/msg91/whatsapp/whatsapp-voice-call.js +34 -0
- package/dist/commands/reqres/project/get-all-project.js +32 -0
- package/dist/lib/codegen.js +10 -0
- package/dist/lib/http.js +27 -4
- package/dist/lib/types.d.ts +1 -0
- package/oclif.manifest.json +5525 -1
- package/package.json +2 -2
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["integrated_number","content_type","payload"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "send message"
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"integrated_number": Flags.string({description: "Required parameter"}),
|
|
12
|
+
"content_type": Flags.string({description: "Required parameter"}),
|
|
13
|
+
"payload": Flags.string({description: "Required parameter"}),
|
|
14
|
+
"Content-Type": Flags.string({description: 'Header value'}),
|
|
15
|
+
"authkey": Flags.string({description: 'Header value'}),
|
|
16
|
+
"content-type": Flags.string({description: 'Header value'}),
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
async run() {
|
|
20
|
+
const {flags} = await this.parse(Generated)
|
|
21
|
+
const params = {}
|
|
22
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
23
|
+
if (value !== undefined) params[key] = value
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
27
|
+
|
|
28
|
+
try {
|
|
29
|
+
const result = await executeCliCommand("api-test", "whatsapp", "send-message", params)
|
|
30
|
+
this.log(JSON.stringify(result, null, 2))
|
|
31
|
+
} catch (error) {
|
|
32
|
+
this.error(error.message)
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class ConfigGet extends Command {
|
|
3
|
+
static args: {
|
|
4
|
+
cliName: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
5
|
+
key: import("@oclif/core/interfaces").Arg<string | undefined, Record<string, unknown>>;
|
|
6
|
+
};
|
|
7
|
+
static description: string;
|
|
8
|
+
static examples: string[];
|
|
9
|
+
run(): Promise<void>;
|
|
10
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Args, Command } from '@oclif/core';
|
|
2
|
+
import { readFile } from 'node:fs/promises';
|
|
3
|
+
import { configPath } from '../../lib/paths.js';
|
|
4
|
+
export default class ConfigGet extends Command {
|
|
5
|
+
static args = {
|
|
6
|
+
cliName: Args.string({ description: 'Installed collection (CLI name), e.g. msg91', required: true }),
|
|
7
|
+
key: Args.string({ description: 'Credential name to look up, e.g. authkey. Omit to show all saved credentials.', required: false }),
|
|
8
|
+
};
|
|
9
|
+
static description = 'Show saved credentials for a collection, or a single credential value';
|
|
10
|
+
static examples = [
|
|
11
|
+
'<%= config.bin %> <%= command.id %> msg91 # show all credentials saved for "msg91"',
|
|
12
|
+
'<%= config.bin %> <%= command.id %> msg91 authkey # show just the "authkey" value',
|
|
13
|
+
];
|
|
14
|
+
async run() {
|
|
15
|
+
const { args } = await this.parse(ConfigGet);
|
|
16
|
+
let savedConfig;
|
|
17
|
+
try {
|
|
18
|
+
savedConfig = JSON.parse(await readFile(configPath(), 'utf8'));
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
this.error('No installed modules found. Run `docstar-cli init <domain>` first.');
|
|
22
|
+
}
|
|
23
|
+
const collection = savedConfig.collections.find((c) => c.cliName === args.cliName);
|
|
24
|
+
if (!collection) {
|
|
25
|
+
this.error(`Collection "${args.cliName}" isn't installed. Run \`docstar-cli list\` to see installed collections.`);
|
|
26
|
+
}
|
|
27
|
+
const credentials = collection.credentials || {};
|
|
28
|
+
if (args.key) {
|
|
29
|
+
if (!(args.key in credentials)) {
|
|
30
|
+
this.error(`No credential named "${args.key}" saved for collection "${args.cliName}".`);
|
|
31
|
+
}
|
|
32
|
+
this.log(credentials[args.key]);
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const entries = Object.entries(credentials);
|
|
36
|
+
if (entries.length === 0) {
|
|
37
|
+
this.log(`No credentials saved for collection "${args.cliName}".`);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
for (const [key, value] of entries)
|
|
41
|
+
this.log(`${key}=${value}`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Command } from '@oclif/core';
|
|
2
|
+
export default class ConfigSet extends Command {
|
|
3
|
+
static args: {
|
|
4
|
+
cliName: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
5
|
+
key: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
6
|
+
value: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
7
|
+
};
|
|
8
|
+
static description: string;
|
|
9
|
+
static examples: string[];
|
|
10
|
+
run(): Promise<void>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { Args, Command } from '@oclif/core';
|
|
2
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
3
|
+
import { configPath } from '../../lib/paths.js';
|
|
4
|
+
export default class ConfigSet extends Command {
|
|
5
|
+
static args = {
|
|
6
|
+
cliName: Args.string({ description: 'Installed collection (CLI name), e.g. msg91', required: true }),
|
|
7
|
+
key: Args.string({ description: 'Credential name, matching a header/param name, e.g. authkey', required: true }),
|
|
8
|
+
value: Args.string({ description: 'Value to store', required: true }),
|
|
9
|
+
};
|
|
10
|
+
static description = [
|
|
11
|
+
'Save a per-collection credential (e.g. an API/auth key) so it is injected into every request',
|
|
12
|
+
'automatically, instead of having to pass it as a flag on every command.',
|
|
13
|
+
'An explicit `--<key> value` flag on a command still overrides the saved credential.',
|
|
14
|
+
].join('\n');
|
|
15
|
+
static examples = ['<%= config.bin %> <%= command.id %> msg91 authkey 279417Ac93k5fIO5qG6a9e6a8eP1'];
|
|
16
|
+
async run() {
|
|
17
|
+
const { args } = await this.parse(ConfigSet);
|
|
18
|
+
let savedConfig;
|
|
19
|
+
try {
|
|
20
|
+
savedConfig = JSON.parse(await readFile(configPath(), 'utf8'));
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
this.error('No installed modules found. Run `docstar-cli init <domain>` first.');
|
|
24
|
+
}
|
|
25
|
+
const collection = savedConfig.collections.find((c) => c.cliName === args.cliName);
|
|
26
|
+
if (!collection) {
|
|
27
|
+
this.error(`Collection "${args.cliName}" isn't installed. Run \`docstar-cli list\` to see installed collections.`);
|
|
28
|
+
}
|
|
29
|
+
collection.credentials = { ...collection.credentials, [args.key]: args.value };
|
|
30
|
+
await writeFile(configPath(), JSON.stringify(savedConfig, null, 2));
|
|
31
|
+
this.log(`Saved "${args.key}" for collection "${args.cliName}".`);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0","1"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Add a single repository to an installation. The authenticated user must have admin access to the repository.\n\nYou must use a personal access token (which you can create via the [command line](https://docs.github.com/github/authenticating-to-github/creating-a-personal-access-token) or [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication)) to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
"1": Flags.string({description: "Required parameter"}),
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
async run() {
|
|
16
|
+
const {flags} = await this.parse(Generated)
|
|
17
|
+
const params = {}
|
|
18
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
19
|
+
if (value !== undefined) params[key] = value
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
23
|
+
|
|
24
|
+
try {
|
|
25
|
+
const result = await executeCliCommand("github", "apps", "add-repo-to-installation-for-authenticated-user", params)
|
|
26
|
+
this.log(JSON.stringify(result, null, 2))
|
|
27
|
+
} catch (error) {
|
|
28
|
+
this.error(error.message)
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0","1"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "**Deprecation Notice:** GitHub will discontinue OAuth endpoints that contain `access_token` in the path parameter. We have introduced new endpoints that allow you to securely manage tokens for OAuth Apps by moving `access_token` to the request body. For more information, see the [blog post](https://developer.github.com/changes/2020-02-14-deprecating-oauth-app-endpoint/).\n\nOAuth applications can use a special API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. Invalid tokens will return `404 NOT FOUND`."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
"1": Flags.string({description: "Required parameter"}),
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
async run() {
|
|
16
|
+
const {flags} = await this.parse(Generated)
|
|
17
|
+
const params = {}
|
|
18
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
19
|
+
if (value !== undefined) params[key] = value
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
23
|
+
|
|
24
|
+
try {
|
|
25
|
+
const result = await executeCliCommand("github", "apps", "check-authorization", params)
|
|
26
|
+
this.log(JSON.stringify(result, null, 2))
|
|
27
|
+
} catch (error) {
|
|
28
|
+
this.error(error.message)
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "OAuth applications can use a special API method for checking OAuth token validity without exceeding the normal rate limits for failed login attempts. Authentication works differently with this particular endpoint. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) to use this endpoint, where the username is the OAuth application `client_id` and the password is its `client_secret`. Invalid tokens will return `404 NOT FOUND`."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "check-token", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Creates an attachment under a content reference URL in the body or comment of an issue or pull request. Use the `id` of the content reference from the [`content_reference` event](https://docs.github.com/webhooks/event-payloads/#content_reference) to create an attachment.\n\nThe app must create a content attachment within six hours of the content reference URL being posted. See \"[Using content attachments](https://docs.github.com/apps/using-content-attachments/)\" for details about content attachments.\n\nYou must use an [installation access token](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation) to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "create-content-attachment", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Use this endpoint to complete the handshake necessary when implementing the [GitHub App Manifest flow](https://docs.github.com/apps/building-github-apps/creating-github-apps-from-a-manifest/). When you create a GitHub App with the manifest flow, you receive a temporary `code` used to retrieve the GitHub App's `id`, `pem` (private key), and `webhook_secret`."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "create-from-manifest", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Creates an installation access token that enables a GitHub App to make authenticated API requests for the app's installation on an organization or individual account. Installation tokens expire one hour from the time you create them. Using an expired token produces a status code of `401 - Unauthorized`, and requires creating a new installation token. By default the installation token has access to all repositories that the installation can access. To restrict the access to specific repositories, you can provide the `repository_ids` when creating the token. When you omit `repository_ids`, the response does not contain the `repositories` key.\n\nYou must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "create-installation-access-token", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "OAuth application owners can revoke a grant for their OAuth application and a specific user. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password. You must also provide a valid OAuth `access_token` as an input parameter and the grant for the token's owner will be deleted.\nDeleting an OAuth application's grant will also delete all OAuth tokens associated with the application for the user. Once deleted, the application will have no access to the user's account and will no longer be listed on [the application authorizations settings screen within GitHub](https://github.com/settings/applications#authorized)."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "delete-authorization", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Uninstalls a GitHub App on a user, organization, or business account. If you prefer to temporarily suspend an app's access to your account's resources, then we recommend the \"[Suspend an app installation](https://docs.github.com/rest/reference/apps/#suspend-an-app-installation)\" endpoint.\n\nYou must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "delete-installation", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "OAuth application owners can revoke a single token for an OAuth application. You must use [Basic Authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) when accessing this endpoint, using the OAuth application's `client_id` and `client_secret` as the username and password."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "delete-token", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = []
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Returns the GitHub App associated with the authentication credentials used. To see how many app installations are associated with this GitHub App, see the `installations_count` in the response. For more details about your app's installations, see the \"[List installations for the authenticated app](https://docs.github.com/rest/reference/apps#list-installations-for-the-authenticated-app)\" endpoint.\n\nYou must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "get-authenticated", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "**Note**: The `:app_slug` is just the URL-friendly name of your GitHub App. You can find this on the settings page for your GitHub App (e.g., `https://github.com/settings/apps/:app_slug`).\n\nIf the GitHub App you specify is public, you can access this endpoint without authenticating. If the GitHub App you specify is private, you must authenticate with a [personal access token](https://docs.github.com/articles/creating-a-personal-access-token-for-the-command-line/) or an [installation access token](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-an-installation) to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "get-by-slug", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Enables an authenticated GitHub App to find an installation's information using the installation id.\n\nYou must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "get-installation", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Enables an authenticated GitHub App to find the organization's installation information.\n\nYou must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "get-org-installation", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0","1"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Enables an authenticated GitHub App to find the repository's installation information. The installation's account type will be either an organization or a user account, depending which account the repository belongs to.\n\nYou must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
"1": Flags.string({description: "Required parameter"}),
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
async run() {
|
|
16
|
+
const {flags} = await this.parse(Generated)
|
|
17
|
+
const params = {}
|
|
18
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
19
|
+
if (value !== undefined) params[key] = value
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
23
|
+
|
|
24
|
+
try {
|
|
25
|
+
const result = await executeCliCommand("github", "apps", "get-repo-installation", params)
|
|
26
|
+
this.log(JSON.stringify(result, null, 2))
|
|
27
|
+
} catch (error) {
|
|
28
|
+
this.error(error.message)
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.\n\nGitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth Apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "get-subscription-plan-for-account-stubbed", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {Command, Flags} from '@oclif/core'
|
|
2
|
+
import {executeCliCommand} from '../../../lib/http.js'
|
|
3
|
+
import {promptForMissingParams} from '../../../lib/prompt.js'
|
|
4
|
+
|
|
5
|
+
const REQUIRED_PARAMS = ["0"]
|
|
6
|
+
|
|
7
|
+
export default class Generated extends Command {
|
|
8
|
+
static description = "Shows whether the user or organization account actively subscribes to a plan listed by the authenticated GitHub App. When someone submits a plan change that won't be processed until the end of their billing cycle, you will also see the upcoming pending change.\n\nGitHub Apps must use a [JWT](https://docs.github.com/apps/building-github-apps/authenticating-with-github-apps/#authenticating-as-a-github-app) to access this endpoint. OAuth Apps must use [basic authentication](https://docs.github.com/rest/overview/other-authentication-methods#basic-authentication) with their client ID and client secret to access this endpoint."
|
|
9
|
+
static aliases = []
|
|
10
|
+
static flags = {
|
|
11
|
+
"0": Flags.string({description: "Required parameter"}),
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
async run() {
|
|
15
|
+
const {flags} = await this.parse(Generated)
|
|
16
|
+
const params = {}
|
|
17
|
+
for (const [key, value] of Object.entries(flags)) {
|
|
18
|
+
if (value !== undefined) params[key] = value
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
Object.assign(params, await promptForMissingParams(REQUIRED_PARAMS, params))
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await executeCliCommand("github", "apps", "get-subscription-plan-for-account", params)
|
|
25
|
+
this.log(JSON.stringify(result, null, 2))
|
|
26
|
+
} catch (error) {
|
|
27
|
+
this.error(error.message)
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|