function formatPropertyChangePath()

in src/helpers/whatif.ts [414:444]


function formatPropertyChangePath(
  builder: ColorStringBuilder,
  propertyChange: WhatIfPropertyChange,
  value: UnknownValue,
  maxPathLength: number,
  indentLevel: number,
): void {
  if (!propertyChange.path) return;

  const path = propertyChange.path;
  const propertyChangeType = propertyChange.propertyChangeType;

  let paddingWidth = maxPathLength - path.length + 1;

  if (isNonEmptyArray(value)) {
    paddingWidth = 1;
  } else if (isNonEmptyObject(value)) {
    paddingWidth = 0;
  } else if (propertyChangeType === "Modify" && propertyChange.children) {
    paddingWidth = 0; // Has nested changes.
  }

  formatPath(
    builder,
    path,
    paddingWidth,
    indentLevel,
    builder => formatPropertyChangeType(builder, propertyChangeType),
    formatColon,
  );
}