文件最后提交记录最后更新时间
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
fix(ink): scroll jitter on rapid mouse wheel (#2076) (#2095) * fix(ink): add dependency arrays to useBoxMetrics and useTerminalViewport to prevent scroll jitter (#2076) - useBoxMetrics: add [ref.current] deps so measurement only runs when element changes - useTerminalViewport: add [elementRef.current, terminalSize] deps to skip expensive parent-chain walk on every render - App: memoize TerminalSizeContext.Provider value to keep reference stable During rapid mouse wheel scrolling (10-20 events/100ms on Windows), the missing dependency arrays caused each wheel event to trigger 3-5 cascading renders (30-80 renders/100ms), producing visible text jitter. * fix(ink): address PR #2095 review — remove ref.current anti-pattern from hook deps - useBoxMetrics: remove [ref.current] dep array (React anti-pattern); add 16ms throttle to limit measurement frequency during rapid scrolling - useTerminalViewport: remove elementRef.current from deps, keep only [terminalSize] as the reactive dependency - Add regression test verifying useBoxMetrics re-measures on parent resize19 小时前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
fix(ink): scroll jitter on rapid mouse wheel (#2076) (#2095) * fix(ink): add dependency arrays to useBoxMetrics and useTerminalViewport to prevent scroll jitter (#2076) - useBoxMetrics: add [ref.current] deps so measurement only runs when element changes - useTerminalViewport: add [elementRef.current, terminalSize] deps to skip expensive parent-chain walk on every render - App: memoize TerminalSizeContext.Provider value to keep reference stable During rapid mouse wheel scrolling (10-20 events/100ms on Windows), the missing dependency arrays caused each wheel event to trigger 3-5 cascading renders (30-80 renders/100ms), producing visible text jitter. * fix(ink): address PR #2095 review — remove ref.current anti-pattern from hook deps - useBoxMetrics: remove [ref.current] dep array (React anti-pattern); add 16ms throttle to limit measurement frequency during rapid scrolling - useTerminalViewport: remove elementRef.current from deps, keep only [terminalSize] as the reactive dependency - Add regression test verifying useBoxMetrics re-measures on parent resize19 小时前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
fix(ink): scroll jitter on rapid mouse wheel (#2076) (#2095) * fix(ink): add dependency arrays to useBoxMetrics and useTerminalViewport to prevent scroll jitter (#2076) - useBoxMetrics: add [ref.current] deps so measurement only runs when element changes - useTerminalViewport: add [elementRef.current, terminalSize] deps to skip expensive parent-chain walk on every render - App: memoize TerminalSizeContext.Provider value to keep reference stable During rapid mouse wheel scrolling (10-20 events/100ms on Windows), the missing dependency arrays caused each wheel event to trigger 3-5 cascading renders (30-80 renders/100ms), producing visible text jitter. * fix(ink): address PR #2095 review — remove ref.current anti-pattern from hook deps - useBoxMetrics: remove [ref.current] dep array (React anti-pattern); add 16ms throttle to limit measurement frequency during rapid scrolling - useTerminalViewport: remove elementRef.current from deps, keep only [terminalSize] as the reactive dependency - Add regression test verifying useBoxMetrics re-measures on parent resize19 小时前
fix(ink): reduce VS Code terminal lag by throttling drain and debouncing damage (#2080) (#2130) * fix(ink): reduce VS Code terminal lag by throttling drain and debouncing damage (#2080) - Increase scroll drain interval from 4ms (~250fps) to 16ms (~60fps) to stop overwhelming xterm.js single-threaded ANSI parser - Only trigger full-screen damage on selection/highlight TRANSITION frames (activate/deactivate), not every frame while continuously active, cutting ~50% diff work in VS Code terminal - Coalesce microtask queueing to prevent leading+trailing throttle edges from double-firing onRender ~0.1ms apart (acknowledged jank in comments) * fix(ink): remove no-op selTransition/hlTransition change per review Keep drain interval fix (4ms→16ms) and microtask coalescing. Remove selection/highlight transition tracking which was a no-op: prevFrameContaminated already forces full-screen damage every frame while selection/highlight is active, making the transition tracking redundant.1 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前
refactor(ink): inline ink runtime as workspace package (#1947) Was a stub src/vendor/ink/index.d.ts plus an empty index.js (the real runtime arrived obfuscated, source unreachable). Moving the source into packages/ink as a workspace dep gives consumers real types and makes the runtime editable in-repo. API migrations forced by the new stricter types: - Text/Box color is a typed union now (ansi:<name> | #hex | rgb() | ansi256()); bare ansi names get the ansi: prefix - dimColordim; Text's bold/dim discriminated union relaxed so the two can coexist (terminals collapse them anyway) - ThemeTokens fields typed as Color so theme-derived values flow through helpers / props without manual casts Markdown OSC 8 hyperlinks switch from <Transform> (a shim that silently ignored the transform prop, breaking Ctrl+click hyperlinks) to <Link url>, which uses ink's existing ink-link plumbing. Dropped dead shims: Transform, useAnimation (zero callers after the markdown rewrite). Comment-policy pass on the new package: stripped 638 multi-line essay block comments to 1-line summaries to match the repo rules. Co-authored-by: reasonix <reasonix@deepseek.com>3 天前