diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 959b1f03e5..0000000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "files.exclude": { - "**/.git": true, - "**/.svn": true, - "**/.hg": true, - "**/CVS": true, - "**/.DS_Store": true, - "**/Thumbs.db": true, - "**/.rush": true, - "**/lib": true, - "**/.heft": true, - "**/_api-extractor-temp": true, - "**/svelte.config.js": true, - "**/postcss.config.js": true, - "**/node_modules": true, - "**/temp": true - }, - "explorerExclude.backup": null -} \ No newline at end of file diff --git a/plugins/contact-resources/src/components/PersonContent.svelte b/plugins/contact-resources/src/components/PersonContent.svelte new file mode 100644 index 0000000000..aeecc197a8 --- /dev/null +++ b/plugins/contact-resources/src/components/PersonContent.svelte @@ -0,0 +1,56 @@ + + + +{#if value || shouldShowPlaceholder} + {#if value} + +
+ +
+ {#if shouldShowName} + {formatName(value.name)} + {/if} +
+ {:else} +
+ +
+ {/if} +{/if} diff --git a/plugins/contact-resources/src/components/PersonPresenter.svelte b/plugins/contact-resources/src/components/PersonPresenter.svelte index a967e624d7..ea555cdfb4 100644 --- a/plugins/contact-resources/src/components/PersonPresenter.svelte +++ b/plugins/contact-resources/src/components/PersonPresenter.svelte @@ -15,33 +15,26 @@ --> -{#if value} - - -
- -
- {#if showLabel} - {formatName(value.name)} - {/if} -
+{#if value || shouldShowPlaceholder} + {#if tooltipLabels} + + + + {:else} + + {/if} {/if} diff --git a/plugins/inventory-resources/src/components/HierarchyElement.svelte b/plugins/inventory-resources/src/components/HierarchyElement.svelte index 343b3fb99d..d3621a6331 100644 --- a/plugins/inventory-resources/src/components/HierarchyElement.svelte +++ b/plugins/inventory-resources/src/components/HierarchyElement.svelte @@ -14,7 +14,7 @@ // limitations under the License. --> -
- Active issues {todalIssues} -
- { todalIssues = evt.detail.length } }> \ No newline at end of file + + diff --git a/plugins/tracker-resources/src/components/issues/Backlog.svelte b/plugins/tracker-resources/src/components/issues/Backlog.svelte index 807299a962..901e9866e3 100644 --- a/plugins/tracker-resources/src/components/issues/Backlog.svelte +++ b/plugins/tracker-resources/src/components/issues/Backlog.svelte @@ -1,7 +1,10 @@ - - \ No newline at end of file + + diff --git a/plugins/tracker-resources/src/components/issues/Board.svelte b/plugins/tracker-resources/src/components/issues/Board.svelte index e0f717ec2a..ce84170ee2 100644 --- a/plugins/tracker-resources/src/components/issues/Board.svelte +++ b/plugins/tracker-resources/src/components/issues/Board.svelte @@ -105,7 +105,7 @@
{#if issue.$lookup?.assignee } - + {/if}
diff --git a/plugins/tracker-resources/src/components/issues/CategoryPresenter.svelte b/plugins/tracker-resources/src/components/issues/CategoryPresenter.svelte index 97599c7d93..cc2913f35d 100644 --- a/plugins/tracker-resources/src/components/issues/CategoryPresenter.svelte +++ b/plugins/tracker-resources/src/components/issues/CategoryPresenter.svelte @@ -1,52 +1,97 @@ -
-
- {IssueStatus[category]} +
0}> +
+
+ + + {issuesAmount} +
+
+ +
- - { visible = evt.detail.length > 0 }} - /> - + + { + issuesAmount = evt.detail.length + dispatch('content', issuesAmount) + }} + /> + diff --git a/plugins/tracker-resources/src/components/issues/IssuePresenter.svelte b/plugins/tracker-resources/src/components/issues/IssuePresenter.svelte index 9044532720..dc72e7319d 100644 --- a/plugins/tracker-resources/src/components/issues/IssuePresenter.svelte +++ b/plugins/tracker-resources/src/components/issues/IssuePresenter.svelte @@ -18,6 +18,7 @@ import type { Issue, Team } from '@anticrm/tracker' import { Icon, showPanel } from '@anticrm/ui' import tracker from '../../plugin' + import { issuePriorities } from '../../utils' export let value: Issue export let currentTeam: Team @@ -37,6 +38,9 @@ class:inline-presenter={inline} on:click={show} > +
+ +
diff --git a/plugins/tracker-resources/src/components/issues/Issues.svelte b/plugins/tracker-resources/src/components/issues/Issues.svelte index 56cedd17fa..ffa342f7e0 100644 --- a/plugins/tracker-resources/src/components/issues/Issues.svelte +++ b/plugins/tracker-resources/src/components/issues/Issues.svelte @@ -16,9 +16,10 @@ import type { DocumentQuery, Ref } from '@anticrm/core' import { createQuery } from '@anticrm/presentation' import { Issue, IssueStatus, Team } from '@anticrm/tracker' - import { ScrollBox } from '@anticrm/ui' + import { Label, ScrollBox } from '@anticrm/ui' import CategoryPresenter from './CategoryPresenter.svelte' import tracker from '../../plugin' + import { IntlString } from '@anticrm/platform' export let currentSpace: Ref export let categories = [ @@ -28,15 +29,26 @@ IssueStatus.Done, IssueStatus.Canceled ] - + export let title: IntlString = tracker.string.AllIssues export let query: DocumentQuery = {} export let search: string = '' + const spaceQuery = createQuery() + const issuesMap: { [status: string]: number } = {} + + $: getTotalIssues = () => { + let total = 0 + + for (const issuesAmount of Object.values(issuesMap)) { + total += issuesAmount + } + + return total + } + $: resultQuery = search === '' ? { space: currentSpace, ...query } : { $search: search, space: currentSpace, ...query } - const spaceQuery = createQuery() - let currentTeam: Team | undefined $: spaceQuery.query(tracker.class.Team, { _id: currentSpace }, (res) => { @@ -46,9 +58,21 @@ {#if currentTeam} +
+
+
{#each categories as category} - + { + issuesMap[category] = event.detail + }} + /> {/each}
diff --git a/plugins/tracker-resources/src/components/issues/IssuesList.svelte b/plugins/tracker-resources/src/components/issues/IssuesList.svelte new file mode 100644 index 0000000000..bef66a5bab --- /dev/null +++ b/plugins/tracker-resources/src/components/issues/IssuesList.svelte @@ -0,0 +1,232 @@ + + + +{#await buildModel({ client, _class, keys: config, options })} + {#if !isLoading} + + {/if} +{:then attributeModels} +
+ {#if docObjects} + {#each docObjects as docObject, rowIndex (docObject._id)} +
+ {#each attributeModels as attributeModel, attributeModelIndex} + {#if attributeModelIndex === 0} +
+
+ { + handleIssueSelected(docObject._id, event) + }} + /> +
+
+ +
showMenu(event, docObject, rowIndex)} + > + +
+
+
+ {:else} +
+ +
+ {/if} + {/each} +
+ {/each} + {:else if loadingProps !== undefined} + {#each Array(getLoadingElementsLength(loadingProps, options)) as _, rowIndex} +
+ {#each attributeModels as _, attributeModelIndex} + {#if attributeModelIndex === 0} +
+ +
+ +
+
+ {/if} + {/each} +
+ {/each} + {/if} +
+{/await} + +{#if isLoading} + +{/if} + + diff --git a/plugins/tracker-resources/src/components/issues/ModificationDatePresenter.svelte b/plugins/tracker-resources/src/components/issues/ModificationDatePresenter.svelte new file mode 100644 index 0000000000..9b66d90c7b --- /dev/null +++ b/plugins/tracker-resources/src/components/issues/ModificationDatePresenter.svelte @@ -0,0 +1,33 @@ + + + + + {shortModificationDate} + diff --git a/plugins/tracker-resources/src/components/issues/TitlePresenter.svelte b/plugins/tracker-resources/src/components/issues/TitlePresenter.svelte new file mode 100644 index 0000000000..2dd0e809ba --- /dev/null +++ b/plugins/tracker-resources/src/components/issues/TitlePresenter.svelte @@ -0,0 +1,41 @@ + + + +{#if value} +
+
+ +
+ {value.title} +
+{/if} + + diff --git a/plugins/tracker-resources/src/index.ts b/plugins/tracker-resources/src/index.ts index 6e510b8730..1afd8e1d84 100644 --- a/plugins/tracker-resources/src/index.ts +++ b/plugins/tracker-resources/src/index.ts @@ -26,6 +26,8 @@ import MyIssues from './components/myissues/MyIssues.svelte' import Projects from './components/projects/Projects.svelte' import Views from './components/views/Views.svelte' import IssuePresenter from './components/issues/IssuePresenter.svelte' +import TitlePresenter from './components/issues/TitlePresenter.svelte' +import ModificationDatePresenter from './components/issues/ModificationDatePresenter.svelte' import EditIssue from './components/issues/EditIssue.svelte' import NewIssueHeader from './components/NewIssueHeader.svelte' @@ -41,6 +43,8 @@ export default async (): Promise => ({ Projects, Views, IssuePresenter, + TitlePresenter, + ModificationDatePresenter, EditIssue, NewIssueHeader } diff --git a/plugins/tracker-resources/src/plugin.ts b/plugins/tracker-resources/src/plugin.ts index ca5b6f961c..7575f2dc9e 100644 --- a/plugins/tracker-resources/src/plugin.ts +++ b/plugins/tracker-resources/src/plugin.ts @@ -29,11 +29,15 @@ export default mergeIds(trackerId, tracker, { Issues: '' as IntlString, Views: '' as IntlString, Active: '' as IntlString, + AllIssues: '' as IntlString, + ActiveIssues: '' as IntlString, + BacklogIssues: '' as IntlString, Backlog: '' as IntlString, Board: '' as IntlString, Project: '' as IntlString, Projects: '' as IntlString, CreateTeam: '' as IntlString, + AddIssue: '' as IntlString, NewIssue: '' as IntlString, Team: '' as IntlString, SelectTeam: '' as IntlString, @@ -56,6 +60,8 @@ export default mergeIds(trackerId, tracker, { Status: '' as IntlString, Number: '' as IntlString, Assignee: '' as IntlString, + AssignTo: '' as IntlString, + AssignedTo: '' as IntlString, Parent: '' as IntlString, BlockedBy: '' as IntlString, RelatedTo: '' as IntlString, @@ -64,6 +70,7 @@ export default mergeIds(trackerId, tracker, { Labels: '' as IntlString, Space: '' as IntlString, DueDate: '' as IntlString, + ModificationDate: '' as IntlString, Issue: '' as IntlString, Document: '' as IntlString, DocumentIcon: '' as IntlString, @@ -86,6 +93,8 @@ export default mergeIds(trackerId, tracker, { Board: '' as AnyComponent, Projects: '' as AnyComponent, IssuePresenter: '' as AnyComponent, + TitlePresenter: '' as AnyComponent, + ModificationDatePresenter: '' as AnyComponent, EditIssue: '' as AnyComponent, CreateTeam: '' as AnyComponent, NewIssueHeader: '' as AnyComponent diff --git a/plugins/view-resources/src/components/Table.svelte b/plugins/view-resources/src/components/Table.svelte index 6386c0eab3..ae2d696187 100644 --- a/plugins/view-resources/src/components/Table.svelte +++ b/plugins/view-resources/src/components/Table.svelte @@ -15,7 +15,7 @@ -->