Timestamp inline presenter (#2601)

Signed-off-by: Denis Bykhov <bykhov.denis@gmail.com>
This commit is contained in:
Denis Bykhov 2023-02-08 12:42:49 +06:00 committed by GitHub
parent 8e2ddd6760
commit 9c9b3091dc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 24 additions and 3 deletions

View File

@ -38,6 +38,7 @@ import {
Index,
Model,
Prop,
ReadOnly,
TypeDate,
TypeRef,
TypeString,
@ -95,6 +96,7 @@ export class TContact extends TDoc implements Contact {
city!: string
@Prop(TypeTimestamp(), contact.string.CreatedOn)
@ReadOnly()
createOn!: Timestamp
}

View File

@ -157,6 +157,7 @@ export class TApplicant extends TTask implements Applicant {
declare assignee: Ref<Employee> | null
@Prop(TypeTimestamp(), contact.string.CreatedOn)
@ReadOnly()
createOn!: Timestamp
}

View File

@ -379,7 +379,12 @@ export function createModel (builder: Builder): void {
})
classPresenter(builder, core.class.TypeBoolean, view.component.BooleanPresenter, view.component.BooleanEditor)
classPresenter(builder, core.class.TypeTimestamp, view.component.TimestampPresenter)
classPresenter(
builder,
core.class.TypeTimestamp,
view.component.TimestampPresenter,
view.component.TimestampPresenter
)
classPresenter(builder, core.class.TypeDate, view.component.DatePresenter, view.component.DateEditor)
classPresenter(builder, core.class.Space, view.component.ObjectPresenter)
classPresenter(builder, core.class.Class, view.component.ClassRefPresenter)

View File

@ -14,9 +14,22 @@
// limitations under the License.
-->
<script lang="ts">
import { TimeSince } from '@hcengineering/ui'
import { Button, ButtonSize, TimeSince } from '@hcengineering/ui'
export let value: number
export let kind: 'no-border' | 'link' = 'no-border'
export let readonly = false
export let size: ButtonSize = 'small'
export let justify: 'left' | 'center' = 'center'
export let width: string | undefined = 'fit-content'
</script>
<TimeSince {value} />
{#if kind === 'link'}
<Button {kind} {size} {justify} {width}>
<svelte:fragment slot="content">
<TimeSince {value} />
</svelte:fragment>
</Button>
{:else}
<TimeSince {value} />
{/if}