github-issue-tower-defence-management 1.97.1 → 1.97.2
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.
- package/CHANGELOG.md +7 -0
- package/bin/adapter/repositories/GraphqlProjectRepository.js +19 -16
- package/bin/adapter/repositories/GraphqlProjectRepository.js.map +1 -1
- package/package.json +1 -1
- package/src/adapter/repositories/GraphqlProjectRepository.test.ts +27 -1
- package/src/adapter/repositories/GraphqlProjectRepository.ts +18 -13
- package/types/adapter/repositories/GraphqlProjectRepository.d.ts +1 -0
- package/types/adapter/repositories/GraphqlProjectRepository.d.ts.map +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
## [1.97.2](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.97.1...v1.97.2) (2026-06-23)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* convert PINK and ORANGE GitHub project colors instead of defaulting to gray ([#927](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/issues/927)) ([b0fcc19](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/commit/b0fcc199cb1e55ee610cb6b217c3f908d9168346))
|
|
7
|
+
|
|
1
8
|
## [1.97.1](https://github.com/HiromiShikata/npm-cli-github-issue-tower-defence-management/compare/v1.97.0...v1.97.1) (2026-06-23)
|
|
2
9
|
|
|
3
10
|
|
|
@@ -3,11 +3,27 @@ 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.GraphqlProjectRepository = void 0;
|
|
6
|
+
exports.GraphqlProjectRepository = exports.convertToFieldOptionColor = void 0;
|
|
7
7
|
const ky_1 = __importDefault(require("ky"));
|
|
8
8
|
const BaseGitHubRepository_1 = require("./BaseGitHubRepository");
|
|
9
9
|
const utils_1 = require("./utils");
|
|
10
10
|
const ONE_HOUR_MS = 60 * 60 * 1000;
|
|
11
|
+
const convertToFieldOptionColor = (color) => {
|
|
12
|
+
switch (color) {
|
|
13
|
+
case 'RED':
|
|
14
|
+
case 'YELLOW':
|
|
15
|
+
case 'GREEN':
|
|
16
|
+
case 'BLUE':
|
|
17
|
+
case 'PURPLE':
|
|
18
|
+
case 'ORANGE':
|
|
19
|
+
case 'PINK':
|
|
20
|
+
case 'GRAY':
|
|
21
|
+
return color;
|
|
22
|
+
default:
|
|
23
|
+
return 'GRAY';
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
exports.convertToFieldOptionColor = convertToFieldOptionColor;
|
|
11
27
|
class GraphqlProjectRepository extends BaseGitHubRepository_1.BaseGitHubRepository {
|
|
12
28
|
constructor() {
|
|
13
29
|
super(...arguments);
|
|
@@ -171,19 +187,6 @@ class GraphqlProjectRepository extends BaseGitHubRepository_1.BaseGitHubReposito
|
|
|
171
187
|
const remainignEstimationMinutes = project.fields.nodes.find((field) => (0, utils_1.normalizeFieldName)(field.name) === 'remainingestimationminutes');
|
|
172
188
|
const dependedIssueUrlSeparatedByComma = project.fields.nodes.find((field) => (0, utils_1.normalizeFieldName)(field.name).startsWith('dependedissueurlseparatedbycomma'));
|
|
173
189
|
const completionDate50PercentConfidence = project.fields.nodes.find((field) => (0, utils_1.normalizeFieldName)(field.name).startsWith('completiondate'));
|
|
174
|
-
const convertToFieldOptionColor = (color) => {
|
|
175
|
-
switch (color) {
|
|
176
|
-
case 'RED':
|
|
177
|
-
case 'YELLOW':
|
|
178
|
-
case 'GREEN':
|
|
179
|
-
case 'BLUE':
|
|
180
|
-
case 'PURPLE':
|
|
181
|
-
case 'GRAY':
|
|
182
|
-
return color;
|
|
183
|
-
default:
|
|
184
|
-
return 'GRAY';
|
|
185
|
-
}
|
|
186
|
-
};
|
|
187
190
|
return {
|
|
188
191
|
id: project.id,
|
|
189
192
|
url: project.url,
|
|
@@ -195,7 +198,7 @@ class GraphqlProjectRepository extends BaseGitHubRepository_1.BaseGitHubReposito
|
|
|
195
198
|
statuses: status.options.map((option) => ({
|
|
196
199
|
id: option.id,
|
|
197
200
|
name: option.name,
|
|
198
|
-
color: convertToFieldOptionColor(option.color),
|
|
201
|
+
color: (0, exports.convertToFieldOptionColor)(option.color),
|
|
199
202
|
description: option.description,
|
|
200
203
|
})),
|
|
201
204
|
},
|
|
@@ -219,7 +222,7 @@ class GraphqlProjectRepository extends BaseGitHubRepository_1.BaseGitHubReposito
|
|
|
219
222
|
stories: story.options.map((option) => ({
|
|
220
223
|
id: option.id,
|
|
221
224
|
name: option.name,
|
|
222
|
-
color: convertToFieldOptionColor(option.color),
|
|
225
|
+
color: (0, exports.convertToFieldOptionColor)(option.color),
|
|
223
226
|
description: option.description,
|
|
224
227
|
})),
|
|
225
228
|
workflowManagementStory,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphqlProjectRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/GraphqlProjectRepository.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,iEAA8D;AAG9D,mCAA6C;AAE7C,MAAM,WAAW,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"GraphqlProjectRepository.js","sourceRoot":"","sources":["../../../src/adapter/repositories/GraphqlProjectRepository.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,33 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import {
|
|
2
|
+
GraphqlProjectRepository,
|
|
3
|
+
convertToFieldOptionColor,
|
|
4
|
+
} from './GraphqlProjectRepository';
|
|
2
5
|
import { LocalStorageRepository } from './LocalStorageRepository';
|
|
3
6
|
import { FieldOption, Project } from '../../domain/entities/Project';
|
|
4
7
|
|
|
8
|
+
describe('convertToFieldOptionColor', () => {
|
|
9
|
+
it('should preserve PINK so the Todo by human status button renders pink', () => {
|
|
10
|
+
expect(convertToFieldOptionColor('PINK')).toEqual('PINK');
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
it('should preserve ORANGE so the Unread status button renders orange', () => {
|
|
14
|
+
expect(convertToFieldOptionColor('ORANGE')).toEqual('ORANGE');
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
it('should preserve the remaining GitHub project option colors', () => {
|
|
18
|
+
expect(convertToFieldOptionColor('RED')).toEqual('RED');
|
|
19
|
+
expect(convertToFieldOptionColor('YELLOW')).toEqual('YELLOW');
|
|
20
|
+
expect(convertToFieldOptionColor('GREEN')).toEqual('GREEN');
|
|
21
|
+
expect(convertToFieldOptionColor('BLUE')).toEqual('BLUE');
|
|
22
|
+
expect(convertToFieldOptionColor('PURPLE')).toEqual('PURPLE');
|
|
23
|
+
expect(convertToFieldOptionColor('GRAY')).toEqual('GRAY');
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
it('should fall back to GRAY for an unknown color value', () => {
|
|
27
|
+
expect(convertToFieldOptionColor('UNKNOWN')).toEqual('GRAY');
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
|
|
5
31
|
describe('GraphqlProjectRepository', () => {
|
|
6
32
|
const localStorageRepository = new LocalStorageRepository();
|
|
7
33
|
let repository: GraphqlProjectRepository;
|
|
@@ -6,6 +6,24 @@ import { normalizeFieldName } from './utils';
|
|
|
6
6
|
|
|
7
7
|
const ONE_HOUR_MS = 60 * 60 * 1000;
|
|
8
8
|
|
|
9
|
+
export const convertToFieldOptionColor = (
|
|
10
|
+
color: string,
|
|
11
|
+
): FieldOption['color'] => {
|
|
12
|
+
switch (color) {
|
|
13
|
+
case 'RED':
|
|
14
|
+
case 'YELLOW':
|
|
15
|
+
case 'GREEN':
|
|
16
|
+
case 'BLUE':
|
|
17
|
+
case 'PURPLE':
|
|
18
|
+
case 'ORANGE':
|
|
19
|
+
case 'PINK':
|
|
20
|
+
case 'GRAY':
|
|
21
|
+
return color;
|
|
22
|
+
default:
|
|
23
|
+
return 'GRAY';
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
|
|
9
27
|
export class GraphqlProjectRepository
|
|
10
28
|
extends BaseGitHubRepository
|
|
11
29
|
implements
|
|
@@ -274,19 +292,6 @@ export class GraphqlProjectRepository
|
|
|
274
292
|
const completionDate50PercentConfidence = project.fields.nodes.find(
|
|
275
293
|
(field) => normalizeFieldName(field.name).startsWith('completiondate'),
|
|
276
294
|
);
|
|
277
|
-
const convertToFieldOptionColor = (color: string): FieldOption['color'] => {
|
|
278
|
-
switch (color) {
|
|
279
|
-
case 'RED':
|
|
280
|
-
case 'YELLOW':
|
|
281
|
-
case 'GREEN':
|
|
282
|
-
case 'BLUE':
|
|
283
|
-
case 'PURPLE':
|
|
284
|
-
case 'GRAY':
|
|
285
|
-
return color;
|
|
286
|
-
default:
|
|
287
|
-
return 'GRAY';
|
|
288
|
-
}
|
|
289
|
-
};
|
|
290
295
|
return {
|
|
291
296
|
id: project.id,
|
|
292
297
|
url: project.url,
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { BaseGitHubRepository } from './BaseGitHubRepository';
|
|
2
2
|
import { ProjectRepository } from '../../domain/usecases/adapter-interfaces/ProjectRepository';
|
|
3
3
|
import { FieldOption, Project } from '../../domain/entities/Project';
|
|
4
|
+
export declare const convertToFieldOptionColor: (color: string) => FieldOption["color"];
|
|
4
5
|
export declare class GraphqlProjectRepository extends BaseGitHubRepository implements Pick<ProjectRepository, 'getProject' | 'findProjectIdByUrl' | 'getByUrl' | 'updateStoryList' | 'updateStatusList'> {
|
|
5
6
|
private readonly projectIdCache;
|
|
6
7
|
private readonly fetchProjectIdFailedAt;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GraphqlProjectRepository.d.ts","sourceRoot":"","sources":["../../../src/adapter/repositories/GraphqlProjectRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4DAA4D,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAKrE,qBAAa,wBACX,SAAQ,oBACR,YACE,IAAI,CACF,iBAAiB,EACf,YAAY,GACZ,oBAAoB,GACpB,UAAU,GACV,iBAAiB,GACjB,kBAAkB,CACrB;IAEH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAC5D,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAA6B;IAEpE,qBAAqB,GACnB,YAAY,MAAM,KACjB;QACD,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,EAAE,MAAM,CAAC;KACvB,CAMC;IACF,cAAc,GACZ,OAAO,MAAM,EACb,eAAe,MAAM,KACpB,OAAO,CAAC,MAAM,CAAC,CAsFhB;IACF,kBAAkB,GAChB,YAAY,MAAM,KACjB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAG9B;IACF,UAAU,GAAU,WAAW,OAAO,CAAC,IAAI,CAAC,KAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"GraphqlProjectRepository.d.ts","sourceRoot":"","sources":["../../../src/adapter/repositories/GraphqlProjectRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4DAA4D,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAKrE,eAAO,MAAM,yBAAyB,GACpC,OAAO,MAAM,KACZ,WAAW,CAAC,OAAO,CAcrB,CAAC;AAEF,qBAAa,wBACX,SAAQ,oBACR,YACE,IAAI,CACF,iBAAiB,EACf,YAAY,GACZ,oBAAoB,GACpB,UAAU,GACV,iBAAiB,GACjB,kBAAkB,CACrB;IAEH,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAC5D,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAA6B;IAEpE,qBAAqB,GACnB,YAAY,MAAM,KACjB;QACD,KAAK,EAAE,MAAM,CAAC;QACd,aAAa,EAAE,MAAM,CAAC;KACvB,CAMC;IACF,cAAc,GACZ,OAAO,MAAM,EACb,eAAe,MAAM,KACpB,OAAO,CAAC,MAAM,CAAC,CAsFhB;IACF,kBAAkB,GAChB,YAAY,MAAM,KACjB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAG9B;IACF,UAAU,GAAU,WAAW,OAAO,CAAC,IAAI,CAAC,KAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CA8MpE;IACF,QAAQ,GAAU,KAAK,MAAM,KAAG,OAAO,CAAC,OAAO,CAAC,CAU9C;IACF,eAAe,GACb,SAAS,OAAO,EAChB,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG;QACvC,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;KAC9B,CAAC,EAAE,KACH,OAAO,CAAC,WAAW,EAAE,CAAC,CA+CvB;IACF,gBAAgB,GACd,SAAS,OAAO,EAChB,eAAe,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG;QACxC,EAAE,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;KAC9B,CAAC,EAAE,KACH,OAAO,CAAC,WAAW,EAAE,CAAC,CA4CvB;CACH"}
|