diff --git a/models/controlled-documents/src/index.ts b/models/controlled-documents/src/index.ts index 0885da5aee..1b15efadc0 100644 --- a/models/controlled-documents/src/index.ts +++ b/models/controlled-documents/src/index.ts @@ -13,60 +13,60 @@ // limitations under the License. // -import documentsPlugin, { - documentsId, - type Document, - type DocumentSpace, - DocumentState -} from '@hcengineering/controlled-documents' import activity from '@hcengineering/activity' import contact from '@hcengineering/contact' +import documentsPlugin, { + documentsId, + DocumentState, + type Document, + type DocumentSpace +} from '@hcengineering/controlled-documents' import { type Builder } from '@hcengineering/model' import chunter from '@hcengineering/model-chunter' import core from '@hcengineering/model-core' +import { generateClassNotificationTypes } from '@hcengineering/model-notification' +import presentation from '@hcengineering/model-presentation' +import print from '@hcengineering/model-print' import request from '@hcengineering/model-request' import tracker from '@hcengineering/model-tracker' -import { generateClassNotificationTypes } from '@hcengineering/model-notification' import view, { classPresenter, createAction } from '@hcengineering/model-view' -import presentation from '@hcengineering/model-presentation' import workbench from '@hcengineering/model-workbench' import notification from '@hcengineering/notification' import setting from '@hcengineering/setting' import tags from '@hcengineering/tags' -import print from '@hcengineering/model-print' import textEditor from '@hcengineering/text-editor' -import documents from './plugin' +import { type Class, type Doc, type Ref } from '@hcengineering/core' +import { type Action } from '@hcengineering/view' import { definePermissions } from './permissions' +import documents from './plugin' +import { defineSpaceType } from './spaceType' import { + TChangeControl, + TControlledDocument, + TControlledDocumentSnapshot, + TDocument, + TDocumentApprovalRequest, + TDocumentCategory, + TDocumentComment, + TDocumentMeta, + TDocumentRequest, + TDocumentReviewRequest, + TDocumentSnapshot, TDocumentSpace, TDocumentSpaceType, TDocumentSpaceTypeDescriptor, - TExternalSpace, - TOrgSpace, - TDocumentMeta, - TProjectDocument, - TProjectMeta, - TProject, - TDocument, - TDocumentSnapshot, - TControlledDocumentSnapshot, - THierarchyDocument, TDocumentTemplate, TDocumentTraining, - TDocumentCategory, - TControlledDocument, - TChangeControl, - TDocumentRequest, - TDocumentReviewRequest, - TDocumentApprovalRequest, - TTypeDocumentState, + TExternalSpace, + THierarchyDocument, + TOrgSpace, + TProject, + TProjectDocument, + TProjectMeta, TTypeControlledDocumentState, - TDocumentComment + TTypeDocumentState } from './types' -import { defineSpaceType } from './spaceType' -import { type Class, type Doc, type Ref } from '@hcengineering/core' -import { type Action } from '@hcengineering/view' export { documentsId } from '@hcengineering/controlled-documents/src/index' export * from './types' @@ -105,6 +105,10 @@ export function createModel (builder: Builder): void { titleProvider: documents.function.ControlledDocumentTitleProvider }) + builder.mixin(documents.class.DocumentMeta, core.class.Class, view.mixin.ObjectTitle, { + titleProvider: documents.function.ControlledDocumentTitleProvider + }) + builder.mixin(documents.class.DocumentApprovalRequest, core.class.Class, view.mixin.ObjectPresenter, { presenter: documents.component.DocumentApprovalRequestPresenter }) diff --git a/models/recruit/src/index.ts b/models/recruit/src/index.ts index e3ff94ae82..a80c9bac20 100644 --- a/models/recruit/src/index.ts +++ b/models/recruit/src/index.ts @@ -594,6 +594,13 @@ export function createModel (builder: Builder): void { key: 'status', props: { kind: 'list', size: 'small', shouldShowName: false } }, + { + key: 'kind', + label: task.string.TaskType, + presenter: task.component.TaskTypeListPresenter, + props: { kind: 'list', size: 'small', justify: 'center' }, + displayProps: { key: 'applicant_kind' } + }, { key: '$lookup.attachedTo', presenter: contact.component.PersonPresenter, diff --git a/models/task/src/index.ts b/models/task/src/index.ts index 7f7e2e40f7..5ef7c5f540 100644 --- a/models/task/src/index.ts +++ b/models/task/src/index.ts @@ -513,11 +513,6 @@ export function createModel (builder: Builder): void { id: 'automations', label: setting.string.Automations, component: task.component.ProjectTypeAutomationsSectionEditor - }, - { - id: 'collections', - label: setting.string.Collections, - component: task.component.ProjectTypeCollectionsSectionEditor } ], subEditors: { diff --git a/models/task/src/plugin.ts b/models/task/src/plugin.ts index 3e6d880bdc..4e828ee4e4 100644 --- a/models/task/src/plugin.ts +++ b/models/task/src/plugin.ts @@ -55,6 +55,7 @@ export default mergeIds(taskId, task, { TypesView: '' as AnyComponent, StateIconPresenter: '' as AnyComponent, TaskTypePresenter: '' as AnyComponent, + TaskTypeListPresenter: '' as AnyComponent, ProjectTypePresenter: '' as AnyComponent, TaskTypeClassPresenter: '' as AnyComponent, ProjectTypeClassPresenter: '' as AnyComponent diff --git a/models/tracker/src/index.ts b/models/tracker/src/index.ts index 7a52ae250f..e8f1d4f6ab 100644 --- a/models/tracker/src/index.ts +++ b/models/tracker/src/index.ts @@ -741,7 +741,8 @@ function defineSpaceType (builder: Builder): void { description: tracker.string.Issue, icon: tracker.icon.Issue, name: tracker.string.Issue, - statusCategoriesFunc: tracker.function.GetIssueStatusCategories + statusCategoriesFunc: tracker.function.GetIssueStatusCategories, + openTasks: tracker.function.OpenIssuesOfTaskType }, tracker.descriptors.Issue ) diff --git a/models/tracker/src/viewlets.ts b/models/tracker/src/viewlets.ts index 993b34324c..e456a211c0 100644 --- a/models/tracker/src/viewlets.ts +++ b/models/tracker/src/viewlets.ts @@ -105,13 +105,13 @@ export function issueConfig ( props: { kind: 'list', size: 'small', justify: 'center' }, displayProps: { key: key + 'status' } }, - // { - // key: 'kind', - // label: task.string.TaskType, - // presenter: task.component.TaskTypePresenter, - // props: { kind: 'list', size: 'small', justify: 'center' }, - // displayProps: { key: key + 'kind' } - // }, + { + key: 'kind', + label: task.string.TaskType, + presenter: task.component.TaskTypeListPresenter, + props: { kind: 'list', size: 'small', justify: 'center' }, + displayProps: { key: key + 'kind' } + }, { key: '', label: tracker.string.Title, diff --git a/packages/text/src/markup/__tests__/dsl.test.ts b/packages/text/src/markup/__tests__/dsl.test.ts index 2458a48b36..69762fa291 100644 --- a/packages/text/src/markup/__tests__/dsl.test.ts +++ b/packages/text/src/markup/__tests__/dsl.test.ts @@ -21,7 +21,7 @@ describe('dsl', () => { ) ) expect(jsonToHTML(doc)).toEqual( - '
Hello, @World
Check out this link.
' + 'Hello, @World
Check out this link.
' ) }) }) diff --git a/packages/text/src/nodes/reference.ts b/packages/text/src/nodes/reference.ts index 6e75cfcffc..c333371095 100644 --- a/packages/text/src/nodes/reference.ts +++ b/packages/text/src/nodes/reference.ts @@ -15,10 +15,18 @@ import { Node, mergeAttributes } from '@tiptap/core' import { getDataAttribute } from './utils' +import { Class, Doc, Ref } from '@hcengineering/core' + +export interface ReferenceNodeProps { + id: Ref