"use strict";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var banner_exports = {};
__export(banner_exports, {
  printBanner: () => printBanner
});
module.exports = __toCommonJS(banner_exports);
const figlet = require("figlet");
const c = {
  reset: "\x1B[0m",
  bold: "\x1B[1m",
  dim: "\x1B[2m",
  purple: "\x1B[38;5;135m",
  violet: "\x1B[38;5;99m",
  cyan: "\x1B[38;5;117m",
  gray: "\x1B[90m",
  white: "\x1B[97m"
};
const TIPS = [
  `Run ${c.cyan}kirograph context "your task"${c.reset} to get relevant code
  in one shot \u2014 no file scanning needed.`,
  `Use ${c.cyan}kirograph query <name>${c.reset} instead of grep.
  It searches the symbol index instantly.`,
  `${c.cyan}kirograph affected src/foo.ts${c.reset} finds every test file
  that depends on a changed file \u2014 great for CI.`,
  `${c.cyan}kirograph files --format grouped${c.reset} shows your project
  structure grouped by language from the index.`,
  `${c.cyan}kirograph impact <symbol>${c.reset} shows the blast radius
  before you change anything.`,
  `Run ${c.cyan}kirograph install${c.reset} once per Kiro workspace to wire up
  MCP, auto-sync hooks, and steering automatically.`,
  `${c.cyan}kirograph sync${c.reset} is incremental \u2014 it only re-parses
  files whose content has changed since last index.`,
  `Pipe git diff into kirograph:
  ${c.cyan}git diff --name-only | kirograph affected --stdin${c.reset}`
];
function pickTip() {
  const idx = Math.floor(Date.now() / 864e5) % TIPS.length;
  return TIPS[idx];
}
function boxed(text, width = 70) {
  const lines = text.split("\n");
  const top = `${c.gray}\u250C${"\u2500".repeat(width - 2)}\u2510${c.reset}`;
  const bottom = `${c.gray}\u2514${"\u2500".repeat(width - 2)}\u2518${c.reset}`;
  const padded = lines.map((l) => {
    const plain = l.replace(/\x1b\[[0-9;]*m/g, "");
    const pad = Math.max(0, width - 4 - plain.length);
    return `${c.gray}\u2502${c.reset}  ${l}${" ".repeat(pad)}  ${c.gray}\u2502${c.reset}`;
  });
  return [top, ...padded, bottom].join("\n");
}
function printBanner() {
  const art = figlet.textSync("KIROGRAPH", { font: "ANSI Shadow" });
  const artLines = art.split("\n");
  const colored = artLines.map((line, i) => {
    const color = i < artLines.length / 2 ? c.purple : c.violet;
    return `${color}${line}${c.reset}`;
  }).join("\n");
  console.log("\n" + colored);
  console.log(`${c.dim}  Semantic code knowledge graph for Kiro \u2014 100% local${c.reset}`);
  console.log(`${c.dim}  Inspired by CodeGraph \u2014 original idea by ${c.reset}${c.violet}github.com/colbymchenry${c.reset}
`);
  const label = `${c.gray}\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 ${c.reset}${c.bold}${c.white}Did you know?${c.reset}${c.gray} \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500${c.reset}`;
  console.log(label);
  console.log(boxed(pickTip()));
  console.log();
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  printBanner
});
//# sourceMappingURL=banner.js.map
