mirror of
https://github.com/hcengineering/platform.git
synced 2025-06-09 09:20:54 +00:00
Add svelte-check in setting. Fix errors. (#821)
Signed-off-by: Alexander Platov <sas_lord@mail.ru>
This commit is contained in:
parent
e8c26c46a8
commit
c568bbf711
@ -86,7 +86,7 @@ export function createModel (builder: Builder): void {
|
||||
setting.class.IntegrationType,
|
||||
core.space.Model,
|
||||
{
|
||||
label: 'Gmail',
|
||||
label: 'Gmail' as IntlString,
|
||||
description: 'Use gmail integration' as IntlString,
|
||||
icon: gmail.component.IconGmail,
|
||||
createComponent: gmail.component.Connect,
|
||||
|
@ -34,7 +34,7 @@ export class TIntegration extends TDoc implements Integration {
|
||||
|
||||
@Model(setting.class.IntegrationType, core.class.Doc, DOMAIN_MODEL)
|
||||
export class TIntegrationType extends TDoc implements IntegrationType {
|
||||
label!: string | IntlString
|
||||
label!: IntlString
|
||||
description!: IntlString
|
||||
icon!: AnyComponent
|
||||
createComponent!: AnyComponent
|
||||
|
@ -71,7 +71,7 @@ export function createModel (builder: Builder): void {
|
||||
setting.class.IntegrationType,
|
||||
core.space.Model,
|
||||
{
|
||||
label: 'Telegram',
|
||||
label: 'Telegram' as IntlString,
|
||||
description: 'Use telegram integration' as IntlString,
|
||||
icon: telegram.component.IconTelegram,
|
||||
createComponent: telegram.component.Connect,
|
||||
|
@ -92,8 +92,6 @@
|
||||
height: calc(100% - 32px - 1.25rem);
|
||||
background: var(--theme-bg-color);
|
||||
border-radius: 1.25rem;
|
||||
box-shadow: 0px 44px 154px rgba(0, 0, 0, .75);
|
||||
backdrop-filter: blur(15px);
|
||||
|
||||
.header {
|
||||
flex-shrink: 0;
|
||||
@ -170,7 +168,7 @@
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: var(--theme-menu-color);
|
||||
opacity: .7;
|
||||
background: #000;
|
||||
opacity: .5;
|
||||
}
|
||||
</style>
|
@ -7,6 +7,7 @@
|
||||
"Delete": "Delete",
|
||||
"Suggested": "Suggested",
|
||||
"NotSelected": "Not selected",
|
||||
"Deselect": "Deselect"
|
||||
"Deselect": "Deselect",
|
||||
"AddSocialLinks": "Add social links"
|
||||
}
|
||||
}
|
||||
|
@ -31,6 +31,7 @@ export default plugin(presentationId, {
|
||||
Delete: '' as IntlString,
|
||||
Suggested: '' as IntlString,
|
||||
NotSelected: '' as IntlString,
|
||||
Deselect: '' as IntlString
|
||||
Deselect: '' as IntlString,
|
||||
AddSocialLinks: '' as IntlString
|
||||
}
|
||||
})
|
@ -20,7 +20,7 @@
|
||||
import Label from './Label.svelte'
|
||||
import Icon from './Icon.svelte'
|
||||
|
||||
export let label: IntlString | undefined
|
||||
export let label: IntlString | undefined = undefined
|
||||
export let icon: Asset | AnySvelteComponent | undefined = undefined
|
||||
export let maxWidth: string | undefined
|
||||
export let value: string | undefined
|
||||
|
@ -14,13 +14,13 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import type { IntlString, Asset } from '@anticrm/platform'
|
||||
import type { Asset } from '@anticrm/platform'
|
||||
import type { AnySvelteComponent } from '../types'
|
||||
import Icon from './Icon.svelte'
|
||||
|
||||
export let label: IntlString
|
||||
export let label: string
|
||||
export let href: string = '#'
|
||||
export let icon: Asset | AnySvelteComponent | undefined
|
||||
export let icon: Asset | AnySvelteComponent | undefined = undefined
|
||||
export let disabled: boolean = false
|
||||
export let maxLenght: number = 26
|
||||
|
||||
|
@ -12,7 +12,6 @@
|
||||
"SelectFolder": "Select folder",
|
||||
"OrganizationsFolder": "Organizations folder",
|
||||
"PersonsFolder": "Persons folder",
|
||||
"AddSocialLinks": "Add social links",
|
||||
"MakePrivate": "Make private",
|
||||
"MakePrivateDescription": "Only members can see it",
|
||||
"Create": "Contact"
|
||||
|
@ -16,7 +16,7 @@
|
||||
<script lang="ts">
|
||||
import { createEventDispatcher } from 'svelte'
|
||||
|
||||
import { getClient, Card, Channels } from '@anticrm/presentation'
|
||||
import presentation, { getClient, Card, Channels } from '@anticrm/presentation'
|
||||
|
||||
import { EditBox, showPopup, CircleButton, IconEdit, IconAdd, Label } from '@anticrm/ui'
|
||||
import SocialEditor from './SocialEditor.svelte'
|
||||
@ -57,7 +57,7 @@
|
||||
<Company size={'large'} />
|
||||
</div>
|
||||
<div class="flex-col">
|
||||
<div class="fs-title"><EditBox placeholder="Apple" maxWidth="11rem" bind:value={object.name} label={undefined} /></div>
|
||||
<div class="fs-title"><EditBox placeholder="Apple" maxWidth="11rem" bind:value={object.name} /></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -72,7 +72,7 @@
|
||||
object.channels = result
|
||||
})}
|
||||
/>
|
||||
<span><Label label={contact.string.AddSocialLinks} /></span>
|
||||
<span><Label label={presentation.string.AddSocialLinks} /></span>
|
||||
{:else}
|
||||
<Channels value={object.channels} size={'small'} />
|
||||
<div class="ml-1">
|
||||
|
@ -18,7 +18,7 @@
|
||||
import type { Data } from '@anticrm/core'
|
||||
import { getResource } from '@anticrm/platform';
|
||||
|
||||
import { getClient, Card, Channels, EditableAvatar } from '@anticrm/presentation'
|
||||
import presentation, { getClient, Card, Channels, EditableAvatar } from '@anticrm/presentation'
|
||||
|
||||
import attachment from '@anticrm/attachment'
|
||||
import { EditBox, showPopup, CircleButton, IconEdit, IconAdd, Label } from '@anticrm/ui'
|
||||
@ -80,9 +80,9 @@
|
||||
<EditableAvatar avatar={object.avatar} size={'large'} on:done={onAvatarDone} />
|
||||
</div>
|
||||
<div class="flex-col">
|
||||
<div class="fs-title"><EditBox placeholder="John" maxWidth="12rem" bind:value={firstName} label={undefined} /></div>
|
||||
<div class="fs-title mb-1"><EditBox placeholder="Appleseed" maxWidth="12rem" bind:value={lastName} label={undefined} /></div>
|
||||
<div class="small-text"><EditBox placeholder="Location" maxWidth="12rem" bind:value={object.city} label={undefined} /></div>
|
||||
<div class="fs-title"><EditBox placeholder="John" maxWidth="12rem" bind:value={firstName} /></div>
|
||||
<div class="fs-title mb-1"><EditBox placeholder="Appleseed" maxWidth="12rem" bind:value={lastName} /></div>
|
||||
<div class="small-text"><EditBox placeholder="Location" maxWidth="12rem" bind:value={object.city} /></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -97,7 +97,7 @@
|
||||
object.channels = result
|
||||
})}
|
||||
/>
|
||||
<span><Label label={contact.string.AddSocialLinks} /></span>
|
||||
<span><Label label={presentation.string.AddSocialLinks} /></span>
|
||||
{:else}
|
||||
<Channels value={object.channels} size={'small'} />
|
||||
<div class="ml-1">
|
||||
|
@ -17,7 +17,7 @@
|
||||
import { createEventDispatcher, onMount } from 'svelte'
|
||||
import { getCurrentAccount, Ref, Space } from '@anticrm/core'
|
||||
import { CircleButton, EditBox, showPopup, IconAdd, Label, IconActivity } from '@anticrm/ui'
|
||||
import { getClient, createQuery, Channels } from '@anticrm/presentation'
|
||||
import presentation, { getClient, createQuery, Channels } from '@anticrm/presentation'
|
||||
import setting from '@anticrm/setting'
|
||||
import { IntegrationType } from '@anticrm/setting'
|
||||
import contact from '../plugin'
|
||||
@ -60,7 +60,7 @@
|
||||
</div>
|
||||
<div class="flex-grow flex-col">
|
||||
<div class="name">
|
||||
<EditBox placeholder="John" maxWidth="20rem" bind:value={object.name} on:change={nameChange} label={undefined} />
|
||||
<EditBox placeholder="John" maxWidth="20rem" bind:value={object.name} on:change={nameChange} />
|
||||
</div>
|
||||
<div class="flex-between channels">
|
||||
<div class="flex-row-center">
|
||||
@ -74,7 +74,7 @@
|
||||
saveChannels(result)
|
||||
})}
|
||||
/>
|
||||
<span><Label label={contact.string.AddSocialLinks} /></span>
|
||||
<span><Label label={presentation.string.AddSocialLinks} /></span>
|
||||
{:else}
|
||||
<Channels value={object.channels} size={'small'} {integrations} on:click />
|
||||
<div class="ml-1">
|
||||
|
@ -17,7 +17,7 @@
|
||||
import { createEventDispatcher, onMount, afterUpdate } from 'svelte'
|
||||
import { getCurrentAccount, Ref, Space } from '@anticrm/core'
|
||||
import { CircleButton, EditBox, showPopup, IconAdd, Label, IconActivity } from '@anticrm/ui'
|
||||
import { getClient, createQuery, Channels, EditableAvatar, AttributeEditor } from '@anticrm/presentation'
|
||||
import presentation, { getClient, createQuery, Channels, EditableAvatar, AttributeEditor } from '@anticrm/presentation'
|
||||
import { getResource } from '@anticrm/platform'
|
||||
import attachment from '@anticrm/attachment'
|
||||
import setting from '@anticrm/setting'
|
||||
@ -83,10 +83,10 @@
|
||||
<div class="flex-grow flex-col">
|
||||
<div class="flex-grow flex-col">
|
||||
<div class="name">
|
||||
<EditBox placeholder="John" maxWidth="20rem" bind:value={firstName} on:change={firstNameChange} label={undefined} />
|
||||
<EditBox placeholder="John" maxWidth="20rem" bind:value={firstName} on:change={firstNameChange} />
|
||||
</div>
|
||||
<div class="name">
|
||||
<EditBox placeholder="Appleseed" maxWidth="20rem" bind:value={lastName} on:change={lastNameChange} label={undefined} />
|
||||
<EditBox placeholder="Appleseed" maxWidth="20rem" bind:value={lastName} on:change={lastNameChange} />
|
||||
</div>
|
||||
<div class="location">
|
||||
<AttributeEditor maxWidth="20rem" _class={contact.class.Person} {object} key="city" />
|
||||
@ -107,7 +107,7 @@
|
||||
saveChannels(result)
|
||||
})}
|
||||
/>
|
||||
<span><Label label={contact.string.AddSocialLinks} /></span>
|
||||
<span><Label label={presentation.string.AddSocialLinks} /></span>
|
||||
{:else}
|
||||
<Channels value={object.channels} size={'small'} {integrations} on:click />
|
||||
<div class="ml-1">
|
||||
|
@ -30,7 +30,6 @@ export default mergeIds(contactId, contact, {
|
||||
SelectFolder: '' as IntlString,
|
||||
OrganizationsFolder: '' as IntlString,
|
||||
PersonsFolder: '' as IntlString,
|
||||
AddSocialLinks: '' as IntlString,
|
||||
Name: '' as IntlString,
|
||||
MakePrivate: '' as IntlString,
|
||||
MakePrivateDescription: '' as IntlString,
|
||||
|
@ -16,6 +16,7 @@
|
||||
"CreateApplication": "Create Application",
|
||||
"SelectVacancy": "Select vacancy",
|
||||
"Candidate": "Candidate",
|
||||
"CreateCandidate": "Create Candidate",
|
||||
"AssignRecruiter": "Assigned recruiter",
|
||||
"UnAssignRecruiter": "Unassigned recruiter",
|
||||
"Recruiters": "Recruiters",
|
||||
@ -23,7 +24,13 @@
|
||||
"Applications": "Applications",
|
||||
"ThisVacancyIsPrivate": "This vacancy is private",
|
||||
"Description": "Description",
|
||||
"Company": "Company"
|
||||
"Company": "Company",
|
||||
"Save": "Save",
|
||||
"Edit": "Edit",
|
||||
"Delete": "Delete",
|
||||
"WorkLocationPreferences": "Work location preferences",
|
||||
"Onsite": "Onsite",
|
||||
"Remote": "Remote"
|
||||
},
|
||||
"status": {
|
||||
"CandidateRequired": "Please select candidate",
|
||||
|
@ -18,6 +18,7 @@
|
||||
import type { IntlString } from '@anticrm/platform'
|
||||
import { createEventDispatcher } from 'svelte'
|
||||
import { Label, Button, Grid, IconClose } from '@anticrm/ui'
|
||||
import recruit from '../plugin'
|
||||
|
||||
import Avatar from '../../img/avatar.png'
|
||||
|
||||
@ -40,12 +41,12 @@
|
||||
|
||||
<div class="abs-lb-content actions">
|
||||
<Grid columnGap={.5}>
|
||||
<Button label={'Edit'} />
|
||||
<Button label={'Delete'} />
|
||||
<Button label={recruit.string.Edit} />
|
||||
<Button label={recruit.string.Delete} />
|
||||
</Grid>
|
||||
</div>
|
||||
<div class="abs-rb-content">
|
||||
<Button label={'Save'} />
|
||||
<Button label={recruit.string.Save} />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -102,22 +102,16 @@
|
||||
margin-right: .5rem;
|
||||
opacity: .6;
|
||||
}
|
||||
.label, .description {
|
||||
.label {
|
||||
flex-grow: 1;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
max-width: 35rem;
|
||||
}
|
||||
.label {
|
||||
font-weight: 500;
|
||||
font-size: 1rem;
|
||||
color: var(--theme-caption-color);
|
||||
}
|
||||
.description {
|
||||
font-size: .75rem;
|
||||
color: var(--theme-content-trans-color);
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
@ -19,7 +19,7 @@
|
||||
import type { Data, MixinData, Ref } from '@anticrm/core'
|
||||
import { generateId } from '@anticrm/core'
|
||||
import { getResource, setPlatformStatus, unknownError } from '@anticrm/platform'
|
||||
import { EditableAvatar, Card, Channels, getClient, PDFViewer } from '@anticrm/presentation'
|
||||
import presentation, { EditableAvatar, Card, Channels, getClient, PDFViewer } from '@anticrm/presentation'
|
||||
import type { Candidate } from '@anticrm/recruit'
|
||||
import { CircleButton, EditBox, IconAdd, IconFile as FileIcon, Label, Link, showPopup, Spinner } from '@anticrm/ui'
|
||||
import { createEventDispatcher } from 'svelte'
|
||||
@ -130,7 +130,7 @@
|
||||
|
||||
<!-- <DialogHeader {space} {object} {newValue} {resume} create={true} on:save={createCandidate}/> -->
|
||||
|
||||
<Card label={'Create Candidate'}
|
||||
<Card label={recruit.string.CreateCandidate}
|
||||
okAction={createCandidate}
|
||||
canSave={firstName.length > 0 && lastName.length > 0}
|
||||
space={contact.space.Contacts}
|
||||
@ -152,7 +152,7 @@
|
||||
<div class="flex-row-center channels">
|
||||
{#if !object.channels || object.channels.length === 0}
|
||||
<CircleButton icon={IconAdd} size={'small'} transparent on:click={(ev) => showPopup(contact.component.SocialEditor, { values: object.channels ?? [] }, ev.target, (result) => { object.channels = result })} />
|
||||
<span><Label label={'Add social links'} /></span>
|
||||
<span><Label label={presentation.string.AddSocialLinks} /></span>
|
||||
{:else}
|
||||
<Channels value={object.channels} size={'small'} />
|
||||
<div class="ml-1">
|
||||
@ -179,9 +179,9 @@
|
||||
|
||||
<div class="separator" />
|
||||
<div class="flex-col locations">
|
||||
<span><Label label={'Work location preferences'} /></span>
|
||||
<div class="row"><Label label={'Onsite'} /><YesNo bind:value={object.onsite} /></div>
|
||||
<div class="row"><Label label={'Remote'} /><YesNo bind:value={object.remote} /></div>
|
||||
<span><Label label={recruit.string.WorkLocationPreferences} /></span>
|
||||
<div class="row"><Label label={recruit.string.Onsite} /><YesNo bind:value={object.onsite} /></div>
|
||||
<div class="row"><Label label={recruit.string.Remote} /><YesNo bind:value={object.remote} /></div>
|
||||
</div>
|
||||
</Card>
|
||||
|
||||
|
@ -54,7 +54,9 @@
|
||||
<div class="flex-row-center header">
|
||||
<div class="flex-grow">
|
||||
<div class="flex">
|
||||
<Icon icon={clazz.icon} size={'medium'} />
|
||||
<div class="svg-medium flex-no-shrink">
|
||||
{#if clazz.icon}<Icon icon={clazz.icon} size={'medium'} />{/if}
|
||||
</div>
|
||||
<div class="flex-grow fs-title ml-2">
|
||||
{object.name}
|
||||
</div>
|
||||
@ -113,10 +115,8 @@
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
height: calc(100% - 32px - 1.25rem);
|
||||
background: var(--theme-dialog-bg-spec);
|
||||
background: var(--theme-bg-color);
|
||||
border-radius: 1.25rem;
|
||||
box-shadow: var(--theme-dialog-shadow);
|
||||
backdrop-filter: blur(15px);
|
||||
|
||||
.header {
|
||||
flex-shrink: 0;
|
||||
@ -190,8 +190,8 @@
|
||||
left: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background: var(--theme-menu-color);
|
||||
opacity: .6;
|
||||
background-color: #000;
|
||||
opacity: .5;
|
||||
}
|
||||
|
||||
.title {
|
||||
|
@ -41,6 +41,7 @@ export default mergeIds(recruitId, recruit, {
|
||||
Vacancy: '' as IntlString,
|
||||
SelectVacancy: '' as IntlString,
|
||||
Candidate: '' as IntlString,
|
||||
CreateCandidate: '' as IntlString,
|
||||
AssignRecruiter: '' as IntlString,
|
||||
Recruiters: '' as IntlString,
|
||||
UnAssignRecruiter: '' as IntlString,
|
||||
@ -48,7 +49,13 @@ export default mergeIds(recruitId, recruit, {
|
||||
Applications: '' as IntlString,
|
||||
ThisVacancyIsPrivate: '' as IntlString,
|
||||
Description: '' as IntlString,
|
||||
Company: '' as IntlString
|
||||
Company: '' as IntlString,
|
||||
Save: '' as IntlString,
|
||||
Edit: '' as IntlString,
|
||||
Delete: '' as IntlString,
|
||||
WorkLocationPreferences: '' as IntlString,
|
||||
Onsite: '' as IntlString,
|
||||
Remote: '' as IntlString
|
||||
},
|
||||
space: {
|
||||
CandidatesPublic: '' as Ref<Space>
|
||||
|
@ -9,6 +9,10 @@
|
||||
|
||||
"Folders": "Folders",
|
||||
"Templates": "Templates",
|
||||
"Delete": "Delete"
|
||||
"Delete": "Delete",
|
||||
|
||||
"Disconnect": "Disconnect",
|
||||
"Add": "Add",
|
||||
"LearnMore": "Learn more"
|
||||
}
|
||||
}
|
@ -9,7 +9,8 @@
|
||||
"build:docs": "api-extractor run --local",
|
||||
"lint": "svelte-check && eslint",
|
||||
"lint:fix": "eslint --fix src",
|
||||
"format": "prettier --write --plugin-search-dir=. src && eslint --fix src"
|
||||
"format": "prettier --write --plugin-search-dir=. src && eslint --fix src",
|
||||
"svelte-check": "svelte-check"
|
||||
},
|
||||
"devDependencies": {
|
||||
"svelte-loader": "^3.1.2",
|
||||
|
@ -12,6 +12,7 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import { Button, Component, Label, Link } from '@anticrm/ui'
|
||||
import { getResource } from '@anticrm/platform'
|
||||
@ -56,10 +57,10 @@
|
||||
<div class="content">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod temp</div>
|
||||
<div class="footer">
|
||||
{#if integration}
|
||||
<Button label={'Disconnect'} on:click={disconnect} />
|
||||
<Button label={setting.string.Disconnect} on:click={disconnect} />
|
||||
{:else}
|
||||
<Button
|
||||
label={'Add'}
|
||||
label={setting.string.Add}
|
||||
primary
|
||||
on:click={(e) => {
|
||||
showPopup(integrationType.createComponent, {}, e.target, close)
|
||||
|
@ -14,22 +14,8 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import { getCurrentAccount, Ref, Space } from '@anticrm/core';
|
||||
import { createQuery } from '@anticrm/presentation'
|
||||
import setting from '@anticrm/setting'
|
||||
import type { Integration, IntegrationType } from '@anticrm/setting'
|
||||
import PluginCard from './PluginCard.svelte'
|
||||
import { Icon, Label } from '@anticrm/ui'
|
||||
|
||||
// const accountId = getCurrentAccount()._id
|
||||
// const typeQuery = createQuery()
|
||||
// const integrationQuery = createQuery()
|
||||
|
||||
// let integrations: Integration[] = []
|
||||
// let integrationTypes: IntegrationType[] = []
|
||||
|
||||
// typeQuery.query(setting.class.IntegrationType, {}, (res) => (integrationTypes = res))
|
||||
// integrationQuery.query(setting.class.Integration, { space: accountId as string as Ref<Space> }, (res) => (integrations = res))
|
||||
</script>
|
||||
|
||||
<div class="flex-col h-full">
|
||||
|
@ -14,22 +14,8 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import { getCurrentAccount, Ref, Space } from '@anticrm/core';
|
||||
import { createQuery } from '@anticrm/presentation'
|
||||
import setting from '@anticrm/setting'
|
||||
import type { Integration, IntegrationType } from '@anticrm/setting'
|
||||
import PluginCard from './PluginCard.svelte'
|
||||
import { Icon, Label } from '@anticrm/ui'
|
||||
|
||||
// const accountId = getCurrentAccount()._id
|
||||
// const typeQuery = createQuery()
|
||||
// const integrationQuery = createQuery()
|
||||
|
||||
// let integrations: Integration[] = []
|
||||
// let integrationTypes: IntegrationType[] = []
|
||||
|
||||
// typeQuery.query(setting.class.IntegrationType, {}, (res) => (integrationTypes = res))
|
||||
// integrationQuery.query(setting.class.Integration, { space: accountId as string as Ref<Space> }, (res) => (integrations = res))
|
||||
</script>
|
||||
|
||||
<div class="flex-col h-full">
|
||||
|
@ -14,22 +14,8 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import { getCurrentAccount, Ref, Space } from '@anticrm/core';
|
||||
import { createQuery } from '@anticrm/presentation'
|
||||
import setting from '@anticrm/setting'
|
||||
import type { Integration, IntegrationType } from '@anticrm/setting'
|
||||
import PluginCard from './PluginCard.svelte'
|
||||
import { Icon, Label } from '@anticrm/ui'
|
||||
|
||||
// const accountId = getCurrentAccount()._id
|
||||
// const typeQuery = createQuery()
|
||||
// const integrationQuery = createQuery()
|
||||
|
||||
// let integrations: Integration[] = []
|
||||
// let integrationTypes: IntegrationType[] = []
|
||||
|
||||
// typeQuery.query(setting.class.IntegrationType, {}, (res) => (integrationTypes = res))
|
||||
// integrationQuery.query(setting.class.Integration, { space: accountId as string as Ref<Space> }, (res) => (integrations = res))
|
||||
</script>
|
||||
|
||||
<div class="flex-col h-full">
|
||||
|
@ -14,22 +14,8 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import { getCurrentAccount, Ref, Space } from '@anticrm/core';
|
||||
import { createQuery } from '@anticrm/presentation'
|
||||
import setting from '@anticrm/setting'
|
||||
import type { Integration, IntegrationType } from '@anticrm/setting'
|
||||
import PluginCard from './PluginCard.svelte'
|
||||
import { Icon, Label } from '@anticrm/ui'
|
||||
|
||||
// const accountId = getCurrentAccount()._id
|
||||
// const typeQuery = createQuery()
|
||||
// const integrationQuery = createQuery()
|
||||
|
||||
// let integrations: Integration[] = []
|
||||
// let integrationTypes: IntegrationType[] = []
|
||||
|
||||
// typeQuery.query(setting.class.IntegrationType, {}, (res) => (integrationTypes = res))
|
||||
// integrationQuery.query(setting.class.Integration, { space: accountId as string as Ref<Space> }, (res) => (integrations = res))
|
||||
</script>
|
||||
|
||||
<div class="flex-col h-full">
|
||||
|
@ -15,7 +15,7 @@
|
||||
-->
|
||||
|
||||
<script lang="ts">
|
||||
import type { Ref, Space, Doc, Class } from '@anticrm/core'
|
||||
// import type { Ref, Space, Doc, Class } from '@anticrm/core'
|
||||
import { getClient, MessageBox } from '@anticrm/presentation'
|
||||
import { Label, Icon, showPopup } from '@anticrm/ui'
|
||||
import type { KanbanTemplate, KanbanTemplateSpace, StateTemplate } from '@anticrm/task'
|
||||
@ -26,9 +26,9 @@
|
||||
import Folders from './Folders.svelte'
|
||||
import Templates from './Templates.svelte'
|
||||
|
||||
export let objectId: Ref<Doc>
|
||||
export let space: Ref<Space>
|
||||
export let _class: Ref<Class<Doc>>
|
||||
// export let objectId: Ref<Doc>
|
||||
// export let space: Ref<Space>
|
||||
// export let _class: Ref<Class<Doc>>
|
||||
|
||||
let folder: KanbanTemplateSpace | undefined
|
||||
let template: KanbanTemplate | undefined
|
||||
|
@ -27,7 +27,7 @@ export type Handler = Resource<() => Promise<void>>
|
||||
* @public
|
||||
*/
|
||||
export interface IntegrationType extends Doc {
|
||||
label: string | IntlString
|
||||
label: IntlString
|
||||
description: IntlString
|
||||
icon: AnyComponent
|
||||
createComponent: AnyComponent
|
||||
@ -72,7 +72,10 @@ export default plugin(settingId, {
|
||||
Terms: '' as IntlString,
|
||||
Folders: '' as IntlString,
|
||||
Templates: '' as IntlString,
|
||||
Delete: '' as IntlString
|
||||
Delete: '' as IntlString,
|
||||
Disconnect: '' as IntlString,
|
||||
Add: '' as IntlString,
|
||||
LearnMore: '' as IntlString
|
||||
},
|
||||
icon: {
|
||||
Setting: '' as Asset,
|
||||
|
Loading…
Reference in New Issue
Block a user