@nanocollective/nanocoder 1.13.8 → 1.13.9

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 (95) hide show
  1. package/dist/app.js +6 -6
  2. package/dist/app.js.map +1 -1
  3. package/dist/components/status.d.ts.map +1 -1
  4. package/dist/components/status.js +8 -4
  5. package/dist/components/status.js.map +1 -1
  6. package/dist/components/user-input.d.ts.map +1 -1
  7. package/dist/components/user-input.js +9 -10
  8. package/dist/components/user-input.js.map +1 -1
  9. package/dist/components/welcome-message.d.ts.map +1 -1
  10. package/dist/components/welcome-message.js +9 -3
  11. package/dist/components/welcome-message.js.map +1 -1
  12. package/dist/hooks/__tests__/test-helpers.d.ts +5 -0
  13. package/dist/hooks/__tests__/test-helpers.d.ts.map +1 -0
  14. package/dist/hooks/__tests__/test-helpers.js +32 -0
  15. package/dist/hooks/__tests__/test-helpers.js.map +1 -0
  16. package/dist/hooks/__tests__/useInputState.deletion.spec.d.ts +2 -0
  17. package/dist/hooks/__tests__/useInputState.deletion.spec.d.ts.map +1 -0
  18. package/dist/hooks/__tests__/useInputState.deletion.spec.js +328 -0
  19. package/dist/hooks/__tests__/useInputState.deletion.spec.js.map +1 -0
  20. package/dist/hooks/__tests__/useInputState.state-management.spec.d.ts +2 -0
  21. package/dist/hooks/__tests__/useInputState.state-management.spec.d.ts.map +1 -0
  22. package/dist/hooks/__tests__/useInputState.state-management.spec.js +367 -0
  23. package/dist/hooks/__tests__/useInputState.state-management.spec.js.map +1 -0
  24. package/dist/hooks/__tests__/useInputState.undo-redo.spec.d.ts +2 -0
  25. package/dist/hooks/__tests__/useInputState.undo-redo.spec.d.ts.map +1 -0
  26. package/dist/hooks/__tests__/useInputState.undo-redo.spec.js +285 -0
  27. package/dist/hooks/__tests__/useInputState.undo-redo.spec.js.map +1 -0
  28. package/dist/hooks/__tests__/useToolHandler.cancellation.spec.d.ts +2 -0
  29. package/dist/hooks/__tests__/useToolHandler.cancellation.spec.d.ts.map +1 -0
  30. package/dist/hooks/__tests__/useToolHandler.cancellation.spec.js +227 -0
  31. package/dist/hooks/__tests__/useToolHandler.cancellation.spec.js.map +1 -0
  32. package/dist/hooks/__tests__/useToolHandler.execution.spec.d.ts +2 -0
  33. package/dist/hooks/__tests__/useToolHandler.execution.spec.d.ts.map +1 -0
  34. package/dist/hooks/__tests__/useToolHandler.execution.spec.js +264 -0
  35. package/dist/hooks/__tests__/useToolHandler.execution.spec.js.map +1 -0
  36. package/dist/hooks/__tests__/useToolHandler.validation.spec.d.ts +2 -0
  37. package/dist/hooks/__tests__/useToolHandler.validation.spec.d.ts.map +1 -0
  38. package/dist/hooks/__tests__/useToolHandler.validation.spec.js +149 -0
  39. package/dist/hooks/__tests__/useToolHandler.validation.spec.js.map +1 -0
  40. package/dist/{app/hooks → hooks}/useAppInitialization.d.ts +5 -5
  41. package/dist/hooks/useAppInitialization.d.ts.map +1 -0
  42. package/dist/{app/hooks → hooks}/useAppInitialization.js +15 -15
  43. package/dist/hooks/useAppInitialization.js.map +1 -0
  44. package/dist/{app/hooks → hooks}/useAppState.d.ts +6 -6
  45. package/dist/hooks/useAppState.d.ts.map +1 -0
  46. package/dist/{app/hooks → hooks}/useAppState.js +2 -2
  47. package/dist/hooks/useAppState.js.map +1 -0
  48. package/dist/{app/hooks → hooks}/useChatHandler.d.ts +2 -2
  49. package/dist/hooks/useChatHandler.d.ts.map +1 -0
  50. package/dist/{app/hooks → hooks}/useChatHandler.js +10 -10
  51. package/dist/hooks/useChatHandler.js.map +1 -0
  52. package/dist/hooks/useDirectoryTrust.d.ts.map +1 -0
  53. package/dist/{app/hooks → hooks}/useDirectoryTrust.js +3 -3
  54. package/dist/hooks/useDirectoryTrust.js.map +1 -0
  55. package/dist/{app/hooks → hooks}/useModeHandlers.d.ts +2 -2
  56. package/dist/hooks/useModeHandlers.d.ts.map +1 -0
  57. package/dist/{app/hooks → hooks}/useModeHandlers.js +4 -4
  58. package/dist/hooks/useModeHandlers.js.map +1 -0
  59. package/dist/hooks/useTerminalWidth.d.ts +15 -0
  60. package/dist/hooks/useTerminalWidth.d.ts.map +1 -1
  61. package/dist/hooks/useTerminalWidth.js +39 -0
  62. package/dist/hooks/useTerminalWidth.js.map +1 -1
  63. package/dist/{app/hooks → hooks}/useToolHandler.d.ts +2 -2
  64. package/dist/hooks/useToolHandler.d.ts.map +1 -0
  65. package/dist/{app/hooks → hooks}/useToolHandler.js +65 -5
  66. package/dist/hooks/useToolHandler.js.map +1 -0
  67. package/dist/recommendations/model-database.d.ts.map +1 -1
  68. package/dist/recommendations/model-database.js +14 -0
  69. package/dist/recommendations/model-database.js.map +1 -1
  70. package/dist/utils/paste-detection.spec.d.ts +2 -0
  71. package/dist/utils/paste-detection.spec.d.ts.map +1 -0
  72. package/dist/utils/paste-detection.spec.js +44 -0
  73. package/dist/utils/paste-detection.spec.js.map +1 -0
  74. package/dist/utils/paste-utils.spec.d.ts +2 -0
  75. package/dist/utils/paste-utils.spec.d.ts.map +1 -0
  76. package/dist/utils/paste-utils.spec.js +61 -0
  77. package/dist/utils/paste-utils.spec.js.map +1 -0
  78. package/package.json +7 -2
  79. package/dist/app/hooks/useAppInitialization.d.ts.map +0 -1
  80. package/dist/app/hooks/useAppInitialization.js.map +0 -1
  81. package/dist/app/hooks/useAppState.d.ts.map +0 -1
  82. package/dist/app/hooks/useAppState.js.map +0 -1
  83. package/dist/app/hooks/useChatHandler.d.ts.map +0 -1
  84. package/dist/app/hooks/useChatHandler.js.map +0 -1
  85. package/dist/app/hooks/useDirectoryTrust.d.ts.map +0 -1
  86. package/dist/app/hooks/useDirectoryTrust.js.map +0 -1
  87. package/dist/app/hooks/useModeHandlers.d.ts.map +0 -1
  88. package/dist/app/hooks/useModeHandlers.js.map +0 -1
  89. package/dist/app/hooks/useToolHandler.d.ts.map +0 -1
  90. package/dist/app/hooks/useToolHandler.js.map +0 -1
  91. package/dist/hooks/useInputState.spec.d.ts +0 -2
  92. package/dist/hooks/useInputState.spec.d.ts.map +0 -1
  93. package/dist/hooks/useInputState.spec.js +0 -163
  94. package/dist/hooks/useInputState.spec.js.map +0 -1
  95. /package/dist/{app/hooks → hooks}/useDirectoryTrust.d.ts +0 -0
@@ -0,0 +1,328 @@
1
+ import test from 'ava';
2
+ import { PlaceholderType } from '../../types/hooks.js';
3
+ import { handleAtomicDeletion } from '../../utils/atomic-deletion.js';
4
+ // Placeholder Deletion Tests
5
+ // Tests focus on the deletePlaceholder logic and atomic deletion integration
6
+ // Helper to simulate deletePlaceholder operation
7
+ function deletePlaceholder(currentState, placeholderId) {
8
+ const placeholderPattern = `[Paste #${placeholderId}: \\d+ chars]`;
9
+ const regex = new RegExp(placeholderPattern.replace(/[[\]]/g, '\\$&'), 'g');
10
+ const newDisplayValue = currentState.displayValue.replace(regex, '');
11
+ const newPlaceholderContent = { ...currentState.placeholderContent };
12
+ delete newPlaceholderContent[placeholderId];
13
+ return {
14
+ displayValue: newDisplayValue,
15
+ placeholderContent: newPlaceholderContent,
16
+ };
17
+ }
18
+ test('deletePlaceholder: removes placeholder from display and content', t => {
19
+ const currentState = {
20
+ displayValue: 'Analyze [Paste #123: 600 chars]',
21
+ placeholderContent: {
22
+ '123': {
23
+ type: PlaceholderType.PASTE,
24
+ displayText: '[Paste #123: 600 chars]',
25
+ content: 'x'.repeat(600),
26
+ originalSize: 600,
27
+ },
28
+ },
29
+ };
30
+ const result = deletePlaceholder(currentState, '123');
31
+ t.is(result.displayValue, 'Analyze ');
32
+ t.is(Object.keys(result.placeholderContent).length, 0);
33
+ t.false('123' in result.placeholderContent);
34
+ });
35
+ test('deletePlaceholder: preserves other placeholders', t => {
36
+ const currentState = {
37
+ displayValue: '[Paste #1: 100 chars] and [Paste #2: 200 chars]',
38
+ placeholderContent: {
39
+ '1': {
40
+ type: PlaceholderType.PASTE,
41
+ displayText: '[Paste #1: 100 chars]',
42
+ content: 'first',
43
+ originalSize: 100,
44
+ },
45
+ '2': {
46
+ type: PlaceholderType.PASTE,
47
+ displayText: '[Paste #2: 200 chars]',
48
+ content: 'second',
49
+ originalSize: 200,
50
+ },
51
+ },
52
+ };
53
+ const result = deletePlaceholder(currentState, '1');
54
+ t.false('1' in result.placeholderContent, 'First placeholder should be deleted');
55
+ t.true('2' in result.placeholderContent, 'Second placeholder should remain');
56
+ t.true(result.displayValue.includes('[Paste #2:'), 'Second placeholder should be in display');
57
+ t.false(result.displayValue.includes('[Paste #1:'), 'First placeholder should not be in display');
58
+ });
59
+ test('deletePlaceholder: with surrounding text preserves text', t => {
60
+ const currentState = {
61
+ displayValue: 'before [Paste #456: 300 chars] after',
62
+ placeholderContent: {
63
+ '456': {
64
+ type: PlaceholderType.PASTE,
65
+ displayText: '[Paste #456: 300 chars]',
66
+ content: 'content',
67
+ originalSize: 300,
68
+ },
69
+ },
70
+ };
71
+ const result = deletePlaceholder(currentState, '456');
72
+ t.is(result.displayValue, 'before after');
73
+ t.true(result.displayValue.includes('before'));
74
+ t.true(result.displayValue.includes('after'));
75
+ t.false(result.displayValue.includes('[Paste #'));
76
+ });
77
+ test('deletePlaceholder: handles non-existent ID gracefully', t => {
78
+ const currentState = {
79
+ displayValue: '[Paste #789: 400 chars]',
80
+ placeholderContent: {
81
+ '789': {
82
+ type: PlaceholderType.PASTE,
83
+ displayText: '[Paste #789: 400 chars]',
84
+ content: 'data',
85
+ originalSize: 400,
86
+ },
87
+ },
88
+ };
89
+ // Try to delete non-existent placeholder
90
+ const result = deletePlaceholder(currentState, '999');
91
+ // Original placeholder should remain
92
+ t.true('789' in result.placeholderContent);
93
+ t.true(result.displayValue.includes('[Paste #789:'));
94
+ t.is(Object.keys(result.placeholderContent).length, 1);
95
+ });
96
+ test('deletePlaceholder: sequence of deletions', t => {
97
+ const initialState = {
98
+ displayValue: '[Paste #1: 100 chars] [Paste #2: 200 chars] [Paste #3: 300 chars]',
99
+ placeholderContent: {
100
+ '1': {
101
+ type: PlaceholderType.PASTE,
102
+ displayText: '[Paste #1: 100 chars]',
103
+ content: 'a',
104
+ originalSize: 100,
105
+ },
106
+ '2': {
107
+ type: PlaceholderType.PASTE,
108
+ displayText: '[Paste #2: 200 chars]',
109
+ content: 'b',
110
+ originalSize: 200,
111
+ },
112
+ '3': {
113
+ type: PlaceholderType.PASTE,
114
+ displayText: '[Paste #3: 300 chars]',
115
+ content: 'c',
116
+ originalSize: 300,
117
+ },
118
+ },
119
+ };
120
+ // Delete first
121
+ let state = deletePlaceholder(initialState, '1');
122
+ t.is(Object.keys(state.placeholderContent).length, 2);
123
+ t.false('1' in state.placeholderContent);
124
+ // Delete second
125
+ state = deletePlaceholder(state, '2');
126
+ t.is(Object.keys(state.placeholderContent).length, 1);
127
+ t.false('2' in state.placeholderContent);
128
+ // Delete third
129
+ state = deletePlaceholder(state, '3');
130
+ t.is(Object.keys(state.placeholderContent).length, 0);
131
+ t.false('3' in state.placeholderContent);
132
+ });
133
+ test('atomic deletion: backspace at end removes entire placeholder', t => {
134
+ const currentState = {
135
+ displayValue: 'text: [Paste #123: 650 chars]',
136
+ placeholderContent: {
137
+ '123': {
138
+ type: PlaceholderType.PASTE,
139
+ displayText: '[Paste #123: 650 chars]',
140
+ content: 'm'.repeat(650),
141
+ originalSize: 650,
142
+ },
143
+ },
144
+ };
145
+ // Simulate backspace at the end
146
+ const newInput = currentState.displayValue.slice(0, -1);
147
+ const result = handleAtomicDeletion(currentState, newInput);
148
+ t.truthy(result, 'Should trigger atomic deletion');
149
+ t.is(result.displayValue, 'text: ');
150
+ t.is(Object.keys(result.placeholderContent).length, 0);
151
+ });
152
+ test('atomic deletion: delete from middle removes placeholder', t => {
153
+ const currentState = {
154
+ displayValue: 'start [Paste #456: 600 chars] end',
155
+ placeholderContent: {
156
+ '456': {
157
+ type: PlaceholderType.PASTE,
158
+ displayText: '[Paste #456: 600 chars]',
159
+ content: 'n'.repeat(600),
160
+ originalSize: 600,
161
+ },
162
+ },
163
+ };
164
+ // Simulate deletion from middle of placeholder
165
+ const placeholderText = '[Paste #456: 600 chars]';
166
+ const displayWithPlaceholder = currentState.displayValue;
167
+ const middleIndex = displayWithPlaceholder.indexOf(placeholderText) + 5;
168
+ const newInput = displayWithPlaceholder.slice(0, middleIndex) +
169
+ displayWithPlaceholder.slice(middleIndex + 1);
170
+ const result = handleAtomicDeletion(currentState, newInput);
171
+ t.truthy(result, 'Should trigger atomic deletion');
172
+ t.false(result.displayValue.includes('[Paste #'));
173
+ t.is(Object.keys(result.placeholderContent).length, 0);
174
+ });
175
+ test('atomic deletion: returns null for normal edits', t => {
176
+ const currentState = {
177
+ displayValue: 'normal text',
178
+ placeholderContent: {},
179
+ };
180
+ const newInput = 'normal tex';
181
+ const result = handleAtomicDeletion(currentState, newInput);
182
+ t.is(result, null, 'Should not trigger atomic deletion');
183
+ });
184
+ test('atomic deletion: preserves other placeholders', t => {
185
+ const currentState = {
186
+ displayValue: '[Paste #1: 100 chars] [Paste #2: 200 chars]',
187
+ placeholderContent: {
188
+ '1': {
189
+ type: PlaceholderType.PASTE,
190
+ displayText: '[Paste #1: 100 chars]',
191
+ content: 'first',
192
+ originalSize: 100,
193
+ },
194
+ '2': {
195
+ type: PlaceholderType.PASTE,
196
+ displayText: '[Paste #2: 200 chars]',
197
+ content: 'second',
198
+ originalSize: 200,
199
+ },
200
+ },
201
+ };
202
+ // Delete one character from first placeholder
203
+ const placeholderText = '[Paste #1: 100 chars]';
204
+ const index = currentState.displayValue.indexOf(placeholderText) + 5;
205
+ const newInput = currentState.displayValue.slice(0, index) +
206
+ currentState.displayValue.slice(index + 1);
207
+ const result = handleAtomicDeletion(currentState, newInput);
208
+ t.truthy(result);
209
+ t.false('1' in result.placeholderContent, 'First should be deleted');
210
+ t.true('2' in result.placeholderContent, 'Second should remain');
211
+ });
212
+ test('integration: delete then undo via stack', t => {
213
+ const originalState = {
214
+ displayValue: 'code: [Paste #789: 700 chars]',
215
+ placeholderContent: {
216
+ '789': {
217
+ type: PlaceholderType.PASTE,
218
+ displayText: '[Paste #789: 700 chars]',
219
+ content: 'r'.repeat(650),
220
+ originalSize: 700,
221
+ },
222
+ },
223
+ };
224
+ // Delete placeholder
225
+ const afterDelete = deletePlaceholder(originalState, '789');
226
+ t.is(Object.keys(afterDelete.placeholderContent).length, 0);
227
+ // Simulate undo by restoring original state (would be from undo stack)
228
+ const afterUndo = originalState;
229
+ t.is(Object.keys(afterUndo.placeholderContent).length, 1);
230
+ t.true('789' in afterUndo.placeholderContent);
231
+ t.is(afterUndo.displayValue, 'code: [Paste #789: 700 chars]');
232
+ });
233
+ test('edge case: delete placeholder with special regex characters in content', t => {
234
+ const currentState = {
235
+ displayValue: 'test [Paste #111: 500 chars]',
236
+ placeholderContent: {
237
+ '111': {
238
+ type: PlaceholderType.PASTE,
239
+ displayText: '[Paste #111: 500 chars]',
240
+ content: '.*+?^${}()|[]\\',
241
+ originalSize: 500,
242
+ },
243
+ },
244
+ };
245
+ const result = deletePlaceholder(currentState, '111');
246
+ t.is(result.displayValue, 'test ');
247
+ t.is(Object.keys(result.placeholderContent).length, 0);
248
+ });
249
+ test('edge case: placeholder at start of display value', t => {
250
+ const currentState = {
251
+ displayValue: '[Paste #222: 300 chars] followed by text',
252
+ placeholderContent: {
253
+ '222': {
254
+ type: PlaceholderType.PASTE,
255
+ displayText: '[Paste #222: 300 chars]',
256
+ content: 'start',
257
+ originalSize: 300,
258
+ },
259
+ },
260
+ };
261
+ const result = deletePlaceholder(currentState, '222');
262
+ t.is(result.displayValue, ' followed by text');
263
+ t.false('222' in result.placeholderContent);
264
+ });
265
+ test('edge case: placeholder at end of display value', t => {
266
+ const currentState = {
267
+ displayValue: 'text before [Paste #333: 400 chars]',
268
+ placeholderContent: {
269
+ '333': {
270
+ type: PlaceholderType.PASTE,
271
+ displayText: '[Paste #333: 400 chars]',
272
+ content: 'end',
273
+ originalSize: 400,
274
+ },
275
+ },
276
+ };
277
+ const result = deletePlaceholder(currentState, '333');
278
+ t.is(result.displayValue, 'text before ');
279
+ t.false('333' in result.placeholderContent);
280
+ });
281
+ test('edge case: only placeholder in display value', t => {
282
+ const currentState = {
283
+ displayValue: '[Paste #444: 250 chars]',
284
+ placeholderContent: {
285
+ '444': {
286
+ type: PlaceholderType.PASTE,
287
+ displayText: '[Paste #444: 250 chars]',
288
+ content: 'only',
289
+ originalSize: 250,
290
+ },
291
+ },
292
+ };
293
+ const result = deletePlaceholder(currentState, '444');
294
+ t.is(result.displayValue, '');
295
+ t.is(Object.keys(result.placeholderContent).length, 0);
296
+ });
297
+ test('legacy compatibility: pastedContent map updates', t => {
298
+ const currentState = {
299
+ displayValue: '[Paste #555: 700 chars]',
300
+ placeholderContent: {
301
+ '555': {
302
+ type: PlaceholderType.PASTE,
303
+ displayText: '[Paste #555: 700 chars]',
304
+ content: 's'.repeat(700),
305
+ originalSize: 700,
306
+ },
307
+ },
308
+ };
309
+ // Simulate the legacy pastedContent computed property
310
+ const legacyPastedContent = {};
311
+ Object.entries(currentState.placeholderContent).forEach(([id, content]) => {
312
+ if (content.type === PlaceholderType.PASTE) {
313
+ legacyPastedContent[id] = content.content;
314
+ }
315
+ });
316
+ t.true('555' in legacyPastedContent);
317
+ t.is(legacyPastedContent['555'].length, 700);
318
+ // After deletion
319
+ const afterDelete = deletePlaceholder(currentState, '555');
320
+ const legacyAfterDelete = {};
321
+ Object.entries(afterDelete.placeholderContent).forEach(([id, content]) => {
322
+ if (content.type === PlaceholderType.PASTE) {
323
+ legacyAfterDelete[id] = content.content;
324
+ }
325
+ });
326
+ t.false('555' in legacyAfterDelete);
327
+ });
328
+ //# sourceMappingURL=useInputState.deletion.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInputState.deletion.spec.js","sourceRoot":"","sources":["../../../source/hooks/__tests__/useInputState.deletion.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=useInputState.state-management.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useInputState.state-management.spec.d.ts","sourceRoot":"","sources":["../../../source/hooks/__tests__/useInputState.state-management.spec.ts"],"names":[],"mappings":""}