Skip to content

Commit 2db00b5

Browse files
feat: Toggle whether redundancy show at Settings. (#241)
* feat: toggle redundancy * fix: server-side * chore: optimize for toggled * run linter * refactor to use checkbox --------- Co-authored-by: Steven Clontz <steven.clontz@gmail.com>
1 parent acffc53 commit 2db00b5

4 files changed

Lines changed: 24 additions & 4 deletions

File tree

packages/viewer/src/components/Dev/Explore.svelte

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,15 @@
11
<script lang="ts">
22
import context from '@/context'
33
import Log from './Log.svelte'
4+
import { defaultStorage } from '@/repositories'
45
import { reset } from '@/util'
56
67
const { spaces, properties, theorems, traits } = context()
8+
9+
let showRedundancy = defaultStorage.getItem('showRedundancy') !== null
10+
$: showRedundancy
11+
? defaultStorage.setItem('showRedundancy', 'show')
12+
: defaultStorage.removeItem('showRedundancy')
713
</script>
814

915
<h4>Entities</h4>
@@ -36,5 +42,15 @@
3642
</button>
3743
</td>
3844
</tr>
45+
<tr>
46+
<td colspan="2">
47+
<input
48+
id="redundancyCheckbox"
49+
type="checkbox"
50+
bind:checked={showRedundancy}
51+
/>
52+
<label for="redundancyCheckbox"> Show redundancies in tables </label>
53+
</td>
54+
</tr>
3955
</tbody>
4056
</table>

packages/viewer/src/components/Traits/Related.svelte

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import context from '@/context'
66
import type { Property, Space, Trait, Traits } from '@/models'
77
import FilterButtons from './FilterButtons.svelte'
8+
import { defaultStorage } from '@/repositories'
89
import { writable } from 'svelte/store'
910
import urlSearchParam from '@/stores/urlSearchParam'
1011
import { checkIfRedundant } from '@/stores/deduction'
@@ -20,6 +21,8 @@
2021
let filterMode: 'all' | 'known' | 'asserted' | 'true' | 'false' | 'missing'
2122
filterMode = 'known'
2223
24+
let showRedundancy = defaultStorage.getItem('showRedundancy') != null
25+
2326
$: all = related($traits)
2427
// all has type [Space, Property, Trait][]
2528
// we need to index names in different positions depending on which kind we
@@ -106,8 +109,9 @@
106109
<Link.Trait {space} {property}>
107110
<SourceIcon
108111
value={trait?.asserted}
109-
redundant={checkIfRedundant(space, property, $theorems, $traits)
110-
.redundant}
112+
redundant={showRedundancy &&
113+
trait?.asserted &&
114+
checkIfRedundant(space, property, $theorems, $traits).redundant}
111115
icon="user"
112116
/>
113117
</Link.Trait>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
export { default as constant } from './constant'
2-
export { default as local } from './local'
2+
export { default as local, defaultStorage } from './local'
33
export type { Local, Spec } from './local'

packages/viewer/src/repositories/local.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ const nullStorage: Storage = {
2828
removeItem: () => {},
2929
}
3030

31-
let defaultStorage = nullStorage
31+
export let defaultStorage = nullStorage
3232
try {
3333
localStorage.setItem('__storage_test__', '1')
3434
localStorage.removeItem('__storage_test__')

0 commit comments

Comments
 (0)