// // 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, Version, type Rank } from '.' import type { Account, AnyAttribute, ArrOf, AttachedDoc, Blob, Card, Class, Collection, Configuration, ConfigurationElement, Doc, DocIndexState, DomainIndexConfiguration, Enum, EnumOf, FullTextSearchContext, Hyperlink, IndexingConfiguration, Interface, MigrationState, Obj, Permission, PluginConfiguration, Ref, RefTo, RelatedDocument, Role, Space, SpaceType, SpaceTypeDescriptor, SystemSpace, Timestamp, TransientConfiguration, 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' import type { BenchmarkDoc } from './benchmark' /** * @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>, Card: '' 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>, SystemSpace: '' 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>>, TypeBlob: '' as Ref>>>, TypeIntlString: '' as Ref>>, TypeHyperlink: '' as Ref>>, TypeNumber: '' as Ref>>, TypeFileSize: '' 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>>, 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>, TypeRelatedDocument: '' as Ref>>, DocIndexState: '' as Ref>, DomainIndexConfiguration: '' as Ref>, Configuration: '' as Ref>, Status: '' as Ref>, StatusCategory: '' as Ref>, MigrationState: '' as Ref>, BenchmarkDoc: '' as Ref>, FullTextSearchContext: '' as Ref> }, mixin: { ConfigurationElement: '' as Ref>, IndexConfiguration: '' as Ref>>, SpacesTypeData: '' as Ref>, TransientConfiguration: '' as Ref> }, space: { Tx: '' as Ref, DerivedTx: '' as Ref, Model: '' as Ref, Space: '' as Ref, Configuration: '' as Ref, Workspace: '' as Ref }, account: { System: '' as Ref, ConfigUser: '' as Ref }, status: { ObjectNotFound: '' as StatusCode<{ _id: Ref }>, ItemNotFound: '' as StatusCode<{ _id: Ref, _localId: string }> }, version: { Model: '' as Ref }, string: { Id: '' as IntlString, Space: '' as IntlString, Spaces: '' as IntlString, SpacesDescription: '' 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, Size: '' 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, Members: '' as IntlString, Owners: '' as IntlString, Permission: '' as IntlString, CreateObject: '' as IntlString, UpdateObject: '' as IntlString, DeleteObject: '' as IntlString, ForbidDeleteObject: '' as IntlString, UpdateSpace: '' as IntlString, ArchiveSpace: '' as IntlString, CreateObjectDescription: '' as IntlString, UpdateObjectDescription: '' as IntlString, DeleteObjectDescription: '' as IntlString, ForbidDeleteObjectDescription: '' as IntlString, UpdateSpaceDescription: '' as IntlString, ArchiveSpaceDescription: '' as IntlString, AutoJoin: '' as IntlString, AutoJoinDescr: '' as IntlString }, descriptor: { SpacesType: '' as Ref }, spaceType: { SpacesType: '' as Ref }, permission: { CreateObject: '' as Ref, UpdateObject: '' as Ref, DeleteObject: '' as Ref, ForbidDeleteObject: '' as Ref, UpdateSpace: '' as Ref, ArchiveSpace: '' as Ref }, role: { Admin: '' as Ref } })