reviewflow 3.23.0 → 3.24.0
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 +13 -0
- package/dist/dashboard/index.html +30 -6
- package/dist/dashboard/modules/desktopNotifications.d.ts +7 -1
- package/dist/dashboard/modules/desktopNotifications.d.ts.map +1 -1
- package/dist/dashboard/modules/desktopNotifications.js +194 -15
- package/dist/dashboard/modules/desktopNotifications.js.map +1 -1
- package/dist/dashboard/modules/i18n.d.ts.map +1 -1
- package/dist/dashboard/modules/i18n.js +22 -2
- package/dist/dashboard/modules/i18n.js.map +1 -1
- package/dist/dashboard/modules/settingsModal.d.ts +17 -0
- package/dist/dashboard/modules/settingsModal.d.ts.map +1 -1
- package/dist/dashboard/modules/settingsModal.js +33 -0
- package/dist/dashboard/modules/settingsModal.js.map +1 -1
- package/dist/frameworks/claude/claudeInvoker.d.ts +2 -0
- package/dist/frameworks/claude/claudeInvoker.d.ts.map +1 -1
- package/dist/frameworks/claude/claudeInvoker.js +14 -3
- package/dist/frameworks/claude/claudeInvoker.js.map +1 -1
- package/dist/frameworks/queue/pQueueAdapter.d.ts +27 -0
- package/dist/frameworks/queue/pQueueAdapter.d.ts.map +1 -1
- package/dist/frameworks/queue/pQueueAdapter.js +4 -0
- package/dist/frameworks/queue/pQueueAdapter.js.map +1 -1
- package/dist/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.d.ts.map +1 -1
- package/dist/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.js +13 -0
- package/dist/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.js.map +1 -1
- package/dist/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.d.ts +4 -2
- package/dist/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.d.ts.map +1 -1
- package/dist/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.js +21 -0
- package/dist/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.js.map +1 -1
- package/dist/modules/platform-integration/entities/github/githubPullRequestEvent.guard.d.ts +12 -0
- package/dist/modules/platform-integration/entities/github/githubPullRequestEvent.guard.d.ts.map +1 -1
- package/dist/modules/platform-integration/entities/github/githubPullRequestEvent.guard.js +4 -0
- package/dist/modules/platform-integration/entities/github/githubPullRequestEvent.guard.js.map +1 -1
- package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.d.ts.map +1 -1
- package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.js +15 -0
- package/dist/modules/platform-integration/interface-adapters/controllers/webhook/github.controller.js.map +1 -1
- package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.d.ts.map +1 -1
- package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.js +6 -0
- package/dist/modules/platform-integration/interface-adapters/controllers/webhook/gitlab.controller.js.map +1 -1
- package/dist/modules/worktree-management/entities/gitCommand/gitCommand.gateway.d.ts +1 -1
- package/dist/modules/worktree-management/entities/gitCommand/gitCommand.gateway.d.ts.map +1 -1
- package/dist/modules/worktree-management/services/claudeCwd.d.ts +15 -0
- package/dist/modules/worktree-management/services/claudeCwd.d.ts.map +1 -0
- package/dist/modules/worktree-management/services/claudeCwd.js +45 -0
- package/dist/modules/worktree-management/services/claudeCwd.js.map +1 -0
- package/dist/tests/units/dashboard/modules/desktopNotifications.test.js +230 -13
- package/dist/tests/units/dashboard/modules/desktopNotifications.test.js.map +1 -1
- package/dist/tests/units/dashboard/modules/settingsModal.test.js +106 -2
- package/dist/tests/units/dashboard/modules/settingsModal.test.js.map +1 -1
- package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.test.js +39 -0
- package/dist/tests/units/modules/cli-configuration/interface-adapters/controllers/http/projectConfig.routes.test.js.map +1 -1
- package/dist/tests/units/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.test.js +69 -0
- package/dist/tests/units/modules/cli-configuration/usecases/projectConfig/updateProjectConfig.usecase.test.js.map +1 -1
- package/dist/tests/units/modules/worktree-management/services/claudeCwd.test.d.ts +2 -0
- package/dist/tests/units/modules/worktree-management/services/claudeCwd.test.d.ts.map +1 -0
- package/dist/tests/units/modules/worktree-management/services/claudeCwd.test.js +111 -0
- package/dist/tests/units/modules/worktree-management/services/claudeCwd.test.js.map +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,19 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [3.24.0](https://github.com/DGouron/review-flow/compare/reviewflow-v3.23.0...reviewflow-v3.24.0) (2026-05-26)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
* **dashboard:** expose qualityThreshold in settings + read-only display ([#214](https://github.com/DGouron/review-flow/issues/214)) ([2d65635](https://github.com/DGouron/review-flow/commit/2d65635b1a24d4d6e30b52f79c21d1ab131e5cf8))
|
|
14
|
+
* **dashboard:** rich, interactive desktop notifications ([#213](https://github.com/DGouron/review-flow/issues/213)) ([3c2580a](https://github.com/DGouron/review-flow/commit/3c2580a104147da67c7bd71bd943a47f9f6517b2))
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Fixed
|
|
18
|
+
|
|
19
|
+
* **worktree:** preserve sub-path between localPath and gitRoot when launching Claude ([#216](https://github.com/DGouron/review-flow/issues/216)) ([b4867c8](https://github.com/DGouron/review-flow/commit/b4867c8c8809dd93e72980357aad309cdd82e1e6))
|
|
20
|
+
|
|
8
21
|
## [3.23.0](https://github.com/DGouron/review-flow/compare/reviewflow-v3.22.0...reviewflow-v3.23.0) (2026-05-26)
|
|
9
22
|
|
|
10
23
|
|
|
@@ -399,6 +399,7 @@
|
|
|
399
399
|
buildSettingsViewModel,
|
|
400
400
|
renderSettingsModalHtml,
|
|
401
401
|
validateExternalLink,
|
|
402
|
+
validateQualityThreshold,
|
|
402
403
|
extractFormPayload,
|
|
403
404
|
} from './modules/settingsModal.js';
|
|
404
405
|
|
|
@@ -664,10 +665,18 @@
|
|
|
664
665
|
|
|
665
666
|
const desktopPayload = getDesktopNotificationPayload(notification, t);
|
|
666
667
|
if (!desktopPayload) return;
|
|
667
|
-
new Notification(desktopPayload.title, {
|
|
668
|
+
const desktopNotif = new Notification(desktopPayload.title, {
|
|
668
669
|
body: desktopPayload.body,
|
|
669
670
|
tag: desktopPayload.tag,
|
|
671
|
+
icon: desktopPayload.iconDataUri,
|
|
670
672
|
});
|
|
673
|
+
desktopNotif.onclick = () => {
|
|
674
|
+
window.focus();
|
|
675
|
+
if (desktopPayload.url) {
|
|
676
|
+
window.open(desktopPayload.url, '_blank', 'noopener');
|
|
677
|
+
}
|
|
678
|
+
desktopNotif.close();
|
|
679
|
+
};
|
|
671
680
|
}
|
|
672
681
|
|
|
673
682
|
function dispatchReviewNotifications(activeReviews, recentReviews) {
|
|
@@ -1708,12 +1717,13 @@
|
|
|
1708
1717
|
const assigneeDisplay = mr.assignment?.displayName || assigneeUsername;
|
|
1709
1718
|
const ownerLabel = t('lane.owner', { owner: assigneeDisplay });
|
|
1710
1719
|
const qualityScore = typeof mr.latestScore === 'number' ? mr.latestScore : null;
|
|
1711
|
-
const
|
|
1720
|
+
const activeQualityTarget = currentProjectConfig?.qualityThreshold ?? QUALITY_TARGET_SCORE;
|
|
1721
|
+
const qualityProgress = getQualityProgress(qualityScore, activeQualityTarget);
|
|
1712
1722
|
const qualityTarget = qualityProgress.qualityTarget;
|
|
1713
1723
|
const qualityDelta = qualityProgress.targetDelta;
|
|
1714
1724
|
const qualityState = qualityScore === null
|
|
1715
1725
|
? 'unknown'
|
|
1716
|
-
: qualityScore >=
|
|
1726
|
+
: qualityScore >= activeQualityTarget
|
|
1717
1727
|
? 'excellent'
|
|
1718
1728
|
: qualityScore >= 6
|
|
1719
1729
|
? 'warning'
|
|
@@ -1722,7 +1732,7 @@
|
|
|
1722
1732
|
? t('quality.notAvailable')
|
|
1723
1733
|
: qualityScore >= 10
|
|
1724
1734
|
? t('quality.perfect')
|
|
1725
|
-
: qualityScore >=
|
|
1735
|
+
: qualityScore >= activeQualityTarget
|
|
1726
1736
|
? t('quality.onTarget')
|
|
1727
1737
|
: qualityScore >= 6
|
|
1728
1738
|
? t('quality.belowTarget')
|
|
@@ -1852,7 +1862,9 @@
|
|
|
1852
1862
|
const pendingApprovalCount = document.getElementById('pending-approval-count');
|
|
1853
1863
|
|
|
1854
1864
|
pendingFixSection.classList.remove('hidden');
|
|
1855
|
-
const rankedPendingFix = rankPendingFixForNowLane(currentData.pendingFix
|
|
1865
|
+
const rankedPendingFix = rankPendingFixForNowLane(currentData.pendingFix, {
|
|
1866
|
+
qualityTarget: currentProjectConfig?.qualityThreshold ?? QUALITY_TARGET_SCORE,
|
|
1867
|
+
});
|
|
1856
1868
|
const queueLanesModel = buildQueueLanesModel(rankedPendingFix, currentData.pendingApproval);
|
|
1857
1869
|
|
|
1858
1870
|
mrDataStore.clear();
|
|
@@ -2577,13 +2589,21 @@
|
|
|
2577
2589
|
if (errorEl) errorEl.textContent = linkValidation.message;
|
|
2578
2590
|
return;
|
|
2579
2591
|
}
|
|
2592
|
+
const thresholdRaw = payload.qualityThreshold ?? '';
|
|
2593
|
+
const thresholdValidation = validateQualityThreshold(thresholdRaw);
|
|
2594
|
+
if (!thresholdValidation.ok) {
|
|
2595
|
+
if (errorEl) errorEl.textContent = thresholdValidation.message;
|
|
2596
|
+
return;
|
|
2597
|
+
}
|
|
2598
|
+
const requestBody = { ...payload };
|
|
2599
|
+
requestBody.qualityThreshold = thresholdRaw === '' ? null : Number(thresholdRaw);
|
|
2580
2600
|
try {
|
|
2581
2601
|
const response = await fetch(
|
|
2582
2602
|
`${API_URL}/api/project-config?path=${encodeURIComponent(activeTabId)}`,
|
|
2583
2603
|
{
|
|
2584
2604
|
method: 'PATCH',
|
|
2585
2605
|
headers: { 'Content-Type': 'application/json' },
|
|
2586
|
-
body: JSON.stringify(
|
|
2606
|
+
body: JSON.stringify(requestBody),
|
|
2587
2607
|
},
|
|
2588
2608
|
);
|
|
2589
2609
|
if (!response.ok) {
|
|
@@ -2591,6 +2611,10 @@
|
|
|
2591
2611
|
if (errorEl) errorEl.textContent = errorPayload?.error || 'Échec de la sauvegarde';
|
|
2592
2612
|
return;
|
|
2593
2613
|
}
|
|
2614
|
+
const updated = await response.json().catch(() => null);
|
|
2615
|
+
if (updated?.config) {
|
|
2616
|
+
currentProjectConfig = updated.config;
|
|
2617
|
+
}
|
|
2594
2618
|
closeSettingsModal();
|
|
2595
2619
|
refreshOverviewSection();
|
|
2596
2620
|
} catch {
|
|
@@ -10,7 +10,7 @@ export function shouldNotifyDesktop(options: {
|
|
|
10
10
|
/**
|
|
11
11
|
* @param {{ kind: string, review: Record<string, unknown> }} notification
|
|
12
12
|
* @param {(key: string, params?: Record<string, string | number>) => string} translate
|
|
13
|
-
* @returns {{ title: string, body: string, tag: string } | null}
|
|
13
|
+
* @returns {{ title: string, body: string, tag: string, url: string | null, iconDataUri: string } | null}
|
|
14
14
|
*/
|
|
15
15
|
export function getDesktopNotificationPayload(notification: {
|
|
16
16
|
kind: string;
|
|
@@ -19,5 +19,11 @@ export function getDesktopNotificationPayload(notification: {
|
|
|
19
19
|
title: string;
|
|
20
20
|
body: string;
|
|
21
21
|
tag: string;
|
|
22
|
+
url: string | null;
|
|
23
|
+
iconDataUri: string;
|
|
22
24
|
} | null;
|
|
25
|
+
export type KindFormat = {
|
|
26
|
+
emoji: string;
|
|
27
|
+
labelKey: string;
|
|
28
|
+
};
|
|
23
29
|
//# sourceMappingURL=desktopNotifications.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktopNotifications.d.ts","sourceRoot":"","sources":["../../../src/dashboard/modules/desktopNotifications.js"],"names":[],"mappings":"AAAA;;;GAGG;AACH,6CAHW;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5E,OAAO,CAMnB;
|
|
1
|
+
{"version":3,"file":"desktopNotifications.d.ts","sourceRoot":"","sources":["../../../src/dashboard/modules/desktopNotifications.js"],"names":[],"mappings":"AAAA;;;GAGG;AACH,6CAHW;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5E,OAAO,CAMnB;AAyLD;;;;GAIG;AACH,4DAJW;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,aACjD,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,MAAM,GAC/D;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAoBxG;;WA5Ma,MAAM;cACN,MAAM"}
|
|
@@ -8,31 +8,210 @@ export function shouldNotifyDesktop(options) {
|
|
|
8
8
|
return options.isDocumentHidden;
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
+
/**
|
|
12
|
+
* @typedef {Object} KindFormat
|
|
13
|
+
* @property {string} emoji
|
|
14
|
+
* @property {string} labelKey
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
/** @type {Record<string, KindFormat>} */
|
|
18
|
+
const KIND_FORMATS = {
|
|
19
|
+
reviewStarted: { emoji: '🔍', labelKey: 'notify.label.reviewStarted' },
|
|
20
|
+
followupStarted: { emoji: '🔁', labelKey: 'notify.label.followupStarted' },
|
|
21
|
+
reviewCompleted: { emoji: '✅', labelKey: 'notify.label.reviewCompleted' },
|
|
22
|
+
followupCompleted: { emoji: '✅', labelKey: 'notify.label.followupCompleted' },
|
|
23
|
+
reviewFailed: { emoji: '❌', labelKey: 'notify.label.reviewFailed' },
|
|
24
|
+
reviewPendingConfirmation: { emoji: '⏳', labelKey: 'notify.label.reviewPendingConfirmation' },
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
// Size category thresholds (sum of additions + deletions).
|
|
28
|
+
// Tweak here if you find them off — kept central on purpose.
|
|
29
|
+
const SIZE_THRESHOLD_SMALL_MAX = 50;
|
|
30
|
+
const SIZE_THRESHOLD_MEDIUM_MAX = 300;
|
|
31
|
+
const SIZE_EMOJI = { small: '🪶', medium: '🚀', big: '🐘' };
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* @param {unknown} value
|
|
35
|
+
* @returns {number | null}
|
|
36
|
+
*/
|
|
37
|
+
function toFiniteNumber(value) {
|
|
38
|
+
return typeof value === 'number' && Number.isFinite(value) ? value : null;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* @param {Record<string, unknown> | undefined} sizeMetrics
|
|
43
|
+
* @returns {'small' | 'medium' | 'big'}
|
|
44
|
+
*/
|
|
45
|
+
function categorizeSize(sizeMetrics) {
|
|
46
|
+
if (!sizeMetrics) return 'small';
|
|
47
|
+
const additions = toFiniteNumber(sizeMetrics.additions);
|
|
48
|
+
const deletions = toFiniteNumber(sizeMetrics.deletions);
|
|
49
|
+
if (additions !== null && deletions !== null) {
|
|
50
|
+
const total = additions + deletions;
|
|
51
|
+
if (total < SIZE_THRESHOLD_SMALL_MAX) return 'small';
|
|
52
|
+
if (total < SIZE_THRESHOLD_MEDIUM_MAX) return 'medium';
|
|
53
|
+
return 'big';
|
|
54
|
+
}
|
|
55
|
+
const filesChanged = toFiniteNumber(sizeMetrics.filesChanged);
|
|
56
|
+
if (filesChanged !== null) {
|
|
57
|
+
if (filesChanged <= 3) return 'small';
|
|
58
|
+
if (filesChanged <= 10) return 'medium';
|
|
59
|
+
return 'big';
|
|
60
|
+
}
|
|
61
|
+
return 'small';
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* @param {Record<string, unknown>} review
|
|
66
|
+
* @returns {string | null}
|
|
67
|
+
*/
|
|
68
|
+
function buildSizeLine(review) {
|
|
69
|
+
const metrics = review.sizeMetrics;
|
|
70
|
+
if (!metrics || typeof metrics !== 'object') return null;
|
|
71
|
+
const typed = /** @type {Record<string, unknown>} */ (metrics);
|
|
72
|
+
const additions = toFiniteNumber(typed.additions);
|
|
73
|
+
const deletions = toFiniteNumber(typed.deletions);
|
|
74
|
+
const filesChanged = toFiniteNumber(typed.filesChanged);
|
|
75
|
+
const hasAnyStat = additions !== null || deletions !== null || filesChanged !== null;
|
|
76
|
+
if (!hasAnyStat) return null;
|
|
77
|
+
const emoji = SIZE_EMOJI[categorizeSize(typed)];
|
|
78
|
+
const parts = [];
|
|
79
|
+
if (additions !== null && deletions !== null) {
|
|
80
|
+
parts.push(`+${additions}/-${deletions}`);
|
|
81
|
+
}
|
|
82
|
+
if (filesChanged !== null) {
|
|
83
|
+
parts.push(`${filesChanged} files`);
|
|
84
|
+
}
|
|
85
|
+
return `${emoji} ${parts.join(' · ')}`;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* @param {unknown} actor
|
|
90
|
+
* @returns {string | null}
|
|
91
|
+
*/
|
|
92
|
+
function resolveActorName(actor) {
|
|
93
|
+
if (!actor || typeof actor !== 'object') return null;
|
|
94
|
+
const typed = /** @type {{ displayName?: unknown, username?: unknown }} */ (actor);
|
|
95
|
+
if (typeof typed.displayName === 'string' && typed.displayName.length > 0) {
|
|
96
|
+
return typed.displayName;
|
|
97
|
+
}
|
|
98
|
+
if (typeof typed.username === 'string' && typed.username.length > 0) {
|
|
99
|
+
return typed.username;
|
|
100
|
+
}
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* @param {Record<string, unknown>} review
|
|
106
|
+
* @returns {string | null}
|
|
107
|
+
*/
|
|
108
|
+
function resolveAuthor(review) {
|
|
109
|
+
return resolveActorName(review.author) ?? resolveActorName(review.assignedBy);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/**
|
|
113
|
+
* @param {Record<string, unknown>} review
|
|
114
|
+
* @returns {string | null}
|
|
115
|
+
*/
|
|
116
|
+
function resolveProjectShortName(review) {
|
|
117
|
+
if (typeof review.project !== 'string' || review.project.length === 0) return null;
|
|
118
|
+
const segments = review.project.split('/');
|
|
119
|
+
const last = segments[segments.length - 1];
|
|
120
|
+
return last && last.length > 0 ? last : null;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* @param {Record<string, unknown>} review
|
|
125
|
+
* @returns {'gitlab' | 'github'}
|
|
126
|
+
*/
|
|
127
|
+
function resolvePlatform(review) {
|
|
128
|
+
const id = typeof review.id === 'string' ? review.id : '';
|
|
129
|
+
return id.startsWith('github') ? 'github' : 'gitlab';
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* @param {Record<string, unknown>} review
|
|
134
|
+
* @returns {'!' | '#'}
|
|
135
|
+
*/
|
|
136
|
+
function resolveMrPrefix(review) {
|
|
137
|
+
return resolvePlatform(review) === 'github' ? '#' : '!';
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
const PLATFORM_ICONS = {
|
|
141
|
+
gitlab: buildPlatformIconDataUri('GL', 'FC6D26'),
|
|
142
|
+
github: buildPlatformIconDataUri('GH', '181717'),
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* @param {string} label
|
|
147
|
+
* @param {string} hexColor
|
|
148
|
+
* @returns {string}
|
|
149
|
+
*/
|
|
150
|
+
function buildPlatformIconDataUri(label, hexColor) {
|
|
151
|
+
const svg =
|
|
152
|
+
`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64">` +
|
|
153
|
+
`<rect width="64" height="64" rx="12" fill="#${hexColor}"/>` +
|
|
154
|
+
`<text x="32" y="42" font-size="28" text-anchor="middle" fill="white" ` +
|
|
155
|
+
`font-family="-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif" font-weight="700">${label}</text>` +
|
|
156
|
+
'</svg>';
|
|
157
|
+
return `data:image/svg+xml;utf8,${encodeURIComponent(svg)}`;
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
/**
|
|
161
|
+
* @param {KindFormat} format
|
|
162
|
+
* @param {(key: string) => string} translate
|
|
163
|
+
* @param {Record<string, unknown>} review
|
|
164
|
+
* @returns {string}
|
|
165
|
+
*/
|
|
166
|
+
function buildTitle(format, translate, review) {
|
|
167
|
+
const mrNumber = typeof review.mrNumber === 'number' ? String(review.mrNumber) : '?';
|
|
168
|
+
const mrToken = `${resolveMrPrefix(review)}${mrNumber}`;
|
|
169
|
+
const label = translate(format.labelKey);
|
|
170
|
+
const author = resolveAuthor(review);
|
|
171
|
+
const segments = author
|
|
172
|
+
? [`${format.emoji} ${label}`, author, mrToken]
|
|
173
|
+
: [`${format.emoji} ${label}`, mrToken];
|
|
174
|
+
return segments.join(' · ');
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
/**
|
|
178
|
+
* @param {Record<string, unknown>} review
|
|
179
|
+
* @returns {string}
|
|
180
|
+
*/
|
|
181
|
+
function buildBody(review) {
|
|
182
|
+
const lines = [];
|
|
183
|
+
const title = typeof review.title === 'string' ? review.title.trim() : '';
|
|
184
|
+
if (title.length > 0) lines.push(title);
|
|
185
|
+
const sizeLine = buildSizeLine(review);
|
|
186
|
+
const project = resolveProjectShortName(review);
|
|
187
|
+
const secondLineParts = [];
|
|
188
|
+
if (sizeLine) secondLineParts.push(sizeLine);
|
|
189
|
+
if (project) secondLineParts.push(project);
|
|
190
|
+
if (secondLineParts.length > 0) lines.push(secondLineParts.join(' · '));
|
|
191
|
+
return lines.join('\n');
|
|
192
|
+
}
|
|
193
|
+
|
|
11
194
|
/**
|
|
12
195
|
* @param {{ kind: string, review: Record<string, unknown> }} notification
|
|
13
196
|
* @param {(key: string, params?: Record<string, string | number>) => string} translate
|
|
14
|
-
* @returns {{ title: string, body: string, tag: string } | null}
|
|
197
|
+
* @returns {{ title: string, body: string, tag: string, url: string | null, iconDataUri: string } | null}
|
|
15
198
|
*/
|
|
16
199
|
export function getDesktopNotificationPayload(notification, translate) {
|
|
200
|
+
const format = KIND_FORMATS[notification.kind];
|
|
201
|
+
if (!format) return null;
|
|
202
|
+
|
|
17
203
|
const mrNumber = typeof notification.review.mrNumber === 'number'
|
|
18
204
|
? String(notification.review.mrNumber)
|
|
19
205
|
: '?';
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
followupStarted: 'notify.followupStarted',
|
|
24
|
-
reviewCompleted: 'notify.reviewCompleted',
|
|
25
|
-
followupCompleted: 'notify.followupCompleted',
|
|
26
|
-
reviewFailed: 'notify.reviewFailed',
|
|
27
|
-
reviewPendingConfirmation: 'notify.reviewPendingConfirmation',
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
const messageKey = messageKeyByKind[notification.kind];
|
|
31
|
-
if (!messageKey) return null;
|
|
206
|
+
const url = typeof notification.review.mrUrl === 'string' && notification.review.mrUrl.length > 0
|
|
207
|
+
? notification.review.mrUrl
|
|
208
|
+
: null;
|
|
32
209
|
|
|
33
210
|
return {
|
|
34
|
-
title: translate
|
|
35
|
-
body:
|
|
211
|
+
title: buildTitle(format, translate, notification.review),
|
|
212
|
+
body: buildBody(notification.review),
|
|
36
213
|
tag: `reviewflow-${notification.kind}-${mrNumber}`,
|
|
214
|
+
url,
|
|
215
|
+
iconDataUri: PLATFORM_ICONS[resolvePlatform(notification.review)],
|
|
37
216
|
};
|
|
38
217
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktopNotifications.js","sourceRoot":"","sources":["../../../src/dashboard/modules/desktopNotifications.js"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAO;IACzC,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACnD,IAAI,OAAO,CAAC,iBAAiB,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACpD,OAAO,OAAO,CAAC,gBAAgB,CAAC;AAClC,CAAC;AAED;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"desktopNotifications.js","sourceRoot":"","sources":["../../../src/dashboard/modules/desktopNotifications.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/dashboard/modules/i18n.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../../src/dashboard/modules/i18n.js"],"names":[],"mappings":"AAw1BA,6BAA6B;AAC7B,+BADc,IAAI,GAAG,IAAI,CAGxB;AAED,oCAAoC;AACpC,sCADY,IAAI,GAAG,IAAI,QAGtB;AAED;;;;GAIG;AACH,uBAJW,MAAM,WACN,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GAC7B,MAAM,CAUlB"}
|
|
@@ -60,7 +60,7 @@ const translations = {
|
|
|
60
60
|
'quality.trendFlat': 'Stable',
|
|
61
61
|
'quality.trendUnknown': 'No trend yet',
|
|
62
62
|
|
|
63
|
-
// Notifications
|
|
63
|
+
// Notifications — toast labels (in-page)
|
|
64
64
|
'notify.reviewStarted': 'Review started for !{{mrNumber}}',
|
|
65
65
|
'notify.followupStarted': 'Follow-up started for !{{mrNumber}}',
|
|
66
66
|
'notify.reviewCompleted': 'Review completed for !{{mrNumber}}',
|
|
@@ -69,6 +69,13 @@ const translations = {
|
|
|
69
69
|
'notify.followupRequested': 'Follow-up requested for !{{mrNumber}}',
|
|
70
70
|
'notify.reviewPendingConfirmation': 'Review awaiting your confirmation for !{{mrNumber}}',
|
|
71
71
|
'notify.desktopTitle': 'Reviewflow alert',
|
|
72
|
+
// Notifications — desktop labels (short, used in rich payload)
|
|
73
|
+
'notify.label.reviewStarted': 'Review',
|
|
74
|
+
'notify.label.followupStarted': 'Follow-up',
|
|
75
|
+
'notify.label.reviewCompleted': 'Review done',
|
|
76
|
+
'notify.label.followupCompleted': 'Follow-up done',
|
|
77
|
+
'notify.label.reviewFailed': 'Review failed',
|
|
78
|
+
'notify.label.reviewPendingConfirmation': 'Awaiting confirmation',
|
|
72
79
|
|
|
73
80
|
// Loading
|
|
74
81
|
'loading.data': 'Syncing dashboard data...',
|
|
@@ -176,6 +183,9 @@ const translations = {
|
|
|
176
183
|
'settings.reviewFollowupSkill': 'Review followup skill',
|
|
177
184
|
'settings.externalLink': 'External link (HTTPS)',
|
|
178
185
|
'settings.externalLinkPlaceholder': 'https://notion.so/team/project',
|
|
186
|
+
'settings.qualityThreshold': 'Quality threshold (0-10)',
|
|
187
|
+
'settings.qualityThresholdPlaceholder': 'e.g. 7',
|
|
188
|
+
'settings.qualityThresholdHint': 'Approval is reverted when score falls below this threshold. Leave empty to disable.',
|
|
179
189
|
'settings.cancel': 'Cancel',
|
|
180
190
|
'settings.save': 'Save',
|
|
181
191
|
'empty.reviewsNoProject': 'Load a project to see reviews',
|
|
@@ -475,7 +485,7 @@ const translations = {
|
|
|
475
485
|
'quality.trendFlat': 'Stable',
|
|
476
486
|
'quality.trendUnknown': 'Pas de tendance',
|
|
477
487
|
|
|
478
|
-
// Notifications
|
|
488
|
+
// Notifications — toast labels (in-page)
|
|
479
489
|
'notify.reviewStarted': 'Review démarrée pour !{{mrNumber}}',
|
|
480
490
|
'notify.followupStarted': 'Follow-up démarré pour !{{mrNumber}}',
|
|
481
491
|
'notify.reviewCompleted': 'Review terminée pour !{{mrNumber}}',
|
|
@@ -484,6 +494,13 @@ const translations = {
|
|
|
484
494
|
'notify.followupRequested': 'Follow-up demandé pour !{{mrNumber}}',
|
|
485
495
|
'notify.reviewPendingConfirmation': 'Review en attente de votre confirmation pour !{{mrNumber}}',
|
|
486
496
|
'notify.desktopTitle': 'Alerte Reviewflow',
|
|
497
|
+
// Notifications — desktop labels (short, used in rich payload)
|
|
498
|
+
'notify.label.reviewStarted': 'Review',
|
|
499
|
+
'notify.label.followupStarted': 'Follow-up',
|
|
500
|
+
'notify.label.reviewCompleted': 'Review terminée',
|
|
501
|
+
'notify.label.followupCompleted': 'Follow-up terminé',
|
|
502
|
+
'notify.label.reviewFailed': 'Review échouée',
|
|
503
|
+
'notify.label.reviewPendingConfirmation': 'En attente',
|
|
487
504
|
|
|
488
505
|
// Loading
|
|
489
506
|
'loading.data': 'Synchronisation des données du dashboard...',
|
|
@@ -591,6 +608,9 @@ const translations = {
|
|
|
591
608
|
'settings.reviewFollowupSkill': 'Skill de review followup',
|
|
592
609
|
'settings.externalLink': 'Lien externe (HTTPS)',
|
|
593
610
|
'settings.externalLinkPlaceholder': 'https://notion.so/team/projet',
|
|
611
|
+
'settings.qualityThreshold': 'Seuil de qualité (0-10)',
|
|
612
|
+
'settings.qualityThresholdPlaceholder': 'ex. 7',
|
|
613
|
+
'settings.qualityThresholdHint': "L'approbation est annulée si le score passe sous ce seuil. Laisser vide pour désactiver.",
|
|
594
614
|
'settings.cancel': 'Annuler',
|
|
595
615
|
'settings.save': 'Enregistrer',
|
|
596
616
|
'empty.reviewsNoProject': 'Charger un projet pour voir les reviews',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../../src/dashboard/modules/i18n.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../../src/dashboard/modules/i18n.js"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* @property {string} reviewFollowupSkill
|
|
6
6
|
* @property {'en' | 'fr'} language
|
|
7
7
|
* @property {string} [externalLink]
|
|
8
|
+
* @property {number} [qualityThreshold]
|
|
8
9
|
* @property {boolean} [github]
|
|
9
10
|
* @property {boolean} [gitlab]
|
|
10
11
|
* @property {number} [retentionDays]
|
|
@@ -21,6 +22,7 @@
|
|
|
21
22
|
* @property {string} reviewSkill
|
|
22
23
|
* @property {string} reviewFollowupSkill
|
|
23
24
|
* @property {string} externalLink
|
|
25
|
+
* @property {string} qualityThreshold
|
|
24
26
|
* @property {string} projectName
|
|
25
27
|
*/
|
|
26
28
|
/**
|
|
@@ -33,6 +35,19 @@ export function buildSettingsViewModel(input: SettingsModalBuildInput): Settings
|
|
|
33
35
|
* @returns {string}
|
|
34
36
|
*/
|
|
35
37
|
export function renderSettingsModalHtml(viewModel: SettingsModalViewModel): string;
|
|
38
|
+
/**
|
|
39
|
+
* Validates qualityThreshold input: empty string means "clear", otherwise must
|
|
40
|
+
* parse as an integer in [0, 10]. Mirrors server-side validation.
|
|
41
|
+
*
|
|
42
|
+
* @param {string} value
|
|
43
|
+
* @returns {{ ok: true } | { ok: false; message: string }}
|
|
44
|
+
*/
|
|
45
|
+
export function validateQualityThreshold(value: string): {
|
|
46
|
+
ok: true;
|
|
47
|
+
} | {
|
|
48
|
+
ok: false;
|
|
49
|
+
message: string;
|
|
50
|
+
};
|
|
36
51
|
/**
|
|
37
52
|
* Mirrors the server-side regex from updateProjectConfig.usecase.ts.
|
|
38
53
|
*
|
|
@@ -58,6 +73,7 @@ export type SettingsModalConfigInput = {
|
|
|
58
73
|
reviewFollowupSkill: string;
|
|
59
74
|
language: "en" | "fr";
|
|
60
75
|
externalLink?: string | undefined;
|
|
76
|
+
qualityThreshold?: number | undefined;
|
|
61
77
|
github?: boolean | undefined;
|
|
62
78
|
gitlab?: boolean | undefined;
|
|
63
79
|
retentionDays?: number | undefined;
|
|
@@ -72,6 +88,7 @@ export type SettingsModalViewModel = {
|
|
|
72
88
|
reviewSkill: string;
|
|
73
89
|
reviewFollowupSkill: string;
|
|
74
90
|
externalLink: string;
|
|
91
|
+
qualityThreshold: string;
|
|
75
92
|
projectName: string;
|
|
76
93
|
};
|
|
77
94
|
//# sourceMappingURL=settingsModal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settingsModal.d.ts","sourceRoot":"","sources":["../../../src/dashboard/modules/settingsModal.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"settingsModal.d.ts","sourceRoot":"","sources":["../../../src/dashboard/modules/settingsModal.js"],"names":[],"mappings":"AA4BA;;;;;;;;;;;GAWG;AAEH;;;;GAIG;AAEH;;;;;;;;;GASG;AAEH;;;GAGG;AACH,8CAHW,uBAAuB,GACrB,sBAAsB,CAiBlC;AAmDD;;;GAGG;AACH,mDAHW,sBAAsB,GACpB,MAAM,CAkDlB;AAED;;;;;;GAMG;AACH,gDAHW,MAAM,GACJ;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAYzD;AAED;;;;;GAKG;AACH,4CAHW,MAAM,GACJ;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAWzD;AAED;;;;;GAKG;AACH,yCAHW,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC5B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYlC;;kBA5Ma,OAAO,GAAG,QAAQ,GAAG,MAAM;iBAC3B,MAAM;yBACN,MAAM;cACN,IAAI,GAAG,IAAI;;;;;;;;YAUX,wBAAwB;;;;cAMxB,IAAI,GAAG,IAAI;kBACX,OAAO,GAAG,QAAQ,GAAG,MAAM;iBAC3B,MAAM;yBACN,MAAM;kBACN,MAAM;sBACN,MAAM;iBACN,MAAM"}
|