feat(web): recent actions on the summary and visible status marks (#25)
- commit
- 09479031802551efcc45e4ac5c1782372a8df4f3
- author
- brice · · 2026-10-14 15:58 UTC
- committer
- bnema · · 2026-10-14 15:58 UTC
- parent
- dd8597a
- signature
- SSH Unverified
SHA256:VOCA5lYARHcbKDZ7GhTV45VmcjWnJ6ZQIBazj17LivAThe key is unknown
13 files · +1125 -656
M internal/adapters/kvstore/ci.go +21 -8
| @@ -660,19 +660,32 @@ func (c *CI) ListRuns(ctx context.Context, repo domain.RepoName, before int64, l | |||
| 660 | 660 | if before > 0 { | |
| 661 | 661 | end = runKey(repo, before) | |
| 662 | 662 | } | |
| 663 | - | // Collect then reverse: the snapshot iterates in key order only. | |
| 664 | - | var all []domain.CIRun | |
| 663 | + | // The snapshot iterates in key order only: keep the last limit items in a | |
| 664 | + | // ring and decode only those, so the cost of a page does not grow with the | |
| 665 | + | // decoded history of the repository. | |
| 666 | + | type entry struct { | |
| 667 | + | key []byte | |
| 668 | + | item kv.Item | |
| 669 | + | } | |
| 670 | + | var ring []entry | |
| 671 | + | next := 0 | |
| 665 | 672 | for key, item := range c.db.Snapshot(ctx).Range(ctx, start, end) { | |
| 666 | - | r, err := decodeRun(item) | |
| 673 | + | if limit <= 0 || len(ring) < limit { | |
| 674 | + | ring = append(ring, entry{key, item}) | |
| 675 | + | continue | |
| 676 | + | } | |
| 677 | + | ring[next] = entry{key, item} | |
| 678 | + | next = (next + 1) % limit | |
| 679 | + | } | |
| 680 | + | ordered := append(ring[next:len(ring):len(ring)], ring[:next]...) | |
| 681 | + | all := make([]domain.CIRun, 0, len(ordered)) | |
| 682 | + | for i := len(ordered) - 1; i >= 0; i-- { | |
| 683 | + | r, err := decodeRun(ordered[i].item) | |
| 667 | 684 | if err != nil { | |
| 668 | - | return nil, fmt.Errorf("decode %s: %w", key, err) | |
| 685 | + | return nil, fmt.Errorf("decode %s: %w", ordered[i].key, err) | |
| 669 | 686 | } | |
| 670 | 687 | all = append(all, r) | |
| 671 | 688 | } | |
| 672 | - | slices.Reverse(all) | |
| 673 | - | if limit > 0 && len(all) > limit { | |
| 674 | - | all = all[:limit] | |
| 675 | - | } | |
| 676 | 689 | return all, nil | |
| 677 | 690 | } | |
| 678 | 691 | ||
| @@ -660,19 +660,32 @@ func (c *CI) ListRuns(ctx context.Context, repo domain.RepoName, before int64, l | |||||
| 660 | if before > 0 { | 660 | if before > 0 { | ||
| 661 | end = runKey(repo, before) | 661 | end = runKey(repo, before) | ||
| 662 | } | 662 | } | ||
| 663 | - | // Collect then reverse: the snapshot iterates in key order only. | 663 | + | // The snapshot iterates in key order only: keep the last limit items in a |
| 664 | - | var all []domain.CIRun | 664 | + | // ring and decode only those, so the cost of a page does not grow with the |
| 665 | + | // decoded history of the repository. | |||
| 666 | + | type entry struct { | |||
| 667 | + | key []byte | |||
| 668 | + | item kv.Item | |||
| 669 | + | } | |||
| 670 | + | var ring []entry | |||
| 671 | + | next := 0 | |||
| 665 | for key, item := range c.db.Snapshot(ctx).Range(ctx, start, end) { | 672 | for key, item := range c.db.Snapshot(ctx).Range(ctx, start, end) { | ||
| 666 | - | r, err := decodeRun(item) | 673 | + | if limit <= 0 || len(ring) < limit { |
| 674 | + | ring = append(ring, entry{key, item}) | |||
| 675 | + | continue | |||
| 676 | + | } | |||
| 677 | + | ring[next] = entry{key, item} | |||
| 678 | + | next = (next + 1) % limit | |||
| 679 | + | } | |||
| 680 | + | ordered := append(ring[next:len(ring):len(ring)], ring[:next]...) | |||
| 681 | + | all := make([]domain.CIRun, 0, len(ordered)) | |||
| 682 | + | for i := len(ordered) - 1; i >= 0; i-- { | |||
| 683 | + | r, err := decodeRun(ordered[i].item) | |||
| 667 | if err != nil { | 684 | if err != nil { | ||
| 668 | - | return nil, fmt.Errorf("decode %s: %w", key, err) | 685 | + | return nil, fmt.Errorf("decode %s: %w", ordered[i].key, err) |
| 669 | } | 686 | } | ||
| 670 | all = append(all, r) | 687 | all = append(all, r) | ||
| 671 | } | 688 | } | ||
| 672 | - | slices.Reverse(all) | |||
| 673 | - | if limit > 0 && len(all) > limit { | |||
| 674 | - | all = all[:limit] | |||
| 675 | - | } | |||
| 676 | return all, nil | 689 | return all, nil | ||
| 677 | } | 690 | } | ||
| 678 | 691 | ||||
M internal/adapters/kvstore/ci_test.go +5 -0
| @@ -204,6 +204,11 @@ func TestCIListRunsNewestFirstAndBounded(t *testing.T) { | |||
| 204 | 204 | runs, err = ci.ListRuns(ctx, n, 4, 10) | |
| 205 | 205 | require.NoError(t, err) | |
| 206 | 206 | assert.Equal(t, []int64{3, 2}, []int64{runs[0].ID, runs[1].ID}) | |
| 207 | + | runs, err = ci.ListRuns(ctx, n, 0, 0) | |
| 208 | + | require.NoError(t, err) | |
| 209 | + | require.Len(t, runs, 5) | |
| 210 | + | assert.Equal(t, int64(6), runs[0].ID) | |
| 211 | + | assert.Equal(t, int64(2), runs[4].ID) | |
| 207 | 212 | ids, err := ci.RunIDs(ctx, n) | |
| 208 | 213 | require.NoError(t, err) | |
| 209 | 214 | assert.Len(t, ids, 5) | |
| @@ -204,6 +204,11 @@ func TestCIListRunsNewestFirstAndBounded(t *testing.T) { | |||||
| 204 | runs, err = ci.ListRuns(ctx, n, 4, 10) | 204 | runs, err = ci.ListRuns(ctx, n, 4, 10) | ||
| 205 | require.NoError(t, err) | 205 | require.NoError(t, err) | ||
| 206 | assert.Equal(t, []int64{3, 2}, []int64{runs[0].ID, runs[1].ID}) | 206 | assert.Equal(t, []int64{3, 2}, []int64{runs[0].ID, runs[1].ID}) | ||
| 207 | + | runs, err = ci.ListRuns(ctx, n, 0, 0) | |||
| 208 | + | require.NoError(t, err) | |||
| 209 | + | require.Len(t, runs, 5) | |||
| 210 | + | assert.Equal(t, int64(6), runs[0].ID) | |||
| 211 | + | assert.Equal(t, int64(2), runs[4].ID) | |||
| 207 | ids, err := ci.RunIDs(ctx, n) | 212 | ids, err := ci.RunIDs(ctx, n) | ||
| 208 | require.NoError(t, err) | 213 | require.NoError(t, err) | ||
| 209 | assert.Len(t, ids, 5) | 214 | assert.Len(t, ids, 5) | ||
M internal/adapters/web/actions.templ +21 -0
| @@ -56,6 +56,27 @@ templ RunListRow(r RunRow) { | |||
| 56 | 56 | </tr> | |
| 57 | 57 | } | |
| 58 | 58 | ||
| 59 | + | // RecentActionsBlock is the "Recent actions" section of the summary rail; its | |
| 60 | + | // id is the target of the live updates. Without a run it is hidden. | |
| 61 | + | templ RecentActionsBlock(a RecentActions) { | |
| 62 | + | <section id="recent-actions" aria-labelledby="r-actions" hidden?={ len(a.Runs) == 0 }> | |
| 63 | + | <h2 id="r-actions">Recent actions <a href={ templ.SafeURL(a.AllHref) }>View all</a></h2> | |
| 64 | + | <ul class="rruns"> | |
| 65 | + | for _, r := range a.Runs { | |
| 66 | + | <li> | |
| 67 | + | @CheckIcon(r.Kind, r.State) | |
| 68 | + | <a class="rr-name" href={ templ.SafeURL(r.Href) } title={ r.Workflow + " " + r.Number + " · " + r.State }>{ r.Workflow }</a> | |
| 69 | + | <span class="mute">{ r.Number }</span> | |
| 70 | + | <a class="rr-ref" href={ templ.SafeURL(r.RefHref) }>{ r.Ref }</a> | |
| 71 | + | if r.WhenAt != "" { | |
| 72 | + | <time class="dim" datetime={ r.WhenAt } title={ r.WhenAt }>{ r.When }</time> | |
| 73 | + | } | |
| 74 | + | </li> | |
| 75 | + | } | |
| 76 | + | </ul> | |
| 77 | + | </section> | |
| 78 | + | } | |
| 79 | + | ||
| 59 | 80 | templ RunDetail(l Layout, p RunPage) { | |
| 60 | 81 | @Shell(l, runRail(p)) { | |
| 61 | 82 | @LiveSlot("run-notice") | |
| @@ -56,6 +56,27 @@ templ RunListRow(r RunRow) { | |||||
| 56 | </tr> | 56 | </tr> | ||
| 57 | } | 57 | } | ||
| 58 | 58 | ||||
| 59 | + | // RecentActionsBlock is the "Recent actions" section of the summary rail; its | |||
| 60 | + | // id is the target of the live updates. Without a run it is hidden. | |||
| 61 | + | templ RecentActionsBlock(a RecentActions) { | |||
| 62 | + | <section id="recent-actions" aria-labelledby="r-actions" hidden?={ len(a.Runs) == 0 }> | |||
| 63 | + | <h2 id="r-actions">Recent actions <a href={ templ.SafeURL(a.AllHref) }>View all</a></h2> | |||
| 64 | + | <ul class="rruns"> | |||
| 65 | + | for _, r := range a.Runs { | |||
| 66 | + | <li> | |||
| 67 | + | @CheckIcon(r.Kind, r.State) | |||
| 68 | + | <a class="rr-name" href={ templ.SafeURL(r.Href) } title={ r.Workflow + " " + r.Number + " · " + r.State }>{ r.Workflow }</a> | |||
| 69 | + | <span class="mute">{ r.Number }</span> | |||
| 70 | + | <a class="rr-ref" href={ templ.SafeURL(r.RefHref) }>{ r.Ref }</a> | |||
| 71 | + | if r.WhenAt != "" { | |||
| 72 | + | <time class="dim" datetime={ r.WhenAt } title={ r.WhenAt }>{ r.When }</time> | |||
| 73 | + | } | |||
| 74 | + | </li> | |||
| 75 | + | } | |||
| 76 | + | </ul> | |||
| 77 | + | </section> | |||
| 78 | + | } | |||
| 79 | + | ||||
| 59 | templ RunDetail(l Layout, p RunPage) { | 80 | templ RunDetail(l Layout, p RunPage) { | ||
| 60 | @Shell(l, runRail(p)) { | 81 | @Shell(l, runRail(p)) { | ||
| 61 | @LiveSlot("run-notice") | 82 | @LiveSlot("run-notice") | ||
M internal/adapters/web/actions_templ.go +808 -609
| @@ -446,7 +446,9 @@ func RunListRow(r RunRow) templ.Component { | |||
| 446 | 446 | }) | |
| 447 | 447 | } | |
| 448 | 448 | ||
| 449 | - | func RunDetail(l Layout, p RunPage) templ.Component { | |
| 449 | + | // RecentActionsBlock is the "Recent actions" section of the summary rail; its | |
| 450 | + | // id is the target of the live updates. Without a run it is hidden. | |
| 451 | + | func RecentActionsBlock(a RecentActions) templ.Component { | |
| 450 | 452 | return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | |
| 451 | 453 | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | |
| 452 | 454 | if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil { | |
| @@ -467,7 +469,204 @@ func RunDetail(l Layout, p RunPage) templ.Component { | |||
| 467 | 469 | templ_7745c5c3_Var27 = templ.NopComponent | |
| 468 | 470 | } | |
| 469 | 471 | ctx = templ.ClearChildren(ctx) | |
| 470 | - | templ_7745c5c3_Var28 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | |
| 472 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 32, "<section id=\"recent-actions\" aria-labelledby=\"r-actions\"") | |
| 473 | + | if templ_7745c5c3_Err != nil { | |
| 474 | + | return templ_7745c5c3_Err | |
| 475 | + | } | |
| 476 | + | if len(a.Runs) == 0 { | |
| 477 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 33, " hidden") | |
| 478 | + | if templ_7745c5c3_Err != nil { | |
| 479 | + | return templ_7745c5c3_Err | |
| 480 | + | } | |
| 481 | + | } | |
| 482 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 34, "><h2 id=\"r-actions\">Recent actions <a href=\"") | |
| 483 | + | if templ_7745c5c3_Err != nil { | |
| 484 | + | return templ_7745c5c3_Err | |
| 485 | + | } | |
| 486 | + | var templ_7745c5c3_Var28 templ.SafeURL | |
| 487 | + | templ_7745c5c3_Var28, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.AllHref)) | |
| 488 | + | if templ_7745c5c3_Err != nil { | |
| 489 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 63, Col: 70} | |
| 490 | + | } | |
| 491 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var28)) | |
| 492 | + | if templ_7745c5c3_Err != nil { | |
| 493 | + | return templ_7745c5c3_Err | |
| 494 | + | } | |
| 495 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 35, "\">View all</a></h2><ul class=\"rruns\">") | |
| 496 | + | if templ_7745c5c3_Err != nil { | |
| 497 | + | return templ_7745c5c3_Err | |
| 498 | + | } | |
| 499 | + | for _, r := range a.Runs { | |
| 500 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 36, "<li>") | |
| 501 | + | if templ_7745c5c3_Err != nil { | |
| 502 | + | return templ_7745c5c3_Err | |
| 503 | + | } | |
| 504 | + | templ_7745c5c3_Err = CheckIcon(r.Kind, r.State).Render(ctx, templ_7745c5c3_Buffer) | |
| 505 | + | if templ_7745c5c3_Err != nil { | |
| 506 | + | return templ_7745c5c3_Err | |
| 507 | + | } | |
| 508 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 37, "<a class=\"rr-name\" href=\"") | |
| 509 | + | if templ_7745c5c3_Err != nil { | |
| 510 | + | return templ_7745c5c3_Err | |
| 511 | + | } | |
| 512 | + | var templ_7745c5c3_Var29 templ.SafeURL | |
| 513 | + | templ_7745c5c3_Var29, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(r.Href)) | |
| 514 | + | if templ_7745c5c3_Err != nil { | |
| 515 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 68, Col: 52} | |
| 516 | + | } | |
| 517 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var29)) | |
| 518 | + | if templ_7745c5c3_Err != nil { | |
| 519 | + | return templ_7745c5c3_Err | |
| 520 | + | } | |
| 521 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 38, "\" title=\"") | |
| 522 | + | if templ_7745c5c3_Err != nil { | |
| 523 | + | return templ_7745c5c3_Err | |
| 524 | + | } | |
| 525 | + | var templ_7745c5c3_Var30 string | |
| 526 | + | templ_7745c5c3_Var30, templ_7745c5c3_Err = templ.ResolveAttributeValue(r.Workflow + " " + r.Number + " · " + r.State) | |
| 527 | + | if templ_7745c5c3_Err != nil { | |
| 528 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 68, Col: 109} | |
| 529 | + | } | |
| 530 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var30) | |
| 531 | + | if templ_7745c5c3_Err != nil { | |
| 532 | + | return templ_7745c5c3_Err | |
| 533 | + | } | |
| 534 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 39, "\">") | |
| 535 | + | if templ_7745c5c3_Err != nil { | |
| 536 | + | return templ_7745c5c3_Err | |
| 537 | + | } | |
| 538 | + | var templ_7745c5c3_Var31 string | |
| 539 | + | templ_7745c5c3_Var31, templ_7745c5c3_Err = templ.JoinStringErrs(r.Workflow) | |
| 540 | + | if templ_7745c5c3_Err != nil { | |
| 541 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 68, Col: 124} | |
| 542 | + | } | |
| 543 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var31)) | |
| 544 | + | if templ_7745c5c3_Err != nil { | |
| 545 | + | return templ_7745c5c3_Err | |
| 546 | + | } | |
| 547 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 40, "</a> <span class=\"mute\">") | |
| 548 | + | if templ_7745c5c3_Err != nil { | |
| 549 | + | return templ_7745c5c3_Err | |
| 550 | + | } | |
| 551 | + | var templ_7745c5c3_Var32 string | |
| 552 | + | templ_7745c5c3_Var32, templ_7745c5c3_Err = templ.JoinStringErrs(r.Number) | |
| 553 | + | if templ_7745c5c3_Err != nil { | |
| 554 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 69, Col: 34} | |
| 555 | + | } | |
| 556 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var32)) | |
| 557 | + | if templ_7745c5c3_Err != nil { | |
| 558 | + | return templ_7745c5c3_Err | |
| 559 | + | } | |
| 560 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 41, "</span> <a class=\"rr-ref\" href=\"") | |
| 561 | + | if templ_7745c5c3_Err != nil { | |
| 562 | + | return templ_7745c5c3_Err | |
| 563 | + | } | |
| 564 | + | var templ_7745c5c3_Var33 templ.SafeURL | |
| 565 | + | templ_7745c5c3_Var33, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(r.RefHref)) | |
| 566 | + | if templ_7745c5c3_Err != nil { | |
| 567 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 70, Col: 54} | |
| 568 | + | } | |
| 569 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var33)) | |
| 570 | + | if templ_7745c5c3_Err != nil { | |
| 571 | + | return templ_7745c5c3_Err | |
| 572 | + | } | |
| 573 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 42, "\">") | |
| 574 | + | if templ_7745c5c3_Err != nil { | |
| 575 | + | return templ_7745c5c3_Err | |
| 576 | + | } | |
| 577 | + | var templ_7745c5c3_Var34 string | |
| 578 | + | templ_7745c5c3_Var34, templ_7745c5c3_Err = templ.JoinStringErrs(r.Ref) | |
| 579 | + | if templ_7745c5c3_Err != nil { | |
| 580 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 70, Col: 64} | |
| 581 | + | } | |
| 582 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var34)) | |
| 583 | + | if templ_7745c5c3_Err != nil { | |
| 584 | + | return templ_7745c5c3_Err | |
| 585 | + | } | |
| 586 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 43, "</a> ") | |
| 587 | + | if templ_7745c5c3_Err != nil { | |
| 588 | + | return templ_7745c5c3_Err | |
| 589 | + | } | |
| 590 | + | if r.WhenAt != "" { | |
| 591 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 44, "<time class=\"dim\" datetime=\"") | |
| 592 | + | if templ_7745c5c3_Err != nil { | |
| 593 | + | return templ_7745c5c3_Err | |
| 594 | + | } | |
| 595 | + | var templ_7745c5c3_Var35 string | |
| 596 | + | templ_7745c5c3_Var35, templ_7745c5c3_Err = templ.ResolveAttributeValue(r.WhenAt) | |
| 597 | + | if templ_7745c5c3_Err != nil { | |
| 598 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 72, Col: 43} | |
| 599 | + | } | |
| 600 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var35) | |
| 601 | + | if templ_7745c5c3_Err != nil { | |
| 602 | + | return templ_7745c5c3_Err | |
| 603 | + | } | |
| 604 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 45, "\" title=\"") | |
| 605 | + | if templ_7745c5c3_Err != nil { | |
| 606 | + | return templ_7745c5c3_Err | |
| 607 | + | } | |
| 608 | + | var templ_7745c5c3_Var36 string | |
| 609 | + | templ_7745c5c3_Var36, templ_7745c5c3_Err = templ.ResolveAttributeValue(r.WhenAt) | |
| 610 | + | if templ_7745c5c3_Err != nil { | |
| 611 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 72, Col: 62} | |
| 612 | + | } | |
| 613 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var36) | |
| 614 | + | if templ_7745c5c3_Err != nil { | |
| 615 | + | return templ_7745c5c3_Err | |
| 616 | + | } | |
| 617 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 46, "\">") | |
| 618 | + | if templ_7745c5c3_Err != nil { | |
| 619 | + | return templ_7745c5c3_Err | |
| 620 | + | } | |
| 621 | + | var templ_7745c5c3_Var37 string | |
| 622 | + | templ_7745c5c3_Var37, templ_7745c5c3_Err = templ.JoinStringErrs(r.When) | |
| 623 | + | if templ_7745c5c3_Err != nil { | |
| 624 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 72, Col: 73} | |
| 625 | + | } | |
| 626 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var37)) | |
| 627 | + | if templ_7745c5c3_Err != nil { | |
| 628 | + | return templ_7745c5c3_Err | |
| 629 | + | } | |
| 630 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 47, "</time>") | |
| 631 | + | if templ_7745c5c3_Err != nil { | |
| 632 | + | return templ_7745c5c3_Err | |
| 633 | + | } | |
| 634 | + | } | |
| 635 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 48, "</li>") | |
| 636 | + | if templ_7745c5c3_Err != nil { | |
| 637 | + | return templ_7745c5c3_Err | |
| 638 | + | } | |
| 639 | + | } | |
| 640 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 49, "</ul></section>") | |
| 641 | + | if templ_7745c5c3_Err != nil { | |
| 642 | + | return templ_7745c5c3_Err | |
| 643 | + | } | |
| 644 | + | return nil | |
| 645 | + | }) | |
| 646 | + | } | |
| 647 | + | ||
| 648 | + | func RunDetail(l Layout, p RunPage) templ.Component { | |
| 649 | + | return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | |
| 650 | + | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | |
| 651 | + | if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil { | |
| 652 | + | return templ_7745c5c3_CtxErr | |
| 653 | + | } | |
| 654 | + | templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W) | |
| 655 | + | if !templ_7745c5c3_IsBuffer { | |
| 656 | + | defer func() { | |
| 657 | + | templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer) | |
| 658 | + | if templ_7745c5c3_Err == nil { | |
| 659 | + | templ_7745c5c3_Err = templ_7745c5c3_BufErr | |
| 660 | + | } | |
| 661 | + | }() | |
| 662 | + | } | |
| 663 | + | ctx = templ.InitializeContext(ctx) | |
| 664 | + | templ_7745c5c3_Var38 := templ.GetChildren(ctx) | |
| 665 | + | if templ_7745c5c3_Var38 == nil { | |
| 666 | + | templ_7745c5c3_Var38 = templ.NopComponent | |
| 667 | + | } | |
| 668 | + | ctx = templ.ClearChildren(ctx) | |
| 669 | + | templ_7745c5c3_Var39 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | |
| 471 | 670 | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | |
| 472 | 671 | templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W) | |
| 473 | 672 | if !templ_7745c5c3_IsBuffer { | |
| @@ -483,7 +682,7 @@ func RunDetail(l Layout, p RunPage) templ.Component { | |||
| 483 | 682 | if templ_7745c5c3_Err != nil { | |
| 484 | 683 | return templ_7745c5c3_Err | |
| 485 | 684 | } | |
| 486 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 32, " <div id=\"run-body\">") | |
| 685 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 50, " <div id=\"run-body\">") | |
| 487 | 686 | if templ_7745c5c3_Err != nil { | |
| 488 | 687 | return templ_7745c5c3_Err | |
| 489 | 688 | } | |
| @@ -491,7 +690,7 @@ func RunDetail(l Layout, p RunPage) templ.Component { | |||
| 491 | 690 | if templ_7745c5c3_Err != nil { | |
| 492 | 691 | return templ_7745c5c3_Err | |
| 493 | 692 | } | |
| 494 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 33, "</div>") | |
| 693 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 51, "</div>") | |
| 495 | 694 | if templ_7745c5c3_Err != nil { | |
| 496 | 695 | return templ_7745c5c3_Err | |
| 497 | 696 | } | |
| @@ -501,7 +700,7 @@ func RunDetail(l Layout, p RunPage) templ.Component { | |||
| 501 | 700 | } | |
| 502 | 701 | return nil | |
| 503 | 702 | }) | |
| 504 | - | templ_7745c5c3_Err = Shell(l, runRail(p)).Render(templ.WithChildren(ctx, templ_7745c5c3_Var28), templ_7745c5c3_Buffer) | |
| 703 | + | templ_7745c5c3_Err = Shell(l, runRail(p)).Render(templ.WithChildren(ctx, templ_7745c5c3_Var39), templ_7745c5c3_Buffer) | |
| 505 | 704 | if templ_7745c5c3_Err != nil { | |
| 506 | 705 | return templ_7745c5c3_Err | |
| 507 | 706 | } | |
| @@ -526,12 +725,12 @@ func runBodyFragment(p RunPage) templ.Component { | |||
| 526 | 725 | }() | |
| 527 | 726 | } | |
| 528 | 727 | ctx = templ.InitializeContext(ctx) | |
| 529 | - | templ_7745c5c3_Var29 := templ.GetChildren(ctx) | |
| 530 | - | if templ_7745c5c3_Var29 == nil { | |
| 531 | - | templ_7745c5c3_Var29 = templ.NopComponent | |
| 728 | + | templ_7745c5c3_Var40 := templ.GetChildren(ctx) | |
| 729 | + | if templ_7745c5c3_Var40 == nil { | |
| 730 | + | templ_7745c5c3_Var40 = templ.NopComponent | |
| 532 | 731 | } | |
| 533 | 732 | ctx = templ.ClearChildren(ctx) | |
| 534 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 34, "<div id=\"run-body\">") | |
| 733 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 52, "<div id=\"run-body\">") | |
| 535 | 734 | if templ_7745c5c3_Err != nil { | |
| 536 | 735 | return templ_7745c5c3_Err | |
| 537 | 736 | } | |
| @@ -539,7 +738,7 @@ func runBodyFragment(p RunPage) templ.Component { | |||
| 539 | 738 | if templ_7745c5c3_Err != nil { | |
| 540 | 739 | return templ_7745c5c3_Err | |
| 541 | 740 | } | |
| 542 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 35, "</div>") | |
| 741 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 53, "</div>") | |
| 543 | 742 | if templ_7745c5c3_Err != nil { | |
| 544 | 743 | return templ_7745c5c3_Err | |
| 545 | 744 | } | |
| @@ -564,12 +763,12 @@ func RunBody(p RunPage) templ.Component { | |||
| 564 | 763 | }() | |
| 565 | 764 | } | |
| 566 | 765 | ctx = templ.InitializeContext(ctx) | |
| 567 | - | templ_7745c5c3_Var30 := templ.GetChildren(ctx) | |
| 568 | - | if templ_7745c5c3_Var30 == nil { | |
| 569 | - | templ_7745c5c3_Var30 = templ.NopComponent | |
| 766 | + | templ_7745c5c3_Var41 := templ.GetChildren(ctx) | |
| 767 | + | if templ_7745c5c3_Var41 == nil { | |
| 768 | + | templ_7745c5c3_Var41 = templ.NopComponent | |
| 570 | 769 | } | |
| 571 | 770 | ctx = templ.ClearChildren(ctx) | |
| 572 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 36, "<h2 class=\"run-h\">") | |
| 771 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 54, "<h2 class=\"run-h\">") | |
| 573 | 772 | if templ_7745c5c3_Err != nil { | |
| 574 | 773 | return templ_7745c5c3_Err | |
| 575 | 774 | } | |
| @@ -577,70 +776,70 @@ func RunBody(p RunPage) templ.Component { | |||
| 577 | 776 | if templ_7745c5c3_Err != nil { | |
| 578 | 777 | return templ_7745c5c3_Err | |
| 579 | 778 | } | |
| 580 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 37, "<span>") | |
| 779 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 55, "<span>") | |
| 581 | 780 | if templ_7745c5c3_Err != nil { | |
| 582 | 781 | return templ_7745c5c3_Err | |
| 583 | 782 | } | |
| 584 | - | var templ_7745c5c3_Var31 string | |
| 585 | - | templ_7745c5c3_Var31, templ_7745c5c3_Err = templ.JoinStringErrs(p.Workflow) | |
| 783 | + | var templ_7745c5c3_Var42 string | |
| 784 | + | templ_7745c5c3_Var42, templ_7745c5c3_Err = templ.JoinStringErrs(p.Workflow) | |
| 586 | 785 | if templ_7745c5c3_Err != nil { | |
| 587 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 78, Col: 64} | |
| 786 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 99, Col: 64} | |
| 588 | 787 | } | |
| 589 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var31)) | |
| 788 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var42)) | |
| 590 | 789 | if templ_7745c5c3_Err != nil { | |
| 591 | 790 | return templ_7745c5c3_Err | |
| 592 | 791 | } | |
| 593 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 38, "</span> <span class=\"mute\">") | |
| 792 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 56, "</span> <span class=\"mute\">") | |
| 594 | 793 | if templ_7745c5c3_Err != nil { | |
| 595 | 794 | return templ_7745c5c3_Err | |
| 596 | 795 | } | |
| 597 | - | var templ_7745c5c3_Var32 string | |
| 598 | - | templ_7745c5c3_Var32, templ_7745c5c3_Err = templ.JoinStringErrs(p.Number) | |
| 796 | + | var templ_7745c5c3_Var43 string | |
| 797 | + | templ_7745c5c3_Var43, templ_7745c5c3_Err = templ.JoinStringErrs(p.Number) | |
| 599 | 798 | if templ_7745c5c3_Err != nil { | |
| 600 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 78, Col: 103} | |
| 799 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 99, Col: 103} | |
| 601 | 800 | } | |
| 602 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var32)) | |
| 801 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var43)) | |
| 603 | 802 | if templ_7745c5c3_Err != nil { | |
| 604 | 803 | return templ_7745c5c3_Err | |
| 605 | 804 | } | |
| 606 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 39, "</span></h2>") | |
| 805 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 57, "</span></h2>") | |
| 607 | 806 | if templ_7745c5c3_Err != nil { | |
| 608 | 807 | return templ_7745c5c3_Err | |
| 609 | 808 | } | |
| 610 | 809 | if p.Error != "" { | |
| 611 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 40, "<pre class=\"run-err\">") | |
| 810 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 58, "<pre class=\"run-err\">") | |
| 612 | 811 | if templ_7745c5c3_Err != nil { | |
| 613 | 812 | return templ_7745c5c3_Err | |
| 614 | 813 | } | |
| 615 | - | var templ_7745c5c3_Var33 string | |
| 616 | - | templ_7745c5c3_Var33, templ_7745c5c3_Err = templ.JoinStringErrs(p.Error) | |
| 814 | + | var templ_7745c5c3_Var44 string | |
| 815 | + | templ_7745c5c3_Var44, templ_7745c5c3_Err = templ.JoinStringErrs(p.Error) | |
| 617 | 816 | if templ_7745c5c3_Err != nil { | |
| 618 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 80, Col: 32} | |
| 817 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 101, Col: 32} | |
| 619 | 818 | } | |
| 620 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var33)) | |
| 819 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var44)) | |
| 621 | 820 | if templ_7745c5c3_Err != nil { | |
| 622 | 821 | return templ_7745c5c3_Err | |
| 623 | 822 | } | |
| 624 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 41, "</pre>") | |
| 823 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 59, "</pre>") | |
| 625 | 824 | if templ_7745c5c3_Err != nil { | |
| 626 | 825 | return templ_7745c5c3_Err | |
| 627 | 826 | } | |
| 628 | 827 | } | |
| 629 | 828 | if len(p.Annotations) > 0 { | |
| 630 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 42, "<section class=\"annots\" aria-labelledby=\"run-annots\"><h3 id=\"run-annots\">Annotations <span class=\"count\">") | |
| 829 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 60, "<section class=\"annots\" aria-labelledby=\"run-annots\"><h3 id=\"run-annots\">Annotations <span class=\"count\">") | |
| 631 | 830 | if templ_7745c5c3_Err != nil { | |
| 632 | 831 | return templ_7745c5c3_Err | |
| 633 | 832 | } | |
| 634 | - | var templ_7745c5c3_Var34 string | |
| 635 | - | templ_7745c5c3_Var34, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(p.Annotations))) | |
| 833 | + | var templ_7745c5c3_Var45 string | |
| 834 | + | templ_7745c5c3_Var45, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(p.Annotations))) | |
| 636 | 835 | if templ_7745c5c3_Err != nil { | |
| 637 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 84, Col: 81} | |
| 836 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 105, Col: 81} | |
| 638 | 837 | } | |
| 639 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var34)) | |
| 838 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var45)) | |
| 640 | 839 | if templ_7745c5c3_Err != nil { | |
| 641 | 840 | return templ_7745c5c3_Err | |
| 642 | 841 | } | |
| 643 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 43, "</span></h3>") | |
| 842 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 61, "</span></h3>") | |
| 644 | 843 | if templ_7745c5c3_Err != nil { | |
| 645 | 844 | return templ_7745c5c3_Err | |
| 646 | 845 | } | |
| @@ -648,43 +847,43 @@ func RunBody(p RunPage) templ.Component { | |||
| 648 | 847 | if templ_7745c5c3_Err != nil { | |
| 649 | 848 | return templ_7745c5c3_Err | |
| 650 | 849 | } | |
| 651 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 44, "</section>") | |
| 850 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 62, "</section>") | |
| 652 | 851 | if templ_7745c5c3_Err != nil { | |
| 653 | 852 | return templ_7745c5c3_Err | |
| 654 | 853 | } | |
| 655 | 854 | } | |
| 656 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 45, "<ul class=\"jobs\">") | |
| 855 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 63, "<ul class=\"jobs\">") | |
| 657 | 856 | if templ_7745c5c3_Err != nil { | |
| 658 | 857 | return templ_7745c5c3_Err | |
| 659 | 858 | } | |
| 660 | 859 | for _, j := range p.Jobs { | |
| 661 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 46, "<li id=\"") | |
| 860 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 64, "<li id=\"") | |
| 662 | 861 | if templ_7745c5c3_Err != nil { | |
| 663 | 862 | return templ_7745c5c3_Err | |
| 664 | 863 | } | |
| 665 | - | var templ_7745c5c3_Var35 string | |
| 666 | - | templ_7745c5c3_Var35, templ_7745c5c3_Err = templ.ResolveAttributeValue("job-" + j.ID) | |
| 864 | + | var templ_7745c5c3_Var46 string | |
| 865 | + | templ_7745c5c3_Var46, templ_7745c5c3_Err = templ.ResolveAttributeValue("job-" + j.ID) | |
| 667 | 866 | if templ_7745c5c3_Err != nil { | |
| 668 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 90, Col: 25} | |
| 867 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 111, Col: 25} | |
| 669 | 868 | } | |
| 670 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var35) | |
| 869 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var46) | |
| 671 | 870 | if templ_7745c5c3_Err != nil { | |
| 672 | 871 | return templ_7745c5c3_Err | |
| 673 | 872 | } | |
| 674 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 47, "\"><a class=\"job-h\" href=\"") | |
| 873 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 65, "\"><a class=\"job-h\" href=\"") | |
| 675 | 874 | if templ_7745c5c3_Err != nil { | |
| 676 | 875 | return templ_7745c5c3_Err | |
| 677 | 876 | } | |
| 678 | - | var templ_7745c5c3_Var36 templ.SafeURL | |
| 679 | - | templ_7745c5c3_Var36, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(j.Href)) | |
| 877 | + | var templ_7745c5c3_Var47 templ.SafeURL | |
| 878 | + | templ_7745c5c3_Var47, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(j.Href)) | |
| 680 | 879 | if templ_7745c5c3_Err != nil { | |
| 681 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 91, Col: 49} | |
| 880 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 112, Col: 49} | |
| 682 | 881 | } | |
| 683 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var36)) | |
| 882 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var47)) | |
| 684 | 883 | if templ_7745c5c3_Err != nil { | |
| 685 | 884 | return templ_7745c5c3_Err | |
| 686 | 885 | } | |
| 687 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 48, "\">") | |
| 886 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 66, "\">") | |
| 688 | 887 | if templ_7745c5c3_Err != nil { | |
| 689 | 888 | return templ_7745c5c3_Err | |
| 690 | 889 | } | |
| @@ -692,118 +891,118 @@ func RunBody(p RunPage) templ.Component { | |||
| 692 | 891 | if templ_7745c5c3_Err != nil { | |
| 693 | 892 | return templ_7745c5c3_Err | |
| 694 | 893 | } | |
| 695 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 49, "<span class=\"j-name\">") | |
| 894 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 67, "<span class=\"j-name\">") | |
| 696 | 895 | if templ_7745c5c3_Err != nil { | |
| 697 | 896 | return templ_7745c5c3_Err | |
| 698 | 897 | } | |
| 699 | - | var templ_7745c5c3_Var37 string | |
| 700 | - | templ_7745c5c3_Var37, templ_7745c5c3_Err = templ.JoinStringErrs(j.Name) | |
| 898 | + | var templ_7745c5c3_Var48 string | |
| 899 | + | templ_7745c5c3_Var48, templ_7745c5c3_Err = templ.JoinStringErrs(j.Name) | |
| 701 | 900 | if templ_7745c5c3_Err != nil { | |
| 702 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 93, Col: 34} | |
| 901 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 114, Col: 34} | |
| 703 | 902 | } | |
| 704 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var37)) | |
| 903 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var48)) | |
| 705 | 904 | if templ_7745c5c3_Err != nil { | |
| 706 | 905 | return templ_7745c5c3_Err | |
| 707 | 906 | } | |
| 708 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 50, "</span> <span class=\"dim\">") | |
| 907 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 68, "</span> <span class=\"dim\">") | |
| 709 | 908 | if templ_7745c5c3_Err != nil { | |
| 710 | 909 | return templ_7745c5c3_Err | |
| 711 | 910 | } | |
| 712 | - | var templ_7745c5c3_Var38 string | |
| 713 | - | templ_7745c5c3_Var38, templ_7745c5c3_Err = templ.JoinStringErrs(j.State) | |
| 911 | + | var templ_7745c5c3_Var49 string | |
| 912 | + | templ_7745c5c3_Var49, templ_7745c5c3_Err = templ.JoinStringErrs(j.State) | |
| 714 | 913 | if templ_7745c5c3_Err != nil { | |
| 715 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 94, Col: 32} | |
| 914 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 115, Col: 32} | |
| 716 | 915 | } | |
| 717 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var38)) | |
| 916 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var49)) | |
| 718 | 917 | if templ_7745c5c3_Err != nil { | |
| 719 | 918 | return templ_7745c5c3_Err | |
| 720 | 919 | } | |
| 721 | - | var templ_7745c5c3_Var39 string | |
| 722 | - | templ_7745c5c3_Var39, templ_7745c5c3_Err = templ.JoinStringErrs(" ") | |
| 920 | + | var templ_7745c5c3_Var50 string | |
| 921 | + | templ_7745c5c3_Var50, templ_7745c5c3_Err = templ.JoinStringErrs(" ") | |
| 723 | 922 | if templ_7745c5c3_Err != nil { | |
| 724 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 94, Col: 39} | |
| 923 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 115, Col: 39} | |
| 725 | 924 | } | |
| 726 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var39)) | |
| 925 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var50)) | |
| 727 | 926 | if templ_7745c5c3_Err != nil { | |
| 728 | 927 | return templ_7745c5c3_Err | |
| 729 | 928 | } | |
| 730 | - | var templ_7745c5c3_Var40 string | |
| 731 | - | templ_7745c5c3_Var40, templ_7745c5c3_Err = templ.JoinStringErrs(j.Duration) | |
| 929 | + | var templ_7745c5c3_Var51 string | |
| 930 | + | templ_7745c5c3_Var51, templ_7745c5c3_Err = templ.JoinStringErrs(j.Duration) | |
| 732 | 931 | if templ_7745c5c3_Err != nil { | |
| 733 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 94, Col: 53} | |
| 932 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 115, Col: 53} | |
| 734 | 933 | } | |
| 735 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var40)) | |
| 934 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var51)) | |
| 736 | 935 | if templ_7745c5c3_Err != nil { | |
| 737 | 936 | return templ_7745c5c3_Err | |
| 738 | 937 | } | |
| 739 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 51, "</span></a> ") | |
| 938 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 69, "</span></a> ") | |
| 740 | 939 | if templ_7745c5c3_Err != nil { | |
| 741 | 940 | return templ_7745c5c3_Err | |
| 742 | 941 | } | |
| 743 | 942 | if j.Runner != "" { | |
| 744 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 52, "<span class=\"mute\">on ") | |
| 943 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 70, "<span class=\"mute\">on ") | |
| 745 | 944 | if templ_7745c5c3_Err != nil { | |
| 746 | 945 | return templ_7745c5c3_Err | |
| 747 | 946 | } | |
| 748 | - | var templ_7745c5c3_Var41 string | |
| 749 | - | templ_7745c5c3_Var41, templ_7745c5c3_Err = templ.JoinStringErrs(runnerText(j)) | |
| 947 | + | var templ_7745c5c3_Var52 string | |
| 948 | + | templ_7745c5c3_Var52, templ_7745c5c3_Err = templ.JoinStringErrs(runnerText(j)) | |
| 750 | 949 | if templ_7745c5c3_Err != nil { | |
| 751 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 97, Col: 42} | |
| 950 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 118, Col: 42} | |
| 752 | 951 | } | |
| 753 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var41)) | |
| 952 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var52)) | |
| 754 | 953 | if templ_7745c5c3_Err != nil { | |
| 755 | 954 | return templ_7745c5c3_Err | |
| 756 | 955 | } | |
| 757 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 53, "</span> ") | |
| 956 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 71, "</span> ") | |
| 758 | 957 | if templ_7745c5c3_Err != nil { | |
| 759 | 958 | return templ_7745c5c3_Err | |
| 760 | 959 | } | |
| 761 | 960 | } | |
| 762 | 961 | if len(j.Needs) > 0 { | |
| 763 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 54, "<span class=\"mute\">needs ") | |
| 962 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 72, "<span class=\"mute\">needs ") | |
| 764 | 963 | if templ_7745c5c3_Err != nil { | |
| 765 | 964 | return templ_7745c5c3_Err | |
| 766 | 965 | } | |
| 767 | - | var templ_7745c5c3_Var42 string | |
| 768 | - | templ_7745c5c3_Var42, templ_7745c5c3_Err = templ.JoinStringErrs(joinWords(j.Needs)) | |
| 966 | + | var templ_7745c5c3_Var53 string | |
| 967 | + | templ_7745c5c3_Var53, templ_7745c5c3_Err = templ.JoinStringErrs(joinWords(j.Needs)) | |
| 769 | 968 | if templ_7745c5c3_Err != nil { | |
| 770 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 100, Col: 50} | |
| 969 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 121, Col: 50} | |
| 771 | 970 | } | |
| 772 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var42)) | |
| 971 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var53)) | |
| 773 | 972 | if templ_7745c5c3_Err != nil { | |
| 774 | 973 | return templ_7745c5c3_Err | |
| 775 | 974 | } | |
| 776 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 55, "</span> ") | |
| 975 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 73, "</span> ") | |
| 777 | 976 | if templ_7745c5c3_Err != nil { | |
| 778 | 977 | return templ_7745c5c3_Err | |
| 779 | 978 | } | |
| 780 | 979 | } | |
| 781 | 980 | if j.Error != "" { | |
| 782 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 56, "<p class=\"job-err\">") | |
| 981 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 74, "<p class=\"job-err\">") | |
| 783 | 982 | if templ_7745c5c3_Err != nil { | |
| 784 | 983 | return templ_7745c5c3_Err | |
| 785 | 984 | } | |
| 786 | - | var templ_7745c5c3_Var43 string | |
| 787 | - | templ_7745c5c3_Var43, templ_7745c5c3_Err = templ.JoinStringErrs(j.Error) | |
| 985 | + | var templ_7745c5c3_Var54 string | |
| 986 | + | templ_7745c5c3_Var54, templ_7745c5c3_Err = templ.JoinStringErrs(j.Error) | |
| 788 | 987 | if templ_7745c5c3_Err != nil { | |
| 789 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 103, Col: 33} | |
| 988 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 124, Col: 33} | |
| 790 | 989 | } | |
| 791 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var43)) | |
| 990 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var54)) | |
| 792 | 991 | if templ_7745c5c3_Err != nil { | |
| 793 | 992 | return templ_7745c5c3_Err | |
| 794 | 993 | } | |
| 795 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 57, "</p>") | |
| 994 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 75, "</p>") | |
| 796 | 995 | if templ_7745c5c3_Err != nil { | |
| 797 | 996 | return templ_7745c5c3_Err | |
| 798 | 997 | } | |
| 799 | 998 | } | |
| 800 | 999 | if len(j.Steps) > 0 { | |
| 801 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 58, "<ol class=\"steps\">") | |
| 1000 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 76, "<ol class=\"steps\">") | |
| 802 | 1001 | if templ_7745c5c3_Err != nil { | |
| 803 | 1002 | return templ_7745c5c3_Err | |
| 804 | 1003 | } | |
| 805 | 1004 | for _, s := range j.Steps { | |
| 806 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 59, "<li>") | |
| 1005 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 77, "<li>") | |
| 807 | 1006 | if templ_7745c5c3_Err != nil { | |
| 808 | 1007 | return templ_7745c5c3_Err | |
| 809 | 1008 | } | |
| @@ -811,48 +1010,48 @@ func RunBody(p RunPage) templ.Component { | |||
| 811 | 1010 | if templ_7745c5c3_Err != nil { | |
| 812 | 1011 | return templ_7745c5c3_Err | |
| 813 | 1012 | } | |
| 814 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 60, "<span>") | |
| 1013 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 78, "<span>") | |
| 815 | 1014 | if templ_7745c5c3_Err != nil { | |
| 816 | 1015 | return templ_7745c5c3_Err | |
| 817 | 1016 | } | |
| 818 | - | var templ_7745c5c3_Var44 string | |
| 819 | - | templ_7745c5c3_Var44, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) | |
| 1017 | + | var templ_7745c5c3_Var55 string | |
| 1018 | + | templ_7745c5c3_Var55, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) | |
| 820 | 1019 | if templ_7745c5c3_Err != nil { | |
| 821 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 108, Col: 53} | |
| 1020 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 129, Col: 53} | |
| 822 | 1021 | } | |
| 823 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var44)) | |
| 1022 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var55)) | |
| 824 | 1023 | if templ_7745c5c3_Err != nil { | |
| 825 | 1024 | return templ_7745c5c3_Err | |
| 826 | 1025 | } | |
| 827 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 61, "</span> <span class=\"dim\">") | |
| 1026 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 79, "</span> <span class=\"dim\">") | |
| 828 | 1027 | if templ_7745c5c3_Err != nil { | |
| 829 | 1028 | return templ_7745c5c3_Err | |
| 830 | 1029 | } | |
| 831 | - | var templ_7745c5c3_Var45 string | |
| 832 | - | templ_7745c5c3_Var45, templ_7745c5c3_Err = templ.JoinStringErrs(s.Duration) | |
| 1030 | + | var templ_7745c5c3_Var56 string | |
| 1031 | + | templ_7745c5c3_Var56, templ_7745c5c3_Err = templ.JoinStringErrs(s.Duration) | |
| 833 | 1032 | if templ_7745c5c3_Err != nil { | |
| 834 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 108, Col: 93} | |
| 1033 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 129, Col: 93} | |
| 835 | 1034 | } | |
| 836 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var45)) | |
| 1035 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var56)) | |
| 837 | 1036 | if templ_7745c5c3_Err != nil { | |
| 838 | 1037 | return templ_7745c5c3_Err | |
| 839 | 1038 | } | |
| 840 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 62, "</span></li>") | |
| 1039 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 80, "</span></li>") | |
| 841 | 1040 | if templ_7745c5c3_Err != nil { | |
| 842 | 1041 | return templ_7745c5c3_Err | |
| 843 | 1042 | } | |
| 844 | 1043 | } | |
| 845 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 63, "</ol>") | |
| 1044 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 81, "</ol>") | |
| 846 | 1045 | if templ_7745c5c3_Err != nil { | |
| 847 | 1046 | return templ_7745c5c3_Err | |
| 848 | 1047 | } | |
| 849 | 1048 | } | |
| 850 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 64, "</li>") | |
| 1049 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 82, "</li>") | |
| 851 | 1050 | if templ_7745c5c3_Err != nil { | |
| 852 | 1051 | return templ_7745c5c3_Err | |
| 853 | 1052 | } | |
| 854 | 1053 | } | |
| 855 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 65, "</ul>") | |
| 1054 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 83, "</ul>") | |
| 856 | 1055 | if templ_7745c5c3_Err != nil { | |
| 857 | 1056 | return templ_7745c5c3_Err | |
| 858 | 1057 | } | |
| @@ -880,327 +1079,327 @@ func AnnotationList(anns []AnnotationView, more bool, grouped bool) templ.Compon | |||
| 880 | 1079 | }() | |
| 881 | 1080 | } | |
| 882 | 1081 | ctx = templ.InitializeContext(ctx) | |
| 883 | - | templ_7745c5c3_Var46 := templ.GetChildren(ctx) | |
| 884 | - | if templ_7745c5c3_Var46 == nil { | |
| 885 | - | templ_7745c5c3_Var46 = templ.NopComponent | |
| 1082 | + | templ_7745c5c3_Var57 := templ.GetChildren(ctx) | |
| 1083 | + | if templ_7745c5c3_Var57 == nil { | |
| 1084 | + | templ_7745c5c3_Var57 = templ.NopComponent | |
| 886 | 1085 | } | |
| 887 | 1086 | ctx = templ.ClearChildren(ctx) | |
| 888 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 66, "<ul class=\"annot-list\">") | |
| 1087 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 84, "<ul class=\"annot-list\">") | |
| 889 | 1088 | if templ_7745c5c3_Err != nil { | |
| 890 | 1089 | return templ_7745c5c3_Err | |
| 891 | 1090 | } | |
| 892 | 1091 | for _, a := range anns { | |
| 893 | - | var templ_7745c5c3_Var47 = []any{"annot", "annot-" + a.Kind} | |
| 894 | - | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var47...) | |
| 1092 | + | var templ_7745c5c3_Var58 = []any{"annot", "annot-" + a.Kind} | |
| 1093 | + | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var58...) | |
| 895 | 1094 | if templ_7745c5c3_Err != nil { | |
| 896 | 1095 | return templ_7745c5c3_Err | |
| 897 | 1096 | } | |
| 898 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 67, "<li class=\"") | |
| 1097 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 85, "<li class=\"") | |
| 899 | 1098 | if templ_7745c5c3_Err != nil { | |
| 900 | 1099 | return templ_7745c5c3_Err | |
| 901 | 1100 | } | |
| 902 | - | var templ_7745c5c3_Var48 string | |
| 903 | - | templ_7745c5c3_Var48, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var47).String()) | |
| 1101 | + | var templ_7745c5c3_Var59 string | |
| 1102 | + | templ_7745c5c3_Var59, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var58).String()) | |
| 904 | 1103 | if templ_7745c5c3_Err != nil { | |
| 905 | 1104 | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 1, Col: 0} | |
| 906 | 1105 | } | |
| 907 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var48) | |
| 1106 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var59) | |
| 908 | 1107 | if templ_7745c5c3_Err != nil { | |
| 909 | 1108 | return templ_7745c5c3_Err | |
| 910 | 1109 | } | |
| 911 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 68, "\">") | |
| 1110 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 86, "\">") | |
| 912 | 1111 | if templ_7745c5c3_Err != nil { | |
| 913 | 1112 | return templ_7745c5c3_Err | |
| 914 | 1113 | } | |
| 915 | 1114 | if grouped && a.StepHead { | |
| 916 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 69, "<p class=\"annot-step\">") | |
| 1115 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 87, "<p class=\"annot-step\">") | |
| 917 | 1116 | if templ_7745c5c3_Err != nil { | |
| 918 | 1117 | return templ_7745c5c3_Err | |
| 919 | 1118 | } | |
| 920 | 1119 | if a.StepHref != "" { | |
| 921 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 70, "<a href=\"") | |
| 1120 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 88, "<a href=\"") | |
| 922 | 1121 | if templ_7745c5c3_Err != nil { | |
| 923 | 1122 | return templ_7745c5c3_Err | |
| 924 | 1123 | } | |
| 925 | - | var templ_7745c5c3_Var49 templ.SafeURL | |
| 926 | - | templ_7745c5c3_Var49, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.StepHref)) | |
| 1124 | + | var templ_7745c5c3_Var60 templ.SafeURL | |
| 1125 | + | templ_7745c5c3_Var60, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.StepHref)) | |
| 927 | 1126 | if templ_7745c5c3_Err != nil { | |
| 928 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 128, Col: 42} | |
| 1127 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 149, Col: 42} | |
| 929 | 1128 | } | |
| 930 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var49)) | |
| 1129 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var60)) | |
| 931 | 1130 | if templ_7745c5c3_Err != nil { | |
| 932 | 1131 | return templ_7745c5c3_Err | |
| 933 | 1132 | } | |
| 934 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 71, "\">") | |
| 1133 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 89, "\">") | |
| 935 | 1134 | if templ_7745c5c3_Err != nil { | |
| 936 | 1135 | return templ_7745c5c3_Err | |
| 937 | 1136 | } | |
| 938 | - | var templ_7745c5c3_Var50 string | |
| 939 | - | templ_7745c5c3_Var50, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) | |
| 1137 | + | var templ_7745c5c3_Var61 string | |
| 1138 | + | templ_7745c5c3_Var61, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) | |
| 940 | 1139 | if templ_7745c5c3_Err != nil { | |
| 941 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 128, Col: 53} | |
| 1140 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 149, Col: 53} | |
| 942 | 1141 | } | |
| 943 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var50)) | |
| 1142 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var61)) | |
| 944 | 1143 | if templ_7745c5c3_Err != nil { | |
| 945 | 1144 | return templ_7745c5c3_Err | |
| 946 | 1145 | } | |
| 947 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 72, "</a>") | |
| 1146 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 90, "</a>") | |
| 948 | 1147 | if templ_7745c5c3_Err != nil { | |
| 949 | 1148 | return templ_7745c5c3_Err | |
| 950 | 1149 | } | |
| 951 | 1150 | } else { | |
| 952 | - | var templ_7745c5c3_Var51 string | |
| 953 | - | templ_7745c5c3_Var51, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) | |
| 1151 | + | var templ_7745c5c3_Var62 string | |
| 1152 | + | templ_7745c5c3_Var62, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) | |
| 954 | 1153 | if templ_7745c5c3_Err != nil { | |
| 955 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 130, Col: 15} | |
| 1154 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 151, Col: 15} | |
| 956 | 1155 | } | |
| 957 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var51)) | |
| 1156 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var62)) | |
| 958 | 1157 | if templ_7745c5c3_Err != nil { | |
| 959 | 1158 | return templ_7745c5c3_Err | |
| 960 | 1159 | } | |
| 961 | 1160 | } | |
| 962 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 73, "</p>") | |
| 1161 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 91, "</p>") | |
| 963 | 1162 | if templ_7745c5c3_Err != nil { | |
| 964 | 1163 | return templ_7745c5c3_Err | |
| 965 | 1164 | } | |
| 966 | 1165 | } | |
| 967 | - | var templ_7745c5c3_Var52 = []any{"an", "an-" + a.Kind} | |
| 968 | - | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var52...) | |
| 1166 | + | var templ_7745c5c3_Var63 = []any{"an", "an-" + a.Kind} | |
| 1167 | + | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var63...) | |
| 969 | 1168 | if templ_7745c5c3_Err != nil { | |
| 970 | 1169 | return templ_7745c5c3_Err | |
| 971 | 1170 | } | |
| 972 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 74, "<span class=\"") | |
| 1171 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 92, "<span class=\"") | |
| 973 | 1172 | if templ_7745c5c3_Err != nil { | |
| 974 | 1173 | return templ_7745c5c3_Err | |
| 975 | 1174 | } | |
| 976 | - | var templ_7745c5c3_Var53 string | |
| 977 | - | templ_7745c5c3_Var53, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var52).String()) | |
| 1175 | + | var templ_7745c5c3_Var64 string | |
| 1176 | + | templ_7745c5c3_Var64, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var63).String()) | |
| 978 | 1177 | if templ_7745c5c3_Err != nil { | |
| 979 | 1178 | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 1, Col: 0} | |
| 980 | 1179 | } | |
| 981 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var53) | |
| 1180 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var64) | |
| 982 | 1181 | if templ_7745c5c3_Err != nil { | |
| 983 | 1182 | return templ_7745c5c3_Err | |
| 984 | 1183 | } | |
| 985 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 75, "\" role=\"img\" aria-label=\"") | |
| 1184 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 93, "\" role=\"img\" aria-label=\"") | |
| 986 | 1185 | if templ_7745c5c3_Err != nil { | |
| 987 | 1186 | return templ_7745c5c3_Err | |
| 988 | 1187 | } | |
| 989 | - | var templ_7745c5c3_Var54 string | |
| 990 | - | templ_7745c5c3_Var54, templ_7745c5c3_Err = templ.ResolveAttributeValue(a.Level) | |
| 1188 | + | var templ_7745c5c3_Var65 string | |
| 1189 | + | templ_7745c5c3_Var65, templ_7745c5c3_Err = templ.ResolveAttributeValue(a.Level) | |
| 991 | 1190 | if templ_7745c5c3_Err != nil { | |
| 992 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 134, Col: 72} | |
| 1191 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 155, Col: 72} | |
| 993 | 1192 | } | |
| 994 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var54) | |
| 1193 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var65) | |
| 995 | 1194 | if templ_7745c5c3_Err != nil { | |
| 996 | 1195 | return templ_7745c5c3_Err | |
| 997 | 1196 | } | |
| 998 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 76, "\" title=\"") | |
| 1197 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 94, "\" title=\"") | |
| 999 | 1198 | if templ_7745c5c3_Err != nil { | |
| 1000 | 1199 | return templ_7745c5c3_Err | |
| 1001 | 1200 | } | |
| 1002 | - | var templ_7745c5c3_Var55 string | |
| 1003 | - | templ_7745c5c3_Var55, templ_7745c5c3_Err = templ.ResolveAttributeValue(a.Level) | |
| 1201 | + | var templ_7745c5c3_Var66 string | |
| 1202 | + | templ_7745c5c3_Var66, templ_7745c5c3_Err = templ.ResolveAttributeValue(a.Level) | |
| 1004 | 1203 | if templ_7745c5c3_Err != nil { | |
| 1005 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 134, Col: 90} | |
| 1204 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 155, Col: 90} | |
| 1006 | 1205 | } | |
| 1007 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var55) | |
| 1206 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var66) | |
| 1008 | 1207 | if templ_7745c5c3_Err != nil { | |
| 1009 | 1208 | return templ_7745c5c3_Err | |
| 1010 | 1209 | } | |
| 1011 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 77, "\"></span><div class=\"annot-body\"><p class=\"annot-head\"><span class=\"annot-level\">") | |
| 1210 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 95, "\"></span><div class=\"annot-body\"><p class=\"annot-head\"><span class=\"annot-level\">") | |
| 1012 | 1211 | if templ_7745c5c3_Err != nil { | |
| 1013 | 1212 | return templ_7745c5c3_Err | |
| 1014 | 1213 | } | |
| 1015 | - | var templ_7745c5c3_Var56 string | |
| 1016 | - | templ_7745c5c3_Var56, templ_7745c5c3_Err = templ.JoinStringErrs(a.Level) | |
| 1214 | + | var templ_7745c5c3_Var67 string | |
| 1215 | + | templ_7745c5c3_Var67, templ_7745c5c3_Err = templ.JoinStringErrs(a.Level) | |
| 1017 | 1216 | if templ_7745c5c3_Err != nil { | |
| 1018 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 137, Col: 41} | |
| 1217 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 158, Col: 41} | |
| 1019 | 1218 | } | |
| 1020 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var56)) | |
| 1219 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var67)) | |
| 1021 | 1220 | if templ_7745c5c3_Err != nil { | |
| 1022 | 1221 | return templ_7745c5c3_Err | |
| 1023 | 1222 | } | |
| 1024 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 78, "</span> ") | |
| 1223 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 96, "</span> ") | |
| 1025 | 1224 | if templ_7745c5c3_Err != nil { | |
| 1026 | 1225 | return templ_7745c5c3_Err | |
| 1027 | 1226 | } | |
| 1028 | 1227 | if !grouped { | |
| 1029 | 1228 | if a.JobHref != "" { | |
| 1030 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 79, "<a href=\"") | |
| 1229 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 97, "<a href=\"") | |
| 1031 | 1230 | if templ_7745c5c3_Err != nil { | |
| 1032 | 1231 | return templ_7745c5c3_Err | |
| 1033 | 1232 | } | |
| 1034 | - | var templ_7745c5c3_Var57 templ.SafeURL | |
| 1035 | - | templ_7745c5c3_Var57, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.JobHref)) | |
| 1233 | + | var templ_7745c5c3_Var68 templ.SafeURL | |
| 1234 | + | templ_7745c5c3_Var68, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.JobHref)) | |
| 1036 | 1235 | if templ_7745c5c3_Err != nil { | |
| 1037 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 140, Col: 42} | |
| 1236 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 161, Col: 42} | |
| 1038 | 1237 | } | |
| 1039 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var57)) | |
| 1238 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var68)) | |
| 1040 | 1239 | if templ_7745c5c3_Err != nil { | |
| 1041 | 1240 | return templ_7745c5c3_Err | |
| 1042 | 1241 | } | |
| 1043 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 80, "\">") | |
| 1242 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 98, "\">") | |
| 1044 | 1243 | if templ_7745c5c3_Err != nil { | |
| 1045 | 1244 | return templ_7745c5c3_Err | |
| 1046 | 1245 | } | |
| 1047 | - | var templ_7745c5c3_Var58 string | |
| 1048 | - | templ_7745c5c3_Var58, templ_7745c5c3_Err = templ.JoinStringErrs(a.Job) | |
| 1246 | + | var templ_7745c5c3_Var69 string | |
| 1247 | + | templ_7745c5c3_Var69, templ_7745c5c3_Err = templ.JoinStringErrs(a.Job) | |
| 1049 | 1248 | if templ_7745c5c3_Err != nil { | |
| 1050 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 140, Col: 52} | |
| 1249 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 161, Col: 52} | |
| 1051 | 1250 | } | |
| 1052 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var58)) | |
| 1251 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var69)) | |
| 1053 | 1252 | if templ_7745c5c3_Err != nil { | |
| 1054 | 1253 | return templ_7745c5c3_Err | |
| 1055 | 1254 | } | |
| 1056 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 81, "</a>") | |
| 1255 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 99, "</a>") | |
| 1057 | 1256 | if templ_7745c5c3_Err != nil { | |
| 1058 | 1257 | return templ_7745c5c3_Err | |
| 1059 | 1258 | } | |
| 1060 | 1259 | } else { | |
| 1061 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 82, "<span>") | |
| 1260 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 100, "<span>") | |
| 1062 | 1261 | if templ_7745c5c3_Err != nil { | |
| 1063 | 1262 | return templ_7745c5c3_Err | |
| 1064 | 1263 | } | |
| 1065 | - | var templ_7745c5c3_Var59 string | |
| 1066 | - | templ_7745c5c3_Var59, templ_7745c5c3_Err = templ.JoinStringErrs(a.Job) | |
| 1264 | + | var templ_7745c5c3_Var70 string | |
| 1265 | + | templ_7745c5c3_Var70, templ_7745c5c3_Err = templ.JoinStringErrs(a.Job) | |
| 1067 | 1266 | if templ_7745c5c3_Err != nil { | |
| 1068 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 142, Col: 21} | |
| 1267 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 163, Col: 21} | |
| 1069 | 1268 | } | |
| 1070 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var59)) | |
| 1269 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var70)) | |
| 1071 | 1270 | if templ_7745c5c3_Err != nil { | |
| 1072 | 1271 | return templ_7745c5c3_Err | |
| 1073 | 1272 | } | |
| 1074 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 83, "</span>") | |
| 1273 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 101, "</span>") | |
| 1075 | 1274 | if templ_7745c5c3_Err != nil { | |
| 1076 | 1275 | return templ_7745c5c3_Err | |
| 1077 | 1276 | } | |
| 1078 | 1277 | } | |
| 1079 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 84, " <span class=\"mute\">") | |
| 1278 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 102, " <span class=\"mute\">") | |
| 1080 | 1279 | if templ_7745c5c3_Err != nil { | |
| 1081 | 1280 | return templ_7745c5c3_Err | |
| 1082 | 1281 | } | |
| 1083 | - | var templ_7745c5c3_Var60 string | |
| 1084 | - | templ_7745c5c3_Var60, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) | |
| 1282 | + | var templ_7745c5c3_Var71 string | |
| 1283 | + | templ_7745c5c3_Var71, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) | |
| 1085 | 1284 | if templ_7745c5c3_Err != nil { | |
| 1086 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 144, Col: 34} | |
| 1285 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 165, Col: 34} | |
| 1087 | 1286 | } | |
| 1088 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var60)) | |
| 1287 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var71)) | |
| 1089 | 1288 | if templ_7745c5c3_Err != nil { | |
| 1090 | 1289 | return templ_7745c5c3_Err | |
| 1091 | 1290 | } | |
| 1092 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 85, "</span> ") | |
| 1291 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 103, "</span> ") | |
| 1093 | 1292 | if templ_7745c5c3_Err != nil { | |
| 1094 | 1293 | return templ_7745c5c3_Err | |
| 1095 | 1294 | } | |
| 1096 | 1295 | } | |
| 1097 | 1296 | if a.Title != "" { | |
| 1098 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 86, "<strong>") | |
| 1297 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 104, "<strong>") | |
| 1099 | 1298 | if templ_7745c5c3_Err != nil { | |
| 1100 | 1299 | return templ_7745c5c3_Err | |
| 1101 | 1300 | } | |
| 1102 | - | var templ_7745c5c3_Var61 string | |
| 1103 | - | templ_7745c5c3_Var61, templ_7745c5c3_Err = templ.JoinStringErrs(a.Title) | |
| 1301 | + | var templ_7745c5c3_Var72 string | |
| 1302 | + | templ_7745c5c3_Var72, templ_7745c5c3_Err = templ.JoinStringErrs(a.Title) | |
| 1104 | 1303 | if templ_7745c5c3_Err != nil { | |
| 1105 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 147, Col: 24} | |
| 1304 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 168, Col: 24} | |
| 1106 | 1305 | } | |
| 1107 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var61)) | |
| 1306 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var72)) | |
| 1108 | 1307 | if templ_7745c5c3_Err != nil { | |
| 1109 | 1308 | return templ_7745c5c3_Err | |
| 1110 | 1309 | } | |
| 1111 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 87, "</strong>") | |
| 1310 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 105, "</strong>") | |
| 1112 | 1311 | if templ_7745c5c3_Err != nil { | |
| 1113 | 1312 | return templ_7745c5c3_Err | |
| 1114 | 1313 | } | |
| 1115 | 1314 | } | |
| 1116 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 88, "</p><p class=\"annot-msg\">") | |
| 1315 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 106, "</p><p class=\"annot-msg\">") | |
| 1117 | 1316 | if templ_7745c5c3_Err != nil { | |
| 1118 | 1317 | return templ_7745c5c3_Err | |
| 1119 | 1318 | } | |
| 1120 | - | var templ_7745c5c3_Var62 string | |
| 1121 | - | templ_7745c5c3_Var62, templ_7745c5c3_Err = templ.JoinStringErrs(a.Message) | |
| 1319 | + | var templ_7745c5c3_Var73 string | |
| 1320 | + | templ_7745c5c3_Var73, templ_7745c5c3_Err = templ.JoinStringErrs(a.Message) | |
| 1122 | 1321 | if templ_7745c5c3_Err != nil { | |
| 1123 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 150, Col: 37} | |
| 1322 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 171, Col: 37} | |
| 1124 | 1323 | } | |
| 1125 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var62)) | |
| 1324 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var73)) | |
| 1126 | 1325 | if templ_7745c5c3_Err != nil { | |
| 1127 | 1326 | return templ_7745c5c3_Err | |
| 1128 | 1327 | } | |
| 1129 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 89, "</p>") | |
| 1328 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 107, "</p>") | |
| 1130 | 1329 | if templ_7745c5c3_Err != nil { | |
| 1131 | 1330 | return templ_7745c5c3_Err | |
| 1132 | 1331 | } | |
| 1133 | 1332 | if a.Where != "" { | |
| 1134 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 90, "<p class=\"annot-where\">") | |
| 1333 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 108, "<p class=\"annot-where\">") | |
| 1135 | 1334 | if templ_7745c5c3_Err != nil { | |
| 1136 | 1335 | return templ_7745c5c3_Err | |
| 1137 | 1336 | } | |
| 1138 | 1337 | if a.WhereHref != "" { | |
| 1139 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 91, "<a href=\"") | |
| 1338 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 109, "<a href=\"") | |
| 1140 | 1339 | if templ_7745c5c3_Err != nil { | |
| 1141 | 1340 | return templ_7745c5c3_Err | |
| 1142 | 1341 | } | |
| 1143 | - | var templ_7745c5c3_Var63 templ.SafeURL | |
| 1144 | - | templ_7745c5c3_Var63, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.WhereHref)) | |
| 1342 | + | var templ_7745c5c3_Var74 templ.SafeURL | |
| 1343 | + | templ_7745c5c3_Var74, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.WhereHref)) | |
| 1145 | 1344 | if templ_7745c5c3_Err != nil { | |
| 1146 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 154, Col: 44} | |
| 1345 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 175, Col: 44} | |
| 1147 | 1346 | } | |
| 1148 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var63)) | |
| 1347 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var74)) | |
| 1149 | 1348 | if templ_7745c5c3_Err != nil { | |
| 1150 | 1349 | return templ_7745c5c3_Err | |
| 1151 | 1350 | } | |
| 1152 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 92, "\">") | |
| 1351 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 110, "\">") | |
| 1153 | 1352 | if templ_7745c5c3_Err != nil { | |
| 1154 | 1353 | return templ_7745c5c3_Err | |
| 1155 | 1354 | } | |
| 1156 | - | var templ_7745c5c3_Var64 string | |
| 1157 | - | templ_7745c5c3_Var64, templ_7745c5c3_Err = templ.JoinStringErrs(a.Where) | |
| 1355 | + | var templ_7745c5c3_Var75 string | |
| 1356 | + | templ_7745c5c3_Var75, templ_7745c5c3_Err = templ.JoinStringErrs(a.Where) | |
| 1158 | 1357 | if templ_7745c5c3_Err != nil { | |
| 1159 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 154, Col: 56} | |
| 1358 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 175, Col: 56} | |
| 1160 | 1359 | } | |
| 1161 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var64)) | |
| 1360 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var75)) | |
| 1162 | 1361 | if templ_7745c5c3_Err != nil { | |
| 1163 | 1362 | return templ_7745c5c3_Err | |
| 1164 | 1363 | } | |
| 1165 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 93, "</a>") | |
| 1364 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 111, "</a>") | |
| 1166 | 1365 | if templ_7745c5c3_Err != nil { | |
| 1167 | 1366 | return templ_7745c5c3_Err | |
| 1168 | 1367 | } | |
| 1169 | 1368 | } else { | |
| 1170 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 94, "<span>") | |
| 1369 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 112, "<span>") | |
| 1171 | 1370 | if templ_7745c5c3_Err != nil { | |
| 1172 | 1371 | return templ_7745c5c3_Err | |
| 1173 | 1372 | } | |
| 1174 | - | var templ_7745c5c3_Var65 string | |
| 1175 | - | templ_7745c5c3_Var65, templ_7745c5c3_Err = templ.JoinStringErrs(a.Where) | |
| 1373 | + | var templ_7745c5c3_Var76 string | |
| 1374 | + | templ_7745c5c3_Var76, templ_7745c5c3_Err = templ.JoinStringErrs(a.Where) | |
| 1176 | 1375 | if templ_7745c5c3_Err != nil { | |
| 1177 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 156, Col: 23} | |
| 1376 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 177, Col: 23} | |
| 1178 | 1377 | } | |
| 1179 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var65)) | |
| 1378 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var76)) | |
| 1180 | 1379 | if templ_7745c5c3_Err != nil { | |
| 1181 | 1380 | return templ_7745c5c3_Err | |
| 1182 | 1381 | } | |
| 1183 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 95, "</span>") | |
| 1382 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 113, "</span>") | |
| 1184 | 1383 | if templ_7745c5c3_Err != nil { | |
| 1185 | 1384 | return templ_7745c5c3_Err | |
| 1186 | 1385 | } | |
| 1187 | 1386 | } | |
| 1188 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 96, "</p>") | |
| 1387 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 114, "</p>") | |
| 1189 | 1388 | if templ_7745c5c3_Err != nil { | |
| 1190 | 1389 | return templ_7745c5c3_Err | |
| 1191 | 1390 | } | |
| 1192 | 1391 | } | |
| 1193 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 97, "</div></li>") | |
| 1392 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 115, "</div></li>") | |
| 1194 | 1393 | if templ_7745c5c3_Err != nil { | |
| 1195 | 1394 | return templ_7745c5c3_Err | |
| 1196 | 1395 | } | |
| 1197 | 1396 | } | |
| 1198 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 98, "</ul>") | |
| 1397 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 116, "</ul>") | |
| 1199 | 1398 | if templ_7745c5c3_Err != nil { | |
| 1200 | 1399 | return templ_7745c5c3_Err | |
| 1201 | 1400 | } | |
| 1202 | 1401 | if more { | |
| 1203 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 99, "<p class=\"mute\">more annotations exist than are shown.</p>") | |
| 1402 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 117, "<p class=\"mute\">more annotations exist than are shown.</p>") | |
| 1204 | 1403 | if templ_7745c5c3_Err != nil { | |
| 1205 | 1404 | return templ_7745c5c3_Err | |
| 1206 | 1405 | } | |
| @@ -1228,30 +1427,30 @@ func JobAnnotations(anns []AnnotationView, more bool) templ.Component { | |||
| 1228 | 1427 | }() | |
| 1229 | 1428 | } | |
| 1230 | 1429 | ctx = templ.InitializeContext(ctx) | |
| 1231 | - | templ_7745c5c3_Var66 := templ.GetChildren(ctx) | |
| 1232 | - | if templ_7745c5c3_Var66 == nil { | |
| 1233 | - | templ_7745c5c3_Var66 = templ.NopComponent | |
| 1430 | + | templ_7745c5c3_Var77 := templ.GetChildren(ctx) | |
| 1431 | + | if templ_7745c5c3_Var77 == nil { | |
| 1432 | + | templ_7745c5c3_Var77 = templ.NopComponent | |
| 1234 | 1433 | } | |
| 1235 | 1434 | ctx = templ.ClearChildren(ctx) | |
| 1236 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 100, "<section id=\"job-annotations\" class=\"annots\" aria-label=\"Annotations\">") | |
| 1435 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 118, "<section id=\"job-annotations\" class=\"annots\" aria-label=\"Annotations\">") | |
| 1237 | 1436 | if templ_7745c5c3_Err != nil { | |
| 1238 | 1437 | return templ_7745c5c3_Err | |
| 1239 | 1438 | } | |
| 1240 | 1439 | if len(anns) > 0 { | |
| 1241 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 101, "<h3>Annotations <span class=\"count\">") | |
| 1440 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 119, "<h3>Annotations <span class=\"count\">") | |
| 1242 | 1441 | if templ_7745c5c3_Err != nil { | |
| 1243 | 1442 | return templ_7745c5c3_Err | |
| 1244 | 1443 | } | |
| 1245 | - | var templ_7745c5c3_Var67 string | |
| 1246 | - | templ_7745c5c3_Var67, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(anns))) | |
| 1444 | + | var templ_7745c5c3_Var78 string | |
| 1445 | + | templ_7745c5c3_Var78, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(anns))) | |
| 1247 | 1446 | if templ_7745c5c3_Err != nil { | |
| 1248 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 175, Col: 56} | |
| 1447 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 196, Col: 56} | |
| 1249 | 1448 | } | |
| 1250 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var67)) | |
| 1449 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var78)) | |
| 1251 | 1450 | if templ_7745c5c3_Err != nil { | |
| 1252 | 1451 | return templ_7745c5c3_Err | |
| 1253 | 1452 | } | |
| 1254 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 102, "</span></h3>") | |
| 1453 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 120, "</span></h3>") | |
| 1255 | 1454 | if templ_7745c5c3_Err != nil { | |
| 1256 | 1455 | return templ_7745c5c3_Err | |
| 1257 | 1456 | } | |
| @@ -1260,7 +1459,7 @@ func JobAnnotations(anns []AnnotationView, more bool) templ.Component { | |||
| 1260 | 1459 | return templ_7745c5c3_Err | |
| 1261 | 1460 | } | |
| 1262 | 1461 | } | |
| 1263 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 103, "</section>") | |
| 1462 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 121, "</section>") | |
| 1264 | 1463 | if templ_7745c5c3_Err != nil { | |
| 1265 | 1464 | return templ_7745c5c3_Err | |
| 1266 | 1465 | } | |
| @@ -1287,125 +1486,125 @@ func RunSummaries(sums []JobSummaries, more bool) templ.Component { | |||
| 1287 | 1486 | }() | |
| 1288 | 1487 | } | |
| 1289 | 1488 | ctx = templ.InitializeContext(ctx) | |
| 1290 | - | templ_7745c5c3_Var68 := templ.GetChildren(ctx) | |
| 1291 | - | if templ_7745c5c3_Var68 == nil { | |
| 1292 | - | templ_7745c5c3_Var68 = templ.NopComponent | |
| 1489 | + | templ_7745c5c3_Var79 := templ.GetChildren(ctx) | |
| 1490 | + | if templ_7745c5c3_Var79 == nil { | |
| 1491 | + | templ_7745c5c3_Var79 = templ.NopComponent | |
| 1293 | 1492 | } | |
| 1294 | 1493 | ctx = templ.ClearChildren(ctx) | |
| 1295 | 1494 | for _, j := range sums { | |
| 1296 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 104, "<section class=\"summaries\" aria-label=\"") | |
| 1495 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 122, "<section class=\"summaries\" aria-label=\"") | |
| 1297 | 1496 | if templ_7745c5c3_Err != nil { | |
| 1298 | 1497 | return templ_7745c5c3_Err | |
| 1299 | 1498 | } | |
| 1300 | - | var templ_7745c5c3_Var69 string | |
| 1301 | - | templ_7745c5c3_Var69, templ_7745c5c3_Err = templ.ResolveAttributeValue("Summary of " + j.Job) | |
| 1499 | + | var templ_7745c5c3_Var80 string | |
| 1500 | + | templ_7745c5c3_Var80, templ_7745c5c3_Err = templ.ResolveAttributeValue("Summary of " + j.Job) | |
| 1302 | 1501 | if templ_7745c5c3_Err != nil { | |
| 1303 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 186, Col: 63} | |
| 1502 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 207, Col: 63} | |
| 1304 | 1503 | } | |
| 1305 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var69) | |
| 1504 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var80) | |
| 1306 | 1505 | if templ_7745c5c3_Err != nil { | |
| 1307 | 1506 | return templ_7745c5c3_Err | |
| 1308 | 1507 | } | |
| 1309 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 105, "\"><h3>") | |
| 1508 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 123, "\"><h3>") | |
| 1310 | 1509 | if templ_7745c5c3_Err != nil { | |
| 1311 | 1510 | return templ_7745c5c3_Err | |
| 1312 | 1511 | } | |
| 1313 | 1512 | if j.JobHref != "" { | |
| 1314 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 106, "<a href=\"") | |
| 1513 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 124, "<a href=\"") | |
| 1315 | 1514 | if templ_7745c5c3_Err != nil { | |
| 1316 | 1515 | return templ_7745c5c3_Err | |
| 1317 | 1516 | } | |
| 1318 | - | var templ_7745c5c3_Var70 templ.SafeURL | |
| 1319 | - | templ_7745c5c3_Var70, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(j.JobHref)) | |
| 1517 | + | var templ_7745c5c3_Var81 templ.SafeURL | |
| 1518 | + | templ_7745c5c3_Var81, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(j.JobHref)) | |
| 1320 | 1519 | if templ_7745c5c3_Err != nil { | |
| 1321 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 189, Col: 39} | |
| 1520 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 210, Col: 39} | |
| 1322 | 1521 | } | |
| 1323 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var70)) | |
| 1522 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var81)) | |
| 1324 | 1523 | if templ_7745c5c3_Err != nil { | |
| 1325 | 1524 | return templ_7745c5c3_Err | |
| 1326 | 1525 | } | |
| 1327 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 107, "\">") | |
| 1526 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 125, "\">") | |
| 1328 | 1527 | if templ_7745c5c3_Err != nil { | |
| 1329 | 1528 | return templ_7745c5c3_Err | |
| 1330 | 1529 | } | |
| 1331 | - | var templ_7745c5c3_Var71 string | |
| 1332 | - | templ_7745c5c3_Var71, templ_7745c5c3_Err = templ.JoinStringErrs(j.Job) | |
| 1530 | + | var templ_7745c5c3_Var82 string | |
| 1531 | + | templ_7745c5c3_Var82, templ_7745c5c3_Err = templ.JoinStringErrs(j.Job) | |
| 1333 | 1532 | if templ_7745c5c3_Err != nil { | |
| 1334 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 189, Col: 49} | |
| 1533 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 210, Col: 49} | |
| 1335 | 1534 | } | |
| 1336 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var71)) | |
| 1535 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var82)) | |
| 1337 | 1536 | if templ_7745c5c3_Err != nil { | |
| 1338 | 1537 | return templ_7745c5c3_Err | |
| 1339 | 1538 | } | |
| 1340 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 108, "</a> ") | |
| 1539 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 126, "</a> ") | |
| 1341 | 1540 | if templ_7745c5c3_Err != nil { | |
| 1342 | 1541 | return templ_7745c5c3_Err | |
| 1343 | 1542 | } | |
| 1344 | 1543 | } else { | |
| 1345 | - | var templ_7745c5c3_Var72 string | |
| 1346 | - | templ_7745c5c3_Var72, templ_7745c5c3_Err = templ.JoinStringErrs(j.Job) | |
| 1544 | + | var templ_7745c5c3_Var83 string | |
| 1545 | + | templ_7745c5c3_Var83, templ_7745c5c3_Err = templ.JoinStringErrs(j.Job) | |
| 1347 | 1546 | if templ_7745c5c3_Err != nil { | |
| 1348 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 191, Col: 12} | |
| 1547 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 212, Col: 12} | |
| 1349 | 1548 | } | |
| 1350 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var72)) | |
| 1549 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var83)) | |
| 1351 | 1550 | if templ_7745c5c3_Err != nil { | |
| 1352 | 1551 | return templ_7745c5c3_Err | |
| 1353 | 1552 | } | |
| 1354 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 109, " ") | |
| 1553 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 127, " ") | |
| 1355 | 1554 | if templ_7745c5c3_Err != nil { | |
| 1356 | 1555 | return templ_7745c5c3_Err | |
| 1357 | 1556 | } | |
| 1358 | 1557 | } | |
| 1359 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 110, "<span class=\"mute\">summary</span></h3>") | |
| 1558 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 128, "<span class=\"mute\">summary</span></h3>") | |
| 1360 | 1559 | if templ_7745c5c3_Err != nil { | |
| 1361 | 1560 | return templ_7745c5c3_Err | |
| 1362 | 1561 | } | |
| 1363 | 1562 | for _, s := range j.Steps { | |
| 1364 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 111, "<article class=\"prose summary\" aria-label=\"") | |
| 1563 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 129, "<article class=\"prose summary\" aria-label=\"") | |
| 1365 | 1564 | if templ_7745c5c3_Err != nil { | |
| 1366 | 1565 | return templ_7745c5c3_Err | |
| 1367 | 1566 | } | |
| 1368 | - | var templ_7745c5c3_Var73 string | |
| 1369 | - | templ_7745c5c3_Var73, templ_7745c5c3_Err = templ.ResolveAttributeValue(s.Step) | |
| 1567 | + | var templ_7745c5c3_Var84 string | |
| 1568 | + | templ_7745c5c3_Var84, templ_7745c5c3_Err = templ.ResolveAttributeValue(s.Step) | |
| 1370 | 1569 | if templ_7745c5c3_Err != nil { | |
| 1371 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 196, Col: 54} | |
| 1570 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 217, Col: 54} | |
| 1372 | 1571 | } | |
| 1373 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var73) | |
| 1572 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var84) | |
| 1374 | 1573 | if templ_7745c5c3_Err != nil { | |
| 1375 | 1574 | return templ_7745c5c3_Err | |
| 1376 | 1575 | } | |
| 1377 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 112, "\" hx-ignore><h4 class=\"summary-step\">") | |
| 1576 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 130, "\" hx-ignore><h4 class=\"summary-step\">") | |
| 1378 | 1577 | if templ_7745c5c3_Err != nil { | |
| 1379 | 1578 | return templ_7745c5c3_Err | |
| 1380 | 1579 | } | |
| 1381 | - | var templ_7745c5c3_Var74 string | |
| 1382 | - | templ_7745c5c3_Var74, templ_7745c5c3_Err = templ.JoinStringErrs(s.Step) | |
| 1580 | + | var templ_7745c5c3_Var85 string | |
| 1581 | + | templ_7745c5c3_Var85, templ_7745c5c3_Err = templ.JoinStringErrs(s.Step) | |
| 1383 | 1582 | if templ_7745c5c3_Err != nil { | |
| 1384 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 197, Col: 38} | |
| 1583 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 218, Col: 38} | |
| 1385 | 1584 | } | |
| 1386 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var74)) | |
| 1585 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var85)) | |
| 1387 | 1586 | if templ_7745c5c3_Err != nil { | |
| 1388 | 1587 | return templ_7745c5c3_Err | |
| 1389 | 1588 | } | |
| 1390 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 113, "</h4>") | |
| 1589 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 131, "</h4>") | |
| 1391 | 1590 | if templ_7745c5c3_Err != nil { | |
| 1392 | 1591 | return templ_7745c5c3_Err | |
| 1393 | 1592 | } | |
| 1394 | 1593 | if s.Note != "" { | |
| 1395 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 114, "<p class=\"dim\">") | |
| 1594 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 132, "<p class=\"dim\">") | |
| 1396 | 1595 | if templ_7745c5c3_Err != nil { | |
| 1397 | 1596 | return templ_7745c5c3_Err | |
| 1398 | 1597 | } | |
| 1399 | - | var templ_7745c5c3_Var75 string | |
| 1400 | - | templ_7745c5c3_Var75, templ_7745c5c3_Err = templ.JoinStringErrs(s.Note) | |
| 1598 | + | var templ_7745c5c3_Var86 string | |
| 1599 | + | templ_7745c5c3_Var86, templ_7745c5c3_Err = templ.JoinStringErrs(s.Note) | |
| 1401 | 1600 | if templ_7745c5c3_Err != nil { | |
| 1402 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 199, Col: 29} | |
| 1601 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 220, Col: 29} | |
| 1403 | 1602 | } | |
| 1404 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var75)) | |
| 1603 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var86)) | |
| 1405 | 1604 | if templ_7745c5c3_Err != nil { | |
| 1406 | 1605 | return templ_7745c5c3_Err | |
| 1407 | 1606 | } | |
| 1408 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 115, "</p>") | |
| 1607 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 133, "</p>") | |
| 1409 | 1608 | if templ_7745c5c3_Err != nil { | |
| 1410 | 1609 | return templ_7745c5c3_Err | |
| 1411 | 1610 | } | |
| @@ -1415,37 +1614,37 @@ func RunSummaries(sums []JobSummaries, more bool) templ.Component { | |||
| 1415 | 1614 | return templ_7745c5c3_Err | |
| 1416 | 1615 | } | |
| 1417 | 1616 | } | |
| 1418 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 116, "</article>") | |
| 1617 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 134, "</article>") | |
| 1419 | 1618 | if templ_7745c5c3_Err != nil { | |
| 1420 | 1619 | return templ_7745c5c3_Err | |
| 1421 | 1620 | } | |
| 1422 | 1621 | } | |
| 1423 | 1622 | if j.More { | |
| 1424 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 117, "<p class=\"mute\">the job has more summaries than the first 20, which are shown.</p>") | |
| 1623 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 135, "<p class=\"mute\">the job has more summaries than the first 20, which are shown.</p>") | |
| 1425 | 1624 | if templ_7745c5c3_Err != nil { | |
| 1426 | 1625 | return templ_7745c5c3_Err | |
| 1427 | 1626 | } | |
| 1428 | 1627 | } | |
| 1429 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 118, "</section>") | |
| 1628 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 136, "</section>") | |
| 1430 | 1629 | if templ_7745c5c3_Err != nil { | |
| 1431 | 1630 | return templ_7745c5c3_Err | |
| 1432 | 1631 | } | |
| 1433 | 1632 | } | |
| 1434 | 1633 | if more { | |
| 1435 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 119, "<p class=\"mute\">more summaries are not shown: the summaries of the page are over ") | |
| 1634 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 137, "<p class=\"mute\">more summaries are not shown: the summaries of the page are over ") | |
| 1436 | 1635 | if templ_7745c5c3_Err != nil { | |
| 1437 | 1636 | return templ_7745c5c3_Err | |
| 1438 | 1637 | } | |
| 1439 | - | var templ_7745c5c3_Var76 string | |
| 1440 | - | templ_7745c5c3_Var76, templ_7745c5c3_Err = templ.JoinStringErrs(humanSize(maxSummaryPageBytes)) | |
| 1638 | + | var templ_7745c5c3_Var87 string | |
| 1639 | + | templ_7745c5c3_Var87, templ_7745c5c3_Err = templ.JoinStringErrs(humanSize(maxSummaryPageBytes)) | |
| 1441 | 1640 | if templ_7745c5c3_Err != nil { | |
| 1442 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 211, Col: 115} | |
| 1641 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 232, Col: 115} | |
| 1443 | 1642 | } | |
| 1444 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var76)) | |
| 1643 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var87)) | |
| 1445 | 1644 | if templ_7745c5c3_Err != nil { | |
| 1446 | 1645 | return templ_7745c5c3_Err | |
| 1447 | 1646 | } | |
| 1448 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 120, ".</p>") | |
| 1647 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 138, ".</p>") | |
| 1449 | 1648 | if templ_7745c5c3_Err != nil { | |
| 1450 | 1649 | return templ_7745c5c3_Err | |
| 1451 | 1650 | } | |
| @@ -1470,256 +1669,256 @@ func runRail(p RunPage) templ.Component { | |||
| 1470 | 1669 | }() | |
| 1471 | 1670 | } | |
| 1472 | 1671 | ctx = templ.InitializeContext(ctx) | |
| 1473 | - | templ_7745c5c3_Var77 := templ.GetChildren(ctx) | |
| 1474 | - | if templ_7745c5c3_Var77 == nil { | |
| 1475 | - | templ_7745c5c3_Var77 = templ.NopComponent | |
| 1672 | + | templ_7745c5c3_Var88 := templ.GetChildren(ctx) | |
| 1673 | + | if templ_7745c5c3_Var88 == nil { | |
| 1674 | + | templ_7745c5c3_Var88 = templ.NopComponent | |
| 1476 | 1675 | } | |
| 1477 | 1676 | ctx = templ.ClearChildren(ctx) | |
| 1478 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 121, "<section aria-labelledby=\"r-run\"><h2 id=\"r-run\">Run</h2><dl class=\"kv\"><dt>result</dt><dd>") | |
| 1677 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 139, "<section aria-labelledby=\"r-run\"><h2 id=\"r-run\">Run</h2><dl class=\"kv\"><dt>result</dt><dd>") | |
| 1479 | 1678 | if templ_7745c5c3_Err != nil { | |
| 1480 | 1679 | return templ_7745c5c3_Err | |
| 1481 | 1680 | } | |
| 1482 | - | var templ_7745c5c3_Var78 string | |
| 1483 | - | templ_7745c5c3_Var78, templ_7745c5c3_Err = templ.JoinStringErrs(p.State) | |
| 1681 | + | var templ_7745c5c3_Var89 string | |
| 1682 | + | templ_7745c5c3_Var89, templ_7745c5c3_Err = templ.JoinStringErrs(p.State) | |
| 1484 | 1683 | if templ_7745c5c3_Err != nil { | |
| 1485 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 220, Col: 16} | |
| 1684 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 241, Col: 16} | |
| 1486 | 1685 | } | |
| 1487 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var78)) | |
| 1686 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var89)) | |
| 1488 | 1687 | if templ_7745c5c3_Err != nil { | |
| 1489 | 1688 | return templ_7745c5c3_Err | |
| 1490 | 1689 | } | |
| 1491 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 122, "</dd><dt>commit</dt><dd><a href=\"") | |
| 1690 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 140, "</dd><dt>commit</dt><dd><a href=\"") | |
| 1492 | 1691 | if templ_7745c5c3_Err != nil { | |
| 1493 | 1692 | return templ_7745c5c3_Err | |
| 1494 | 1693 | } | |
| 1495 | - | var templ_7745c5c3_Var79 templ.SafeURL | |
| 1496 | - | templ_7745c5c3_Var79, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.CHref)) | |
| 1694 | + | var templ_7745c5c3_Var90 templ.SafeURL | |
| 1695 | + | templ_7745c5c3_Var90, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.CHref)) | |
| 1497 | 1696 | if templ_7745c5c3_Err != nil { | |
| 1498 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 222, Col: 39} | |
| 1697 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 243, Col: 39} | |
| 1499 | 1698 | } | |
| 1500 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var79)) | |
| 1699 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var90)) | |
| 1501 | 1700 | if templ_7745c5c3_Err != nil { | |
| 1502 | 1701 | return templ_7745c5c3_Err | |
| 1503 | 1702 | } | |
| 1504 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 123, "\">") | |
| 1703 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 141, "\">") | |
| 1505 | 1704 | if templ_7745c5c3_Err != nil { | |
| 1506 | 1705 | return templ_7745c5c3_Err | |
| 1507 | 1706 | } | |
| 1508 | - | var templ_7745c5c3_Var80 string | |
| 1509 | - | templ_7745c5c3_Var80, templ_7745c5c3_Err = templ.JoinStringErrs(p.Short) | |
| 1707 | + | var templ_7745c5c3_Var91 string | |
| 1708 | + | templ_7745c5c3_Var91, templ_7745c5c3_Err = templ.JoinStringErrs(p.Short) | |
| 1510 | 1709 | if templ_7745c5c3_Err != nil { | |
| 1511 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 222, Col: 51} | |
| 1710 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 243, Col: 51} | |
| 1512 | 1711 | } | |
| 1513 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var80)) | |
| 1712 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var91)) | |
| 1514 | 1713 | if templ_7745c5c3_Err != nil { | |
| 1515 | 1714 | return templ_7745c5c3_Err | |
| 1516 | 1715 | } | |
| 1517 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 124, "</a></dd><dt>ref</dt><dd><a href=\"") | |
| 1716 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 142, "</a></dd><dt>ref</dt><dd><a href=\"") | |
| 1518 | 1717 | if templ_7745c5c3_Err != nil { | |
| 1519 | 1718 | return templ_7745c5c3_Err | |
| 1520 | 1719 | } | |
| 1521 | - | var templ_7745c5c3_Var81 templ.SafeURL | |
| 1522 | - | templ_7745c5c3_Var81, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RefHref)) | |
| 1720 | + | var templ_7745c5c3_Var92 templ.SafeURL | |
| 1721 | + | templ_7745c5c3_Var92, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RefHref)) | |
| 1523 | 1722 | if templ_7745c5c3_Err != nil { | |
| 1524 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 224, Col: 41} | |
| 1723 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 245, Col: 41} | |
| 1525 | 1724 | } | |
| 1526 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var81)) | |
| 1725 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var92)) | |
| 1527 | 1726 | if templ_7745c5c3_Err != nil { | |
| 1528 | 1727 | return templ_7745c5c3_Err | |
| 1529 | 1728 | } | |
| 1530 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 125, "\">") | |
| 1729 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 143, "\">") | |
| 1531 | 1730 | if templ_7745c5c3_Err != nil { | |
| 1532 | 1731 | return templ_7745c5c3_Err | |
| 1533 | 1732 | } | |
| 1534 | - | var templ_7745c5c3_Var82 string | |
| 1535 | - | templ_7745c5c3_Var82, templ_7745c5c3_Err = templ.JoinStringErrs(p.Ref) | |
| 1733 | + | var templ_7745c5c3_Var93 string | |
| 1734 | + | templ_7745c5c3_Var93, templ_7745c5c3_Err = templ.JoinStringErrs(p.Ref) | |
| 1536 | 1735 | if templ_7745c5c3_Err != nil { | |
| 1537 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 224, Col: 51} | |
| 1736 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 245, Col: 51} | |
| 1538 | 1737 | } | |
| 1539 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var82)) | |
| 1738 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var93)) | |
| 1540 | 1739 | if templ_7745c5c3_Err != nil { | |
| 1541 | 1740 | return templ_7745c5c3_Err | |
| 1542 | 1741 | } | |
| 1543 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 126, "</a></dd><dt>actor</dt><dd>") | |
| 1742 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 144, "</a></dd><dt>actor</dt><dd>") | |
| 1544 | 1743 | if templ_7745c5c3_Err != nil { | |
| 1545 | 1744 | return templ_7745c5c3_Err | |
| 1546 | 1745 | } | |
| 1547 | - | var templ_7745c5c3_Var83 string | |
| 1548 | - | templ_7745c5c3_Var83, templ_7745c5c3_Err = templ.JoinStringErrs(p.Actor) | |
| 1746 | + | var templ_7745c5c3_Var94 string | |
| 1747 | + | templ_7745c5c3_Var94, templ_7745c5c3_Err = templ.JoinStringErrs(p.Actor) | |
| 1549 | 1748 | if templ_7745c5c3_Err != nil { | |
| 1550 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 226, Col: 16} | |
| 1749 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 247, Col: 16} | |
| 1551 | 1750 | } | |
| 1552 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var83)) | |
| 1751 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var94)) | |
| 1553 | 1752 | if templ_7745c5c3_Err != nil { | |
| 1554 | 1753 | return templ_7745c5c3_Err | |
| 1555 | 1754 | } | |
| 1556 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 127, "</dd><dt>attempt</dt><dd>") | |
| 1755 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 145, "</dd><dt>attempt</dt><dd>") | |
| 1557 | 1756 | if templ_7745c5c3_Err != nil { | |
| 1558 | 1757 | return templ_7745c5c3_Err | |
| 1559 | 1758 | } | |
| 1560 | - | var templ_7745c5c3_Var84 string | |
| 1561 | - | templ_7745c5c3_Var84, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(int(p.Attempt))) | |
| 1759 | + | var templ_7745c5c3_Var95 string | |
| 1760 | + | templ_7745c5c3_Var95, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(int(p.Attempt))) | |
| 1562 | 1761 | if templ_7745c5c3_Err != nil { | |
| 1563 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 228, Col: 29} | |
| 1762 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 249, Col: 29} | |
| 1564 | 1763 | } | |
| 1565 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var84)) | |
| 1764 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var95)) | |
| 1566 | 1765 | if templ_7745c5c3_Err != nil { | |
| 1567 | 1766 | return templ_7745c5c3_Err | |
| 1568 | 1767 | } | |
| 1569 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 128, " of ") | |
| 1768 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 146, " of ") | |
| 1570 | 1769 | if templ_7745c5c3_Err != nil { | |
| 1571 | 1770 | return templ_7745c5c3_Err | |
| 1572 | 1771 | } | |
| 1573 | - | var templ_7745c5c3_Var85 string | |
| 1574 | - | templ_7745c5c3_Var85, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(int(p.Latest))) | |
| 1772 | + | var templ_7745c5c3_Var96 string | |
| 1773 | + | templ_7745c5c3_Var96, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(int(p.Latest))) | |
| 1575 | 1774 | if templ_7745c5c3_Err != nil { | |
| 1576 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 228, Col: 56} | |
| 1775 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 249, Col: 56} | |
| 1577 | 1776 | } | |
| 1578 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var85)) | |
| 1777 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var96)) | |
| 1579 | 1778 | if templ_7745c5c3_Err != nil { | |
| 1580 | 1779 | return templ_7745c5c3_Err | |
| 1581 | 1780 | } | |
| 1582 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 129, "</dd></dl>") | |
| 1781 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 147, "</dd></dl>") | |
| 1583 | 1782 | if templ_7745c5c3_Err != nil { | |
| 1584 | 1783 | return templ_7745c5c3_Err | |
| 1585 | 1784 | } | |
| 1586 | 1785 | if len(p.Attempts) > 0 { | |
| 1587 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 130, "<ul class=\"attempts\">") | |
| 1786 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 148, "<ul class=\"attempts\">") | |
| 1588 | 1787 | if templ_7745c5c3_Err != nil { | |
| 1589 | 1788 | return templ_7745c5c3_Err | |
| 1590 | 1789 | } | |
| 1591 | 1790 | for _, a := range p.Attempts { | |
| 1592 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 131, "<li>") | |
| 1791 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 149, "<li>") | |
| 1593 | 1792 | if templ_7745c5c3_Err != nil { | |
| 1594 | 1793 | return templ_7745c5c3_Err | |
| 1595 | 1794 | } | |
| 1596 | 1795 | if a.Current { | |
| 1597 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 132, "<span aria-current=\"page\">") | |
| 1796 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 150, "<span aria-current=\"page\">") | |
| 1598 | 1797 | if templ_7745c5c3_Err != nil { | |
| 1599 | 1798 | return templ_7745c5c3_Err | |
| 1600 | 1799 | } | |
| 1601 | - | var templ_7745c5c3_Var86 string | |
| 1602 | - | templ_7745c5c3_Var86, templ_7745c5c3_Err = templ.JoinStringErrs(a.Label) | |
| 1800 | + | var templ_7745c5c3_Var97 string | |
| 1801 | + | templ_7745c5c3_Var97, templ_7745c5c3_Err = templ.JoinStringErrs(a.Label) | |
| 1603 | 1802 | if templ_7745c5c3_Err != nil { | |
| 1604 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 235, Col: 42} | |
| 1803 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 256, Col: 42} | |
| 1605 | 1804 | } | |
| 1606 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var86)) | |
| 1805 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var97)) | |
| 1607 | 1806 | if templ_7745c5c3_Err != nil { | |
| 1608 | 1807 | return templ_7745c5c3_Err | |
| 1609 | 1808 | } | |
| 1610 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 133, "</span>") | |
| 1809 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 151, "</span>") | |
| 1611 | 1810 | if templ_7745c5c3_Err != nil { | |
| 1612 | 1811 | return templ_7745c5c3_Err | |
| 1613 | 1812 | } | |
| 1614 | 1813 | } else { | |
| 1615 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 134, "<a href=\"") | |
| 1814 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 152, "<a href=\"") | |
| 1616 | 1815 | if templ_7745c5c3_Err != nil { | |
| 1617 | 1816 | return templ_7745c5c3_Err | |
| 1618 | 1817 | } | |
| 1619 | - | var templ_7745c5c3_Var87 templ.SafeURL | |
| 1620 | - | templ_7745c5c3_Var87, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.Href)) | |
| 1818 | + | var templ_7745c5c3_Var98 templ.SafeURL | |
| 1819 | + | templ_7745c5c3_Var98, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.Href)) | |
| 1621 | 1820 | if templ_7745c5c3_Err != nil { | |
| 1622 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 237, Col: 38} | |
| 1821 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 258, Col: 38} | |
| 1623 | 1822 | } | |
| 1624 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var87)) | |
| 1823 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var98)) | |
| 1625 | 1824 | if templ_7745c5c3_Err != nil { | |
| 1626 | 1825 | return templ_7745c5c3_Err | |
| 1627 | 1826 | } | |
| 1628 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 135, "\">") | |
| 1827 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 153, "\">") | |
| 1629 | 1828 | if templ_7745c5c3_Err != nil { | |
| 1630 | 1829 | return templ_7745c5c3_Err | |
| 1631 | 1830 | } | |
| 1632 | - | var templ_7745c5c3_Var88 string | |
| 1633 | - | templ_7745c5c3_Var88, templ_7745c5c3_Err = templ.JoinStringErrs(a.Label) | |
| 1831 | + | var templ_7745c5c3_Var99 string | |
| 1832 | + | templ_7745c5c3_Var99, templ_7745c5c3_Err = templ.JoinStringErrs(a.Label) | |
| 1634 | 1833 | if templ_7745c5c3_Err != nil { | |
| 1635 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 237, Col: 50} | |
| 1834 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 258, Col: 50} | |
| 1636 | 1835 | } | |
| 1637 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var88)) | |
| 1836 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var99)) | |
| 1638 | 1837 | if templ_7745c5c3_Err != nil { | |
| 1639 | 1838 | return templ_7745c5c3_Err | |
| 1640 | 1839 | } | |
| 1641 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 136, "</a>") | |
| 1840 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 154, "</a>") | |
| 1642 | 1841 | if templ_7745c5c3_Err != nil { | |
| 1643 | 1842 | return templ_7745c5c3_Err | |
| 1644 | 1843 | } | |
| 1645 | 1844 | } | |
| 1646 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 137, "</li>") | |
| 1845 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 155, "</li>") | |
| 1647 | 1846 | if templ_7745c5c3_Err != nil { | |
| 1648 | 1847 | return templ_7745c5c3_Err | |
| 1649 | 1848 | } | |
| 1650 | 1849 | } | |
| 1651 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 138, "</ul>") | |
| 1850 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 156, "</ul>") | |
| 1652 | 1851 | if templ_7745c5c3_Err != nil { | |
| 1653 | 1852 | return templ_7745c5c3_Err | |
| 1654 | 1853 | } | |
| 1655 | 1854 | } | |
| 1656 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 139, "</section>") | |
| 1855 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 157, "</section>") | |
| 1657 | 1856 | if templ_7745c5c3_Err != nil { | |
| 1658 | 1857 | return templ_7745c5c3_Err | |
| 1659 | 1858 | } | |
| 1660 | 1859 | if p.CancelAction != "" || p.RerunAction != "" { | |
| 1661 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 140, "<section aria-labelledby=\"r-act\" class=\"decide\"><h2 id=\"r-act\">Actions</h2><div class=\"d-btns\">") | |
| 1860 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 158, "<section aria-labelledby=\"r-act\" class=\"decide\"><h2 id=\"r-act\">Actions</h2><div class=\"d-btns\">") | |
| 1662 | 1861 | if templ_7745c5c3_Err != nil { | |
| 1663 | 1862 | return templ_7745c5c3_Err | |
| 1664 | 1863 | } | |
| 1665 | 1864 | if p.CancelAction != "" { | |
| 1666 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 141, "<form method=\"post\" action=\"") | |
| 1865 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 159, "<form method=\"post\" action=\"") | |
| 1667 | 1866 | if templ_7745c5c3_Err != nil { | |
| 1668 | 1867 | return templ_7745c5c3_Err | |
| 1669 | 1868 | } | |
| 1670 | - | var templ_7745c5c3_Var89 templ.SafeURL | |
| 1671 | - | templ_7745c5c3_Var89, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.CancelAction)) | |
| 1869 | + | var templ_7745c5c3_Var100 templ.SafeURL | |
| 1870 | + | templ_7745c5c3_Var100, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.CancelAction)) | |
| 1672 | 1871 | if templ_7745c5c3_Err != nil { | |
| 1673 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 249, Col: 63} | |
| 1872 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 270, Col: 63} | |
| 1674 | 1873 | } | |
| 1675 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var89)) | |
| 1874 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var100)) | |
| 1676 | 1875 | if templ_7745c5c3_Err != nil { | |
| 1677 | 1876 | return templ_7745c5c3_Err | |
| 1678 | 1877 | } | |
| 1679 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 142, "\"><button type=\"submit\" class=\"btn\">Cancel run</button></form>") | |
| 1878 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 160, "\"><button type=\"submit\" class=\"btn\">Cancel run</button></form>") | |
| 1680 | 1879 | if templ_7745c5c3_Err != nil { | |
| 1681 | 1880 | return templ_7745c5c3_Err | |
| 1682 | 1881 | } | |
| 1683 | 1882 | } | |
| 1684 | 1883 | if p.RerunAction != "" { | |
| 1685 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 143, "<form method=\"post\" action=\"") | |
| 1884 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 161, "<form method=\"post\" action=\"") | |
| 1686 | 1885 | if templ_7745c5c3_Err != nil { | |
| 1687 | 1886 | return templ_7745c5c3_Err | |
| 1688 | 1887 | } | |
| 1689 | - | var templ_7745c5c3_Var90 templ.SafeURL | |
| 1690 | - | templ_7745c5c3_Var90, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RerunAction)) | |
| 1888 | + | var templ_7745c5c3_Var101 templ.SafeURL | |
| 1889 | + | templ_7745c5c3_Var101, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RerunAction)) | |
| 1691 | 1890 | if templ_7745c5c3_Err != nil { | |
| 1692 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 252, Col: 62} | |
| 1891 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 273, Col: 62} | |
| 1693 | 1892 | } | |
| 1694 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var90)) | |
| 1893 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var101)) | |
| 1695 | 1894 | if templ_7745c5c3_Err != nil { | |
| 1696 | 1895 | return templ_7745c5c3_Err | |
| 1697 | 1896 | } | |
| 1698 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 144, "\"><button type=\"submit\" class=\"btn primary\">Re-run all jobs</button></form>") | |
| 1897 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 162, "\"><button type=\"submit\" class=\"btn primary\">Re-run all jobs</button></form>") | |
| 1699 | 1898 | if templ_7745c5c3_Err != nil { | |
| 1700 | 1899 | return templ_7745c5c3_Err | |
| 1701 | 1900 | } | |
| 1702 | 1901 | } | |
| 1703 | 1902 | if p.CanRerunFailed { | |
| 1704 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 145, "<form method=\"post\" action=\"") | |
| 1903 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 163, "<form method=\"post\" action=\"") | |
| 1705 | 1904 | if templ_7745c5c3_Err != nil { | |
| 1706 | 1905 | return templ_7745c5c3_Err | |
| 1707 | 1906 | } | |
| 1708 | - | var templ_7745c5c3_Var91 templ.SafeURL | |
| 1709 | - | templ_7745c5c3_Var91, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RerunFailedAction)) | |
| 1907 | + | var templ_7745c5c3_Var102 templ.SafeURL | |
| 1908 | + | templ_7745c5c3_Var102, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RerunFailedAction)) | |
| 1710 | 1909 | if templ_7745c5c3_Err != nil { | |
| 1711 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 255, Col: 68} | |
| 1910 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 276, Col: 68} | |
| 1712 | 1911 | } | |
| 1713 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var91)) | |
| 1912 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var102)) | |
| 1714 | 1913 | if templ_7745c5c3_Err != nil { | |
| 1715 | 1914 | return templ_7745c5c3_Err | |
| 1716 | 1915 | } | |
| 1717 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 146, "\"><button type=\"submit\" class=\"btn\">Re-run failed jobs</button></form>") | |
| 1916 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 164, "\"><button type=\"submit\" class=\"btn\">Re-run failed jobs</button></form>") | |
| 1718 | 1917 | if templ_7745c5c3_Err != nil { | |
| 1719 | 1918 | return templ_7745c5c3_Err | |
| 1720 | 1919 | } | |
| 1721 | 1920 | } | |
| 1722 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 147, "</div></section>") | |
| 1921 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 165, "</div></section>") | |
| 1723 | 1922 | if templ_7745c5c3_Err != nil { | |
| 1724 | 1923 | return templ_7745c5c3_Err | |
| 1725 | 1924 | } | |
| @@ -1746,25 +1945,25 @@ func JobHead(j JobRow, total int64) templ.Component { | |||
| 1746 | 1945 | }() | |
| 1747 | 1946 | } | |
| 1748 | 1947 | ctx = templ.InitializeContext(ctx) | |
| 1749 | - | templ_7745c5c3_Var92 := templ.GetChildren(ctx) | |
| 1750 | - | if templ_7745c5c3_Var92 == nil { | |
| 1751 | - | templ_7745c5c3_Var92 = templ.NopComponent | |
| 1948 | + | templ_7745c5c3_Var103 := templ.GetChildren(ctx) | |
| 1949 | + | if templ_7745c5c3_Var103 == nil { | |
| 1950 | + | templ_7745c5c3_Var103 = templ.NopComponent | |
| 1752 | 1951 | } | |
| 1753 | 1952 | ctx = templ.ClearChildren(ctx) | |
| 1754 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 148, "<div id=\"job-head\" data-total=\"") | |
| 1953 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 166, "<div id=\"job-head\" data-total=\"") | |
| 1755 | 1954 | if templ_7745c5c3_Err != nil { | |
| 1756 | 1955 | return templ_7745c5c3_Err | |
| 1757 | 1956 | } | |
| 1758 | - | var templ_7745c5c3_Var93 string | |
| 1759 | - | templ_7745c5c3_Var93, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(total)) | |
| 1957 | + | var templ_7745c5c3_Var104 string | |
| 1958 | + | templ_7745c5c3_Var104, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(total)) | |
| 1760 | 1959 | if templ_7745c5c3_Err != nil { | |
| 1761 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 265, Col: 46} | |
| 1960 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 286, Col: 46} | |
| 1762 | 1961 | } | |
| 1763 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var93) | |
| 1962 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var104) | |
| 1764 | 1963 | if templ_7745c5c3_Err != nil { | |
| 1765 | 1964 | return templ_7745c5c3_Err | |
| 1766 | 1965 | } | |
| 1767 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 149, "\"><h2 class=\"run-h\">") | |
| 1966 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 167, "\"><h2 class=\"run-h\">") | |
| 1768 | 1967 | if templ_7745c5c3_Err != nil { | |
| 1769 | 1968 | return templ_7745c5c3_Err | |
| 1770 | 1969 | } | |
| @@ -1772,74 +1971,74 @@ func JobHead(j JobRow, total int64) templ.Component { | |||
| 1772 | 1971 | if templ_7745c5c3_Err != nil { | |
| 1773 | 1972 | return templ_7745c5c3_Err | |
| 1774 | 1973 | } | |
| 1775 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 150, "<span>") | |
| 1974 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 168, "<span>") | |
| 1776 | 1975 | if templ_7745c5c3_Err != nil { | |
| 1777 | 1976 | return templ_7745c5c3_Err | |
| 1778 | 1977 | } | |
| 1779 | - | var templ_7745c5c3_Var94 string | |
| 1780 | - | templ_7745c5c3_Var94, templ_7745c5c3_Err = templ.JoinStringErrs(j.Name) | |
| 1978 | + | var templ_7745c5c3_Var105 string | |
| 1979 | + | templ_7745c5c3_Var105, templ_7745c5c3_Err = templ.JoinStringErrs(j.Name) | |
| 1781 | 1980 | if templ_7745c5c3_Err != nil { | |
| 1782 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 266, Col: 61} | |
| 1981 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 287, Col: 61} | |
| 1783 | 1982 | } | |
| 1784 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var94)) | |
| 1983 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var105)) | |
| 1785 | 1984 | if templ_7745c5c3_Err != nil { | |
| 1786 | 1985 | return templ_7745c5c3_Err | |
| 1787 | 1986 | } | |
| 1788 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 151, "</span> <span class=\"dim\">") | |
| 1987 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 169, "</span> <span class=\"dim\">") | |
| 1789 | 1988 | if templ_7745c5c3_Err != nil { | |
| 1790 | 1989 | return templ_7745c5c3_Err | |
| 1791 | 1990 | } | |
| 1792 | - | var templ_7745c5c3_Var95 string | |
| 1793 | - | templ_7745c5c3_Var95, templ_7745c5c3_Err = templ.JoinStringErrs(j.State) | |
| 1991 | + | var templ_7745c5c3_Var106 string | |
| 1992 | + | templ_7745c5c3_Var106, templ_7745c5c3_Err = templ.JoinStringErrs(j.State) | |
| 1794 | 1993 | if templ_7745c5c3_Err != nil { | |
| 1795 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 266, Col: 98} | |
| 1994 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 287, Col: 98} | |
| 1796 | 1995 | } | |
| 1797 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var95)) | |
| 1996 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var106)) | |
| 1798 | 1997 | if templ_7745c5c3_Err != nil { | |
| 1799 | 1998 | return templ_7745c5c3_Err | |
| 1800 | 1999 | } | |
| 1801 | - | var templ_7745c5c3_Var96 string | |
| 1802 | - | templ_7745c5c3_Var96, templ_7745c5c3_Err = templ.JoinStringErrs(" ") | |
| 2000 | + | var templ_7745c5c3_Var107 string | |
| 2001 | + | templ_7745c5c3_Var107, templ_7745c5c3_Err = templ.JoinStringErrs(" ") | |
| 1803 | 2002 | if templ_7745c5c3_Err != nil { | |
| 1804 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 266, Col: 105} | |
| 2003 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 287, Col: 105} | |
| 1805 | 2004 | } | |
| 1806 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var96)) | |
| 2005 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var107)) | |
| 1807 | 2006 | if templ_7745c5c3_Err != nil { | |
| 1808 | 2007 | return templ_7745c5c3_Err | |
| 1809 | 2008 | } | |
| 1810 | - | var templ_7745c5c3_Var97 string | |
| 1811 | - | templ_7745c5c3_Var97, templ_7745c5c3_Err = templ.JoinStringErrs(j.Duration) | |
| 2009 | + | var templ_7745c5c3_Var108 string | |
| 2010 | + | templ_7745c5c3_Var108, templ_7745c5c3_Err = templ.JoinStringErrs(j.Duration) | |
| 1812 | 2011 | if templ_7745c5c3_Err != nil { | |
| 1813 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 266, Col: 119} | |
| 2012 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 287, Col: 119} | |
| 1814 | 2013 | } | |
| 1815 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var97)) | |
| 2014 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var108)) | |
| 1816 | 2015 | if templ_7745c5c3_Err != nil { | |
| 1817 | 2016 | return templ_7745c5c3_Err | |
| 1818 | 2017 | } | |
| 1819 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 152, "</span></h2>") | |
| 2018 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 170, "</span></h2>") | |
| 1820 | 2019 | if templ_7745c5c3_Err != nil { | |
| 1821 | 2020 | return templ_7745c5c3_Err | |
| 1822 | 2021 | } | |
| 1823 | 2022 | if j.Error != "" { | |
| 1824 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 153, "<p class=\"job-err\">") | |
| 2023 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 171, "<p class=\"job-err\">") | |
| 1825 | 2024 | if templ_7745c5c3_Err != nil { | |
| 1826 | 2025 | return templ_7745c5c3_Err | |
| 1827 | 2026 | } | |
| 1828 | - | var templ_7745c5c3_Var98 string | |
| 1829 | - | templ_7745c5c3_Var98, templ_7745c5c3_Err = templ.JoinStringErrs(j.Error) | |
| 2027 | + | var templ_7745c5c3_Var109 string | |
| 2028 | + | templ_7745c5c3_Var109, templ_7745c5c3_Err = templ.JoinStringErrs(j.Error) | |
| 1830 | 2029 | if templ_7745c5c3_Err != nil { | |
| 1831 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 268, Col: 31} | |
| 2030 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 289, Col: 31} | |
| 1832 | 2031 | } | |
| 1833 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var98)) | |
| 2032 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var109)) | |
| 1834 | 2033 | if templ_7745c5c3_Err != nil { | |
| 1835 | 2034 | return templ_7745c5c3_Err | |
| 1836 | 2035 | } | |
| 1837 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 154, "</p>") | |
| 2036 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 172, "</p>") | |
| 1838 | 2037 | if templ_7745c5c3_Err != nil { | |
| 1839 | 2038 | return templ_7745c5c3_Err | |
| 1840 | 2039 | } | |
| 1841 | 2040 | } | |
| 1842 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 155, "</div>") | |
| 2041 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 173, "</div>") | |
| 1843 | 2042 | if templ_7745c5c3_Err != nil { | |
| 1844 | 2043 | return templ_7745c5c3_Err | |
| 1845 | 2044 | } | |
| @@ -1864,17 +2063,17 @@ func JobSteps(steps []StepView) templ.Component { | |||
| 1864 | 2063 | }() | |
| 1865 | 2064 | } | |
| 1866 | 2065 | ctx = templ.InitializeContext(ctx) | |
| 1867 | - | templ_7745c5c3_Var99 := templ.GetChildren(ctx) | |
| 1868 | - | if templ_7745c5c3_Var99 == nil { | |
| 1869 | - | templ_7745c5c3_Var99 = templ.NopComponent | |
| 2066 | + | templ_7745c5c3_Var110 := templ.GetChildren(ctx) | |
| 2067 | + | if templ_7745c5c3_Var110 == nil { | |
| 2068 | + | templ_7745c5c3_Var110 = templ.NopComponent | |
| 1870 | 2069 | } | |
| 1871 | 2070 | ctx = templ.ClearChildren(ctx) | |
| 1872 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 156, "<ol class=\"steps\" id=\"job-steps\">") | |
| 2071 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 174, "<ol class=\"steps\" id=\"job-steps\">") | |
| 1873 | 2072 | if templ_7745c5c3_Err != nil { | |
| 1874 | 2073 | return templ_7745c5c3_Err | |
| 1875 | 2074 | } | |
| 1876 | 2075 | for _, s := range steps { | |
| 1877 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 157, "<li>") | |
| 2076 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 175, "<li>") | |
| 1878 | 2077 | if templ_7745c5c3_Err != nil { | |
| 1879 | 2078 | return templ_7745c5c3_Err | |
| 1880 | 2079 | } | |
| @@ -1883,74 +2082,74 @@ func JobSteps(steps []StepView) templ.Component { | |||
| 1883 | 2082 | return templ_7745c5c3_Err | |
| 1884 | 2083 | } | |
| 1885 | 2084 | if s.LogEnd > s.LogStart { | |
| 1886 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 158, "<a href=\"") | |
| 2085 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 176, "<a href=\"") | |
| 1887 | 2086 | if templ_7745c5c3_Err != nil { | |
| 1888 | 2087 | return templ_7745c5c3_Err | |
| 1889 | 2088 | } | |
| 1890 | - | var templ_7745c5c3_Var100 templ.SafeURL | |
| 1891 | - | templ_7745c5c3_Var100, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL("#L" + itoa64(s.LogStart))) | |
| 2089 | + | var templ_7745c5c3_Var111 templ.SafeURL | |
| 2090 | + | templ_7745c5c3_Var111, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL("#L" + itoa64(s.LogStart))) | |
| 1892 | 2091 | if templ_7745c5c3_Err != nil { | |
| 1893 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 280, Col: 55} | |
| 2092 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 301, Col: 55} | |
| 1894 | 2093 | } | |
| 1895 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var100)) | |
| 2094 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var111)) | |
| 1896 | 2095 | if templ_7745c5c3_Err != nil { | |
| 1897 | 2096 | return templ_7745c5c3_Err | |
| 1898 | 2097 | } | |
| 1899 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 159, "\">") | |
| 2098 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 177, "\">") | |
| 1900 | 2099 | if templ_7745c5c3_Err != nil { | |
| 1901 | 2100 | return templ_7745c5c3_Err | |
| 1902 | 2101 | } | |
| 1903 | - | var templ_7745c5c3_Var101 string | |
| 1904 | - | templ_7745c5c3_Var101, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) | |
| 2102 | + | var templ_7745c5c3_Var112 string | |
| 2103 | + | templ_7745c5c3_Var112, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) | |
| 1905 | 2104 | if templ_7745c5c3_Err != nil { | |
| 1906 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 280, Col: 66} | |
| 2105 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 301, Col: 66} | |
| 1907 | 2106 | } | |
| 1908 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var101)) | |
| 2107 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var112)) | |
| 1909 | 2108 | if templ_7745c5c3_Err != nil { | |
| 1910 | 2109 | return templ_7745c5c3_Err | |
| 1911 | 2110 | } | |
| 1912 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 160, "</a> ") | |
| 2111 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 178, "</a> ") | |
| 1913 | 2112 | if templ_7745c5c3_Err != nil { | |
| 1914 | 2113 | return templ_7745c5c3_Err | |
| 1915 | 2114 | } | |
| 1916 | 2115 | } else { | |
| 1917 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 161, "<span>") | |
| 2116 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 179, "<span>") | |
| 1918 | 2117 | if templ_7745c5c3_Err != nil { | |
| 1919 | 2118 | return templ_7745c5c3_Err | |
| 1920 | 2119 | } | |
| 1921 | - | var templ_7745c5c3_Var102 string | |
| 1922 | - | templ_7745c5c3_Var102, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) | |
| 2120 | + | var templ_7745c5c3_Var113 string | |
| 2121 | + | templ_7745c5c3_Var113, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) | |
| 1923 | 2122 | if templ_7745c5c3_Err != nil { | |
| 1924 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 282, Col: 19} | |
| 2123 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 303, Col: 19} | |
| 1925 | 2124 | } | |
| 1926 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var102)) | |
| 2125 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var113)) | |
| 1927 | 2126 | if templ_7745c5c3_Err != nil { | |
| 1928 | 2127 | return templ_7745c5c3_Err | |
| 1929 | 2128 | } | |
| 1930 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 162, "</span> ") | |
| 2129 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 180, "</span> ") | |
| 1931 | 2130 | if templ_7745c5c3_Err != nil { | |
| 1932 | 2131 | return templ_7745c5c3_Err | |
| 1933 | 2132 | } | |
| 1934 | 2133 | } | |
| 1935 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 163, "<span class=\"dim\">") | |
| 2134 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 181, "<span class=\"dim\">") | |
| 1936 | 2135 | if templ_7745c5c3_Err != nil { | |
| 1937 | 2136 | return templ_7745c5c3_Err | |
| 1938 | 2137 | } | |
| 1939 | - | var templ_7745c5c3_Var103 string | |
| 1940 | - | templ_7745c5c3_Var103, templ_7745c5c3_Err = templ.JoinStringErrs(s.Duration) | |
| 2138 | + | var templ_7745c5c3_Var114 string | |
| 2139 | + | templ_7745c5c3_Var114, templ_7745c5c3_Err = templ.JoinStringErrs(s.Duration) | |
| 1941 | 2140 | if templ_7745c5c3_Err != nil { | |
| 1942 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 284, Col: 34} | |
| 2141 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 305, Col: 34} | |
| 1943 | 2142 | } | |
| 1944 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var103)) | |
| 2143 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var114)) | |
| 1945 | 2144 | if templ_7745c5c3_Err != nil { | |
| 1946 | 2145 | return templ_7745c5c3_Err | |
| 1947 | 2146 | } | |
| 1948 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 164, "</span></li>") | |
| 2147 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 182, "</span></li>") | |
| 1949 | 2148 | if templ_7745c5c3_Err != nil { | |
| 1950 | 2149 | return templ_7745c5c3_Err | |
| 1951 | 2150 | } | |
| 1952 | 2151 | } | |
| 1953 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 165, "</ol>") | |
| 2152 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 183, "</ol>") | |
| 1954 | 2153 | if templ_7745c5c3_Err != nil { | |
| 1955 | 2154 | return templ_7745c5c3_Err | |
| 1956 | 2155 | } | |
| @@ -1974,12 +2173,12 @@ func Job(l Layout, p JobPage) templ.Component { | |||
| 1974 | 2173 | }() | |
| 1975 | 2174 | } | |
| 1976 | 2175 | ctx = templ.InitializeContext(ctx) | |
| 1977 | - | templ_7745c5c3_Var104 := templ.GetChildren(ctx) | |
| 1978 | - | if templ_7745c5c3_Var104 == nil { | |
| 1979 | - | templ_7745c5c3_Var104 = templ.NopComponent | |
| 2176 | + | templ_7745c5c3_Var115 := templ.GetChildren(ctx) | |
| 2177 | + | if templ_7745c5c3_Var115 == nil { | |
| 2178 | + | templ_7745c5c3_Var115 = templ.NopComponent | |
| 1980 | 2179 | } | |
| 1981 | 2180 | ctx = templ.ClearChildren(ctx) | |
| 1982 | - | templ_7745c5c3_Var105 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | |
| 2181 | + | templ_7745c5c3_Var116 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | |
| 1983 | 2182 | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | |
| 1984 | 2183 | templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W) | |
| 1985 | 2184 | if !templ_7745c5c3_IsBuffer { | |
| @@ -1995,7 +2194,7 @@ func Job(l Layout, p JobPage) templ.Component { | |||
| 1995 | 2194 | if templ_7745c5c3_Err != nil { | |
| 1996 | 2195 | return templ_7745c5c3_Err | |
| 1997 | 2196 | } | |
| 1998 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 166, " ") | |
| 2197 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 184, " ") | |
| 1999 | 2198 | if templ_7745c5c3_Err != nil { | |
| 2000 | 2199 | return templ_7745c5c3_Err | |
| 2001 | 2200 | } | |
| @@ -2003,7 +2202,7 @@ func Job(l Layout, p JobPage) templ.Component { | |||
| 2003 | 2202 | if templ_7745c5c3_Err != nil { | |
| 2004 | 2203 | return templ_7745c5c3_Err | |
| 2005 | 2204 | } | |
| 2006 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 167, " ") | |
| 2205 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 185, " ") | |
| 2007 | 2206 | if templ_7745c5c3_Err != nil { | |
| 2008 | 2207 | return templ_7745c5c3_Err | |
| 2009 | 2208 | } | |
| @@ -2011,111 +2210,111 @@ func Job(l Layout, p JobPage) templ.Component { | |||
| 2011 | 2210 | if templ_7745c5c3_Err != nil { | |
| 2012 | 2211 | return templ_7745c5c3_Err | |
| 2013 | 2212 | } | |
| 2014 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 168, " <div id=\"job-log\" class=\"joblog\" data-total=\"") | |
| 2213 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 186, " <div id=\"job-log\" class=\"joblog\" data-total=\"") | |
| 2015 | 2214 | if templ_7745c5c3_Err != nil { | |
| 2016 | 2215 | return templ_7745c5c3_Err | |
| 2017 | 2216 | } | |
| 2018 | - | var templ_7745c5c3_Var106 string | |
| 2019 | - | templ_7745c5c3_Var106, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.Total)) | |
| 2217 | + | var templ_7745c5c3_Var117 string | |
| 2218 | + | templ_7745c5c3_Var117, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.Total)) | |
| 2020 | 2219 | if templ_7745c5c3_Err != nil { | |
| 2021 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 295, Col: 63} | |
| 2220 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 316, Col: 63} | |
| 2022 | 2221 | } | |
| 2023 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var106) | |
| 2222 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var117) | |
| 2024 | 2223 | if templ_7745c5c3_Err != nil { | |
| 2025 | 2224 | return templ_7745c5c3_Err | |
| 2026 | 2225 | } | |
| 2027 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 169, "\"") | |
| 2226 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 187, "\"") | |
| 2028 | 2227 | if templ_7745c5c3_Err != nil { | |
| 2029 | 2228 | return templ_7745c5c3_Err | |
| 2030 | 2229 | } | |
| 2031 | 2230 | if p.Follow { | |
| 2032 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 170, " data-follow") | |
| 2231 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 188, " data-follow") | |
| 2033 | 2232 | if templ_7745c5c3_Err != nil { | |
| 2034 | 2233 | return templ_7745c5c3_Err | |
| 2035 | 2234 | } | |
| 2036 | 2235 | } | |
| 2037 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 171, " data-stream=\"") | |
| 2236 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 189, " data-stream=\"") | |
| 2038 | 2237 | if templ_7745c5c3_Err != nil { | |
| 2039 | 2238 | return templ_7745c5c3_Err | |
| 2040 | 2239 | } | |
| 2041 | - | var templ_7745c5c3_Var107 string | |
| 2042 | - | templ_7745c5c3_Var107, templ_7745c5c3_Err = templ.ResolveAttributeValue(p.StreamHref) | |
| 2240 | + | var templ_7745c5c3_Var118 string | |
| 2241 | + | templ_7745c5c3_Var118, templ_7745c5c3_Err = templ.ResolveAttributeValue(p.StreamHref) | |
| 2043 | 2242 | if templ_7745c5c3_Err != nil { | |
| 2044 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 295, Col: 118} | |
| 2243 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 316, Col: 118} | |
| 2045 | 2244 | } | |
| 2046 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var107) | |
| 2245 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var118) | |
| 2047 | 2246 | if templ_7745c5c3_Err != nil { | |
| 2048 | 2247 | return templ_7745c5c3_Err | |
| 2049 | 2248 | } | |
| 2050 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 172, "\" data-next=\"") | |
| 2249 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 190, "\" data-next=\"") | |
| 2051 | 2250 | if templ_7745c5c3_Err != nil { | |
| 2052 | 2251 | return templ_7745c5c3_Err | |
| 2053 | 2252 | } | |
| 2054 | - | var templ_7745c5c3_Var108 string | |
| 2055 | - | templ_7745c5c3_Var108, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.From + int64(len(p.Lines)))) | |
| 2253 | + | var templ_7745c5c3_Var119 string | |
| 2254 | + | templ_7745c5c3_Var119, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.From + int64(len(p.Lines)))) | |
| 2056 | 2255 | if templ_7745c5c3_Err != nil { | |
| 2057 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 295, Col: 169} | |
| 2256 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 316, Col: 169} | |
| 2058 | 2257 | } | |
| 2059 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var108) | |
| 2258 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var119) | |
| 2060 | 2259 | if templ_7745c5c3_Err != nil { | |
| 2061 | 2260 | return templ_7745c5c3_Err | |
| 2062 | 2261 | } | |
| 2063 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 173, "\">") | |
| 2262 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 191, "\">") | |
| 2064 | 2263 | if templ_7745c5c3_Err != nil { | |
| 2065 | 2264 | return templ_7745c5c3_Err | |
| 2066 | 2265 | } | |
| 2067 | 2266 | if p.Note != "" { | |
| 2068 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 174, "<p class=\"dim\">") | |
| 2267 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 192, "<p class=\"dim\">") | |
| 2069 | 2268 | if templ_7745c5c3_Err != nil { | |
| 2070 | 2269 | return templ_7745c5c3_Err | |
| 2071 | 2270 | } | |
| 2072 | - | var templ_7745c5c3_Var109 string | |
| 2073 | - | templ_7745c5c3_Var109, templ_7745c5c3_Err = templ.JoinStringErrs(p.Note) | |
| 2271 | + | var templ_7745c5c3_Var120 string | |
| 2272 | + | templ_7745c5c3_Var120, templ_7745c5c3_Err = templ.JoinStringErrs(p.Note) | |
| 2074 | 2273 | if templ_7745c5c3_Err != nil { | |
| 2075 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 297, Col: 27} | |
| 2274 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 318, Col: 27} | |
| 2076 | 2275 | } | |
| 2077 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var109)) | |
| 2276 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var120)) | |
| 2078 | 2277 | if templ_7745c5c3_Err != nil { | |
| 2079 | 2278 | return templ_7745c5c3_Err | |
| 2080 | 2279 | } | |
| 2081 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 175, "</p>") | |
| 2280 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 193, "</p>") | |
| 2082 | 2281 | if templ_7745c5c3_Err != nil { | |
| 2083 | 2282 | return templ_7745c5c3_Err | |
| 2084 | 2283 | } | |
| 2085 | 2284 | } | |
| 2086 | 2285 | if p.Prev != "" { | |
| 2087 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 176, "<p class=\"more\"><a href=\"") | |
| 2286 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 194, "<p class=\"more\"><a href=\"") | |
| 2088 | 2287 | if templ_7745c5c3_Err != nil { | |
| 2089 | 2288 | return templ_7745c5c3_Err | |
| 2090 | 2289 | } | |
| 2091 | - | var templ_7745c5c3_Var110 templ.SafeURL | |
| 2092 | - | templ_7745c5c3_Var110, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.Prev)) | |
| 2290 | + | var templ_7745c5c3_Var121 templ.SafeURL | |
| 2291 | + | templ_7745c5c3_Var121, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.Prev)) | |
| 2093 | 2292 | if templ_7745c5c3_Err != nil { | |
| 2094 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 300, Col: 51} | |
| 2293 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 321, Col: 51} | |
| 2095 | 2294 | } | |
| 2096 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var110)) | |
| 2295 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var121)) | |
| 2097 | 2296 | if templ_7745c5c3_Err != nil { | |
| 2098 | 2297 | return templ_7745c5c3_Err | |
| 2099 | 2298 | } | |
| 2100 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 177, "\" rel=\"prev\">earlier lines</a></p>") | |
| 2299 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 195, "\" rel=\"prev\">earlier lines</a></p>") | |
| 2101 | 2300 | if templ_7745c5c3_Err != nil { | |
| 2102 | 2301 | return templ_7745c5c3_Err | |
| 2103 | 2302 | } | |
| 2104 | 2303 | } | |
| 2105 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 178, "<ol class=\"log\" start=\"") | |
| 2304 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 196, "<ol class=\"log\" start=\"") | |
| 2106 | 2305 | if templ_7745c5c3_Err != nil { | |
| 2107 | 2306 | return templ_7745c5c3_Err | |
| 2108 | 2307 | } | |
| 2109 | - | var templ_7745c5c3_Var111 string | |
| 2110 | - | templ_7745c5c3_Var111, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.From + 1)) | |
| 2308 | + | var templ_7745c5c3_Var122 string | |
| 2309 | + | templ_7745c5c3_Var122, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.From + 1)) | |
| 2111 | 2310 | if templ_7745c5c3_Err != nil { | |
| 2112 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 302, Col: 45} | |
| 2311 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 323, Col: 45} | |
| 2113 | 2312 | } | |
| 2114 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var111) | |
| 2313 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var122) | |
| 2115 | 2314 | if templ_7745c5c3_Err != nil { | |
| 2116 | 2315 | return templ_7745c5c3_Err | |
| 2117 | 2316 | } | |
| 2118 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 179, "\">") | |
| 2317 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 197, "\">") | |
| 2119 | 2318 | if templ_7745c5c3_Err != nil { | |
| 2120 | 2319 | return templ_7745c5c3_Err | |
| 2121 | 2320 | } | |
| @@ -2125,36 +2324,36 @@ func Job(l Layout, p JobPage) templ.Component { | |||
| 2125 | 2324 | return templ_7745c5c3_Err | |
| 2126 | 2325 | } | |
| 2127 | 2326 | } | |
| 2128 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 180, "</ol>") | |
| 2327 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 198, "</ol>") | |
| 2129 | 2328 | if templ_7745c5c3_Err != nil { | |
| 2130 | 2329 | return templ_7745c5c3_Err | |
| 2131 | 2330 | } | |
| 2132 | 2331 | if p.Next != "" { | |
| 2133 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 181, "<p class=\"more\"><a href=\"") | |
| 2332 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 199, "<p class=\"more\"><a href=\"") | |
| 2134 | 2333 | if templ_7745c5c3_Err != nil { | |
| 2135 | 2334 | return templ_7745c5c3_Err | |
| 2136 | 2335 | } | |
| 2137 | - | var templ_7745c5c3_Var112 templ.SafeURL | |
| 2138 | - | templ_7745c5c3_Var112, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.Next)) | |
| 2336 | + | var templ_7745c5c3_Var123 templ.SafeURL | |
| 2337 | + | templ_7745c5c3_Var123, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.Next)) | |
| 2139 | 2338 | if templ_7745c5c3_Err != nil { | |
| 2140 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 308, Col: 51} | |
| 2339 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 329, Col: 51} | |
| 2141 | 2340 | } | |
| 2142 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var112)) | |
| 2341 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var123)) | |
| 2143 | 2342 | if templ_7745c5c3_Err != nil { | |
| 2144 | 2343 | return templ_7745c5c3_Err | |
| 2145 | 2344 | } | |
| 2146 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 182, "\" rel=\"next\">more lines</a></p>") | |
| 2345 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 200, "\" rel=\"next\">more lines</a></p>") | |
| 2147 | 2346 | if templ_7745c5c3_Err != nil { | |
| 2148 | 2347 | return templ_7745c5c3_Err | |
| 2149 | 2348 | } | |
| 2150 | 2349 | } | |
| 2151 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 183, "</div>") | |
| 2350 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 201, "</div>") | |
| 2152 | 2351 | if templ_7745c5c3_Err != nil { | |
| 2153 | 2352 | return templ_7745c5c3_Err | |
| 2154 | 2353 | } | |
| 2155 | 2354 | return nil | |
| 2156 | 2355 | }) | |
| 2157 | - | templ_7745c5c3_Err = Shell(l, jobRail(p)).Render(templ.WithChildren(ctx, templ_7745c5c3_Var105), templ_7745c5c3_Buffer) | |
| 2356 | + | templ_7745c5c3_Err = Shell(l, jobRail(p)).Render(templ.WithChildren(ctx, templ_7745c5c3_Var116), templ_7745c5c3_Buffer) | |
| 2158 | 2357 | if templ_7745c5c3_Err != nil { | |
| 2159 | 2358 | return templ_7745c5c3_Err | |
| 2160 | 2359 | } | |
| @@ -2180,92 +2379,92 @@ func LogLine(ln LogLineView) templ.Component { | |||
| 2180 | 2379 | }() | |
| 2181 | 2380 | } | |
| 2182 | 2381 | ctx = templ.InitializeContext(ctx) | |
| 2183 | - | templ_7745c5c3_Var113 := templ.GetChildren(ctx) | |
| 2184 | - | if templ_7745c5c3_Var113 == nil { | |
| 2185 | - | templ_7745c5c3_Var113 = templ.NopComponent | |
| 2382 | + | templ_7745c5c3_Var124 := templ.GetChildren(ctx) | |
| 2383 | + | if templ_7745c5c3_Var124 == nil { | |
| 2384 | + | templ_7745c5c3_Var124 = templ.NopComponent | |
| 2186 | 2385 | } | |
| 2187 | 2386 | ctx = templ.ClearChildren(ctx) | |
| 2188 | - | var templ_7745c5c3_Var114 = []any{logClass(ln)} | |
| 2189 | - | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var114...) | |
| 2387 | + | var templ_7745c5c3_Var125 = []any{logClass(ln)} | |
| 2388 | + | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var125...) | |
| 2190 | 2389 | if templ_7745c5c3_Err != nil { | |
| 2191 | 2390 | return templ_7745c5c3_Err | |
| 2192 | 2391 | } | |
| 2193 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 184, "<li id=\"") | |
| 2392 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 202, "<li id=\"") | |
| 2194 | 2393 | if templ_7745c5c3_Err != nil { | |
| 2195 | 2394 | return templ_7745c5c3_Err | |
| 2196 | 2395 | } | |
| 2197 | - | var templ_7745c5c3_Var115 string | |
| 2198 | - | templ_7745c5c3_Var115, templ_7745c5c3_Err = templ.ResolveAttributeValue("L" + itoa64(ln.N)) | |
| 2396 | + | var templ_7745c5c3_Var126 string | |
| 2397 | + | templ_7745c5c3_Var126, templ_7745c5c3_Err = templ.ResolveAttributeValue("L" + itoa64(ln.N)) | |
| 2199 | 2398 | if templ_7745c5c3_Err != nil { | |
| 2200 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 317, Col: 28} | |
| 2399 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 338, Col: 28} | |
| 2201 | 2400 | } | |
| 2202 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var115) | |
| 2401 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var126) | |
| 2203 | 2402 | if templ_7745c5c3_Err != nil { | |
| 2204 | 2403 | return templ_7745c5c3_Err | |
| 2205 | 2404 | } | |
| 2206 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 185, "\" class=\"") | |
| 2405 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 203, "\" class=\"") | |
| 2207 | 2406 | if templ_7745c5c3_Err != nil { | |
| 2208 | 2407 | return templ_7745c5c3_Err | |
| 2209 | 2408 | } | |
| 2210 | - | var templ_7745c5c3_Var116 string | |
| 2211 | - | templ_7745c5c3_Var116, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var114).String()) | |
| 2409 | + | var templ_7745c5c3_Var127 string | |
| 2410 | + | templ_7745c5c3_Var127, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var125).String()) | |
| 2212 | 2411 | if templ_7745c5c3_Err != nil { | |
| 2213 | 2412 | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 1, Col: 0} | |
| 2214 | 2413 | } | |
| 2215 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var116) | |
| 2414 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var127) | |
| 2216 | 2415 | if templ_7745c5c3_Err != nil { | |
| 2217 | 2416 | return templ_7745c5c3_Err | |
| 2218 | 2417 | } | |
| 2219 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 186, "\" data-step=\"") | |
| 2418 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 204, "\" data-step=\"") | |
| 2220 | 2419 | if templ_7745c5c3_Err != nil { | |
| 2221 | 2420 | return templ_7745c5c3_Err | |
| 2222 | 2421 | } | |
| 2223 | - | var templ_7745c5c3_Var117 string | |
| 2224 | - | templ_7745c5c3_Var117, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa(int(ln.Step))) | |
| 2422 | + | var templ_7745c5c3_Var128 string | |
| 2423 | + | templ_7745c5c3_Var128, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa(int(ln.Step))) | |
| 2225 | 2424 | if templ_7745c5c3_Err != nil { | |
| 2226 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 317, Col: 84} | |
| 2425 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 338, Col: 84} | |
| 2227 | 2426 | } | |
| 2228 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var117) | |
| 2427 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var128) | |
| 2229 | 2428 | if templ_7745c5c3_Err != nil { | |
| 2230 | 2429 | return templ_7745c5c3_Err | |
| 2231 | 2430 | } | |
| 2232 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 187, "\"") | |
| 2431 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 205, "\"") | |
| 2233 | 2432 | if templ_7745c5c3_Err != nil { | |
| 2234 | 2433 | return templ_7745c5c3_Err | |
| 2235 | 2434 | } | |
| 2236 | 2435 | if ln.Continued { | |
| 2237 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 188, " data-cont") | |
| 2436 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 206, " data-cont") | |
| 2238 | 2437 | if templ_7745c5c3_Err != nil { | |
| 2239 | 2438 | return templ_7745c5c3_Err | |
| 2240 | 2439 | } | |
| 2241 | 2440 | } | |
| 2242 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 189, "><time>") | |
| 2441 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 207, "><time>") | |
| 2243 | 2442 | if templ_7745c5c3_Err != nil { | |
| 2244 | 2443 | return templ_7745c5c3_Err | |
| 2245 | 2444 | } | |
| 2246 | - | var templ_7745c5c3_Var118 string | |
| 2247 | - | templ_7745c5c3_Var118, templ_7745c5c3_Err = templ.JoinStringErrs(ln.Time) | |
| 2445 | + | var templ_7745c5c3_Var129 string | |
| 2446 | + | templ_7745c5c3_Var129, templ_7745c5c3_Err = templ.JoinStringErrs(ln.Time) | |
| 2248 | 2447 | if templ_7745c5c3_Err != nil { | |
| 2249 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 317, Col: 130} | |
| 2448 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 338, Col: 130} | |
| 2250 | 2449 | } | |
| 2251 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var118)) | |
| 2450 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var129)) | |
| 2252 | 2451 | if templ_7745c5c3_Err != nil { | |
| 2253 | 2452 | return templ_7745c5c3_Err | |
| 2254 | 2453 | } | |
| 2255 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 190, "</time><span class=\"t\">") | |
| 2454 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 208, "</time><span class=\"t\">") | |
| 2256 | 2455 | if templ_7745c5c3_Err != nil { | |
| 2257 | 2456 | return templ_7745c5c3_Err | |
| 2258 | 2457 | } | |
| 2259 | - | var templ_7745c5c3_Var119 string | |
| 2260 | - | templ_7745c5c3_Var119, templ_7745c5c3_Err = templ.JoinStringErrs(ln.Text) | |
| 2458 | + | var templ_7745c5c3_Var130 string | |
| 2459 | + | templ_7745c5c3_Var130, templ_7745c5c3_Err = templ.JoinStringErrs(ln.Text) | |
| 2261 | 2460 | if templ_7745c5c3_Err != nil { | |
| 2262 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 317, Col: 164} | |
| 2461 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 338, Col: 164} | |
| 2263 | 2462 | } | |
| 2264 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var119)) | |
| 2463 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var130)) | |
| 2265 | 2464 | if templ_7745c5c3_Err != nil { | |
| 2266 | 2465 | return templ_7745c5c3_Err | |
| 2267 | 2466 | } | |
| 2268 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 191, "</span></li>") | |
| 2467 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 209, "</span></li>") | |
| 2269 | 2468 | if templ_7745c5c3_Err != nil { | |
| 2270 | 2469 | return templ_7745c5c3_Err | |
| 2271 | 2470 | } | |
| @@ -2289,12 +2488,12 @@ func jobRail(p JobPage) templ.Component { | |||
| 2289 | 2488 | }() | |
| 2290 | 2489 | } | |
| 2291 | 2490 | ctx = templ.InitializeContext(ctx) | |
| 2292 | - | templ_7745c5c3_Var120 := templ.GetChildren(ctx) | |
| 2293 | - | if templ_7745c5c3_Var120 == nil { | |
| 2294 | - | templ_7745c5c3_Var120 = templ.NopComponent | |
| 2491 | + | templ_7745c5c3_Var131 := templ.GetChildren(ctx) | |
| 2492 | + | if templ_7745c5c3_Var131 == nil { | |
| 2493 | + | templ_7745c5c3_Var131 = templ.NopComponent | |
| 2295 | 2494 | } | |
| 2296 | 2495 | ctx = templ.ClearChildren(ctx) | |
| 2297 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 192, "<section aria-labelledby=\"r-job\"><h2 id=\"r-job\">Steps</h2>") | |
| 2496 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 210, "<section aria-labelledby=\"r-job\"><h2 id=\"r-job\">Steps</h2>") | |
| 2298 | 2497 | if templ_7745c5c3_Err != nil { | |
| 2299 | 2498 | return templ_7745c5c3_Err | |
| 2300 | 2499 | } | |
| @@ -2302,101 +2501,101 @@ func jobRail(p JobPage) templ.Component { | |||
| 2302 | 2501 | if templ_7745c5c3_Err != nil { | |
| 2303 | 2502 | return templ_7745c5c3_Err | |
| 2304 | 2503 | } | |
| 2305 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 193, "</section><section aria-labelledby=\"r-jobf\"><h2 id=\"r-jobf\">Job</h2><dl class=\"kv\"><dt>run</dt><dd><a href=\"") | |
| 2504 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 211, "</section><section aria-labelledby=\"r-jobf\"><h2 id=\"r-jobf\">Job</h2><dl class=\"kv\"><dt>run</dt><dd><a href=\"") | |
| 2306 | 2505 | if templ_7745c5c3_Err != nil { | |
| 2307 | 2506 | return templ_7745c5c3_Err | |
| 2308 | 2507 | } | |
| 2309 | - | var templ_7745c5c3_Var121 templ.SafeURL | |
| 2310 | - | templ_7745c5c3_Var121, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RunHref)) | |
| 2508 | + | var templ_7745c5c3_Var132 templ.SafeURL | |
| 2509 | + | templ_7745c5c3_Var132, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RunHref)) | |
| 2311 | 2510 | if templ_7745c5c3_Err != nil { | |
| 2312 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 329, Col: 41} | |
| 2511 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 350, Col: 41} | |
| 2313 | 2512 | } | |
| 2314 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var121)) | |
| 2513 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var132)) | |
| 2315 | 2514 | if templ_7745c5c3_Err != nil { | |
| 2316 | 2515 | return templ_7745c5c3_Err | |
| 2317 | 2516 | } | |
| 2318 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 194, "\">") | |
| 2517 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 212, "\">") | |
| 2319 | 2518 | if templ_7745c5c3_Err != nil { | |
| 2320 | 2519 | return templ_7745c5c3_Err | |
| 2321 | 2520 | } | |
| 2322 | - | var templ_7745c5c3_Var122 string | |
| 2323 | - | templ_7745c5c3_Var122, templ_7745c5c3_Err = templ.JoinStringErrs(p.RunName) | |
| 2521 | + | var templ_7745c5c3_Var133 string | |
| 2522 | + | templ_7745c5c3_Var133, templ_7745c5c3_Err = templ.JoinStringErrs(p.RunName) | |
| 2324 | 2523 | if templ_7745c5c3_Err != nil { | |
| 2325 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 329, Col: 55} | |
| 2524 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 350, Col: 55} | |
| 2326 | 2525 | } | |
| 2327 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var122)) | |
| 2526 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var133)) | |
| 2328 | 2527 | if templ_7745c5c3_Err != nil { | |
| 2329 | 2528 | return templ_7745c5c3_Err | |
| 2330 | 2529 | } | |
| 2331 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 195, "</a></dd>") | |
| 2530 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 213, "</a></dd>") | |
| 2332 | 2531 | if templ_7745c5c3_Err != nil { | |
| 2333 | 2532 | return templ_7745c5c3_Err | |
| 2334 | 2533 | } | |
| 2335 | 2534 | if p.Runner != "" { | |
| 2336 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 196, "<dt>runner</dt><dd>") | |
| 2535 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 214, "<dt>runner</dt><dd>") | |
| 2337 | 2536 | if templ_7745c5c3_Err != nil { | |
| 2338 | 2537 | return templ_7745c5c3_Err | |
| 2339 | 2538 | } | |
| 2340 | - | var templ_7745c5c3_Var123 string | |
| 2341 | - | templ_7745c5c3_Var123, templ_7745c5c3_Err = templ.JoinStringErrs(p.Runner) | |
| 2539 | + | var templ_7745c5c3_Var134 string | |
| 2540 | + | templ_7745c5c3_Var134, templ_7745c5c3_Err = templ.JoinStringErrs(p.Runner) | |
| 2342 | 2541 | if templ_7745c5c3_Err != nil { | |
| 2343 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 332, Col: 18} | |
| 2542 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 353, Col: 18} | |
| 2344 | 2543 | } | |
| 2345 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var123)) | |
| 2544 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var134)) | |
| 2346 | 2545 | if templ_7745c5c3_Err != nil { | |
| 2347 | 2546 | return templ_7745c5c3_Err | |
| 2348 | 2547 | } | |
| 2349 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 197, "</dd>") | |
| 2548 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 215, "</dd>") | |
| 2350 | 2549 | if templ_7745c5c3_Err != nil { | |
| 2351 | 2550 | return templ_7745c5c3_Err | |
| 2352 | 2551 | } | |
| 2353 | 2552 | } | |
| 2354 | 2553 | if p.Isolation != "" { | |
| 2355 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 198, "<dt>isolation</dt><dd>") | |
| 2554 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 216, "<dt>isolation</dt><dd>") | |
| 2356 | 2555 | if templ_7745c5c3_Err != nil { | |
| 2357 | 2556 | return templ_7745c5c3_Err | |
| 2358 | 2557 | } | |
| 2359 | - | var templ_7745c5c3_Var124 string | |
| 2360 | - | templ_7745c5c3_Var124, templ_7745c5c3_Err = templ.JoinStringErrs(p.Isolation) | |
| 2558 | + | var templ_7745c5c3_Var135 string | |
| 2559 | + | templ_7745c5c3_Var135, templ_7745c5c3_Err = templ.JoinStringErrs(p.Isolation) | |
| 2361 | 2560 | if templ_7745c5c3_Err != nil { | |
| 2362 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 336, Col: 21} | |
| 2561 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 357, Col: 21} | |
| 2363 | 2562 | } | |
| 2364 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var124)) | |
| 2563 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var135)) | |
| 2365 | 2564 | if templ_7745c5c3_Err != nil { | |
| 2366 | 2565 | return templ_7745c5c3_Err | |
| 2367 | 2566 | } | |
| 2368 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 199, "</dd>") | |
| 2567 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 217, "</dd>") | |
| 2369 | 2568 | if templ_7745c5c3_Err != nil { | |
| 2370 | 2569 | return templ_7745c5c3_Err | |
| 2371 | 2570 | } | |
| 2372 | 2571 | } | |
| 2373 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 200, "<dt>lines</dt><dd>") | |
| 2572 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 218, "<dt>lines</dt><dd>") | |
| 2374 | 2573 | if templ_7745c5c3_Err != nil { | |
| 2375 | 2574 | return templ_7745c5c3_Err | |
| 2376 | 2575 | } | |
| 2377 | - | var templ_7745c5c3_Var125 string | |
| 2378 | - | templ_7745c5c3_Var125, templ_7745c5c3_Err = templ.JoinStringErrs(itoa64(p.Total)) | |
| 2576 | + | var templ_7745c5c3_Var136 string | |
| 2577 | + | templ_7745c5c3_Var136, templ_7745c5c3_Err = templ.JoinStringErrs(itoa64(p.Total)) | |
| 2379 | 2578 | if templ_7745c5c3_Err != nil { | |
| 2380 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 339, Col: 24} | |
| 2579 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 360, Col: 24} | |
| 2381 | 2580 | } | |
| 2382 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var125)) | |
| 2581 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var136)) | |
| 2383 | 2582 | if templ_7745c5c3_Err != nil { | |
| 2384 | 2583 | return templ_7745c5c3_Err | |
| 2385 | 2584 | } | |
| 2386 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 201, "</dd></dl><p><a href=\"") | |
| 2585 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 219, "</dd></dl><p><a href=\"") | |
| 2387 | 2586 | if templ_7745c5c3_Err != nil { | |
| 2388 | 2587 | return templ_7745c5c3_Err | |
| 2389 | 2588 | } | |
| 2390 | - | var templ_7745c5c3_Var126 templ.SafeURL | |
| 2391 | - | templ_7745c5c3_Var126, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RawHref)) | |
| 2589 | + | var templ_7745c5c3_Var137 templ.SafeURL | |
| 2590 | + | templ_7745c5c3_Var137, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RawHref)) | |
| 2392 | 2591 | if templ_7745c5c3_Err != nil { | |
| 2393 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 341, Col: 39} | |
| 2592 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 362, Col: 39} | |
| 2394 | 2593 | } | |
| 2395 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var126)) | |
| 2594 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var137)) | |
| 2396 | 2595 | if templ_7745c5c3_Err != nil { | |
| 2397 | 2596 | return templ_7745c5c3_Err | |
| 2398 | 2597 | } | |
| 2399 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 202, "\">raw log</a></p></section>") | |
| 2598 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 220, "\">raw log</a></p></section>") | |
| 2400 | 2599 | if templ_7745c5c3_Err != nil { | |
| 2401 | 2600 | return templ_7745c5c3_Err | |
| 2402 | 2601 | } | |
| @@ -2422,39 +2621,39 @@ func CommitChecks(c ChecksSummary) templ.Component { | |||
| 2422 | 2621 | }() | |
| 2423 | 2622 | } | |
| 2424 | 2623 | ctx = templ.InitializeContext(ctx) | |
| 2425 | - | templ_7745c5c3_Var127 := templ.GetChildren(ctx) | |
| 2426 | - | if templ_7745c5c3_Var127 == nil { | |
| 2427 | - | templ_7745c5c3_Var127 = templ.NopComponent | |
| 2624 | + | templ_7745c5c3_Var138 := templ.GetChildren(ctx) | |
| 2625 | + | if templ_7745c5c3_Var138 == nil { | |
| 2626 | + | templ_7745c5c3_Var138 = templ.NopComponent | |
| 2428 | 2627 | } | |
| 2429 | 2628 | ctx = templ.ClearChildren(ctx) | |
| 2430 | 2629 | if c.Total > 0 { | |
| 2431 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 203, "<a class=\"ck-sum\" href=\"") | |
| 2630 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 221, "<a class=\"ck-sum\" href=\"") | |
| 2432 | 2631 | if templ_7745c5c3_Err != nil { | |
| 2433 | 2632 | return templ_7745c5c3_Err | |
| 2434 | 2633 | } | |
| 2435 | - | var templ_7745c5c3_Var128 templ.SafeURL | |
| 2436 | - | templ_7745c5c3_Var128, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(c.Href)) | |
| 2634 | + | var templ_7745c5c3_Var139 templ.SafeURL | |
| 2635 | + | templ_7745c5c3_Var139, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(c.Href)) | |
| 2437 | 2636 | if templ_7745c5c3_Err != nil { | |
| 2438 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 349, Col: 48} | |
| 2637 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 370, Col: 48} | |
| 2439 | 2638 | } | |
| 2440 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var128)) | |
| 2639 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var139)) | |
| 2441 | 2640 | if templ_7745c5c3_Err != nil { | |
| 2442 | 2641 | return templ_7745c5c3_Err | |
| 2443 | 2642 | } | |
| 2444 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 204, "\" title=\"") | |
| 2643 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 222, "\" title=\"") | |
| 2445 | 2644 | if templ_7745c5c3_Err != nil { | |
| 2446 | 2645 | return templ_7745c5c3_Err | |
| 2447 | 2646 | } | |
| 2448 | - | var templ_7745c5c3_Var129 string | |
| 2449 | - | templ_7745c5c3_Var129, templ_7745c5c3_Err = templ.ResolveAttributeValue(c.Title) | |
| 2647 | + | var templ_7745c5c3_Var140 string | |
| 2648 | + | templ_7745c5c3_Var140, templ_7745c5c3_Err = templ.ResolveAttributeValue(c.Title) | |
| 2450 | 2649 | if templ_7745c5c3_Err != nil { | |
| 2451 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 349, Col: 66} | |
| 2650 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 370, Col: 66} | |
| 2452 | 2651 | } | |
| 2453 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var129) | |
| 2652 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var140) | |
| 2454 | 2653 | if templ_7745c5c3_Err != nil { | |
| 2455 | 2654 | return templ_7745c5c3_Err | |
| 2456 | 2655 | } | |
| 2457 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 205, "\">") | |
| 2656 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 223, "\">") | |
| 2458 | 2657 | if templ_7745c5c3_Err != nil { | |
| 2459 | 2658 | return templ_7745c5c3_Err | |
| 2460 | 2659 | } | |
| @@ -2462,20 +2661,20 @@ func CommitChecks(c ChecksSummary) templ.Component { | |||
| 2462 | 2661 | if templ_7745c5c3_Err != nil { | |
| 2463 | 2662 | return templ_7745c5c3_Err | |
| 2464 | 2663 | } | |
| 2465 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 206, "<span class=\"mute\">") | |
| 2664 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 224, "<span class=\"mute\">") | |
| 2466 | 2665 | if templ_7745c5c3_Err != nil { | |
| 2467 | 2666 | return templ_7745c5c3_Err | |
| 2468 | 2667 | } | |
| 2469 | - | var templ_7745c5c3_Var130 string | |
| 2470 | - | templ_7745c5c3_Var130, templ_7745c5c3_Err = templ.JoinStringErrs(c.Label) | |
| 2668 | + | var templ_7745c5c3_Var141 string | |
| 2669 | + | templ_7745c5c3_Var141, templ_7745c5c3_Err = templ.JoinStringErrs(c.Label) | |
| 2471 | 2670 | if templ_7745c5c3_Err != nil { | |
| 2472 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 351, Col: 31} | |
| 2671 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 372, Col: 31} | |
| 2473 | 2672 | } | |
| 2474 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var130)) | |
| 2673 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var141)) | |
| 2475 | 2674 | if templ_7745c5c3_Err != nil { | |
| 2476 | 2675 | return templ_7745c5c3_Err | |
| 2477 | 2676 | } | |
| 2478 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 207, "</span></a>") | |
| 2677 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 225, "</span></a>") | |
| 2479 | 2678 | if templ_7745c5c3_Err != nil { | |
| 2480 | 2679 | return templ_7745c5c3_Err | |
| 2481 | 2680 | } | |
| @@ -2501,40 +2700,40 @@ func MRChecks(c ChecksSection) templ.Component { | |||
| 2501 | 2700 | }() | |
| 2502 | 2701 | } | |
| 2503 | 2702 | ctx = templ.InitializeContext(ctx) | |
| 2504 | - | templ_7745c5c3_Var131 := templ.GetChildren(ctx) | |
| 2505 | - | if templ_7745c5c3_Var131 == nil { | |
| 2506 | - | templ_7745c5c3_Var131 = templ.NopComponent | |
| 2703 | + | templ_7745c5c3_Var142 := templ.GetChildren(ctx) | |
| 2704 | + | if templ_7745c5c3_Var142 == nil { | |
| 2705 | + | templ_7745c5c3_Var142 = templ.NopComponent | |
| 2507 | 2706 | } | |
| 2508 | 2707 | ctx = templ.ClearChildren(ctx) | |
| 2509 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 208, "<section aria-labelledby=\"r-checks\" id=\"mr-checks\"><h2 id=\"r-checks\">Checks <span class=\"count\">") | |
| 2708 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 226, "<section aria-labelledby=\"r-checks\" id=\"mr-checks\"><h2 id=\"r-checks\">Checks <span class=\"count\">") | |
| 2510 | 2709 | if templ_7745c5c3_Err != nil { | |
| 2511 | 2710 | return templ_7745c5c3_Err | |
| 2512 | 2711 | } | |
| 2513 | - | var templ_7745c5c3_Var132 string | |
| 2514 | - | templ_7745c5c3_Var132, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(c.Rows))) | |
| 2712 | + | var templ_7745c5c3_Var143 string | |
| 2713 | + | templ_7745c5c3_Var143, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(c.Rows))) | |
| 2515 | 2714 | if templ_7745c5c3_Err != nil { | |
| 2516 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 359, Col: 66} | |
| 2715 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 380, Col: 66} | |
| 2517 | 2716 | } | |
| 2518 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var132)) | |
| 2717 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var143)) | |
| 2519 | 2718 | if templ_7745c5c3_Err != nil { | |
| 2520 | 2719 | return templ_7745c5c3_Err | |
| 2521 | 2720 | } | |
| 2522 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 209, "</span></h2>") | |
| 2721 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 227, "</span></h2>") | |
| 2523 | 2722 | if templ_7745c5c3_Err != nil { | |
| 2524 | 2723 | return templ_7745c5c3_Err | |
| 2525 | 2724 | } | |
| 2526 | 2725 | if len(c.Rows) == 0 { | |
| 2527 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 210, "<p class=\"dim\">no checks</p>") | |
| 2726 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 228, "<p class=\"dim\">no checks</p>") | |
| 2528 | 2727 | if templ_7745c5c3_Err != nil { | |
| 2529 | 2728 | return templ_7745c5c3_Err | |
| 2530 | 2729 | } | |
| 2531 | 2730 | } else { | |
| 2532 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 211, "<ul class=\"checks\">") | |
| 2731 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 229, "<ul class=\"checks\">") | |
| 2533 | 2732 | if templ_7745c5c3_Err != nil { | |
| 2534 | 2733 | return templ_7745c5c3_Err | |
| 2535 | 2734 | } | |
| 2536 | 2735 | for _, r := range c.Rows { | |
| 2537 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 212, "<li>") | |
| 2736 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 230, "<li>") | |
| 2538 | 2737 | if templ_7745c5c3_Err != nil { | |
| 2539 | 2738 | return templ_7745c5c3_Err | |
| 2540 | 2739 | } | |
| @@ -2543,108 +2742,108 @@ func MRChecks(c ChecksSection) templ.Component { | |||
| 2543 | 2742 | return templ_7745c5c3_Err | |
| 2544 | 2743 | } | |
| 2545 | 2744 | if r.Href != "" { | |
| 2546 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 213, "<a href=\"") | |
| 2745 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 231, "<a href=\"") | |
| 2547 | 2746 | if templ_7745c5c3_Err != nil { | |
| 2548 | 2747 | return templ_7745c5c3_Err | |
| 2549 | 2748 | } | |
| 2550 | - | var templ_7745c5c3_Var133 templ.SafeURL | |
| 2551 | - | templ_7745c5c3_Var133, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(r.Href)) | |
| 2749 | + | var templ_7745c5c3_Var144 templ.SafeURL | |
| 2750 | + | templ_7745c5c3_Var144, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(r.Href)) | |
| 2552 | 2751 | if templ_7745c5c3_Err != nil { | |
| 2553 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 368, Col: 38} | |
| 2752 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 389, Col: 38} | |
| 2554 | 2753 | } | |
| 2555 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var133)) | |
| 2754 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var144)) | |
| 2556 | 2755 | if templ_7745c5c3_Err != nil { | |
| 2557 | 2756 | return templ_7745c5c3_Err | |
| 2558 | 2757 | } | |
| 2559 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 214, "\">") | |
| 2758 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 232, "\">") | |
| 2560 | 2759 | if templ_7745c5c3_Err != nil { | |
| 2561 | 2760 | return templ_7745c5c3_Err | |
| 2562 | 2761 | } | |
| 2563 | - | var templ_7745c5c3_Var134 string | |
| 2564 | - | templ_7745c5c3_Var134, templ_7745c5c3_Err = templ.JoinStringErrs(r.Name) | |
| 2762 | + | var templ_7745c5c3_Var145 string | |
| 2763 | + | templ_7745c5c3_Var145, templ_7745c5c3_Err = templ.JoinStringErrs(r.Name) | |
| 2565 | 2764 | if templ_7745c5c3_Err != nil { | |
| 2566 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 368, Col: 49} | |
| 2765 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 389, Col: 49} | |
| 2567 | 2766 | } | |
| 2568 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var134)) | |
| 2767 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var145)) | |
| 2569 | 2768 | if templ_7745c5c3_Err != nil { | |
| 2570 | 2769 | return templ_7745c5c3_Err | |
| 2571 | 2770 | } | |
| 2572 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 215, "</a> ") | |
| 2771 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 233, "</a> ") | |
| 2573 | 2772 | if templ_7745c5c3_Err != nil { | |
| 2574 | 2773 | return templ_7745c5c3_Err | |
| 2575 | 2774 | } | |
| 2576 | 2775 | } else { | |
| 2577 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 216, "<span>") | |
| 2776 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 234, "<span>") | |
| 2578 | 2777 | if templ_7745c5c3_Err != nil { | |
| 2579 | 2778 | return templ_7745c5c3_Err | |
| 2580 | 2779 | } | |
| 2581 | - | var templ_7745c5c3_Var135 string | |
| 2582 | - | templ_7745c5c3_Var135, templ_7745c5c3_Err = templ.JoinStringErrs(r.Name) | |
| 2780 | + | var templ_7745c5c3_Var146 string | |
| 2781 | + | templ_7745c5c3_Var146, templ_7745c5c3_Err = templ.JoinStringErrs(r.Name) | |
| 2583 | 2782 | if templ_7745c5c3_Err != nil { | |
| 2584 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 370, Col: 21} | |
| 2783 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 391, Col: 21} | |
| 2585 | 2784 | } | |
| 2586 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var135)) | |
| 2785 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var146)) | |
| 2587 | 2786 | if templ_7745c5c3_Err != nil { | |
| 2588 | 2787 | return templ_7745c5c3_Err | |
| 2589 | 2788 | } | |
| 2590 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 217, "</span> ") | |
| 2789 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 235, "</span> ") | |
| 2591 | 2790 | if templ_7745c5c3_Err != nil { | |
| 2592 | 2791 | return templ_7745c5c3_Err | |
| 2593 | 2792 | } | |
| 2594 | 2793 | } | |
| 2595 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 218, "<span class=\"dim\">") | |
| 2794 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 236, "<span class=\"dim\">") | |
| 2596 | 2795 | if templ_7745c5c3_Err != nil { | |
| 2597 | 2796 | return templ_7745c5c3_Err | |
| 2598 | 2797 | } | |
| 2599 | - | var templ_7745c5c3_Var136 string | |
| 2600 | - | templ_7745c5c3_Var136, templ_7745c5c3_Err = templ.JoinStringErrs(r.State) | |
| 2798 | + | var templ_7745c5c3_Var147 string | |
| 2799 | + | templ_7745c5c3_Var147, templ_7745c5c3_Err = templ.JoinStringErrs(r.State) | |
| 2601 | 2800 | if templ_7745c5c3_Err != nil { | |
| 2602 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 372, Col: 33} | |
| 2801 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 393, Col: 33} | |
| 2603 | 2802 | } | |
| 2604 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var136)) | |
| 2803 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var147)) | |
| 2605 | 2804 | if templ_7745c5c3_Err != nil { | |
| 2606 | 2805 | return templ_7745c5c3_Err | |
| 2607 | 2806 | } | |
| 2608 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 219, "</span> ") | |
| 2807 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 237, "</span> ") | |
| 2609 | 2808 | if templ_7745c5c3_Err != nil { | |
| 2610 | 2809 | return templ_7745c5c3_Err | |
| 2611 | 2810 | } | |
| 2612 | 2811 | if r.Waiting { | |
| 2613 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 220, "<span class=\"mute\">waiting for a runner</span>") | |
| 2812 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 238, "<span class=\"mute\">waiting for a runner</span>") | |
| 2614 | 2813 | if templ_7745c5c3_Err != nil { | |
| 2615 | 2814 | return templ_7745c5c3_Err | |
| 2616 | 2815 | } | |
| 2617 | 2816 | } | |
| 2618 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 221, "</li>") | |
| 2817 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 239, "</li>") | |
| 2619 | 2818 | if templ_7745c5c3_Err != nil { | |
| 2620 | 2819 | return templ_7745c5c3_Err | |
| 2621 | 2820 | } | |
| 2622 | 2821 | } | |
| 2623 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 222, "</ul>") | |
| 2822 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 240, "</ul>") | |
| 2624 | 2823 | if templ_7745c5c3_Err != nil { | |
| 2625 | 2824 | return templ_7745c5c3_Err | |
| 2626 | 2825 | } | |
| 2627 | 2826 | } | |
| 2628 | 2827 | if c.Note != "" { | |
| 2629 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 223, "<p class=\"mute\">") | |
| 2828 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 241, "<p class=\"mute\">") | |
| 2630 | 2829 | if templ_7745c5c3_Err != nil { | |
| 2631 | 2830 | return templ_7745c5c3_Err | |
| 2632 | 2831 | } | |
| 2633 | - | var templ_7745c5c3_Var137 string | |
| 2634 | - | templ_7745c5c3_Var137, templ_7745c5c3_Err = templ.JoinStringErrs(c.Note) | |
| 2832 | + | var templ_7745c5c3_Var148 string | |
| 2833 | + | templ_7745c5c3_Var148, templ_7745c5c3_Err = templ.JoinStringErrs(c.Note) | |
| 2635 | 2834 | if templ_7745c5c3_Err != nil { | |
| 2636 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 381, Col: 27} | |
| 2835 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 402, Col: 27} | |
| 2637 | 2836 | } | |
| 2638 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var137)) | |
| 2837 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var148)) | |
| 2639 | 2838 | if templ_7745c5c3_Err != nil { | |
| 2640 | 2839 | return templ_7745c5c3_Err | |
| 2641 | 2840 | } | |
| 2642 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 224, "</p>") | |
| 2841 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 242, "</p>") | |
| 2643 | 2842 | if templ_7745c5c3_Err != nil { | |
| 2644 | 2843 | return templ_7745c5c3_Err | |
| 2645 | 2844 | } | |
| 2646 | 2845 | } | |
| 2647 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 225, "</section>") | |
| 2846 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 243, "</section>") | |
| 2648 | 2847 | if templ_7745c5c3_Err != nil { | |
| 2649 | 2848 | return templ_7745c5c3_Err | |
| 2650 | 2849 | } | |
| @@ -446,7 +446,9 @@ func RunListRow(r RunRow) templ.Component { | |||||
| 446 | }) | 446 | }) | ||
| 447 | } | 447 | } | ||
| 448 | 448 | ||||
| 449 | - | func RunDetail(l Layout, p RunPage) templ.Component { | 449 | + | // RecentActionsBlock is the "Recent actions" section of the summary rail; its |
| 450 | + | // id is the target of the live updates. Without a run it is hidden. | |||
| 451 | + | func RecentActionsBlock(a RecentActions) templ.Component { | |||
| 450 | return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | 452 | return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | ||
| 451 | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | 453 | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | ||
| 452 | if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil { | 454 | if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil { | ||
| @@ -467,7 +469,204 @@ func RunDetail(l Layout, p RunPage) templ.Component { | |||||
| 467 | templ_7745c5c3_Var27 = templ.NopComponent | 469 | templ_7745c5c3_Var27 = templ.NopComponent | ||
| 468 | } | 470 | } | ||
| 469 | ctx = templ.ClearChildren(ctx) | 471 | ctx = templ.ClearChildren(ctx) | ||
| 470 | - | templ_7745c5c3_Var28 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | 472 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 32, "<section id=\"recent-actions\" aria-labelledby=\"r-actions\"") |
| 473 | + | if templ_7745c5c3_Err != nil { | |||
| 474 | + | return templ_7745c5c3_Err | |||
| 475 | + | } | |||
| 476 | + | if len(a.Runs) == 0 { | |||
| 477 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 33, " hidden") | |||
| 478 | + | if templ_7745c5c3_Err != nil { | |||
| 479 | + | return templ_7745c5c3_Err | |||
| 480 | + | } | |||
| 481 | + | } | |||
| 482 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 34, "><h2 id=\"r-actions\">Recent actions <a href=\"") | |||
| 483 | + | if templ_7745c5c3_Err != nil { | |||
| 484 | + | return templ_7745c5c3_Err | |||
| 485 | + | } | |||
| 486 | + | var templ_7745c5c3_Var28 templ.SafeURL | |||
| 487 | + | templ_7745c5c3_Var28, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.AllHref)) | |||
| 488 | + | if templ_7745c5c3_Err != nil { | |||
| 489 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 63, Col: 70} | |||
| 490 | + | } | |||
| 491 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var28)) | |||
| 492 | + | if templ_7745c5c3_Err != nil { | |||
| 493 | + | return templ_7745c5c3_Err | |||
| 494 | + | } | |||
| 495 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 35, "\">View all</a></h2><ul class=\"rruns\">") | |||
| 496 | + | if templ_7745c5c3_Err != nil { | |||
| 497 | + | return templ_7745c5c3_Err | |||
| 498 | + | } | |||
| 499 | + | for _, r := range a.Runs { | |||
| 500 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 36, "<li>") | |||
| 501 | + | if templ_7745c5c3_Err != nil { | |||
| 502 | + | return templ_7745c5c3_Err | |||
| 503 | + | } | |||
| 504 | + | templ_7745c5c3_Err = CheckIcon(r.Kind, r.State).Render(ctx, templ_7745c5c3_Buffer) | |||
| 505 | + | if templ_7745c5c3_Err != nil { | |||
| 506 | + | return templ_7745c5c3_Err | |||
| 507 | + | } | |||
| 508 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 37, "<a class=\"rr-name\" href=\"") | |||
| 509 | + | if templ_7745c5c3_Err != nil { | |||
| 510 | + | return templ_7745c5c3_Err | |||
| 511 | + | } | |||
| 512 | + | var templ_7745c5c3_Var29 templ.SafeURL | |||
| 513 | + | templ_7745c5c3_Var29, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(r.Href)) | |||
| 514 | + | if templ_7745c5c3_Err != nil { | |||
| 515 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 68, Col: 52} | |||
| 516 | + | } | |||
| 517 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var29)) | |||
| 518 | + | if templ_7745c5c3_Err != nil { | |||
| 519 | + | return templ_7745c5c3_Err | |||
| 520 | + | } | |||
| 521 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 38, "\" title=\"") | |||
| 522 | + | if templ_7745c5c3_Err != nil { | |||
| 523 | + | return templ_7745c5c3_Err | |||
| 524 | + | } | |||
| 525 | + | var templ_7745c5c3_Var30 string | |||
| 526 | + | templ_7745c5c3_Var30, templ_7745c5c3_Err = templ.ResolveAttributeValue(r.Workflow + " " + r.Number + " · " + r.State) | |||
| 527 | + | if templ_7745c5c3_Err != nil { | |||
| 528 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 68, Col: 109} | |||
| 529 | + | } | |||
| 530 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var30) | |||
| 531 | + | if templ_7745c5c3_Err != nil { | |||
| 532 | + | return templ_7745c5c3_Err | |||
| 533 | + | } | |||
| 534 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 39, "\">") | |||
| 535 | + | if templ_7745c5c3_Err != nil { | |||
| 536 | + | return templ_7745c5c3_Err | |||
| 537 | + | } | |||
| 538 | + | var templ_7745c5c3_Var31 string | |||
| 539 | + | templ_7745c5c3_Var31, templ_7745c5c3_Err = templ.JoinStringErrs(r.Workflow) | |||
| 540 | + | if templ_7745c5c3_Err != nil { | |||
| 541 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 68, Col: 124} | |||
| 542 | + | } | |||
| 543 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var31)) | |||
| 544 | + | if templ_7745c5c3_Err != nil { | |||
| 545 | + | return templ_7745c5c3_Err | |||
| 546 | + | } | |||
| 547 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 40, "</a> <span class=\"mute\">") | |||
| 548 | + | if templ_7745c5c3_Err != nil { | |||
| 549 | + | return templ_7745c5c3_Err | |||
| 550 | + | } | |||
| 551 | + | var templ_7745c5c3_Var32 string | |||
| 552 | + | templ_7745c5c3_Var32, templ_7745c5c3_Err = templ.JoinStringErrs(r.Number) | |||
| 553 | + | if templ_7745c5c3_Err != nil { | |||
| 554 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 69, Col: 34} | |||
| 555 | + | } | |||
| 556 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var32)) | |||
| 557 | + | if templ_7745c5c3_Err != nil { | |||
| 558 | + | return templ_7745c5c3_Err | |||
| 559 | + | } | |||
| 560 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 41, "</span> <a class=\"rr-ref\" href=\"") | |||
| 561 | + | if templ_7745c5c3_Err != nil { | |||
| 562 | + | return templ_7745c5c3_Err | |||
| 563 | + | } | |||
| 564 | + | var templ_7745c5c3_Var33 templ.SafeURL | |||
| 565 | + | templ_7745c5c3_Var33, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(r.RefHref)) | |||
| 566 | + | if templ_7745c5c3_Err != nil { | |||
| 567 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 70, Col: 54} | |||
| 568 | + | } | |||
| 569 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var33)) | |||
| 570 | + | if templ_7745c5c3_Err != nil { | |||
| 571 | + | return templ_7745c5c3_Err | |||
| 572 | + | } | |||
| 573 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 42, "\">") | |||
| 574 | + | if templ_7745c5c3_Err != nil { | |||
| 575 | + | return templ_7745c5c3_Err | |||
| 576 | + | } | |||
| 577 | + | var templ_7745c5c3_Var34 string | |||
| 578 | + | templ_7745c5c3_Var34, templ_7745c5c3_Err = templ.JoinStringErrs(r.Ref) | |||
| 579 | + | if templ_7745c5c3_Err != nil { | |||
| 580 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 70, Col: 64} | |||
| 581 | + | } | |||
| 582 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var34)) | |||
| 583 | + | if templ_7745c5c3_Err != nil { | |||
| 584 | + | return templ_7745c5c3_Err | |||
| 585 | + | } | |||
| 586 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 43, "</a> ") | |||
| 587 | + | if templ_7745c5c3_Err != nil { | |||
| 588 | + | return templ_7745c5c3_Err | |||
| 589 | + | } | |||
| 590 | + | if r.WhenAt != "" { | |||
| 591 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 44, "<time class=\"dim\" datetime=\"") | |||
| 592 | + | if templ_7745c5c3_Err != nil { | |||
| 593 | + | return templ_7745c5c3_Err | |||
| 594 | + | } | |||
| 595 | + | var templ_7745c5c3_Var35 string | |||
| 596 | + | templ_7745c5c3_Var35, templ_7745c5c3_Err = templ.ResolveAttributeValue(r.WhenAt) | |||
| 597 | + | if templ_7745c5c3_Err != nil { | |||
| 598 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 72, Col: 43} | |||
| 599 | + | } | |||
| 600 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var35) | |||
| 601 | + | if templ_7745c5c3_Err != nil { | |||
| 602 | + | return templ_7745c5c3_Err | |||
| 603 | + | } | |||
| 604 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 45, "\" title=\"") | |||
| 605 | + | if templ_7745c5c3_Err != nil { | |||
| 606 | + | return templ_7745c5c3_Err | |||
| 607 | + | } | |||
| 608 | + | var templ_7745c5c3_Var36 string | |||
| 609 | + | templ_7745c5c3_Var36, templ_7745c5c3_Err = templ.ResolveAttributeValue(r.WhenAt) | |||
| 610 | + | if templ_7745c5c3_Err != nil { | |||
| 611 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 72, Col: 62} | |||
| 612 | + | } | |||
| 613 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var36) | |||
| 614 | + | if templ_7745c5c3_Err != nil { | |||
| 615 | + | return templ_7745c5c3_Err | |||
| 616 | + | } | |||
| 617 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 46, "\">") | |||
| 618 | + | if templ_7745c5c3_Err != nil { | |||
| 619 | + | return templ_7745c5c3_Err | |||
| 620 | + | } | |||
| 621 | + | var templ_7745c5c3_Var37 string | |||
| 622 | + | templ_7745c5c3_Var37, templ_7745c5c3_Err = templ.JoinStringErrs(r.When) | |||
| 623 | + | if templ_7745c5c3_Err != nil { | |||
| 624 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 72, Col: 73} | |||
| 625 | + | } | |||
| 626 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var37)) | |||
| 627 | + | if templ_7745c5c3_Err != nil { | |||
| 628 | + | return templ_7745c5c3_Err | |||
| 629 | + | } | |||
| 630 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 47, "</time>") | |||
| 631 | + | if templ_7745c5c3_Err != nil { | |||
| 632 | + | return templ_7745c5c3_Err | |||
| 633 | + | } | |||
| 634 | + | } | |||
| 635 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 48, "</li>") | |||
| 636 | + | if templ_7745c5c3_Err != nil { | |||
| 637 | + | return templ_7745c5c3_Err | |||
| 638 | + | } | |||
| 639 | + | } | |||
| 640 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 49, "</ul></section>") | |||
| 641 | + | if templ_7745c5c3_Err != nil { | |||
| 642 | + | return templ_7745c5c3_Err | |||
| 643 | + | } | |||
| 644 | + | return nil | |||
| 645 | + | }) | |||
| 646 | + | } | |||
| 647 | + | ||||
| 648 | + | func RunDetail(l Layout, p RunPage) templ.Component { | |||
| 649 | + | return templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | |||
| 650 | + | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | |||
| 651 | + | if templ_7745c5c3_CtxErr := ctx.Err(); templ_7745c5c3_CtxErr != nil { | |||
| 652 | + | return templ_7745c5c3_CtxErr | |||
| 653 | + | } | |||
| 654 | + | templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W) | |||
| 655 | + | if !templ_7745c5c3_IsBuffer { | |||
| 656 | + | defer func() { | |||
| 657 | + | templ_7745c5c3_BufErr := templruntime.ReleaseBuffer(templ_7745c5c3_Buffer) | |||
| 658 | + | if templ_7745c5c3_Err == nil { | |||
| 659 | + | templ_7745c5c3_Err = templ_7745c5c3_BufErr | |||
| 660 | + | } | |||
| 661 | + | }() | |||
| 662 | + | } | |||
| 663 | + | ctx = templ.InitializeContext(ctx) | |||
| 664 | + | templ_7745c5c3_Var38 := templ.GetChildren(ctx) | |||
| 665 | + | if templ_7745c5c3_Var38 == nil { | |||
| 666 | + | templ_7745c5c3_Var38 = templ.NopComponent | |||
| 667 | + | } | |||
| 668 | + | ctx = templ.ClearChildren(ctx) | |||
| 669 | + | templ_7745c5c3_Var39 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | |||
| 471 | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | 670 | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | ||
| 472 | templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W) | 671 | templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W) | ||
| 473 | if !templ_7745c5c3_IsBuffer { | 672 | if !templ_7745c5c3_IsBuffer { | ||
| @@ -483,7 +682,7 @@ func RunDetail(l Layout, p RunPage) templ.Component { | |||||
| 483 | if templ_7745c5c3_Err != nil { | 682 | if templ_7745c5c3_Err != nil { | ||
| 484 | return templ_7745c5c3_Err | 683 | return templ_7745c5c3_Err | ||
| 485 | } | 684 | } | ||
| 486 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 32, " <div id=\"run-body\">") | 685 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 50, " <div id=\"run-body\">") |
| 487 | if templ_7745c5c3_Err != nil { | 686 | if templ_7745c5c3_Err != nil { | ||
| 488 | return templ_7745c5c3_Err | 687 | return templ_7745c5c3_Err | ||
| 489 | } | 688 | } | ||
| @@ -491,7 +690,7 @@ func RunDetail(l Layout, p RunPage) templ.Component { | |||||
| 491 | if templ_7745c5c3_Err != nil { | 690 | if templ_7745c5c3_Err != nil { | ||
| 492 | return templ_7745c5c3_Err | 691 | return templ_7745c5c3_Err | ||
| 493 | } | 692 | } | ||
| 494 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 33, "</div>") | 693 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 51, "</div>") |
| 495 | if templ_7745c5c3_Err != nil { | 694 | if templ_7745c5c3_Err != nil { | ||
| 496 | return templ_7745c5c3_Err | 695 | return templ_7745c5c3_Err | ||
| 497 | } | 696 | } | ||
| @@ -501,7 +700,7 @@ func RunDetail(l Layout, p RunPage) templ.Component { | |||||
| 501 | } | 700 | } | ||
| 502 | return nil | 701 | return nil | ||
| 503 | }) | 702 | }) | ||
| 504 | - | templ_7745c5c3_Err = Shell(l, runRail(p)).Render(templ.WithChildren(ctx, templ_7745c5c3_Var28), templ_7745c5c3_Buffer) | 703 | + | templ_7745c5c3_Err = Shell(l, runRail(p)).Render(templ.WithChildren(ctx, templ_7745c5c3_Var39), templ_7745c5c3_Buffer) |
| 505 | if templ_7745c5c3_Err != nil { | 704 | if templ_7745c5c3_Err != nil { | ||
| 506 | return templ_7745c5c3_Err | 705 | return templ_7745c5c3_Err | ||
| 507 | } | 706 | } | ||
| @@ -526,12 +725,12 @@ func runBodyFragment(p RunPage) templ.Component { | |||||
| 526 | }() | 725 | }() | ||
| 527 | } | 726 | } | ||
| 528 | ctx = templ.InitializeContext(ctx) | 727 | ctx = templ.InitializeContext(ctx) | ||
| 529 | - | templ_7745c5c3_Var29 := templ.GetChildren(ctx) | 728 | + | templ_7745c5c3_Var40 := templ.GetChildren(ctx) |
| 530 | - | if templ_7745c5c3_Var29 == nil { | 729 | + | if templ_7745c5c3_Var40 == nil { |
| 531 | - | templ_7745c5c3_Var29 = templ.NopComponent | 730 | + | templ_7745c5c3_Var40 = templ.NopComponent |
| 532 | } | 731 | } | ||
| 533 | ctx = templ.ClearChildren(ctx) | 732 | ctx = templ.ClearChildren(ctx) | ||
| 534 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 34, "<div id=\"run-body\">") | 733 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 52, "<div id=\"run-body\">") |
| 535 | if templ_7745c5c3_Err != nil { | 734 | if templ_7745c5c3_Err != nil { | ||
| 536 | return templ_7745c5c3_Err | 735 | return templ_7745c5c3_Err | ||
| 537 | } | 736 | } | ||
| @@ -539,7 +738,7 @@ func runBodyFragment(p RunPage) templ.Component { | |||||
| 539 | if templ_7745c5c3_Err != nil { | 738 | if templ_7745c5c3_Err != nil { | ||
| 540 | return templ_7745c5c3_Err | 739 | return templ_7745c5c3_Err | ||
| 541 | } | 740 | } | ||
| 542 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 35, "</div>") | 741 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 53, "</div>") |
| 543 | if templ_7745c5c3_Err != nil { | 742 | if templ_7745c5c3_Err != nil { | ||
| 544 | return templ_7745c5c3_Err | 743 | return templ_7745c5c3_Err | ||
| 545 | } | 744 | } | ||
| @@ -564,12 +763,12 @@ func RunBody(p RunPage) templ.Component { | |||||
| 564 | }() | 763 | }() | ||
| 565 | } | 764 | } | ||
| 566 | ctx = templ.InitializeContext(ctx) | 765 | ctx = templ.InitializeContext(ctx) | ||
| 567 | - | templ_7745c5c3_Var30 := templ.GetChildren(ctx) | 766 | + | templ_7745c5c3_Var41 := templ.GetChildren(ctx) |
| 568 | - | if templ_7745c5c3_Var30 == nil { | 767 | + | if templ_7745c5c3_Var41 == nil { |
| 569 | - | templ_7745c5c3_Var30 = templ.NopComponent | 768 | + | templ_7745c5c3_Var41 = templ.NopComponent |
| 570 | } | 769 | } | ||
| 571 | ctx = templ.ClearChildren(ctx) | 770 | ctx = templ.ClearChildren(ctx) | ||
| 572 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 36, "<h2 class=\"run-h\">") | 771 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 54, "<h2 class=\"run-h\">") |
| 573 | if templ_7745c5c3_Err != nil { | 772 | if templ_7745c5c3_Err != nil { | ||
| 574 | return templ_7745c5c3_Err | 773 | return templ_7745c5c3_Err | ||
| 575 | } | 774 | } | ||
| @@ -577,70 +776,70 @@ func RunBody(p RunPage) templ.Component { | |||||
| 577 | if templ_7745c5c3_Err != nil { | 776 | if templ_7745c5c3_Err != nil { | ||
| 578 | return templ_7745c5c3_Err | 777 | return templ_7745c5c3_Err | ||
| 579 | } | 778 | } | ||
| 580 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 37, "<span>") | 779 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 55, "<span>") |
| 581 | if templ_7745c5c3_Err != nil { | 780 | if templ_7745c5c3_Err != nil { | ||
| 582 | return templ_7745c5c3_Err | 781 | return templ_7745c5c3_Err | ||
| 583 | } | 782 | } | ||
| 584 | - | var templ_7745c5c3_Var31 string | 783 | + | var templ_7745c5c3_Var42 string |
| 585 | - | templ_7745c5c3_Var31, templ_7745c5c3_Err = templ.JoinStringErrs(p.Workflow) | 784 | + | templ_7745c5c3_Var42, templ_7745c5c3_Err = templ.JoinStringErrs(p.Workflow) |
| 586 | if templ_7745c5c3_Err != nil { | 785 | if templ_7745c5c3_Err != nil { | ||
| 587 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 78, Col: 64} | 786 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 99, Col: 64} |
| 588 | } | 787 | } | ||
| 589 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var31)) | 788 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var42)) |
| 590 | if templ_7745c5c3_Err != nil { | 789 | if templ_7745c5c3_Err != nil { | ||
| 591 | return templ_7745c5c3_Err | 790 | return templ_7745c5c3_Err | ||
| 592 | } | 791 | } | ||
| 593 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 38, "</span> <span class=\"mute\">") | 792 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 56, "</span> <span class=\"mute\">") |
| 594 | if templ_7745c5c3_Err != nil { | 793 | if templ_7745c5c3_Err != nil { | ||
| 595 | return templ_7745c5c3_Err | 794 | return templ_7745c5c3_Err | ||
| 596 | } | 795 | } | ||
| 597 | - | var templ_7745c5c3_Var32 string | 796 | + | var templ_7745c5c3_Var43 string |
| 598 | - | templ_7745c5c3_Var32, templ_7745c5c3_Err = templ.JoinStringErrs(p.Number) | 797 | + | templ_7745c5c3_Var43, templ_7745c5c3_Err = templ.JoinStringErrs(p.Number) |
| 599 | if templ_7745c5c3_Err != nil { | 798 | if templ_7745c5c3_Err != nil { | ||
| 600 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 78, Col: 103} | 799 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 99, Col: 103} |
| 601 | } | 800 | } | ||
| 602 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var32)) | 801 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var43)) |
| 603 | if templ_7745c5c3_Err != nil { | 802 | if templ_7745c5c3_Err != nil { | ||
| 604 | return templ_7745c5c3_Err | 803 | return templ_7745c5c3_Err | ||
| 605 | } | 804 | } | ||
| 606 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 39, "</span></h2>") | 805 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 57, "</span></h2>") |
| 607 | if templ_7745c5c3_Err != nil { | 806 | if templ_7745c5c3_Err != nil { | ||
| 608 | return templ_7745c5c3_Err | 807 | return templ_7745c5c3_Err | ||
| 609 | } | 808 | } | ||
| 610 | if p.Error != "" { | 809 | if p.Error != "" { | ||
| 611 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 40, "<pre class=\"run-err\">") | 810 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 58, "<pre class=\"run-err\">") |
| 612 | if templ_7745c5c3_Err != nil { | 811 | if templ_7745c5c3_Err != nil { | ||
| 613 | return templ_7745c5c3_Err | 812 | return templ_7745c5c3_Err | ||
| 614 | } | 813 | } | ||
| 615 | - | var templ_7745c5c3_Var33 string | 814 | + | var templ_7745c5c3_Var44 string |
| 616 | - | templ_7745c5c3_Var33, templ_7745c5c3_Err = templ.JoinStringErrs(p.Error) | 815 | + | templ_7745c5c3_Var44, templ_7745c5c3_Err = templ.JoinStringErrs(p.Error) |
| 617 | if templ_7745c5c3_Err != nil { | 816 | if templ_7745c5c3_Err != nil { | ||
| 618 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 80, Col: 32} | 817 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 101, Col: 32} |
| 619 | } | 818 | } | ||
| 620 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var33)) | 819 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var44)) |
| 621 | if templ_7745c5c3_Err != nil { | 820 | if templ_7745c5c3_Err != nil { | ||
| 622 | return templ_7745c5c3_Err | 821 | return templ_7745c5c3_Err | ||
| 623 | } | 822 | } | ||
| 624 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 41, "</pre>") | 823 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 59, "</pre>") |
| 625 | if templ_7745c5c3_Err != nil { | 824 | if templ_7745c5c3_Err != nil { | ||
| 626 | return templ_7745c5c3_Err | 825 | return templ_7745c5c3_Err | ||
| 627 | } | 826 | } | ||
| 628 | } | 827 | } | ||
| 629 | if len(p.Annotations) > 0 { | 828 | if len(p.Annotations) > 0 { | ||
| 630 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 42, "<section class=\"annots\" aria-labelledby=\"run-annots\"><h3 id=\"run-annots\">Annotations <span class=\"count\">") | 829 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 60, "<section class=\"annots\" aria-labelledby=\"run-annots\"><h3 id=\"run-annots\">Annotations <span class=\"count\">") |
| 631 | if templ_7745c5c3_Err != nil { | 830 | if templ_7745c5c3_Err != nil { | ||
| 632 | return templ_7745c5c3_Err | 831 | return templ_7745c5c3_Err | ||
| 633 | } | 832 | } | ||
| 634 | - | var templ_7745c5c3_Var34 string | 833 | + | var templ_7745c5c3_Var45 string |
| 635 | - | templ_7745c5c3_Var34, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(p.Annotations))) | 834 | + | templ_7745c5c3_Var45, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(p.Annotations))) |
| 636 | if templ_7745c5c3_Err != nil { | 835 | if templ_7745c5c3_Err != nil { | ||
| 637 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 84, Col: 81} | 836 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 105, Col: 81} |
| 638 | } | 837 | } | ||
| 639 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var34)) | 838 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var45)) |
| 640 | if templ_7745c5c3_Err != nil { | 839 | if templ_7745c5c3_Err != nil { | ||
| 641 | return templ_7745c5c3_Err | 840 | return templ_7745c5c3_Err | ||
| 642 | } | 841 | } | ||
| 643 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 43, "</span></h3>") | 842 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 61, "</span></h3>") |
| 644 | if templ_7745c5c3_Err != nil { | 843 | if templ_7745c5c3_Err != nil { | ||
| 645 | return templ_7745c5c3_Err | 844 | return templ_7745c5c3_Err | ||
| 646 | } | 845 | } | ||
| @@ -648,43 +847,43 @@ func RunBody(p RunPage) templ.Component { | |||||
| 648 | if templ_7745c5c3_Err != nil { | 847 | if templ_7745c5c3_Err != nil { | ||
| 649 | return templ_7745c5c3_Err | 848 | return templ_7745c5c3_Err | ||
| 650 | } | 849 | } | ||
| 651 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 44, "</section>") | 850 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 62, "</section>") |
| 652 | if templ_7745c5c3_Err != nil { | 851 | if templ_7745c5c3_Err != nil { | ||
| 653 | return templ_7745c5c3_Err | 852 | return templ_7745c5c3_Err | ||
| 654 | } | 853 | } | ||
| 655 | } | 854 | } | ||
| 656 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 45, "<ul class=\"jobs\">") | 855 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 63, "<ul class=\"jobs\">") |
| 657 | if templ_7745c5c3_Err != nil { | 856 | if templ_7745c5c3_Err != nil { | ||
| 658 | return templ_7745c5c3_Err | 857 | return templ_7745c5c3_Err | ||
| 659 | } | 858 | } | ||
| 660 | for _, j := range p.Jobs { | 859 | for _, j := range p.Jobs { | ||
| 661 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 46, "<li id=\"") | 860 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 64, "<li id=\"") |
| 662 | if templ_7745c5c3_Err != nil { | 861 | if templ_7745c5c3_Err != nil { | ||
| 663 | return templ_7745c5c3_Err | 862 | return templ_7745c5c3_Err | ||
| 664 | } | 863 | } | ||
| 665 | - | var templ_7745c5c3_Var35 string | 864 | + | var templ_7745c5c3_Var46 string |
| 666 | - | templ_7745c5c3_Var35, templ_7745c5c3_Err = templ.ResolveAttributeValue("job-" + j.ID) | 865 | + | templ_7745c5c3_Var46, templ_7745c5c3_Err = templ.ResolveAttributeValue("job-" + j.ID) |
| 667 | if templ_7745c5c3_Err != nil { | 866 | if templ_7745c5c3_Err != nil { | ||
| 668 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 90, Col: 25} | 867 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 111, Col: 25} |
| 669 | } | 868 | } | ||
| 670 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var35) | 869 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var46) |
| 671 | if templ_7745c5c3_Err != nil { | 870 | if templ_7745c5c3_Err != nil { | ||
| 672 | return templ_7745c5c3_Err | 871 | return templ_7745c5c3_Err | ||
| 673 | } | 872 | } | ||
| 674 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 47, "\"><a class=\"job-h\" href=\"") | 873 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 65, "\"><a class=\"job-h\" href=\"") |
| 675 | if templ_7745c5c3_Err != nil { | 874 | if templ_7745c5c3_Err != nil { | ||
| 676 | return templ_7745c5c3_Err | 875 | return templ_7745c5c3_Err | ||
| 677 | } | 876 | } | ||
| 678 | - | var templ_7745c5c3_Var36 templ.SafeURL | 877 | + | var templ_7745c5c3_Var47 templ.SafeURL |
| 679 | - | templ_7745c5c3_Var36, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(j.Href)) | 878 | + | templ_7745c5c3_Var47, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(j.Href)) |
| 680 | if templ_7745c5c3_Err != nil { | 879 | if templ_7745c5c3_Err != nil { | ||
| 681 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 91, Col: 49} | 880 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 112, Col: 49} |
| 682 | } | 881 | } | ||
| 683 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var36)) | 882 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var47)) |
| 684 | if templ_7745c5c3_Err != nil { | 883 | if templ_7745c5c3_Err != nil { | ||
| 685 | return templ_7745c5c3_Err | 884 | return templ_7745c5c3_Err | ||
| 686 | } | 885 | } | ||
| 687 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 48, "\">") | 886 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 66, "\">") |
| 688 | if templ_7745c5c3_Err != nil { | 887 | if templ_7745c5c3_Err != nil { | ||
| 689 | return templ_7745c5c3_Err | 888 | return templ_7745c5c3_Err | ||
| 690 | } | 889 | } | ||
| @@ -692,118 +891,118 @@ func RunBody(p RunPage) templ.Component { | |||||
| 692 | if templ_7745c5c3_Err != nil { | 891 | if templ_7745c5c3_Err != nil { | ||
| 693 | return templ_7745c5c3_Err | 892 | return templ_7745c5c3_Err | ||
| 694 | } | 893 | } | ||
| 695 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 49, "<span class=\"j-name\">") | 894 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 67, "<span class=\"j-name\">") |
| 696 | if templ_7745c5c3_Err != nil { | 895 | if templ_7745c5c3_Err != nil { | ||
| 697 | return templ_7745c5c3_Err | 896 | return templ_7745c5c3_Err | ||
| 698 | } | 897 | } | ||
| 699 | - | var templ_7745c5c3_Var37 string | 898 | + | var templ_7745c5c3_Var48 string |
| 700 | - | templ_7745c5c3_Var37, templ_7745c5c3_Err = templ.JoinStringErrs(j.Name) | 899 | + | templ_7745c5c3_Var48, templ_7745c5c3_Err = templ.JoinStringErrs(j.Name) |
| 701 | if templ_7745c5c3_Err != nil { | 900 | if templ_7745c5c3_Err != nil { | ||
| 702 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 93, Col: 34} | 901 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 114, Col: 34} |
| 703 | } | 902 | } | ||
| 704 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var37)) | 903 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var48)) |
| 705 | if templ_7745c5c3_Err != nil { | 904 | if templ_7745c5c3_Err != nil { | ||
| 706 | return templ_7745c5c3_Err | 905 | return templ_7745c5c3_Err | ||
| 707 | } | 906 | } | ||
| 708 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 50, "</span> <span class=\"dim\">") | 907 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 68, "</span> <span class=\"dim\">") |
| 709 | if templ_7745c5c3_Err != nil { | 908 | if templ_7745c5c3_Err != nil { | ||
| 710 | return templ_7745c5c3_Err | 909 | return templ_7745c5c3_Err | ||
| 711 | } | 910 | } | ||
| 712 | - | var templ_7745c5c3_Var38 string | 911 | + | var templ_7745c5c3_Var49 string |
| 713 | - | templ_7745c5c3_Var38, templ_7745c5c3_Err = templ.JoinStringErrs(j.State) | 912 | + | templ_7745c5c3_Var49, templ_7745c5c3_Err = templ.JoinStringErrs(j.State) |
| 714 | if templ_7745c5c3_Err != nil { | 913 | if templ_7745c5c3_Err != nil { | ||
| 715 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 94, Col: 32} | 914 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 115, Col: 32} |
| 716 | } | 915 | } | ||
| 717 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var38)) | 916 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var49)) |
| 718 | if templ_7745c5c3_Err != nil { | 917 | if templ_7745c5c3_Err != nil { | ||
| 719 | return templ_7745c5c3_Err | 918 | return templ_7745c5c3_Err | ||
| 720 | } | 919 | } | ||
| 721 | - | var templ_7745c5c3_Var39 string | 920 | + | var templ_7745c5c3_Var50 string |
| 722 | - | templ_7745c5c3_Var39, templ_7745c5c3_Err = templ.JoinStringErrs(" ") | 921 | + | templ_7745c5c3_Var50, templ_7745c5c3_Err = templ.JoinStringErrs(" ") |
| 723 | if templ_7745c5c3_Err != nil { | 922 | if templ_7745c5c3_Err != nil { | ||
| 724 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 94, Col: 39} | 923 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 115, Col: 39} |
| 725 | } | 924 | } | ||
| 726 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var39)) | 925 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var50)) |
| 727 | if templ_7745c5c3_Err != nil { | 926 | if templ_7745c5c3_Err != nil { | ||
| 728 | return templ_7745c5c3_Err | 927 | return templ_7745c5c3_Err | ||
| 729 | } | 928 | } | ||
| 730 | - | var templ_7745c5c3_Var40 string | 929 | + | var templ_7745c5c3_Var51 string |
| 731 | - | templ_7745c5c3_Var40, templ_7745c5c3_Err = templ.JoinStringErrs(j.Duration) | 930 | + | templ_7745c5c3_Var51, templ_7745c5c3_Err = templ.JoinStringErrs(j.Duration) |
| 732 | if templ_7745c5c3_Err != nil { | 931 | if templ_7745c5c3_Err != nil { | ||
| 733 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 94, Col: 53} | 932 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 115, Col: 53} |
| 734 | } | 933 | } | ||
| 735 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var40)) | 934 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var51)) |
| 736 | if templ_7745c5c3_Err != nil { | 935 | if templ_7745c5c3_Err != nil { | ||
| 737 | return templ_7745c5c3_Err | 936 | return templ_7745c5c3_Err | ||
| 738 | } | 937 | } | ||
| 739 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 51, "</span></a> ") | 938 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 69, "</span></a> ") |
| 740 | if templ_7745c5c3_Err != nil { | 939 | if templ_7745c5c3_Err != nil { | ||
| 741 | return templ_7745c5c3_Err | 940 | return templ_7745c5c3_Err | ||
| 742 | } | 941 | } | ||
| 743 | if j.Runner != "" { | 942 | if j.Runner != "" { | ||
| 744 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 52, "<span class=\"mute\">on ") | 943 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 70, "<span class=\"mute\">on ") |
| 745 | if templ_7745c5c3_Err != nil { | 944 | if templ_7745c5c3_Err != nil { | ||
| 746 | return templ_7745c5c3_Err | 945 | return templ_7745c5c3_Err | ||
| 747 | } | 946 | } | ||
| 748 | - | var templ_7745c5c3_Var41 string | 947 | + | var templ_7745c5c3_Var52 string |
| 749 | - | templ_7745c5c3_Var41, templ_7745c5c3_Err = templ.JoinStringErrs(runnerText(j)) | 948 | + | templ_7745c5c3_Var52, templ_7745c5c3_Err = templ.JoinStringErrs(runnerText(j)) |
| 750 | if templ_7745c5c3_Err != nil { | 949 | if templ_7745c5c3_Err != nil { | ||
| 751 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 97, Col: 42} | 950 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 118, Col: 42} |
| 752 | } | 951 | } | ||
| 753 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var41)) | 952 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var52)) |
| 754 | if templ_7745c5c3_Err != nil { | 953 | if templ_7745c5c3_Err != nil { | ||
| 755 | return templ_7745c5c3_Err | 954 | return templ_7745c5c3_Err | ||
| 756 | } | 955 | } | ||
| 757 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 53, "</span> ") | 956 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 71, "</span> ") |
| 758 | if templ_7745c5c3_Err != nil { | 957 | if templ_7745c5c3_Err != nil { | ||
| 759 | return templ_7745c5c3_Err | 958 | return templ_7745c5c3_Err | ||
| 760 | } | 959 | } | ||
| 761 | } | 960 | } | ||
| 762 | if len(j.Needs) > 0 { | 961 | if len(j.Needs) > 0 { | ||
| 763 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 54, "<span class=\"mute\">needs ") | 962 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 72, "<span class=\"mute\">needs ") |
| 764 | if templ_7745c5c3_Err != nil { | 963 | if templ_7745c5c3_Err != nil { | ||
| 765 | return templ_7745c5c3_Err | 964 | return templ_7745c5c3_Err | ||
| 766 | } | 965 | } | ||
| 767 | - | var templ_7745c5c3_Var42 string | 966 | + | var templ_7745c5c3_Var53 string |
| 768 | - | templ_7745c5c3_Var42, templ_7745c5c3_Err = templ.JoinStringErrs(joinWords(j.Needs)) | 967 | + | templ_7745c5c3_Var53, templ_7745c5c3_Err = templ.JoinStringErrs(joinWords(j.Needs)) |
| 769 | if templ_7745c5c3_Err != nil { | 968 | if templ_7745c5c3_Err != nil { | ||
| 770 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 100, Col: 50} | 969 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 121, Col: 50} |
| 771 | } | 970 | } | ||
| 772 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var42)) | 971 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var53)) |
| 773 | if templ_7745c5c3_Err != nil { | 972 | if templ_7745c5c3_Err != nil { | ||
| 774 | return templ_7745c5c3_Err | 973 | return templ_7745c5c3_Err | ||
| 775 | } | 974 | } | ||
| 776 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 55, "</span> ") | 975 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 73, "</span> ") |
| 777 | if templ_7745c5c3_Err != nil { | 976 | if templ_7745c5c3_Err != nil { | ||
| 778 | return templ_7745c5c3_Err | 977 | return templ_7745c5c3_Err | ||
| 779 | } | 978 | } | ||
| 780 | } | 979 | } | ||
| 781 | if j.Error != "" { | 980 | if j.Error != "" { | ||
| 782 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 56, "<p class=\"job-err\">") | 981 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 74, "<p class=\"job-err\">") |
| 783 | if templ_7745c5c3_Err != nil { | 982 | if templ_7745c5c3_Err != nil { | ||
| 784 | return templ_7745c5c3_Err | 983 | return templ_7745c5c3_Err | ||
| 785 | } | 984 | } | ||
| 786 | - | var templ_7745c5c3_Var43 string | 985 | + | var templ_7745c5c3_Var54 string |
| 787 | - | templ_7745c5c3_Var43, templ_7745c5c3_Err = templ.JoinStringErrs(j.Error) | 986 | + | templ_7745c5c3_Var54, templ_7745c5c3_Err = templ.JoinStringErrs(j.Error) |
| 788 | if templ_7745c5c3_Err != nil { | 987 | if templ_7745c5c3_Err != nil { | ||
| 789 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 103, Col: 33} | 988 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 124, Col: 33} |
| 790 | } | 989 | } | ||
| 791 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var43)) | 990 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var54)) |
| 792 | if templ_7745c5c3_Err != nil { | 991 | if templ_7745c5c3_Err != nil { | ||
| 793 | return templ_7745c5c3_Err | 992 | return templ_7745c5c3_Err | ||
| 794 | } | 993 | } | ||
| 795 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 57, "</p>") | 994 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 75, "</p>") |
| 796 | if templ_7745c5c3_Err != nil { | 995 | if templ_7745c5c3_Err != nil { | ||
| 797 | return templ_7745c5c3_Err | 996 | return templ_7745c5c3_Err | ||
| 798 | } | 997 | } | ||
| 799 | } | 998 | } | ||
| 800 | if len(j.Steps) > 0 { | 999 | if len(j.Steps) > 0 { | ||
| 801 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 58, "<ol class=\"steps\">") | 1000 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 76, "<ol class=\"steps\">") |
| 802 | if templ_7745c5c3_Err != nil { | 1001 | if templ_7745c5c3_Err != nil { | ||
| 803 | return templ_7745c5c3_Err | 1002 | return templ_7745c5c3_Err | ||
| 804 | } | 1003 | } | ||
| 805 | for _, s := range j.Steps { | 1004 | for _, s := range j.Steps { | ||
| 806 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 59, "<li>") | 1005 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 77, "<li>") |
| 807 | if templ_7745c5c3_Err != nil { | 1006 | if templ_7745c5c3_Err != nil { | ||
| 808 | return templ_7745c5c3_Err | 1007 | return templ_7745c5c3_Err | ||
| 809 | } | 1008 | } | ||
| @@ -811,48 +1010,48 @@ func RunBody(p RunPage) templ.Component { | |||||
| 811 | if templ_7745c5c3_Err != nil { | 1010 | if templ_7745c5c3_Err != nil { | ||
| 812 | return templ_7745c5c3_Err | 1011 | return templ_7745c5c3_Err | ||
| 813 | } | 1012 | } | ||
| 814 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 60, "<span>") | 1013 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 78, "<span>") |
| 815 | if templ_7745c5c3_Err != nil { | 1014 | if templ_7745c5c3_Err != nil { | ||
| 816 | return templ_7745c5c3_Err | 1015 | return templ_7745c5c3_Err | ||
| 817 | } | 1016 | } | ||
| 818 | - | var templ_7745c5c3_Var44 string | 1017 | + | var templ_7745c5c3_Var55 string |
| 819 | - | templ_7745c5c3_Var44, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) | 1018 | + | templ_7745c5c3_Var55, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) |
| 820 | if templ_7745c5c3_Err != nil { | 1019 | if templ_7745c5c3_Err != nil { | ||
| 821 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 108, Col: 53} | 1020 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 129, Col: 53} |
| 822 | } | 1021 | } | ||
| 823 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var44)) | 1022 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var55)) |
| 824 | if templ_7745c5c3_Err != nil { | 1023 | if templ_7745c5c3_Err != nil { | ||
| 825 | return templ_7745c5c3_Err | 1024 | return templ_7745c5c3_Err | ||
| 826 | } | 1025 | } | ||
| 827 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 61, "</span> <span class=\"dim\">") | 1026 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 79, "</span> <span class=\"dim\">") |
| 828 | if templ_7745c5c3_Err != nil { | 1027 | if templ_7745c5c3_Err != nil { | ||
| 829 | return templ_7745c5c3_Err | 1028 | return templ_7745c5c3_Err | ||
| 830 | } | 1029 | } | ||
| 831 | - | var templ_7745c5c3_Var45 string | 1030 | + | var templ_7745c5c3_Var56 string |
| 832 | - | templ_7745c5c3_Var45, templ_7745c5c3_Err = templ.JoinStringErrs(s.Duration) | 1031 | + | templ_7745c5c3_Var56, templ_7745c5c3_Err = templ.JoinStringErrs(s.Duration) |
| 833 | if templ_7745c5c3_Err != nil { | 1032 | if templ_7745c5c3_Err != nil { | ||
| 834 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 108, Col: 93} | 1033 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 129, Col: 93} |
| 835 | } | 1034 | } | ||
| 836 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var45)) | 1035 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var56)) |
| 837 | if templ_7745c5c3_Err != nil { | 1036 | if templ_7745c5c3_Err != nil { | ||
| 838 | return templ_7745c5c3_Err | 1037 | return templ_7745c5c3_Err | ||
| 839 | } | 1038 | } | ||
| 840 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 62, "</span></li>") | 1039 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 80, "</span></li>") |
| 841 | if templ_7745c5c3_Err != nil { | 1040 | if templ_7745c5c3_Err != nil { | ||
| 842 | return templ_7745c5c3_Err | 1041 | return templ_7745c5c3_Err | ||
| 843 | } | 1042 | } | ||
| 844 | } | 1043 | } | ||
| 845 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 63, "</ol>") | 1044 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 81, "</ol>") |
| 846 | if templ_7745c5c3_Err != nil { | 1045 | if templ_7745c5c3_Err != nil { | ||
| 847 | return templ_7745c5c3_Err | 1046 | return templ_7745c5c3_Err | ||
| 848 | } | 1047 | } | ||
| 849 | } | 1048 | } | ||
| 850 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 64, "</li>") | 1049 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 82, "</li>") |
| 851 | if templ_7745c5c3_Err != nil { | 1050 | if templ_7745c5c3_Err != nil { | ||
| 852 | return templ_7745c5c3_Err | 1051 | return templ_7745c5c3_Err | ||
| 853 | } | 1052 | } | ||
| 854 | } | 1053 | } | ||
| 855 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 65, "</ul>") | 1054 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 83, "</ul>") |
| 856 | if templ_7745c5c3_Err != nil { | 1055 | if templ_7745c5c3_Err != nil { | ||
| 857 | return templ_7745c5c3_Err | 1056 | return templ_7745c5c3_Err | ||
| 858 | } | 1057 | } | ||
| @@ -880,327 +1079,327 @@ func AnnotationList(anns []AnnotationView, more bool, grouped bool) templ.Compon | |||||
| 880 | }() | 1079 | }() | ||
| 881 | } | 1080 | } | ||
| 882 | ctx = templ.InitializeContext(ctx) | 1081 | ctx = templ.InitializeContext(ctx) | ||
| 883 | - | templ_7745c5c3_Var46 := templ.GetChildren(ctx) | 1082 | + | templ_7745c5c3_Var57 := templ.GetChildren(ctx) |
| 884 | - | if templ_7745c5c3_Var46 == nil { | 1083 | + | if templ_7745c5c3_Var57 == nil { |
| 885 | - | templ_7745c5c3_Var46 = templ.NopComponent | 1084 | + | templ_7745c5c3_Var57 = templ.NopComponent |
| 886 | } | 1085 | } | ||
| 887 | ctx = templ.ClearChildren(ctx) | 1086 | ctx = templ.ClearChildren(ctx) | ||
| 888 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 66, "<ul class=\"annot-list\">") | 1087 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 84, "<ul class=\"annot-list\">") |
| 889 | if templ_7745c5c3_Err != nil { | 1088 | if templ_7745c5c3_Err != nil { | ||
| 890 | return templ_7745c5c3_Err | 1089 | return templ_7745c5c3_Err | ||
| 891 | } | 1090 | } | ||
| 892 | for _, a := range anns { | 1091 | for _, a := range anns { | ||
| 893 | - | var templ_7745c5c3_Var47 = []any{"annot", "annot-" + a.Kind} | 1092 | + | var templ_7745c5c3_Var58 = []any{"annot", "annot-" + a.Kind} |
| 894 | - | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var47...) | 1093 | + | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var58...) |
| 895 | if templ_7745c5c3_Err != nil { | 1094 | if templ_7745c5c3_Err != nil { | ||
| 896 | return templ_7745c5c3_Err | 1095 | return templ_7745c5c3_Err | ||
| 897 | } | 1096 | } | ||
| 898 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 67, "<li class=\"") | 1097 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 85, "<li class=\"") |
| 899 | if templ_7745c5c3_Err != nil { | 1098 | if templ_7745c5c3_Err != nil { | ||
| 900 | return templ_7745c5c3_Err | 1099 | return templ_7745c5c3_Err | ||
| 901 | } | 1100 | } | ||
| 902 | - | var templ_7745c5c3_Var48 string | 1101 | + | var templ_7745c5c3_Var59 string |
| 903 | - | templ_7745c5c3_Var48, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var47).String()) | 1102 | + | templ_7745c5c3_Var59, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var58).String()) |
| 904 | if templ_7745c5c3_Err != nil { | 1103 | if templ_7745c5c3_Err != nil { | ||
| 905 | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 1, Col: 0} | 1104 | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 1, Col: 0} | ||
| 906 | } | 1105 | } | ||
| 907 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var48) | 1106 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var59) |
| 908 | if templ_7745c5c3_Err != nil { | 1107 | if templ_7745c5c3_Err != nil { | ||
| 909 | return templ_7745c5c3_Err | 1108 | return templ_7745c5c3_Err | ||
| 910 | } | 1109 | } | ||
| 911 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 68, "\">") | 1110 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 86, "\">") |
| 912 | if templ_7745c5c3_Err != nil { | 1111 | if templ_7745c5c3_Err != nil { | ||
| 913 | return templ_7745c5c3_Err | 1112 | return templ_7745c5c3_Err | ||
| 914 | } | 1113 | } | ||
| 915 | if grouped && a.StepHead { | 1114 | if grouped && a.StepHead { | ||
| 916 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 69, "<p class=\"annot-step\">") | 1115 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 87, "<p class=\"annot-step\">") |
| 917 | if templ_7745c5c3_Err != nil { | 1116 | if templ_7745c5c3_Err != nil { | ||
| 918 | return templ_7745c5c3_Err | 1117 | return templ_7745c5c3_Err | ||
| 919 | } | 1118 | } | ||
| 920 | if a.StepHref != "" { | 1119 | if a.StepHref != "" { | ||
| 921 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 70, "<a href=\"") | 1120 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 88, "<a href=\"") |
| 922 | if templ_7745c5c3_Err != nil { | 1121 | if templ_7745c5c3_Err != nil { | ||
| 923 | return templ_7745c5c3_Err | 1122 | return templ_7745c5c3_Err | ||
| 924 | } | 1123 | } | ||
| 925 | - | var templ_7745c5c3_Var49 templ.SafeURL | 1124 | + | var templ_7745c5c3_Var60 templ.SafeURL |
| 926 | - | templ_7745c5c3_Var49, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.StepHref)) | 1125 | + | templ_7745c5c3_Var60, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.StepHref)) |
| 927 | if templ_7745c5c3_Err != nil { | 1126 | if templ_7745c5c3_Err != nil { | ||
| 928 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 128, Col: 42} | 1127 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 149, Col: 42} |
| 929 | } | 1128 | } | ||
| 930 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var49)) | 1129 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var60)) |
| 931 | if templ_7745c5c3_Err != nil { | 1130 | if templ_7745c5c3_Err != nil { | ||
| 932 | return templ_7745c5c3_Err | 1131 | return templ_7745c5c3_Err | ||
| 933 | } | 1132 | } | ||
| 934 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 71, "\">") | 1133 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 89, "\">") |
| 935 | if templ_7745c5c3_Err != nil { | 1134 | if templ_7745c5c3_Err != nil { | ||
| 936 | return templ_7745c5c3_Err | 1135 | return templ_7745c5c3_Err | ||
| 937 | } | 1136 | } | ||
| 938 | - | var templ_7745c5c3_Var50 string | 1137 | + | var templ_7745c5c3_Var61 string |
| 939 | - | templ_7745c5c3_Var50, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) | 1138 | + | templ_7745c5c3_Var61, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) |
| 940 | if templ_7745c5c3_Err != nil { | 1139 | if templ_7745c5c3_Err != nil { | ||
| 941 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 128, Col: 53} | 1140 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 149, Col: 53} |
| 942 | } | 1141 | } | ||
| 943 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var50)) | 1142 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var61)) |
| 944 | if templ_7745c5c3_Err != nil { | 1143 | if templ_7745c5c3_Err != nil { | ||
| 945 | return templ_7745c5c3_Err | 1144 | return templ_7745c5c3_Err | ||
| 946 | } | 1145 | } | ||
| 947 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 72, "</a>") | 1146 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 90, "</a>") |
| 948 | if templ_7745c5c3_Err != nil { | 1147 | if templ_7745c5c3_Err != nil { | ||
| 949 | return templ_7745c5c3_Err | 1148 | return templ_7745c5c3_Err | ||
| 950 | } | 1149 | } | ||
| 951 | } else { | 1150 | } else { | ||
| 952 | - | var templ_7745c5c3_Var51 string | 1151 | + | var templ_7745c5c3_Var62 string |
| 953 | - | templ_7745c5c3_Var51, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) | 1152 | + | templ_7745c5c3_Var62, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) |
| 954 | if templ_7745c5c3_Err != nil { | 1153 | if templ_7745c5c3_Err != nil { | ||
| 955 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 130, Col: 15} | 1154 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 151, Col: 15} |
| 956 | } | 1155 | } | ||
| 957 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var51)) | 1156 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var62)) |
| 958 | if templ_7745c5c3_Err != nil { | 1157 | if templ_7745c5c3_Err != nil { | ||
| 959 | return templ_7745c5c3_Err | 1158 | return templ_7745c5c3_Err | ||
| 960 | } | 1159 | } | ||
| 961 | } | 1160 | } | ||
| 962 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 73, "</p>") | 1161 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 91, "</p>") |
| 963 | if templ_7745c5c3_Err != nil { | 1162 | if templ_7745c5c3_Err != nil { | ||
| 964 | return templ_7745c5c3_Err | 1163 | return templ_7745c5c3_Err | ||
| 965 | } | 1164 | } | ||
| 966 | } | 1165 | } | ||
| 967 | - | var templ_7745c5c3_Var52 = []any{"an", "an-" + a.Kind} | 1166 | + | var templ_7745c5c3_Var63 = []any{"an", "an-" + a.Kind} |
| 968 | - | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var52...) | 1167 | + | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var63...) |
| 969 | if templ_7745c5c3_Err != nil { | 1168 | if templ_7745c5c3_Err != nil { | ||
| 970 | return templ_7745c5c3_Err | 1169 | return templ_7745c5c3_Err | ||
| 971 | } | 1170 | } | ||
| 972 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 74, "<span class=\"") | 1171 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 92, "<span class=\"") |
| 973 | if templ_7745c5c3_Err != nil { | 1172 | if templ_7745c5c3_Err != nil { | ||
| 974 | return templ_7745c5c3_Err | 1173 | return templ_7745c5c3_Err | ||
| 975 | } | 1174 | } | ||
| 976 | - | var templ_7745c5c3_Var53 string | 1175 | + | var templ_7745c5c3_Var64 string |
| 977 | - | templ_7745c5c3_Var53, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var52).String()) | 1176 | + | templ_7745c5c3_Var64, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var63).String()) |
| 978 | if templ_7745c5c3_Err != nil { | 1177 | if templ_7745c5c3_Err != nil { | ||
| 979 | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 1, Col: 0} | 1178 | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 1, Col: 0} | ||
| 980 | } | 1179 | } | ||
| 981 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var53) | 1180 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var64) |
| 982 | if templ_7745c5c3_Err != nil { | 1181 | if templ_7745c5c3_Err != nil { | ||
| 983 | return templ_7745c5c3_Err | 1182 | return templ_7745c5c3_Err | ||
| 984 | } | 1183 | } | ||
| 985 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 75, "\" role=\"img\" aria-label=\"") | 1184 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 93, "\" role=\"img\" aria-label=\"") |
| 986 | if templ_7745c5c3_Err != nil { | 1185 | if templ_7745c5c3_Err != nil { | ||
| 987 | return templ_7745c5c3_Err | 1186 | return templ_7745c5c3_Err | ||
| 988 | } | 1187 | } | ||
| 989 | - | var templ_7745c5c3_Var54 string | 1188 | + | var templ_7745c5c3_Var65 string |
| 990 | - | templ_7745c5c3_Var54, templ_7745c5c3_Err = templ.ResolveAttributeValue(a.Level) | 1189 | + | templ_7745c5c3_Var65, templ_7745c5c3_Err = templ.ResolveAttributeValue(a.Level) |
| 991 | if templ_7745c5c3_Err != nil { | 1190 | if templ_7745c5c3_Err != nil { | ||
| 992 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 134, Col: 72} | 1191 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 155, Col: 72} |
| 993 | } | 1192 | } | ||
| 994 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var54) | 1193 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var65) |
| 995 | if templ_7745c5c3_Err != nil { | 1194 | if templ_7745c5c3_Err != nil { | ||
| 996 | return templ_7745c5c3_Err | 1195 | return templ_7745c5c3_Err | ||
| 997 | } | 1196 | } | ||
| 998 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 76, "\" title=\"") | 1197 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 94, "\" title=\"") |
| 999 | if templ_7745c5c3_Err != nil { | 1198 | if templ_7745c5c3_Err != nil { | ||
| 1000 | return templ_7745c5c3_Err | 1199 | return templ_7745c5c3_Err | ||
| 1001 | } | 1200 | } | ||
| 1002 | - | var templ_7745c5c3_Var55 string | 1201 | + | var templ_7745c5c3_Var66 string |
| 1003 | - | templ_7745c5c3_Var55, templ_7745c5c3_Err = templ.ResolveAttributeValue(a.Level) | 1202 | + | templ_7745c5c3_Var66, templ_7745c5c3_Err = templ.ResolveAttributeValue(a.Level) |
| 1004 | if templ_7745c5c3_Err != nil { | 1203 | if templ_7745c5c3_Err != nil { | ||
| 1005 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 134, Col: 90} | 1204 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 155, Col: 90} |
| 1006 | } | 1205 | } | ||
| 1007 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var55) | 1206 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var66) |
| 1008 | if templ_7745c5c3_Err != nil { | 1207 | if templ_7745c5c3_Err != nil { | ||
| 1009 | return templ_7745c5c3_Err | 1208 | return templ_7745c5c3_Err | ||
| 1010 | } | 1209 | } | ||
| 1011 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 77, "\"></span><div class=\"annot-body\"><p class=\"annot-head\"><span class=\"annot-level\">") | 1210 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 95, "\"></span><div class=\"annot-body\"><p class=\"annot-head\"><span class=\"annot-level\">") |
| 1012 | if templ_7745c5c3_Err != nil { | 1211 | if templ_7745c5c3_Err != nil { | ||
| 1013 | return templ_7745c5c3_Err | 1212 | return templ_7745c5c3_Err | ||
| 1014 | } | 1213 | } | ||
| 1015 | - | var templ_7745c5c3_Var56 string | 1214 | + | var templ_7745c5c3_Var67 string |
| 1016 | - | templ_7745c5c3_Var56, templ_7745c5c3_Err = templ.JoinStringErrs(a.Level) | 1215 | + | templ_7745c5c3_Var67, templ_7745c5c3_Err = templ.JoinStringErrs(a.Level) |
| 1017 | if templ_7745c5c3_Err != nil { | 1216 | if templ_7745c5c3_Err != nil { | ||
| 1018 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 137, Col: 41} | 1217 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 158, Col: 41} |
| 1019 | } | 1218 | } | ||
| 1020 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var56)) | 1219 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var67)) |
| 1021 | if templ_7745c5c3_Err != nil { | 1220 | if templ_7745c5c3_Err != nil { | ||
| 1022 | return templ_7745c5c3_Err | 1221 | return templ_7745c5c3_Err | ||
| 1023 | } | 1222 | } | ||
| 1024 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 78, "</span> ") | 1223 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 96, "</span> ") |
| 1025 | if templ_7745c5c3_Err != nil { | 1224 | if templ_7745c5c3_Err != nil { | ||
| 1026 | return templ_7745c5c3_Err | 1225 | return templ_7745c5c3_Err | ||
| 1027 | } | 1226 | } | ||
| 1028 | if !grouped { | 1227 | if !grouped { | ||
| 1029 | if a.JobHref != "" { | 1228 | if a.JobHref != "" { | ||
| 1030 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 79, "<a href=\"") | 1229 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 97, "<a href=\"") |
| 1031 | if templ_7745c5c3_Err != nil { | 1230 | if templ_7745c5c3_Err != nil { | ||
| 1032 | return templ_7745c5c3_Err | 1231 | return templ_7745c5c3_Err | ||
| 1033 | } | 1232 | } | ||
| 1034 | - | var templ_7745c5c3_Var57 templ.SafeURL | 1233 | + | var templ_7745c5c3_Var68 templ.SafeURL |
| 1035 | - | templ_7745c5c3_Var57, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.JobHref)) | 1234 | + | templ_7745c5c3_Var68, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.JobHref)) |
| 1036 | if templ_7745c5c3_Err != nil { | 1235 | if templ_7745c5c3_Err != nil { | ||
| 1037 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 140, Col: 42} | 1236 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 161, Col: 42} |
| 1038 | } | 1237 | } | ||
| 1039 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var57)) | 1238 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var68)) |
| 1040 | if templ_7745c5c3_Err != nil { | 1239 | if templ_7745c5c3_Err != nil { | ||
| 1041 | return templ_7745c5c3_Err | 1240 | return templ_7745c5c3_Err | ||
| 1042 | } | 1241 | } | ||
| 1043 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 80, "\">") | 1242 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 98, "\">") |
| 1044 | if templ_7745c5c3_Err != nil { | 1243 | if templ_7745c5c3_Err != nil { | ||
| 1045 | return templ_7745c5c3_Err | 1244 | return templ_7745c5c3_Err | ||
| 1046 | } | 1245 | } | ||
| 1047 | - | var templ_7745c5c3_Var58 string | 1246 | + | var templ_7745c5c3_Var69 string |
| 1048 | - | templ_7745c5c3_Var58, templ_7745c5c3_Err = templ.JoinStringErrs(a.Job) | 1247 | + | templ_7745c5c3_Var69, templ_7745c5c3_Err = templ.JoinStringErrs(a.Job) |
| 1049 | if templ_7745c5c3_Err != nil { | 1248 | if templ_7745c5c3_Err != nil { | ||
| 1050 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 140, Col: 52} | 1249 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 161, Col: 52} |
| 1051 | } | 1250 | } | ||
| 1052 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var58)) | 1251 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var69)) |
| 1053 | if templ_7745c5c3_Err != nil { | 1252 | if templ_7745c5c3_Err != nil { | ||
| 1054 | return templ_7745c5c3_Err | 1253 | return templ_7745c5c3_Err | ||
| 1055 | } | 1254 | } | ||
| 1056 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 81, "</a>") | 1255 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 99, "</a>") |
| 1057 | if templ_7745c5c3_Err != nil { | 1256 | if templ_7745c5c3_Err != nil { | ||
| 1058 | return templ_7745c5c3_Err | 1257 | return templ_7745c5c3_Err | ||
| 1059 | } | 1258 | } | ||
| 1060 | } else { | 1259 | } else { | ||
| 1061 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 82, "<span>") | 1260 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 100, "<span>") |
| 1062 | if templ_7745c5c3_Err != nil { | 1261 | if templ_7745c5c3_Err != nil { | ||
| 1063 | return templ_7745c5c3_Err | 1262 | return templ_7745c5c3_Err | ||
| 1064 | } | 1263 | } | ||
| 1065 | - | var templ_7745c5c3_Var59 string | 1264 | + | var templ_7745c5c3_Var70 string |
| 1066 | - | templ_7745c5c3_Var59, templ_7745c5c3_Err = templ.JoinStringErrs(a.Job) | 1265 | + | templ_7745c5c3_Var70, templ_7745c5c3_Err = templ.JoinStringErrs(a.Job) |
| 1067 | if templ_7745c5c3_Err != nil { | 1266 | if templ_7745c5c3_Err != nil { | ||
| 1068 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 142, Col: 21} | 1267 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 163, Col: 21} |
| 1069 | } | 1268 | } | ||
| 1070 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var59)) | 1269 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var70)) |
| 1071 | if templ_7745c5c3_Err != nil { | 1270 | if templ_7745c5c3_Err != nil { | ||
| 1072 | return templ_7745c5c3_Err | 1271 | return templ_7745c5c3_Err | ||
| 1073 | } | 1272 | } | ||
| 1074 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 83, "</span>") | 1273 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 101, "</span>") |
| 1075 | if templ_7745c5c3_Err != nil { | 1274 | if templ_7745c5c3_Err != nil { | ||
| 1076 | return templ_7745c5c3_Err | 1275 | return templ_7745c5c3_Err | ||
| 1077 | } | 1276 | } | ||
| 1078 | } | 1277 | } | ||
| 1079 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 84, " <span class=\"mute\">") | 1278 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 102, " <span class=\"mute\">") |
| 1080 | if templ_7745c5c3_Err != nil { | 1279 | if templ_7745c5c3_Err != nil { | ||
| 1081 | return templ_7745c5c3_Err | 1280 | return templ_7745c5c3_Err | ||
| 1082 | } | 1281 | } | ||
| 1083 | - | var templ_7745c5c3_Var60 string | 1282 | + | var templ_7745c5c3_Var71 string |
| 1084 | - | templ_7745c5c3_Var60, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) | 1283 | + | templ_7745c5c3_Var71, templ_7745c5c3_Err = templ.JoinStringErrs(a.Step) |
| 1085 | if templ_7745c5c3_Err != nil { | 1284 | if templ_7745c5c3_Err != nil { | ||
| 1086 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 144, Col: 34} | 1285 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 165, Col: 34} |
| 1087 | } | 1286 | } | ||
| 1088 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var60)) | 1287 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var71)) |
| 1089 | if templ_7745c5c3_Err != nil { | 1288 | if templ_7745c5c3_Err != nil { | ||
| 1090 | return templ_7745c5c3_Err | 1289 | return templ_7745c5c3_Err | ||
| 1091 | } | 1290 | } | ||
| 1092 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 85, "</span> ") | 1291 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 103, "</span> ") |
| 1093 | if templ_7745c5c3_Err != nil { | 1292 | if templ_7745c5c3_Err != nil { | ||
| 1094 | return templ_7745c5c3_Err | 1293 | return templ_7745c5c3_Err | ||
| 1095 | } | 1294 | } | ||
| 1096 | } | 1295 | } | ||
| 1097 | if a.Title != "" { | 1296 | if a.Title != "" { | ||
| 1098 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 86, "<strong>") | 1297 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 104, "<strong>") |
| 1099 | if templ_7745c5c3_Err != nil { | 1298 | if templ_7745c5c3_Err != nil { | ||
| 1100 | return templ_7745c5c3_Err | 1299 | return templ_7745c5c3_Err | ||
| 1101 | } | 1300 | } | ||
| 1102 | - | var templ_7745c5c3_Var61 string | 1301 | + | var templ_7745c5c3_Var72 string |
| 1103 | - | templ_7745c5c3_Var61, templ_7745c5c3_Err = templ.JoinStringErrs(a.Title) | 1302 | + | templ_7745c5c3_Var72, templ_7745c5c3_Err = templ.JoinStringErrs(a.Title) |
| 1104 | if templ_7745c5c3_Err != nil { | 1303 | if templ_7745c5c3_Err != nil { | ||
| 1105 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 147, Col: 24} | 1304 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 168, Col: 24} |
| 1106 | } | 1305 | } | ||
| 1107 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var61)) | 1306 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var72)) |
| 1108 | if templ_7745c5c3_Err != nil { | 1307 | if templ_7745c5c3_Err != nil { | ||
| 1109 | return templ_7745c5c3_Err | 1308 | return templ_7745c5c3_Err | ||
| 1110 | } | 1309 | } | ||
| 1111 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 87, "</strong>") | 1310 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 105, "</strong>") |
| 1112 | if templ_7745c5c3_Err != nil { | 1311 | if templ_7745c5c3_Err != nil { | ||
| 1113 | return templ_7745c5c3_Err | 1312 | return templ_7745c5c3_Err | ||
| 1114 | } | 1313 | } | ||
| 1115 | } | 1314 | } | ||
| 1116 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 88, "</p><p class=\"annot-msg\">") | 1315 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 106, "</p><p class=\"annot-msg\">") |
| 1117 | if templ_7745c5c3_Err != nil { | 1316 | if templ_7745c5c3_Err != nil { | ||
| 1118 | return templ_7745c5c3_Err | 1317 | return templ_7745c5c3_Err | ||
| 1119 | } | 1318 | } | ||
| 1120 | - | var templ_7745c5c3_Var62 string | 1319 | + | var templ_7745c5c3_Var73 string |
| 1121 | - | templ_7745c5c3_Var62, templ_7745c5c3_Err = templ.JoinStringErrs(a.Message) | 1320 | + | templ_7745c5c3_Var73, templ_7745c5c3_Err = templ.JoinStringErrs(a.Message) |
| 1122 | if templ_7745c5c3_Err != nil { | 1321 | if templ_7745c5c3_Err != nil { | ||
| 1123 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 150, Col: 37} | 1322 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 171, Col: 37} |
| 1124 | } | 1323 | } | ||
| 1125 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var62)) | 1324 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var73)) |
| 1126 | if templ_7745c5c3_Err != nil { | 1325 | if templ_7745c5c3_Err != nil { | ||
| 1127 | return templ_7745c5c3_Err | 1326 | return templ_7745c5c3_Err | ||
| 1128 | } | 1327 | } | ||
| 1129 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 89, "</p>") | 1328 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 107, "</p>") |
| 1130 | if templ_7745c5c3_Err != nil { | 1329 | if templ_7745c5c3_Err != nil { | ||
| 1131 | return templ_7745c5c3_Err | 1330 | return templ_7745c5c3_Err | ||
| 1132 | } | 1331 | } | ||
| 1133 | if a.Where != "" { | 1332 | if a.Where != "" { | ||
| 1134 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 90, "<p class=\"annot-where\">") | 1333 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 108, "<p class=\"annot-where\">") |
| 1135 | if templ_7745c5c3_Err != nil { | 1334 | if templ_7745c5c3_Err != nil { | ||
| 1136 | return templ_7745c5c3_Err | 1335 | return templ_7745c5c3_Err | ||
| 1137 | } | 1336 | } | ||
| 1138 | if a.WhereHref != "" { | 1337 | if a.WhereHref != "" { | ||
| 1139 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 91, "<a href=\"") | 1338 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 109, "<a href=\"") |
| 1140 | if templ_7745c5c3_Err != nil { | 1339 | if templ_7745c5c3_Err != nil { | ||
| 1141 | return templ_7745c5c3_Err | 1340 | return templ_7745c5c3_Err | ||
| 1142 | } | 1341 | } | ||
| 1143 | - | var templ_7745c5c3_Var63 templ.SafeURL | 1342 | + | var templ_7745c5c3_Var74 templ.SafeURL |
| 1144 | - | templ_7745c5c3_Var63, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.WhereHref)) | 1343 | + | templ_7745c5c3_Var74, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.WhereHref)) |
| 1145 | if templ_7745c5c3_Err != nil { | 1344 | if templ_7745c5c3_Err != nil { | ||
| 1146 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 154, Col: 44} | 1345 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 175, Col: 44} |
| 1147 | } | 1346 | } | ||
| 1148 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var63)) | 1347 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var74)) |
| 1149 | if templ_7745c5c3_Err != nil { | 1348 | if templ_7745c5c3_Err != nil { | ||
| 1150 | return templ_7745c5c3_Err | 1349 | return templ_7745c5c3_Err | ||
| 1151 | } | 1350 | } | ||
| 1152 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 92, "\">") | 1351 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 110, "\">") |
| 1153 | if templ_7745c5c3_Err != nil { | 1352 | if templ_7745c5c3_Err != nil { | ||
| 1154 | return templ_7745c5c3_Err | 1353 | return templ_7745c5c3_Err | ||
| 1155 | } | 1354 | } | ||
| 1156 | - | var templ_7745c5c3_Var64 string | 1355 | + | var templ_7745c5c3_Var75 string |
| 1157 | - | templ_7745c5c3_Var64, templ_7745c5c3_Err = templ.JoinStringErrs(a.Where) | 1356 | + | templ_7745c5c3_Var75, templ_7745c5c3_Err = templ.JoinStringErrs(a.Where) |
| 1158 | if templ_7745c5c3_Err != nil { | 1357 | if templ_7745c5c3_Err != nil { | ||
| 1159 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 154, Col: 56} | 1358 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 175, Col: 56} |
| 1160 | } | 1359 | } | ||
| 1161 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var64)) | 1360 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var75)) |
| 1162 | if templ_7745c5c3_Err != nil { | 1361 | if templ_7745c5c3_Err != nil { | ||
| 1163 | return templ_7745c5c3_Err | 1362 | return templ_7745c5c3_Err | ||
| 1164 | } | 1363 | } | ||
| 1165 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 93, "</a>") | 1364 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 111, "</a>") |
| 1166 | if templ_7745c5c3_Err != nil { | 1365 | if templ_7745c5c3_Err != nil { | ||
| 1167 | return templ_7745c5c3_Err | 1366 | return templ_7745c5c3_Err | ||
| 1168 | } | 1367 | } | ||
| 1169 | } else { | 1368 | } else { | ||
| 1170 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 94, "<span>") | 1369 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 112, "<span>") |
| 1171 | if templ_7745c5c3_Err != nil { | 1370 | if templ_7745c5c3_Err != nil { | ||
| 1172 | return templ_7745c5c3_Err | 1371 | return templ_7745c5c3_Err | ||
| 1173 | } | 1372 | } | ||
| 1174 | - | var templ_7745c5c3_Var65 string | 1373 | + | var templ_7745c5c3_Var76 string |
| 1175 | - | templ_7745c5c3_Var65, templ_7745c5c3_Err = templ.JoinStringErrs(a.Where) | 1374 | + | templ_7745c5c3_Var76, templ_7745c5c3_Err = templ.JoinStringErrs(a.Where) |
| 1176 | if templ_7745c5c3_Err != nil { | 1375 | if templ_7745c5c3_Err != nil { | ||
| 1177 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 156, Col: 23} | 1376 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 177, Col: 23} |
| 1178 | } | 1377 | } | ||
| 1179 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var65)) | 1378 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var76)) |
| 1180 | if templ_7745c5c3_Err != nil { | 1379 | if templ_7745c5c3_Err != nil { | ||
| 1181 | return templ_7745c5c3_Err | 1380 | return templ_7745c5c3_Err | ||
| 1182 | } | 1381 | } | ||
| 1183 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 95, "</span>") | 1382 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 113, "</span>") |
| 1184 | if templ_7745c5c3_Err != nil { | 1383 | if templ_7745c5c3_Err != nil { | ||
| 1185 | return templ_7745c5c3_Err | 1384 | return templ_7745c5c3_Err | ||
| 1186 | } | 1385 | } | ||
| 1187 | } | 1386 | } | ||
| 1188 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 96, "</p>") | 1387 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 114, "</p>") |
| 1189 | if templ_7745c5c3_Err != nil { | 1388 | if templ_7745c5c3_Err != nil { | ||
| 1190 | return templ_7745c5c3_Err | 1389 | return templ_7745c5c3_Err | ||
| 1191 | } | 1390 | } | ||
| 1192 | } | 1391 | } | ||
| 1193 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 97, "</div></li>") | 1392 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 115, "</div></li>") |
| 1194 | if templ_7745c5c3_Err != nil { | 1393 | if templ_7745c5c3_Err != nil { | ||
| 1195 | return templ_7745c5c3_Err | 1394 | return templ_7745c5c3_Err | ||
| 1196 | } | 1395 | } | ||
| 1197 | } | 1396 | } | ||
| 1198 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 98, "</ul>") | 1397 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 116, "</ul>") |
| 1199 | if templ_7745c5c3_Err != nil { | 1398 | if templ_7745c5c3_Err != nil { | ||
| 1200 | return templ_7745c5c3_Err | 1399 | return templ_7745c5c3_Err | ||
| 1201 | } | 1400 | } | ||
| 1202 | if more { | 1401 | if more { | ||
| 1203 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 99, "<p class=\"mute\">more annotations exist than are shown.</p>") | 1402 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 117, "<p class=\"mute\">more annotations exist than are shown.</p>") |
| 1204 | if templ_7745c5c3_Err != nil { | 1403 | if templ_7745c5c3_Err != nil { | ||
| 1205 | return templ_7745c5c3_Err | 1404 | return templ_7745c5c3_Err | ||
| 1206 | } | 1405 | } | ||
| @@ -1228,30 +1427,30 @@ func JobAnnotations(anns []AnnotationView, more bool) templ.Component { | |||||
| 1228 | }() | 1427 | }() | ||
| 1229 | } | 1428 | } | ||
| 1230 | ctx = templ.InitializeContext(ctx) | 1429 | ctx = templ.InitializeContext(ctx) | ||
| 1231 | - | templ_7745c5c3_Var66 := templ.GetChildren(ctx) | 1430 | + | templ_7745c5c3_Var77 := templ.GetChildren(ctx) |
| 1232 | - | if templ_7745c5c3_Var66 == nil { | 1431 | + | if templ_7745c5c3_Var77 == nil { |
| 1233 | - | templ_7745c5c3_Var66 = templ.NopComponent | 1432 | + | templ_7745c5c3_Var77 = templ.NopComponent |
| 1234 | } | 1433 | } | ||
| 1235 | ctx = templ.ClearChildren(ctx) | 1434 | ctx = templ.ClearChildren(ctx) | ||
| 1236 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 100, "<section id=\"job-annotations\" class=\"annots\" aria-label=\"Annotations\">") | 1435 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 118, "<section id=\"job-annotations\" class=\"annots\" aria-label=\"Annotations\">") |
| 1237 | if templ_7745c5c3_Err != nil { | 1436 | if templ_7745c5c3_Err != nil { | ||
| 1238 | return templ_7745c5c3_Err | 1437 | return templ_7745c5c3_Err | ||
| 1239 | } | 1438 | } | ||
| 1240 | if len(anns) > 0 { | 1439 | if len(anns) > 0 { | ||
| 1241 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 101, "<h3>Annotations <span class=\"count\">") | 1440 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 119, "<h3>Annotations <span class=\"count\">") |
| 1242 | if templ_7745c5c3_Err != nil { | 1441 | if templ_7745c5c3_Err != nil { | ||
| 1243 | return templ_7745c5c3_Err | 1442 | return templ_7745c5c3_Err | ||
| 1244 | } | 1443 | } | ||
| 1245 | - | var templ_7745c5c3_Var67 string | 1444 | + | var templ_7745c5c3_Var78 string |
| 1246 | - | templ_7745c5c3_Var67, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(anns))) | 1445 | + | templ_7745c5c3_Var78, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(anns))) |
| 1247 | if templ_7745c5c3_Err != nil { | 1446 | if templ_7745c5c3_Err != nil { | ||
| 1248 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 175, Col: 56} | 1447 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 196, Col: 56} |
| 1249 | } | 1448 | } | ||
| 1250 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var67)) | 1449 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var78)) |
| 1251 | if templ_7745c5c3_Err != nil { | 1450 | if templ_7745c5c3_Err != nil { | ||
| 1252 | return templ_7745c5c3_Err | 1451 | return templ_7745c5c3_Err | ||
| 1253 | } | 1452 | } | ||
| 1254 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 102, "</span></h3>") | 1453 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 120, "</span></h3>") |
| 1255 | if templ_7745c5c3_Err != nil { | 1454 | if templ_7745c5c3_Err != nil { | ||
| 1256 | return templ_7745c5c3_Err | 1455 | return templ_7745c5c3_Err | ||
| 1257 | } | 1456 | } | ||
| @@ -1260,7 +1459,7 @@ func JobAnnotations(anns []AnnotationView, more bool) templ.Component { | |||||
| 1260 | return templ_7745c5c3_Err | 1459 | return templ_7745c5c3_Err | ||
| 1261 | } | 1460 | } | ||
| 1262 | } | 1461 | } | ||
| 1263 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 103, "</section>") | 1462 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 121, "</section>") |
| 1264 | if templ_7745c5c3_Err != nil { | 1463 | if templ_7745c5c3_Err != nil { | ||
| 1265 | return templ_7745c5c3_Err | 1464 | return templ_7745c5c3_Err | ||
| 1266 | } | 1465 | } | ||
| @@ -1287,125 +1486,125 @@ func RunSummaries(sums []JobSummaries, more bool) templ.Component { | |||||
| 1287 | }() | 1486 | }() | ||
| 1288 | } | 1487 | } | ||
| 1289 | ctx = templ.InitializeContext(ctx) | 1488 | ctx = templ.InitializeContext(ctx) | ||
| 1290 | - | templ_7745c5c3_Var68 := templ.GetChildren(ctx) | 1489 | + | templ_7745c5c3_Var79 := templ.GetChildren(ctx) |
| 1291 | - | if templ_7745c5c3_Var68 == nil { | 1490 | + | if templ_7745c5c3_Var79 == nil { |
| 1292 | - | templ_7745c5c3_Var68 = templ.NopComponent | 1491 | + | templ_7745c5c3_Var79 = templ.NopComponent |
| 1293 | } | 1492 | } | ||
| 1294 | ctx = templ.ClearChildren(ctx) | 1493 | ctx = templ.ClearChildren(ctx) | ||
| 1295 | for _, j := range sums { | 1494 | for _, j := range sums { | ||
| 1296 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 104, "<section class=\"summaries\" aria-label=\"") | 1495 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 122, "<section class=\"summaries\" aria-label=\"") |
| 1297 | if templ_7745c5c3_Err != nil { | 1496 | if templ_7745c5c3_Err != nil { | ||
| 1298 | return templ_7745c5c3_Err | 1497 | return templ_7745c5c3_Err | ||
| 1299 | } | 1498 | } | ||
| 1300 | - | var templ_7745c5c3_Var69 string | 1499 | + | var templ_7745c5c3_Var80 string |
| 1301 | - | templ_7745c5c3_Var69, templ_7745c5c3_Err = templ.ResolveAttributeValue("Summary of " + j.Job) | 1500 | + | templ_7745c5c3_Var80, templ_7745c5c3_Err = templ.ResolveAttributeValue("Summary of " + j.Job) |
| 1302 | if templ_7745c5c3_Err != nil { | 1501 | if templ_7745c5c3_Err != nil { | ||
| 1303 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 186, Col: 63} | 1502 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 207, Col: 63} |
| 1304 | } | 1503 | } | ||
| 1305 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var69) | 1504 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var80) |
| 1306 | if templ_7745c5c3_Err != nil { | 1505 | if templ_7745c5c3_Err != nil { | ||
| 1307 | return templ_7745c5c3_Err | 1506 | return templ_7745c5c3_Err | ||
| 1308 | } | 1507 | } | ||
| 1309 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 105, "\"><h3>") | 1508 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 123, "\"><h3>") |
| 1310 | if templ_7745c5c3_Err != nil { | 1509 | if templ_7745c5c3_Err != nil { | ||
| 1311 | return templ_7745c5c3_Err | 1510 | return templ_7745c5c3_Err | ||
| 1312 | } | 1511 | } | ||
| 1313 | if j.JobHref != "" { | 1512 | if j.JobHref != "" { | ||
| 1314 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 106, "<a href=\"") | 1513 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 124, "<a href=\"") |
| 1315 | if templ_7745c5c3_Err != nil { | 1514 | if templ_7745c5c3_Err != nil { | ||
| 1316 | return templ_7745c5c3_Err | 1515 | return templ_7745c5c3_Err | ||
| 1317 | } | 1516 | } | ||
| 1318 | - | var templ_7745c5c3_Var70 templ.SafeURL | 1517 | + | var templ_7745c5c3_Var81 templ.SafeURL |
| 1319 | - | templ_7745c5c3_Var70, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(j.JobHref)) | 1518 | + | templ_7745c5c3_Var81, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(j.JobHref)) |
| 1320 | if templ_7745c5c3_Err != nil { | 1519 | if templ_7745c5c3_Err != nil { | ||
| 1321 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 189, Col: 39} | 1520 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 210, Col: 39} |
| 1322 | } | 1521 | } | ||
| 1323 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var70)) | 1522 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var81)) |
| 1324 | if templ_7745c5c3_Err != nil { | 1523 | if templ_7745c5c3_Err != nil { | ||
| 1325 | return templ_7745c5c3_Err | 1524 | return templ_7745c5c3_Err | ||
| 1326 | } | 1525 | } | ||
| 1327 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 107, "\">") | 1526 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 125, "\">") |
| 1328 | if templ_7745c5c3_Err != nil { | 1527 | if templ_7745c5c3_Err != nil { | ||
| 1329 | return templ_7745c5c3_Err | 1528 | return templ_7745c5c3_Err | ||
| 1330 | } | 1529 | } | ||
| 1331 | - | var templ_7745c5c3_Var71 string | 1530 | + | var templ_7745c5c3_Var82 string |
| 1332 | - | templ_7745c5c3_Var71, templ_7745c5c3_Err = templ.JoinStringErrs(j.Job) | 1531 | + | templ_7745c5c3_Var82, templ_7745c5c3_Err = templ.JoinStringErrs(j.Job) |
| 1333 | if templ_7745c5c3_Err != nil { | 1532 | if templ_7745c5c3_Err != nil { | ||
| 1334 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 189, Col: 49} | 1533 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 210, Col: 49} |
| 1335 | } | 1534 | } | ||
| 1336 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var71)) | 1535 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var82)) |
| 1337 | if templ_7745c5c3_Err != nil { | 1536 | if templ_7745c5c3_Err != nil { | ||
| 1338 | return templ_7745c5c3_Err | 1537 | return templ_7745c5c3_Err | ||
| 1339 | } | 1538 | } | ||
| 1340 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 108, "</a> ") | 1539 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 126, "</a> ") |
| 1341 | if templ_7745c5c3_Err != nil { | 1540 | if templ_7745c5c3_Err != nil { | ||
| 1342 | return templ_7745c5c3_Err | 1541 | return templ_7745c5c3_Err | ||
| 1343 | } | 1542 | } | ||
| 1344 | } else { | 1543 | } else { | ||
| 1345 | - | var templ_7745c5c3_Var72 string | 1544 | + | var templ_7745c5c3_Var83 string |
| 1346 | - | templ_7745c5c3_Var72, templ_7745c5c3_Err = templ.JoinStringErrs(j.Job) | 1545 | + | templ_7745c5c3_Var83, templ_7745c5c3_Err = templ.JoinStringErrs(j.Job) |
| 1347 | if templ_7745c5c3_Err != nil { | 1546 | if templ_7745c5c3_Err != nil { | ||
| 1348 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 191, Col: 12} | 1547 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 212, Col: 12} |
| 1349 | } | 1548 | } | ||
| 1350 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var72)) | 1549 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var83)) |
| 1351 | if templ_7745c5c3_Err != nil { | 1550 | if templ_7745c5c3_Err != nil { | ||
| 1352 | return templ_7745c5c3_Err | 1551 | return templ_7745c5c3_Err | ||
| 1353 | } | 1552 | } | ||
| 1354 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 109, " ") | 1553 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 127, " ") |
| 1355 | if templ_7745c5c3_Err != nil { | 1554 | if templ_7745c5c3_Err != nil { | ||
| 1356 | return templ_7745c5c3_Err | 1555 | return templ_7745c5c3_Err | ||
| 1357 | } | 1556 | } | ||
| 1358 | } | 1557 | } | ||
| 1359 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 110, "<span class=\"mute\">summary</span></h3>") | 1558 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 128, "<span class=\"mute\">summary</span></h3>") |
| 1360 | if templ_7745c5c3_Err != nil { | 1559 | if templ_7745c5c3_Err != nil { | ||
| 1361 | return templ_7745c5c3_Err | 1560 | return templ_7745c5c3_Err | ||
| 1362 | } | 1561 | } | ||
| 1363 | for _, s := range j.Steps { | 1562 | for _, s := range j.Steps { | ||
| 1364 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 111, "<article class=\"prose summary\" aria-label=\"") | 1563 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 129, "<article class=\"prose summary\" aria-label=\"") |
| 1365 | if templ_7745c5c3_Err != nil { | 1564 | if templ_7745c5c3_Err != nil { | ||
| 1366 | return templ_7745c5c3_Err | 1565 | return templ_7745c5c3_Err | ||
| 1367 | } | 1566 | } | ||
| 1368 | - | var templ_7745c5c3_Var73 string | 1567 | + | var templ_7745c5c3_Var84 string |
| 1369 | - | templ_7745c5c3_Var73, templ_7745c5c3_Err = templ.ResolveAttributeValue(s.Step) | 1568 | + | templ_7745c5c3_Var84, templ_7745c5c3_Err = templ.ResolveAttributeValue(s.Step) |
| 1370 | if templ_7745c5c3_Err != nil { | 1569 | if templ_7745c5c3_Err != nil { | ||
| 1371 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 196, Col: 54} | 1570 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 217, Col: 54} |
| 1372 | } | 1571 | } | ||
| 1373 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var73) | 1572 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var84) |
| 1374 | if templ_7745c5c3_Err != nil { | 1573 | if templ_7745c5c3_Err != nil { | ||
| 1375 | return templ_7745c5c3_Err | 1574 | return templ_7745c5c3_Err | ||
| 1376 | } | 1575 | } | ||
| 1377 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 112, "\" hx-ignore><h4 class=\"summary-step\">") | 1576 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 130, "\" hx-ignore><h4 class=\"summary-step\">") |
| 1378 | if templ_7745c5c3_Err != nil { | 1577 | if templ_7745c5c3_Err != nil { | ||
| 1379 | return templ_7745c5c3_Err | 1578 | return templ_7745c5c3_Err | ||
| 1380 | } | 1579 | } | ||
| 1381 | - | var templ_7745c5c3_Var74 string | 1580 | + | var templ_7745c5c3_Var85 string |
| 1382 | - | templ_7745c5c3_Var74, templ_7745c5c3_Err = templ.JoinStringErrs(s.Step) | 1581 | + | templ_7745c5c3_Var85, templ_7745c5c3_Err = templ.JoinStringErrs(s.Step) |
| 1383 | if templ_7745c5c3_Err != nil { | 1582 | if templ_7745c5c3_Err != nil { | ||
| 1384 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 197, Col: 38} | 1583 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 218, Col: 38} |
| 1385 | } | 1584 | } | ||
| 1386 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var74)) | 1585 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var85)) |
| 1387 | if templ_7745c5c3_Err != nil { | 1586 | if templ_7745c5c3_Err != nil { | ||
| 1388 | return templ_7745c5c3_Err | 1587 | return templ_7745c5c3_Err | ||
| 1389 | } | 1588 | } | ||
| 1390 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 113, "</h4>") | 1589 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 131, "</h4>") |
| 1391 | if templ_7745c5c3_Err != nil { | 1590 | if templ_7745c5c3_Err != nil { | ||
| 1392 | return templ_7745c5c3_Err | 1591 | return templ_7745c5c3_Err | ||
| 1393 | } | 1592 | } | ||
| 1394 | if s.Note != "" { | 1593 | if s.Note != "" { | ||
| 1395 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 114, "<p class=\"dim\">") | 1594 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 132, "<p class=\"dim\">") |
| 1396 | if templ_7745c5c3_Err != nil { | 1595 | if templ_7745c5c3_Err != nil { | ||
| 1397 | return templ_7745c5c3_Err | 1596 | return templ_7745c5c3_Err | ||
| 1398 | } | 1597 | } | ||
| 1399 | - | var templ_7745c5c3_Var75 string | 1598 | + | var templ_7745c5c3_Var86 string |
| 1400 | - | templ_7745c5c3_Var75, templ_7745c5c3_Err = templ.JoinStringErrs(s.Note) | 1599 | + | templ_7745c5c3_Var86, templ_7745c5c3_Err = templ.JoinStringErrs(s.Note) |
| 1401 | if templ_7745c5c3_Err != nil { | 1600 | if templ_7745c5c3_Err != nil { | ||
| 1402 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 199, Col: 29} | 1601 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 220, Col: 29} |
| 1403 | } | 1602 | } | ||
| 1404 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var75)) | 1603 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var86)) |
| 1405 | if templ_7745c5c3_Err != nil { | 1604 | if templ_7745c5c3_Err != nil { | ||
| 1406 | return templ_7745c5c3_Err | 1605 | return templ_7745c5c3_Err | ||
| 1407 | } | 1606 | } | ||
| 1408 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 115, "</p>") | 1607 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 133, "</p>") |
| 1409 | if templ_7745c5c3_Err != nil { | 1608 | if templ_7745c5c3_Err != nil { | ||
| 1410 | return templ_7745c5c3_Err | 1609 | return templ_7745c5c3_Err | ||
| 1411 | } | 1610 | } | ||
| @@ -1415,37 +1614,37 @@ func RunSummaries(sums []JobSummaries, more bool) templ.Component { | |||||
| 1415 | return templ_7745c5c3_Err | 1614 | return templ_7745c5c3_Err | ||
| 1416 | } | 1615 | } | ||
| 1417 | } | 1616 | } | ||
| 1418 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 116, "</article>") | 1617 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 134, "</article>") |
| 1419 | if templ_7745c5c3_Err != nil { | 1618 | if templ_7745c5c3_Err != nil { | ||
| 1420 | return templ_7745c5c3_Err | 1619 | return templ_7745c5c3_Err | ||
| 1421 | } | 1620 | } | ||
| 1422 | } | 1621 | } | ||
| 1423 | if j.More { | 1622 | if j.More { | ||
| 1424 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 117, "<p class=\"mute\">the job has more summaries than the first 20, which are shown.</p>") | 1623 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 135, "<p class=\"mute\">the job has more summaries than the first 20, which are shown.</p>") |
| 1425 | if templ_7745c5c3_Err != nil { | 1624 | if templ_7745c5c3_Err != nil { | ||
| 1426 | return templ_7745c5c3_Err | 1625 | return templ_7745c5c3_Err | ||
| 1427 | } | 1626 | } | ||
| 1428 | } | 1627 | } | ||
| 1429 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 118, "</section>") | 1628 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 136, "</section>") |
| 1430 | if templ_7745c5c3_Err != nil { | 1629 | if templ_7745c5c3_Err != nil { | ||
| 1431 | return templ_7745c5c3_Err | 1630 | return templ_7745c5c3_Err | ||
| 1432 | } | 1631 | } | ||
| 1433 | } | 1632 | } | ||
| 1434 | if more { | 1633 | if more { | ||
| 1435 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 119, "<p class=\"mute\">more summaries are not shown: the summaries of the page are over ") | 1634 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 137, "<p class=\"mute\">more summaries are not shown: the summaries of the page are over ") |
| 1436 | if templ_7745c5c3_Err != nil { | 1635 | if templ_7745c5c3_Err != nil { | ||
| 1437 | return templ_7745c5c3_Err | 1636 | return templ_7745c5c3_Err | ||
| 1438 | } | 1637 | } | ||
| 1439 | - | var templ_7745c5c3_Var76 string | 1638 | + | var templ_7745c5c3_Var87 string |
| 1440 | - | templ_7745c5c3_Var76, templ_7745c5c3_Err = templ.JoinStringErrs(humanSize(maxSummaryPageBytes)) | 1639 | + | templ_7745c5c3_Var87, templ_7745c5c3_Err = templ.JoinStringErrs(humanSize(maxSummaryPageBytes)) |
| 1441 | if templ_7745c5c3_Err != nil { | 1640 | if templ_7745c5c3_Err != nil { | ||
| 1442 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 211, Col: 115} | 1641 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 232, Col: 115} |
| 1443 | } | 1642 | } | ||
| 1444 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var76)) | 1643 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var87)) |
| 1445 | if templ_7745c5c3_Err != nil { | 1644 | if templ_7745c5c3_Err != nil { | ||
| 1446 | return templ_7745c5c3_Err | 1645 | return templ_7745c5c3_Err | ||
| 1447 | } | 1646 | } | ||
| 1448 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 120, ".</p>") | 1647 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 138, ".</p>") |
| 1449 | if templ_7745c5c3_Err != nil { | 1648 | if templ_7745c5c3_Err != nil { | ||
| 1450 | return templ_7745c5c3_Err | 1649 | return templ_7745c5c3_Err | ||
| 1451 | } | 1650 | } | ||
| @@ -1470,256 +1669,256 @@ func runRail(p RunPage) templ.Component { | |||||
| 1470 | }() | 1669 | }() | ||
| 1471 | } | 1670 | } | ||
| 1472 | ctx = templ.InitializeContext(ctx) | 1671 | ctx = templ.InitializeContext(ctx) | ||
| 1473 | - | templ_7745c5c3_Var77 := templ.GetChildren(ctx) | 1672 | + | templ_7745c5c3_Var88 := templ.GetChildren(ctx) |
| 1474 | - | if templ_7745c5c3_Var77 == nil { | 1673 | + | if templ_7745c5c3_Var88 == nil { |
| 1475 | - | templ_7745c5c3_Var77 = templ.NopComponent | 1674 | + | templ_7745c5c3_Var88 = templ.NopComponent |
| 1476 | } | 1675 | } | ||
| 1477 | ctx = templ.ClearChildren(ctx) | 1676 | ctx = templ.ClearChildren(ctx) | ||
| 1478 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 121, "<section aria-labelledby=\"r-run\"><h2 id=\"r-run\">Run</h2><dl class=\"kv\"><dt>result</dt><dd>") | 1677 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 139, "<section aria-labelledby=\"r-run\"><h2 id=\"r-run\">Run</h2><dl class=\"kv\"><dt>result</dt><dd>") |
| 1479 | if templ_7745c5c3_Err != nil { | 1678 | if templ_7745c5c3_Err != nil { | ||
| 1480 | return templ_7745c5c3_Err | 1679 | return templ_7745c5c3_Err | ||
| 1481 | } | 1680 | } | ||
| 1482 | - | var templ_7745c5c3_Var78 string | 1681 | + | var templ_7745c5c3_Var89 string |
| 1483 | - | templ_7745c5c3_Var78, templ_7745c5c3_Err = templ.JoinStringErrs(p.State) | 1682 | + | templ_7745c5c3_Var89, templ_7745c5c3_Err = templ.JoinStringErrs(p.State) |
| 1484 | if templ_7745c5c3_Err != nil { | 1683 | if templ_7745c5c3_Err != nil { | ||
| 1485 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 220, Col: 16} | 1684 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 241, Col: 16} |
| 1486 | } | 1685 | } | ||
| 1487 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var78)) | 1686 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var89)) |
| 1488 | if templ_7745c5c3_Err != nil { | 1687 | if templ_7745c5c3_Err != nil { | ||
| 1489 | return templ_7745c5c3_Err | 1688 | return templ_7745c5c3_Err | ||
| 1490 | } | 1689 | } | ||
| 1491 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 122, "</dd><dt>commit</dt><dd><a href=\"") | 1690 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 140, "</dd><dt>commit</dt><dd><a href=\"") |
| 1492 | if templ_7745c5c3_Err != nil { | 1691 | if templ_7745c5c3_Err != nil { | ||
| 1493 | return templ_7745c5c3_Err | 1692 | return templ_7745c5c3_Err | ||
| 1494 | } | 1693 | } | ||
| 1495 | - | var templ_7745c5c3_Var79 templ.SafeURL | 1694 | + | var templ_7745c5c3_Var90 templ.SafeURL |
| 1496 | - | templ_7745c5c3_Var79, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.CHref)) | 1695 | + | templ_7745c5c3_Var90, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.CHref)) |
| 1497 | if templ_7745c5c3_Err != nil { | 1696 | if templ_7745c5c3_Err != nil { | ||
| 1498 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 222, Col: 39} | 1697 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 243, Col: 39} |
| 1499 | } | 1698 | } | ||
| 1500 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var79)) | 1699 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var90)) |
| 1501 | if templ_7745c5c3_Err != nil { | 1700 | if templ_7745c5c3_Err != nil { | ||
| 1502 | return templ_7745c5c3_Err | 1701 | return templ_7745c5c3_Err | ||
| 1503 | } | 1702 | } | ||
| 1504 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 123, "\">") | 1703 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 141, "\">") |
| 1505 | if templ_7745c5c3_Err != nil { | 1704 | if templ_7745c5c3_Err != nil { | ||
| 1506 | return templ_7745c5c3_Err | 1705 | return templ_7745c5c3_Err | ||
| 1507 | } | 1706 | } | ||
| 1508 | - | var templ_7745c5c3_Var80 string | 1707 | + | var templ_7745c5c3_Var91 string |
| 1509 | - | templ_7745c5c3_Var80, templ_7745c5c3_Err = templ.JoinStringErrs(p.Short) | 1708 | + | templ_7745c5c3_Var91, templ_7745c5c3_Err = templ.JoinStringErrs(p.Short) |
| 1510 | if templ_7745c5c3_Err != nil { | 1709 | if templ_7745c5c3_Err != nil { | ||
| 1511 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 222, Col: 51} | 1710 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 243, Col: 51} |
| 1512 | } | 1711 | } | ||
| 1513 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var80)) | 1712 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var91)) |
| 1514 | if templ_7745c5c3_Err != nil { | 1713 | if templ_7745c5c3_Err != nil { | ||
| 1515 | return templ_7745c5c3_Err | 1714 | return templ_7745c5c3_Err | ||
| 1516 | } | 1715 | } | ||
| 1517 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 124, "</a></dd><dt>ref</dt><dd><a href=\"") | 1716 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 142, "</a></dd><dt>ref</dt><dd><a href=\"") |
| 1518 | if templ_7745c5c3_Err != nil { | 1717 | if templ_7745c5c3_Err != nil { | ||
| 1519 | return templ_7745c5c3_Err | 1718 | return templ_7745c5c3_Err | ||
| 1520 | } | 1719 | } | ||
| 1521 | - | var templ_7745c5c3_Var81 templ.SafeURL | 1720 | + | var templ_7745c5c3_Var92 templ.SafeURL |
| 1522 | - | templ_7745c5c3_Var81, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RefHref)) | 1721 | + | templ_7745c5c3_Var92, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RefHref)) |
| 1523 | if templ_7745c5c3_Err != nil { | 1722 | if templ_7745c5c3_Err != nil { | ||
| 1524 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 224, Col: 41} | 1723 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 245, Col: 41} |
| 1525 | } | 1724 | } | ||
| 1526 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var81)) | 1725 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var92)) |
| 1527 | if templ_7745c5c3_Err != nil { | 1726 | if templ_7745c5c3_Err != nil { | ||
| 1528 | return templ_7745c5c3_Err | 1727 | return templ_7745c5c3_Err | ||
| 1529 | } | 1728 | } | ||
| 1530 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 125, "\">") | 1729 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 143, "\">") |
| 1531 | if templ_7745c5c3_Err != nil { | 1730 | if templ_7745c5c3_Err != nil { | ||
| 1532 | return templ_7745c5c3_Err | 1731 | return templ_7745c5c3_Err | ||
| 1533 | } | 1732 | } | ||
| 1534 | - | var templ_7745c5c3_Var82 string | 1733 | + | var templ_7745c5c3_Var93 string |
| 1535 | - | templ_7745c5c3_Var82, templ_7745c5c3_Err = templ.JoinStringErrs(p.Ref) | 1734 | + | templ_7745c5c3_Var93, templ_7745c5c3_Err = templ.JoinStringErrs(p.Ref) |
| 1536 | if templ_7745c5c3_Err != nil { | 1735 | if templ_7745c5c3_Err != nil { | ||
| 1537 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 224, Col: 51} | 1736 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 245, Col: 51} |
| 1538 | } | 1737 | } | ||
| 1539 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var82)) | 1738 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var93)) |
| 1540 | if templ_7745c5c3_Err != nil { | 1739 | if templ_7745c5c3_Err != nil { | ||
| 1541 | return templ_7745c5c3_Err | 1740 | return templ_7745c5c3_Err | ||
| 1542 | } | 1741 | } | ||
| 1543 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 126, "</a></dd><dt>actor</dt><dd>") | 1742 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 144, "</a></dd><dt>actor</dt><dd>") |
| 1544 | if templ_7745c5c3_Err != nil { | 1743 | if templ_7745c5c3_Err != nil { | ||
| 1545 | return templ_7745c5c3_Err | 1744 | return templ_7745c5c3_Err | ||
| 1546 | } | 1745 | } | ||
| 1547 | - | var templ_7745c5c3_Var83 string | 1746 | + | var templ_7745c5c3_Var94 string |
| 1548 | - | templ_7745c5c3_Var83, templ_7745c5c3_Err = templ.JoinStringErrs(p.Actor) | 1747 | + | templ_7745c5c3_Var94, templ_7745c5c3_Err = templ.JoinStringErrs(p.Actor) |
| 1549 | if templ_7745c5c3_Err != nil { | 1748 | if templ_7745c5c3_Err != nil { | ||
| 1550 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 226, Col: 16} | 1749 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 247, Col: 16} |
| 1551 | } | 1750 | } | ||
| 1552 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var83)) | 1751 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var94)) |
| 1553 | if templ_7745c5c3_Err != nil { | 1752 | if templ_7745c5c3_Err != nil { | ||
| 1554 | return templ_7745c5c3_Err | 1753 | return templ_7745c5c3_Err | ||
| 1555 | } | 1754 | } | ||
| 1556 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 127, "</dd><dt>attempt</dt><dd>") | 1755 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 145, "</dd><dt>attempt</dt><dd>") |
| 1557 | if templ_7745c5c3_Err != nil { | 1756 | if templ_7745c5c3_Err != nil { | ||
| 1558 | return templ_7745c5c3_Err | 1757 | return templ_7745c5c3_Err | ||
| 1559 | } | 1758 | } | ||
| 1560 | - | var templ_7745c5c3_Var84 string | 1759 | + | var templ_7745c5c3_Var95 string |
| 1561 | - | templ_7745c5c3_Var84, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(int(p.Attempt))) | 1760 | + | templ_7745c5c3_Var95, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(int(p.Attempt))) |
| 1562 | if templ_7745c5c3_Err != nil { | 1761 | if templ_7745c5c3_Err != nil { | ||
| 1563 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 228, Col: 29} | 1762 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 249, Col: 29} |
| 1564 | } | 1763 | } | ||
| 1565 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var84)) | 1764 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var95)) |
| 1566 | if templ_7745c5c3_Err != nil { | 1765 | if templ_7745c5c3_Err != nil { | ||
| 1567 | return templ_7745c5c3_Err | 1766 | return templ_7745c5c3_Err | ||
| 1568 | } | 1767 | } | ||
| 1569 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 128, " of ") | 1768 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 146, " of ") |
| 1570 | if templ_7745c5c3_Err != nil { | 1769 | if templ_7745c5c3_Err != nil { | ||
| 1571 | return templ_7745c5c3_Err | 1770 | return templ_7745c5c3_Err | ||
| 1572 | } | 1771 | } | ||
| 1573 | - | var templ_7745c5c3_Var85 string | 1772 | + | var templ_7745c5c3_Var96 string |
| 1574 | - | templ_7745c5c3_Var85, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(int(p.Latest))) | 1773 | + | templ_7745c5c3_Var96, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(int(p.Latest))) |
| 1575 | if templ_7745c5c3_Err != nil { | 1774 | if templ_7745c5c3_Err != nil { | ||
| 1576 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 228, Col: 56} | 1775 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 249, Col: 56} |
| 1577 | } | 1776 | } | ||
| 1578 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var85)) | 1777 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var96)) |
| 1579 | if templ_7745c5c3_Err != nil { | 1778 | if templ_7745c5c3_Err != nil { | ||
| 1580 | return templ_7745c5c3_Err | 1779 | return templ_7745c5c3_Err | ||
| 1581 | } | 1780 | } | ||
| 1582 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 129, "</dd></dl>") | 1781 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 147, "</dd></dl>") |
| 1583 | if templ_7745c5c3_Err != nil { | 1782 | if templ_7745c5c3_Err != nil { | ||
| 1584 | return templ_7745c5c3_Err | 1783 | return templ_7745c5c3_Err | ||
| 1585 | } | 1784 | } | ||
| 1586 | if len(p.Attempts) > 0 { | 1785 | if len(p.Attempts) > 0 { | ||
| 1587 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 130, "<ul class=\"attempts\">") | 1786 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 148, "<ul class=\"attempts\">") |
| 1588 | if templ_7745c5c3_Err != nil { | 1787 | if templ_7745c5c3_Err != nil { | ||
| 1589 | return templ_7745c5c3_Err | 1788 | return templ_7745c5c3_Err | ||
| 1590 | } | 1789 | } | ||
| 1591 | for _, a := range p.Attempts { | 1790 | for _, a := range p.Attempts { | ||
| 1592 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 131, "<li>") | 1791 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 149, "<li>") |
| 1593 | if templ_7745c5c3_Err != nil { | 1792 | if templ_7745c5c3_Err != nil { | ||
| 1594 | return templ_7745c5c3_Err | 1793 | return templ_7745c5c3_Err | ||
| 1595 | } | 1794 | } | ||
| 1596 | if a.Current { | 1795 | if a.Current { | ||
| 1597 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 132, "<span aria-current=\"page\">") | 1796 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 150, "<span aria-current=\"page\">") |
| 1598 | if templ_7745c5c3_Err != nil { | 1797 | if templ_7745c5c3_Err != nil { | ||
| 1599 | return templ_7745c5c3_Err | 1798 | return templ_7745c5c3_Err | ||
| 1600 | } | 1799 | } | ||
| 1601 | - | var templ_7745c5c3_Var86 string | 1800 | + | var templ_7745c5c3_Var97 string |
| 1602 | - | templ_7745c5c3_Var86, templ_7745c5c3_Err = templ.JoinStringErrs(a.Label) | 1801 | + | templ_7745c5c3_Var97, templ_7745c5c3_Err = templ.JoinStringErrs(a.Label) |
| 1603 | if templ_7745c5c3_Err != nil { | 1802 | if templ_7745c5c3_Err != nil { | ||
| 1604 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 235, Col: 42} | 1803 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 256, Col: 42} |
| 1605 | } | 1804 | } | ||
| 1606 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var86)) | 1805 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var97)) |
| 1607 | if templ_7745c5c3_Err != nil { | 1806 | if templ_7745c5c3_Err != nil { | ||
| 1608 | return templ_7745c5c3_Err | 1807 | return templ_7745c5c3_Err | ||
| 1609 | } | 1808 | } | ||
| 1610 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 133, "</span>") | 1809 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 151, "</span>") |
| 1611 | if templ_7745c5c3_Err != nil { | 1810 | if templ_7745c5c3_Err != nil { | ||
| 1612 | return templ_7745c5c3_Err | 1811 | return templ_7745c5c3_Err | ||
| 1613 | } | 1812 | } | ||
| 1614 | } else { | 1813 | } else { | ||
| 1615 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 134, "<a href=\"") | 1814 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 152, "<a href=\"") |
| 1616 | if templ_7745c5c3_Err != nil { | 1815 | if templ_7745c5c3_Err != nil { | ||
| 1617 | return templ_7745c5c3_Err | 1816 | return templ_7745c5c3_Err | ||
| 1618 | } | 1817 | } | ||
| 1619 | - | var templ_7745c5c3_Var87 templ.SafeURL | 1818 | + | var templ_7745c5c3_Var98 templ.SafeURL |
| 1620 | - | templ_7745c5c3_Var87, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.Href)) | 1819 | + | templ_7745c5c3_Var98, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(a.Href)) |
| 1621 | if templ_7745c5c3_Err != nil { | 1820 | if templ_7745c5c3_Err != nil { | ||
| 1622 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 237, Col: 38} | 1821 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 258, Col: 38} |
| 1623 | } | 1822 | } | ||
| 1624 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var87)) | 1823 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var98)) |
| 1625 | if templ_7745c5c3_Err != nil { | 1824 | if templ_7745c5c3_Err != nil { | ||
| 1626 | return templ_7745c5c3_Err | 1825 | return templ_7745c5c3_Err | ||
| 1627 | } | 1826 | } | ||
| 1628 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 135, "\">") | 1827 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 153, "\">") |
| 1629 | if templ_7745c5c3_Err != nil { | 1828 | if templ_7745c5c3_Err != nil { | ||
| 1630 | return templ_7745c5c3_Err | 1829 | return templ_7745c5c3_Err | ||
| 1631 | } | 1830 | } | ||
| 1632 | - | var templ_7745c5c3_Var88 string | 1831 | + | var templ_7745c5c3_Var99 string |
| 1633 | - | templ_7745c5c3_Var88, templ_7745c5c3_Err = templ.JoinStringErrs(a.Label) | 1832 | + | templ_7745c5c3_Var99, templ_7745c5c3_Err = templ.JoinStringErrs(a.Label) |
| 1634 | if templ_7745c5c3_Err != nil { | 1833 | if templ_7745c5c3_Err != nil { | ||
| 1635 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 237, Col: 50} | 1834 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 258, Col: 50} |
| 1636 | } | 1835 | } | ||
| 1637 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var88)) | 1836 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var99)) |
| 1638 | if templ_7745c5c3_Err != nil { | 1837 | if templ_7745c5c3_Err != nil { | ||
| 1639 | return templ_7745c5c3_Err | 1838 | return templ_7745c5c3_Err | ||
| 1640 | } | 1839 | } | ||
| 1641 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 136, "</a>") | 1840 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 154, "</a>") |
| 1642 | if templ_7745c5c3_Err != nil { | 1841 | if templ_7745c5c3_Err != nil { | ||
| 1643 | return templ_7745c5c3_Err | 1842 | return templ_7745c5c3_Err | ||
| 1644 | } | 1843 | } | ||
| 1645 | } | 1844 | } | ||
| 1646 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 137, "</li>") | 1845 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 155, "</li>") |
| 1647 | if templ_7745c5c3_Err != nil { | 1846 | if templ_7745c5c3_Err != nil { | ||
| 1648 | return templ_7745c5c3_Err | 1847 | return templ_7745c5c3_Err | ||
| 1649 | } | 1848 | } | ||
| 1650 | } | 1849 | } | ||
| 1651 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 138, "</ul>") | 1850 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 156, "</ul>") |
| 1652 | if templ_7745c5c3_Err != nil { | 1851 | if templ_7745c5c3_Err != nil { | ||
| 1653 | return templ_7745c5c3_Err | 1852 | return templ_7745c5c3_Err | ||
| 1654 | } | 1853 | } | ||
| 1655 | } | 1854 | } | ||
| 1656 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 139, "</section>") | 1855 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 157, "</section>") |
| 1657 | if templ_7745c5c3_Err != nil { | 1856 | if templ_7745c5c3_Err != nil { | ||
| 1658 | return templ_7745c5c3_Err | 1857 | return templ_7745c5c3_Err | ||
| 1659 | } | 1858 | } | ||
| 1660 | if p.CancelAction != "" || p.RerunAction != "" { | 1859 | if p.CancelAction != "" || p.RerunAction != "" { | ||
| 1661 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 140, "<section aria-labelledby=\"r-act\" class=\"decide\"><h2 id=\"r-act\">Actions</h2><div class=\"d-btns\">") | 1860 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 158, "<section aria-labelledby=\"r-act\" class=\"decide\"><h2 id=\"r-act\">Actions</h2><div class=\"d-btns\">") |
| 1662 | if templ_7745c5c3_Err != nil { | 1861 | if templ_7745c5c3_Err != nil { | ||
| 1663 | return templ_7745c5c3_Err | 1862 | return templ_7745c5c3_Err | ||
| 1664 | } | 1863 | } | ||
| 1665 | if p.CancelAction != "" { | 1864 | if p.CancelAction != "" { | ||
| 1666 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 141, "<form method=\"post\" action=\"") | 1865 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 159, "<form method=\"post\" action=\"") |
| 1667 | if templ_7745c5c3_Err != nil { | 1866 | if templ_7745c5c3_Err != nil { | ||
| 1668 | return templ_7745c5c3_Err | 1867 | return templ_7745c5c3_Err | ||
| 1669 | } | 1868 | } | ||
| 1670 | - | var templ_7745c5c3_Var89 templ.SafeURL | 1869 | + | var templ_7745c5c3_Var100 templ.SafeURL |
| 1671 | - | templ_7745c5c3_Var89, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.CancelAction)) | 1870 | + | templ_7745c5c3_Var100, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.CancelAction)) |
| 1672 | if templ_7745c5c3_Err != nil { | 1871 | if templ_7745c5c3_Err != nil { | ||
| 1673 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 249, Col: 63} | 1872 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 270, Col: 63} |
| 1674 | } | 1873 | } | ||
| 1675 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var89)) | 1874 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var100)) |
| 1676 | if templ_7745c5c3_Err != nil { | 1875 | if templ_7745c5c3_Err != nil { | ||
| 1677 | return templ_7745c5c3_Err | 1876 | return templ_7745c5c3_Err | ||
| 1678 | } | 1877 | } | ||
| 1679 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 142, "\"><button type=\"submit\" class=\"btn\">Cancel run</button></form>") | 1878 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 160, "\"><button type=\"submit\" class=\"btn\">Cancel run</button></form>") |
| 1680 | if templ_7745c5c3_Err != nil { | 1879 | if templ_7745c5c3_Err != nil { | ||
| 1681 | return templ_7745c5c3_Err | 1880 | return templ_7745c5c3_Err | ||
| 1682 | } | 1881 | } | ||
| 1683 | } | 1882 | } | ||
| 1684 | if p.RerunAction != "" { | 1883 | if p.RerunAction != "" { | ||
| 1685 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 143, "<form method=\"post\" action=\"") | 1884 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 161, "<form method=\"post\" action=\"") |
| 1686 | if templ_7745c5c3_Err != nil { | 1885 | if templ_7745c5c3_Err != nil { | ||
| 1687 | return templ_7745c5c3_Err | 1886 | return templ_7745c5c3_Err | ||
| 1688 | } | 1887 | } | ||
| 1689 | - | var templ_7745c5c3_Var90 templ.SafeURL | 1888 | + | var templ_7745c5c3_Var101 templ.SafeURL |
| 1690 | - | templ_7745c5c3_Var90, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RerunAction)) | 1889 | + | templ_7745c5c3_Var101, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RerunAction)) |
| 1691 | if templ_7745c5c3_Err != nil { | 1890 | if templ_7745c5c3_Err != nil { | ||
| 1692 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 252, Col: 62} | 1891 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 273, Col: 62} |
| 1693 | } | 1892 | } | ||
| 1694 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var90)) | 1893 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var101)) |
| 1695 | if templ_7745c5c3_Err != nil { | 1894 | if templ_7745c5c3_Err != nil { | ||
| 1696 | return templ_7745c5c3_Err | 1895 | return templ_7745c5c3_Err | ||
| 1697 | } | 1896 | } | ||
| 1698 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 144, "\"><button type=\"submit\" class=\"btn primary\">Re-run all jobs</button></form>") | 1897 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 162, "\"><button type=\"submit\" class=\"btn primary\">Re-run all jobs</button></form>") |
| 1699 | if templ_7745c5c3_Err != nil { | 1898 | if templ_7745c5c3_Err != nil { | ||
| 1700 | return templ_7745c5c3_Err | 1899 | return templ_7745c5c3_Err | ||
| 1701 | } | 1900 | } | ||
| 1702 | } | 1901 | } | ||
| 1703 | if p.CanRerunFailed { | 1902 | if p.CanRerunFailed { | ||
| 1704 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 145, "<form method=\"post\" action=\"") | 1903 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 163, "<form method=\"post\" action=\"") |
| 1705 | if templ_7745c5c3_Err != nil { | 1904 | if templ_7745c5c3_Err != nil { | ||
| 1706 | return templ_7745c5c3_Err | 1905 | return templ_7745c5c3_Err | ||
| 1707 | } | 1906 | } | ||
| 1708 | - | var templ_7745c5c3_Var91 templ.SafeURL | 1907 | + | var templ_7745c5c3_Var102 templ.SafeURL |
| 1709 | - | templ_7745c5c3_Var91, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RerunFailedAction)) | 1908 | + | templ_7745c5c3_Var102, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RerunFailedAction)) |
| 1710 | if templ_7745c5c3_Err != nil { | 1909 | if templ_7745c5c3_Err != nil { | ||
| 1711 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 255, Col: 68} | 1910 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 276, Col: 68} |
| 1712 | } | 1911 | } | ||
| 1713 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var91)) | 1912 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var102)) |
| 1714 | if templ_7745c5c3_Err != nil { | 1913 | if templ_7745c5c3_Err != nil { | ||
| 1715 | return templ_7745c5c3_Err | 1914 | return templ_7745c5c3_Err | ||
| 1716 | } | 1915 | } | ||
| 1717 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 146, "\"><button type=\"submit\" class=\"btn\">Re-run failed jobs</button></form>") | 1916 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 164, "\"><button type=\"submit\" class=\"btn\">Re-run failed jobs</button></form>") |
| 1718 | if templ_7745c5c3_Err != nil { | 1917 | if templ_7745c5c3_Err != nil { | ||
| 1719 | return templ_7745c5c3_Err | 1918 | return templ_7745c5c3_Err | ||
| 1720 | } | 1919 | } | ||
| 1721 | } | 1920 | } | ||
| 1722 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 147, "</div></section>") | 1921 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 165, "</div></section>") |
| 1723 | if templ_7745c5c3_Err != nil { | 1922 | if templ_7745c5c3_Err != nil { | ||
| 1724 | return templ_7745c5c3_Err | 1923 | return templ_7745c5c3_Err | ||
| 1725 | } | 1924 | } | ||
| @@ -1746,25 +1945,25 @@ func JobHead(j JobRow, total int64) templ.Component { | |||||
| 1746 | }() | 1945 | }() | ||
| 1747 | } | 1946 | } | ||
| 1748 | ctx = templ.InitializeContext(ctx) | 1947 | ctx = templ.InitializeContext(ctx) | ||
| 1749 | - | templ_7745c5c3_Var92 := templ.GetChildren(ctx) | 1948 | + | templ_7745c5c3_Var103 := templ.GetChildren(ctx) |
| 1750 | - | if templ_7745c5c3_Var92 == nil { | 1949 | + | if templ_7745c5c3_Var103 == nil { |
| 1751 | - | templ_7745c5c3_Var92 = templ.NopComponent | 1950 | + | templ_7745c5c3_Var103 = templ.NopComponent |
| 1752 | } | 1951 | } | ||
| 1753 | ctx = templ.ClearChildren(ctx) | 1952 | ctx = templ.ClearChildren(ctx) | ||
| 1754 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 148, "<div id=\"job-head\" data-total=\"") | 1953 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 166, "<div id=\"job-head\" data-total=\"") |
| 1755 | if templ_7745c5c3_Err != nil { | 1954 | if templ_7745c5c3_Err != nil { | ||
| 1756 | return templ_7745c5c3_Err | 1955 | return templ_7745c5c3_Err | ||
| 1757 | } | 1956 | } | ||
| 1758 | - | var templ_7745c5c3_Var93 string | 1957 | + | var templ_7745c5c3_Var104 string |
| 1759 | - | templ_7745c5c3_Var93, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(total)) | 1958 | + | templ_7745c5c3_Var104, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(total)) |
| 1760 | if templ_7745c5c3_Err != nil { | 1959 | if templ_7745c5c3_Err != nil { | ||
| 1761 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 265, Col: 46} | 1960 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 286, Col: 46} |
| 1762 | } | 1961 | } | ||
| 1763 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var93) | 1962 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var104) |
| 1764 | if templ_7745c5c3_Err != nil { | 1963 | if templ_7745c5c3_Err != nil { | ||
| 1765 | return templ_7745c5c3_Err | 1964 | return templ_7745c5c3_Err | ||
| 1766 | } | 1965 | } | ||
| 1767 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 149, "\"><h2 class=\"run-h\">") | 1966 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 167, "\"><h2 class=\"run-h\">") |
| 1768 | if templ_7745c5c3_Err != nil { | 1967 | if templ_7745c5c3_Err != nil { | ||
| 1769 | return templ_7745c5c3_Err | 1968 | return templ_7745c5c3_Err | ||
| 1770 | } | 1969 | } | ||
| @@ -1772,74 +1971,74 @@ func JobHead(j JobRow, total int64) templ.Component { | |||||
| 1772 | if templ_7745c5c3_Err != nil { | 1971 | if templ_7745c5c3_Err != nil { | ||
| 1773 | return templ_7745c5c3_Err | 1972 | return templ_7745c5c3_Err | ||
| 1774 | } | 1973 | } | ||
| 1775 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 150, "<span>") | 1974 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 168, "<span>") |
| 1776 | if templ_7745c5c3_Err != nil { | 1975 | if templ_7745c5c3_Err != nil { | ||
| 1777 | return templ_7745c5c3_Err | 1976 | return templ_7745c5c3_Err | ||
| 1778 | } | 1977 | } | ||
| 1779 | - | var templ_7745c5c3_Var94 string | 1978 | + | var templ_7745c5c3_Var105 string |
| 1780 | - | templ_7745c5c3_Var94, templ_7745c5c3_Err = templ.JoinStringErrs(j.Name) | 1979 | + | templ_7745c5c3_Var105, templ_7745c5c3_Err = templ.JoinStringErrs(j.Name) |
| 1781 | if templ_7745c5c3_Err != nil { | 1980 | if templ_7745c5c3_Err != nil { | ||
| 1782 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 266, Col: 61} | 1981 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 287, Col: 61} |
| 1783 | } | 1982 | } | ||
| 1784 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var94)) | 1983 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var105)) |
| 1785 | if templ_7745c5c3_Err != nil { | 1984 | if templ_7745c5c3_Err != nil { | ||
| 1786 | return templ_7745c5c3_Err | 1985 | return templ_7745c5c3_Err | ||
| 1787 | } | 1986 | } | ||
| 1788 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 151, "</span> <span class=\"dim\">") | 1987 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 169, "</span> <span class=\"dim\">") |
| 1789 | if templ_7745c5c3_Err != nil { | 1988 | if templ_7745c5c3_Err != nil { | ||
| 1790 | return templ_7745c5c3_Err | 1989 | return templ_7745c5c3_Err | ||
| 1791 | } | 1990 | } | ||
| 1792 | - | var templ_7745c5c3_Var95 string | 1991 | + | var templ_7745c5c3_Var106 string |
| 1793 | - | templ_7745c5c3_Var95, templ_7745c5c3_Err = templ.JoinStringErrs(j.State) | 1992 | + | templ_7745c5c3_Var106, templ_7745c5c3_Err = templ.JoinStringErrs(j.State) |
| 1794 | if templ_7745c5c3_Err != nil { | 1993 | if templ_7745c5c3_Err != nil { | ||
| 1795 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 266, Col: 98} | 1994 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 287, Col: 98} |
| 1796 | } | 1995 | } | ||
| 1797 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var95)) | 1996 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var106)) |
| 1798 | if templ_7745c5c3_Err != nil { | 1997 | if templ_7745c5c3_Err != nil { | ||
| 1799 | return templ_7745c5c3_Err | 1998 | return templ_7745c5c3_Err | ||
| 1800 | } | 1999 | } | ||
| 1801 | - | var templ_7745c5c3_Var96 string | 2000 | + | var templ_7745c5c3_Var107 string |
| 1802 | - | templ_7745c5c3_Var96, templ_7745c5c3_Err = templ.JoinStringErrs(" ") | 2001 | + | templ_7745c5c3_Var107, templ_7745c5c3_Err = templ.JoinStringErrs(" ") |
| 1803 | if templ_7745c5c3_Err != nil { | 2002 | if templ_7745c5c3_Err != nil { | ||
| 1804 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 266, Col: 105} | 2003 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 287, Col: 105} |
| 1805 | } | 2004 | } | ||
| 1806 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var96)) | 2005 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var107)) |
| 1807 | if templ_7745c5c3_Err != nil { | 2006 | if templ_7745c5c3_Err != nil { | ||
| 1808 | return templ_7745c5c3_Err | 2007 | return templ_7745c5c3_Err | ||
| 1809 | } | 2008 | } | ||
| 1810 | - | var templ_7745c5c3_Var97 string | 2009 | + | var templ_7745c5c3_Var108 string |
| 1811 | - | templ_7745c5c3_Var97, templ_7745c5c3_Err = templ.JoinStringErrs(j.Duration) | 2010 | + | templ_7745c5c3_Var108, templ_7745c5c3_Err = templ.JoinStringErrs(j.Duration) |
| 1812 | if templ_7745c5c3_Err != nil { | 2011 | if templ_7745c5c3_Err != nil { | ||
| 1813 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 266, Col: 119} | 2012 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 287, Col: 119} |
| 1814 | } | 2013 | } | ||
| 1815 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var97)) | 2014 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var108)) |
| 1816 | if templ_7745c5c3_Err != nil { | 2015 | if templ_7745c5c3_Err != nil { | ||
| 1817 | return templ_7745c5c3_Err | 2016 | return templ_7745c5c3_Err | ||
| 1818 | } | 2017 | } | ||
| 1819 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 152, "</span></h2>") | 2018 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 170, "</span></h2>") |
| 1820 | if templ_7745c5c3_Err != nil { | 2019 | if templ_7745c5c3_Err != nil { | ||
| 1821 | return templ_7745c5c3_Err | 2020 | return templ_7745c5c3_Err | ||
| 1822 | } | 2021 | } | ||
| 1823 | if j.Error != "" { | 2022 | if j.Error != "" { | ||
| 1824 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 153, "<p class=\"job-err\">") | 2023 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 171, "<p class=\"job-err\">") |
| 1825 | if templ_7745c5c3_Err != nil { | 2024 | if templ_7745c5c3_Err != nil { | ||
| 1826 | return templ_7745c5c3_Err | 2025 | return templ_7745c5c3_Err | ||
| 1827 | } | 2026 | } | ||
| 1828 | - | var templ_7745c5c3_Var98 string | 2027 | + | var templ_7745c5c3_Var109 string |
| 1829 | - | templ_7745c5c3_Var98, templ_7745c5c3_Err = templ.JoinStringErrs(j.Error) | 2028 | + | templ_7745c5c3_Var109, templ_7745c5c3_Err = templ.JoinStringErrs(j.Error) |
| 1830 | if templ_7745c5c3_Err != nil { | 2029 | if templ_7745c5c3_Err != nil { | ||
| 1831 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 268, Col: 31} | 2030 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 289, Col: 31} |
| 1832 | } | 2031 | } | ||
| 1833 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var98)) | 2032 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var109)) |
| 1834 | if templ_7745c5c3_Err != nil { | 2033 | if templ_7745c5c3_Err != nil { | ||
| 1835 | return templ_7745c5c3_Err | 2034 | return templ_7745c5c3_Err | ||
| 1836 | } | 2035 | } | ||
| 1837 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 154, "</p>") | 2036 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 172, "</p>") |
| 1838 | if templ_7745c5c3_Err != nil { | 2037 | if templ_7745c5c3_Err != nil { | ||
| 1839 | return templ_7745c5c3_Err | 2038 | return templ_7745c5c3_Err | ||
| 1840 | } | 2039 | } | ||
| 1841 | } | 2040 | } | ||
| 1842 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 155, "</div>") | 2041 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 173, "</div>") |
| 1843 | if templ_7745c5c3_Err != nil { | 2042 | if templ_7745c5c3_Err != nil { | ||
| 1844 | return templ_7745c5c3_Err | 2043 | return templ_7745c5c3_Err | ||
| 1845 | } | 2044 | } | ||
| @@ -1864,17 +2063,17 @@ func JobSteps(steps []StepView) templ.Component { | |||||
| 1864 | }() | 2063 | }() | ||
| 1865 | } | 2064 | } | ||
| 1866 | ctx = templ.InitializeContext(ctx) | 2065 | ctx = templ.InitializeContext(ctx) | ||
| 1867 | - | templ_7745c5c3_Var99 := templ.GetChildren(ctx) | 2066 | + | templ_7745c5c3_Var110 := templ.GetChildren(ctx) |
| 1868 | - | if templ_7745c5c3_Var99 == nil { | 2067 | + | if templ_7745c5c3_Var110 == nil { |
| 1869 | - | templ_7745c5c3_Var99 = templ.NopComponent | 2068 | + | templ_7745c5c3_Var110 = templ.NopComponent |
| 1870 | } | 2069 | } | ||
| 1871 | ctx = templ.ClearChildren(ctx) | 2070 | ctx = templ.ClearChildren(ctx) | ||
| 1872 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 156, "<ol class=\"steps\" id=\"job-steps\">") | 2071 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 174, "<ol class=\"steps\" id=\"job-steps\">") |
| 1873 | if templ_7745c5c3_Err != nil { | 2072 | if templ_7745c5c3_Err != nil { | ||
| 1874 | return templ_7745c5c3_Err | 2073 | return templ_7745c5c3_Err | ||
| 1875 | } | 2074 | } | ||
| 1876 | for _, s := range steps { | 2075 | for _, s := range steps { | ||
| 1877 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 157, "<li>") | 2076 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 175, "<li>") |
| 1878 | if templ_7745c5c3_Err != nil { | 2077 | if templ_7745c5c3_Err != nil { | ||
| 1879 | return templ_7745c5c3_Err | 2078 | return templ_7745c5c3_Err | ||
| 1880 | } | 2079 | } | ||
| @@ -1883,74 +2082,74 @@ func JobSteps(steps []StepView) templ.Component { | |||||
| 1883 | return templ_7745c5c3_Err | 2082 | return templ_7745c5c3_Err | ||
| 1884 | } | 2083 | } | ||
| 1885 | if s.LogEnd > s.LogStart { | 2084 | if s.LogEnd > s.LogStart { | ||
| 1886 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 158, "<a href=\"") | 2085 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 176, "<a href=\"") |
| 1887 | if templ_7745c5c3_Err != nil { | 2086 | if templ_7745c5c3_Err != nil { | ||
| 1888 | return templ_7745c5c3_Err | 2087 | return templ_7745c5c3_Err | ||
| 1889 | } | 2088 | } | ||
| 1890 | - | var templ_7745c5c3_Var100 templ.SafeURL | 2089 | + | var templ_7745c5c3_Var111 templ.SafeURL |
| 1891 | - | templ_7745c5c3_Var100, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL("#L" + itoa64(s.LogStart))) | 2090 | + | templ_7745c5c3_Var111, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL("#L" + itoa64(s.LogStart))) |
| 1892 | if templ_7745c5c3_Err != nil { | 2091 | if templ_7745c5c3_Err != nil { | ||
| 1893 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 280, Col: 55} | 2092 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 301, Col: 55} |
| 1894 | } | 2093 | } | ||
| 1895 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var100)) | 2094 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var111)) |
| 1896 | if templ_7745c5c3_Err != nil { | 2095 | if templ_7745c5c3_Err != nil { | ||
| 1897 | return templ_7745c5c3_Err | 2096 | return templ_7745c5c3_Err | ||
| 1898 | } | 2097 | } | ||
| 1899 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 159, "\">") | 2098 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 177, "\">") |
| 1900 | if templ_7745c5c3_Err != nil { | 2099 | if templ_7745c5c3_Err != nil { | ||
| 1901 | return templ_7745c5c3_Err | 2100 | return templ_7745c5c3_Err | ||
| 1902 | } | 2101 | } | ||
| 1903 | - | var templ_7745c5c3_Var101 string | 2102 | + | var templ_7745c5c3_Var112 string |
| 1904 | - | templ_7745c5c3_Var101, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) | 2103 | + | templ_7745c5c3_Var112, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) |
| 1905 | if templ_7745c5c3_Err != nil { | 2104 | if templ_7745c5c3_Err != nil { | ||
| 1906 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 280, Col: 66} | 2105 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 301, Col: 66} |
| 1907 | } | 2106 | } | ||
| 1908 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var101)) | 2107 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var112)) |
| 1909 | if templ_7745c5c3_Err != nil { | 2108 | if templ_7745c5c3_Err != nil { | ||
| 1910 | return templ_7745c5c3_Err | 2109 | return templ_7745c5c3_Err | ||
| 1911 | } | 2110 | } | ||
| 1912 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 160, "</a> ") | 2111 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 178, "</a> ") |
| 1913 | if templ_7745c5c3_Err != nil { | 2112 | if templ_7745c5c3_Err != nil { | ||
| 1914 | return templ_7745c5c3_Err | 2113 | return templ_7745c5c3_Err | ||
| 1915 | } | 2114 | } | ||
| 1916 | } else { | 2115 | } else { | ||
| 1917 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 161, "<span>") | 2116 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 179, "<span>") |
| 1918 | if templ_7745c5c3_Err != nil { | 2117 | if templ_7745c5c3_Err != nil { | ||
| 1919 | return templ_7745c5c3_Err | 2118 | return templ_7745c5c3_Err | ||
| 1920 | } | 2119 | } | ||
| 1921 | - | var templ_7745c5c3_Var102 string | 2120 | + | var templ_7745c5c3_Var113 string |
| 1922 | - | templ_7745c5c3_Var102, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) | 2121 | + | templ_7745c5c3_Var113, templ_7745c5c3_Err = templ.JoinStringErrs(s.Name) |
| 1923 | if templ_7745c5c3_Err != nil { | 2122 | if templ_7745c5c3_Err != nil { | ||
| 1924 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 282, Col: 19} | 2123 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 303, Col: 19} |
| 1925 | } | 2124 | } | ||
| 1926 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var102)) | 2125 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var113)) |
| 1927 | if templ_7745c5c3_Err != nil { | 2126 | if templ_7745c5c3_Err != nil { | ||
| 1928 | return templ_7745c5c3_Err | 2127 | return templ_7745c5c3_Err | ||
| 1929 | } | 2128 | } | ||
| 1930 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 162, "</span> ") | 2129 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 180, "</span> ") |
| 1931 | if templ_7745c5c3_Err != nil { | 2130 | if templ_7745c5c3_Err != nil { | ||
| 1932 | return templ_7745c5c3_Err | 2131 | return templ_7745c5c3_Err | ||
| 1933 | } | 2132 | } | ||
| 1934 | } | 2133 | } | ||
| 1935 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 163, "<span class=\"dim\">") | 2134 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 181, "<span class=\"dim\">") |
| 1936 | if templ_7745c5c3_Err != nil { | 2135 | if templ_7745c5c3_Err != nil { | ||
| 1937 | return templ_7745c5c3_Err | 2136 | return templ_7745c5c3_Err | ||
| 1938 | } | 2137 | } | ||
| 1939 | - | var templ_7745c5c3_Var103 string | 2138 | + | var templ_7745c5c3_Var114 string |
| 1940 | - | templ_7745c5c3_Var103, templ_7745c5c3_Err = templ.JoinStringErrs(s.Duration) | 2139 | + | templ_7745c5c3_Var114, templ_7745c5c3_Err = templ.JoinStringErrs(s.Duration) |
| 1941 | if templ_7745c5c3_Err != nil { | 2140 | if templ_7745c5c3_Err != nil { | ||
| 1942 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 284, Col: 34} | 2141 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 305, Col: 34} |
| 1943 | } | 2142 | } | ||
| 1944 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var103)) | 2143 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var114)) |
| 1945 | if templ_7745c5c3_Err != nil { | 2144 | if templ_7745c5c3_Err != nil { | ||
| 1946 | return templ_7745c5c3_Err | 2145 | return templ_7745c5c3_Err | ||
| 1947 | } | 2146 | } | ||
| 1948 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 164, "</span></li>") | 2147 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 182, "</span></li>") |
| 1949 | if templ_7745c5c3_Err != nil { | 2148 | if templ_7745c5c3_Err != nil { | ||
| 1950 | return templ_7745c5c3_Err | 2149 | return templ_7745c5c3_Err | ||
| 1951 | } | 2150 | } | ||
| 1952 | } | 2151 | } | ||
| 1953 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 165, "</ol>") | 2152 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 183, "</ol>") |
| 1954 | if templ_7745c5c3_Err != nil { | 2153 | if templ_7745c5c3_Err != nil { | ||
| 1955 | return templ_7745c5c3_Err | 2154 | return templ_7745c5c3_Err | ||
| 1956 | } | 2155 | } | ||
| @@ -1974,12 +2173,12 @@ func Job(l Layout, p JobPage) templ.Component { | |||||
| 1974 | }() | 2173 | }() | ||
| 1975 | } | 2174 | } | ||
| 1976 | ctx = templ.InitializeContext(ctx) | 2175 | ctx = templ.InitializeContext(ctx) | ||
| 1977 | - | templ_7745c5c3_Var104 := templ.GetChildren(ctx) | 2176 | + | templ_7745c5c3_Var115 := templ.GetChildren(ctx) |
| 1978 | - | if templ_7745c5c3_Var104 == nil { | 2177 | + | if templ_7745c5c3_Var115 == nil { |
| 1979 | - | templ_7745c5c3_Var104 = templ.NopComponent | 2178 | + | templ_7745c5c3_Var115 = templ.NopComponent |
| 1980 | } | 2179 | } | ||
| 1981 | ctx = templ.ClearChildren(ctx) | 2180 | ctx = templ.ClearChildren(ctx) | ||
| 1982 | - | templ_7745c5c3_Var105 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { | 2181 | + | templ_7745c5c3_Var116 := templruntime.GeneratedTemplate(func(templ_7745c5c3_Input templruntime.GeneratedComponentInput) (templ_7745c5c3_Err error) { |
| 1983 | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | 2182 | templ_7745c5c3_W, ctx := templ_7745c5c3_Input.Writer, templ_7745c5c3_Input.Context | ||
| 1984 | templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W) | 2183 | templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templruntime.GetBuffer(templ_7745c5c3_W) | ||
| 1985 | if !templ_7745c5c3_IsBuffer { | 2184 | if !templ_7745c5c3_IsBuffer { | ||
| @@ -1995,7 +2194,7 @@ func Job(l Layout, p JobPage) templ.Component { | |||||
| 1995 | if templ_7745c5c3_Err != nil { | 2194 | if templ_7745c5c3_Err != nil { | ||
| 1996 | return templ_7745c5c3_Err | 2195 | return templ_7745c5c3_Err | ||
| 1997 | } | 2196 | } | ||
| 1998 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 166, " ") | 2197 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 184, " ") |
| 1999 | if templ_7745c5c3_Err != nil { | 2198 | if templ_7745c5c3_Err != nil { | ||
| 2000 | return templ_7745c5c3_Err | 2199 | return templ_7745c5c3_Err | ||
| 2001 | } | 2200 | } | ||
| @@ -2003,7 +2202,7 @@ func Job(l Layout, p JobPage) templ.Component { | |||||
| 2003 | if templ_7745c5c3_Err != nil { | 2202 | if templ_7745c5c3_Err != nil { | ||
| 2004 | return templ_7745c5c3_Err | 2203 | return templ_7745c5c3_Err | ||
| 2005 | } | 2204 | } | ||
| 2006 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 167, " ") | 2205 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 185, " ") |
| 2007 | if templ_7745c5c3_Err != nil { | 2206 | if templ_7745c5c3_Err != nil { | ||
| 2008 | return templ_7745c5c3_Err | 2207 | return templ_7745c5c3_Err | ||
| 2009 | } | 2208 | } | ||
| @@ -2011,111 +2210,111 @@ func Job(l Layout, p JobPage) templ.Component { | |||||
| 2011 | if templ_7745c5c3_Err != nil { | 2210 | if templ_7745c5c3_Err != nil { | ||
| 2012 | return templ_7745c5c3_Err | 2211 | return templ_7745c5c3_Err | ||
| 2013 | } | 2212 | } | ||
| 2014 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 168, " <div id=\"job-log\" class=\"joblog\" data-total=\"") | 2213 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 186, " <div id=\"job-log\" class=\"joblog\" data-total=\"") |
| 2015 | if templ_7745c5c3_Err != nil { | 2214 | if templ_7745c5c3_Err != nil { | ||
| 2016 | return templ_7745c5c3_Err | 2215 | return templ_7745c5c3_Err | ||
| 2017 | } | 2216 | } | ||
| 2018 | - | var templ_7745c5c3_Var106 string | 2217 | + | var templ_7745c5c3_Var117 string |
| 2019 | - | templ_7745c5c3_Var106, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.Total)) | 2218 | + | templ_7745c5c3_Var117, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.Total)) |
| 2020 | if templ_7745c5c3_Err != nil { | 2219 | if templ_7745c5c3_Err != nil { | ||
| 2021 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 295, Col: 63} | 2220 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 316, Col: 63} |
| 2022 | } | 2221 | } | ||
| 2023 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var106) | 2222 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var117) |
| 2024 | if templ_7745c5c3_Err != nil { | 2223 | if templ_7745c5c3_Err != nil { | ||
| 2025 | return templ_7745c5c3_Err | 2224 | return templ_7745c5c3_Err | ||
| 2026 | } | 2225 | } | ||
| 2027 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 169, "\"") | 2226 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 187, "\"") |
| 2028 | if templ_7745c5c3_Err != nil { | 2227 | if templ_7745c5c3_Err != nil { | ||
| 2029 | return templ_7745c5c3_Err | 2228 | return templ_7745c5c3_Err | ||
| 2030 | } | 2229 | } | ||
| 2031 | if p.Follow { | 2230 | if p.Follow { | ||
| 2032 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 170, " data-follow") | 2231 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 188, " data-follow") |
| 2033 | if templ_7745c5c3_Err != nil { | 2232 | if templ_7745c5c3_Err != nil { | ||
| 2034 | return templ_7745c5c3_Err | 2233 | return templ_7745c5c3_Err | ||
| 2035 | } | 2234 | } | ||
| 2036 | } | 2235 | } | ||
| 2037 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 171, " data-stream=\"") | 2236 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 189, " data-stream=\"") |
| 2038 | if templ_7745c5c3_Err != nil { | 2237 | if templ_7745c5c3_Err != nil { | ||
| 2039 | return templ_7745c5c3_Err | 2238 | return templ_7745c5c3_Err | ||
| 2040 | } | 2239 | } | ||
| 2041 | - | var templ_7745c5c3_Var107 string | 2240 | + | var templ_7745c5c3_Var118 string |
| 2042 | - | templ_7745c5c3_Var107, templ_7745c5c3_Err = templ.ResolveAttributeValue(p.StreamHref) | 2241 | + | templ_7745c5c3_Var118, templ_7745c5c3_Err = templ.ResolveAttributeValue(p.StreamHref) |
| 2043 | if templ_7745c5c3_Err != nil { | 2242 | if templ_7745c5c3_Err != nil { | ||
| 2044 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 295, Col: 118} | 2243 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 316, Col: 118} |
| 2045 | } | 2244 | } | ||
| 2046 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var107) | 2245 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var118) |
| 2047 | if templ_7745c5c3_Err != nil { | 2246 | if templ_7745c5c3_Err != nil { | ||
| 2048 | return templ_7745c5c3_Err | 2247 | return templ_7745c5c3_Err | ||
| 2049 | } | 2248 | } | ||
| 2050 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 172, "\" data-next=\"") | 2249 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 190, "\" data-next=\"") |
| 2051 | if templ_7745c5c3_Err != nil { | 2250 | if templ_7745c5c3_Err != nil { | ||
| 2052 | return templ_7745c5c3_Err | 2251 | return templ_7745c5c3_Err | ||
| 2053 | } | 2252 | } | ||
| 2054 | - | var templ_7745c5c3_Var108 string | 2253 | + | var templ_7745c5c3_Var119 string |
| 2055 | - | templ_7745c5c3_Var108, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.From + int64(len(p.Lines)))) | 2254 | + | templ_7745c5c3_Var119, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.From + int64(len(p.Lines)))) |
| 2056 | if templ_7745c5c3_Err != nil { | 2255 | if templ_7745c5c3_Err != nil { | ||
| 2057 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 295, Col: 169} | 2256 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 316, Col: 169} |
| 2058 | } | 2257 | } | ||
| 2059 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var108) | 2258 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var119) |
| 2060 | if templ_7745c5c3_Err != nil { | 2259 | if templ_7745c5c3_Err != nil { | ||
| 2061 | return templ_7745c5c3_Err | 2260 | return templ_7745c5c3_Err | ||
| 2062 | } | 2261 | } | ||
| 2063 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 173, "\">") | 2262 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 191, "\">") |
| 2064 | if templ_7745c5c3_Err != nil { | 2263 | if templ_7745c5c3_Err != nil { | ||
| 2065 | return templ_7745c5c3_Err | 2264 | return templ_7745c5c3_Err | ||
| 2066 | } | 2265 | } | ||
| 2067 | if p.Note != "" { | 2266 | if p.Note != "" { | ||
| 2068 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 174, "<p class=\"dim\">") | 2267 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 192, "<p class=\"dim\">") |
| 2069 | if templ_7745c5c3_Err != nil { | 2268 | if templ_7745c5c3_Err != nil { | ||
| 2070 | return templ_7745c5c3_Err | 2269 | return templ_7745c5c3_Err | ||
| 2071 | } | 2270 | } | ||
| 2072 | - | var templ_7745c5c3_Var109 string | 2271 | + | var templ_7745c5c3_Var120 string |
| 2073 | - | templ_7745c5c3_Var109, templ_7745c5c3_Err = templ.JoinStringErrs(p.Note) | 2272 | + | templ_7745c5c3_Var120, templ_7745c5c3_Err = templ.JoinStringErrs(p.Note) |
| 2074 | if templ_7745c5c3_Err != nil { | 2273 | if templ_7745c5c3_Err != nil { | ||
| 2075 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 297, Col: 27} | 2274 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 318, Col: 27} |
| 2076 | } | 2275 | } | ||
| 2077 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var109)) | 2276 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var120)) |
| 2078 | if templ_7745c5c3_Err != nil { | 2277 | if templ_7745c5c3_Err != nil { | ||
| 2079 | return templ_7745c5c3_Err | 2278 | return templ_7745c5c3_Err | ||
| 2080 | } | 2279 | } | ||
| 2081 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 175, "</p>") | 2280 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 193, "</p>") |
| 2082 | if templ_7745c5c3_Err != nil { | 2281 | if templ_7745c5c3_Err != nil { | ||
| 2083 | return templ_7745c5c3_Err | 2282 | return templ_7745c5c3_Err | ||
| 2084 | } | 2283 | } | ||
| 2085 | } | 2284 | } | ||
| 2086 | if p.Prev != "" { | 2285 | if p.Prev != "" { | ||
| 2087 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 176, "<p class=\"more\"><a href=\"") | 2286 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 194, "<p class=\"more\"><a href=\"") |
| 2088 | if templ_7745c5c3_Err != nil { | 2287 | if templ_7745c5c3_Err != nil { | ||
| 2089 | return templ_7745c5c3_Err | 2288 | return templ_7745c5c3_Err | ||
| 2090 | } | 2289 | } | ||
| 2091 | - | var templ_7745c5c3_Var110 templ.SafeURL | 2290 | + | var templ_7745c5c3_Var121 templ.SafeURL |
| 2092 | - | templ_7745c5c3_Var110, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.Prev)) | 2291 | + | templ_7745c5c3_Var121, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.Prev)) |
| 2093 | if templ_7745c5c3_Err != nil { | 2292 | if templ_7745c5c3_Err != nil { | ||
| 2094 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 300, Col: 51} | 2293 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 321, Col: 51} |
| 2095 | } | 2294 | } | ||
| 2096 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var110)) | 2295 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var121)) |
| 2097 | if templ_7745c5c3_Err != nil { | 2296 | if templ_7745c5c3_Err != nil { | ||
| 2098 | return templ_7745c5c3_Err | 2297 | return templ_7745c5c3_Err | ||
| 2099 | } | 2298 | } | ||
| 2100 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 177, "\" rel=\"prev\">earlier lines</a></p>") | 2299 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 195, "\" rel=\"prev\">earlier lines</a></p>") |
| 2101 | if templ_7745c5c3_Err != nil { | 2300 | if templ_7745c5c3_Err != nil { | ||
| 2102 | return templ_7745c5c3_Err | 2301 | return templ_7745c5c3_Err | ||
| 2103 | } | 2302 | } | ||
| 2104 | } | 2303 | } | ||
| 2105 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 178, "<ol class=\"log\" start=\"") | 2304 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 196, "<ol class=\"log\" start=\"") |
| 2106 | if templ_7745c5c3_Err != nil { | 2305 | if templ_7745c5c3_Err != nil { | ||
| 2107 | return templ_7745c5c3_Err | 2306 | return templ_7745c5c3_Err | ||
| 2108 | } | 2307 | } | ||
| 2109 | - | var templ_7745c5c3_Var111 string | 2308 | + | var templ_7745c5c3_Var122 string |
| 2110 | - | templ_7745c5c3_Var111, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.From + 1)) | 2309 | + | templ_7745c5c3_Var122, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa64(p.From + 1)) |
| 2111 | if templ_7745c5c3_Err != nil { | 2310 | if templ_7745c5c3_Err != nil { | ||
| 2112 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 302, Col: 45} | 2311 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 323, Col: 45} |
| 2113 | } | 2312 | } | ||
| 2114 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var111) | 2313 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var122) |
| 2115 | if templ_7745c5c3_Err != nil { | 2314 | if templ_7745c5c3_Err != nil { | ||
| 2116 | return templ_7745c5c3_Err | 2315 | return templ_7745c5c3_Err | ||
| 2117 | } | 2316 | } | ||
| 2118 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 179, "\">") | 2317 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 197, "\">") |
| 2119 | if templ_7745c5c3_Err != nil { | 2318 | if templ_7745c5c3_Err != nil { | ||
| 2120 | return templ_7745c5c3_Err | 2319 | return templ_7745c5c3_Err | ||
| 2121 | } | 2320 | } | ||
| @@ -2125,36 +2324,36 @@ func Job(l Layout, p JobPage) templ.Component { | |||||
| 2125 | return templ_7745c5c3_Err | 2324 | return templ_7745c5c3_Err | ||
| 2126 | } | 2325 | } | ||
| 2127 | } | 2326 | } | ||
| 2128 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 180, "</ol>") | 2327 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 198, "</ol>") |
| 2129 | if templ_7745c5c3_Err != nil { | 2328 | if templ_7745c5c3_Err != nil { | ||
| 2130 | return templ_7745c5c3_Err | 2329 | return templ_7745c5c3_Err | ||
| 2131 | } | 2330 | } | ||
| 2132 | if p.Next != "" { | 2331 | if p.Next != "" { | ||
| 2133 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 181, "<p class=\"more\"><a href=\"") | 2332 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 199, "<p class=\"more\"><a href=\"") |
| 2134 | if templ_7745c5c3_Err != nil { | 2333 | if templ_7745c5c3_Err != nil { | ||
| 2135 | return templ_7745c5c3_Err | 2334 | return templ_7745c5c3_Err | ||
| 2136 | } | 2335 | } | ||
| 2137 | - | var templ_7745c5c3_Var112 templ.SafeURL | 2336 | + | var templ_7745c5c3_Var123 templ.SafeURL |
| 2138 | - | templ_7745c5c3_Var112, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.Next)) | 2337 | + | templ_7745c5c3_Var123, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.Next)) |
| 2139 | if templ_7745c5c3_Err != nil { | 2338 | if templ_7745c5c3_Err != nil { | ||
| 2140 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 308, Col: 51} | 2339 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 329, Col: 51} |
| 2141 | } | 2340 | } | ||
| 2142 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var112)) | 2341 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var123)) |
| 2143 | if templ_7745c5c3_Err != nil { | 2342 | if templ_7745c5c3_Err != nil { | ||
| 2144 | return templ_7745c5c3_Err | 2343 | return templ_7745c5c3_Err | ||
| 2145 | } | 2344 | } | ||
| 2146 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 182, "\" rel=\"next\">more lines</a></p>") | 2345 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 200, "\" rel=\"next\">more lines</a></p>") |
| 2147 | if templ_7745c5c3_Err != nil { | 2346 | if templ_7745c5c3_Err != nil { | ||
| 2148 | return templ_7745c5c3_Err | 2347 | return templ_7745c5c3_Err | ||
| 2149 | } | 2348 | } | ||
| 2150 | } | 2349 | } | ||
| 2151 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 183, "</div>") | 2350 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 201, "</div>") |
| 2152 | if templ_7745c5c3_Err != nil { | 2351 | if templ_7745c5c3_Err != nil { | ||
| 2153 | return templ_7745c5c3_Err | 2352 | return templ_7745c5c3_Err | ||
| 2154 | } | 2353 | } | ||
| 2155 | return nil | 2354 | return nil | ||
| 2156 | }) | 2355 | }) | ||
| 2157 | - | templ_7745c5c3_Err = Shell(l, jobRail(p)).Render(templ.WithChildren(ctx, templ_7745c5c3_Var105), templ_7745c5c3_Buffer) | 2356 | + | templ_7745c5c3_Err = Shell(l, jobRail(p)).Render(templ.WithChildren(ctx, templ_7745c5c3_Var116), templ_7745c5c3_Buffer) |
| 2158 | if templ_7745c5c3_Err != nil { | 2357 | if templ_7745c5c3_Err != nil { | ||
| 2159 | return templ_7745c5c3_Err | 2358 | return templ_7745c5c3_Err | ||
| 2160 | } | 2359 | } | ||
| @@ -2180,92 +2379,92 @@ func LogLine(ln LogLineView) templ.Component { | |||||
| 2180 | }() | 2379 | }() | ||
| 2181 | } | 2380 | } | ||
| 2182 | ctx = templ.InitializeContext(ctx) | 2381 | ctx = templ.InitializeContext(ctx) | ||
| 2183 | - | templ_7745c5c3_Var113 := templ.GetChildren(ctx) | 2382 | + | templ_7745c5c3_Var124 := templ.GetChildren(ctx) |
| 2184 | - | if templ_7745c5c3_Var113 == nil { | 2383 | + | if templ_7745c5c3_Var124 == nil { |
| 2185 | - | templ_7745c5c3_Var113 = templ.NopComponent | 2384 | + | templ_7745c5c3_Var124 = templ.NopComponent |
| 2186 | } | 2385 | } | ||
| 2187 | ctx = templ.ClearChildren(ctx) | 2386 | ctx = templ.ClearChildren(ctx) | ||
| 2188 | - | var templ_7745c5c3_Var114 = []any{logClass(ln)} | 2387 | + | var templ_7745c5c3_Var125 = []any{logClass(ln)} |
| 2189 | - | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var114...) | 2388 | + | templ_7745c5c3_Err = templ.RenderCSSItems(ctx, templ_7745c5c3_Buffer, templ_7745c5c3_Var125...) |
| 2190 | if templ_7745c5c3_Err != nil { | 2389 | if templ_7745c5c3_Err != nil { | ||
| 2191 | return templ_7745c5c3_Err | 2390 | return templ_7745c5c3_Err | ||
| 2192 | } | 2391 | } | ||
| 2193 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 184, "<li id=\"") | 2392 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 202, "<li id=\"") |
| 2194 | if templ_7745c5c3_Err != nil { | 2393 | if templ_7745c5c3_Err != nil { | ||
| 2195 | return templ_7745c5c3_Err | 2394 | return templ_7745c5c3_Err | ||
| 2196 | } | 2395 | } | ||
| 2197 | - | var templ_7745c5c3_Var115 string | 2396 | + | var templ_7745c5c3_Var126 string |
| 2198 | - | templ_7745c5c3_Var115, templ_7745c5c3_Err = templ.ResolveAttributeValue("L" + itoa64(ln.N)) | 2397 | + | templ_7745c5c3_Var126, templ_7745c5c3_Err = templ.ResolveAttributeValue("L" + itoa64(ln.N)) |
| 2199 | if templ_7745c5c3_Err != nil { | 2398 | if templ_7745c5c3_Err != nil { | ||
| 2200 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 317, Col: 28} | 2399 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 338, Col: 28} |
| 2201 | } | 2400 | } | ||
| 2202 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var115) | 2401 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var126) |
| 2203 | if templ_7745c5c3_Err != nil { | 2402 | if templ_7745c5c3_Err != nil { | ||
| 2204 | return templ_7745c5c3_Err | 2403 | return templ_7745c5c3_Err | ||
| 2205 | } | 2404 | } | ||
| 2206 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 185, "\" class=\"") | 2405 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 203, "\" class=\"") |
| 2207 | if templ_7745c5c3_Err != nil { | 2406 | if templ_7745c5c3_Err != nil { | ||
| 2208 | return templ_7745c5c3_Err | 2407 | return templ_7745c5c3_Err | ||
| 2209 | } | 2408 | } | ||
| 2210 | - | var templ_7745c5c3_Var116 string | 2409 | + | var templ_7745c5c3_Var127 string |
| 2211 | - | templ_7745c5c3_Var116, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var114).String()) | 2410 | + | templ_7745c5c3_Var127, templ_7745c5c3_Err = templ.ResolveAttributeValue(templ.CSSClasses(templ_7745c5c3_Var125).String()) |
| 2212 | if templ_7745c5c3_Err != nil { | 2411 | if templ_7745c5c3_Err != nil { | ||
| 2213 | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 1, Col: 0} | 2412 | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 1, Col: 0} | ||
| 2214 | } | 2413 | } | ||
| 2215 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var116) | 2414 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var127) |
| 2216 | if templ_7745c5c3_Err != nil { | 2415 | if templ_7745c5c3_Err != nil { | ||
| 2217 | return templ_7745c5c3_Err | 2416 | return templ_7745c5c3_Err | ||
| 2218 | } | 2417 | } | ||
| 2219 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 186, "\" data-step=\"") | 2418 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 204, "\" data-step=\"") |
| 2220 | if templ_7745c5c3_Err != nil { | 2419 | if templ_7745c5c3_Err != nil { | ||
| 2221 | return templ_7745c5c3_Err | 2420 | return templ_7745c5c3_Err | ||
| 2222 | } | 2421 | } | ||
| 2223 | - | var templ_7745c5c3_Var117 string | 2422 | + | var templ_7745c5c3_Var128 string |
| 2224 | - | templ_7745c5c3_Var117, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa(int(ln.Step))) | 2423 | + | templ_7745c5c3_Var128, templ_7745c5c3_Err = templ.ResolveAttributeValue(itoa(int(ln.Step))) |
| 2225 | if templ_7745c5c3_Err != nil { | 2424 | if templ_7745c5c3_Err != nil { | ||
| 2226 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 317, Col: 84} | 2425 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 338, Col: 84} |
| 2227 | } | 2426 | } | ||
| 2228 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var117) | 2427 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var128) |
| 2229 | if templ_7745c5c3_Err != nil { | 2428 | if templ_7745c5c3_Err != nil { | ||
| 2230 | return templ_7745c5c3_Err | 2429 | return templ_7745c5c3_Err | ||
| 2231 | } | 2430 | } | ||
| 2232 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 187, "\"") | 2431 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 205, "\"") |
| 2233 | if templ_7745c5c3_Err != nil { | 2432 | if templ_7745c5c3_Err != nil { | ||
| 2234 | return templ_7745c5c3_Err | 2433 | return templ_7745c5c3_Err | ||
| 2235 | } | 2434 | } | ||
| 2236 | if ln.Continued { | 2435 | if ln.Continued { | ||
| 2237 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 188, " data-cont") | 2436 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 206, " data-cont") |
| 2238 | if templ_7745c5c3_Err != nil { | 2437 | if templ_7745c5c3_Err != nil { | ||
| 2239 | return templ_7745c5c3_Err | 2438 | return templ_7745c5c3_Err | ||
| 2240 | } | 2439 | } | ||
| 2241 | } | 2440 | } | ||
| 2242 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 189, "><time>") | 2441 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 207, "><time>") |
| 2243 | if templ_7745c5c3_Err != nil { | 2442 | if templ_7745c5c3_Err != nil { | ||
| 2244 | return templ_7745c5c3_Err | 2443 | return templ_7745c5c3_Err | ||
| 2245 | } | 2444 | } | ||
| 2246 | - | var templ_7745c5c3_Var118 string | 2445 | + | var templ_7745c5c3_Var129 string |
| 2247 | - | templ_7745c5c3_Var118, templ_7745c5c3_Err = templ.JoinStringErrs(ln.Time) | 2446 | + | templ_7745c5c3_Var129, templ_7745c5c3_Err = templ.JoinStringErrs(ln.Time) |
| 2248 | if templ_7745c5c3_Err != nil { | 2447 | if templ_7745c5c3_Err != nil { | ||
| 2249 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 317, Col: 130} | 2448 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 338, Col: 130} |
| 2250 | } | 2449 | } | ||
| 2251 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var118)) | 2450 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var129)) |
| 2252 | if templ_7745c5c3_Err != nil { | 2451 | if templ_7745c5c3_Err != nil { | ||
| 2253 | return templ_7745c5c3_Err | 2452 | return templ_7745c5c3_Err | ||
| 2254 | } | 2453 | } | ||
| 2255 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 190, "</time><span class=\"t\">") | 2454 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 208, "</time><span class=\"t\">") |
| 2256 | if templ_7745c5c3_Err != nil { | 2455 | if templ_7745c5c3_Err != nil { | ||
| 2257 | return templ_7745c5c3_Err | 2456 | return templ_7745c5c3_Err | ||
| 2258 | } | 2457 | } | ||
| 2259 | - | var templ_7745c5c3_Var119 string | 2458 | + | var templ_7745c5c3_Var130 string |
| 2260 | - | templ_7745c5c3_Var119, templ_7745c5c3_Err = templ.JoinStringErrs(ln.Text) | 2459 | + | templ_7745c5c3_Var130, templ_7745c5c3_Err = templ.JoinStringErrs(ln.Text) |
| 2261 | if templ_7745c5c3_Err != nil { | 2460 | if templ_7745c5c3_Err != nil { | ||
| 2262 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 317, Col: 164} | 2461 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 338, Col: 164} |
| 2263 | } | 2462 | } | ||
| 2264 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var119)) | 2463 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var130)) |
| 2265 | if templ_7745c5c3_Err != nil { | 2464 | if templ_7745c5c3_Err != nil { | ||
| 2266 | return templ_7745c5c3_Err | 2465 | return templ_7745c5c3_Err | ||
| 2267 | } | 2466 | } | ||
| 2268 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 191, "</span></li>") | 2467 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 209, "</span></li>") |
| 2269 | if templ_7745c5c3_Err != nil { | 2468 | if templ_7745c5c3_Err != nil { | ||
| 2270 | return templ_7745c5c3_Err | 2469 | return templ_7745c5c3_Err | ||
| 2271 | } | 2470 | } | ||
| @@ -2289,12 +2488,12 @@ func jobRail(p JobPage) templ.Component { | |||||
| 2289 | }() | 2488 | }() | ||
| 2290 | } | 2489 | } | ||
| 2291 | ctx = templ.InitializeContext(ctx) | 2490 | ctx = templ.InitializeContext(ctx) | ||
| 2292 | - | templ_7745c5c3_Var120 := templ.GetChildren(ctx) | 2491 | + | templ_7745c5c3_Var131 := templ.GetChildren(ctx) |
| 2293 | - | if templ_7745c5c3_Var120 == nil { | 2492 | + | if templ_7745c5c3_Var131 == nil { |
| 2294 | - | templ_7745c5c3_Var120 = templ.NopComponent | 2493 | + | templ_7745c5c3_Var131 = templ.NopComponent |
| 2295 | } | 2494 | } | ||
| 2296 | ctx = templ.ClearChildren(ctx) | 2495 | ctx = templ.ClearChildren(ctx) | ||
| 2297 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 192, "<section aria-labelledby=\"r-job\"><h2 id=\"r-job\">Steps</h2>") | 2496 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 210, "<section aria-labelledby=\"r-job\"><h2 id=\"r-job\">Steps</h2>") |
| 2298 | if templ_7745c5c3_Err != nil { | 2497 | if templ_7745c5c3_Err != nil { | ||
| 2299 | return templ_7745c5c3_Err | 2498 | return templ_7745c5c3_Err | ||
| 2300 | } | 2499 | } | ||
| @@ -2302,101 +2501,101 @@ func jobRail(p JobPage) templ.Component { | |||||
| 2302 | if templ_7745c5c3_Err != nil { | 2501 | if templ_7745c5c3_Err != nil { | ||
| 2303 | return templ_7745c5c3_Err | 2502 | return templ_7745c5c3_Err | ||
| 2304 | } | 2503 | } | ||
| 2305 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 193, "</section><section aria-labelledby=\"r-jobf\"><h2 id=\"r-jobf\">Job</h2><dl class=\"kv\"><dt>run</dt><dd><a href=\"") | 2504 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 211, "</section><section aria-labelledby=\"r-jobf\"><h2 id=\"r-jobf\">Job</h2><dl class=\"kv\"><dt>run</dt><dd><a href=\"") |
| 2306 | if templ_7745c5c3_Err != nil { | 2505 | if templ_7745c5c3_Err != nil { | ||
| 2307 | return templ_7745c5c3_Err | 2506 | return templ_7745c5c3_Err | ||
| 2308 | } | 2507 | } | ||
| 2309 | - | var templ_7745c5c3_Var121 templ.SafeURL | 2508 | + | var templ_7745c5c3_Var132 templ.SafeURL |
| 2310 | - | templ_7745c5c3_Var121, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RunHref)) | 2509 | + | templ_7745c5c3_Var132, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RunHref)) |
| 2311 | if templ_7745c5c3_Err != nil { | 2510 | if templ_7745c5c3_Err != nil { | ||
| 2312 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 329, Col: 41} | 2511 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 350, Col: 41} |
| 2313 | } | 2512 | } | ||
| 2314 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var121)) | 2513 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var132)) |
| 2315 | if templ_7745c5c3_Err != nil { | 2514 | if templ_7745c5c3_Err != nil { | ||
| 2316 | return templ_7745c5c3_Err | 2515 | return templ_7745c5c3_Err | ||
| 2317 | } | 2516 | } | ||
| 2318 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 194, "\">") | 2517 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 212, "\">") |
| 2319 | if templ_7745c5c3_Err != nil { | 2518 | if templ_7745c5c3_Err != nil { | ||
| 2320 | return templ_7745c5c3_Err | 2519 | return templ_7745c5c3_Err | ||
| 2321 | } | 2520 | } | ||
| 2322 | - | var templ_7745c5c3_Var122 string | 2521 | + | var templ_7745c5c3_Var133 string |
| 2323 | - | templ_7745c5c3_Var122, templ_7745c5c3_Err = templ.JoinStringErrs(p.RunName) | 2522 | + | templ_7745c5c3_Var133, templ_7745c5c3_Err = templ.JoinStringErrs(p.RunName) |
| 2324 | if templ_7745c5c3_Err != nil { | 2523 | if templ_7745c5c3_Err != nil { | ||
| 2325 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 329, Col: 55} | 2524 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 350, Col: 55} |
| 2326 | } | 2525 | } | ||
| 2327 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var122)) | 2526 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var133)) |
| 2328 | if templ_7745c5c3_Err != nil { | 2527 | if templ_7745c5c3_Err != nil { | ||
| 2329 | return templ_7745c5c3_Err | 2528 | return templ_7745c5c3_Err | ||
| 2330 | } | 2529 | } | ||
| 2331 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 195, "</a></dd>") | 2530 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 213, "</a></dd>") |
| 2332 | if templ_7745c5c3_Err != nil { | 2531 | if templ_7745c5c3_Err != nil { | ||
| 2333 | return templ_7745c5c3_Err | 2532 | return templ_7745c5c3_Err | ||
| 2334 | } | 2533 | } | ||
| 2335 | if p.Runner != "" { | 2534 | if p.Runner != "" { | ||
| 2336 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 196, "<dt>runner</dt><dd>") | 2535 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 214, "<dt>runner</dt><dd>") |
| 2337 | if templ_7745c5c3_Err != nil { | 2536 | if templ_7745c5c3_Err != nil { | ||
| 2338 | return templ_7745c5c3_Err | 2537 | return templ_7745c5c3_Err | ||
| 2339 | } | 2538 | } | ||
| 2340 | - | var templ_7745c5c3_Var123 string | 2539 | + | var templ_7745c5c3_Var134 string |
| 2341 | - | templ_7745c5c3_Var123, templ_7745c5c3_Err = templ.JoinStringErrs(p.Runner) | 2540 | + | templ_7745c5c3_Var134, templ_7745c5c3_Err = templ.JoinStringErrs(p.Runner) |
| 2342 | if templ_7745c5c3_Err != nil { | 2541 | if templ_7745c5c3_Err != nil { | ||
| 2343 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 332, Col: 18} | 2542 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 353, Col: 18} |
| 2344 | } | 2543 | } | ||
| 2345 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var123)) | 2544 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var134)) |
| 2346 | if templ_7745c5c3_Err != nil { | 2545 | if templ_7745c5c3_Err != nil { | ||
| 2347 | return templ_7745c5c3_Err | 2546 | return templ_7745c5c3_Err | ||
| 2348 | } | 2547 | } | ||
| 2349 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 197, "</dd>") | 2548 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 215, "</dd>") |
| 2350 | if templ_7745c5c3_Err != nil { | 2549 | if templ_7745c5c3_Err != nil { | ||
| 2351 | return templ_7745c5c3_Err | 2550 | return templ_7745c5c3_Err | ||
| 2352 | } | 2551 | } | ||
| 2353 | } | 2552 | } | ||
| 2354 | if p.Isolation != "" { | 2553 | if p.Isolation != "" { | ||
| 2355 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 198, "<dt>isolation</dt><dd>") | 2554 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 216, "<dt>isolation</dt><dd>") |
| 2356 | if templ_7745c5c3_Err != nil { | 2555 | if templ_7745c5c3_Err != nil { | ||
| 2357 | return templ_7745c5c3_Err | 2556 | return templ_7745c5c3_Err | ||
| 2358 | } | 2557 | } | ||
| 2359 | - | var templ_7745c5c3_Var124 string | 2558 | + | var templ_7745c5c3_Var135 string |
| 2360 | - | templ_7745c5c3_Var124, templ_7745c5c3_Err = templ.JoinStringErrs(p.Isolation) | 2559 | + | templ_7745c5c3_Var135, templ_7745c5c3_Err = templ.JoinStringErrs(p.Isolation) |
| 2361 | if templ_7745c5c3_Err != nil { | 2560 | if templ_7745c5c3_Err != nil { | ||
| 2362 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 336, Col: 21} | 2561 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 357, Col: 21} |
| 2363 | } | 2562 | } | ||
| 2364 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var124)) | 2563 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var135)) |
| 2365 | if templ_7745c5c3_Err != nil { | 2564 | if templ_7745c5c3_Err != nil { | ||
| 2366 | return templ_7745c5c3_Err | 2565 | return templ_7745c5c3_Err | ||
| 2367 | } | 2566 | } | ||
| 2368 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 199, "</dd>") | 2567 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 217, "</dd>") |
| 2369 | if templ_7745c5c3_Err != nil { | 2568 | if templ_7745c5c3_Err != nil { | ||
| 2370 | return templ_7745c5c3_Err | 2569 | return templ_7745c5c3_Err | ||
| 2371 | } | 2570 | } | ||
| 2372 | } | 2571 | } | ||
| 2373 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 200, "<dt>lines</dt><dd>") | 2572 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 218, "<dt>lines</dt><dd>") |
| 2374 | if templ_7745c5c3_Err != nil { | 2573 | if templ_7745c5c3_Err != nil { | ||
| 2375 | return templ_7745c5c3_Err | 2574 | return templ_7745c5c3_Err | ||
| 2376 | } | 2575 | } | ||
| 2377 | - | var templ_7745c5c3_Var125 string | 2576 | + | var templ_7745c5c3_Var136 string |
| 2378 | - | templ_7745c5c3_Var125, templ_7745c5c3_Err = templ.JoinStringErrs(itoa64(p.Total)) | 2577 | + | templ_7745c5c3_Var136, templ_7745c5c3_Err = templ.JoinStringErrs(itoa64(p.Total)) |
| 2379 | if templ_7745c5c3_Err != nil { | 2578 | if templ_7745c5c3_Err != nil { | ||
| 2380 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 339, Col: 24} | 2579 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 360, Col: 24} |
| 2381 | } | 2580 | } | ||
| 2382 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var125)) | 2581 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var136)) |
| 2383 | if templ_7745c5c3_Err != nil { | 2582 | if templ_7745c5c3_Err != nil { | ||
| 2384 | return templ_7745c5c3_Err | 2583 | return templ_7745c5c3_Err | ||
| 2385 | } | 2584 | } | ||
| 2386 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 201, "</dd></dl><p><a href=\"") | 2585 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 219, "</dd></dl><p><a href=\"") |
| 2387 | if templ_7745c5c3_Err != nil { | 2586 | if templ_7745c5c3_Err != nil { | ||
| 2388 | return templ_7745c5c3_Err | 2587 | return templ_7745c5c3_Err | ||
| 2389 | } | 2588 | } | ||
| 2390 | - | var templ_7745c5c3_Var126 templ.SafeURL | 2589 | + | var templ_7745c5c3_Var137 templ.SafeURL |
| 2391 | - | templ_7745c5c3_Var126, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RawHref)) | 2590 | + | templ_7745c5c3_Var137, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(p.RawHref)) |
| 2392 | if templ_7745c5c3_Err != nil { | 2591 | if templ_7745c5c3_Err != nil { | ||
| 2393 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 341, Col: 39} | 2592 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 362, Col: 39} |
| 2394 | } | 2593 | } | ||
| 2395 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var126)) | 2594 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var137)) |
| 2396 | if templ_7745c5c3_Err != nil { | 2595 | if templ_7745c5c3_Err != nil { | ||
| 2397 | return templ_7745c5c3_Err | 2596 | return templ_7745c5c3_Err | ||
| 2398 | } | 2597 | } | ||
| 2399 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 202, "\">raw log</a></p></section>") | 2598 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 220, "\">raw log</a></p></section>") |
| 2400 | if templ_7745c5c3_Err != nil { | 2599 | if templ_7745c5c3_Err != nil { | ||
| 2401 | return templ_7745c5c3_Err | 2600 | return templ_7745c5c3_Err | ||
| 2402 | } | 2601 | } | ||
| @@ -2422,39 +2621,39 @@ func CommitChecks(c ChecksSummary) templ.Component { | |||||
| 2422 | }() | 2621 | }() | ||
| 2423 | } | 2622 | } | ||
| 2424 | ctx = templ.InitializeContext(ctx) | 2623 | ctx = templ.InitializeContext(ctx) | ||
| 2425 | - | templ_7745c5c3_Var127 := templ.GetChildren(ctx) | 2624 | + | templ_7745c5c3_Var138 := templ.GetChildren(ctx) |
| 2426 | - | if templ_7745c5c3_Var127 == nil { | 2625 | + | if templ_7745c5c3_Var138 == nil { |
| 2427 | - | templ_7745c5c3_Var127 = templ.NopComponent | 2626 | + | templ_7745c5c3_Var138 = templ.NopComponent |
| 2428 | } | 2627 | } | ||
| 2429 | ctx = templ.ClearChildren(ctx) | 2628 | ctx = templ.ClearChildren(ctx) | ||
| 2430 | if c.Total > 0 { | 2629 | if c.Total > 0 { | ||
| 2431 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 203, "<a class=\"ck-sum\" href=\"") | 2630 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 221, "<a class=\"ck-sum\" href=\"") |
| 2432 | if templ_7745c5c3_Err != nil { | 2631 | if templ_7745c5c3_Err != nil { | ||
| 2433 | return templ_7745c5c3_Err | 2632 | return templ_7745c5c3_Err | ||
| 2434 | } | 2633 | } | ||
| 2435 | - | var templ_7745c5c3_Var128 templ.SafeURL | 2634 | + | var templ_7745c5c3_Var139 templ.SafeURL |
| 2436 | - | templ_7745c5c3_Var128, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(c.Href)) | 2635 | + | templ_7745c5c3_Var139, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(c.Href)) |
| 2437 | if templ_7745c5c3_Err != nil { | 2636 | if templ_7745c5c3_Err != nil { | ||
| 2438 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 349, Col: 48} | 2637 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 370, Col: 48} |
| 2439 | } | 2638 | } | ||
| 2440 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var128)) | 2639 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var139)) |
| 2441 | if templ_7745c5c3_Err != nil { | 2640 | if templ_7745c5c3_Err != nil { | ||
| 2442 | return templ_7745c5c3_Err | 2641 | return templ_7745c5c3_Err | ||
| 2443 | } | 2642 | } | ||
| 2444 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 204, "\" title=\"") | 2643 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 222, "\" title=\"") |
| 2445 | if templ_7745c5c3_Err != nil { | 2644 | if templ_7745c5c3_Err != nil { | ||
| 2446 | return templ_7745c5c3_Err | 2645 | return templ_7745c5c3_Err | ||
| 2447 | } | 2646 | } | ||
| 2448 | - | var templ_7745c5c3_Var129 string | 2647 | + | var templ_7745c5c3_Var140 string |
| 2449 | - | templ_7745c5c3_Var129, templ_7745c5c3_Err = templ.ResolveAttributeValue(c.Title) | 2648 | + | templ_7745c5c3_Var140, templ_7745c5c3_Err = templ.ResolveAttributeValue(c.Title) |
| 2450 | if templ_7745c5c3_Err != nil { | 2649 | if templ_7745c5c3_Err != nil { | ||
| 2451 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 349, Col: 66} | 2650 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 370, Col: 66} |
| 2452 | } | 2651 | } | ||
| 2453 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var129) | 2652 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ_7745c5c3_Var140) |
| 2454 | if templ_7745c5c3_Err != nil { | 2653 | if templ_7745c5c3_Err != nil { | ||
| 2455 | return templ_7745c5c3_Err | 2654 | return templ_7745c5c3_Err | ||
| 2456 | } | 2655 | } | ||
| 2457 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 205, "\">") | 2656 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 223, "\">") |
| 2458 | if templ_7745c5c3_Err != nil { | 2657 | if templ_7745c5c3_Err != nil { | ||
| 2459 | return templ_7745c5c3_Err | 2658 | return templ_7745c5c3_Err | ||
| 2460 | } | 2659 | } | ||
| @@ -2462,20 +2661,20 @@ func CommitChecks(c ChecksSummary) templ.Component { | |||||
| 2462 | if templ_7745c5c3_Err != nil { | 2661 | if templ_7745c5c3_Err != nil { | ||
| 2463 | return templ_7745c5c3_Err | 2662 | return templ_7745c5c3_Err | ||
| 2464 | } | 2663 | } | ||
| 2465 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 206, "<span class=\"mute\">") | 2664 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 224, "<span class=\"mute\">") |
| 2466 | if templ_7745c5c3_Err != nil { | 2665 | if templ_7745c5c3_Err != nil { | ||
| 2467 | return templ_7745c5c3_Err | 2666 | return templ_7745c5c3_Err | ||
| 2468 | } | 2667 | } | ||
| 2469 | - | var templ_7745c5c3_Var130 string | 2668 | + | var templ_7745c5c3_Var141 string |
| 2470 | - | templ_7745c5c3_Var130, templ_7745c5c3_Err = templ.JoinStringErrs(c.Label) | 2669 | + | templ_7745c5c3_Var141, templ_7745c5c3_Err = templ.JoinStringErrs(c.Label) |
| 2471 | if templ_7745c5c3_Err != nil { | 2670 | if templ_7745c5c3_Err != nil { | ||
| 2472 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 351, Col: 31} | 2671 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 372, Col: 31} |
| 2473 | } | 2672 | } | ||
| 2474 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var130)) | 2673 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var141)) |
| 2475 | if templ_7745c5c3_Err != nil { | 2674 | if templ_7745c5c3_Err != nil { | ||
| 2476 | return templ_7745c5c3_Err | 2675 | return templ_7745c5c3_Err | ||
| 2477 | } | 2676 | } | ||
| 2478 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 207, "</span></a>") | 2677 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 225, "</span></a>") |
| 2479 | if templ_7745c5c3_Err != nil { | 2678 | if templ_7745c5c3_Err != nil { | ||
| 2480 | return templ_7745c5c3_Err | 2679 | return templ_7745c5c3_Err | ||
| 2481 | } | 2680 | } | ||
| @@ -2501,40 +2700,40 @@ func MRChecks(c ChecksSection) templ.Component { | |||||
| 2501 | }() | 2700 | }() | ||
| 2502 | } | 2701 | } | ||
| 2503 | ctx = templ.InitializeContext(ctx) | 2702 | ctx = templ.InitializeContext(ctx) | ||
| 2504 | - | templ_7745c5c3_Var131 := templ.GetChildren(ctx) | 2703 | + | templ_7745c5c3_Var142 := templ.GetChildren(ctx) |
| 2505 | - | if templ_7745c5c3_Var131 == nil { | 2704 | + | if templ_7745c5c3_Var142 == nil { |
| 2506 | - | templ_7745c5c3_Var131 = templ.NopComponent | 2705 | + | templ_7745c5c3_Var142 = templ.NopComponent |
| 2507 | } | 2706 | } | ||
| 2508 | ctx = templ.ClearChildren(ctx) | 2707 | ctx = templ.ClearChildren(ctx) | ||
| 2509 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 208, "<section aria-labelledby=\"r-checks\" id=\"mr-checks\"><h2 id=\"r-checks\">Checks <span class=\"count\">") | 2708 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 226, "<section aria-labelledby=\"r-checks\" id=\"mr-checks\"><h2 id=\"r-checks\">Checks <span class=\"count\">") |
| 2510 | if templ_7745c5c3_Err != nil { | 2709 | if templ_7745c5c3_Err != nil { | ||
| 2511 | return templ_7745c5c3_Err | 2710 | return templ_7745c5c3_Err | ||
| 2512 | } | 2711 | } | ||
| 2513 | - | var templ_7745c5c3_Var132 string | 2712 | + | var templ_7745c5c3_Var143 string |
| 2514 | - | templ_7745c5c3_Var132, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(c.Rows))) | 2713 | + | templ_7745c5c3_Var143, templ_7745c5c3_Err = templ.JoinStringErrs(itoa(len(c.Rows))) |
| 2515 | if templ_7745c5c3_Err != nil { | 2714 | if templ_7745c5c3_Err != nil { | ||
| 2516 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 359, Col: 66} | 2715 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 380, Col: 66} |
| 2517 | } | 2716 | } | ||
| 2518 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var132)) | 2717 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var143)) |
| 2519 | if templ_7745c5c3_Err != nil { | 2718 | if templ_7745c5c3_Err != nil { | ||
| 2520 | return templ_7745c5c3_Err | 2719 | return templ_7745c5c3_Err | ||
| 2521 | } | 2720 | } | ||
| 2522 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 209, "</span></h2>") | 2721 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 227, "</span></h2>") |
| 2523 | if templ_7745c5c3_Err != nil { | 2722 | if templ_7745c5c3_Err != nil { | ||
| 2524 | return templ_7745c5c3_Err | 2723 | return templ_7745c5c3_Err | ||
| 2525 | } | 2724 | } | ||
| 2526 | if len(c.Rows) == 0 { | 2725 | if len(c.Rows) == 0 { | ||
| 2527 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 210, "<p class=\"dim\">no checks</p>") | 2726 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 228, "<p class=\"dim\">no checks</p>") |
| 2528 | if templ_7745c5c3_Err != nil { | 2727 | if templ_7745c5c3_Err != nil { | ||
| 2529 | return templ_7745c5c3_Err | 2728 | return templ_7745c5c3_Err | ||
| 2530 | } | 2729 | } | ||
| 2531 | } else { | 2730 | } else { | ||
| 2532 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 211, "<ul class=\"checks\">") | 2731 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 229, "<ul class=\"checks\">") |
| 2533 | if templ_7745c5c3_Err != nil { | 2732 | if templ_7745c5c3_Err != nil { | ||
| 2534 | return templ_7745c5c3_Err | 2733 | return templ_7745c5c3_Err | ||
| 2535 | } | 2734 | } | ||
| 2536 | for _, r := range c.Rows { | 2735 | for _, r := range c.Rows { | ||
| 2537 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 212, "<li>") | 2736 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 230, "<li>") |
| 2538 | if templ_7745c5c3_Err != nil { | 2737 | if templ_7745c5c3_Err != nil { | ||
| 2539 | return templ_7745c5c3_Err | 2738 | return templ_7745c5c3_Err | ||
| 2540 | } | 2739 | } | ||
| @@ -2543,108 +2742,108 @@ func MRChecks(c ChecksSection) templ.Component { | |||||
| 2543 | return templ_7745c5c3_Err | 2742 | return templ_7745c5c3_Err | ||
| 2544 | } | 2743 | } | ||
| 2545 | if r.Href != "" { | 2744 | if r.Href != "" { | ||
| 2546 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 213, "<a href=\"") | 2745 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 231, "<a href=\"") |
| 2547 | if templ_7745c5c3_Err != nil { | 2746 | if templ_7745c5c3_Err != nil { | ||
| 2548 | return templ_7745c5c3_Err | 2747 | return templ_7745c5c3_Err | ||
| 2549 | } | 2748 | } | ||
| 2550 | - | var templ_7745c5c3_Var133 templ.SafeURL | 2749 | + | var templ_7745c5c3_Var144 templ.SafeURL |
| 2551 | - | templ_7745c5c3_Var133, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(r.Href)) | 2750 | + | templ_7745c5c3_Var144, templ_7745c5c3_Err = templ.JoinURLErrs(templ.SafeURL(r.Href)) |
| 2552 | if templ_7745c5c3_Err != nil { | 2751 | if templ_7745c5c3_Err != nil { | ||
| 2553 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 368, Col: 38} | 2752 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 389, Col: 38} |
| 2554 | } | 2753 | } | ||
| 2555 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var133)) | 2754 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var144)) |
| 2556 | if templ_7745c5c3_Err != nil { | 2755 | if templ_7745c5c3_Err != nil { | ||
| 2557 | return templ_7745c5c3_Err | 2756 | return templ_7745c5c3_Err | ||
| 2558 | } | 2757 | } | ||
| 2559 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 214, "\">") | 2758 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 232, "\">") |
| 2560 | if templ_7745c5c3_Err != nil { | 2759 | if templ_7745c5c3_Err != nil { | ||
| 2561 | return templ_7745c5c3_Err | 2760 | return templ_7745c5c3_Err | ||
| 2562 | } | 2761 | } | ||
| 2563 | - | var templ_7745c5c3_Var134 string | 2762 | + | var templ_7745c5c3_Var145 string |
| 2564 | - | templ_7745c5c3_Var134, templ_7745c5c3_Err = templ.JoinStringErrs(r.Name) | 2763 | + | templ_7745c5c3_Var145, templ_7745c5c3_Err = templ.JoinStringErrs(r.Name) |
| 2565 | if templ_7745c5c3_Err != nil { | 2764 | if templ_7745c5c3_Err != nil { | ||
| 2566 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 368, Col: 49} | 2765 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 389, Col: 49} |
| 2567 | } | 2766 | } | ||
| 2568 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var134)) | 2767 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var145)) |
| 2569 | if templ_7745c5c3_Err != nil { | 2768 | if templ_7745c5c3_Err != nil { | ||
| 2570 | return templ_7745c5c3_Err | 2769 | return templ_7745c5c3_Err | ||
| 2571 | } | 2770 | } | ||
| 2572 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 215, "</a> ") | 2771 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 233, "</a> ") |
| 2573 | if templ_7745c5c3_Err != nil { | 2772 | if templ_7745c5c3_Err != nil { | ||
| 2574 | return templ_7745c5c3_Err | 2773 | return templ_7745c5c3_Err | ||
| 2575 | } | 2774 | } | ||
| 2576 | } else { | 2775 | } else { | ||
| 2577 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 216, "<span>") | 2776 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 234, "<span>") |
| 2578 | if templ_7745c5c3_Err != nil { | 2777 | if templ_7745c5c3_Err != nil { | ||
| 2579 | return templ_7745c5c3_Err | 2778 | return templ_7745c5c3_Err | ||
| 2580 | } | 2779 | } | ||
| 2581 | - | var templ_7745c5c3_Var135 string | 2780 | + | var templ_7745c5c3_Var146 string |
| 2582 | - | templ_7745c5c3_Var135, templ_7745c5c3_Err = templ.JoinStringErrs(r.Name) | 2781 | + | templ_7745c5c3_Var146, templ_7745c5c3_Err = templ.JoinStringErrs(r.Name) |
| 2583 | if templ_7745c5c3_Err != nil { | 2782 | if templ_7745c5c3_Err != nil { | ||
| 2584 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 370, Col: 21} | 2783 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 391, Col: 21} |
| 2585 | } | 2784 | } | ||
| 2586 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var135)) | 2785 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var146)) |
| 2587 | if templ_7745c5c3_Err != nil { | 2786 | if templ_7745c5c3_Err != nil { | ||
| 2588 | return templ_7745c5c3_Err | 2787 | return templ_7745c5c3_Err | ||
| 2589 | } | 2788 | } | ||
| 2590 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 217, "</span> ") | 2789 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 235, "</span> ") |
| 2591 | if templ_7745c5c3_Err != nil { | 2790 | if templ_7745c5c3_Err != nil { | ||
| 2592 | return templ_7745c5c3_Err | 2791 | return templ_7745c5c3_Err | ||
| 2593 | } | 2792 | } | ||
| 2594 | } | 2793 | } | ||
| 2595 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 218, "<span class=\"dim\">") | 2794 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 236, "<span class=\"dim\">") |
| 2596 | if templ_7745c5c3_Err != nil { | 2795 | if templ_7745c5c3_Err != nil { | ||
| 2597 | return templ_7745c5c3_Err | 2796 | return templ_7745c5c3_Err | ||
| 2598 | } | 2797 | } | ||
| 2599 | - | var templ_7745c5c3_Var136 string | 2798 | + | var templ_7745c5c3_Var147 string |
| 2600 | - | templ_7745c5c3_Var136, templ_7745c5c3_Err = templ.JoinStringErrs(r.State) | 2799 | + | templ_7745c5c3_Var147, templ_7745c5c3_Err = templ.JoinStringErrs(r.State) |
| 2601 | if templ_7745c5c3_Err != nil { | 2800 | if templ_7745c5c3_Err != nil { | ||
| 2602 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 372, Col: 33} | 2801 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 393, Col: 33} |
| 2603 | } | 2802 | } | ||
| 2604 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var136)) | 2803 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var147)) |
| 2605 | if templ_7745c5c3_Err != nil { | 2804 | if templ_7745c5c3_Err != nil { | ||
| 2606 | return templ_7745c5c3_Err | 2805 | return templ_7745c5c3_Err | ||
| 2607 | } | 2806 | } | ||
| 2608 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 219, "</span> ") | 2807 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 237, "</span> ") |
| 2609 | if templ_7745c5c3_Err != nil { | 2808 | if templ_7745c5c3_Err != nil { | ||
| 2610 | return templ_7745c5c3_Err | 2809 | return templ_7745c5c3_Err | ||
| 2611 | } | 2810 | } | ||
| 2612 | if r.Waiting { | 2811 | if r.Waiting { | ||
| 2613 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 220, "<span class=\"mute\">waiting for a runner</span>") | 2812 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 238, "<span class=\"mute\">waiting for a runner</span>") |
| 2614 | if templ_7745c5c3_Err != nil { | 2813 | if templ_7745c5c3_Err != nil { | ||
| 2615 | return templ_7745c5c3_Err | 2814 | return templ_7745c5c3_Err | ||
| 2616 | } | 2815 | } | ||
| 2617 | } | 2816 | } | ||
| 2618 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 221, "</li>") | 2817 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 239, "</li>") |
| 2619 | if templ_7745c5c3_Err != nil { | 2818 | if templ_7745c5c3_Err != nil { | ||
| 2620 | return templ_7745c5c3_Err | 2819 | return templ_7745c5c3_Err | ||
| 2621 | } | 2820 | } | ||
| 2622 | } | 2821 | } | ||
| 2623 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 222, "</ul>") | 2822 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 240, "</ul>") |
| 2624 | if templ_7745c5c3_Err != nil { | 2823 | if templ_7745c5c3_Err != nil { | ||
| 2625 | return templ_7745c5c3_Err | 2824 | return templ_7745c5c3_Err | ||
| 2626 | } | 2825 | } | ||
| 2627 | } | 2826 | } | ||
| 2628 | if c.Note != "" { | 2827 | if c.Note != "" { | ||
| 2629 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 223, "<p class=\"mute\">") | 2828 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 241, "<p class=\"mute\">") |
| 2630 | if templ_7745c5c3_Err != nil { | 2829 | if templ_7745c5c3_Err != nil { | ||
| 2631 | return templ_7745c5c3_Err | 2830 | return templ_7745c5c3_Err | ||
| 2632 | } | 2831 | } | ||
| 2633 | - | var templ_7745c5c3_Var137 string | 2832 | + | var templ_7745c5c3_Var148 string |
| 2634 | - | templ_7745c5c3_Var137, templ_7745c5c3_Err = templ.JoinStringErrs(c.Note) | 2833 | + | templ_7745c5c3_Var148, templ_7745c5c3_Err = templ.JoinStringErrs(c.Note) |
| 2635 | if templ_7745c5c3_Err != nil { | 2834 | if templ_7745c5c3_Err != nil { | ||
| 2636 | - | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 381, Col: 27} | 2835 | + | return templ.Error{Err: templ_7745c5c3_Err, FileName: `internal/adapters/web/actions.templ`, Line: 402, Col: 27} |
| 2637 | } | 2836 | } | ||
| 2638 | - | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var137)) | 2837 | + | _, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var148)) |
| 2639 | if templ_7745c5c3_Err != nil { | 2838 | if templ_7745c5c3_Err != nil { | ||
| 2640 | return templ_7745c5c3_Err | 2839 | return templ_7745c5c3_Err | ||
| 2641 | } | 2840 | } | ||
| 2642 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 224, "</p>") | 2841 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 242, "</p>") |
| 2643 | if templ_7745c5c3_Err != nil { | 2842 | if templ_7745c5c3_Err != nil { | ||
| 2644 | return templ_7745c5c3_Err | 2843 | return templ_7745c5c3_Err | ||
| 2645 | } | 2844 | } | ||
| 2646 | } | 2845 | } | ||
| 2647 | - | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 225, "</section>") | 2846 | + | templ_7745c5c3_Err = templruntime.WriteString(templ_7745c5c3_Buffer, 243, "</section>") |
| 2648 | if templ_7745c5c3_Err != nil { | 2847 | if templ_7745c5c3_Err != nil { | ||
| 2649 | return templ_7745c5c3_Err | 2848 | return templ_7745c5c3_Err | ||
| 2650 | } | 2849 | } | ||
M internal/adapters/web/events.go +2 -1
| @@ -53,7 +53,8 @@ import ( | |||
| 53 | 53 | // commits-head data: <div id="commits-head">N new commits — reload</div> | |
| 54 | 54 | // mr-notice data: <div id="mr-notice">…</div>, on the merge request pages: | |
| 55 | 55 | // something changed, with the link that reloads the page | |
| 56 | - | // ci-run data: <tr id="run-<id>">…</tr> (the list of runs) or | |
| 56 | + | // ci-run data: <tr id="run-<id>">…</tr> (the list of runs), | |
| 57 | + | // <section id="recent-actions">…</section> (the rail of the summary) or | |
| 57 | 58 | // <div id="run-body">…</div> (one run) | |
| 58 | 59 | // ci-job data: <h2 id="job-head">…</h2> and <ol id="job-steps">…</ol>; the log | |
| 59 | 60 | // itself is never sent in this stream: the page follows it on its own | |
| @@ -53,7 +53,8 @@ import ( | |||||
| 53 | // commits-head data: <div id="commits-head">N new commits — reload</div> | 53 | // commits-head data: <div id="commits-head">N new commits — reload</div> | ||
| 54 | // mr-notice data: <div id="mr-notice">…</div>, on the merge request pages: | 54 | // mr-notice data: <div id="mr-notice">…</div>, on the merge request pages: | ||
| 55 | // something changed, with the link that reloads the page | 55 | // something changed, with the link that reloads the page | ||
| 56 | - | // ci-run data: <tr id="run-<id>">…</tr> (the list of runs) or | 56 | + | // ci-run data: <tr id="run-<id>">…</tr> (the list of runs), |
| 57 | + | // <section id="recent-actions">…</section> (the rail of the summary) or | |||
| 57 | // <div id="run-body">…</div> (one run) | 58 | // <div id="run-body">…</div> (one run) | ||
| 58 | // ci-job data: <h2 id="job-head">…</h2> and <ol id="job-steps">…</ol>; the log | 59 | // ci-job data: <h2 id="job-head">…</h2> and <ol id="job-steps">…</ol>; the log | ||
| 59 | // itself is never sent in this stream: the page follows it on its own | 60 | // itself is never sent in this stream: the page follows it on its own | ||
M internal/adapters/web/fragments.go +23 -1
| @@ -407,7 +407,8 @@ func (l *liveStream) notice(ctx context.Context, text, href string) ([]fragment, | |||
| 407 | 407 | } | |
| 408 | 408 | ||
| 409 | 409 | // runEvent updates the pages of CI that a RunUpdated changes: the row of the | |
| 410 | - | // list of runs, or the body of the run page shown. Only a state is sent: the | |
| 410 | + | // list of runs, the recent actions of the summary, or the body of the run page | |
| 411 | + | // shown. Only a state is sent: the | |
| 411 | 412 | // events carry no log and no text of the workflow. | |
| 412 | 413 | func (l *liveStream) runEvent(ctx context.Context, ev domain.RunUpdated) ([]fragment, error) { | |
| 413 | 414 | if l.s.cfg.Runs == nil { | |
| @@ -423,6 +424,8 @@ func (l *liveStream) runEvent(ctx context.Context, ev domain.RunUpdated) ([]frag | |||
| 423 | 424 | f.html = strings.Replace(f.html, "<tr id=", "<tr data-new id=", 1) | |
| 424 | 425 | } | |
| 425 | 426 | return []fragment{f}, nil | |
| 427 | + | case "summary": | |
| 428 | + | return l.recentActions(ctx) | |
| 426 | 429 | case "run": | |
| 427 | 430 | if strconv.FormatInt(ev.Run.ID, 10) != l.n { | |
| 428 | 431 | return nil, nil | |
| @@ -432,6 +435,25 @@ func (l *liveStream) runEvent(ctx context.Context, ev domain.RunUpdated) ([]frag | |||
| 432 | 435 | return nil, nil | |
| 433 | 436 | } | |
| 434 | 437 | ||
| 438 | + | // recentActions is the "Recent actions" block of the summary rail, read again | |
| 439 | + | // as the principal of the stream: the newest runs change with every event, and | |
| 440 | + | // a viewer who cannot read CI any more gets the block hidden and empty. | |
| 441 | + | func (l *liveStream) recentActions(ctx context.Context) ([]fragment, error) { | |
| 442 | + | name, err := domain.ParseRepoName(l.repo) | |
| 443 | + | if err != nil { | |
| 444 | + | return nil, nil | |
| 445 | + | } | |
| 446 | + | a, err := l.s.listRecentActions(ctx, name, l.s.cfg.Now()) | |
| 447 | + | switch { | |
| 448 | + | case errors.Is(err, domain.ErrNotFound): | |
| 449 | + | a = RecentActions{AllHref: actionsBase(l.repo)} | |
| 450 | + | case err != nil: | |
| 451 | + | return nil, err | |
| 452 | + | } | |
| 453 | + | f, err := renderFragment(ctx, "ci-run", RecentActionsBlock(a)) | |
| 454 | + | return []fragment{f}, err | |
| 455 | + | } | |
| 456 | + | ||
| 435 | 457 | // jobEvent updates the body of the run page and the steps of the job page. | |
| 436 | 458 | func (l *liveStream) jobEvent(ctx context.Context, ev domain.JobUpdated) ([]fragment, error) { | |
| 437 | 459 | if l.s.cfg.Runs == nil { | |
| @@ -407,7 +407,8 @@ func (l *liveStream) notice(ctx context.Context, text, href string) ([]fragment, | |||||
| 407 | } | 407 | } | ||
| 408 | 408 | ||||
| 409 | // runEvent updates the pages of CI that a RunUpdated changes: the row of the | 409 | // runEvent updates the pages of CI that a RunUpdated changes: the row of the | ||
| 410 | - | // list of runs, or the body of the run page shown. Only a state is sent: the | 410 | + | // list of runs, the recent actions of the summary, or the body of the run page |
| 411 | + | // shown. Only a state is sent: the | |||
| 411 | // events carry no log and no text of the workflow. | 412 | // events carry no log and no text of the workflow. | ||
| 412 | func (l *liveStream) runEvent(ctx context.Context, ev domain.RunUpdated) ([]fragment, error) { | 413 | func (l *liveStream) runEvent(ctx context.Context, ev domain.RunUpdated) ([]fragment, error) { | ||
| 413 | if l.s.cfg.Runs == nil { | 414 | if l.s.cfg.Runs == nil { | ||
| @@ -423,6 +424,8 @@ func (l *liveStream) runEvent(ctx context.Context, ev domain.RunUpdated) ([]frag | |||||
| 423 | f.html = strings.Replace(f.html, "<tr id=", "<tr data-new id=", 1) | 424 | f.html = strings.Replace(f.html, "<tr id=", "<tr data-new id=", 1) | ||
| 424 | } | 425 | } | ||
| 425 | return []fragment{f}, nil | 426 | return []fragment{f}, nil | ||
| 427 | + | case "summary": | |||
| 428 | + | return l.recentActions(ctx) | |||
| 426 | case "run": | 429 | case "run": | ||
| 427 | if strconv.FormatInt(ev.Run.ID, 10) != l.n { | 430 | if strconv.FormatInt(ev.Run.ID, 10) != l.n { | ||
| 428 | return nil, nil | 431 | return nil, nil | ||
| @@ -432,6 +435,25 @@ func (l *liveStream) runEvent(ctx context.Context, ev domain.RunUpdated) ([]frag | |||||
| 432 | return nil, nil | 435 | return nil, nil | ||
| 433 | } | 436 | } | ||
| 434 | 437 | ||||
| 438 | + | // recentActions is the "Recent actions" block of the summary rail, read again | |||
| 439 | + | // as the principal of the stream: the newest runs change with every event, and | |||
| 440 | + | // a viewer who cannot read CI any more gets the block hidden and empty. | |||
| 441 | + | func (l *liveStream) recentActions(ctx context.Context) ([]fragment, error) { | |||
| 442 | + | name, err := domain.ParseRepoName(l.repo) | |||
| 443 | + | if err != nil { | |||
| 444 | + | return nil, nil | |||
| 445 | + | } | |||
| 446 | + | a, err := l.s.listRecentActions(ctx, name, l.s.cfg.Now()) | |||
| 447 | + | switch { | |||
| 448 | + | case errors.Is(err, domain.ErrNotFound): | |||
| 449 | + | a = RecentActions{AllHref: actionsBase(l.repo)} | |||
| 450 | + | case err != nil: | |||
| 451 | + | return nil, err | |||
| 452 | + | } | |||
| 453 | + | f, err := renderFragment(ctx, "ci-run", RecentActionsBlock(a)) | |||
| 454 | + | return []fragment{f}, err | |||
| 455 | + | } | |||
| 456 | + | ||||
| 435 | // jobEvent updates the body of the run page and the steps of the job page. | 457 | // jobEvent updates the body of the run page and the steps of the job page. | ||
| 436 | func (l *liveStream) jobEvent(ctx context.Context, ev domain.JobUpdated) ([]fragment, error) { | 458 | func (l *liveStream) jobEvent(ctx context.Context, ev domain.JobUpdated) ([]fragment, error) { | ||
| 437 | if l.s.cfg.Runs == nil { | 459 | if l.s.cfg.Runs == nil { | ||
M internal/adapters/web/pages.templ +3 -0
| @@ -80,6 +80,9 @@ templ summaryRail(p SummaryPage) { | |||
| 80 | 80 | <section aria-labelledby="r-recent"><h2 id="r-recent">Recent commits <a href={ templ.SafeURL(p.AllHref) }>View all</a></h2>@CommitRows(p.Recent) | |
| 81 | 81 | </section> | |
| 82 | 82 | } | |
| 83 | + | if p.Actions != nil { | |
| 84 | + | @RecentActionsBlock(*p.Actions) | |
| 85 | + | } | |
| 83 | 86 | if len(p.Outline) > 0 && p.Readme != nil { | |
| 84 | 87 | <section aria-labelledby="r-outline"><h2 id="r-outline">On this page</h2>@Outline(p.Outline) | |
| 85 | 88 | </section> | |
| @@ -80,6 +80,9 @@ templ summaryRail(p SummaryPage) { | |||||
| 80 | <section aria-labelledby="r-recent"><h2 id="r-recent">Recent commits <a href={ templ.SafeURL(p.AllHref) }>View all</a></h2>@CommitRows(p.Recent) | 80 | <section aria-labelledby="r-recent"><h2 id="r-recent">Recent commits <a href={ templ.SafeURL(p.AllHref) }>View all</a></h2>@CommitRows(p.Recent) | ||
| 81 | </section> | 81 | </section> | ||
| 82 | } | 82 | } | ||
| 83 | + | if p.Actions != nil { | |||
| 84 | + | @RecentActionsBlock(*p.Actions) | |||
| 85 | + | } | |||
| 83 | if len(p.Outline) > 0 && p.Readme != nil { | 86 | if len(p.Outline) > 0 && p.Readme != nil { | ||
| 84 | <section aria-labelledby="r-outline"><h2 id="r-outline">On this page</h2>@Outline(p.Outline) | 87 | <section aria-labelledby="r-outline"><h2 id="r-outline">On this page</h2>@Outline(p.Outline) | ||
| 85 | </section> | 88 | </section> | ||
M internal/adapters/web/pages_templ.go +42 -36 generated file: collapsed
M internal/adapters/web/static/css/65-ci.css +19 -1
| @@ -15,9 +15,27 @@ | |||
| 15 | 15 | @media (prefers-reduced-motion: reduce) { .ck-running { animation: none; border-top-color: var(--teal); } } | |
| 16 | 16 | ||
| 17 | 17 | .ck-sum { display: inline-flex; align-items: center; gap: var(--s1); margin-left: var(--s2); font-size: var(--fs-xs); white-space: nowrap; } | |
| 18 | + | /* The lists are table-layout: fixed, where a percentage is only a sliver: | |
| 19 | + | the check column holds the mark, its count and the padding of the cells; | |
| 20 | + | the refs list has the mark next to the sha. */ | |
| 18 | 21 | .c-ck { width: 1%; white-space: nowrap; } | |
| 22 | + | .list .c-ck { width: 92px; } | |
| 23 | + | .rail .list.commits .c-ck { width: 76px; } | |
| 24 | + | .list.refs .c-sha { width: 150px; } | |
| 19 | 25 | ||
| 20 | - | .runs .c-st { width: 1%; } | |
| 26 | + | /* the table is fixed: the status column is the icon, its margin and the | |
| 27 | + | padding of the cells (a percentage would leave a sliver) */ | |
| 28 | + | .runs .c-st { width: calc(14px + var(--s1) + 2 * var(--s3)); } | |
| 29 | + | /* the recent runs of the summary rail */ | |
| 30 | + | .rruns { | |
| 31 | + | display: grid; padding: 0; list-style: none; font-size: var(--fs-s); | |
| 32 | + | & li { display: flex; align-items: center; gap: var(--s1); min-width: 0; padding: 2px 0; } | |
| 33 | + | & .ck { margin-right: var(--s1); } | |
| 34 | + | & .rr-name { flex: 0 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ink-hi); text-decoration: none; } | |
| 35 | + | & .rr-name:hover { text-decoration: underline; } | |
| 36 | + | & .rr-ref { flex: 1 1 0; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-left: var(--s1); font-family: var(--mono); color: var(--ink-dim); text-decoration: none; } | |
| 37 | + | & time { flex: none; margin-left: auto; padding-left: var(--s2); white-space: nowrap; } | |
| 38 | + | } | |
| 21 | 39 | .runs .c-dur, .runs .c-who { white-space: nowrap; } | |
| 22 | 40 | .runs tr[data-new] { background: var(--bg-raised); } | |
| 23 | 41 | ||
| @@ -15,9 +15,27 @@ | |||||
| 15 | @media (prefers-reduced-motion: reduce) { .ck-running { animation: none; border-top-color: var(--teal); } } | 15 | @media (prefers-reduced-motion: reduce) { .ck-running { animation: none; border-top-color: var(--teal); } } | ||
| 16 | 16 | ||||
| 17 | .ck-sum { display: inline-flex; align-items: center; gap: var(--s1); margin-left: var(--s2); font-size: var(--fs-xs); white-space: nowrap; } | 17 | .ck-sum { display: inline-flex; align-items: center; gap: var(--s1); margin-left: var(--s2); font-size: var(--fs-xs); white-space: nowrap; } | ||
| 18 | + | /* The lists are table-layout: fixed, where a percentage is only a sliver: | |||
| 19 | + | the check column holds the mark, its count and the padding of the cells; | |||
| 20 | + | the refs list has the mark next to the sha. */ | |||
| 18 | .c-ck { width: 1%; white-space: nowrap; } | 21 | .c-ck { width: 1%; white-space: nowrap; } | ||
| 22 | + | .list .c-ck { width: 92px; } | |||
| 23 | + | .rail .list.commits .c-ck { width: 76px; } | |||
| 24 | + | .list.refs .c-sha { width: 150px; } | |||
| 19 | 25 | ||||
| 20 | - | .runs .c-st { width: 1%; } | 26 | + | /* the table is fixed: the status column is the icon, its margin and the |
| 27 | + | padding of the cells (a percentage would leave a sliver) */ | |||
| 28 | + | .runs .c-st { width: calc(14px + var(--s1) + 2 * var(--s3)); } | |||
| 29 | + | /* the recent runs of the summary rail */ | |||
| 30 | + | .rruns { | |||
| 31 | + | display: grid; padding: 0; list-style: none; font-size: var(--fs-s); | |||
| 32 | + | & li { display: flex; align-items: center; gap: var(--s1); min-width: 0; padding: 2px 0; } | |||
| 33 | + | & .ck { margin-right: var(--s1); } | |||
| 34 | + | & .rr-name { flex: 0 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ink-hi); text-decoration: none; } | |||
| 35 | + | & .rr-name:hover { text-decoration: underline; } | |||
| 36 | + | & .rr-ref { flex: 1 1 0; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; margin-left: var(--s1); font-family: var(--mono); color: var(--ink-dim); text-decoration: none; } | |||
| 37 | + | & time { flex: none; margin-left: auto; padding-left: var(--s2); white-space: nowrap; } | |||
| 38 | + | } | |||
| 21 | .runs .c-dur, .runs .c-who { white-space: nowrap; } | 39 | .runs .c-dur, .runs .c-who { white-space: nowrap; } | ||
| 22 | .runs tr[data-new] { background: var(--bg-raised); } | 40 | .runs tr[data-new] { background: var(--bg-raised); } | ||
| 23 | 41 | ||||
M internal/adapters/web/summary.go +37 -0
| @@ -4,6 +4,7 @@ package web | |||
| 4 | 4 | ||
| 5 | 5 | import ( | |
| 6 | 6 | "context" | |
| 7 | + | "errors" | |
| 7 | 8 | "fmt" | |
| 8 | 9 | "html" | |
| 9 | 10 | "html/template" | |
| @@ -26,6 +27,9 @@ const maxReadmeBytes = 512 << 10 | |||
| 26 | 27 | // recentCommits is how many commits the rail of the summary lists. | |
| 27 | 28 | const recentCommits = 5 | |
| 28 | 29 | ||
| 30 | + | // recentRuns is how many runs the rail of the summary lists. | |
| 31 | + | const recentRuns = 5 | |
| 32 | + | ||
| 29 | 33 | // readmeNames are the README file names in order of preference (compared | |
| 30 | 34 | // lowercase): Markdown first. | |
| 31 | 35 | var readmeNames = []string{"readme.md", "readme.markdown", "readme", "readme.txt"} | |
| @@ -63,6 +67,7 @@ func (s *Server) summary(ctx context.Context, r *http.Request) (templ.Component, | |||
| 63 | 67 | ||
| 64 | 68 | p.Facts = s.facts(d, now) | |
| 65 | 69 | p.Latest = s.latest(ctx, d) | |
| 70 | + | p.Actions = s.recentActions(ctx, d.repo.Name, now) | |
| 66 | 71 | ||
| 67 | 72 | if rd, err := s.readme(ctx, d, ref); err != nil { | |
| 68 | 73 | return nil, 0, err | |
| @@ -232,3 +237,35 @@ func humanSize(n int64) string { | |||
| 232 | 237 | } | |
| 233 | 238 | return fmt.Sprintf("%.1f MiB", float64(n)/(1<<20)) | |
| 234 | 239 | } | |
| 240 | + | ||
| 241 | + | // recentActions is the newest runs for the rail, as the caller of the request | |
| 242 | + | // sees them (the permission of the actions page). It is nil when the server | |
| 243 | + | // runs no CI or the caller cannot read it; a failure of the read is logged and | |
| 244 | + | // the page goes on without, since the code does not depend on CI. | |
| 245 | + | func (s *Server) recentActions(ctx context.Context, repo domain.RepoName, now time.Time) *RecentActions { | |
| 246 | + | if s.cfg.Runs == nil { | |
| 247 | + | return nil | |
| 248 | + | } | |
| 249 | + | a, err := s.listRecentActions(ctx, repo, now) | |
| 250 | + | if err != nil { | |
| 251 | + | if !errors.Is(err, domain.ErrNotFound) { | |
| 252 | + | log := zerowrap.FromCtx(ctx) | |
| 253 | + | log.Warn().Err(err).Str("repo", repo.String()).Msg("read the recent runs") | |
| 254 | + | } | |
| 255 | + | return nil | |
| 256 | + | } | |
| 257 | + | return &a | |
| 258 | + | } | |
| 259 | + | ||
| 260 | + | // listRecentActions reads the newest runs of a repository. | |
| 261 | + | func (s *Server) listRecentActions(ctx context.Context, repo domain.RepoName, now time.Time) (RecentActions, error) { | |
| 262 | + | page, err := s.cfg.Runs.ListRuns(ctx, principal(ctx), repo, ports.ListRunsParams{PageSize: recentRuns}) | |
| 263 | + | if err != nil { | |
| 264 | + | return RecentActions{}, err | |
| 265 | + | } | |
| 266 | + | a := RecentActions{AllHref: actionsBase(repo.String())} | |
| 267 | + | for _, run := range page.Runs { | |
| 268 | + | a.Runs = append(a.Runs, s.runRow(repo.String(), run, now)) | |
| 269 | + | } | |
| 270 | + | return a, nil | |
| 271 | + | } | |
| @@ -4,6 +4,7 @@ package web | |||||
| 4 | 4 | ||||
| 5 | import ( | 5 | import ( | ||
| 6 | "context" | 6 | "context" | ||
| 7 | + | "errors" | |||
| 7 | "fmt" | 8 | "fmt" | ||
| 8 | "html" | 9 | "html" | ||
| 9 | "html/template" | 10 | "html/template" | ||
| @@ -26,6 +27,9 @@ const maxReadmeBytes = 512 << 10 | |||||
| 26 | // recentCommits is how many commits the rail of the summary lists. | 27 | // recentCommits is how many commits the rail of the summary lists. | ||
| 27 | const recentCommits = 5 | 28 | const recentCommits = 5 | ||
| 28 | 29 | ||||
| 30 | + | // recentRuns is how many runs the rail of the summary lists. | |||
| 31 | + | const recentRuns = 5 | |||
| 32 | + | ||||
| 29 | // readmeNames are the README file names in order of preference (compared | 33 | // readmeNames are the README file names in order of preference (compared | ||
| 30 | // lowercase): Markdown first. | 34 | // lowercase): Markdown first. | ||
| 31 | var readmeNames = []string{"readme.md", "readme.markdown", "readme", "readme.txt"} | 35 | var readmeNames = []string{"readme.md", "readme.markdown", "readme", "readme.txt"} | ||
| @@ -63,6 +67,7 @@ func (s *Server) summary(ctx context.Context, r *http.Request) (templ.Component, | |||||
| 63 | 67 | ||||
| 64 | p.Facts = s.facts(d, now) | 68 | p.Facts = s.facts(d, now) | ||
| 65 | p.Latest = s.latest(ctx, d) | 69 | p.Latest = s.latest(ctx, d) | ||
| 70 | + | p.Actions = s.recentActions(ctx, d.repo.Name, now) | |||
| 66 | 71 | ||||
| 67 | if rd, err := s.readme(ctx, d, ref); err != nil { | 72 | if rd, err := s.readme(ctx, d, ref); err != nil { | ||
| 68 | return nil, 0, err | 73 | return nil, 0, err | ||
| @@ -232,3 +237,35 @@ func humanSize(n int64) string { | |||||
| 232 | } | 237 | } | ||
| 233 | return fmt.Sprintf("%.1f MiB", float64(n)/(1<<20)) | 238 | return fmt.Sprintf("%.1f MiB", float64(n)/(1<<20)) | ||
| 234 | } | 239 | } | ||
| 240 | + | ||||
| 241 | + | // recentActions is the newest runs for the rail, as the caller of the request | |||
| 242 | + | // sees them (the permission of the actions page). It is nil when the server | |||
| 243 | + | // runs no CI or the caller cannot read it; a failure of the read is logged and | |||
| 244 | + | // the page goes on without, since the code does not depend on CI. | |||
| 245 | + | func (s *Server) recentActions(ctx context.Context, repo domain.RepoName, now time.Time) *RecentActions { | |||
| 246 | + | if s.cfg.Runs == nil { | |||
| 247 | + | return nil | |||
| 248 | + | } | |||
| 249 | + | a, err := s.listRecentActions(ctx, repo, now) | |||
| 250 | + | if err != nil { | |||
| 251 | + | if !errors.Is(err, domain.ErrNotFound) { | |||
| 252 | + | log := zerowrap.FromCtx(ctx) | |||
| 253 | + | log.Warn().Err(err).Str("repo", repo.String()).Msg("read the recent runs") | |||
| 254 | + | } | |||
| 255 | + | return nil | |||
| 256 | + | } | |||
| 257 | + | return &a | |||
| 258 | + | } | |||
| 259 | + | ||||
| 260 | + | // listRecentActions reads the newest runs of a repository. | |||
| 261 | + | func (s *Server) listRecentActions(ctx context.Context, repo domain.RepoName, now time.Time) (RecentActions, error) { | |||
| 262 | + | page, err := s.cfg.Runs.ListRuns(ctx, principal(ctx), repo, ports.ListRunsParams{PageSize: recentRuns}) | |||
| 263 | + | if err != nil { | |||
| 264 | + | return RecentActions{}, err | |||
| 265 | + | } | |||
| 266 | + | a := RecentActions{AllHref: actionsBase(repo.String())} | |||
| 267 | + | for _, run := range page.Runs { | |||
| 268 | + | a.Runs = append(a.Runs, s.runRow(repo.String(), run, now)) | |||
| 269 | + | } | |||
| 270 | + | return a, nil | |||
| 271 | + | } | |||
A internal/adapters/web/summary_actions_test.go +127 -0
| @@ -0,0 +1,127 @@ | |||
| 1 | + | // SPDX-License-Identifier: AGPL-3.0-or-later | |
| 2 | + | ||
| 3 | + | package web | |
| 4 | + | ||
| 5 | + | import ( | |
| 6 | + | "bytes" | |
| 7 | + | "errors" | |
| 8 | + | "strings" | |
| 9 | + | "testing" | |
| 10 | + | "time" | |
| 11 | + | ||
| 12 | + | "github.com/stretchr/testify/assert" | |
| 13 | + | "github.com/stretchr/testify/mock" | |
| 14 | + | "github.com/stretchr/testify/require" | |
| 15 | + | ||
| 16 | + | "bnema.dev/ermite/internal/domain" | |
| 17 | + | "bnema.dev/ermite/internal/ports" | |
| 18 | + | "bnema.dev/ermite/internal/ports/mocks" | |
| 19 | + | ) | |
| 20 | + | ||
| 21 | + | func testRuns(repo domain.RepoName, n int) []domain.CIRun { | |
| 22 | + | var runs []domain.CIRun | |
| 23 | + | for i := n; i >= 1; i-- { | |
| 24 | + | runs = append(runs, domain.CIRun{ | |
| 25 | + | Repo: repo, ID: int64(i), Number: int64(i), Attempt: 1, WorkflowName: "ci", Ref: "refs/heads/main", | |
| 26 | + | Sha: strings.Repeat("a", 40), Status: domain.CICompleted, Conclusion: domain.CISuccess, | |
| 27 | + | CreatedAt: time.Now().Add(-time.Duration(i) * time.Minute), | |
| 28 | + | }) | |
| 29 | + | } | |
| 30 | + | return runs | |
| 31 | + | } | |
| 32 | + | ||
| 33 | + | func servingRuns(t *testing.T, repo domain.RepoName, runs []domain.CIRun, err error) (*Server, *mocks.RunService) { | |
| 34 | + | t.Helper() | |
| 35 | + | m := mocks.NewRunService(t) | |
| 36 | + | m.EXPECT().ListRuns(mock.Anything, mock.Anything, repo, ports.ListRunsParams{PageSize: recentRuns}). | |
| 37 | + | Return(ports.RunPage{Runs: runs}, err).Maybe() | |
| 38 | + | return newTestServer(t, Config{Repos: reposServing(t, publicRepo(t, repo.String())), Browse: mocks.NewBrowseService(t), Runs: m}), m | |
| 39 | + | } | |
| 40 | + | ||
| 41 | + | func renderRail(t *testing.T, p SummaryPage) string { | |
| 42 | + | t.Helper() | |
| 43 | + | var b bytes.Buffer | |
| 44 | + | require.NoError(t, summaryRail(p).Render(t.Context(), &b)) | |
| 45 | + | return b.String() | |
| 46 | + | } | |
| 47 | + | ||
| 48 | + | func TestSummaryRailRecentActions(t *testing.T) { | |
| 49 | + | t.Parallel() | |
| 50 | + | repo := repoName(t, "proj") | |
| 51 | + | srv, _ := servingRuns(t, repo, testRuns(repo, 5), nil) | |
| 52 | + | ||
| 53 | + | p := SummaryPage{Actions: srv.recentActions(t.Context(), repo, time.Now())} | |
| 54 | + | require.NotNil(t, p.Actions) | |
| 55 | + | out := renderRail(t, p) | |
| 56 | + | assert.Contains(t, out, `id="recent-actions"`) | |
| 57 | + | assert.Contains(t, out, "Recent actions") | |
| 58 | + | assert.Contains(t, out, `href="/proj/actions"`, "view all") | |
| 59 | + | assert.Equal(t, 5, strings.Count(out, `class="rr-name"`)) | |
| 60 | + | assert.Contains(t, out, `href="/proj/actions/runs/5"`) | |
| 61 | + | assert.Contains(t, out, `aria-label="success"`, "the status icon") | |
| 62 | + | assert.Contains(t, out, `href="/proj/tree/main"`, "the ref") | |
| 63 | + | assert.Contains(t, out, "#5") | |
| 64 | + | assert.NotContains(t, out, `id="recent-actions" aria-labelledby="r-actions" hidden`) | |
| 65 | + | } | |
| 66 | + | ||
| 67 | + | func TestSummaryRailRecentActionsHidden(t *testing.T) { | |
| 68 | + | t.Parallel() | |
| 69 | + | repo := repoName(t, "proj") | |
| 70 | + | ||
| 71 | + | // The viewer cannot read CI: no block at all, not even to receive events. | |
| 72 | + | srv, _ := servingRuns(t, repo, nil, domain.ErrNotFound) | |
| 73 | + | assert.Nil(t, srv.recentActions(t.Context(), repo, time.Now())) | |
| 74 | + | assert.NotContains(t, renderRail(t, SummaryPage{}), "recent-actions") | |
| 75 | + | ||
| 76 | + | // A failure of the read does not break the page. | |
| 77 | + | srv, _ = servingRuns(t, repo, nil, errors.New("boom")) | |
| 78 | + | assert.Nil(t, srv.recentActions(t.Context(), repo, time.Now())) | |
| 79 | + | ||
| 80 | + | // No CI on this server. | |
| 81 | + | noCI := newTestServer(t, Config{Repos: reposServing(t, publicRepo(t, "proj")), Browse: mocks.NewBrowseService(t)}) | |
| 82 | + | assert.Nil(t, noCI.recentActions(t.Context(), repo, time.Now())) | |
| 83 | + | ||
| 84 | + | // No run yet: the block is there for the first run, but hidden. | |
| 85 | + | srv, _ = servingRuns(t, repo, nil, nil) | |
| 86 | + | a := srv.recentActions(t.Context(), repo, time.Now()) | |
| 87 | + | require.NotNil(t, a) | |
| 88 | + | assert.Contains(t, renderRail(t, SummaryPage{Actions: a}), `id="recent-actions" aria-labelledby="r-actions" hidden`) | |
| 89 | + | } | |
| 90 | + | ||
| 91 | + | func TestRunUpdatedReplacesRecentActionsOnSummary(t *testing.T) { | |
| 92 | + | t.Parallel() | |
| 93 | + | repo := repoName(t, "proj") | |
| 94 | + | runs := testRuns(repo, 3) | |
| 95 | + | runs[0].Status, runs[0].Conclusion = domain.CIInProgress, "" | |
| 96 | + | srv, _ := servingRuns(t, repo, runs, nil) | |
| 97 | + | ||
| 98 | + | ev := ports.WatchEvent{Event: domain.RunUpdated{Run: runs[0]}} | |
| 99 | + | ls := &liveStream{s: srv, repo: "proj", view: "summary"} | |
| 100 | + | got, err := ls.render(t.Context(), ev) | |
| 101 | + | require.NoError(t, err) | |
| 102 | + | require.Len(t, got, 1) | |
| 103 | + | assert.Equal(t, "ci-run", got[0].event) | |
| 104 | + | assert.True(t, strings.HasPrefix(got[0].html, `<section id="recent-actions"`), got[0].html) | |
| 105 | + | assert.Equal(t, 3, strings.Count(got[0].html, `class="rr-name"`)) | |
| 106 | + | assert.Contains(t, got[0].html, `aria-label="running"`) | |
| 107 | + | ||
| 108 | + | // The other pages do not get the block. | |
| 109 | + | for _, view := range []string{"refs", "commits", "mrs"} { | |
| 110 | + | got, err = (&liveStream{s: srv, repo: "proj", view: view}).render(t.Context(), ev) | |
| 111 | + | require.NoError(t, err, view) | |
| 112 | + | assert.Empty(t, got, view) | |
| 113 | + | } | |
| 114 | + | } | |
| 115 | + | ||
| 116 | + | func TestRunUpdatedOnSummaryWhenCIIsNotReadable(t *testing.T) { | |
| 117 | + | t.Parallel() | |
| 118 | + | repo := repoName(t, "proj") | |
| 119 | + | srv, _ := servingRuns(t, repo, nil, domain.ErrNotFound) | |
| 120 | + | ||
| 121 | + | ls := &liveStream{s: srv, repo: "proj", view: "summary"} | |
| 122 | + | got, err := ls.render(t.Context(), ports.WatchEvent{Event: domain.RunUpdated{Run: testRuns(repo, 1)[0]}}) | |
| 123 | + | require.NoError(t, err) | |
| 124 | + | require.Len(t, got, 1) | |
| 125 | + | assert.Contains(t, got[0].html, "hidden", "the block empties and hides, no run leaks") | |
| 126 | + | assert.NotContains(t, got[0].html, "rr-name") | |
| 127 | + | } | |
| @@ -0,0 +1,127 @@ | |||||
| 1 | + | // SPDX-License-Identifier: AGPL-3.0-or-later | |||
| 2 | + | ||||
| 3 | + | package web | |||
| 4 | + | ||||
| 5 | + | import ( | |||
| 6 | + | "bytes" | |||
| 7 | + | "errors" | |||
| 8 | + | "strings" | |||
| 9 | + | "testing" | |||
| 10 | + | "time" | |||
| 11 | + | ||||
| 12 | + | "github.com/stretchr/testify/assert" | |||
| 13 | + | "github.com/stretchr/testify/mock" | |||
| 14 | + | "github.com/stretchr/testify/require" | |||
| 15 | + | ||||
| 16 | + | "bnema.dev/ermite/internal/domain" | |||
| 17 | + | "bnema.dev/ermite/internal/ports" | |||
| 18 | + | "bnema.dev/ermite/internal/ports/mocks" | |||
| 19 | + | ) | |||
| 20 | + | ||||
| 21 | + | func testRuns(repo domain.RepoName, n int) []domain.CIRun { | |||
| 22 | + | var runs []domain.CIRun | |||
| 23 | + | for i := n; i >= 1; i-- { | |||
| 24 | + | runs = append(runs, domain.CIRun{ | |||
| 25 | + | Repo: repo, ID: int64(i), Number: int64(i), Attempt: 1, WorkflowName: "ci", Ref: "refs/heads/main", | |||
| 26 | + | Sha: strings.Repeat("a", 40), Status: domain.CICompleted, Conclusion: domain.CISuccess, | |||
| 27 | + | CreatedAt: time.Now().Add(-time.Duration(i) * time.Minute), | |||
| 28 | + | }) | |||
| 29 | + | } | |||
| 30 | + | return runs | |||
| 31 | + | } | |||
| 32 | + | ||||
| 33 | + | func servingRuns(t *testing.T, repo domain.RepoName, runs []domain.CIRun, err error) (*Server, *mocks.RunService) { | |||
| 34 | + | t.Helper() | |||
| 35 | + | m := mocks.NewRunService(t) | |||
| 36 | + | m.EXPECT().ListRuns(mock.Anything, mock.Anything, repo, ports.ListRunsParams{PageSize: recentRuns}). | |||
| 37 | + | Return(ports.RunPage{Runs: runs}, err).Maybe() | |||
| 38 | + | return newTestServer(t, Config{Repos: reposServing(t, publicRepo(t, repo.String())), Browse: mocks.NewBrowseService(t), Runs: m}), m | |||
| 39 | + | } | |||
| 40 | + | ||||
| 41 | + | func renderRail(t *testing.T, p SummaryPage) string { | |||
| 42 | + | t.Helper() | |||
| 43 | + | var b bytes.Buffer | |||
| 44 | + | require.NoError(t, summaryRail(p).Render(t.Context(), &b)) | |||
| 45 | + | return b.String() | |||
| 46 | + | } | |||
| 47 | + | ||||
| 48 | + | func TestSummaryRailRecentActions(t *testing.T) { | |||
| 49 | + | t.Parallel() | |||
| 50 | + | repo := repoName(t, "proj") | |||
| 51 | + | srv, _ := servingRuns(t, repo, testRuns(repo, 5), nil) | |||
| 52 | + | ||||
| 53 | + | p := SummaryPage{Actions: srv.recentActions(t.Context(), repo, time.Now())} | |||
| 54 | + | require.NotNil(t, p.Actions) | |||
| 55 | + | out := renderRail(t, p) | |||
| 56 | + | assert.Contains(t, out, `id="recent-actions"`) | |||
| 57 | + | assert.Contains(t, out, "Recent actions") | |||
| 58 | + | assert.Contains(t, out, `href="/proj/actions"`, "view all") | |||
| 59 | + | assert.Equal(t, 5, strings.Count(out, `class="rr-name"`)) | |||
| 60 | + | assert.Contains(t, out, `href="/proj/actions/runs/5"`) | |||
| 61 | + | assert.Contains(t, out, `aria-label="success"`, "the status icon") | |||
| 62 | + | assert.Contains(t, out, `href="/proj/tree/main"`, "the ref") | |||
| 63 | + | assert.Contains(t, out, "#5") | |||
| 64 | + | assert.NotContains(t, out, `id="recent-actions" aria-labelledby="r-actions" hidden`) | |||
| 65 | + | } | |||
| 66 | + | ||||
| 67 | + | func TestSummaryRailRecentActionsHidden(t *testing.T) { | |||
| 68 | + | t.Parallel() | |||
| 69 | + | repo := repoName(t, "proj") | |||
| 70 | + | ||||
| 71 | + | // The viewer cannot read CI: no block at all, not even to receive events. | |||
| 72 | + | srv, _ := servingRuns(t, repo, nil, domain.ErrNotFound) | |||
| 73 | + | assert.Nil(t, srv.recentActions(t.Context(), repo, time.Now())) | |||
| 74 | + | assert.NotContains(t, renderRail(t, SummaryPage{}), "recent-actions") | |||
| 75 | + | ||||
| 76 | + | // A failure of the read does not break the page. | |||
| 77 | + | srv, _ = servingRuns(t, repo, nil, errors.New("boom")) | |||
| 78 | + | assert.Nil(t, srv.recentActions(t.Context(), repo, time.Now())) | |||
| 79 | + | ||||
| 80 | + | // No CI on this server. | |||
| 81 | + | noCI := newTestServer(t, Config{Repos: reposServing(t, publicRepo(t, "proj")), Browse: mocks.NewBrowseService(t)}) | |||
| 82 | + | assert.Nil(t, noCI.recentActions(t.Context(), repo, time.Now())) | |||
| 83 | + | ||||
| 84 | + | // No run yet: the block is there for the first run, but hidden. | |||
| 85 | + | srv, _ = servingRuns(t, repo, nil, nil) | |||
| 86 | + | a := srv.recentActions(t.Context(), repo, time.Now()) | |||
| 87 | + | require.NotNil(t, a) | |||
| 88 | + | assert.Contains(t, renderRail(t, SummaryPage{Actions: a}), `id="recent-actions" aria-labelledby="r-actions" hidden`) | |||
| 89 | + | } | |||
| 90 | + | ||||
| 91 | + | func TestRunUpdatedReplacesRecentActionsOnSummary(t *testing.T) { | |||
| 92 | + | t.Parallel() | |||
| 93 | + | repo := repoName(t, "proj") | |||
| 94 | + | runs := testRuns(repo, 3) | |||
| 95 | + | runs[0].Status, runs[0].Conclusion = domain.CIInProgress, "" | |||
| 96 | + | srv, _ := servingRuns(t, repo, runs, nil) | |||
| 97 | + | ||||
| 98 | + | ev := ports.WatchEvent{Event: domain.RunUpdated{Run: runs[0]}} | |||
| 99 | + | ls := &liveStream{s: srv, repo: "proj", view: "summary"} | |||
| 100 | + | got, err := ls.render(t.Context(), ev) | |||
| 101 | + | require.NoError(t, err) | |||
| 102 | + | require.Len(t, got, 1) | |||
| 103 | + | assert.Equal(t, "ci-run", got[0].event) | |||
| 104 | + | assert.True(t, strings.HasPrefix(got[0].html, `<section id="recent-actions"`), got[0].html) | |||
| 105 | + | assert.Equal(t, 3, strings.Count(got[0].html, `class="rr-name"`)) | |||
| 106 | + | assert.Contains(t, got[0].html, `aria-label="running"`) | |||
| 107 | + | ||||
| 108 | + | // The other pages do not get the block. | |||
| 109 | + | for _, view := range []string{"refs", "commits", "mrs"} { | |||
| 110 | + | got, err = (&liveStream{s: srv, repo: "proj", view: view}).render(t.Context(), ev) | |||
| 111 | + | require.NoError(t, err, view) | |||
| 112 | + | assert.Empty(t, got, view) | |||
| 113 | + | } | |||
| 114 | + | } | |||
| 115 | + | ||||
| 116 | + | func TestRunUpdatedOnSummaryWhenCIIsNotReadable(t *testing.T) { | |||
| 117 | + | t.Parallel() | |||
| 118 | + | repo := repoName(t, "proj") | |||
| 119 | + | srv, _ := servingRuns(t, repo, nil, domain.ErrNotFound) | |||
| 120 | + | ||||
| 121 | + | ls := &liveStream{s: srv, repo: "proj", view: "summary"} | |||
| 122 | + | got, err := ls.render(t.Context(), ports.WatchEvent{Event: domain.RunUpdated{Run: testRuns(repo, 1)[0]}}) | |||
| 123 | + | require.NoError(t, err) | |||
| 124 | + | require.Len(t, got, 1) | |||
| 125 | + | assert.Contains(t, got[0].html, "hidden", "the block empties and hides, no run leaks") | |||
| 126 | + | assert.NotContains(t, got[0].html, "rr-name") | |||
| 127 | + | } | |||
M internal/adapters/web/view.go +11 -0
| @@ -153,6 +153,17 @@ type SummaryPage struct { | |||
| 153 | 153 | AllHref string | |
| 154 | 154 | // Latest is the newest tag, nil when the repository has none. | |
| 155 | 155 | Latest *LatestTag | |
| 156 | + | // Actions is the recent runs of the rail, nil when the viewer cannot read | |
| 157 | + | // CI (or the server runs none). | |
| 158 | + | Actions *RecentActions | |
| 159 | + | } | |
| 160 | + | ||
| 161 | + | // RecentActions is the "Recent actions" block of the summary rail: the newest | |
| 162 | + | // runs. With no run the block is in the page but hidden, so that the first | |
| 163 | + | // run reaches it live. | |
| 164 | + | type RecentActions struct { | |
| 165 | + | Runs []RunRow | |
| 166 | + | AllHref string | |
| 156 | 167 | } | |
| 157 | 168 | ||
| 158 | 169 | // LatestTag is the newest tag of a repository, shown in the summary rail. | |
| @@ -153,6 +153,17 @@ type SummaryPage struct { | |||||
| 153 | AllHref string | 153 | AllHref string | ||
| 154 | // Latest is the newest tag, nil when the repository has none. | 154 | // Latest is the newest tag, nil when the repository has none. | ||
| 155 | Latest *LatestTag | 155 | Latest *LatestTag | ||
| 156 | + | // Actions is the recent runs of the rail, nil when the viewer cannot read | |||
| 157 | + | // CI (or the server runs none). | |||
| 158 | + | Actions *RecentActions | |||
| 159 | + | } | |||
| 160 | + | ||||
| 161 | + | // RecentActions is the "Recent actions" block of the summary rail: the newest | |||
| 162 | + | // runs. With no run the block is in the page but hidden, so that the first | |||
| 163 | + | // run reaches it live. | |||
| 164 | + | type RecentActions struct { | |||
| 165 | + | Runs []RunRow | |||
| 166 | + | AllHref string | |||
| 156 | } | 167 | } | ||
| 157 | 168 | ||||
| 158 | // LatestTag is the newest tag of a repository, shown in the summary rail. | 169 | // LatestTag is the newest tag of a repository, shown in the summary rail. | ||
M internal/app/testdata/web/summary.html +6 -0
| @@ -200,6 +200,12 @@ | |||
| 200 | 200 | </tbody> | |
| 201 | 201 | </table> | |
| 202 | 202 | </section> | |
| 203 | + | <section id="recent-actions" aria-labelledby="r-actions" hidden> | |
| 204 | + | <h2 id="r-actions">Recent actions <a href="/demo/actions">View all</a> | |
| 205 | + | </h2> | |
| 206 | + | <ul class="rruns"> | |
| 207 | + | </ul> | |
| 208 | + | </section> | |
| 203 | 209 | <section aria-labelledby="r-outline"> | |
| 204 | 210 | <h2 id="r-outline">On this page</h2> | |
| 205 | 211 | <nav class="outline" aria-label="Outline"> | |
| @@ -200,6 +200,12 @@ | |||||
| 200 | </tbody> | 200 | </tbody> | ||
| 201 | </table> | 201 | </table> | ||
| 202 | </section> | 202 | </section> | ||
| 203 | + | <section id="recent-actions" aria-labelledby="r-actions" hidden> | |||
| 204 | + | <h2 id="r-actions">Recent actions <a href="/demo/actions">View all</a> | |||
| 205 | + | </h2> | |||
| 206 | + | <ul class="rruns"> | |||
| 207 | + | </ul> | |||
| 208 | + | </section> | |||
| 203 | <section aria-labelledby="r-outline"> | 209 | <section aria-labelledby="r-outline"> | ||
| 204 | <h2 id="r-outline">On this page</h2> | 210 | <h2 id="r-outline">On this page</h2> | ||
| 205 | <nav class="outline" aria-label="Outline"> | 211 | <nav class="outline" aria-label="Outline"> | ||