// // Copyright © 2020, 2021 Anticrm Platform Contributors. // // 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. // import type { IntlString, Plugin, StatusCode } from '@hcengineering/platform' import { plugin } from '@hcengineering/platform' import { Mixin, type Rank, Version } from '.' import type { Account, AnyAttribute, ArrOf, AttachedDoc, Blob, BlobData, Class, Collection, Configuration, ConfigurationElement, Doc, DocIndexState, Enum, EnumOf, FullTextData, FullTextSearchContext, Hyperlink, IndexStageState, IndexingConfiguration, Interface, Markup, MigrationState, Obj, Permission, PluginConfiguration, Ref, RefTo, RelatedDocument, Role, Space, SpaceType, SpaceTypeDescriptor, Timestamp, Type, TypeAny, TypedSpace, UserStatus } from './classes' import { CollaborativeDoc } from './collaboration' import { Status, StatusCategory } from './status' import type { Tx, TxApplyIf, TxCUD, TxCollectionCUD, TxCreateDoc, TxMixin, TxModelUpgrade, TxRemoveDoc, TxUpdateDoc, TxWorkspaceEvent } from './tx' /** * @public */ export const coreId = 'core' as Plugin /** * @public */ export const systemAccountEmail = 'anticrm@hc.engineering' export default plugin(coreId, { class: { Obj: '' as Ref>, Doc: '' as Ref>, Blob: '' as Ref>, AttachedDoc: '' as Ref>, Class: '' as Ref>>, Mixin: '' as Ref>>, Interface: '' as Ref>>, Attribute: '' as Ref>, Tx: '' as Ref>, TxModelUpgrade: '' as Ref>, TxWorkspaceEvent: '' as Ref>, TxApplyIf: '' as Ref>, TxCUD: '' as Ref>>, TxCreateDoc: '' as Ref>>, TxCollectionCUD: '' as Ref>>, TxMixin: '' as Ref>>, TxUpdateDoc: '' as Ref>>, TxRemoveDoc: '' as Ref>>, Space: '' as Ref>, TypedSpace: '' as Ref>, SpaceTypeDescriptor: '' as Ref>, SpaceType: '' as Ref>, Role: '' as Ref>, Permission: '' as Ref>, Account: '' as Ref>, Type: '' as Ref>>, TypeString: '' as Ref>>, TypeAttachment: '' as Ref>>, TypeIntlString: '' as Ref>>, TypeHyperlink: '' as Ref>>, TypeNumber: '' as Ref>>, TypeMarkup: '' as Ref>>, TypeRank: '' as Ref>>, TypeRecord: '' as Ref>>>, TypeBoolean: '' as Ref>>, TypeTimestamp: '' as Ref>>, TypeDate: '' as Ref>>, TypeCollaborativeDoc: '' as Ref>>, TypeCollaborativeDocVersion: '' as Ref>>, TypeCollaborativeMarkup: '' as Ref>>, RefTo: '' as Ref>>, ArrOf: '' as Ref>>, Enum: '' as Ref>, EnumOf: '' as Ref>, Collection: '' as Ref>>, TypeAny: '' as Ref>, Version: '' as Ref>, PluginConfiguration: '' as Ref>, UserStatus: '' as Ref>, BlobData: '' as Ref>, FulltextData: '' as Ref>, TypeRelatedDocument: '' as Ref>>, DocIndexState: '' as Ref>, IndexStageState: '' as Ref>, Configuration: '' as Ref>, Status: '' as Ref>, StatusCategory: '' as Ref>, MigrationState: '' as Ref> }, mixin: { FullTextSearchContext: '' as Ref>, ConfigurationElement: '' as Ref>, IndexConfiguration: '' as Ref>> }, space: { Tx: '' as Ref, DerivedTx: '' as Ref, Model: '' as Ref, Space: '' as Ref, Configuration: '' as Ref }, account: { System: '' as Ref, ConfigUser: '' as Ref }, status: { ObjectNotFound: '' as StatusCode<{ _id: Ref }>, ItemNotFound: '' as StatusCode<{ _id: Ref, _localId: string }>, InvalidProduct: '' as StatusCode<{ productId: string }> }, version: { Model: '' as Ref }, string: { Id: '' as IntlString, Space: '' as IntlString, TypedSpace: '' as IntlString, SpaceType: '' as IntlString, Modified: '' as IntlString, ModifiedDate: '' as IntlString, ModifiedBy: '' as IntlString, Class: '' as IntlString, AttachedTo: '' as IntlString, AttachedToClass: '' as IntlString, String: '' as IntlString, Record: '' as IntlString, Markup: '' as IntlString, Collaborative: '' as IntlString, CollaborativeDoc: '' as IntlString, CollaborativeDocVersion: '' as IntlString, Number: '' as IntlString, Boolean: '' as IntlString, Timestamp: '' as IntlString, Date: '' as IntlString, IntlString: '' as IntlString, Ref: '' as IntlString, Collection: '' as IntlString, Array: '' as IntlString, Name: '' as IntlString, Enum: '' as IntlString, Description: '' as IntlString, ShortDescription: '' as IntlString, Descriptor: '' as IntlString, TargetClass: '' as IntlString, Role: '' as IntlString, Roles: '' as IntlString, Hyperlink: '' as IntlString, Private: '' as IntlString, Object: '' as IntlString, System: '' as IntlString, CreatedBy: '' as IntlString, CreatedDate: '' as IntlString, Status: '' as IntlString, Account: '' as IntlString, StatusCategory: '' as IntlString, Rank: '' as IntlString, Permission: '' as IntlString, CreateObject: '' as IntlString, UpdateObject: '' as IntlString, DeleteObject: '' as IntlString, DeleteObjectDescription: '' as IntlString, ForbidDeleteObject: '' as IntlString, ForbidDeleteObjectDescription: '' as IntlString }, permission: { CreateObject: '' as Ref, UpdateObject: '' as Ref, DeleteObject: '' as Ref, ForbidDeleteObject: '' as Ref } })