@ganakailabs/cloudeval-cli 0.20.2 → 0.21.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/README.md +30 -12
- package/dist/{App-EJ63ARJ3.js → App-D4HXP4GR.js} +1717 -407
- package/dist/{Banner-7CWUTKMQ.js → Banner-6FGLG7VG.js} +5 -3
- package/dist/Onboarding-4N4WIORR.js +8 -0
- package/dist/{ReportDashboard-T63UGA7M.js → ReportDashboard-DOAUB727.js} +1 -1
- package/dist/{chunk-ETTAAQ6J.js → chunk-GXHDB5LK.js} +1 -1
- package/dist/{chunk-2D4BE3OS.js → chunk-LDDHLUZH.js} +64 -12
- package/dist/{chunk-VUFGCS6W.js → chunk-LGJOACZ5.js} +7 -5
- package/dist/{chunk-2GTSKMHA.js → chunk-Q5D5HYWW.js} +2 -2
- package/dist/chunk-ZDKRIOMB.js +68 -0
- package/dist/cli.js +60 -60
- package/dist/{dist-TBAQ5KOK.js → dist-AGQQPJUD.js} +1 -1
- package/package.json +2 -2
- package/sbom.spdx.json +1 -1
- package/dist/Onboarding-3NZCPBCO.js +0 -8
- package/dist/chunk-QKZCKI55.js +0 -45
package/dist/cli.js
CHANGED
|
@@ -33,10 +33,10 @@ import {
|
|
|
33
33
|
normalizeApiBase,
|
|
34
34
|
redactSensitiveSecrets,
|
|
35
35
|
redactSensitiveText
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-LDDHLUZH.js";
|
|
37
37
|
import {
|
|
38
38
|
CLI_VERSION
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-GXHDB5LK.js";
|
|
40
40
|
|
|
41
41
|
// src/runtime/prepareInk.ts
|
|
42
42
|
import fs from "fs";
|
|
@@ -1604,7 +1604,7 @@ var resolveReportProjectId = async ({
|
|
|
1604
1604
|
if (!token) {
|
|
1605
1605
|
throw new Error("No project specified. Use --project <id> for report access.");
|
|
1606
1606
|
}
|
|
1607
|
-
const resolvedWorkspace = workspace ?? await import("./dist-
|
|
1607
|
+
const resolvedWorkspace = workspace ?? await import("./dist-AGQQPJUD.js").then((core) => ({
|
|
1608
1608
|
checkUserStatus: core.checkUserStatus,
|
|
1609
1609
|
getProjects: core.getProjects
|
|
1610
1610
|
}));
|
|
@@ -1633,7 +1633,7 @@ var warnIfAccessKeyFromCliOption = (options, command) => {
|
|
|
1633
1633
|
};
|
|
1634
1634
|
var resolveAuthContext = async (options, command, deps) => {
|
|
1635
1635
|
const baseUrl = await deps.resolveBaseUrl(options, command);
|
|
1636
|
-
const core = await import("./dist-
|
|
1636
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
1637
1637
|
core.assertSecureBaseUrl(baseUrl);
|
|
1638
1638
|
warnIfAccessKeyFromCliOption(options, command);
|
|
1639
1639
|
let accessKey = options.accessKey;
|
|
@@ -1719,7 +1719,7 @@ var resolveToken = async (options, baseUrl, deps, command) => {
|
|
|
1719
1719
|
if (options.accessKey) {
|
|
1720
1720
|
return options.accessKey;
|
|
1721
1721
|
}
|
|
1722
|
-
const { getAuthToken } = await import("./dist-
|
|
1722
|
+
const { getAuthToken } = await import("./dist-AGQQPJUD.js");
|
|
1723
1723
|
try {
|
|
1724
1724
|
return await getAuthToken({
|
|
1725
1725
|
accessKey: options.accessKey,
|
|
@@ -1730,7 +1730,7 @@ var resolveToken = async (options, baseUrl, deps, command) => {
|
|
|
1730
1730
|
if (!canLogin) {
|
|
1731
1731
|
throw error;
|
|
1732
1732
|
}
|
|
1733
|
-
const { login } = await import("./dist-
|
|
1733
|
+
const { login } = await import("./dist-AGQQPJUD.js");
|
|
1734
1734
|
process.stderr.write("Authentication required. Starting login flow...\n");
|
|
1735
1735
|
const token = await login(baseUrl, {
|
|
1736
1736
|
headless: Boolean(process.env.SSH_TTY || process.env.CLOUDEVAL_HEADLESS_LOGIN)
|
|
@@ -1766,7 +1766,7 @@ var writeReport = async (report, options, tuiDefault) => {
|
|
|
1766
1766
|
const [{ default: React2 }, { render }, { ReportDashboard }] = await Promise.all([
|
|
1767
1767
|
import("react"),
|
|
1768
1768
|
import("ink"),
|
|
1769
|
-
import("./ReportDashboard-
|
|
1769
|
+
import("./ReportDashboard-DOAUB727.js")
|
|
1770
1770
|
]);
|
|
1771
1771
|
render(React2.createElement(ReportDashboard, {
|
|
1772
1772
|
report,
|
|
@@ -1896,7 +1896,7 @@ var registerReportsCommand = (program2, deps) => {
|
|
|
1896
1896
|
token,
|
|
1897
1897
|
requestedProjectId: options.project
|
|
1898
1898
|
});
|
|
1899
|
-
const core = await import("./dist-
|
|
1899
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
1900
1900
|
const status = token ? await core.checkUserStatus(baseUrl, token) : void 0;
|
|
1901
1901
|
const reports2 = await core.listReports({
|
|
1902
1902
|
baseUrl,
|
|
@@ -1918,7 +1918,7 @@ var registerReportsCommand = (program2, deps) => {
|
|
|
1918
1918
|
try {
|
|
1919
1919
|
const baseUrl = await deps.resolveBaseUrl(options, command);
|
|
1920
1920
|
const token = await resolveToken(options, baseUrl, deps, command);
|
|
1921
|
-
const core = await import("./dist-
|
|
1921
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
1922
1922
|
const status = token ? await core.checkUserStatus(baseUrl, token) : void 0;
|
|
1923
1923
|
const projectId = await resolveReportProjectId({
|
|
1924
1924
|
baseUrl,
|
|
@@ -2021,7 +2021,7 @@ var registerReportsCommand = (program2, deps) => {
|
|
|
2021
2021
|
try {
|
|
2022
2022
|
const baseUrl = await deps.resolveBaseUrl(options, command);
|
|
2023
2023
|
const token = await resolveToken(options, baseUrl, deps, command);
|
|
2024
|
-
const core = await import("./dist-
|
|
2024
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
2025
2025
|
const status = token ? await core.checkUserStatus(baseUrl, token) : void 0;
|
|
2026
2026
|
const projectId = await resolveReportProjectId({
|
|
2027
2027
|
baseUrl,
|
|
@@ -2091,7 +2091,7 @@ var registerReportsCommand = (program2, deps) => {
|
|
|
2091
2091
|
token,
|
|
2092
2092
|
requestedProjectId: options.project
|
|
2093
2093
|
});
|
|
2094
|
-
const core = await import("./dist-
|
|
2094
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
2095
2095
|
const status = token ? await core.checkUserStatus(baseUrl, token) : void 0;
|
|
2096
2096
|
const report = await core.getWafReport({
|
|
2097
2097
|
baseUrl,
|
|
@@ -2130,7 +2130,7 @@ var registerReportsCommand = (program2, deps) => {
|
|
|
2130
2130
|
token,
|
|
2131
2131
|
requestedProjectId: options.project
|
|
2132
2132
|
});
|
|
2133
|
-
const core = await import("./dist-
|
|
2133
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
2134
2134
|
const status = token ? await core.checkUserStatus(baseUrl, token) : void 0;
|
|
2135
2135
|
const report = await core.getReport({
|
|
2136
2136
|
baseUrl,
|
|
@@ -2158,7 +2158,7 @@ var registerReportsCommand = (program2, deps) => {
|
|
|
2158
2158
|
token,
|
|
2159
2159
|
requestedProjectId: options.project
|
|
2160
2160
|
});
|
|
2161
|
-
const core = await import("./dist-
|
|
2161
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
2162
2162
|
const status = token ? await core.checkUserStatus(baseUrl, token) : void 0;
|
|
2163
2163
|
const report = await core.getCostReport({
|
|
2164
2164
|
baseUrl,
|
|
@@ -2187,7 +2187,7 @@ var registerReportsCommand = (program2, deps) => {
|
|
|
2187
2187
|
token,
|
|
2188
2188
|
requestedProjectId: options.project
|
|
2189
2189
|
});
|
|
2190
|
-
const core = await import("./dist-
|
|
2190
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
2191
2191
|
const status = token ? await core.checkUserStatus(baseUrl, token) : void 0;
|
|
2192
2192
|
const report = await core.getWafReport({
|
|
2193
2193
|
baseUrl,
|
|
@@ -3529,7 +3529,7 @@ var runChatRecipe = async (recipe, prompt2, options, command, deps) => {
|
|
|
3529
3529
|
});
|
|
3530
3530
|
progressWriter.write({ type: "auth", step: "auth", message: "Resolving authentication" });
|
|
3531
3531
|
const context = await resolveAuthContext(options, command, deps);
|
|
3532
|
-
const core = await import("./dist-
|
|
3532
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
3533
3533
|
progressWriter.write({
|
|
3534
3534
|
type: "request",
|
|
3535
3535
|
step: "project",
|
|
@@ -4778,7 +4778,7 @@ var configureDiagramExportCommand = (command, deps) => addAuthOptions(command, d
|
|
|
4778
4778
|
const context = requireAuthUser(
|
|
4779
4779
|
await resolveAuthContext(options, actionCommand, deps)
|
|
4780
4780
|
);
|
|
4781
|
-
const core = await import("./dist-
|
|
4781
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
4782
4782
|
const projects = await core.getProjects(
|
|
4783
4783
|
context.baseUrl,
|
|
4784
4784
|
context.token,
|
|
@@ -4855,7 +4855,7 @@ var registerProjectsCommand = (program2, deps) => {
|
|
|
4855
4855
|
addCommon(addAuthOptions(projects.command("list").description("List projects"), deps.defaultBaseUrl)).action(async (options, command) => {
|
|
4856
4856
|
try {
|
|
4857
4857
|
const context = await resolveAuthContext(options, command, deps);
|
|
4858
|
-
const core = await import("./dist-
|
|
4858
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
4859
4859
|
const data = await listProjectsForContext(core, context);
|
|
4860
4860
|
const url = buildFrontendUrl({ baseUrl: frontendBase(context, options), target: "projects" });
|
|
4861
4861
|
await writeProjectListOutput({ data, options, frontendUrl: url });
|
|
@@ -4873,7 +4873,7 @@ var registerProjectsCommand = (program2, deps) => {
|
|
|
4873
4873
|
).action(async (id, options, command) => {
|
|
4874
4874
|
try {
|
|
4875
4875
|
const context = await resolveAuthContext(options, command, deps);
|
|
4876
|
-
const core = await import("./dist-
|
|
4876
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
4877
4877
|
const list = await listProjectsForContext(core, context);
|
|
4878
4878
|
const data = list.find((project) => project.id === id);
|
|
4879
4879
|
if (!data) {
|
|
@@ -4937,7 +4937,7 @@ var registerProjectsCommand = (program2, deps) => {
|
|
|
4937
4937
|
addCommon(addAuthOptions(projects.command("create").description("Create a quick template project"), deps.defaultBaseUrl)).option("--template-url <url>", "Template URL").option("--template-file <path>", "Local JSON template file").option("--parameters-file <path>", "Local JSON parameters file").option("--parameters-url <url>", "Parameters file URL").option("--name <name>", "Project name").option("--description <text>", "Project description").option("--provider <provider>", "Cloud provider: azure, aws, gcp").action(async (options, command) => {
|
|
4938
4938
|
try {
|
|
4939
4939
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
4940
|
-
const core = await import("./dist-
|
|
4940
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
4941
4941
|
const template = await fileBlob(options.templateFile);
|
|
4942
4942
|
const parameters = await fileBlob(options.parametersFile);
|
|
4943
4943
|
const inferredName = options.name || (options.templateFile ? path3.basename(options.templateFile, path3.extname(options.templateFile)) : void 0);
|
|
@@ -5060,7 +5060,7 @@ var registerConnectionsCommand = (program2, deps) => {
|
|
|
5060
5060
|
addCommon2(addAuthOptions(connections.command("list").description("List connections"), deps.defaultBaseUrl)).action(async (options, command) => {
|
|
5061
5061
|
try {
|
|
5062
5062
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
5063
|
-
const core = await import("./dist-
|
|
5063
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5064
5064
|
const data = await core.listConnections({
|
|
5065
5065
|
baseUrl: context.baseUrl,
|
|
5066
5066
|
authToken: context.token,
|
|
@@ -5085,7 +5085,7 @@ var registerConnectionsCommand = (program2, deps) => {
|
|
|
5085
5085
|
).action(async (id, options, command) => {
|
|
5086
5086
|
try {
|
|
5087
5087
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
5088
|
-
const core = await import("./dist-
|
|
5088
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5089
5089
|
const data = await core.getConnection({
|
|
5090
5090
|
baseUrl: context.baseUrl,
|
|
5091
5091
|
authToken: context.token,
|
|
@@ -5423,7 +5423,7 @@ var checkoutReturnUrl = (context, options) => options.returnTo || billingUrl(con
|
|
|
5423
5423
|
var runTopUpCheckout = async (commandName, packId, options, command, deps) => {
|
|
5424
5424
|
try {
|
|
5425
5425
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
5426
|
-
const core = await import("./dist-
|
|
5426
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5427
5427
|
const returnTo = checkoutReturnUrl(context, options);
|
|
5428
5428
|
const session = await core.createTopUpCheckoutSession({
|
|
5429
5429
|
baseUrl: context.baseUrl,
|
|
@@ -5463,7 +5463,7 @@ var registerBillingCommands = (program2, deps) => {
|
|
|
5463
5463
|
).action(async (options, command) => {
|
|
5464
5464
|
try {
|
|
5465
5465
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
5466
|
-
const core = await import("./dist-
|
|
5466
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5467
5467
|
const range = rangeToDates("30d");
|
|
5468
5468
|
const [entitlement, usageSummary] = await Promise.all([
|
|
5469
5469
|
core.getBillingEntitlement({
|
|
@@ -5493,7 +5493,7 @@ var registerBillingCommands = (program2, deps) => {
|
|
|
5493
5493
|
addCommon3(addAuthOptions(billing.command("summary").description("Show billing summary"), deps.defaultBaseUrl)).action(async (options, command) => {
|
|
5494
5494
|
try {
|
|
5495
5495
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
5496
|
-
const core = await import("./dist-
|
|
5496
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5497
5497
|
const range = rangeToDates("30d");
|
|
5498
5498
|
const [entitlement, subscriptionStatus, usageSummary] = await Promise.all([
|
|
5499
5499
|
core.getBillingEntitlement({ baseUrl: context.baseUrl, authToken: context.token }),
|
|
@@ -5529,7 +5529,7 @@ var registerBillingCommands = (program2, deps) => {
|
|
|
5529
5529
|
addCommon3(addAuthOptions(billing.command("plans").description("Show billing plans"), deps.defaultBaseUrl)).action(async (options, command) => {
|
|
5530
5530
|
try {
|
|
5531
5531
|
const context = await resolveAuthContext(options, command, deps);
|
|
5532
|
-
const core = await import("./dist-
|
|
5532
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5533
5533
|
const data = await core.getBillingConfig({ baseUrl: context.baseUrl, authToken: context.token });
|
|
5534
5534
|
const url = billingUrl(context, { ...options, tab: "plans" });
|
|
5535
5535
|
await write("billing plans", data, options, url);
|
|
@@ -5541,7 +5541,7 @@ var registerBillingCommands = (program2, deps) => {
|
|
|
5541
5541
|
addCommon3(addAuthOptions(billing.command("usage").description("Show billing usage summary"), deps.defaultBaseUrl)).option("--range <range>", "Usage range: 7d, 30d, 90d, all", "30d").option("--start-at <iso>", "Start timestamp").option("--end-at <iso>", "End timestamp").option("--granularity <value>", "Granularity: hour, day, month", "day").option("--action-type <type>", "Action type filter").option("--model <name>", "Model filter").option("--outcome <outcome>", "Outcome filter").option("--charge-status <status>", "Charge status filter").action(async (options, command) => {
|
|
5542
5542
|
try {
|
|
5543
5543
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
5544
|
-
const core = await import("./dist-
|
|
5544
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5545
5545
|
const range = rangeToDates(options.range);
|
|
5546
5546
|
const data = await core.getBillingUsageSummary({
|
|
5547
5547
|
baseUrl: context.baseUrl,
|
|
@@ -5564,7 +5564,7 @@ var registerBillingCommands = (program2, deps) => {
|
|
|
5564
5564
|
addCommon3(addAuthOptions(billing.command("ledger").description("Show billing ledger"), deps.defaultBaseUrl)).option("--range <range>", "Usage range: 7d, 30d, 90d, all", "30d").option("--start-at <iso>", "Start timestamp").option("--end-at <iso>", "End timestamp").option("--action-type <type>", "Action type filter").option("--model <name>", "Model filter").option("--outcome <outcome>", "Outcome filter").option("--charge-status <status>", "Charge status filter").option("--limit <n>", "Page size", "25").option("--cursor <cursor>", "Pagination cursor").action(async (options, command) => {
|
|
5565
5565
|
try {
|
|
5566
5566
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
5567
|
-
const core = await import("./dist-
|
|
5567
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5568
5568
|
const range = rangeToDates(options.range);
|
|
5569
5569
|
const data = await core.getBillingUsageLedger({
|
|
5570
5570
|
baseUrl: context.baseUrl,
|
|
@@ -5592,7 +5592,7 @@ var registerBillingCommands = (program2, deps) => {
|
|
|
5592
5592
|
addCommon3(addAuthOptions(billing.command(name).description(`Show billing ${name}`), deps.defaultBaseUrl)).option("--limit <n>", "Result limit", "25").action(async (options, command) => {
|
|
5593
5593
|
try {
|
|
5594
5594
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
5595
|
-
const core = await import("./dist-
|
|
5595
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5596
5596
|
const data = await core[getter]({
|
|
5597
5597
|
baseUrl: context.baseUrl,
|
|
5598
5598
|
authToken: context.token,
|
|
@@ -5610,7 +5610,7 @@ var registerBillingCommands = (program2, deps) => {
|
|
|
5610
5610
|
addCommon3(addAuthOptions(topups, deps.defaultBaseUrl)).option("--limit <n>", "Result limit", "25").action(async (options, command) => {
|
|
5611
5611
|
try {
|
|
5612
5612
|
const context = requireAuthUser(await resolveAuthContext(options, command, deps));
|
|
5613
|
-
const core = await import("./dist-
|
|
5613
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
5614
5614
|
const data = await core.getTopUpPacks({
|
|
5615
5615
|
baseUrl: context.baseUrl,
|
|
5616
5616
|
authToken: context.token
|
|
@@ -8008,7 +8008,7 @@ var reportsFrontendUrl = (config, input) => buildFrontendUrl({
|
|
|
8008
8008
|
reportVerbosity: input.reportVerbosity
|
|
8009
8009
|
});
|
|
8010
8010
|
var resolveAuth = async (config, options = {}) => {
|
|
8011
|
-
const core = await import("./dist-
|
|
8011
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
8012
8012
|
core.assertSecureBaseUrl(config.baseUrl);
|
|
8013
8013
|
let token;
|
|
8014
8014
|
try {
|
|
@@ -8108,7 +8108,7 @@ var assertModelAvailable = async (config, token) => {
|
|
|
8108
8108
|
if (!config.model) {
|
|
8109
8109
|
return;
|
|
8110
8110
|
}
|
|
8111
|
-
const core = await import("./dist-
|
|
8111
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
8112
8112
|
try {
|
|
8113
8113
|
const response = await fetch(
|
|
8114
8114
|
`${core.normalizeApiBase(config.baseUrl)}/models`,
|
|
@@ -8365,7 +8365,7 @@ var buildToolHandlers = (serverOptions) => {
|
|
|
8365
8365
|
});
|
|
8366
8366
|
handlers.set("agent_profiles_list", async (args) => {
|
|
8367
8367
|
const config = await resolveInvocationConfig(serverOptions, args);
|
|
8368
|
-
const core = await import("./dist-
|
|
8368
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
8369
8369
|
const data = await listProfilesForDiscovery(core, config.baseUrl);
|
|
8370
8370
|
return withEnvelope({
|
|
8371
8371
|
command: "agents list",
|
|
@@ -8378,7 +8378,7 @@ var buildToolHandlers = (serverOptions) => {
|
|
|
8378
8378
|
throw new Error("profileId is required.");
|
|
8379
8379
|
}
|
|
8380
8380
|
const config = await resolveInvocationConfig(serverOptions, args);
|
|
8381
|
-
const core = await import("./dist-
|
|
8381
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
8382
8382
|
const data = await getProfileForDiscovery(core, config.baseUrl, profileId);
|
|
8383
8383
|
return withEnvelope({
|
|
8384
8384
|
command: "agents show",
|
|
@@ -9015,7 +9015,7 @@ var buildToolHandlers = (serverOptions) => {
|
|
|
9015
9015
|
});
|
|
9016
9016
|
handlers.set("auth_status", async (args) => {
|
|
9017
9017
|
const config = await resolveInvocationConfig(serverOptions, args);
|
|
9018
|
-
const core = await import("./dist-
|
|
9018
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
9019
9019
|
const data = await core.getAuthStatus(config.baseUrl, { validate: true });
|
|
9020
9020
|
return withEnvelope({
|
|
9021
9021
|
command: "auth status",
|
|
@@ -9024,7 +9024,7 @@ var buildToolHandlers = (serverOptions) => {
|
|
|
9024
9024
|
});
|
|
9025
9025
|
handlers.set("status", async (args) => {
|
|
9026
9026
|
const config = await resolveInvocationConfig(serverOptions, args);
|
|
9027
|
-
const core = await import("./dist-
|
|
9027
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
9028
9028
|
const auth = await core.getAuthStatus(config.baseUrl, { validate: true });
|
|
9029
9029
|
return withEnvelope({
|
|
9030
9030
|
command: "status",
|
|
@@ -9055,7 +9055,7 @@ var buildToolHandlers = (serverOptions) => {
|
|
|
9055
9055
|
}
|
|
9056
9056
|
];
|
|
9057
9057
|
try {
|
|
9058
|
-
const core = await import("./dist-
|
|
9058
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
9059
9059
|
core.assertSecureBaseUrl(config.baseUrl);
|
|
9060
9060
|
checks.push({
|
|
9061
9061
|
id: "base-url-secure",
|
|
@@ -9575,7 +9575,7 @@ var buildToolHandlers = (serverOptions) => {
|
|
|
9575
9575
|
} catch {
|
|
9576
9576
|
token = config.accessKey;
|
|
9577
9577
|
}
|
|
9578
|
-
const core = await import("./dist-
|
|
9578
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
9579
9579
|
const data = await core.getBillingConfig({
|
|
9580
9580
|
baseUrl: config.baseUrl,
|
|
9581
9581
|
authToken: token
|
|
@@ -10409,7 +10409,7 @@ var registerCapabilitiesCommand = (program2, deps) => {
|
|
|
10409
10409
|
warnIfAccessKeyFromCliOption(options, command);
|
|
10410
10410
|
let data = capabilities;
|
|
10411
10411
|
if (options.live) {
|
|
10412
|
-
const core = await import("./dist-
|
|
10412
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
10413
10413
|
const baseUrl = await deps.resolveBaseUrl(options, command);
|
|
10414
10414
|
const accessKey = options.accessKeyStdin ? await deps.readStdinValue() : options.accessKey;
|
|
10415
10415
|
const token = await core.getAuthToken({ accessKey, baseUrl });
|
|
@@ -10547,7 +10547,7 @@ var writeCredentialOutput = async (input) => {
|
|
|
10547
10547
|
};
|
|
10548
10548
|
var resolveCoreAuth = async (options, command, deps) => {
|
|
10549
10549
|
const context = await resolveAuthContext(options, command, deps);
|
|
10550
|
-
const core = await import("./dist-
|
|
10550
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
10551
10551
|
return { ...context, core };
|
|
10552
10552
|
};
|
|
10553
10553
|
var parseCapabilities = (value) => value?.split(",").map((item) => item.trim()).filter(Boolean);
|
|
@@ -10864,7 +10864,7 @@ var registerAgentsCommand = (program2, deps) => {
|
|
|
10864
10864
|
const agents = program2.command("agents").description("CloudEval Agent Profile utilities");
|
|
10865
10865
|
addAgentOutputOptions(agents.command("list").description("List Agent Profiles"), deps).action(async (options, command) => {
|
|
10866
10866
|
const baseUrl = await deps.resolveBaseUrl(options, command);
|
|
10867
|
-
const core = await import("./dist-
|
|
10867
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
10868
10868
|
core.assertSecureBaseUrl(baseUrl);
|
|
10869
10869
|
const data = await listProfilesForDiscovery2(core, baseUrl);
|
|
10870
10870
|
await writeProfiles({
|
|
@@ -10880,7 +10880,7 @@ var registerAgentsCommand = (program2, deps) => {
|
|
|
10880
10880
|
deps
|
|
10881
10881
|
).action(async (profileId, options, command) => {
|
|
10882
10882
|
const baseUrl = await deps.resolveBaseUrl(options, command);
|
|
10883
|
-
const core = await import("./dist-
|
|
10883
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
10884
10884
|
core.assertSecureBaseUrl(baseUrl);
|
|
10885
10885
|
const data = await getProfileForDiscovery2(core, baseUrl, profileId);
|
|
10886
10886
|
await writeProfiles({
|
|
@@ -10899,7 +10899,7 @@ var registerAgentsCommand = (program2, deps) => {
|
|
|
10899
10899
|
const cliProfile = getActiveConfigProfile(command);
|
|
10900
10900
|
const cliConfig = await loadCliConfig(cliProfile);
|
|
10901
10901
|
const auth = await resolveAuthContext(options, command, deps);
|
|
10902
|
-
const core = await import("./dist-
|
|
10902
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
10903
10903
|
const profileResponse = await core.getAgentProfile({
|
|
10904
10904
|
baseUrl: auth.baseUrl,
|
|
10905
10905
|
authToken: auth.token,
|
|
@@ -11397,7 +11397,7 @@ var registerDiagnosticsCommands = (program2, deps) => {
|
|
|
11397
11397
|
const baseUrl = await deps.resolveBaseUrl(options, command);
|
|
11398
11398
|
const profile = getActiveConfigProfile(command);
|
|
11399
11399
|
const config = await loadCliConfig(profile);
|
|
11400
|
-
const core = await import("./dist-
|
|
11400
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
11401
11401
|
const auth = await core.getAuthStatus(baseUrl, { validate: true });
|
|
11402
11402
|
if (options.format === "text" || !options.format) {
|
|
11403
11403
|
process.stdout.write(
|
|
@@ -11447,7 +11447,7 @@ var registerDiagnosticsCommands = (program2, deps) => {
|
|
|
11447
11447
|
detail: getCliConfigPath(profile)
|
|
11448
11448
|
});
|
|
11449
11449
|
try {
|
|
11450
|
-
const core = await import("./dist-
|
|
11450
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
11451
11451
|
core.assertSecureBaseUrl(baseUrl);
|
|
11452
11452
|
checks.push({
|
|
11453
11453
|
id: "base-url-secure",
|
|
@@ -11547,7 +11547,7 @@ var resolveToken2 = async (options, deps, baseUrl, command) => {
|
|
|
11547
11547
|
return options.accessKey;
|
|
11548
11548
|
}
|
|
11549
11549
|
try {
|
|
11550
|
-
const core = await import("./dist-
|
|
11550
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
11551
11551
|
return await core.getAuthToken({
|
|
11552
11552
|
baseUrl
|
|
11553
11553
|
});
|
|
@@ -11631,7 +11631,7 @@ var registerModelsCommand = (program2, deps) => {
|
|
|
11631
11631
|
let source = "fallback";
|
|
11632
11632
|
let modelList = fallbackModels;
|
|
11633
11633
|
try {
|
|
11634
|
-
const core = await import("./dist-
|
|
11634
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
11635
11635
|
const response = await fetch(`${core.normalizeApiBase(baseUrl)}/models`, {
|
|
11636
11636
|
headers: {
|
|
11637
11637
|
Accept: "application/json",
|
|
@@ -12803,7 +12803,7 @@ var uninstallCompletionScript = async (shell) => {
|
|
|
12803
12803
|
var runInteractiveLoginOnboarding = async (baseUrl, token) => {
|
|
12804
12804
|
const [{ render }, { Onboarding }] = await Promise.all([
|
|
12805
12805
|
import("ink"),
|
|
12806
|
-
import("./Onboarding-
|
|
12806
|
+
import("./Onboarding-4N4WIORR.js")
|
|
12807
12807
|
]);
|
|
12808
12808
|
await new Promise((resolve) => {
|
|
12809
12809
|
let app;
|
|
@@ -13037,7 +13037,7 @@ var resolveBaseUrl = async (options, command) => {
|
|
|
13037
13037
|
});
|
|
13038
13038
|
}
|
|
13039
13039
|
try {
|
|
13040
|
-
const { getAuthStatus } = await import("./dist-
|
|
13040
|
+
const { getAuthStatus } = await import("./dist-AGQQPJUD.js");
|
|
13041
13041
|
const status = await getAuthStatus();
|
|
13042
13042
|
const storedBaseUrl = status.baseUrl;
|
|
13043
13043
|
if (storedBaseUrl && shouldUseStoredBaseUrl(storedBaseUrl)) {
|
|
@@ -13108,7 +13108,7 @@ program.command("login").description("Authenticate with Cloudeval").option(
|
|
|
13108
13108
|
checkUserStatus,
|
|
13109
13109
|
ensurePlaygroundProject,
|
|
13110
13110
|
login
|
|
13111
|
-
} = await import("./dist-
|
|
13111
|
+
} = await import("./dist-AGQQPJUD.js");
|
|
13112
13112
|
assertSecureBaseUrl(options.baseUrl);
|
|
13113
13113
|
const headlessEnvironment = isHeadlessEnvironment();
|
|
13114
13114
|
const headlessLogin = options.headless || headlessEnvironment;
|
|
@@ -13172,7 +13172,7 @@ program.command("logout").description("Log out and clear stored authentication s
|
|
|
13172
13172
|
DEFAULT_BASE_URL
|
|
13173
13173
|
).option("--all-devices", "Revoke sessions on all devices", false).action(async (options) => {
|
|
13174
13174
|
try {
|
|
13175
|
-
const { assertSecureBaseUrl, logout } = await import("./dist-
|
|
13175
|
+
const { assertSecureBaseUrl, logout } = await import("./dist-AGQQPJUD.js");
|
|
13176
13176
|
assertSecureBaseUrl(options.baseUrl);
|
|
13177
13177
|
const result = await logout({
|
|
13178
13178
|
baseUrl: options.baseUrl,
|
|
@@ -13196,7 +13196,7 @@ authCommand.command("status").description("Show current authentication status").
|
|
|
13196
13196
|
DEFAULT_BASE_URL
|
|
13197
13197
|
).option("--format <format>", "Output format: text, json, ndjson, markdown", "text").option("--show-sensitive-ids", "Show full account/session identifiers in command output", false).option("-v, --verbose", "Enable verbose logging and show full non-token identifiers", false).action(async (options, command) => {
|
|
13198
13198
|
try {
|
|
13199
|
-
const { assertSecureBaseUrl, getAuthStatus } = await import("./dist-
|
|
13199
|
+
const { assertSecureBaseUrl, getAuthStatus } = await import("./dist-AGQQPJUD.js");
|
|
13200
13200
|
const effectiveBaseUrl = await resolveBaseUrl(options, command);
|
|
13201
13201
|
assertSecureBaseUrl(effectiveBaseUrl);
|
|
13202
13202
|
const status = await getAuthStatus(effectiveBaseUrl, { validate: true });
|
|
@@ -13379,10 +13379,10 @@ program.command("tui").description("Open the CloudEval Terminal UI").option(
|
|
|
13379
13379
|
"Access key for automation",
|
|
13380
13380
|
process.env.CLOUDEVAL_ACCESS_KEY
|
|
13381
13381
|
).option("--access-key-stdin", "Read access key from stdin (recommended for automation)", false).option("--model <name>", "Model name").option("--debug", "Log raw chunks", false).option("--health-check", "Enable health check (disabled by default)").option("--no-banner", "Disable ASCII banner").option("--animate", "Enable TUI animations (default)").option("--no-anim", "Disable TUI animations").option("-v, --verbose", "Enable verbose logging", false).action(async (options, command) => {
|
|
13382
|
-
const { assertSecureBaseUrl } = await import("./dist-
|
|
13382
|
+
const { assertSecureBaseUrl } = await import("./dist-AGQQPJUD.js");
|
|
13383
13383
|
const [{ render }, { App }] = await Promise.all([
|
|
13384
13384
|
import("ink"),
|
|
13385
|
-
import("./App-
|
|
13385
|
+
import("./App-D4HXP4GR.js")
|
|
13386
13386
|
]);
|
|
13387
13387
|
const baseUrl = await resolveBaseUrl(options, command);
|
|
13388
13388
|
assertSecureBaseUrl(baseUrl);
|
|
@@ -13396,7 +13396,7 @@ program.command("tui").description("Open the CloudEval Terminal UI").option(
|
|
|
13396
13396
|
warnIfAccessKeyFromCliOption(options, command);
|
|
13397
13397
|
if (options.tab && options.tab !== "chat") {
|
|
13398
13398
|
process.stderr.write(
|
|
13399
|
-
`Opening Terminal UI with requested tab '${options.tab}'.
|
|
13399
|
+
`Opening Terminal UI with requested tab '${options.tab}'. Workspace tabs load account data when available.
|
|
13400
13400
|
`
|
|
13401
13401
|
);
|
|
13402
13402
|
}
|
|
@@ -13431,10 +13431,10 @@ program.command("chat").description("Start an interactive chat session").option(
|
|
|
13431
13431
|
"Access key for automation",
|
|
13432
13432
|
process.env.CLOUDEVAL_ACCESS_KEY
|
|
13433
13433
|
).option("--access-key-stdin", "Read access key from stdin (recommended for automation)", false).option("--conversation <id>", "Conversation/thread id to resume").option("--continue", "Resume the most recent local chat session", false).option("--resume <id-or-title>", "Resume a local chat session by thread id or title").option("--model <name>", "Model name").option("--mode <mode>", "Initial chat mode: ask, agent").option("--debug", "Log raw chunks", false).option("--health-check", "Enable health check (disabled by default)").option("--no-banner", "Disable ASCII banner").option("--animate", "Enable TUI animations (default)").option("--no-anim", "Disable TUI animations").option("-v, --verbose", "Enable verbose logging", false).action(async (options, command) => {
|
|
13434
|
-
const { assertSecureBaseUrl } = await import("./dist-
|
|
13434
|
+
const { assertSecureBaseUrl } = await import("./dist-AGQQPJUD.js");
|
|
13435
13435
|
const [{ render }, { App }] = await Promise.all([
|
|
13436
13436
|
import("ink"),
|
|
13437
|
-
import("./App-
|
|
13437
|
+
import("./App-D4HXP4GR.js")
|
|
13438
13438
|
]);
|
|
13439
13439
|
const baseUrl = await resolveBaseUrl(options, command);
|
|
13440
13440
|
assertSecureBaseUrl(baseUrl);
|
|
@@ -13503,7 +13503,7 @@ program.command("ask").alias("agent").description("Ask a single question or run
|
|
|
13503
13503
|
const question = Array.isArray(questionParts) ? questionParts.join(" ") : String(questionParts);
|
|
13504
13504
|
const commandName = command.parent?.args?.[0] === "agent" ? "agent" : "ask";
|
|
13505
13505
|
const selectedMode = commandName === "agent" ? "agent" : "ask";
|
|
13506
|
-
const { assertSecureBaseUrl } = await import("./dist-
|
|
13506
|
+
const { assertSecureBaseUrl } = await import("./dist-AGQQPJUD.js");
|
|
13507
13507
|
const baseUrl = await resolveBaseUrl(options, command);
|
|
13508
13508
|
assertSecureBaseUrl(baseUrl);
|
|
13509
13509
|
const selectedProfile = getActiveConfigProfile(command);
|
|
@@ -13544,7 +13544,7 @@ program.command("ask").alias("agent").description("Ask a single question or run
|
|
|
13544
13544
|
const fs13 = await import("fs");
|
|
13545
13545
|
const fsPromises = await import("fs/promises");
|
|
13546
13546
|
const { randomUUID: randomUUID5 } = await import("crypto");
|
|
13547
|
-
const core = await import("./dist-
|
|
13547
|
+
const core = await import("./dist-AGQQPJUD.js");
|
|
13548
13548
|
const {
|
|
13549
13549
|
streamChat,
|
|
13550
13550
|
reduceChunk,
|
|
@@ -13602,7 +13602,7 @@ program.command("ask").alias("agent").description("Ask a single question or run
|
|
|
13602
13602
|
console.error("Authentication required. Starting login process...\n");
|
|
13603
13603
|
}
|
|
13604
13604
|
try {
|
|
13605
|
-
const { login } = await import("./dist-
|
|
13605
|
+
const { login } = await import("./dist-AGQQPJUD.js");
|
|
13606
13606
|
verboseLog("Calling interactive login", { baseUrl });
|
|
13607
13607
|
token = await login(baseUrl, {
|
|
13608
13608
|
headless: isHeadlessEnvironment()
|
|
@@ -14191,7 +14191,7 @@ Error: ${errorMsg}
|
|
|
14191
14191
|
program.command("banner").description("Preview the startup banner and terminal capabilities").action(async () => {
|
|
14192
14192
|
const { render } = await import("ink");
|
|
14193
14193
|
const BannerPreview = React.lazy(async () => ({
|
|
14194
|
-
default: (await import("./Banner-
|
|
14194
|
+
default: (await import("./Banner-6FGLG7VG.js")).Banner
|
|
14195
14195
|
}));
|
|
14196
14196
|
render(
|
|
14197
14197
|
/* @__PURE__ */ jsx(React.Suspense, { fallback: null, children: /* @__PURE__ */ jsx(BannerPreview, { disable: false }) })
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ganakailabs/cloudeval-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.21.0",
|
|
4
4
|
"license": "LicenseRef-CloudEval-CLI",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "CloudEval CLI for cloud architecture, cost, report, automation, and MCP workflows.",
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
"run": "node dist/cli.js",
|
|
64
64
|
"dev": "tsx src/cli.tsx",
|
|
65
65
|
"lint": "pnpm -C ../shared build && pnpm -C ../core build && tsc --noEmit -p tsconfig.json",
|
|
66
|
-
"test": "pnpm -C ../shared build && pnpm -C ../core build && tsx --test src/askProgress.test.ts src/hitlPrompt.test.ts src/baseUrl.test.ts src/frontendLinks.test.ts src/outputFormatter.test.ts src/localHooks.test.ts src/projectDiagramImage.test.ts src/loginOnboardingMode.test.ts src/runtime/prepareInk.test.ts src/ui/animationPolicy.test.ts src/ui/components/Banner.test.ts src/ui/components/InputBox.test.ts src/ui/components/Transcript.test.ts src/ui/billingSummary.test.ts src/ui/inputSanitizer.test.ts src/ui/inputViewport.test.ts src/ui/keyBindings.test.ts src/ui/layout.test.ts src/ui/scrollBehavior.test.ts src/ui/promptSuggestions.test.ts src/ui/commandCompletion.test.ts src/ui/interactionModel.test.ts src/ui/sessionThreads.test.ts src/ui/userDisplayName.test.ts src/ui/workspaceTabs.test.ts src/ui/workspaceDataStore.test.ts src/ui/overviewDashboard.test.ts src/ui/reportsDashboard.test.ts src/completionEngine.test.ts src/shellCompletion.test.ts src/updateCommand.test.ts src/uninstallCommand.test.ts src/mcpSetupCommand.test.ts src/mcpCommand.test.ts src/sessionsStore.test.ts src/recipes/catalog.test.ts src/skills/catalog.test.ts src/reports/reportRender.test.ts src/reports/reportCommand.test.ts",
|
|
66
|
+
"test": "pnpm -C ../shared build && pnpm -C ../core build && tsx --test src/askProgress.test.ts src/hitlPrompt.test.ts src/baseUrl.test.ts src/frontendLinks.test.ts src/outputFormatter.test.ts src/localHooks.test.ts src/projectDiagramImage.test.ts src/loginOnboardingMode.test.ts src/runtime/prepareInk.test.ts src/ui/animationPolicy.test.ts src/ui/appHeaderDetails.test.ts src/ui/components/Banner.test.ts src/ui/components/InputBox.test.ts src/ui/components/Spinner.test.ts src/ui/components/Transcript.test.ts src/ui/artifactChips.test.ts src/ui/citationContent.test.ts src/ui/chatResponseActions.test.ts src/ui/billingSummary.test.ts src/ui/workspaceEntityDetails.test.ts src/ui/inputSanitizer.test.ts src/ui/inputViewport.test.ts src/ui/keyBindings.test.ts src/ui/layout.test.ts src/ui/scrollBehavior.test.ts src/ui/promptSuggestions.test.ts src/ui/commandCompletion.test.ts src/ui/interactionModel.test.ts src/ui/sessionThreads.test.ts src/ui/userDisplayName.test.ts src/ui/workspaceSelection.test.ts src/ui/workspaceTabs.test.ts src/ui/workspaceDataStore.test.ts src/ui/overviewDashboard.test.ts src/ui/reportsDashboard.test.ts src/completionEngine.test.ts src/shellCompletion.test.ts src/updateCommand.test.ts src/uninstallCommand.test.ts src/mcpSetupCommand.test.ts src/mcpCommand.test.ts src/sessionsStore.test.ts src/recipes/catalog.test.ts src/skills/catalog.test.ts src/reports/reportRender.test.ts src/reports/reportCommand.test.ts",
|
|
67
67
|
"test:cli:noninteractive": "pnpm -C ../shared build && pnpm -C ../core build && tsx --test src/nonInteractiveCli.test.ts",
|
|
68
68
|
"test:cli:noninteractive:packaged": "pnpm build:executable:current && CLOUDEVAL_CLI_BIN=./dist/bin/cloudeval pnpm test:cli:noninteractive",
|
|
69
69
|
"test:cli:noninteractive:live": "pnpm build:executable:current && CLOUDEVAL_CLI_BIN=./dist/bin/cloudeval tsx --test src/liveNonInteractiveCli.test.ts",
|
package/sbom.spdx.json
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
{
|
|
15
15
|
"SPDXID": "SPDXRef-Package-CloudEval-CLI",
|
|
16
16
|
"name": "CloudEval CLI",
|
|
17
|
-
"versionInfo": "0.
|
|
17
|
+
"versionInfo": "0.21.0",
|
|
18
18
|
"downloadLocation": "https://github.com/ganakailabs/cloudeval-cli",
|
|
19
19
|
"filesAnalyzed": false,
|
|
20
20
|
"licenseConcluded": "LicenseRef-CloudEval-CLI",
|
package/dist/chunk-QKZCKI55.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
// src/ui/theme.ts
|
|
2
|
-
var hasColor = () => !process.env.NO_COLOR && process.env.TERM !== "dumb";
|
|
3
|
-
var terminalBackground = () => {
|
|
4
|
-
const colorFgBg = process.env.COLORFGBG;
|
|
5
|
-
if (!colorFgBg) {
|
|
6
|
-
return "unknown";
|
|
7
|
-
}
|
|
8
|
-
const bg = Number(colorFgBg.split(";").pop());
|
|
9
|
-
if (!Number.isFinite(bg)) {
|
|
10
|
-
return "unknown";
|
|
11
|
-
}
|
|
12
|
-
return bg >= 7 && bg <= 15 ? "light" : "dark";
|
|
13
|
-
};
|
|
14
|
-
var isLightTerminal = () => terminalBackground() === "light";
|
|
15
|
-
var color = (dark, light) => {
|
|
16
|
-
if (!hasColor()) {
|
|
17
|
-
return void 0;
|
|
18
|
-
}
|
|
19
|
-
return isLightTerminal() ? light : dark;
|
|
20
|
-
};
|
|
21
|
-
var terminalTheme = {
|
|
22
|
-
brand: color("cyanBright", "blue"),
|
|
23
|
-
accent: color("magentaBright", "magenta"),
|
|
24
|
-
focus: color("cyanBright", "blue"),
|
|
25
|
-
selected: color("greenBright", "green"),
|
|
26
|
-
success: color("greenBright", "green"),
|
|
27
|
-
muted: color("gray", "gray"),
|
|
28
|
-
/** Inline ghost / autosuggest — distinct from user text and from gray-muted UI chrome */
|
|
29
|
-
inputGhost: color("magenta", "blue"),
|
|
30
|
-
warning: color("yellowBright", "magenta"),
|
|
31
|
-
danger: color("redBright", "red"),
|
|
32
|
-
cursor: color("cyanBright", "blue")
|
|
33
|
-
};
|
|
34
|
-
var shouldUseColor = hasColor;
|
|
35
|
-
var raisedButtonStyle = {
|
|
36
|
-
border: "round",
|
|
37
|
-
activeMarker: "\u25CF",
|
|
38
|
-
inactiveMarker: "\u25CB"
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
export {
|
|
42
|
-
terminalTheme,
|
|
43
|
-
shouldUseColor,
|
|
44
|
-
raisedButtonStyle
|
|
45
|
-
};
|