diff --git a/packages/theme/styles/_layouts.scss b/packages/theme/styles/_layouts.scss index fb202b6e21..980ff21b30 100644 --- a/packages/theme/styles/_layouts.scss +++ b/packages/theme/styles/_layouts.scss @@ -381,11 +381,6 @@ input.search { } /* Margins & Paddings */ -.step-lr25 + .step-lr25 { margin-left: .25rem; } -.step-lr75 + .step-lr75 { margin-left: .75rem; } -.step-tb75 + .step-tb75 { margin-top: .75rem; } -.step-tb-6 + .step-tb-6 { margin-top: 1.5rem; } - .ml-0-5 { margin-left: .125rem; } .ml-1 { margin-left: .25rem; } .ml-1-5 { margin-left: .375rem; } @@ -476,6 +471,28 @@ input.search { .p-6 { padding: 1.5rem; } .p-10 { padding: 2.5rem; } +.p-text { padding: .125rem .25rem; } +.p-text-2 { padding: .25rem .5rem; } + +.step-lr25 + .step-lr25 { margin-left: .25rem; } +.step-lr75 + .step-lr75 { margin-left: .75rem; } +.step-tb75 + .step-tb75 { margin-top: .75rem; } +.step-tb-6 + .step-tb-6 { margin-top: 1.5rem; } + +.step-tb-2-accent + .step-tb-2-accent { + position: relative; + margin-top: .5rem; + &::before { + content: ''; + position: absolute; + top: -.25rem; + left: 0; + width: 100%; + height: 1px; + background-color: var(--popup-bg-hover); + } +} + /* --------- */ .no-word-wrap { word-wrap: none; } .relative { position: relative; } diff --git a/packages/theme/styles/common.scss b/packages/theme/styles/common.scss index 0655b57b6f..b37399b398 100644 --- a/packages/theme/styles/common.scss +++ b/packages/theme/styles/common.scss @@ -275,6 +275,9 @@ min-height: 1px; height: 1px; background-color: var(--divider-color); + + &.dark { background-color: var(--body-accent); } + &.noMargin { margin: 0; } } .antiSection { diff --git a/packages/theme/styles/dialogs.scss b/packages/theme/styles/dialogs.scss index 119d21da8c..b827aea51f 100644 --- a/packages/theme/styles/dialogs.scss +++ b/packages/theme/styles/dialogs.scss @@ -173,10 +173,10 @@ .antiCard-pool { flex-direction: row; align-items: center; - margin: 0 .75rem .75rem; + margin: 0 .5rem .25rem; font-size: .75rem; - & > *:not(:last-child) { margin-right: .375rem; } + & > * { margin: 0 .25rem .5rem; } } .antiCard-footer { direction: ltr; diff --git a/packages/ui/src/components/Chevron.svelte b/packages/ui/src/components/Chevron.svelte new file mode 100644 index 0000000000..06dd53004f --- /dev/null +++ b/packages/ui/src/components/Chevron.svelte @@ -0,0 +1,85 @@ + + + +
+ {#if outline} + + {:else} + + + + {/if} +
+ + diff --git a/packages/ui/src/components/ExpandCollapse.svelte b/packages/ui/src/components/ExpandCollapse.svelte index 1ffcd64d1f..540be85b44 100644 --- a/packages/ui/src/components/ExpandCollapse.svelte +++ b/packages/ui/src/components/ExpandCollapse.svelte @@ -18,7 +18,7 @@ import { tweened } from 'svelte/motion' export let isExpanded = false - export let duration = 200 + export let duration = 150 export let easing: (t: number) => number = quintOut const dispatch = createEventDispatcher() diff --git a/packages/ui/src/components/Expandable.svelte b/packages/ui/src/components/Expandable.svelte index f23ddf82c7..98866f779f 100644 --- a/packages/ui/src/components/Expandable.svelte +++ b/packages/ui/src/components/Expandable.svelte @@ -17,51 +17,62 @@ import ExpandCollapse from './ExpandCollapse.svelte' import Icon from './Icon.svelte' import Label from './Label.svelte' + import Chevron from './Chevron.svelte' export let icon: Asset | undefined = undefined export let label: IntlString | undefined = undefined export let expanded: boolean = false + export let bordered: boolean = false export let expandable = true + export let contentColor = false - - -
-
{ - expanded = !expanded - }} - > -
-
+
+
+ +
{ + if (expandable) expanded = !expanded + }} + > + {#if icon} - +
+ +
{/if} + + {#if label}
- - {#if label} + {#if $$slots.tools} +
+ +
+ {/if}
- -
- -
+ -
-
+ +
diff --git a/packages/ui/src/components/ListView.svelte b/packages/ui/src/components/ListView.svelte index 36a1ab452b..b114942bad 100644 --- a/packages/ui/src/components/ListView.svelte +++ b/packages/ui/src/components/ListView.svelte @@ -18,6 +18,7 @@ export let selection: number = 0 export let count: number + export let addClass: string | undefined = undefined const refs: HTMLElement[] = [] @@ -66,8 +67,9 @@ > {#each Array(count) as _, row} +
onRow(row)} on:focus={() => {}} diff --git a/packages/ui/src/components/icons/DownOutline.svelte b/packages/ui/src/components/icons/DownOutline.svelte index ee3b5954f7..b8dcda616e 100644 --- a/packages/ui/src/components/icons/DownOutline.svelte +++ b/packages/ui/src/components/icons/DownOutline.svelte @@ -1,6 +1,6 @@ diff --git a/packages/ui/src/index.ts b/packages/ui/src/index.ts index 269e7f083d..13dcc14e52 100644 --- a/packages/ui/src/index.ts +++ b/packages/ui/src/index.ts @@ -99,6 +99,7 @@ export { default as ErrorPresenter } from './components/ErrorPresenter.svelte' export { default as Scroller } from './components/Scroller.svelte' export { default as ScrollerBar } from './components/ScrollerBar.svelte' export { default as TabList } from './components/TabList.svelte' +export { default as Chevron } from './components/Chevron.svelte' export { default as IconAdd } from './components/icons/Add.svelte' export { default as IconBack } from './components/icons/Back.svelte' diff --git a/plugins/bitrix-resources/src/components/EntityMapping.svelte b/plugins/bitrix-resources/src/components/EntityMapping.svelte index 77257794d7..2d1824c7be 100644 --- a/plugins/bitrix-resources/src/components/EntityMapping.svelte +++ b/plugins/bitrix-resources/src/components/EntityMapping.svelte @@ -75,9 +75,7 @@
-
-
+
+
+
+
+ {state}
+
diff --git a/plugins/tracker-resources/src/components/issues/edit/SubIssues.svelte b/plugins/tracker-resources/src/components/issues/edit/SubIssues.svelte index 87d633e428..6ab8d78e8a 100644 --- a/plugins/tracker-resources/src/components/issues/edit/SubIssues.svelte +++ b/plugins/tracker-resources/src/components/issues/edit/SubIssues.svelte @@ -16,10 +16,8 @@ import { Ref, SortingOrder, WithLookup } from '@hcengineering/core' import { createQuery, getClient } from '@hcengineering/presentation' import { calcRank, Issue, IssueStatus, Team } from '@hcengineering/tracker' - import { Button, Spinner, ExpandCollapse, closeTooltip, IconAdd } from '@hcengineering/ui' + import { Button, Spinner, ExpandCollapse, closeTooltip, IconAdd, Chevron, Label } from '@hcengineering/ui' import tracker from '../../../plugin' - import Collapsed from '../../icons/Collapsed.svelte' - import Expanded from '../../icons/Expanded.svelte' import CreateSubIssue from './CreateSubIssue.svelte' import SubIssueList from './SubIssueList.svelte' @@ -62,16 +60,18 @@ {#if hasSubIssues} {/if} + + + +
+ +
+ + (data.date = getTimeReportDate(detail))} /> (selectedTimeReportDay = getTimeReportDayType(detail))} /> -
- + diff --git a/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReports.svelte b/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReports.svelte index cda62950e0..ae836d683a 100644 --- a/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReports.svelte +++ b/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReports.svelte @@ -16,7 +16,7 @@ import { DocumentQuery, Ref, SortingOrder } from '@hcengineering/core' import { createQuery } from '@hcengineering/presentation' import { Issue, Team, TimeSpendReport } from '@hcengineering/tracker' - import { Expandable, floorFractionDigits, Label, Scroller, Spinner } from '@hcengineering/ui' + import { Expandable, floorFractionDigits, Label, Spinner } from '@hcengineering/ui' import tracker from '../../../plugin' import TimePresenter from './TimePresenter.svelte' import TimeSpendReportsList from './TimeSpendReportsList.svelte' @@ -42,21 +42,19 @@ {#if reports} - + - -
- - - -
+
{:else} -
+
{/if} diff --git a/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReportsList.svelte b/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReportsList.svelte index 713e3f9ca4..f99db970ce 100644 --- a/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReportsList.svelte +++ b/plugins/tracker-resources/src/components/issues/timereport/TimeSpendReportsList.svelte @@ -18,6 +18,7 @@ import UserBox from '@hcengineering/presentation/src/components/UserBox.svelte' import { Team, TimeReportDayType, TimeSpendReport } from '@hcengineering/tracker' import { eventToHTMLElement, getEventPositionElement, ListView, showPopup } from '@hcengineering/ui' + import { deviceOptionsStore as deviceInfo } from '@hcengineering/ui' import DatePresenter from '@hcengineering/ui/src/components/calendar/DatePresenter.svelte' import { ContextMenu, FixedColumn, ListSelectionProvider, SelectDirection } from '@hcengineering/view-resources' import { getIssueId } from '../../../issues' @@ -51,18 +52,19 @@ assignee: value.employee, defaultTimeReportDay }, - eventToHTMLElement(event) + $deviceInfo.isMobile ? 'top' : eventToHTMLElement(event) ) } + $: twoRows = $deviceInfo.twoRows - + {@const report = reports[item]} {@const currentTeam = teams.get(toTeamId(report.space))}
showContextMenu(ev, report)} on:mouseover={() => { listProvider.updateFocus(report) @@ -72,62 +74,36 @@ }} on:click={(evt) => editSpendReport(evt, report, currentTeam?.defaultTimeReportDay)} > -
- - - {#if currentTeam && report.$lookup?.attachedTo} - {getIssueId(currentTeam, report.$lookup?.attachedTo)} - {/if} - - +
+ + {#if currentTeam && report.$lookup?.attachedTo} + {getIssueId(currentTeam, report.$lookup?.attachedTo)} + {/if} + {#if report.$lookup?.attachedTo?.title} - + {report.$lookup?.attachedTo?.title} {/if}
- - - - - -
+
+ + + + -
- - - - -
- +
+ + + +
+
- - diff --git a/plugins/view-resources/src/components/FixedColumn.svelte b/plugins/view-resources/src/components/FixedColumn.svelte index 840d159b08..1654c50780 100644 --- a/plugins/view-resources/src/components/FixedColumn.svelte +++ b/plugins/view-resources/src/components/FixedColumn.svelte @@ -20,6 +20,7 @@ export let key: string export let justify: string = '' + export let addClass: string | undefined = undefined let prevKey = key let element: HTMLDivElement | undefined @@ -48,7 +49,7 @@