Skip to content

Commit 27d13da

Browse files
authored
Merge pull request #34 from LonoxX/develop
fix: duplicate content on same issue ID in Kanban board
2 parents 1047b1a + e2cdec7 commit 27d13da

2 files changed

Lines changed: 19 additions & 9 deletions

File tree

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
"license": "MIT",
2121
"devDependencies": {
2222
"@types/node": "^25.0.3",
23-
"@typescript-eslint/eslint-plugin": "^8.51.0",
24-
"@typescript-eslint/parser": "^8.51.0",
23+
"@typescript-eslint/eslint-plugin": "^8.52.0",
24+
"@typescript-eslint/parser": "^8.52.0",
2525
"builtin-modules": "^5.0.0",
2626
"esbuild": "^0.27.2",
2727
"eslint": "^9.39.2",

src/kanban-view.ts

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -394,14 +394,24 @@ export class GitHubKanbanView extends ItemView {
394394
const normalizedItemUrl = this.normalizeUrl(itemUrl);
395395

396396
let fullProjectData: any = null;
397-
const fmNum = this.parseNumber(frontmatter.number);
398-
if (fmNum !== null) {
399-
fullProjectData = cachedItemsForProject.find((ci: any) => Number(ci.number) === fmNum) || null;
400-
if (fullProjectData) matchedNumbers.add(fmNum);
401-
}
402-
if (!fullProjectData && normalizedItemUrl) {
397+
398+
// Try URL matching first (most reliable for cross-repository projects)
399+
if (normalizedItemUrl) {
403400
fullProjectData = cachedItemsForProject.find((ci: any) => ci.normalizedUrl === normalizedItemUrl) || null;
404-
if (fullProjectData && fullProjectData.normalizedUrl) matchedUrls.add(fullProjectData.normalizedUrl);
401+
if (fullProjectData && fullProjectData.normalizedUrl) {
402+
matchedUrls.add(fullProjectData.normalizedUrl);
403+
}
404+
}
405+
406+
// Fall back to number matching only if URL didn't match
407+
if (!fullProjectData) {
408+
const fmNum = this.parseNumber(frontmatter.number);
409+
if (fmNum !== null) {
410+
fullProjectData = cachedItemsForProject.find((ci: any) => Number(ci.number) === fmNum) || null;
411+
if (fullProjectData) {
412+
matchedNumbers.add(fmNum);
413+
}
414+
}
405415
}
406416

407417
if (isInProjectFolder || fullProjectData || fileMatchesProject) {

0 commit comments

Comments
 (0)