UNPKG

@craftercms/studio-ui

Version:

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

76 lines (74 loc) 2.14 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 LookupTable from './LookupTable'; export type PublishingTargets = 'live' | 'staging'; export interface Package { id: string; siteId: string; schedule: string; approver: string; state: string; environment: string; comment: string; } export type Selected = LookupTable<boolean>; export interface File { contentTypeClass: string; mimeType: string; path: string; } export interface CurrentFilters { environment: string; path: string; state: Array<string>; limit: number; page: number; } export interface PublishingStatus { enabled: boolean; status: 'ready' | 'processing' | 'publishing' | 'queued' | 'stopped' | 'error' | 'readyWithErrors'; lockOwner: string; lockTTL: string; published: boolean; publishingTarget: string; submissionId: string; numberOfItems: number; totalItems: number; } export interface PublishFormData { path?: string; commitIds?: string; comment: string; publishingTarget: string; } export type PublishOnDemandMode = 'studio' | 'git' | 'everything'; export interface PublishingTarget { name: string; order: number; } export interface PublishingParams { items: string[]; publishingTarget: string; optionalDependencies?: string[]; schedule?: string; comment?: string; sendEmailNotifications?: boolean; } export interface PublishingStats { numberOfPublishes: number; numberOfNewAndPublishedItems: number; numberOfEditedAndPublishedItems: number; }