UNPKG

@craftercms/studio-ui

Version:

Services, components, models & utils to build CrafterCMS authoring extensions.

48 lines (46 loc) 1.62 kB
/* * Copyright (C) 2007-2022 Crafter Software Corporation. All Rights Reserved. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 as published by * the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program. If not, see <http://www.gnu.org/licenses/>. */ import Person from './Person'; export interface SocketEventBase { siteId: string; timestamp: number; eventType: string; targetPath?: string; user: Person | null; } export type ContentEventPayload = SocketEventBase & { targetPath: string; }; export type DeleteContentEventPayload = SocketEventBase & { targetPath: string; }; export type DeleteContentEventsPayload = Omit<SocketEventBase, 'targetPath'> & { targetPaths: string[]; }; export type MoveContentEventPayload = SocketEventBase & { targetPath: string; sourcePath: string; }; export type LockContentEventPayload = SocketEventBase & { targetPath: string; locked: boolean; }; export type PublishEventPayload = Omit<SocketEventBase, 'targetPath'>; export type RepositoryEventPayload = Omit<SocketEventBase, 'targetPath' | 'user'> & { user: null; }; export type WorkflowEventPayload = Omit<SocketEventBase, 'targetPath'>; export default SocketEventBase;