mirror of
https://github.com/n8n-io/n8n.git
synced 2025-03-05 20:50:17 -08:00
feat(Ghost Node): Add support for lexical format (#7488)
This commit is contained in:
parent
450e0cc66a
commit
7b1973c058
|
@ -195,6 +195,14 @@ export class Ghost implements INodeType {
|
|||
if (contentFormat === 'html') {
|
||||
post.html = content;
|
||||
qs.source = 'html';
|
||||
} else if (contentFormat === 'lexical') {
|
||||
const lexical = validateJSON(content);
|
||||
if (lexical === undefined) {
|
||||
throw new NodeOperationError(this.getNode(), 'Content must be a valid JSON', {
|
||||
itemIndex: i,
|
||||
});
|
||||
}
|
||||
post.lexical = content;
|
||||
} else {
|
||||
const mobileDoc = validateJSON(content);
|
||||
if (mobileDoc === undefined) {
|
||||
|
@ -293,6 +301,15 @@ export class Ghost implements INodeType {
|
|||
post.html = updateFields.content || '';
|
||||
qs.source = 'html';
|
||||
delete updateFields.content;
|
||||
} else if (contentFormat === 'lexical') {
|
||||
const lexical = validateJSON((updateFields.contentJson as string) || undefined);
|
||||
if (lexical === undefined) {
|
||||
throw new NodeOperationError(this.getNode(), 'Content must be a valid JSON', {
|
||||
itemIndex: i,
|
||||
});
|
||||
}
|
||||
post.lexical = updateFields.contentJson;
|
||||
delete updateFields.contentJson;
|
||||
} else {
|
||||
const mobileDoc = validateJSON((updateFields.contentJson as string) || undefined);
|
||||
if (mobileDoc === undefined) {
|
||||
|
|
|
@ -114,6 +114,10 @@ export const postFields: INodeProperties[] = [
|
|||
name: 'Mobile Doc',
|
||||
value: 'mobileDoc',
|
||||
},
|
||||
{
|
||||
name: 'Lexical',
|
||||
value: 'lexical',
|
||||
},
|
||||
],
|
||||
default: 'html',
|
||||
description: 'The format of the post',
|
||||
|
@ -150,6 +154,22 @@ export const postFields: INodeProperties[] = [
|
|||
description:
|
||||
'Mobiledoc is the raw JSON format that Ghost uses to store post contents. <a href="https://ghost.org/docs/concepts/posts/#document-storage">Info</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Content (JSON)',
|
||||
name: 'content',
|
||||
type: 'json',
|
||||
displayOptions: {
|
||||
show: {
|
||||
source: ['adminApi'],
|
||||
resource: ['post'],
|
||||
operation: ['create'],
|
||||
contentFormat: ['lexical'],
|
||||
},
|
||||
},
|
||||
|
||||
default: '',
|
||||
description: 'Lexical is the JSON format returned by the Ghost Default editor',
|
||||
},
|
||||
{
|
||||
displayName: 'Additional Fields',
|
||||
name: 'additionalFields',
|
||||
|
@ -395,6 +415,10 @@ export const postFields: INodeProperties[] = [
|
|||
name: 'Mobile Doc',
|
||||
value: 'mobiledoc',
|
||||
},
|
||||
{
|
||||
name: 'Lexical',
|
||||
value: 'lexical',
|
||||
},
|
||||
],
|
||||
default: ['mobiledoc'],
|
||||
},
|
||||
|
@ -532,6 +556,10 @@ export const postFields: INodeProperties[] = [
|
|||
name: 'Plaintext',
|
||||
value: 'plaintext',
|
||||
},
|
||||
{
|
||||
name: 'Lexical',
|
||||
value: 'lexical',
|
||||
},
|
||||
],
|
||||
default: ['html'],
|
||||
description:
|
||||
|
@ -593,6 +621,10 @@ export const postFields: INodeProperties[] = [
|
|||
name: 'Mobile Doc',
|
||||
value: 'mobiledoc',
|
||||
},
|
||||
{
|
||||
name: 'Lexical',
|
||||
value: 'lexical',
|
||||
},
|
||||
],
|
||||
default: ['mobiledoc'],
|
||||
},
|
||||
|
@ -636,6 +668,10 @@ export const postFields: INodeProperties[] = [
|
|||
name: 'Mobile Doc',
|
||||
value: 'mobileDoc',
|
||||
},
|
||||
{
|
||||
name: 'Lexical',
|
||||
value: 'lexical',
|
||||
},
|
||||
],
|
||||
default: 'html',
|
||||
description: 'The format of the post',
|
||||
|
@ -707,6 +743,18 @@ export const postFields: INodeProperties[] = [
|
|||
description:
|
||||
'Mobiledoc is the raw JSON format that Ghost uses to store post contents. <a href="https://ghost.org/docs/concepts/posts/#document-storage">Info.</a>.',
|
||||
},
|
||||
{
|
||||
displayName: 'Content (JSON)',
|
||||
name: 'contentJson',
|
||||
type: 'json',
|
||||
displayOptions: {
|
||||
show: {
|
||||
'/contentFormat': ['lexical'],
|
||||
},
|
||||
},
|
||||
default: '',
|
||||
description: 'Lexical is the JSON format returned by the Ghost Default editor',
|
||||
},
|
||||
{
|
||||
displayName: 'Featured',
|
||||
name: 'featured',
|
||||
|
|
Loading…
Reference in a new issue