Vacancy improvements (#2268)

Signed-off-by: Andrey Sobolev <haiodo@gmail.com>
This commit is contained in:
Andrey Sobolev
2022-09-14 11:53:48 +07:00
committed by GitHub
parent e83718f45b
commit 0f3ce39cae
59 changed files with 1032 additions and 316 deletions
@@ -172,11 +172,13 @@
focus
/>
<div class="mt-4">
<StyledTextArea
bind:content={newIssue.description}
placeholder={tracker.string.IssueDescriptionPlaceholder}
showButtons={false}
/>
{#key newIssue.description}
<StyledTextArea
bind:content={newIssue.description}
placeholder={tracker.string.IssueDescriptionPlaceholder}
showButtons={false}
/>
{/key}
</div>
</div>
</div>
@@ -275,8 +275,14 @@
{/if}
</div>
<div class="mt-6">
{#key issue._id}
<SubIssues {issue} {issueStatuses} {currentTeam} />
{#key issue._id && currentTeam !== undefined}
{#if currentTeam !== undefined && issueStatuses !== undefined}
<SubIssues
{issue}
issueStatuses={new Map([[currentTeam._id, issueStatuses]])}
teams={new Map([[currentTeam?._id, currentTeam]])}
/>
{/if}
{/key}
</div>
<div class="mt-6">
@@ -13,7 +13,7 @@
// limitations under the License.
-->
<script lang="ts">
import { Doc, WithLookup } from '@anticrm/core'
import { Doc, Ref, WithLookup } from '@anticrm/core'
import { Issue, IssueStatus, Team } from '@anticrm/tracker'
import { getEventPositionElement, showPanel, showPopup } from '@anticrm/ui'
import {
@@ -35,8 +35,9 @@
import EstimationEditor from '../timereport/EstimationEditor.svelte'
export let issues: Issue[]
export let issueStatuses: WithLookup<IssueStatus>[]
export let currentTeam: Team
export let teams: Map<Ref<Team>, Team>
export let issueStatuses: Map<Ref<Team>, WithLookup<IssueStatus>[]>
const dispatch = createEventDispatcher()
@@ -99,6 +100,7 @@
/>
{#each issues as issue, index (issue._id)}
{@const currentTeam = teams.get(issue.space)}
<div
class="flex-between row"
class:is-dragging={index === draggingIndex}
@@ -133,12 +135,14 @@
justify={'left'}
on:update={(result) => checkWidth('issue', result)}
>
{getIssueId(currentTeam, issue)}
{#if currentTeam}
{getIssueId(currentTeam, issue)}
{/if}
</FixedColumn>
</span>
<StatusEditor
value={issue}
statuses={issueStatuses}
statuses={issueStatuses.get(issue.space)}
justify="center"
kind={'list'}
size={'small'}
@@ -13,7 +13,7 @@
// limitations under the License.
-->
<script lang="ts">
import { SortingOrder, WithLookup } from '@anticrm/core'
import { Ref, SortingOrder, WithLookup } from '@anticrm/core'
import { createQuery, getClient } from '@anticrm/presentation'
import { calcRank, Issue, IssueStatus, Team } from '@anticrm/tracker'
import { Button, Spinner, ExpandCollapse, closeTooltip, IconAdd } from '@anticrm/ui'
@@ -24,8 +24,8 @@
import SubIssueList from './SubIssueList.svelte'
export let issue: Issue
export let currentTeam: Team | undefined
export let issueStatuses: WithLookup<IssueStatus>[] | undefined
export let teams: Map<Ref<Team>, Team>
export let issueStatuses: Map<Ref<Team>, WithLookup<IssueStatus>[]>
const subIssuesQuery = createQuery()
const client = getClient()
@@ -86,19 +86,28 @@
/>
</div>
<div class="mt-1">
{#if subIssues && issueStatuses && currentTeam}
{#if subIssues && issueStatuses}
<ExpandCollapse isExpanded={!isCollapsed} duration={400}>
{#if hasSubIssues}
<div class="list" class:collapsed={isCollapsed}>
<SubIssueList issues={subIssues} {issueStatuses} {currentTeam} on:move={handleIssueSwap} />
<SubIssueList issues={subIssues} {issueStatuses} {teams} on:move={handleIssueSwap} />
</div>
{/if}
</ExpandCollapse>
<ExpandCollapse isExpanded={!isCollapsed} duration={400}>
{#if isCreating}
<div class="pt-4">
<CreateSubIssue parentIssue={issue} {issueStatuses} {currentTeam} on:close={() => (isCreating = false)} />
</div>
{@const team = teams.get(issue.space)}
{@const statuses = issueStatuses.get(issue.space)}
{#if team !== undefined && statuses !== undefined}
<div class="pt-4">
<CreateSubIssue
parentIssue={issue}
issueStatuses={statuses}
currentTeam={team}
on:close={() => (isCreating = false)}
/>
</div>
{/if}
{/if}
</ExpandCollapse>
{:else}