diff --git a/packages/theme/styles/components.scss b/packages/theme/styles/components.scss index 31f2e487b38..355216ddfae 100644 --- a/packages/theme/styles/components.scss +++ b/packages/theme/styles/components.scss @@ -1840,6 +1840,8 @@ .antiTable-body__row { position: relative; + scroll-margin-top: 3rem; + scroll-margin-bottom: 2.5rem; height: 3.25rem; color: var(--theme-caption-color); background-color: var(--theme-table-row-color); diff --git a/plugins/tracker-resources/src/components/issues/timereport/ReportedTimeEditor.svelte b/plugins/tracker-resources/src/components/issues/timereport/ReportedTimeEditor.svelte index a9ed21fcbbf..46bf6efbbd4 100644 --- a/plugins/tracker-resources/src/components/issues/timereport/ReportedTimeEditor.svelte +++ b/plugins/tracker-resources/src/components/issues/timereport/ReportedTimeEditor.svelte @@ -55,7 +55,7 @@ } function showReports (event: MouseEvent): void { if (readonly) return - showPopup(ReportsPopup, { issue: object }, eventToHTMLElement(event)) + showPopup(ReportsPopup, { issue: object, currentProject }, 'centered') } $: childTime = floorFractionDigits( (object.childInfo ?? []).map((it) => it.reportedTime).reduce((a, b) => a + b, 0), diff --git a/plugins/tracker-resources/src/components/issues/timereport/ReportsPopup.svelte b/plugins/tracker-resources/src/components/issues/timereport/ReportsPopup.svelte index bc1cba91623..e21d8589caa 100644 --- a/plugins/tracker-resources/src/components/issues/timereport/ReportsPopup.svelte +++ b/plugins/tracker-resources/src/components/issues/timereport/ReportsPopup.svelte @@ -17,7 +17,7 @@ import { FindOptions } from '@hcengineering/core' import presentation, { Card } from '@hcengineering/presentation' import { Issue, Project, TimeSpendReport } from '@hcengineering/tracker' - import { Button, eventToHTMLElement, IconAdd, Scroller, showPopup, tableSP } from '@hcengineering/ui' + import { Button, eventToHTMLElement, IconAdd, showPopup } from '@hcengineering/ui' import { TableBrowser } from '@hcengineering/view-resources' import tracker from '../../../plugin' import IssuePresenter from '../IssuePresenter.svelte' @@ -53,40 +53,101 @@ } - {}} - okLabel={presentation.string.Ok} - on:changeContent -> - - - -
- - it.childId) ?? [])] } }} - config={[ - '$lookup.attachedTo', - '', - 'employee', - { - key: '$lookup.attachedTo', - presenter: ParentNamesPresenter, - props: { maxWidth: '20rem' }, - label: tracker.string.Title - }, - 'date', - 'description' - ]} - {options} - /> - +
+
+ {}} + okLabel={presentation.string.Ok} + on:changeContent + > + + + +
+ it.childId) ?? [])] } }} + config={[ + '$lookup.attachedTo', + '', + 'employee', + { + key: '$lookup.attachedTo', + presenter: ParentNamesPresenter, + props: { maxWidth: '20rem' }, + label: tracker.string.Title + }, + 'date', + 'description' + ]} + {options} + /> +
+ +
- -
+ + diff --git a/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReportPopup.svelte b/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReportPopup.svelte index b159d9f75cd..e30fd212a25 100644 --- a/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReportPopup.svelte +++ b/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReportPopup.svelte @@ -34,16 +34,18 @@ export let value: TimeSpendReport | undefined export let placeholder: IntlString = tracker.string.TimeSpendReportValue - export let defaultTimeReportDay: TimeReportDayType = TimeReportDayType.PreviousWorkDay + export let defaultTimeReportDay: TimeReportDayType = TimeReportDayType.CurrentWorkDay + + const effectiveDefaultDay = value ? defaultTimeReportDay : TimeReportDayType.CurrentWorkDay const data = { - date: value?.date ?? getTimeReportDate(defaultTimeReportDay), + date: value?.date ?? getTimeReportDate(effectiveDefaultDay), description: value?.description ?? '', value: value?.value, employee: value?.employee ?? getCurrentEmployee() ?? assignee ?? null } - let selectedTimeReportDay = getTimeReportDayType(data.date) + let selectedTimeReportDay = value ? getTimeReportDayType(data.date) : effectiveDefaultDay export function canClose (): boolean { return true diff --git a/plugins/view-resources/src/components/Table.svelte b/plugins/view-resources/src/components/Table.svelte index 130fac1bd21..a0e460eacc2 100644 --- a/plugins/view-resources/src/components/Table.svelte +++ b/plugins/view-resources/src/components/Table.svelte @@ -265,7 +265,8 @@ selection = pos onRow(objects[pos]) if (r !== undefined && !noScroll) { - r?.scrollIntoView({ behavior: 'auto', block: 'nearest' }) + const block = offset < 0 ? 'start' : offset > 0 ? 'end' : 'nearest' + r.scrollIntoView({ behavior: 'auto', block, inline: 'nearest' }) } }