spec-copy-selection 1.0.3 → 1.0.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.
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.shouldPrependSeparator = shouldPrependSeparator;
6
7
  exports.readFileRange = readFileRange;
7
8
  const node_fs_1 = require("node:fs");
8
9
  const promises_1 = require("node:fs/promises");
@@ -10,14 +11,25 @@ const node_path_1 = __importDefault(require("node:path"));
10
11
  const node_readline_1 = require("node:readline");
11
12
  const FILE_SIZE_THRESHOLD = 10 * 1024 * 1024;
12
13
  function shouldPrependSeparator(filePath, startLine, linesBeforeStart) {
13
- var _a;
14
14
  if (!filePath.includes('backlog.md')) {
15
15
  return false;
16
16
  }
17
17
  if (startLine === 1) {
18
18
  return false;
19
19
  }
20
- return ((_a = linesBeforeStart[linesBeforeStart.length - 1]) === null || _a === void 0 ? void 0 : _a.trim()) !== '---';
20
+ let lastSeparatorIndex = -1;
21
+ for (let i = linesBeforeStart.length - 1; i >= 0; i--) {
22
+ if (linesBeforeStart[i].trim() === '---') {
23
+ lastSeparatorIndex = i;
24
+ break;
25
+ }
26
+ }
27
+ if (lastSeparatorIndex === -1) {
28
+ return false;
29
+ }
30
+ const linesAfterSeparator = linesBeforeStart.slice(lastSeparatorIndex + 1);
31
+ const hasContentAfterSeparator = linesAfterSeparator.some((line) => line.trim() !== '');
32
+ return hasContentAfterSeparator;
21
33
  }
22
34
  async function insertSeparatorToFile(filePath, startLine, endLine, lines) {
23
35
  const updatedLines = [
@@ -1 +1 @@
1
- {"version":3,"file":"readFileRange.js","sourceRoot":"","sources":["../../src/cli/readFileRange.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"readFileRange.js","sourceRoot":"","sources":["../../src/cli/readFileRange.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,174 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const bun_test_1 = require("bun:test");
4
+ const readFileRange_js_1 = require("./readFileRange.js");
5
+ (0, bun_test_1.describe)('shouldPrependSeparator', () => {
6
+ (0, bun_test_1.describe)('backlog.md file detection', () => {
7
+ (0, bun_test_1.test)('returns false for backlog.md files in first section (no separator before)', () => {
8
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 2, ['line1']);
9
+ (0, bun_test_1.expect)(result).toBe(false);
10
+ });
11
+ (0, bun_test_1.test)('returns false for non-backlog.md files (requirements.md)', () => {
12
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/requirements.md', 2, ['line1']);
13
+ (0, bun_test_1.expect)(result).toBe(false);
14
+ });
15
+ (0, bun_test_1.test)('returns false for non-backlog.md files (design.md)', () => {
16
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/design.md', 2, ['line1']);
17
+ (0, bun_test_1.expect)(result).toBe(false);
18
+ });
19
+ (0, bun_test_1.test)('handles relative path to backlog.md', () => {
20
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('backlog.md', 2, ['line1']);
21
+ (0, bun_test_1.expect)(result).toBe(false);
22
+ });
23
+ (0, bun_test_1.test)('handles absolute path to backlog.md', () => {
24
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('/home/user/project/specs/feature/backlog.md', 2, [
25
+ 'line1',
26
+ ]);
27
+ (0, bun_test_1.expect)(result).toBe(false);
28
+ });
29
+ (0, bun_test_1.test)('handles Windows absolute path to backlog.md', () => {
30
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('D:\\projects\\specs\\feature\\backlog.md', 2, [
31
+ 'line1',
32
+ ]);
33
+ (0, bun_test_1.expect)(result).toBe(false);
34
+ });
35
+ (0, bun_test_1.test)('handles nested path to backlog.md', () => {
36
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/deep/nested/feature/backlog.md', 2, ['line1']);
37
+ (0, bun_test_1.expect)(result).toBe(false);
38
+ });
39
+ });
40
+ (0, bun_test_1.describe)('startLine validation', () => {
41
+ (0, bun_test_1.test)('returns false when startLine is 1 (first section)', () => {
42
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 1, []);
43
+ (0, bun_test_1.expect)(result).toBe(false);
44
+ });
45
+ (0, bun_test_1.test)('returns false when startLine is 2 and no separator exists (first section)', () => {
46
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 2, ['line1']);
47
+ (0, bun_test_1.expect)(result).toBe(false);
48
+ });
49
+ (0, bun_test_1.test)('returns false when startLine is 10 and no separator exists (first section)', () => {
50
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 10, [
51
+ 'line1',
52
+ 'line2',
53
+ 'line3',
54
+ ]);
55
+ (0, bun_test_1.expect)(result).toBe(false);
56
+ });
57
+ });
58
+ (0, bun_test_1.describe)('separator detection', () => {
59
+ (0, bun_test_1.test)('returns true when "---" exists with content after it (new section)', () => {
60
+ const linesBeforeStart = ['line1', '---', 'line3'];
61
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
62
+ (0, bun_test_1.expect)(result).toBe(true);
63
+ });
64
+ (0, bun_test_1.test)('returns false when separator exists with empty lines around it (bug fix)', () => {
65
+ const linesBeforeStart = ['a', 'b', '', '---', ''];
66
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 6, linesBeforeStart);
67
+ (0, bun_test_1.expect)(result).toBe(false);
68
+ });
69
+ (0, bun_test_1.test)('returns false when no "---" exists in any line (first section)', () => {
70
+ const linesBeforeStart = ['line1', 'line2', 'line3'];
71
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
72
+ (0, bun_test_1.expect)(result).toBe(false);
73
+ });
74
+ (0, bun_test_1.test)('handles trimmed separators with leading whitespace and content after', () => {
75
+ const linesBeforeStart = ['line1', ' ---', 'line3'];
76
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
77
+ (0, bun_test_1.expect)(result).toBe(true);
78
+ });
79
+ (0, bun_test_1.test)('handles trimmed separators with trailing whitespace and content after', () => {
80
+ const linesBeforeStart = ['line1', '--- ', 'line3'];
81
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
82
+ (0, bun_test_1.expect)(result).toBe(true);
83
+ });
84
+ (0, bun_test_1.test)('handles trimmed separators with both leading and trailing whitespace and content after', () => {
85
+ const linesBeforeStart = ['line1', ' --- ', 'line3'];
86
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
87
+ (0, bun_test_1.expect)(result).toBe(true);
88
+ });
89
+ (0, bun_test_1.test)('does NOT match partial separators: "----" (first section)', () => {
90
+ const linesBeforeStart = ['line1', '----', 'line3'];
91
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
92
+ (0, bun_test_1.expect)(result).toBe(false);
93
+ });
94
+ (0, bun_test_1.test)('does NOT match partial separators: "-- -" (first section)', () => {
95
+ const linesBeforeStart = ['line1', '-- -', 'line3'];
96
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
97
+ (0, bun_test_1.expect)(result).toBe(false);
98
+ });
99
+ (0, bun_test_1.test)('does NOT match partial separators: "---text" (first section)', () => {
100
+ const linesBeforeStart = ['line1', '---text', 'line3'];
101
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
102
+ (0, bun_test_1.expect)(result).toBe(false);
103
+ });
104
+ (0, bun_test_1.test)('does NOT match partial separators: "text---" (first section)', () => {
105
+ const linesBeforeStart = ['line1', 'text---', 'line3'];
106
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
107
+ (0, bun_test_1.expect)(result).toBe(false);
108
+ });
109
+ (0, bun_test_1.test)('returns true when separator is at the beginning with content after', () => {
110
+ const linesBeforeStart = ['---', 'line2', 'line3'];
111
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
112
+ (0, bun_test_1.expect)(result).toBe(true);
113
+ });
114
+ (0, bun_test_1.test)('returns false when separator is at the end of linesBeforeStart', () => {
115
+ const linesBeforeStart = ['line1', 'line2', '---'];
116
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
117
+ (0, bun_test_1.expect)(result).toBe(false);
118
+ });
119
+ });
120
+ (0, bun_test_1.describe)('edge cases', () => {
121
+ (0, bun_test_1.test)('handles empty linesBeforeStart array (first section)', () => {
122
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 2, []);
123
+ (0, bun_test_1.expect)(result).toBe(false);
124
+ });
125
+ (0, bun_test_1.test)('handles array with only empty strings (first section)', () => {
126
+ const linesBeforeStart = ['', '', ''];
127
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
128
+ (0, bun_test_1.expect)(result).toBe(false);
129
+ });
130
+ (0, bun_test_1.test)('handles multiple separators in linesBeforeStart (uses last separator)', () => {
131
+ const linesBeforeStart = ['line1', '---', 'line3', '---', 'line5'];
132
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 6, linesBeforeStart);
133
+ (0, bun_test_1.expect)(result).toBe(true);
134
+ });
135
+ (0, bun_test_1.test)('handles separator with tabs and content after', () => {
136
+ const linesBeforeStart = ['line1', '\t---\t', 'line3'];
137
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
138
+ (0, bun_test_1.expect)(result).toBe(true);
139
+ });
140
+ });
141
+ (0, bun_test_1.describe)('combined conditions', () => {
142
+ (0, bun_test_1.test)('returns false when file is not backlog.md even if other conditions met', () => {
143
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/requirements.md', 2, ['line1']);
144
+ (0, bun_test_1.expect)(result).toBe(false);
145
+ });
146
+ (0, bun_test_1.test)('returns false when startLine is 1 even if file is backlog.md', () => {
147
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 1, ['line1']);
148
+ (0, bun_test_1.expect)(result).toBe(false);
149
+ });
150
+ (0, bun_test_1.test)('returns true when separator exists with content after (new section)', () => {
151
+ const linesBeforeStart = ['line1', '---', 'line3'];
152
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
153
+ (0, bun_test_1.expect)(result).toBe(true);
154
+ });
155
+ });
156
+ (0, bun_test_1.describe)('specific scenarios from backlog', () => {
157
+ (0, bun_test_1.test)('should NOT add separator when startLine is the separator line itself', () => {
158
+ const linesBeforeStart = ['1', '2', '3'];
159
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 4, linesBeforeStart);
160
+ (0, bun_test_1.expect)(result).toBe(false);
161
+ });
162
+ (0, bun_test_1.test)('should add separator when content exists after the last separator', () => {
163
+ const linesBeforeStart = ['1', '2', '3', '---', '5 xxx'];
164
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 6, linesBeforeStart);
165
+ (0, bun_test_1.expect)(result).toBe(true);
166
+ });
167
+ (0, bun_test_1.test)('should NOT add separator for first section even when startLine > 1', () => {
168
+ const linesBeforeStart = ['1 empty'];
169
+ const result = (0, readFileRange_js_1.shouldPrependSeparator)('specs/feature/backlog.md', 2, linesBeforeStart);
170
+ (0, bun_test_1.expect)(result).toBe(false);
171
+ });
172
+ });
173
+ });
174
+ //# sourceMappingURL=readFileRange.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readFileRange.test.js","sourceRoot":"","sources":["../../src/cli/readFileRange.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spec-copy-selection",
3
- "version": "1.0.3",
3
+ "version": "1.0.6",
4
4
  "description": "A CLI utility for copying text to clipboard",
5
5
  "main": "./dist/index.js",
6
6
  "bin": {
@@ -38,7 +38,8 @@
38
38
  "scripts": {
39
39
  "dev": "bun run src/index.ts specs/cli-file-operations/backlog.md:69-70",
40
40
  "build": "tsc",
41
- "prepublishOnly": "bun run check && bun run build",
41
+ "version:patch": "npm version patch --no-git-tag-version",
42
+ "prepublishOnly": "npm run version:patch && bun run check && bun run build",
42
43
  "lint": "biome lint .",
43
44
  "format": "biome format --write .",
44
45
  "check": "biome check --write . && bunx tsc --noEmit",