@@ -9,6 +9,16 @@ const removed_functions = document.getElementById('removed_functions');
9
9
const changed_types = document . getElementById ( 'changed_types' ) ;
10
10
const changed_functions = document . getElementById ( 'changed_functions' ) ;
11
11
12
+ const added_div = document . getElementById ( 'added_div' ) ;
13
+ const removed_div = document . getElementById ( 'removed_div' ) ;
14
+ const changed_div = document . getElementById ( 'changed_div' ) ;
15
+ const added_types_div = document . getElementById ( 'added_types_div' ) ;
16
+ const added_functions_div = document . getElementById ( 'added_functions_div' ) ;
17
+ const removed_types_div = document . getElementById ( 'removed_types_div' ) ;
18
+ const removed_functions_div = document . getElementById ( 'removed_functions_div' ) ;
19
+ const changed_types_div = document . getElementById ( 'changed_types_div' ) ;
20
+ const changed_functions_div = document . getElementById ( 'changed_functions_div' ) ;
21
+
12
22
const collapsed_diff = [ ] ;
13
23
for ( const layer of DIFF ) {
14
24
const cdl = collapsed_diff . length ;
@@ -292,6 +302,18 @@ function update_changed(from, to, kind) {
292
302
}
293
303
}
294
304
305
+ function set_visible_ty_fn ( main , ty , fn , where ) {
306
+ const ty_count = Object . keys ( where . types ) . length ;
307
+ const fn_count = Object . keys ( where . functions ) . length ;
308
+ if ( ty_count === 0 && fn_count === 0 ) {
309
+ main . style . display = 'none' ;
310
+ } else {
311
+ main . style . display = '' ;
312
+ ty . style . display = ty_count === 0 ? 'none' : '' ;
313
+ fn . style . display = fn_count === 0 ? 'none' : '' ;
314
+ }
315
+ }
316
+
295
317
function load_diff ( ) {
296
318
div_diff . style . display = 'none' ;
297
319
let from_idx = Number ( select_from . value ) ;
@@ -336,6 +358,11 @@ function load_diff() {
336
358
extend_change_list ( changed_types , diff . changed . types ) ;
337
359
extend_change_list ( changed_functions , diff . changed . functions ) ;
338
360
361
+ // default to showing everything, hide as needed
362
+ set_visible_ty_fn ( added_div , added_types_div , added_functions_div , diff . added ) ;
363
+ set_visible_ty_fn ( removed_div , removed_types_div , removed_functions_div , diff . removed ) ;
364
+ set_visible_ty_fn ( changed_div , changed_types_div , changed_functions_div , diff . changed ) ;
365
+
339
366
div_diff . style . display = '' ;
340
367
}
341
368
0 commit comments