@agenticmail/enterprise 0.5.256 → 0.5.258
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.
|
@@ -49,17 +49,23 @@ function injectCSS() {
|
|
|
49
49
|
function layoutChains(tasks) {
|
|
50
50
|
if (!tasks.length) return { nodes: [], edges: [], width: 0, height: 0, chains: [] };
|
|
51
51
|
|
|
52
|
-
// Group by chainId
|
|
52
|
+
// Group by chainId — but single-task chains are treated as orphans (no chain)
|
|
53
53
|
var chainMap = new Map();
|
|
54
54
|
var orphans = [];
|
|
55
|
+
var tempChains = new Map();
|
|
55
56
|
tasks.forEach(function(t) {
|
|
56
57
|
if (t.chainId) {
|
|
57
|
-
if (!
|
|
58
|
-
|
|
58
|
+
if (!tempChains.has(t.chainId)) tempChains.set(t.chainId, []);
|
|
59
|
+
tempChains.get(t.chainId).push(t);
|
|
59
60
|
} else {
|
|
60
61
|
orphans.push(t);
|
|
61
62
|
}
|
|
62
63
|
});
|
|
64
|
+
// Only keep chains with 2+ tasks; singles become orphans
|
|
65
|
+
tempChains.forEach(function(arr, key) {
|
|
66
|
+
if (arr.length > 1) { chainMap.set(key, arr); }
|
|
67
|
+
else { orphans = orphans.concat(arr); }
|
|
68
|
+
});
|
|
63
69
|
|
|
64
70
|
// Sort each chain by chainSeq
|
|
65
71
|
chainMap.forEach(function(arr) { arr.sort(function(a, b) { return (a.chainSeq || 0) - (b.chainSeq || 0); }); });
|
|
@@ -713,7 +719,7 @@ export function TaskPipelinePage() {
|
|
|
713
719
|
onMouseDown: handleMouseDown,
|
|
714
720
|
onWheel: handleWheel,
|
|
715
721
|
},
|
|
716
|
-
h('div', { style: { transform: 'translate(' + pan.x + 'px, ' + pan.y + 'px) scale(' + zoom + ')', transformOrigin: '0 0', position: 'relative',
|
|
722
|
+
h('div', { style: { transform: 'translate(' + pan.x + 'px, ' + pan.y + 'px) scale(' + zoom + ')', transformOrigin: '0 0', position: 'relative', width: treeW + PAD * 2, height: treeH + PAD * 2 } },
|
|
717
723
|
|
|
718
724
|
// Chain labels (left side)
|
|
719
725
|
chainInfos.map(function(ci, i) {
|
|
@@ -792,9 +798,8 @@ export function TaskPipelinePage() {
|
|
|
792
798
|
onMouseLeave: function() { setHoveredId(null); },
|
|
793
799
|
style: {
|
|
794
800
|
position: 'absolute', left: node.x, top: node.y, width: node.w, height: node.h,
|
|
795
|
-
background: isHovered ? '
|
|
796
|
-
border: '1px solid ' + (isExpanded ? sc : isHovered || isChainHl ? sc + '66' : '
|
|
797
|
-
/* borderLeft removed */
|
|
801
|
+
background: isHovered ? 'var(--tp-card-hover)' : 'var(--tp-card)',
|
|
802
|
+
border: '1px solid ' + (isExpanded ? sc : isHovered || isChainHl ? sc + '66' : 'var(--tp-border)'),
|
|
798
803
|
borderRadius: 6, padding: '5px 8px', cursor: 'pointer', overflow: 'hidden',
|
|
799
804
|
transition: 'all 0.15s', opacity: dim ? 0.15 : 1,
|
|
800
805
|
backdropFilter: 'blur(6px)',
|
package/package.json
CHANGED
|
@@ -49,17 +49,23 @@ function injectCSS() {
|
|
|
49
49
|
function layoutChains(tasks) {
|
|
50
50
|
if (!tasks.length) return { nodes: [], edges: [], width: 0, height: 0, chains: [] };
|
|
51
51
|
|
|
52
|
-
// Group by chainId
|
|
52
|
+
// Group by chainId — but single-task chains are treated as orphans (no chain)
|
|
53
53
|
var chainMap = new Map();
|
|
54
54
|
var orphans = [];
|
|
55
|
+
var tempChains = new Map();
|
|
55
56
|
tasks.forEach(function(t) {
|
|
56
57
|
if (t.chainId) {
|
|
57
|
-
if (!
|
|
58
|
-
|
|
58
|
+
if (!tempChains.has(t.chainId)) tempChains.set(t.chainId, []);
|
|
59
|
+
tempChains.get(t.chainId).push(t);
|
|
59
60
|
} else {
|
|
60
61
|
orphans.push(t);
|
|
61
62
|
}
|
|
62
63
|
});
|
|
64
|
+
// Only keep chains with 2+ tasks; singles become orphans
|
|
65
|
+
tempChains.forEach(function(arr, key) {
|
|
66
|
+
if (arr.length > 1) { chainMap.set(key, arr); }
|
|
67
|
+
else { orphans = orphans.concat(arr); }
|
|
68
|
+
});
|
|
63
69
|
|
|
64
70
|
// Sort each chain by chainSeq
|
|
65
71
|
chainMap.forEach(function(arr) { arr.sort(function(a, b) { return (a.chainSeq || 0) - (b.chainSeq || 0); }); });
|
|
@@ -713,7 +719,7 @@ export function TaskPipelinePage() {
|
|
|
713
719
|
onMouseDown: handleMouseDown,
|
|
714
720
|
onWheel: handleWheel,
|
|
715
721
|
},
|
|
716
|
-
h('div', { style: { transform: 'translate(' + pan.x + 'px, ' + pan.y + 'px) scale(' + zoom + ')', transformOrigin: '0 0', position: 'relative',
|
|
722
|
+
h('div', { style: { transform: 'translate(' + pan.x + 'px, ' + pan.y + 'px) scale(' + zoom + ')', transformOrigin: '0 0', position: 'relative', width: treeW + PAD * 2, height: treeH + PAD * 2 } },
|
|
717
723
|
|
|
718
724
|
// Chain labels (left side)
|
|
719
725
|
chainInfos.map(function(ci, i) {
|
|
@@ -792,9 +798,8 @@ export function TaskPipelinePage() {
|
|
|
792
798
|
onMouseLeave: function() { setHoveredId(null); },
|
|
793
799
|
style: {
|
|
794
800
|
position: 'absolute', left: node.x, top: node.y, width: node.w, height: node.h,
|
|
795
|
-
background: isHovered ? '
|
|
796
|
-
border: '1px solid ' + (isExpanded ? sc : isHovered || isChainHl ? sc + '66' : '
|
|
797
|
-
/* borderLeft removed */
|
|
801
|
+
background: isHovered ? 'var(--tp-card-hover)' : 'var(--tp-card)',
|
|
802
|
+
border: '1px solid ' + (isExpanded ? sc : isHovered || isChainHl ? sc + '66' : 'var(--tp-border)'),
|
|
798
803
|
borderRadius: 6, padding: '5px 8px', cursor: 'pointer', overflow: 'hidden',
|
|
799
804
|
transition: 'all 0.15s', opacity: dim ? 0.15 : 1,
|
|
800
805
|
backdropFilter: 'blur(6px)',
|