文件最后提交记录最后更新时间
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 resize20 小时前