linecraft 0.5.4 → 0.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/LICENSE +21 -59
  2. package/README.md +30 -0
  3. package/lib/components/code-debug.d.ts +2 -0
  4. package/lib/components/code-debug.d.ts.map +1 -1
  5. package/lib/components/code-debug.js +104 -198
  6. package/lib/components/code-debug.js.map +1 -1
  7. package/lib/components/code-debug.test.d.ts +2 -0
  8. package/lib/components/code-debug.test.d.ts.map +1 -0
  9. package/lib/components/code-debug.test.js +245 -0
  10. package/lib/components/code-debug.test.js.map +1 -0
  11. package/lib/components/fill.d.ts +2 -1
  12. package/lib/components/fill.d.ts.map +1 -1
  13. package/lib/components/fill.js.map +1 -1
  14. package/lib/components/progress-bar-grid.d.ts.map +1 -1
  15. package/lib/components/progress-bar-grid.js +5 -3
  16. package/lib/components/progress-bar-grid.js.map +1 -1
  17. package/lib/components/prompt.js +1 -1
  18. package/lib/components/prompt.js.map +1 -1
  19. package/lib/components/section.js +1 -1
  20. package/lib/components/section.js.map +1 -1
  21. package/lib/components/segments.js +4 -4
  22. package/lib/components/segments.js.map +1 -1
  23. package/lib/components/spinner.d.ts +2 -1
  24. package/lib/components/spinner.d.ts.map +1 -1
  25. package/lib/components/spinner.js +1 -1
  26. package/lib/components/spinner.js.map +1 -1
  27. package/lib/components/styled.d.ts +3 -2
  28. package/lib/components/styled.d.ts.map +1 -1
  29. package/lib/components/styled.js +1 -1
  30. package/lib/components/styled.js.map +1 -1
  31. package/lib/index.d.ts +2 -0
  32. package/lib/index.d.ts.map +1 -1
  33. package/lib/index.js +1 -0
  34. package/lib/index.js.map +1 -1
  35. package/lib/layout/grid.d.ts.map +1 -1
  36. package/lib/layout/grid.js +1 -2
  37. package/lib/layout/grid.js.map +1 -1
  38. package/lib/layout/grid.test.js +3 -3
  39. package/lib/layout/grid.test.js.map +1 -1
  40. package/lib/native/region.test.js +1 -1
  41. package/lib/native/region.test.js.map +1 -1
  42. package/lib/region-resize.test.js +3 -3
  43. package/lib/region-resize.test.js.map +1 -1
  44. package/lib/types.d.ts +6 -5
  45. package/lib/types.d.ts.map +1 -1
  46. package/lib/utils/colors.d.ts.map +1 -1
  47. package/lib/utils/colors.js +50 -8
  48. package/lib/utils/colors.js.map +1 -1
  49. package/lib/utils/colors.test.js.map +1 -1
  50. package/lib/utils/debug-log.js +1 -1
  51. package/lib/utils/debug-log.js.map +1 -1
  52. package/lib/utils/terminal-theme.d.ts +17 -28
  53. package/lib/utils/terminal-theme.d.ts.map +1 -1
  54. package/lib/utils/terminal-theme.js +66 -38
  55. package/lib/utils/terminal-theme.js.map +1 -1
  56. package/lib/utils/text.d.ts +62 -2
  57. package/lib/utils/text.d.ts.map +1 -1
  58. package/lib/utils/text.js +396 -37
  59. package/lib/utils/text.js.map +1 -1
  60. package/lib/utils/text.test.d.ts +2 -0
  61. package/lib/utils/text.test.d.ts.map +1 -0
  62. package/lib/utils/text.test.js +237 -0
  63. package/lib/utils/text.test.js.map +1 -0
  64. package/lib/utils/wait-for-spacebar.js +1 -1
  65. package/lib/utils/wait-for-spacebar.js.map +1 -1
  66. package/package.json +2 -8
@@ -0,0 +1,237 @@
1
+ // Unit tests for text utilities
2
+ import { describe, it, expect } from 'vitest';
3
+ import { truncateToWidth, truncateStart, truncateEnd, truncateMiddle, truncateFocusRange, mapColumnToDisplay, countVisibleChars, stripAnsi, splitAtVisiblePos } from './text.js';
4
+ import { applyStyle } from './colors.js';
5
+ describe('text utilities', () => {
6
+ describe('truncateToWidth', () => {
7
+ it('should preserve ANSI codes when truncating', () => {
8
+ const text = applyStyle('Hello World', { color: 'red' });
9
+ const result = truncateToWidth(text, 8);
10
+ const plain = stripAnsi(result);
11
+ expect(plain).toBe('Hello Wo');
12
+ expect(result).toContain('\x1b['); // Should contain ANSI codes
13
+ });
14
+ it('should close OSC 8 hyperlinks when truncating', () => {
15
+ const text = '\x1b]8;;file:///test\x1b\\Hello World\x1b]8;;\x1b\\';
16
+ const result = truncateToWidth(text, 8);
17
+ expect(result).toContain('\x1b]8;;\x1b\\'); // Should close hyperlink
18
+ const plain = stripAnsi(result);
19
+ expect(plain.length).toBeLessThanOrEqual(8);
20
+ });
21
+ });
22
+ describe('truncateEnd', () => {
23
+ it('should add ellipsis and preserve ANSI codes', () => {
24
+ const text = applyStyle('Hello World', { color: 'red' });
25
+ const result = truncateEnd(text, 8);
26
+ const plain = stripAnsi(result);
27
+ expect(plain).toMatch(/\.\.\.$/);
28
+ expect(plain.length).toBeLessThanOrEqual(8);
29
+ });
30
+ });
31
+ describe('truncateStart', () => {
32
+ it('should add ellipsis at start and preserve ANSI codes', () => {
33
+ const text = applyStyle('Hello World', { color: 'red' });
34
+ const result = truncateStart(text, 8);
35
+ const plain = stripAnsi(result);
36
+ expect(plain).toMatch(/^\.\.\./);
37
+ expect(plain.length).toBeLessThanOrEqual(8);
38
+ // Should preserve color on remaining text
39
+ expect(result).toContain('\x1b[');
40
+ });
41
+ });
42
+ describe('truncateMiddle', () => {
43
+ it('should add ellipsis in middle and preserve ANSI codes', () => {
44
+ const text = applyStyle('Hello World', { color: 'red' });
45
+ const result = truncateMiddle(text, 8);
46
+ const plain = stripAnsi(result);
47
+ expect(plain).toContain('...');
48
+ expect(plain.length).toBeLessThanOrEqual(8);
49
+ // Should preserve color on both parts
50
+ expect(result).toContain('\x1b[');
51
+ });
52
+ });
53
+ describe('splitAtVisiblePos', () => {
54
+ it('should split text and preserve ANSI codes', () => {
55
+ const text = applyStyle('Hello World', { color: 'red' });
56
+ const { before, after } = splitAtVisiblePos(text, 5);
57
+ const beforePlain = stripAnsi(before);
58
+ const afterPlain = stripAnsi(after);
59
+ expect(beforePlain).toBe('Hello');
60
+ expect(afterPlain).toBe(' World');
61
+ // Both parts should have ANSI codes
62
+ expect(before).toContain('\x1b[');
63
+ expect(after).toContain('\x1b[');
64
+ });
65
+ it('should not lose characters when splitting', () => {
66
+ const text = 'console.log(hello world")';
67
+ const { before, after } = splitAtVisiblePos(text, 12);
68
+ const combined = stripAnsi(before) + stripAnsi(after);
69
+ expect(combined).toBe(text);
70
+ });
71
+ });
72
+ describe('countVisibleChars', () => {
73
+ it('should count only visible characters, ignoring ANSI codes', () => {
74
+ const text = applyStyle('Hello', { color: 'red' });
75
+ expect(countVisibleChars(text)).toBe(5);
76
+ });
77
+ it('should handle OSC 8 hyperlinks', () => {
78
+ const text = '\x1b]8;;file:///test\x1b\\Hello\x1b]8;;\x1b\\';
79
+ expect(countVisibleChars(text)).toBe(5);
80
+ });
81
+ });
82
+ describe('truncateFocusRange', () => {
83
+ it('should return visible range information', () => {
84
+ const text = 'console.log("hello world");';
85
+ const result = truncateFocusRange(text, 20, 1, 11);
86
+ expect(result.text).toBeTruthy();
87
+ expect(result.visibleStartCol).toBeGreaterThan(0);
88
+ expect(result.visibleEndCol).toBeGreaterThanOrEqual(result.visibleStartCol);
89
+ });
90
+ it('should correctly show target range when code overflows', () => {
91
+ // Simulate the failing case: long line with target at the end
92
+ const longLine = '@media (tv) { .a,.b,.c,.d,.e,.f,.g,.h,.i,.j,.k,.l,.m,.n,.o,.p,.q,.r,.s,.t,.u,.v) {};';
93
+ // Target is .v which is near the end (around column 77)
94
+ const targetCol = 77;
95
+ const result = truncateFocusRange(longLine, 50, targetCol, targetCol);
96
+ // The visible range should include the target column
97
+ expect(result.visibleEndCol).toBeGreaterThanOrEqual(targetCol);
98
+ expect(result.visibleStartCol).toBeLessThanOrEqual(targetCol);
99
+ // The truncated text should contain the target character
100
+ const truncatedPlain = stripAnsi(result.text);
101
+ expect(truncatedPlain).toContain('.v');
102
+ });
103
+ });
104
+ describe('mapColumnToDisplay', () => {
105
+ it('should correctly map columns when code fits', () => {
106
+ const originalText = 'console.log("hello");';
107
+ const truncatedText = originalText;
108
+ const displayPos = mapColumnToDisplay(originalText, truncatedText, 1, originalText.length, 12);
109
+ expect(displayPos).toBe(12);
110
+ });
111
+ it('should correctly map columns with ellipsis at start', () => {
112
+ const originalText = 'console.log("hello world");';
113
+ const truncatedText = '...log("hello world");';
114
+ // If visible range starts at column 10, column 12 should map correctly
115
+ const displayPos = mapColumnToDisplay(originalText, truncatedText, 10, 25, 12);
116
+ // Column 12 in original should be at position 3 (ellipsis) + (12 - 10 + 1) = 6
117
+ expect(displayPos).toBe(6);
118
+ });
119
+ it('should correctly map columns with ellipsis at end', () => {
120
+ const originalText = 'console.log("hello world");';
121
+ const truncatedText = 'console.log("hello...';
122
+ // If visible range is 1-15, column 12 should map correctly
123
+ const displayPos = mapColumnToDisplay(originalText, truncatedText, 1, 15, 12);
124
+ expect(displayPos).toBe(12);
125
+ });
126
+ it('should correctly map target column when code overflows (failing case)', () => {
127
+ // This is the specific failing case from the user
128
+ const longLine = '@media (tv) { .a,.b,.c,.d,.e,.f,.g,.h,.i,.j,.k,.l,.m,.n,.o,.p,.q,.r,.s,.t,.u,.v) {};';
129
+ const targetCol = 77; // .v is at column 77
130
+ // Truncate to show the target
131
+ const result = truncateFocusRange(longLine, 50, targetCol, targetCol);
132
+ // Map the target column to display position
133
+ const displayPos = mapColumnToDisplay(longLine, result.text, result.visibleStartCol, result.visibleEndCol, targetCol);
134
+ // The display position should point to where .v appears in the truncated text
135
+ const truncatedPlain = stripAnsi(result.text);
136
+ const expectedChar = longLine[targetCol - 1]; // -1 because columns are 1-based
137
+ const actualChar = truncatedPlain[displayPos - 1]; // -1 because positions are 1-based
138
+ expect(actualChar).toBe(expectedChar);
139
+ });
140
+ it('should correctly map columns with start ellipsis (real-world code-debug case)', () => {
141
+ // Simulate a long line that gets truncated with ellipsis at start
142
+ // Original: " .ma:extend(.a,.b,.c,.d,.e,.f,.g,.h,.i,.j,.k,.l,.m,.n,.o,.p,.q,.r,.s,.t,.u,.v) {};"
143
+ // Truncated: "...b,.c,.d,.e,.f,.g,.h,.i,.j,.k,.l,.m,.n,.o,.p,.q,.r,.s,.t,.u,.v) {};"
144
+ const originalLine = ' .ma:extend(.a,.b,.c,.d,.e,.f,.g,.h,.i,.j,.k,.l,.m,.n,.o,.p,.q,.r,.s,.t,.u,.v) {};';
145
+ const startCol = 77; // Column 77 is '.v'
146
+ const endCol = 78; // Column 78 is ')'
147
+ // Truncate to show columns around 77-78
148
+ const result = truncateFocusRange(originalLine, 50, startCol, endCol);
149
+ // Map both columns
150
+ const displayStart = mapColumnToDisplay(originalLine, result.text, result.visibleStartCol, result.visibleEndCol, startCol, result.rangeStartCol, result.rangeEndCol);
151
+ const displayEnd = mapColumnToDisplay(originalLine, result.text, result.visibleStartCol, result.visibleEndCol, endCol, result.rangeStartCol, result.rangeEndCol);
152
+ // Verify the mapped positions point to the correct characters
153
+ const truncatedPlain = stripAnsi(result.text);
154
+ const expectedStartChar = originalLine[startCol - 1]; // '.v' at position 77
155
+ const expectedEndChar = originalLine[endCol - 1]; // ')' at position 78
156
+ const actualStartChar = truncatedPlain[displayStart - 1];
157
+ const actualEndChar = truncatedPlain[displayEnd - 1];
158
+ expect(actualStartChar).toBe(expectedStartChar);
159
+ expect(actualEndChar).toBe(expectedEndChar);
160
+ // Also verify the positions are correct relative to each other
161
+ expect(displayEnd - displayStart).toBe(endCol - startCol);
162
+ });
163
+ it('should correctly map columns when visible range is at the end of a long line', () => {
164
+ // Test case where target is near the end and we have start ellipsis
165
+ const longLine = 'a'.repeat(20) + 'b'.repeat(20) + 'c'.repeat(20) + 'TARGET' + 'd'.repeat(20);
166
+ const targetStart = 61; // Start of "TARGET"
167
+ const targetEnd = 66; // End of "TARGET"
168
+ const result = truncateFocusRange(longLine, 30, targetStart, targetEnd);
169
+ const displayStart = mapColumnToDisplay(longLine, result.text, result.visibleStartCol, result.visibleEndCol, targetStart, result.rangeStartCol, result.rangeEndCol);
170
+ const displayEnd = mapColumnToDisplay(longLine, result.text, result.visibleStartCol, result.visibleEndCol, targetEnd, result.rangeStartCol, result.rangeEndCol);
171
+ const truncatedPlain = stripAnsi(result.text);
172
+ expect(truncatedPlain[displayStart - 1]).toBe('T');
173
+ expect(truncatedPlain[displayEnd - 1]).toBe('T'); // Last char of "TARGET"
174
+ expect(displayEnd - displayStart).toBe(5); // "TARGET" is 5 chars
175
+ });
176
+ it('should correctly map .v at columns 77-78 in real-world Less code example', () => {
177
+ // Real-world test case from code-debug component
178
+ const errorLine = ' .ma:extend(.a,.b,.c,.d,.e,.f,.g,.h,.i,.j,.k,.l,.m,.n,.o,.p,.q,.r,.s,.t,.u,.v) {};';
179
+ const startColumn = 77; // Should point to '.v'
180
+ const endColumn = 78; // Should point to 'v'
181
+ // Verify the original columns are correct
182
+ expect(errorLine[startColumn - 1]).toBe('.');
183
+ expect(errorLine[endColumn - 1]).toBe('v');
184
+ // Test with different widths to ensure mapping is correct
185
+ const widths = [30, 40, 50, 60, 70, 80, 90, 100];
186
+ for (const width of widths) {
187
+ const result = truncateFocusRange(errorLine, width, startColumn, endColumn);
188
+ // Map the columns to display positions
189
+ const displayStart = mapColumnToDisplay(errorLine, result.text, result.visibleStartCol, result.visibleEndCol, startColumn, result.rangeStartCol, result.rangeEndCol);
190
+ const displayEnd = mapColumnToDisplay(errorLine, result.text, result.visibleStartCol, result.visibleEndCol, endColumn, result.rangeStartCol, result.rangeEndCol);
191
+ // Verify the mapped positions point to the correct characters
192
+ const truncatedPlain = stripAnsi(result.text);
193
+ const actualStartChar = truncatedPlain[displayStart - 1];
194
+ const actualEndChar = truncatedPlain[displayEnd - 1];
195
+ expect(actualStartChar).toBe('.');
196
+ expect(actualEndChar).toBe('v');
197
+ expect(displayEnd - displayStart).toBe(1); // Should be exactly 1 character apart
198
+ // Also verify the visible range includes the target
199
+ expect(result.visibleStartCol).toBeLessThanOrEqual(startColumn);
200
+ expect(result.visibleEndCol).toBeGreaterThanOrEqual(endColumn);
201
+ }
202
+ });
203
+ it('should correctly highlight .v at columns 77-78 when simulating code-debug highlighting', () => {
204
+ // Simulate the exact highlighting logic used in code-debug component
205
+ const errorLine = ' .ma:extend(.a,.b,.c,.d,.e,.f,.g,.h,.i,.j,.k,.l,.m,.n,.o,.p,.q,.r,.s,.t,.u,.v) {};';
206
+ const startColumn = 77;
207
+ const endColumn = 78;
208
+ // Test with different widths
209
+ const widths = [30, 40, 50, 60, 70, 80, 90, 100];
210
+ for (const width of widths) {
211
+ // Step 1: Truncate (as code-debug does)
212
+ const truncateResult = truncateFocusRange(errorLine, width, startColumn, endColumn);
213
+ const truncatedErrorLine = truncateResult.text;
214
+ const visibleStartCol = truncateResult.visibleStartCol;
215
+ const visibleEndCol = truncateResult.visibleEndCol;
216
+ // Step 2: Map columns (as code-debug does)
217
+ const mapColumnToDisplayLocal = (originalCol) => {
218
+ return mapColumnToDisplay(errorLine, truncatedErrorLine, visibleStartCol, visibleEndCol, originalCol, truncateResult.rangeStartCol, truncateResult.rangeEndCol);
219
+ };
220
+ const highlightStart = mapColumnToDisplayLocal(startColumn);
221
+ const highlightEnd = mapColumnToDisplayLocal(endColumn);
222
+ // Step 3: Split and extract highlight range (as code-debug does)
223
+ const { before: _beforeHighlight, after: remainingAfterStart } = splitAtVisiblePos(truncatedErrorLine, highlightStart - 1);
224
+ const highlightLength = highlightEnd - highlightStart + 1;
225
+ const { before: highlightRange } = splitAtVisiblePos(remainingAfterStart, highlightLength);
226
+ // Step 4: Verify the highlighted range contains .v
227
+ const highlightPlain = stripAnsi(highlightRange);
228
+ expect(highlightPlain).toContain('.v');
229
+ // Step 5: Verify the exact characters
230
+ const truncatedPlain = stripAnsi(truncatedErrorLine);
231
+ expect(truncatedPlain[highlightStart - 1]).toBe('.');
232
+ expect(truncatedPlain[highlightEnd - 1]).toBe('v');
233
+ }
234
+ });
235
+ });
236
+ });
237
+ //# sourceMappingURL=text.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.test.js","sourceRoot":"","sources":["../../src/utils/text.test.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,7 @@ export async function waitForSpacebar(region, message = 'Press SPACEBAR to conti
22
22
  try {
23
23
  process.stdin.setRawMode(true);
24
24
  }
25
- catch (err) {
25
+ catch {
26
26
  // If setRawMode fails (e.g., stdin is closed or not available), just resolve
27
27
  resolve();
28
28
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"wait-for-spacebar.js","sourceRoot":"","sources":["../../src/utils/wait-for-spacebar.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAsB,EACtB,UAAkB,+BAA+B;IAEjD,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1B,MAAM,CAAC,KAAK,EAAE,CAAC;IACf,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC;IACvC,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IACxC,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;IAEpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,yDAAyD;QACzD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACzB,yCAAyC;YACzC,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,oDAAoD;QACpD,IAAI,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,6EAA6E;YAC7E,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAElC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE;YACjC,0BAA0B;YAC1B,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;gBAC/B,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC,CAAC,mBAAmB;gBAChD,4DAA4D;gBAC5D,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,gCAAgC;YACrD,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;YACpB,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,IAAI,CAAC;gBACH,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;YAAC,MAAM,CAAC;gBACP,wCAAwC;YAC1C,CAAC;YACD,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACjD,0DAA0D;YAC1D,4EAA4E;YAC5E,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC3C,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,CAAC,CAAC;QAEF,2BAA2B;QAC3B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE/B,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"wait-for-spacebar.js","sourceRoot":"","sources":["../../src/utils/wait-for-spacebar.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAsB,EACtB,UAAkB,+BAA+B;IAEjD,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1B,MAAM,CAAC,KAAK,EAAE,CAAC;IACf,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC;IACvC,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IACxC,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;IAEpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,yDAAyD;QACzD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACzB,yCAAyC;YACzC,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,oDAAoD;QACpD,IAAI,CAAC;YACH,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACP,6EAA6E;YAC7E,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QAED,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAElC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,EAAE;YACjC,0BAA0B;YAC1B,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;gBAC/B,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;YACZ,CAAC;iBAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC,CAAC,mBAAmB;gBAChD,4DAA4D;gBAC5D,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,gCAAgC;YACrD,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,QAAQ,GAAG,GAAG,EAAE;YACpB,OAAO,EAAE,CAAC;YACV,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC;QAEF,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,IAAI,CAAC;gBACH,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;YAAC,MAAM,CAAC;gBACP,wCAAwC;YAC1C,CAAC;YACD,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;YACjD,0DAA0D;YAC1D,4EAA4E;YAC5E,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC3C,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,CAAC,CAAC;QAEF,2BAA2B;QAC3B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE/B,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linecraft",
3
- "version": "0.5.4",
3
+ "version": "0.5.6",
4
4
  "description": "High-performance terminal UI library for Node.js",
5
5
  "type": "module",
6
6
  "main": "./lib/index.js",
@@ -22,13 +22,7 @@
22
22
  "type": "git",
23
23
  "url": "https://github.com/matthew-dean/linecraft.git"
24
24
  },
25
- "license": "LicenseRef-FLL-1.2",
26
- "licenses": [
27
- {
28
- "type": "LicenseRef-FLL-1.2",
29
- "url": "https://fllicense.org"
30
- }
31
- ],
25
+ "license": "MIT",
32
26
  "scripts": {
33
27
  "build:ts": "tsc -p tsconfig.build.json",
34
28
  "build": "pnpm build:ts",