@code-pushup/cli 0.1.0

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/package.json ADDED
@@ -0,0 +1,16 @@
1
+ {
2
+ "name": "@code-pushup/cli",
3
+ "version": "0.1.0",
4
+ "bin": {
5
+ "code-pushup": "index.js"
6
+ },
7
+ "dependencies": {
8
+ "@code-pushup/models": "*",
9
+ "@code-pushup/core": "*",
10
+ "yargs": "^17.7.2",
11
+ "chalk": "^5.3.0"
12
+ },
13
+ "type": "module",
14
+ "main": "./index.js",
15
+ "types": "./src/index.d.ts"
16
+ }
package/src/index.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ #! /usr/bin/env node
2
+ export {};
@@ -0,0 +1,9 @@
1
+ import { ArgumentsCamelCase } from 'yargs';
2
+ export declare function yargsAutorunCommandObject(): {
3
+ command: string;
4
+ describe: string;
5
+ builder: {
6
+ onlyPlugins: import("yargs").Options;
7
+ };
8
+ handler: <T>(args: ArgumentsCamelCase<T>) => Promise<void>;
9
+ };
@@ -0,0 +1,3 @@
1
+ export declare const CLI_NAME = "Code PushUp CLI";
2
+ export declare const CLI_SCRIPT_NAME = "code-pushup";
3
+ export declare const cli: (args: string[]) => import("yargs").Argv<unknown>;
@@ -0,0 +1,2 @@
1
+ import { CommandModule } from 'yargs';
2
+ export declare function yargsCollectCommandObject(): CommandModule;
@@ -0,0 +1,2 @@
1
+ import { CommandModule } from 'yargs';
2
+ export declare const commands: CommandModule[];
@@ -0,0 +1,226 @@
1
+ import { CoreConfig } from '@code-pushup/models';
2
+ import { GeneralCliOptions, OnlyPluginsOptions } from './model';
3
+ export declare function configMiddleware<T extends Partial<GeneralCliOptions & CoreConfig & OnlyPluginsOptions>>(processArgs: T): Promise<{
4
+ plugins: {
5
+ title: string;
6
+ slug: string;
7
+ icon: "slug" | "search" | "blink" | "folder-robot" | "folder-src" | "folder-dist" | "folder-css" | "folder-sass" | "folder-images" | "folder-scripts" | "folder-node" | "folder-javascript" | "folder-json" | "folder-font" | "folder-bower" | "folder-test" | "folder-jinja" | "folder-markdown" | "folder-php" | "folder-phpmailer" | "folder-sublime" | "folder-docs" | "folder-git" | "folder-github" | "folder-gitlab" | "folder-vscode" | "folder-views" | "folder-vue" | "folder-vuepress" | "folder-expo" | "folder-config" | "folder-i18n" | "folder-components" | "folder-verdaccio" | "folder-aurelia" | "folder-resource" | "folder-lib" | "folder-theme" | "folder-webpack" | "folder-global" | "folder-public" | "folder-include" | "folder-docker" | "folder-database" | "folder-log" | "folder-target" | "folder-temp" | "folder-aws" | "folder-audio" | "folder-video" | "folder-kubernetes" | "folder-import" | "folder-export" | "folder-wakatime" | "folder-circleci" | "folder-wordpress" | "folder-gradle" | "folder-coverage" | "folder-class" | "folder-other" | "folder-lua" | "folder-typescript" | "folder-graphql" | "folder-routes" | "folder-ci" | "folder-benchmark" | "folder-messages" | "folder-less" | "folder-gulp" | "folder-python" | "folder-mojo" | "folder-debug" | "folder-fastlane" | "folder-plugin" | "folder-middleware" | "folder-controller" | "folder-ansible" | "folder-server" | "folder-client" | "folder-tasks" | "folder-android" | "folder-ios" | "folder-upload" | "folder-download" | "folder-tools" | "folder-helper" | "folder-serverless" | "folder-api" | "folder-app" | "folder-apollo" | "folder-archive" | "folder-batch" | "folder-buildkite" | "folder-cluster" | "folder-command" | "folder-constant" | "folder-container" | "folder-content" | "folder-context" | "folder-core" | "folder-delta" | "folder-dump" | "folder-examples" | "folder-environment" | "folder-functions" | "folder-generator" | "folder-hook" | "folder-job" | "folder-keys" | "folder-layout" | "folder-mail" | "folder-mappings" | "folder-meta" | "folder-changesets" | "folder-packages" | "folder-shared" | "folder-shader" | "folder-stack" | "folder-template" | "folder-utils" | "folder-supabase" | "folder-private" | "folder-error" | "folder-event" | "folder-secure" | "folder-custom" | "folder-mock" | "folder-syntax" | "folder-vm" | "folder-stylus" | "folder-flow" | "folder-rules" | "folder-review" | "folder-animation" | "folder-guard" | "folder-prisma" | "folder-pipe" | "folder-svg" | "folder-terraform" | "folder-mobile" | "folder-stencil" | "folder-firebase" | "folder-svelte" | "folder-update" | "folder-intellij" | "folder-azure-pipelines" | "folder-mjml" | "folder-admin" | "folder-scala" | "folder-connection" | "folder-quasar" | "folder-next" | "folder-cobol" | "folder-yarn" | "folder-husky" | "folder-storybook" | "folder-base" | "folder-cart" | "folder-home" | "folder-project" | "folder-interface" | "folder-netlify" | "folder-enum" | "folder-contract" | "folder-queue" | "folder-vercel" | "folder-cypress" | "folder-decorators" | "folder-java" | "folder-resolver" | "folder-angular" | "folder-unity" | "folder-pdf" | "folder-proto" | "folder-plastic" | "folder-gamemaker" | "folder-mercurial" | "folder-godot" | "folder-robot-open" | "folder-src-open" | "folder-dist-open" | "folder-css-open" | "folder-sass-open" | "folder-images-open" | "folder-scripts-open" | "folder-node-open" | "folder-javascript-open" | "folder-json-open" | "folder-font-open" | "folder-bower-open" | "folder-test-open" | "folder-jinja-open" | "folder-markdown-open" | "folder-php-open" | "folder-phpmailer-open" | "folder-sublime-open" | "folder-docs-open" | "folder-git-open" | "folder-github-open" | "folder-gitlab-open" | "folder-vscode-open" | "folder-views-open" | "folder-vue-open" | "folder-vuepress-open" | "folder-expo-open" | "folder-config-open" | "folder-i18n-open" | "folder-components-open" | "folder-verdaccio-open" | "folder-aurelia-open" | "folder-resource-open" | "folder-lib-open" | "folder-theme-open" | "folder-webpack-open" | "folder-global-open" | "folder-public-open" | "folder-include-open" | "folder-docker-open" | "folder-database-open" | "folder-log-open" | "folder-target-open" | "folder-temp-open" | "folder-aws-open" | "folder-audio-open" | "folder-video-open" | "folder-kubernetes-open" | "folder-import-open" | "folder-export-open" | "folder-wakatime-open" | "folder-circleci-open" | "folder-wordpress-open" | "folder-gradle-open" | "folder-coverage-open" | "folder-class-open" | "folder-other-open" | "folder-lua-open" | "folder-typescript-open" | "folder-graphql-open" | "folder-routes-open" | "folder-ci-open" | "folder-benchmark-open" | "folder-messages-open" | "folder-less-open" | "folder-gulp-open" | "folder-python-open" | "folder-mojo-open" | "folder-debug-open" | "folder-fastlane-open" | "folder-plugin-open" | "folder-middleware-open" | "folder-controller-open" | "folder-ansible-open" | "folder-server-open" | "folder-client-open" | "folder-tasks-open" | "folder-android-open" | "folder-ios-open" | "folder-upload-open" | "folder-download-open" | "folder-tools-open" | "folder-helper-open" | "folder-serverless-open" | "folder-api-open" | "folder-app-open" | "folder-apollo-open" | "folder-archive-open" | "folder-batch-open" | "folder-buildkite-open" | "folder-cluster-open" | "folder-command-open" | "folder-constant-open" | "folder-container-open" | "folder-content-open" | "folder-context-open" | "folder-core-open" | "folder-delta-open" | "folder-dump-open" | "folder-examples-open" | "folder-environment-open" | "folder-functions-open" | "folder-generator-open" | "folder-hook-open" | "folder-job-open" | "folder-keys-open" | "folder-layout-open" | "folder-mail-open" | "folder-mappings-open" | "folder-meta-open" | "folder-changesets-open" | "folder-packages-open" | "folder-shared-open" | "folder-shader-open" | "folder-stack-open" | "folder-template-open" | "folder-utils-open" | "folder-supabase-open" | "folder-private-open" | "folder-error-open" | "folder-event-open" | "folder-secure-open" | "folder-custom-open" | "folder-mock-open" | "folder-syntax-open" | "folder-vm-open" | "folder-stylus-open" | "folder-flow-open" | "folder-rules-open" | "folder-review-open" | "folder-animation-open" | "folder-guard-open" | "folder-prisma-open" | "folder-pipe-open" | "folder-svg-open" | "folder-terraform-open" | "folder-mobile-open" | "folder-stencil-open" | "folder-firebase-open" | "folder-svelte-open" | "folder-update-open" | "folder-intellij-open" | "folder-azure-pipelines-open" | "folder-mjml-open" | "folder-admin-open" | "folder-scala-open" | "folder-connection-open" | "folder-quasar-open" | "folder-next-open" | "folder-cobol-open" | "folder-yarn-open" | "folder-husky-open" | "folder-storybook-open" | "folder-base-open" | "folder-cart-open" | "folder-home-open" | "folder-project-open" | "folder-interface-open" | "folder-netlify-open" | "folder-enum-open" | "folder-contract-open" | "folder-queue-open" | "folder-vercel-open" | "folder-cypress-open" | "folder-decorators-open" | "folder-java-open" | "folder-resolver-open" | "folder-angular-open" | "folder-unity-open" | "folder-pdf-open" | "folder-proto-open" | "folder-plastic-open" | "folder-gamemaker-open" | "folder-mercurial-open" | "folder-godot-open" | "html" | "pug" | "markdown" | "css" | "sass" | "less" | "json" | "jinja" | "proto" | "sublime" | "twine" | "yaml" | "xml" | "image" | "javascript" | "react" | "react_ts" | "routing" | "settings" | "typescript-def" | "markojs" | "astro" | "pdf" | "table" | "vscode" | "visualstudio" | "database" | "kusto" | "csharp" | "qsharp" | "zip" | "vala" | "zig" | "exe" | "hex" | "java" | "jar" | "javaclass" | "c" | "h" | "cpp" | "hpp" | "objective-c" | "objective-cpp" | "rc" | "go" | "python" | "python-misc" | "url" | "console" | "powershell" | "gradle" | "word" | "certificate" | "key" | "font" | "lib" | "ruby" | "fsharp" | "swift" | "arduino" | "docker" | "tex" | "powerpoint" | "video" | "virtual" | "email" | "audio" | "coffee" | "document" | "graphql" | "rust" | "raml" | "xaml" | "haskell" | "kotlin" | "otne" | "git" | "lua" | "clojure" | "groovy" | "r" | "dart" | "dart_generated" | "actionscript" | "mxml" | "autohotkey" | "flash" | "swc" | "cmake" | "assembly" | "vue" | "ocaml" | "odin" | "javascript-map" | "css-map" | "lock" | "handlebars" | "perl" | "haxe" | "test-ts" | "test-jsx" | "test-js" | "angular" | "angular-component" | "angular-guard" | "angular-service" | "angular-pipe" | "angular-directive" | "angular-resolver" | "puppet" | "elixir" | "livescript" | "erlang" | "twig" | "julia" | "elm" | "purescript" | "smarty" | "stylus" | "reason" | "bucklescript" | "merlin" | "verilog" | "mathematica" | "wolframlanguage" | "nunjucks" | "robot" | "solidity" | "autoit" | "haml" | "yang" | "mjml" | "terraform" | "laravel" | "applescript" | "cake" | "cucumber" | "nim" | "apiblueprint" | "riot" | "vfl" | "kl" | "postcss" | "todo" | "coldfusion" | "cabal" | "nix" | "slim" | "http" | "restql" | "kivy" | "graphcool" | "sbt" | "android" | "tune" | "gitlab" | "jenkins" | "figma" | "crystal" | "drone" | "cuda" | "log" | "dotjs" | "ejs" | "wakatime" | "processing" | "storybook" | "wepy" | "hcl" | "san" | "django" | "red" | "makefile" | "foxpro" | "i18n" | "webassembly" | "jupyter" | "d" | "mdx" | "mdsvex" | "ballerina" | "racket" | "bazel" | "mint" | "velocity" | "godot" | "godot-assets" | "azure-pipelines" | "azure" | "vagrant" | "prisma" | "razor" | "abc" | "asciidoc" | "edge" | "scheme" | "lisp" | "3d" | "svg" | "svelte" | "vim" | "moonscript" | "advpl_prw" | "advpl_ptm" | "advpl_tlpp" | "advpl_include" | "disc" | "fortran" | "tcl" | "liquid" | "prolog" | "coconut" | "sketch" | "pawn" | "forth" | "uml" | "meson" | "dhall" | "sml" | "opam" | "imba" | "drawio" | "pascal" | "shaderlab" | "sas" | "nuget" | "command" | "denizenscript" | "nginx" | "minecraft" | "rescript" | "rescript-interface" | "brainfuck" | "bicep" | "cobol" | "grain" | "lolcode" | "idris" | "pipeline" | "opa" | "windicss" | "scala" | "lilypond" | "vlang" | "chess" | "gemini" | "tsconfig" | "tauri" | "jsconfig" | "ada" | "horusec" | "coala" | "dinophp" | "teal" | "template" | "shader" | "siyuan" | "ndst" | "tobi" | "gleam" | "steadybit" | "tree" | "cadence" | "antlr" | "stylable" | "pinejs" | "gamemaker" | "tldraw" | "typst" | "mermaid" | "mojo" | "roblox" | "playwright" | "go-mod" | "gemfile" | "rubocop" | "semgrep" | "vue-config" | "nuxt" | "vercel" | "verdaccio" | "next" | "remix" | "posthtml" | "webpack" | "ionic" | "gulp" | "nodejs" | "npm" | "yarn" | "turborepo" | "babel" | "blitz" | "contributing" | "readme" | "changelog" | "architecture" | "credits" | "authors" | "flow" | "favicon" | "karma" | "bithound" | "svgo" | "appveyor" | "travis" | "codecov" | "sonarcloud" | "protractor" | "fusebox" | "heroku" | "editorconfig" | "bower" | "eslint" | "conduct" | "watchman" | "aurelia" | "auto" | "mocha" | "firebase" | "rollup" | "hack" | "hardhat" | "stylelint" | "code-climate" | "prettier" | "renovate" | "apollo" | "nodemon" | "webhint" | "browserlist" | "snyk" | "sequelize" | "gatsby" | "circleci" | "cloudfoundry" | "grunt" | "jest" | "fastlane" | "helm" | "wallaby" | "stencil" | "semantic-release" | "bitbucket" | "istanbul" | "tailwindcss" | "buildkite" | "netlify" | "nest" | "percy" | "gitpod" | "codeowners" | "gcp" | "husky" | "tilt" | "capacitor" | "adonis" | "commitlint" | "buck" | "nrwl" | "dune" | "roadmap" | "stryker" | "modernizr" | "stitches" | "replit" | "snowpack" | "quasar" | "dependabot" | "vite" | "vitest" | "lerna" | "textlint" | "sentry" | "phpunit" | "php-cs-fixer" | "robots" | "maven" | "serverless" | "supabase" | "ember" | "poetry" | "parcel" | "astyle" | "lighthouse" | "svgr" | "rome" | "cypress" | "plop" | "tobimake" | "pnpm" | "gridsome" | "caddy" | "bun" | "nano-staged" | "craco" | "mercurial" | "deno" | "plastic" | "unocss" | "ifanr-cloud" | "werf" | "panda" | "matlab" | "diff" | "typescript" | "php" | "salesforce" | "blink_light" | "jinja_light" | "crystal_light" | "drone_light" | "wakatime_light" | "hcl_light" | "uml_light" | "chess_light" | "tldraw_light" | "rubocop_light" | "vercel_light" | "next_light" | "remix_light" | "turborepo_light" | "auto_light" | "stylelint_light" | "code-climate_light" | "browserlist_light" | "circleci_light" | "semantic-release_light" | "netlify_light" | "stitches_light" | "snowpack_light" | "pnpm_light" | "bun_light" | "nano-staged_light" | "deno_light" | "folder-jinja_light" | "folder-intellij_light" | "folder-jinja-open_light" | "folder-intellij-open_light" | "file" | "folder" | "folder-open" | "folder-root" | "folder-root-open" | "php_elephant" | "php_elephant_pink" | "go_gopher" | "nodejs_alt" | "silverstripe";
8
+ runner: ({
9
+ command: string;
10
+ outputFile: string;
11
+ args?: string[] | undefined;
12
+ outputTransform?: ((args_0: unknown, ...args_1: unknown[]) => {
13
+ value: number;
14
+ slug: string;
15
+ score: number;
16
+ displayValue?: string | undefined;
17
+ details?: {
18
+ issues: {
19
+ message: string;
20
+ severity: "error" | "info" | "warning";
21
+ source?: {
22
+ file: string;
23
+ position?: {
24
+ startLine: number;
25
+ startColumn?: number | undefined;
26
+ endLine?: number | undefined;
27
+ endColumn?: number | undefined;
28
+ } | undefined;
29
+ } | undefined;
30
+ }[];
31
+ } | undefined;
32
+ }[] | Promise<{
33
+ value: number;
34
+ slug: string;
35
+ score: number;
36
+ displayValue?: string | undefined;
37
+ details?: {
38
+ issues: {
39
+ message: string;
40
+ severity: "error" | "info" | "warning";
41
+ source?: {
42
+ file: string;
43
+ position?: {
44
+ startLine: number;
45
+ startColumn?: number | undefined;
46
+ endLine?: number | undefined;
47
+ endColumn?: number | undefined;
48
+ } | undefined;
49
+ } | undefined;
50
+ }[];
51
+ } | undefined;
52
+ }[]>) | undefined;
53
+ } | ((args_0: ((args_0: unknown, ...args_1: unknown[]) => void) | undefined, ...args_1: unknown[]) => {
54
+ value: number;
55
+ slug: string;
56
+ score: number;
57
+ displayValue?: string | undefined;
58
+ details?: {
59
+ issues: {
60
+ message: string;
61
+ severity: "error" | "info" | "warning";
62
+ source?: {
63
+ file: string;
64
+ position?: {
65
+ startLine: number;
66
+ startColumn?: number | undefined;
67
+ endLine?: number | undefined;
68
+ endColumn?: number | undefined;
69
+ } | undefined;
70
+ } | undefined;
71
+ }[];
72
+ } | undefined;
73
+ }[] | Promise<{
74
+ value: number;
75
+ slug: string;
76
+ score: number;
77
+ displayValue?: string | undefined;
78
+ details?: {
79
+ issues: {
80
+ message: string;
81
+ severity: "error" | "info" | "warning";
82
+ source?: {
83
+ file: string;
84
+ position?: {
85
+ startLine: number;
86
+ startColumn?: number | undefined;
87
+ endLine?: number | undefined;
88
+ endColumn?: number | undefined;
89
+ } | undefined;
90
+ } | undefined;
91
+ }[];
92
+ } | undefined;
93
+ }[]>)) & ({
94
+ command: string;
95
+ outputFile: string;
96
+ args?: string[] | undefined;
97
+ outputTransform?: ((args_0: unknown, ...args_1: unknown[]) => {
98
+ value: number;
99
+ slug: string;
100
+ score: number;
101
+ displayValue?: string | undefined;
102
+ details?: {
103
+ issues: {
104
+ message: string;
105
+ severity: "error" | "info" | "warning";
106
+ source?: {
107
+ file: string;
108
+ position?: {
109
+ startLine: number;
110
+ startColumn?: number | undefined;
111
+ endLine?: number | undefined;
112
+ endColumn?: number | undefined;
113
+ } | undefined;
114
+ } | undefined;
115
+ }[];
116
+ } | undefined;
117
+ }[] | Promise<{
118
+ value: number;
119
+ slug: string;
120
+ score: number;
121
+ displayValue?: string | undefined;
122
+ details?: {
123
+ issues: {
124
+ message: string;
125
+ severity: "error" | "info" | "warning";
126
+ source?: {
127
+ file: string;
128
+ position?: {
129
+ startLine: number;
130
+ startColumn?: number | undefined;
131
+ endLine?: number | undefined;
132
+ endColumn?: number | undefined;
133
+ } | undefined;
134
+ } | undefined;
135
+ }[];
136
+ } | undefined;
137
+ }[]>) | undefined;
138
+ } | ((args_0: ((args_0: unknown, ...args_1: unknown[]) => void) | undefined, ...args_1: unknown[]) => {
139
+ value: number;
140
+ slug: string;
141
+ score: number;
142
+ displayValue?: string | undefined;
143
+ details?: {
144
+ issues: {
145
+ message: string;
146
+ severity: "error" | "info" | "warning";
147
+ source?: {
148
+ file: string;
149
+ position?: {
150
+ startLine: number;
151
+ startColumn?: number | undefined;
152
+ endLine?: number | undefined;
153
+ endColumn?: number | undefined;
154
+ } | undefined;
155
+ } | undefined;
156
+ }[];
157
+ } | undefined;
158
+ }[] | Promise<{
159
+ value: number;
160
+ slug: string;
161
+ score: number;
162
+ displayValue?: string | undefined;
163
+ details?: {
164
+ issues: {
165
+ message: string;
166
+ severity: "error" | "info" | "warning";
167
+ source?: {
168
+ file: string;
169
+ position?: {
170
+ startLine: number;
171
+ startColumn?: number | undefined;
172
+ endLine?: number | undefined;
173
+ endColumn?: number | undefined;
174
+ } | undefined;
175
+ } | undefined;
176
+ }[];
177
+ } | undefined;
178
+ }[]>) | undefined);
179
+ audits: {
180
+ title: string;
181
+ slug: string;
182
+ description?: string | undefined;
183
+ docsUrl?: string | undefined;
184
+ }[];
185
+ description?: string | undefined;
186
+ docsUrl?: string | undefined;
187
+ packageName?: string | undefined;
188
+ version?: string | undefined;
189
+ groups?: {
190
+ title: string;
191
+ slug: string;
192
+ refs: {
193
+ slug: string;
194
+ weight: number;
195
+ }[];
196
+ description?: string | undefined;
197
+ docsUrl?: string | undefined;
198
+ }[] | undefined;
199
+ }[];
200
+ persist: {
201
+ outputDir: string;
202
+ filename: string;
203
+ format?: ("json" | "md")[] | undefined;
204
+ };
205
+ categories: {
206
+ title: string;
207
+ slug: string;
208
+ refs: {
209
+ type: "audit" | "group";
210
+ slug: string;
211
+ weight: number;
212
+ plugin: string;
213
+ }[];
214
+ description?: string | undefined;
215
+ docsUrl?: string | undefined;
216
+ isBinary?: boolean | undefined;
217
+ }[];
218
+ upload?: {
219
+ server: string;
220
+ apiKey: string;
221
+ organization: string;
222
+ project: string;
223
+ } | undefined;
224
+ } & {
225
+ config: string;
226
+ } & import("@code-pushup/core").GlobalOptions & OnlyPluginsOptions>;
@@ -0,0 +1,5 @@
1
+ import { Options } from 'yargs';
2
+ import { CoreConfigCliOptions } from './model';
3
+ type ArgNames = keyof CoreConfigCliOptions;
4
+ export declare function yargsCoreConfigOptionsDefinition(): Record<ArgNames, Options>;
5
+ export {};
@@ -0,0 +1 @@
1
+ export declare function filterKebabCaseKeys<T extends Record<string, unknown>>(obj: T): T;
@@ -0,0 +1,3 @@
1
+ import { Options } from 'yargs';
2
+ import { GeneralCliOptions } from './model';
3
+ export declare function yargsGlobalOptionsDefinition(): Record<keyof GeneralCliOptions, Options>;
@@ -0,0 +1,20 @@
1
+ import { GlobalOptions } from '@code-pushup/core';
2
+ import { Format } from '@code-pushup/models';
3
+ export type GeneralCliOptions = {
4
+ config: string;
5
+ } & GlobalOptions;
6
+ export type PersistConfigCliOptions = {
7
+ 'persist.outputDir': string;
8
+ 'persist.filename': string;
9
+ 'persist.format': Format;
10
+ };
11
+ export type UploadConfigCliOptions = {
12
+ 'upload.organization': string;
13
+ 'upload.project': string;
14
+ 'upload.apiKey': string;
15
+ 'upload.server': string;
16
+ };
17
+ export type CoreConfigCliOptions = PersistConfigCliOptions & UploadConfigCliOptions;
18
+ export type OnlyPluginsOptions = {
19
+ onlyPlugins: string[];
20
+ };
@@ -0,0 +1,2 @@
1
+ import { Options } from 'yargs';
2
+ export declare const onlyPluginsOption: Options;
@@ -0,0 +1,10 @@
1
+ import { CoreConfig } from '@code-pushup/models';
2
+ export declare function filterPluginsByOnlyPluginsOption(plugins: CoreConfig['plugins'], { onlyPlugins }: {
3
+ onlyPlugins?: string[];
4
+ }): CoreConfig['plugins'];
5
+ export declare function filterCategoryByOnlyPluginsOption(categories: CoreConfig['categories'], { onlyPlugins }: {
6
+ onlyPlugins?: string[];
7
+ }): CoreConfig['categories'];
8
+ export declare function validateOnlyPluginsOption(plugins: CoreConfig['plugins'], { onlyPlugins }: {
9
+ onlyPlugins?: string[];
10
+ }): void;
@@ -0,0 +1 @@
1
+ export declare function logErrorBeforeThrow<T extends (...args: any[]) => any>(fn: T): T;
@@ -0,0 +1,4 @@
1
+ import { MiddlewareFunction } from 'yargs';
2
+ export declare const middlewares: {
3
+ middlewareFunction: MiddlewareFunction;
4
+ }[];
@@ -0,0 +1,12 @@
1
+ export declare const options: {
2
+ "persist.outputDir": import("yargs").Options;
3
+ "persist.filename": import("yargs").Options;
4
+ "persist.format": import("yargs").Options;
5
+ "upload.organization": import("yargs").Options;
6
+ "upload.project": import("yargs").Options;
7
+ "upload.apiKey": import("yargs").Options;
8
+ "upload.server": import("yargs").Options;
9
+ progress: import("yargs").Options;
10
+ config: import("yargs").Options;
11
+ verbose: import("yargs").Options;
12
+ };
@@ -0,0 +1,8 @@
1
+ export declare function yargsConfigCommandObject(): {
2
+ command: string;
3
+ describe: string;
4
+ builder: {
5
+ onlyPlugins: import("yargs").Options;
6
+ };
7
+ handler: (yargsArgs: import("yargs").ArgumentsCamelCase<{}>) => void;
8
+ };
@@ -0,0 +1,6 @@
1
+ import { ArgumentsCamelCase } from 'yargs';
2
+ export declare function yargsUploadCommandObject(): {
3
+ command: string;
4
+ describe: string;
5
+ handler: <T>(args: ArgumentsCamelCase<T>) => Promise<void>;
6
+ };
@@ -0,0 +1,22 @@
1
+ import { Argv, CommandModule, Options } from 'yargs';
2
+ /**
3
+ * returns configurable yargs CLI for code-pushup
4
+ *
5
+ * @example
6
+ * yargsCli(hideBin(process.argv))
7
+ * // bootstrap CLI; format arguments
8
+ * .argv;
9
+ */
10
+ export declare function yargsCli<T = unknown>(argv: string[], cfg: {
11
+ usageMessage?: string;
12
+ scriptName?: string;
13
+ commands?: CommandModule[];
14
+ options?: {
15
+ [key: string]: Options;
16
+ };
17
+ middlewares?: {
18
+ middlewareFunction: unknown;
19
+ applyBeforeValidation?: boolean;
20
+ }[];
21
+ noExitProcess?: boolean;
22
+ }): Argv<T>;