Cursor Agent and Daniel Imms
eacf90b2b7
Split common into composite subprojects with project references
...
- common/tsconfig.json is a solution root referencing layer tsconfigs
- Each layer has composite tsconfig with correct references and outDir
- Break buffer/services cycle via buffer-local service interfaces
- Move cell types, keyboard/unicode types, TaskQueue, and TerminalOptions
- Exclude *.test.ts from composite builds; fix parser IDisposable imports
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-30 17:32:03 +00:00
Cursor Agent and Daniel Imms
1d125ac715
Restructure common into layered folders (issue #5963 )
...
Reorganize src/common into platform (base, encoding, data, buffer,
parser, input), integration (services, terminal), and public API layers.
- Move core utilities to common/base/
- Move TextDecoder to common/encoding/
- Move Types, CircularList, Color, TaskQueue, SortedList to common/services/
- Move CoreTerminal, InputHandler, WindowsMode to common/terminal/
- Define ICharset in common/data/Charsets.ts (re-exported from Types)
- Update imports across src/, addons/, and test/
- Add per-layer tsconfig.json files and REARCHITECTURE.md
- Root common/tsconfig.json remains the composite build entry
Co-authored-by: Daniel Imms <Tyriar@users.noreply.github.com >
2026-05-30 16:12:18 +00:00
Daniel Imms
52d4b2719c
Move cache into Buffer owned object, use WeakRefs
...
This allows O(1) clearing of the cache, a single TTL timer and we
can avoid making BufferLine's Disposable
2026-05-02 05:32:43 -07:00
Daniel Imms
4d4b994c35
Support caching of trimRight
2026-05-02 04:35:18 -07:00
Daniel Imms
eccbc60aa0
Migrate to tsgo
...
Fixes #5689
2026-02-13 06:59:24 -08:00
Daniel Imms
e8d99d50a6
Remove vs dependency in common
...
Fixes #5631
2026-01-30 06:03:16 -08:00
Daniel Imms
90ff6f3d06
Migrate most EventEmitter to base/ Emitter
2024-07-14 07:41:56 -07:00
coderaiser
c6f1b456f5
feature: tsconfig: es2017 -> es2016.Array.Include
2020-11-01 09:46:31 +02:00
coderaiser
246d137c2c
src: lint using putout
2020-10-25 10:05:41 +02:00
Daniel Imms
353a8c5388
Create CoreTerminal, fix createInstance in strict mode
2020-04-25 10:21:56 -07:00
Daniel Imms
21fbe25858
Dependency Injection prototype
2019-07-13 19:50:16 -07:00
Daniel Imms
9068107f5a
Remove path mapping to self modules
...
This would cause imports in the common module to reference out/ instead
of src/, this leads to weird behavior when errors are introduced.
2019-06-01 08:37:37 -07:00
Daniel Imms
873f0de0ec
Get webpack build working
2019-05-26 11:19:42 -07:00
Daniel Imms
38afe991b2
Kind of working setup
2019-05-26 11:05:23 -07:00
Daniel Imms
2e10c8c25e
Clean up
2019-04-02 08:04:39 -07:00
Daniel Imms
4a3609f805
Move platform to common and remove dom dependence in common
...
Because common/ imports 'xterm', it also imported dom accidentally.
Fixes #1990
2019-03-31 23:24:29 -07:00
Daniel Imms
0b78011fa3
Adopt project references
...
Recent versions of TypeScript has improved the performance of project
references so they are now viable to switch over to.
2019-03-30 14:05:24 -07:00
Daniel Imms
fb0b73ab83
Enforce core layering and enable strict
...
Part of #1507
Part of #1319
2018-09-18 10:21:59 -07:00
Daniel Imms
a7a58aa055
Enable strict null checks and restrict DOM access in common
...
Part of #1507
Part of #1319
2018-09-17 13:44:31 -07:00