Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Show component for Traits #174

Merged
merged 5 commits into from
Oct 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion packages/viewer/src/components/Spaces/List.svelte
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<script lang="ts">
import { Filter, Link, Title, Typeset } from '@/components/Shared'
import { Filter, Link, Typeset } from '@/components/Shared'
import type { Space } from '@/models'
import type { Store } from '@/stores/list'

Expand Down
4 changes: 1 addition & 3 deletions packages/viewer/src/components/Spaces/Show.svelte
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<script lang="ts">
import type { Space } from 'src/models'
import type { Space } from '@/models'
import { Aliases, Link, References, Source, Tabs, Typeset } from '../Shared'
import Counterexamples from './Counterexamples.svelte'
import Properties from './Properties.svelte'
Expand All @@ -8,8 +8,6 @@
export let tab: 'properties' | 'theorems' | 'references'
export let rel: string | undefined = undefined

let showMarkdown = false

const tabs = ['properties', 'theorems', 'references'] as const
</script>

Expand Down
2 changes: 1 addition & 1 deletion packages/viewer/src/components/Theorems/Show.svelte
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<script lang="ts">
import type { Theorem } from 'src/models'
import type { Theorem } from '@/models'
import { Link, References, Tabs, Source, Typeset } from '../Shared'
import Name from './Name.svelte'
import Converse from './Converse.svelte'
Expand Down
79 changes: 79 additions & 0 deletions packages/viewer/src/components/Traits/Show.svelte
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
<script lang="ts">
import type { Space, Property, Trait, Proof as ProofT } from '@/models'
import { Icons, Link, References, Source, Typeset } from '@/components/Shared'
import Proof from './Proof.svelte'
export let space: Space
export let property: Property
export let trait: Trait | undefined
export let proof: ProofT | undefined
export let meta:
| {
description: string
refs: ({
name: string
} & (
| {
doi: string
}
| {
wikipedia: string
}
| {
mr: string
}
| {
mr: number
}
| {
mathse: number
}
| {
mo: number
}
| {
zb: string
}
))[]
}
| undefined
import { contributingUrl } from '@/constants'
</script>

<h3>Space S{space.id} | Property P{property.id}</h3>

<h1>
{#if proof}
<Icons.Robot />
{:else if meta}
<Icons.User />
{:else}
<Icons.Question />
{/if}
{#if trait}
<Link.Space {space} />
is
{trait.value ? '' : 'not'}
<Link.Property {property} />
{:else}
We have insufficient information to determine whether or not
<Link.Space {space} />
is
<Link.Property {property} />
{/if}
</h1>

{#if proof}
<Proof {space} {...proof} />
{:else if meta}
<section class="description">
<Typeset body={meta.description} />
</section>
<section class="description-markdown">
<Source source={meta.description} />
</section>
<h3>References</h3>
<References references={meta.refs} />
{:else}
Please consider <a href={contributingUrl}>contributing</a> a proof or disproof
of this property.
{/if}
1 change: 1 addition & 0 deletions packages/viewer/src/components/Traits/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
export { default as Proof } from './Proof.svelte'
export { default as Related } from './Related.svelte'
export { default as Show } from './Show.svelte'
export { default as Table } from './Table.svelte'
export { default as Value } from './Value.svelte'
Original file line number Diff line number Diff line change
@@ -1,47 +1,18 @@
<script lang="ts">
import { Icons, Link, References, Title, Typeset } from '@/components/Shared'
import { Proof } from '@/components/Traits'
import { Title } from '@/components/Shared'
import { Show } from '@/components/Traits'
import type { PageData } from './$types'
export let data: PageData
import { contributingUrl } from '@/constants'

$: title = `S${data.space.id}|P${data.property.id}: ${data.space.name} | ${data.property.name}`
</script>

<h3>Space S{data.space.id} | Property P{data.property.id}</h3>

<Title {title} />

<h1>
{#if data.proof}
<Icons.Robot />
{:else if data.meta}
<Icons.User />
{:else}
<Icons.Question />
{/if}
{#if data.trait}
<Link.Space space={data.space} />
is
{data.trait.value ? '' : 'not'}
<Link.Property property={data.property} />
{:else}
We have insufficient information to determine whether or not
<Link.Space space={data.space} />
is
<Link.Property property={data.property} />
{/if}
</h1>

{#if data.proof}
<Proof space={data.space} {...data.proof} />
{:else if data.meta}
<section class="description">
<Typeset body={data.meta.description} />
</section>
<h3>References</h3>
<References references={data.meta.refs} />
{:else}
Please consider <a href={contributingUrl}>contributing</a> a proof or disproof
of this property.
{/if}
<Show
space={data.space}
property={data.property}
trait={data.trait}
proof={data.proof}
meta={data.meta}
/>
Loading