initial ApplicationsPresenter

Signed-off-by: Andrey Platov <andrey@hardcoreeng.com>
This commit is contained in:
Andrey Platov 2021-09-26 13:18:19 +02:00
parent 1e21e8ebe3
commit 604f594b3d
No known key found for this signature in database
GPG Key ID: C8787EFEB4B64AF0
7 changed files with 802 additions and 753 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -113,7 +113,14 @@ export function createModel (builder: Builder): void {
// resume: chunter.class.Attachment
// }
} as FindOptions<Doc>, // TODO: fix
config: ['', 'title', 'city', 'applications', { presenter: chunter.component.AttachmentPresenter, label: 'Files' }, 'channels']
config: [
'',
'title',
'city',
{ presenter: recruit.component.ApplicationsPresenter, label: 'Apps' },
{ presenter: chunter.component.AttachmentPresenter, label: 'Files' },
'channels'
]
})
builder.createDoc(view.class.Viewlet, core.space.Model, {

View File

@ -41,7 +41,8 @@ export default mergeIds(recruitId, recruit, {
CreateApplication: '' as AnyComponent,
EditCandidate: '' as AnyComponent,
KanbanCard: '' as AnyComponent,
ApplicationPresenter: '' as AnyComponent
ApplicationPresenter: '' as AnyComponent,
ApplicationsPresenter: '' as AnyComponent
},
space: {
CandidatesPublic: '' as Ref<Space>

View File

@ -0,0 +1,30 @@
<!--
// Copyright © 2020, 2021 Anticrm Platform Contributors.
// Copyright © 2021 Hardcore Engineering Inc.
//
// Licensed under the Eclipse Public License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License. You may
// obtain a copy of the License at https://www.eclipse.org/legal/epl-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//
// See the License for the specific language governing permissions and
// limitations under the License.
-->
<script lang="ts">
import type { Candidate } from '@anticrm/recruit'
import { IconFile } from '@anticrm/ui'
export let value: Candidate
</script>
{#if value}
{#if value.applications && value.applications > 0}
<IconFile size={'small'}/> {value.applications}
{/if}
{/if}

View File

@ -24,6 +24,7 @@ import CandidateGeneral from './components/CandidateGeneral.svelte'
import Attachments from './components/Attachments.svelte'
import KanbanCard from './components/KanbanCard.svelte'
import ApplicationPresenter from './components/ApplicationPresenter.svelte'
import ApplicationsPresenter from './components/ApplicationsPresenter.svelte'
import { showPopup } from '@anticrm/ui'
@ -44,6 +45,7 @@ export default async () => ({
CandidateGeneral,
Attachments,
KanbanCard,
ApplicationPresenter
ApplicationPresenter,
ApplicationsPresenter,
},
})

File diff suppressed because it is too large Load Diff