@kvell007/embed-labs-cli 0.1.0-alpha.37 → 0.1.0-alpha.38

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/index.js CHANGED
@@ -6976,7 +6976,14 @@ function renderLocalToolchainList(result) {
6976
6976
  lines.push(` update_command=${environment.update_command}`);
6977
6977
  }
6978
6978
  if (environment.components?.length) {
6979
- lines.push(` package_summary=${localToolchainComponentSummary(environment.components)}`);
6979
+ lines.push(` component_catalog=${localToolchainComponentSummary(environment.components)}`);
6980
+ if (environment.latest.default_mode) {
6981
+ lines.push(` default_mode_download=${environment.latest.default_mode}: ${localToolchainComponentSummaryForMode(environment.components, environment.latest.default_mode)}`);
6982
+ }
6983
+ if (environment.installed?.mode && environment.installed.mode !== environment.latest.default_mode) {
6984
+ lines.push(` installed_mode_components=${environment.installed.mode}: ${localToolchainComponentSummaryForMode(environment.components, environment.installed.mode)}`);
6985
+ }
6986
+ lines.push(` mode_downloads=${localToolchainModeSummaries(environment.install_modes, environment.components).join("; ")}`);
6980
6987
  lines.push(` package_groups=${localToolchainComponentGroups(environment.components).join(", ")}`);
6981
6988
  lines.push(` detail_command=embedlabs local toolchain latest --board ${environment.board_id}`);
6982
6989
  }
@@ -7001,7 +7008,21 @@ function localToolchainStatusLabel(status) {
7001
7008
  }
7002
7009
  function localToolchainComponentSummary(components) {
7003
7010
  const totalBytes = components.reduce((total, component) => total + component.size_bytes, 0);
7004
- return `${components.length} packages, ${formatByteSize(totalBytes)}`;
7011
+ return `${components.length} components, ${formatByteSize(totalBytes)}`;
7012
+ }
7013
+ function localToolchainComponentSummaryForMode(components, mode) {
7014
+ return localToolchainComponentSummary(localToolchainComponentsForMode(components, mode));
7015
+ }
7016
+ function localToolchainModeSummaries(modes, components) {
7017
+ return modes.map((mode) => `${mode}=${localToolchainComponentSummaryForMode(components, mode)}`);
7018
+ }
7019
+ function localToolchainComponentsForMode(components, mode) {
7020
+ return components.filter((component) => {
7021
+ if (!component.install_modes?.length) {
7022
+ return true;
7023
+ }
7024
+ return component.install_modes.includes(mode);
7025
+ });
7005
7026
  }
7006
7027
  function localToolchainComponentGroups(components) {
7007
7028
  const groups = new Set();
@@ -7057,9 +7078,16 @@ function renderLocalToolchainLatest(result) {
7057
7078
  result.download_error ? `download_error=${result.download_error}` : ""
7058
7079
  ].filter(Boolean);
7059
7080
  if (result.download?.components?.length) {
7081
+ const modes = [...new Set(result.download.components.flatMap((component) => component.install_modes ?? ["all"]))].filter((mode) => mode !== "all");
7082
+ if (result.download.default_mode) {
7083
+ lines.push(`default_mode_download=${result.download.default_mode}: ${localToolchainDownloadComponentSummaryForMode(result.download.components, result.download.default_mode)}`);
7084
+ }
7085
+ if (modes.length > 0) {
7086
+ lines.push(`mode_downloads=${modes.map((mode) => `${mode}=${localToolchainDownloadComponentSummaryForMode(result.download?.components ?? [], mode)}`).join("; ")}`);
7087
+ }
7060
7088
  lines.push("download_components:");
7061
7089
  for (const component of result.download.components) {
7062
- lines.push(` ${component.id}@${component.version} modes=${component.install_modes?.join(",") || "all"} bytes=${component.archive.size_bytes}`);
7090
+ lines.push(` ${component.id}@${component.version} modes=${component.install_modes?.join(",") || "all"} size=${formatByteSize(component.archive.size_bytes)} file=${component.archive.file}`);
7063
7091
  }
7064
7092
  }
7065
7093
  if (result.packages.length > 0) {
@@ -7070,6 +7098,11 @@ function renderLocalToolchainLatest(result) {
7070
7098
  }
7071
7099
  return lines.join("\n");
7072
7100
  }
7101
+ function localToolchainDownloadComponentSummaryForMode(components, mode) {
7102
+ const selected = localToolchainComponentsForMode(components ?? [], mode);
7103
+ const totalBytes = selected.reduce((total, component) => total + component.archive.size_bytes, 0);
7104
+ return `${selected.length} components, ${formatByteSize(totalBytes)}`;
7105
+ }
7073
7106
  function renderLocalToolchainCurrent(result) {
7074
7107
  if (!result.installed) {
7075
7108
  return [