@hypercli/core
Advanced tools
| /** | ||
| * Corrected cli-html types. | ||
| * | ||
| * The published types in cli-html have incorrect HeadingStyle — | ||
| * they use `marker?: string` but the actual config uses `indicator: { marker, color }`. | ||
| * This module re-exports corrected types. | ||
| */ | ||
| import type { Config as CliHtmlConfig, Theme as CliHtmlTheme } from "cli-html"; | ||
| export type { CliHtmlConfig, CliHtmlTheme }; | ||
| export interface HeadingStyle { | ||
| color?: string; | ||
| indicator?: { | ||
| marker?: string; | ||
| color?: string; | ||
| }; | ||
| } | ||
| /** | ||
| * cli-html Theme with corrected heading types. | ||
| */ | ||
| export type Theme = Omit<CliHtmlTheme, "h1" | "h2" | "h3" | "h4" | "h5" | "h6"> & { | ||
| h1?: string | HeadingStyle; | ||
| h2?: string | HeadingStyle; | ||
| h3?: string | HeadingStyle; | ||
| h4?: string | HeadingStyle; | ||
| h5?: string | HeadingStyle; | ||
| h6?: string | HeadingStyle; | ||
| }; | ||
| /** | ||
| * cli-html Config with corrected Theme type. | ||
| */ | ||
| export interface HelpThemeConfig { | ||
| theme?: Theme; | ||
| lineWidth?: CliHtmlConfig["lineWidth"]; | ||
| asciiMode?: boolean; | ||
| } | ||
| //# sourceMappingURL=cli-html-types.d.ts.map |
| {"version":3,"file":"cli-html-types.d.ts","sourceRoot":"","sources":["../../src/logger/cli-html-types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,EAAE,MAAM,IAAI,aAAa,EAAE,KAAK,IAAI,YAAY,EAAE,MAAM,UAAU,CAAC;AAE/E,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;AAE5C,MAAM,WAAW,YAAY;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE;QACX,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACF;AAED;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG;IACjF,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,YAAY,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,SAAS,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC;IACvC,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB"} |
| export {}; | ||
| //# sourceMappingURL=cli-html-types.js.map |
| {"version":3,"file":"cli-html-types.js","sourceRoot":"","sources":["../../src/logger/cli-html-types.ts"],"names":[],"mappings":""} |
| export { error, warning, success, info, tip } from "./messages.js"; | ||
| export { symbols } from "./symbols.js"; | ||
| export * from "./styles.js"; | ||
| //# sourceMappingURL=index.d.ts.map |
| {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,cAAc,aAAa,CAAC"} |
| export { error, warning, success, info, tip } from "./messages.js"; | ||
| export { symbols } from "./symbols.js"; | ||
| export * from "./styles.js"; | ||
| //# sourceMappingURL=index.js.map |
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,cAAc,aAAa,CAAC"} |
| export declare function error(summary: string): string; | ||
| export declare function error(title: string, summary: string): string; | ||
| export declare function error(title: string, summary: string, body: string | string[]): string; | ||
| export declare function warning(summary: string): string; | ||
| export declare function warning(title: string, summary: string): string; | ||
| export declare function warning(title: string, summary: string, body: string | string[]): string; | ||
| export declare function success(summary: string): string; | ||
| export declare function success(title: string, summary: string): string; | ||
| export declare function success(title: string, summary: string, body: string | string[]): string; | ||
| export declare function info(summary: string): string; | ||
| export declare function info(title: string, summary: string): string; | ||
| export declare function info(title: string, summary: string, body: string | string[]): string; | ||
| export declare function tip(summary: string): string; | ||
| export declare function tip(title: string, summary: string): string; | ||
| export declare function tip(title: string, summary: string, body: string | string[]): string; | ||
| //# sourceMappingURL=messages.d.ts.map |
| {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/ui/messages.ts"],"names":[],"mappings":"AA8DA,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AAC/C,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AAC9D,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;AAKvF,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AACjD,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AAChE,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;AAKzF,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AACjD,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AAChE,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;AAKzF,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AAC9C,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AAC7D,wBAAgB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;AAKtF,wBAAgB,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AAC7C,wBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;AAC5D,wBAAgB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC"} |
| import chalk from "chalk"; | ||
| import { symbols } from "./symbols.js"; | ||
| const INDENT = " "; | ||
| const ICON_GAP = " "; | ||
| const types = { | ||
| error: { prefix: "Error:", icon: symbols.error, color: chalk.red }, | ||
| warning: { prefix: "Warning:", icon: symbols.warning, color: chalk.yellow }, | ||
| success: { prefix: "Success:", icon: symbols.success, color: chalk.green }, | ||
| info: { prefix: "Info:", icon: symbols.info, color: chalk.blue }, | ||
| tip: { prefix: "Tip:", icon: symbols.tip, color: chalk.hex("7FB3D5") }, // Pastel blue that works on both themes | ||
| }; | ||
| function formatMessage(type, arg1, arg2, arg3) { | ||
| const { prefix, icon, color } = types[type]; | ||
| const lines = []; | ||
| // Don't add leading indent for tip messages | ||
| const leadingIndent = type === "tip" ? "" : INDENT; | ||
| const contentIndent = type === "tip" ? INDENT : `${INDENT}${INDENT}`; | ||
| if (arg2 === undefined) { | ||
| // summary-only: just icon + summary | ||
| lines.push(`${leadingIndent}${color(icon)}${ICON_GAP}${arg1}`); | ||
| } | ||
| else if (arg3 === undefined) { | ||
| // title + summary | ||
| lines.push(`${leadingIndent}${color(prefix)} ${arg1}`); | ||
| lines.push(""); | ||
| lines.push(`${contentIndent}${color(icon)}${ICON_GAP}${arg2}`); | ||
| } | ||
| else { | ||
| // title + summary + body | ||
| const bodyLines = Array.isArray(arg3) ? arg3 : arg3.split("\n"); | ||
| lines.push(`${leadingIndent}${color(prefix)} ${arg1}`); | ||
| lines.push(""); | ||
| lines.push(`${contentIndent}${color(icon)}${ICON_GAP}${arg2}`); | ||
| lines.push(`${contentIndent}${color(symbols.bar)}`); | ||
| for (const bodyLine of bodyLines) { | ||
| lines.push(`${contentIndent}${color(symbols.bar)}${ICON_GAP}${chalk.dim(bodyLine)}`); | ||
| } | ||
| } | ||
| lines.push(""); | ||
| return lines.join("\n"); | ||
| } | ||
| export function error(arg1, arg2, arg3) { | ||
| return formatMessage("error", arg1, arg2, arg3); | ||
| } | ||
| export function warning(arg1, arg2, arg3) { | ||
| return formatMessage("warning", arg1, arg2, arg3); | ||
| } | ||
| export function success(arg1, arg2, arg3) { | ||
| return formatMessage("success", arg1, arg2, arg3); | ||
| } | ||
| export function info(arg1, arg2, arg3) { | ||
| return formatMessage("info", arg1, arg2, arg3); | ||
| } | ||
| export function tip(arg1, arg2, arg3) { | ||
| return formatMessage("tip", arg1, arg2, arg3); | ||
| } | ||
| //# sourceMappingURL=messages.js.map |
| {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/ui/messages.ts"],"names":[],"mappings":"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"} |
| export declare const styles: { | ||
| command: (text: string) => string; | ||
| danger: (text: string) => string; | ||
| /** Replace `backtick` spans with command-styled text */ | ||
| md: (text: string) => string; | ||
| }; | ||
| //# sourceMappingURL=styles.d.ts.map |
| {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/ui/styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,MAAM;oBACF,MAAM,KAAG,MAAM;mBAChB,MAAM,KAAG,MAAM;IAE9B,wDAAwD;eAC7C,MAAM,KAAG,MAAM;CAE1B,CAAC"} |
| import chalk from "chalk"; | ||
| export const styles = { | ||
| command: (text) => chalk.hex("4EC9B0")(text), | ||
| danger: (text) => chalk.hex("F67280")(text), | ||
| /** Replace `backtick` spans with command-styled text */ | ||
| md: (text) => text.replace(/`([^`]+)`/g, (_, code) => chalk.hex("4EC9B0")(code)), | ||
| }; | ||
| //# sourceMappingURL=styles.js.map |
| {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/ui/styles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG;IACrB,OAAO,EAAE,CAAC,IAAY,EAAU,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;IAC5D,MAAM,EAAE,CAAC,IAAY,EAAU,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;IAE3D,wDAAwD;IACxD,EAAE,EAAE,CAAC,IAAY,EAAU,EAAE,CAC5B,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC;CACnE,CAAC"} |
| export declare const symbols: { | ||
| readonly error: "×"; | ||
| readonly warning: "▲"; | ||
| readonly success: "✔"; | ||
| readonly info: "●"; | ||
| readonly tip: "◆"; | ||
| readonly bar: "│"; | ||
| }; | ||
| //# sourceMappingURL=symbols.d.ts.map |
| {"version":3,"file":"symbols.d.ts","sourceRoot":"","sources":["../../src/ui/symbols.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO;;;;;;;CAOV,CAAC"} |
| // packages/core/src/ui/symbols.ts | ||
| export const symbols = { | ||
| error: "\u00d7", | ||
| warning: "\u25b2", | ||
| success: "\u2714", | ||
| info: "\u25cf", | ||
| tip: "\u25c6", | ||
| bar: "\u2502", | ||
| }; | ||
| //# sourceMappingURL=symbols.js.map |
| {"version":3,"file":"symbols.js","sourceRoot":"","sources":["../../src/ui/symbols.ts"],"names":[],"mappings":"AAAA,kCAAkC;AAElC,MAAM,CAAC,MAAM,OAAO,GAAG;IACtB,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,QAAQ;IACjB,OAAO,EAAE,QAAQ;IACjB,IAAI,EAAE,QAAQ;IACd,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,QAAQ;CACJ,CAAC"} |
+2
-2
| { | ||
| "name": "@hypercli/core", | ||
| "version": "0.2.3", | ||
| "version": "0.3.0", | ||
| "type": "module", | ||
@@ -66,3 +66,3 @@ "description": "Core domain types, config, errors for HyperDev", | ||
| "dependencies": { | ||
| "@hypercli/ui": "^0.2.3", | ||
| "@hypercli/ui": "^0.3.0", | ||
| "chalk": "^4.1.2", | ||
@@ -69,0 +69,0 @@ "change-case": "^3.1.0", |
360239
3.73%131
18.02%5643
2.6%+ Added
- Removed
Updated