Skip to content

Commit 005cf94

Browse files
committed
fixup! fixup! feat: add initial workflow status in config
1 parent 78cc7e0 commit 005cf94

5 files changed

Lines changed: 15 additions & 6 deletions

File tree

dev-test/backends/default-workflow-status/config.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
backend:
2-
name: git-gateway
3-
branch: master
2+
name: test-repo
43

54
publish_mode: editorial_workflow
65
default_workflow_status: pending_publish

packages/netlify-cms-core/src/actions/__tests__/config.spec.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,14 @@ describe('config', () => {
131131
expect(applyDefaults(config).default_workflow_status).toEqual(Statues.DRAFT);
132132
});
133133

134+
it('should set default_workflow_status to "draft" if the given one is unknown', () => {
135+
const config = {
136+
publish_mode: 'editorial_workflow',
137+
default_workflow_status: 'unknown',
138+
};
139+
expect(applyDefaults(config).default_workflow_status).toEqual(Statues.DRAFT);
140+
});
141+
134142
it('should set default_workflow_status from config', () => {
135143
const config = {
136144
publish_mode: 'editorial_workflow',

packages/netlify-cms-core/src/actions/config.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,11 @@ export function applyDefaults(originalConfig: CmsConfig) {
215215
config.collections = config.collections || [];
216216

217217
if (config.publish_mode === EDITORIAL_WORKFLOW) {
218-
config.default_workflow_status = config.default_workflow_status || Statues.DRAFT;
218+
config.default_workflow_status =
219+
config.default_workflow_status &&
220+
Object.values(Statues).includes(config.default_workflow_status)
221+
? config.default_workflow_status
222+
: Statues.DRAFT;
219223
}
220224

221225
// Use `site_url` as default `display_url`.

packages/netlify-cms-core/src/constants/publishModes.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,3 @@ export const statusDescriptions = Map({
2020
});
2121

2222
export type Status = keyof typeof Statues;
23-
export type StatusValues = typeof Statues[Status];

packages/netlify-cms-core/src/types/redux.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import type { Action } from 'redux';
22
import type { StaticallyTypedRecord } from './immutable';
33
import type { Map, List, OrderedMap, Set } from 'immutable';
44
import type { FILES, FOLDER } from '../constants/collectionTypes';
5-
import type { StatusValues as PublishStatusValues } from '../constants/publishModes';
65
import type { MediaFile as BackendMediaFile } from '../backend';
76
import type { Auth } from '../reducers/auth';
87
import type { Status } from '../reducers/status';
@@ -401,7 +400,7 @@ export interface CmsConfig {
401400
media_folder_relative?: boolean;
402401
media_library?: CmsMediaLibrary;
403402
publish_mode?: CmsPublishMode;
404-
default_workflow_status?: PublishStatusValues;
403+
default_workflow_status?: string;
405404
load_config_file?: boolean;
406405
integrations?: {
407406
hooks: string[];

0 commit comments

Comments
 (0)