615
597
[ txt "\xc3\x97" ];
616
598
])
617
599
in
618
-
Removed:
HTML.(span [ class_ "toolbar-filters" ] (List.map filter_el filters))
600
+
Added:
Some
601
+
Added:
HTML.(div [ class_ "toolbar-filters" ] (List.map filter_el filters))
619
602
in
620
-
Removed:
let pagination_span =
621
-
Removed:
if not show_pagination then HTML.null []
603
+
Added:
let pagination_toolbar =
604
+
Added:
if not show_pagination then None
622
605
else
623
-
Removed:
HTML.(
624
-
Removed:
nav
625
-
Removed:
[ class_ "toolbar-pagination"; Aria.label "Pagination" ]
626
-
Removed:
[
627
-
Removed:
(if has_prev then
628
-
Removed:
a
629
-
Removed:
[
630
-
Removed:
href "%s" (page_url (page - 1));
631
-
Removed:
class_ "pagination-btn";
632
-
Removed:
Aria.label "Previous page";
633
-
Removed:
]
634
-
Removed:
[ txt "<" ]
635
-
Removed:
else
636
-
Removed:
span
637
-
Removed:
[
638
-
Removed:
class_ "pagination-btn pagination-disabled"; Aria.hidden true;
639
-
Removed:
]
640
-
Removed:
[ txt "<" ]);
641
-
Removed:
span
642
-
Removed:
[ class_ "pagination-page"; Aria.current `page ]
643
-
Removed:
[ txt "%d" page ];
644
-
Removed:
(if has_next then
645
-
Removed:
a
646
-
Removed:
[
647
-
Removed:
href "%s" (page_url (page + 1));
648
-
Removed:
class_ "pagination-btn";
649
-
Removed:
Aria.label "Next page";
650
-
Removed:
]
651
-
Removed:
[ txt ">" ]
652
-
Removed:
else
653
-
Removed:
span
654
-
Removed:
[
655
-
Removed:
class_ "pagination-btn pagination-disabled"; Aria.hidden true;
656
-
Removed:
]
657
-
Removed:
[ txt ">" ]);
658
-
Removed:
])
606
+
Added:
Some
607
+
Added:
HTML.(
608
+
Added:
nav
609
+
Added:
[ class_ "toolbar-pagination"; Aria.label "Pagination" ]
610
+
Added:
[
611
+
Added:
(if has_prev then
612
+
Added:
a
613
+
Added:
[
614
+
Added:
href "%s" (page_url (page - 1));
615
+
Added:
class_ "pagination-btn";
616
+
Added:
Aria.label "Previous page";
617
+
Added:
]
618
+
Added:
[ txt "<" ]
619
+
Added:
else
620
+
Added:
span
621
+
Added:
[
622
+
Added:
class_ "pagination-btn pagination-disabled";
623
+
Added:
Aria.hidden true;
624
+
Added:
]
625
+
Added:
[ txt "<" ]);
626
+
Added:
span
627
+
Added:
[ class_ "pagination-page"; Aria.current `page ]
628
+
Added:
[ txt "%d" page ];
629
+
Added:
(if has_next then
630
+
Added:
a
631
+
Added:
[
632
+
Added:
href "%s" (page_url (page + 1));
633
+
Added:
class_ "pagination-btn";
634
+
Added:
Aria.label "Next page";
635
+
Added:
]
636
+
Added:
[ txt ">" ]
637
+
Added:
else
638
+
Added:
span
639
+
Added:
[
640
+
Added:
class_ "pagination-btn pagination-disabled";
641
+
Added:
Aria.hidden true;
642
+
Added:
]
643
+
Added:
[ txt ">" ]);
644
+
Added:
])
659
645
in
660
-
Removed:
let tb =
661
-
Removed:
HTML.(
662
-
Removed:
div
663
-
Removed:
[ class_ "toolbar"; role `toolbar; Aria.label "Filters" ]
664
-
Removed:
[ filters_span ])
646
+
Added:
let toolbar =
647
+
Added:
List.filter_map Fun.id [ filters_toolbar; pagination_toolbar ]
665
648
in
666
-
Removed:
render_page context ~active:Commits ~toolbar:[ tb ]
649
+
Added:
render_page context ~active:Commits ~toolbar
667
650
HTML.
668
651
[
669
-
Removed:
pagination_span;
670
652
ul
671
653
[ id "commit-list" ]
672
654
(List.map
673
655
(li_of_commit ~hide_pill ?filter_type ?author ?committer
674
656
context.repo)
675
657
commits);
676
-
Removed:
pagination_span;
677
658
]
678
659
679
660
let breadcrumb_pill repo (trail : (string * string) list) =
680
-
Removed:
let repo_segments = String.split_on_char '/' repo in
681
-
Removed:
let repo_anchors =
682
-
Removed:
match repo_segments with
683
-
Removed:
| [] -> [ txt "%s" repo ]
684
-
Removed:
| [ single ] ->
685
-
Removed:
[
686
-
Removed:
Routes.link_to (Files repo)
687
-
Removed:
~other_attrs:[ HTML.class_ "path-pill-link" ]
688
-
Removed:
(txt "%s" single);
689
-
Removed:
]
690
-
Removed:
| segments ->
691
-
Removed:
let last_idx = List.length segments - 1 in
692
-
Removed:
List.mapi
693
-
Removed:
(fun i seg ->
694
-
Removed:
let node =
695
-
Removed:
if i = last_idx then
696
-
Removed:
Routes.link_to (Files repo)
697
-
Removed:
~other_attrs:[ HTML.class_ "path-pill-link" ]
698
-
Removed:
(txt "%s" seg)
699
-
Removed:
else
700
-
Removed:
let dir_path =
701
-
Removed:
String.concat "/" (List_ext.take (i + 1) segments)
702
-
Removed:
in
703
-
Removed:
Routes.link_to (Project_dir dir_path)
704
-
Removed:
~other_attrs:[ HTML.class_ "path-pill-link" ]
705
-
Removed:
(txt "%s" seg)
706
-
Removed:
in
707
-
Removed:
if i = 0 then node
708
-
Removed:
else
709
-
Removed:
HTML.(null [ span [ class_ "path-pill-sep" ] [ txt "/" ]; node ]))
710
-
Removed:
segments
661
+
Added:
let repo_name =
662
+
Added:
match List.rev (String.split_on_char '/' repo) with
663
+
Added:
| name :: _ -> name
664
+
Added:
| [] -> repo
711
665
in
666
+
Added:
let repo_anchor =
667
+
Added:
Routes.link_to (Files repo)
668
+
Added:
~other_attrs:[ HTML.class_ "path-pill-link" ]
669
+
Added:
(txt "%s" repo_name)
670
+
Added:
in
712
671
let file_segments =
713
672
List.map
714
673
(fun (entry_name, hash) ->