@activecollab/components 2.0.354 → 2.0.356
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/dist/cjs/components/Icons/collection/Gear.js +49 -0
- package/dist/cjs/components/Icons/collection/Gear.js.map +1 -0
- package/dist/cjs/components/Icons/collection/GearFailed.js +85 -0
- package/dist/cjs/components/Icons/collection/GearFailed.js.map +1 -0
- package/dist/cjs/components/Icons/collection/index.js +14 -0
- package/dist/cjs/components/Icons/collection/index.js.map +1 -1
- package/dist/cjs/presentation/shared/SourceCodeSection.js +271 -75
- package/dist/cjs/presentation/shared/SourceCodeSection.js.map +1 -1
- package/dist/esm/components/Icons/collection/Gear.d.ts +15 -0
- package/dist/esm/components/Icons/collection/Gear.d.ts.map +1 -0
- package/dist/esm/components/Icons/collection/Gear.js +42 -0
- package/dist/esm/components/Icons/collection/Gear.js.map +1 -0
- package/dist/esm/components/Icons/collection/GearFailed.d.ts +17 -0
- package/dist/esm/components/Icons/collection/GearFailed.d.ts.map +1 -0
- package/dist/esm/components/Icons/collection/GearFailed.js +68 -0
- package/dist/esm/components/Icons/collection/GearFailed.js.map +1 -0
- package/dist/esm/components/Icons/collection/index.d.ts +2 -0
- package/dist/esm/components/Icons/collection/index.d.ts.map +1 -1
- package/dist/esm/components/Icons/collection/index.js +2 -0
- package/dist/esm/components/Icons/collection/index.js.map +1 -1
- package/dist/esm/presentation/shared/SourceCodeSection.d.ts +8 -1
- package/dist/esm/presentation/shared/SourceCodeSection.d.ts.map +1 -1
- package/dist/esm/presentation/shared/SourceCodeSection.js +271 -84
- package/dist/esm/presentation/shared/SourceCodeSection.js.map +1 -1
- package/dist/index.js +327 -220
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -9,10 +9,10 @@ import { Button } from "../../components/Button";
|
|
|
9
9
|
import { AddToListButton } from "../../components/Button/AddToListButton";
|
|
10
10
|
import { Dialog } from "../../components/Dialog";
|
|
11
11
|
import { IconButton } from "../../components/IconButton";
|
|
12
|
-
import { CancelCrossIcon, CheckIcon, CloseIcon, GitBranchIcon, GitCommitIcon, GitPullRequestIcon, GitRepositoryIcon,
|
|
12
|
+
import { ArrowRightIcon, CancelCrossIcon, CheckIcon, CloseIcon, CloudDeployFailedIcon, CloudDeployIcon, EyeIcon, GearFailedIcon, GearIcon, GitBranchIcon, GitCommitIcon, GitMergeIcon, GitPullRequestClosedIcon, GitPullRequestDraftIcon, GitPullRequestIcon, GitRepositoryIcon, InfoSmallIcon, MessageIcon, TrashIcon } from "../../components/Icons";
|
|
13
13
|
import { Tooltip } from "../../components/Tooltip";
|
|
14
14
|
import { Trigger } from "../../components/Trigger";
|
|
15
|
-
import { Body1,
|
|
15
|
+
import { Body1, Caption1, Header3 } from "../../components/Typography";
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
18
|
* Source Code section of a task — the shared subsystem behind the
|
|
@@ -25,6 +25,19 @@ import { Body1, Body2, Caption1, Header3 } from "../../components/Typography";
|
|
|
25
25
|
|
|
26
26
|
const SANS = '-apple-system, BlinkMacSystemFont, "Roboto", "Helvetica Neue", Arial, sans-serif';
|
|
27
27
|
|
|
28
|
+
/* Icons in the collection colour either via `stroke` (outline glyphs whose root
|
|
29
|
+
is `fill="none"`) or via `fill`. To tint a history glyph by tone we must set
|
|
30
|
+
the right one — this set marks the stroke-based glyphs used in the stream. */
|
|
31
|
+
const STROKE_ICONS = new Set([GitBranchIcon, GitCommitIcon, GitPullRequestIcon, GitPullRequestDraftIcon, GitPullRequestClosedIcon, GitMergeIcon, GearIcon, GearFailedIcon, CloudDeployIcon, CloudDeployFailedIcon, GitRepositoryIcon]);
|
|
32
|
+
|
|
33
|
+
/** Every event glyph renders in the standard muted gray; success / failure is
|
|
34
|
+
carried by a trailing check / cross after the title instead of the glyph. */
|
|
35
|
+
const iconColorProps = icon => STROKE_ICONS.has(icon) ? {
|
|
36
|
+
stroke: "var(--color-theme-600)"
|
|
37
|
+
} : {
|
|
38
|
+
fill: "var(--color-theme-600)"
|
|
39
|
+
};
|
|
40
|
+
|
|
28
41
|
/* ================================================================== */
|
|
29
42
|
/* Issue markers (open / closed) — small inline glyphs so the */
|
|
30
43
|
/* open-vs-closed state reads crisply; they inherit `currentColor`. */
|
|
@@ -83,6 +96,38 @@ const IssueClosedIcon = _ref2 => {
|
|
|
83
96
|
/* ================================================================== */
|
|
84
97
|
|
|
85
98
|
const STAGE_NAMES = ["Branch", "Commits", "Pull request", "CI / Build", "Deploy"];
|
|
99
|
+
const MONTHS = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
|
|
100
|
+
const pad = n => String(n).padStart(2, "0");
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Reproduces ActiveCollab's standard `Ago` component (`Angie.functions.ago()`)
|
|
104
|
+
* for the mock: "Just now", "N minutes ago", "Today HH:mm", "Yesterday HH:mm",
|
|
105
|
+
* "MMM D. HH:mm", else "MMM D. YYYY HH:mm". Production must use the real one,
|
|
106
|
+
* which also carries the absolute timestamp in a tooltip and auto-refreshes.
|
|
107
|
+
*/
|
|
108
|
+
const formatAgo = minutesAgo => {
|
|
109
|
+
const now = new Date();
|
|
110
|
+
const then = new Date(now.getTime() - minutesAgo * 60000);
|
|
111
|
+
if (minutesAgo < 2) {
|
|
112
|
+
return "Just now";
|
|
113
|
+
}
|
|
114
|
+
if (minutesAgo < 60) {
|
|
115
|
+
return Math.floor(minutesAgo) + " minutes ago";
|
|
116
|
+
}
|
|
117
|
+
const time = pad(then.getHours()) + ":" + pad(then.getMinutes());
|
|
118
|
+
if (then.toDateString() === now.toDateString()) {
|
|
119
|
+
return "Today " + time;
|
|
120
|
+
}
|
|
121
|
+
const yesterday = new Date(now.getTime() - 24 * 60 * 60000);
|
|
122
|
+
if (then.toDateString() === yesterday.toDateString()) {
|
|
123
|
+
return "Yesterday " + time;
|
|
124
|
+
}
|
|
125
|
+
const monthDay = MONTHS[then.getMonth()] + " " + then.getDate() + ".";
|
|
126
|
+
if (then.getFullYear() === now.getFullYear()) {
|
|
127
|
+
return monthDay + " " + time;
|
|
128
|
+
}
|
|
129
|
+
return monthDay + " " + then.getFullYear() + " " + time;
|
|
130
|
+
};
|
|
86
131
|
|
|
87
132
|
/** A VCS issue. Weakly referenced by any number of branches / PRs. */
|
|
88
133
|
|
|
@@ -174,13 +219,13 @@ const CODE_ENTRIES = [{
|
|
|
174
219
|
history: [{
|
|
175
220
|
icon: GitBranchIcon,
|
|
176
221
|
title: "Branch created",
|
|
177
|
-
detail: "spike/rank-cache",
|
|
178
|
-
|
|
222
|
+
detail: "spike/rank-cache by Ilija Studen",
|
|
223
|
+
minutesAgo: 120
|
|
179
224
|
}, {
|
|
180
225
|
icon: GitCommitIcon,
|
|
181
|
-
title: "
|
|
182
|
-
detail: "Prototype rank cache",
|
|
183
|
-
|
|
226
|
+
title: "One commit pushed",
|
|
227
|
+
detail: "Ilija Studen: “Prototype rank cache”",
|
|
228
|
+
minutesAgo: 30
|
|
184
229
|
}]
|
|
185
230
|
}, {
|
|
186
231
|
kind: "branch",
|
|
@@ -226,13 +271,13 @@ const CODE_ENTRIES = [{
|
|
|
226
271
|
history: [{
|
|
227
272
|
icon: GitBranchIcon,
|
|
228
273
|
title: "Branch created",
|
|
229
|
-
detail: "feature/retainers-ui-34",
|
|
230
|
-
|
|
274
|
+
detail: "feature/retainers-ui-34 by Dragana A.",
|
|
275
|
+
minutesAgo: 480
|
|
231
276
|
}, {
|
|
232
277
|
icon: GitCommitIcon,
|
|
233
|
-
title: "
|
|
234
|
-
detail: "Retainer settings screen",
|
|
235
|
-
|
|
278
|
+
title: "6 commits pushed",
|
|
279
|
+
detail: "Last by Dragana A.: “Retainer settings screen”",
|
|
280
|
+
minutesAgo: 60
|
|
236
281
|
}]
|
|
237
282
|
}, {
|
|
238
283
|
kind: "pr",
|
|
@@ -241,6 +286,8 @@ const CODE_ENTRIES = [{
|
|
|
241
286
|
repo: "frontend",
|
|
242
287
|
repoFull: "activecollab/frontend",
|
|
243
288
|
status: "merged",
|
|
289
|
+
sourceBranch: "feature/contracts-ui-34",
|
|
290
|
+
targetBranch: "main",
|
|
244
291
|
contributors: [{
|
|
245
292
|
initials: "MK",
|
|
246
293
|
bg: AVATAR_COLORS.blue
|
|
@@ -281,26 +328,108 @@ const CODE_ENTRIES = [{
|
|
|
281
328
|
history: [{
|
|
282
329
|
icon: GitBranchIcon,
|
|
283
330
|
title: "Branch created",
|
|
284
|
-
detail: "feature/contracts-ui-34",
|
|
285
|
-
|
|
331
|
+
detail: "feature/contracts-ui-34 by Marko K.",
|
|
332
|
+
minutesAgo: 11520
|
|
286
333
|
}, {
|
|
287
|
-
icon:
|
|
288
|
-
title: "
|
|
289
|
-
detail: "
|
|
290
|
-
|
|
291
|
-
|
|
334
|
+
icon: GitCommitIcon,
|
|
335
|
+
title: "6 commits pushed",
|
|
336
|
+
detail: "Last by Marko K.: “Wire rank controls to contracts API”",
|
|
337
|
+
minutesAgo: 10080
|
|
338
|
+
}, {
|
|
339
|
+
icon: GitPullRequestDraftIcon,
|
|
340
|
+
title: "Draft pull request opened",
|
|
341
|
+
detail: "Target: main by Marko K.",
|
|
342
|
+
minutesAgo: 8640
|
|
292
343
|
}, {
|
|
293
|
-
icon:
|
|
344
|
+
icon: GearIcon,
|
|
294
345
|
title: "Build started",
|
|
295
|
-
detail: "CI pipeline #
|
|
296
|
-
|
|
346
|
+
detail: "CI pipeline #479",
|
|
347
|
+
minutesAgo: 8639,
|
|
297
348
|
tone: "progress"
|
|
298
349
|
}, {
|
|
299
|
-
icon:
|
|
350
|
+
icon: GearFailedIcon,
|
|
300
351
|
title: "Build failed",
|
|
301
352
|
detail: "3 of 12 checks failed",
|
|
302
|
-
|
|
353
|
+
minutesAgo: 8635,
|
|
303
354
|
tone: "danger"
|
|
355
|
+
}, {
|
|
356
|
+
icon: GitCommitIcon,
|
|
357
|
+
title: "2 commits pushed",
|
|
358
|
+
detail: "Last by Marko K.: “Fix failing snapshot tests”",
|
|
359
|
+
minutesAgo: 7200
|
|
360
|
+
}, {
|
|
361
|
+
icon: GearIcon,
|
|
362
|
+
title: "Build passed",
|
|
363
|
+
detail: "All 12 checks passed · CI pipeline #482",
|
|
364
|
+
minutesAgo: 7195,
|
|
365
|
+
tone: "success"
|
|
366
|
+
}, {
|
|
367
|
+
icon: GitPullRequestIcon,
|
|
368
|
+
title: "Marked ready for review",
|
|
369
|
+
author: "Marko K.",
|
|
370
|
+
minutesAgo: 5760,
|
|
371
|
+
tone: "progress"
|
|
372
|
+
}, {
|
|
373
|
+
icon: EyeIcon,
|
|
374
|
+
title: "Review requested",
|
|
375
|
+
detail: "Requested by Ana P., Ilija S. and 2 more",
|
|
376
|
+
minutesAgo: 5755
|
|
377
|
+
}, {
|
|
378
|
+
icon: MessageIcon,
|
|
379
|
+
title: "Changes requested",
|
|
380
|
+
detail: "Request on 4 files by Ana P.",
|
|
381
|
+
minutesAgo: 4320
|
|
382
|
+
}, {
|
|
383
|
+
icon: GitCommitIcon,
|
|
384
|
+
title: "One commit pushed",
|
|
385
|
+
detail: "Marko K.: “Address review feedback”",
|
|
386
|
+
minutesAgo: 4000
|
|
387
|
+
}, {
|
|
388
|
+
icon: GitPullRequestClosedIcon,
|
|
389
|
+
title: "Pull request closed",
|
|
390
|
+
detail: "Closed without merging by Marko K.",
|
|
391
|
+
minutesAgo: 2880
|
|
392
|
+
}, {
|
|
393
|
+
icon: GitPullRequestIcon,
|
|
394
|
+
title: "Pull request reopened",
|
|
395
|
+
detail: "Target: main by Marko K.",
|
|
396
|
+
minutesAgo: 1680,
|
|
397
|
+
tone: "progress"
|
|
398
|
+
}, {
|
|
399
|
+
icon: GitCommitIcon,
|
|
400
|
+
title: "4 commits pushed",
|
|
401
|
+
detail: "Last by Marko K.: “Rebuild rank controls with a new segmented layout, keyboard navigation, and analytics events”",
|
|
402
|
+
minutesAgo: 1560
|
|
403
|
+
}, {
|
|
404
|
+
icon: CloudDeployIcon,
|
|
405
|
+
title: "Deployed to staging",
|
|
406
|
+
detail: "Release ci-4821",
|
|
407
|
+
minutesAgo: 300,
|
|
408
|
+
tone: "success"
|
|
409
|
+
}, {
|
|
410
|
+
icon: CheckIcon,
|
|
411
|
+
title: "Approved",
|
|
412
|
+
detail: "2 approvals · Ana P., Ilija S.",
|
|
413
|
+
minutesAgo: 180,
|
|
414
|
+
tone: "success"
|
|
415
|
+
}, {
|
|
416
|
+
icon: GitMergeIcon,
|
|
417
|
+
title: "Pull request merged",
|
|
418
|
+
detail: "Target: main by Marko K.",
|
|
419
|
+
minutesAgo: 38,
|
|
420
|
+
tone: "success"
|
|
421
|
+
}, {
|
|
422
|
+
icon: CloudDeployFailedIcon,
|
|
423
|
+
title: "Deploy failed",
|
|
424
|
+
detail: "Target: production by Marko K.",
|
|
425
|
+
minutesAgo: 24,
|
|
426
|
+
tone: "danger"
|
|
427
|
+
}, {
|
|
428
|
+
icon: CloudDeployIcon,
|
|
429
|
+
title: "Deployed to production",
|
|
430
|
+
detail: "Release v2026.7.3",
|
|
431
|
+
minutesAgo: 1,
|
|
432
|
+
tone: "success"
|
|
304
433
|
}]
|
|
305
434
|
}, {
|
|
306
435
|
kind: "branch",
|
|
@@ -339,18 +468,18 @@ const CODE_ENTRIES = [{
|
|
|
339
468
|
history: [{
|
|
340
469
|
icon: GitBranchIcon,
|
|
341
470
|
title: "Branch created",
|
|
342
|
-
detail: "feature/retainers-34",
|
|
343
|
-
|
|
471
|
+
detail: "feature/retainers-34 by Ilija Studen",
|
|
472
|
+
minutesAgo: 4320
|
|
344
473
|
}, {
|
|
345
474
|
icon: GitCommitIcon,
|
|
346
|
-
title: "
|
|
347
|
-
detail: "Rank model + datastore updates",
|
|
348
|
-
|
|
475
|
+
title: "14 commits pushed",
|
|
476
|
+
detail: "Last by Ilija Studen: “Rank model + datastore updates”",
|
|
477
|
+
minutesAgo: 3000
|
|
349
478
|
}, {
|
|
350
|
-
icon:
|
|
479
|
+
icon: GitMergeIcon,
|
|
351
480
|
title: "Branch merged",
|
|
352
|
-
detail: "
|
|
353
|
-
|
|
481
|
+
detail: "Target: main by Ilija Studen",
|
|
482
|
+
minutesAgo: 2880,
|
|
354
483
|
tone: "success"
|
|
355
484
|
}]
|
|
356
485
|
}, {
|
|
@@ -360,6 +489,8 @@ const CODE_ENTRIES = [{
|
|
|
360
489
|
repo: "backend",
|
|
361
490
|
repoFull: "activecollab/backend",
|
|
362
491
|
status: "merged",
|
|
492
|
+
sourceBranch: "feature/retainers-34",
|
|
493
|
+
targetBranch: "main",
|
|
363
494
|
contributors: [{
|
|
364
495
|
initials: "IS",
|
|
365
496
|
bg: AVATAR_COLORS.purple
|
|
@@ -397,20 +528,20 @@ const CODE_ENTRIES = [{
|
|
|
397
528
|
history: [{
|
|
398
529
|
icon: GitPullRequestIcon,
|
|
399
530
|
title: "Pull request opened",
|
|
400
|
-
detail: "
|
|
401
|
-
|
|
531
|
+
detail: "Target: main by Ilija Studen",
|
|
532
|
+
minutesAgo: 3000,
|
|
402
533
|
tone: "progress"
|
|
403
534
|
}, {
|
|
404
535
|
icon: CheckIcon,
|
|
405
|
-
title: "Approved
|
|
406
|
-
detail: "Marko K., Janko S.",
|
|
407
|
-
|
|
536
|
+
title: "Approved",
|
|
537
|
+
detail: "2 approvals · Marko K., Janko S.",
|
|
538
|
+
minutesAgo: 2905,
|
|
408
539
|
tone: "success"
|
|
409
540
|
}, {
|
|
410
|
-
icon:
|
|
541
|
+
icon: GitMergeIcon,
|
|
411
542
|
title: "Pull request merged",
|
|
412
|
-
detail: "
|
|
413
|
-
|
|
543
|
+
detail: "Target: main by Ilija Studen",
|
|
544
|
+
minutesAgo: 2880,
|
|
414
545
|
tone: "success"
|
|
415
546
|
}]
|
|
416
547
|
}, {
|
|
@@ -450,19 +581,18 @@ const CODE_ENTRIES = [{
|
|
|
450
581
|
history: [{
|
|
451
582
|
icon: GitBranchIcon,
|
|
452
583
|
title: "Branch created",
|
|
453
|
-
detail: "hotfix/rank-typo",
|
|
454
|
-
|
|
584
|
+
detail: "hotfix/rank-typo by Marko K.",
|
|
585
|
+
minutesAgo: 8640
|
|
455
586
|
}, {
|
|
456
587
|
icon: GitCommitIcon,
|
|
457
|
-
title: "
|
|
458
|
-
detail: "Fix rank label typo",
|
|
459
|
-
|
|
588
|
+
title: "2 commits pushed",
|
|
589
|
+
detail: "Last by Marko K.: “Fix rank label typo”",
|
|
590
|
+
minutesAgo: 8600
|
|
460
591
|
}, {
|
|
461
592
|
icon: TrashIcon,
|
|
462
593
|
title: "Branch deleted",
|
|
463
|
-
detail: "
|
|
464
|
-
|
|
465
|
-
tone: "danger"
|
|
594
|
+
detail: "Soft deleted by Marko K.",
|
|
595
|
+
minutesAgo: 7000
|
|
466
596
|
}]
|
|
467
597
|
}, {
|
|
468
598
|
kind: "pr",
|
|
@@ -471,6 +601,8 @@ const CODE_ENTRIES = [{
|
|
|
471
601
|
repo: "backend",
|
|
472
602
|
repoFull: "activecollab/backend",
|
|
473
603
|
status: "merged",
|
|
604
|
+
sourceBranch: "fix/rank-clamp-33",
|
|
605
|
+
targetBranch: "main",
|
|
474
606
|
contributors: [{
|
|
475
607
|
initials: "MK",
|
|
476
608
|
bg: AVATAR_COLORS.blue
|
|
@@ -501,13 +633,19 @@ const CODE_ENTRIES = [{
|
|
|
501
633
|
history: [{
|
|
502
634
|
icon: GitBranchIcon,
|
|
503
635
|
title: "Branch created",
|
|
504
|
-
detail: "fix/rank-clamp-33",
|
|
505
|
-
|
|
636
|
+
detail: "fix/rank-clamp-33 by Marko K.",
|
|
637
|
+
minutesAgo: 8640
|
|
506
638
|
}, {
|
|
507
639
|
icon: GitPullRequestIcon,
|
|
640
|
+
title: "Pull request opened",
|
|
641
|
+
detail: "Target: main by Marko K.",
|
|
642
|
+
minutesAgo: 8600,
|
|
643
|
+
tone: "progress"
|
|
644
|
+
}, {
|
|
645
|
+
icon: GitMergeIcon,
|
|
508
646
|
title: "Pull request merged",
|
|
509
|
-
detail: "
|
|
510
|
-
|
|
647
|
+
detail: "Target: main by Marko K.",
|
|
648
|
+
minutesAgo: 7200,
|
|
511
649
|
tone: "success"
|
|
512
650
|
}]
|
|
513
651
|
}, {
|
|
@@ -517,6 +655,8 @@ const CODE_ENTRIES = [{
|
|
|
517
655
|
repo: "backend",
|
|
518
656
|
repoFull: "activecollab/backend",
|
|
519
657
|
status: "closed",
|
|
658
|
+
sourceBranch: "feature/rank-datastore-cache",
|
|
659
|
+
targetBranch: "main",
|
|
520
660
|
contributors: [{
|
|
521
661
|
initials: "IS",
|
|
522
662
|
bg: AVATAR_COLORS.purple
|
|
@@ -551,14 +691,14 @@ const CODE_ENTRIES = [{
|
|
|
551
691
|
history: [{
|
|
552
692
|
icon: GitPullRequestIcon,
|
|
553
693
|
title: "Pull request opened",
|
|
554
|
-
detail: "
|
|
555
|
-
|
|
694
|
+
detail: "Target: main by Ilija Studen",
|
|
695
|
+
minutesAgo: 5760,
|
|
556
696
|
tone: "progress"
|
|
557
697
|
}, {
|
|
558
|
-
icon:
|
|
698
|
+
icon: GitPullRequestClosedIcon,
|
|
559
699
|
title: "Pull request closed",
|
|
560
|
-
detail: "
|
|
561
|
-
|
|
700
|
+
detail: "Closed without merging by Ilija Studen",
|
|
701
|
+
minutesAgo: 4320
|
|
562
702
|
}]
|
|
563
703
|
}];
|
|
564
704
|
|
|
@@ -624,10 +764,13 @@ const Spine = _ref4 => {
|
|
|
624
764
|
className: items[i + 1].state !== "todo" ? "connector on" : "connector"
|
|
625
765
|
})))));
|
|
626
766
|
};
|
|
767
|
+
|
|
768
|
+
/* The whole content scrolls together (header + stream + note) once the stream
|
|
769
|
+
is long — the dialog title bar stays fixed, everything below scrolls. */
|
|
627
770
|
const StyledHistory = styled.div.withConfig({
|
|
628
771
|
displayName: "SourceCodeSection__StyledHistory",
|
|
629
772
|
componentId: "sc-rvqbh5-2"
|
|
630
|
-
})(["font-family:", ";.hist-
|
|
773
|
+
})(["font-family:", ";max-height:60vh;overflow-y:auto;padding-right:4px;.hist-header{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--border-primary);}.hist-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}.hist-branches{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px;font-size:13px;color:var(--color-theme-600);}.hist-branch{display:inline-flex;align-items:center;gap:4px;}.hist-repo{display:inline-flex;align-items:center;gap:4px;margin-top:6px;font-size:13px;color:var(--color-theme-600);}.sc-chip{display:inline-flex;align-items:center;gap:3px;height:20px;padding:0 8px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:0.02em;flex-shrink:0;}.sc-chip.done{color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 15%,transparent);}.sc-chip.gone{color:var(--color-theme-900);background:var(--color-theme-200);border:1px solid var(--border-primary);}.sc-chip.fail{color:var(--red-alert);background:color-mix(in srgb,var(--red-alert) 15%,transparent);}.hist-event{display:flex;align-items:center;gap:12px;padding-bottom:20px;}.hist-event:last-child{padding-bottom:0;}.hist-icon{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;}.hist-body{flex:1 1 auto;min-width:0;}.hist-title{display:flex;align-items:center;gap:6px;min-width:0;}.hist-title > *:first-child{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.hist-status{flex-shrink:0;display:inline-flex;}.hist-line{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:1.5;color:var(--color-theme-600);}.hist-meta{flex-shrink:0;align-self:flex-start;text-align:right;white-space:nowrap;}.hist-note{display:flex;align-items:center;gap:6px;margin-top:16px;color:var(--color-theme-500);}.hist-note svg{flex-shrink:0;}"], SANS);
|
|
631
774
|
const HistoryDialog = _ref5 => {
|
|
632
775
|
let entry = _ref5.entry,
|
|
633
776
|
onClose = _ref5.onClose;
|
|
@@ -644,38 +787,82 @@ const HistoryDialog = _ref5 => {
|
|
|
644
787
|
justifyContent: "space-between",
|
|
645
788
|
gap: 12
|
|
646
789
|
}
|
|
647
|
-
}, /*#__PURE__*/React.createElement(Header3, null, "
|
|
790
|
+
}, /*#__PURE__*/React.createElement(Header3, null, (entry == null ? void 0 : entry.kind) === "branch" ? "Branch History" : "Pull Request History"), /*#__PURE__*/React.createElement(IconButton, {
|
|
648
791
|
type: "button",
|
|
649
792
|
variant: "text gray",
|
|
650
793
|
onClick: onClose
|
|
651
794
|
}, /*#__PURE__*/React.createElement(CancelCrossIcon, null)))), /*#__PURE__*/React.createElement(Dialog.ContentDivider, null), /*#__PURE__*/React.createElement(Dialog.Content, null, entry && /*#__PURE__*/React.createElement(StyledHistory, null, /*#__PURE__*/React.createElement("div", {
|
|
652
|
-
className: "hist-
|
|
653
|
-
}, /*#__PURE__*/React.createElement(
|
|
795
|
+
className: "hist-header"
|
|
796
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
797
|
+
className: "hist-name"
|
|
798
|
+
}, /*#__PURE__*/React.createElement(Body1, {
|
|
654
799
|
weight: "medium"
|
|
655
|
-
}, entry.title
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
}),
|
|
800
|
+
}, entry.status === "deleted" ? entry.title : /*#__PURE__*/React.createElement(TitleLink, {
|
|
801
|
+
href: codeUrl(entry),
|
|
802
|
+
target: "_blank",
|
|
803
|
+
rel: "noopener noreferrer"
|
|
804
|
+
}, entry.title)), /*#__PURE__*/React.createElement(CodeStatusChip, {
|
|
805
|
+
entry: entry
|
|
806
|
+
})), entry.kind === "pr" && entry.sourceBranch && entry.targetBranch && /*#__PURE__*/React.createElement("div", {
|
|
807
|
+
className: "hist-branches"
|
|
808
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
809
|
+
className: "hist-branch"
|
|
810
|
+
}, /*#__PURE__*/React.createElement(GitBranchIcon, {
|
|
811
|
+
width: 14,
|
|
812
|
+
height: 14
|
|
813
|
+
}), entry.sourceBranch), /*#__PURE__*/React.createElement(ArrowRightIcon, {
|
|
814
|
+
width: 14,
|
|
815
|
+
height: 14
|
|
816
|
+
}), /*#__PURE__*/React.createElement("span", {
|
|
817
|
+
className: "hist-branch"
|
|
818
|
+
}, /*#__PURE__*/React.createElement(GitBranchIcon, {
|
|
819
|
+
width: 14,
|
|
820
|
+
height: 14
|
|
821
|
+
}), entry.targetBranch)), /*#__PURE__*/React.createElement("span", {
|
|
822
|
+
className: "hist-repo"
|
|
823
|
+
}, /*#__PURE__*/React.createElement(GitRepositoryIcon, {
|
|
824
|
+
width: 14,
|
|
825
|
+
height: 14
|
|
826
|
+
}), entry.repoFull)), [...entry.history].sort((a, b) => a.minutesAgo - b.minutesAgo).map((ev, i) => /*#__PURE__*/React.createElement("div", {
|
|
827
|
+
className: "hist-event",
|
|
828
|
+
key: ev.title + "-" + i
|
|
829
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
830
|
+
className: "hist-icon"
|
|
831
|
+
}, /*#__PURE__*/React.createElement(ev.icon, _extends({
|
|
832
|
+
width: 22,
|
|
833
|
+
height: 22
|
|
834
|
+
}, iconColorProps(ev.icon)))), /*#__PURE__*/React.createElement("div", {
|
|
835
|
+
className: "hist-body"
|
|
836
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
837
|
+
className: "hist-title"
|
|
838
|
+
}, /*#__PURE__*/React.createElement(Body1, {
|
|
839
|
+
weight: "medium"
|
|
840
|
+
}, ev.title), ev.tone === "success" && /*#__PURE__*/React.createElement("span", {
|
|
841
|
+
className: "hist-status"
|
|
842
|
+
}, /*#__PURE__*/React.createElement(CheckIcon, {
|
|
843
|
+
width: 16,
|
|
844
|
+
height: 16,
|
|
845
|
+
fill: "var(--color-sucess-green)"
|
|
846
|
+
})), ev.tone === "danger" && /*#__PURE__*/React.createElement("span", {
|
|
847
|
+
className: "sc-chip fail"
|
|
848
|
+
}, /*#__PURE__*/React.createElement(CloseIcon, {
|
|
849
|
+
width: 12,
|
|
850
|
+
height: 12,
|
|
851
|
+
fill: "var(--red-alert)"
|
|
852
|
+
}), "Failed")), ev.detail && /*#__PURE__*/React.createElement("span", {
|
|
853
|
+
className: "hist-line"
|
|
854
|
+
}, ev.detail), ev.author && /*#__PURE__*/React.createElement("span", {
|
|
855
|
+
className: "hist-line"
|
|
856
|
+
}, ev.author)), /*#__PURE__*/React.createElement("div", {
|
|
857
|
+
className: "hist-meta"
|
|
858
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
859
|
+
className: "hist-line"
|
|
860
|
+
}, formatAgo(ev.minutesAgo))))), !entry.pipelineSupported && /*#__PURE__*/React.createElement("div", {
|
|
677
861
|
className: "hist-note"
|
|
678
|
-
}, /*#__PURE__*/React.createElement(
|
|
862
|
+
}, /*#__PURE__*/React.createElement(InfoSmallIcon, {
|
|
863
|
+
width: 15,
|
|
864
|
+
height: 15
|
|
865
|
+
}), /*#__PURE__*/React.createElement(Caption1, {
|
|
679
866
|
color: "secondary"
|
|
680
867
|
}, "No CI or deployment pipeline is configured for this repository.")))));
|
|
681
868
|
};
|