team-toon-tack 3.7.4 → 3.7.5
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.
|
@@ -6,14 +6,14 @@
|
|
|
6
6
|
},
|
|
7
7
|
"metadata": {
|
|
8
8
|
"description": "Task management tools for Claude Code - supports Linear and Trello, efficient workflow without MCP overhead",
|
|
9
|
-
"version": "1.2.
|
|
9
|
+
"version": "1.2.1"
|
|
10
10
|
},
|
|
11
11
|
"plugins": [
|
|
12
12
|
{
|
|
13
13
|
"name": "team-toon-tack",
|
|
14
14
|
"source": "./",
|
|
15
15
|
"description": "Linear/Trello task sync & management CLI with commands and skills",
|
|
16
|
-
"version": "2.8.
|
|
16
|
+
"version": "2.8.1"
|
|
17
17
|
}
|
|
18
18
|
]
|
|
19
19
|
}
|
|
@@ -134,6 +134,12 @@ export class TrelloAdapter {
|
|
|
134
134
|
const card = await this.client.getCard(issueId);
|
|
135
135
|
if (!card)
|
|
136
136
|
return null;
|
|
137
|
+
if (!Array.isArray(card.labels)) {
|
|
138
|
+
card.labels = [];
|
|
139
|
+
}
|
|
140
|
+
if (!Array.isArray(card.idMembers)) {
|
|
141
|
+
card.idMembers = [];
|
|
142
|
+
}
|
|
137
143
|
// Get lists for status name lookup
|
|
138
144
|
if (!this.listsCache.has(card.idBoard)) {
|
|
139
145
|
await this.getStatuses(card.idBoard);
|
|
@@ -185,7 +191,8 @@ export class TrelloAdapter {
|
|
|
185
191
|
comments: sourceComments.length > 0 ? sourceComments : undefined,
|
|
186
192
|
};
|
|
187
193
|
}
|
|
188
|
-
catch {
|
|
194
|
+
catch (error) {
|
|
195
|
+
console.warn(`[trello] getIssue(${issueId}) failed:`, error instanceof Error ? error.message : error);
|
|
189
196
|
return null;
|
|
190
197
|
}
|
|
191
198
|
}
|
|
@@ -98,7 +98,7 @@ export class TrelloClient {
|
|
|
98
98
|
* Get a specific card by ID
|
|
99
99
|
*/
|
|
100
100
|
async getCard(cardId) {
|
|
101
|
-
return this.request("GET", `/cards/${cardId}?fields=id,name,desc,url,shortUrl,shortLink,closed,pos,due,dueComplete,idBoard,idList,idMembers,idLabels,badges,dateLastActivity&attachments=false&members=false
|
|
101
|
+
return this.request("GET", `/cards/${cardId}?fields=id,name,desc,url,shortUrl,shortLink,closed,pos,due,dueComplete,idBoard,idList,idMembers,idLabels,labels,badges,dateLastActivity&attachments=false&members=false`);
|
|
102
102
|
}
|
|
103
103
|
/**
|
|
104
104
|
* Get card attachments
|
package/dist/scripts/show.js
CHANGED
|
@@ -291,8 +291,9 @@ Examples:
|
|
|
291
291
|
}
|
|
292
292
|
// Check if this is a search (has filters) or single issue lookup
|
|
293
293
|
const hasFilters = Object.keys(filters).length > 0;
|
|
294
|
-
// Find issue ID (
|
|
295
|
-
const issueId = args.find((arg) => !arg.startsWith("-") &&
|
|
294
|
+
// Find issue ID: Linear-style (MP-123) or Trello shortLink (8+ alphanumeric)
|
|
295
|
+
const issueId = args.find((arg) => !arg.startsWith("-") &&
|
|
296
|
+
(arg.match(/^[A-Z]+-\d+$/i) || arg.match(/^[A-Za-z0-9]{8,}$/)));
|
|
296
297
|
// If no issue ID and no filters, show all local issues
|
|
297
298
|
if (!issueId && !hasFilters) {
|
|
298
299
|
const data = await loadCycleData();
|