mirror of
https://github.com/n8n-io/n8n.git
synced 2024-11-10 14:44:05 -08:00
126 lines
2.6 KiB
TypeScript
126 lines
2.6 KiB
TypeScript
|
import {
|
||
|
INodeProperties,
|
||
|
} from 'n8n-workflow';
|
||
|
|
||
|
export const textOperations = [
|
||
|
{
|
||
|
displayName: 'Text',
|
||
|
name: 'text',
|
||
|
type: 'string',
|
||
|
default: '',
|
||
|
description: 'Input text to translate.',
|
||
|
required: true,
|
||
|
typeOptions: {
|
||
|
alwaysOpenEditWindow: true,
|
||
|
},
|
||
|
displayOptions: {
|
||
|
show: {
|
||
|
operation: [
|
||
|
'translate',
|
||
|
],
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
{
|
||
|
displayName: 'Target Language',
|
||
|
name: 'translateTo',
|
||
|
type: 'options',
|
||
|
typeOptions: {
|
||
|
loadOptionsMethod: 'getLanguages',
|
||
|
},
|
||
|
default: '',
|
||
|
description: 'Language to translate to.',
|
||
|
required: true,
|
||
|
displayOptions: {
|
||
|
show: {
|
||
|
operation: [
|
||
|
'translate',
|
||
|
],
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
{
|
||
|
displayName: 'Additional Fields',
|
||
|
name: 'additionalFields',
|
||
|
type: 'collection',
|
||
|
placeholder: 'Add Field',
|
||
|
default: {},
|
||
|
options: [
|
||
|
{
|
||
|
displayName: 'Source Language',
|
||
|
name: 'sourceLang',
|
||
|
type: 'options',
|
||
|
default: '',
|
||
|
description: 'Language to translate from.',
|
||
|
typeOptions: {
|
||
|
loadOptionsMethod: 'getLanguages',
|
||
|
},
|
||
|
},
|
||
|
{
|
||
|
displayName: 'Split Sentences',
|
||
|
name: 'splitSentences',
|
||
|
type: 'options',
|
||
|
default: '1',
|
||
|
description: 'How the translation engine should split sentences.',
|
||
|
options: [
|
||
|
{
|
||
|
name: 'Interpunction Only',
|
||
|
value: 'nonewlines',
|
||
|
description: 'Split text on interpunction only, ignoring newlines.',
|
||
|
},
|
||
|
{
|
||
|
name: 'No Splitting',
|
||
|
value: '0',
|
||
|
description: 'Treat all text as a single sentence.',
|
||
|
},
|
||
|
{
|
||
|
name: 'On Punctuation and Newlines',
|
||
|
value: '1',
|
||
|
description: 'Split text on interpunction and newlines.',
|
||
|
},
|
||
|
],
|
||
|
},
|
||
|
{
|
||
|
displayName: 'Preserve Formatting',
|
||
|
name: 'preserveFormatting',
|
||
|
type: 'options',
|
||
|
default: '0',
|
||
|
description: 'Whether the translation engine should respect the original formatting, even if it would usually correct some aspects.',
|
||
|
options: [
|
||
|
{
|
||
|
name: 'Apply corrections',
|
||
|
value: '0',
|
||
|
description: 'Fix punctuation at the beginning and end of sentences and fixes lower/upper caseing at the beginning.',
|
||
|
},
|
||
|
{
|
||
|
name: 'Do not correct',
|
||
|
value: '1',
|
||
|
description: 'Keep text as similar as possible to the original.',
|
||
|
},
|
||
|
],
|
||
|
},
|
||
|
{
|
||
|
displayName: 'Formality',
|
||
|
name: 'formality',
|
||
|
type: 'options',
|
||
|
default: 'default',
|
||
|
description: 'How formal or informal the target text should be. May not be supported with all languages.',
|
||
|
options: [
|
||
|
{
|
||
|
name: 'Formal',
|
||
|
value: 'more',
|
||
|
},
|
||
|
{
|
||
|
name: 'Informal',
|
||
|
value: 'less',
|
||
|
},
|
||
|
{
|
||
|
name: 'Neutral',
|
||
|
value: 'default',
|
||
|
},
|
||
|
],
|
||
|
},
|
||
|
],
|
||
|
},
|
||
|
] as INodeProperties[];
|