diff --git a/packages/editor-ui/src/components/CredentialsEdit.vue b/packages/editor-ui/src/components/CredentialsEdit.vue index 49e3a12acd..6d01db51ac 100644 --- a/packages/editor-ui/src/components/CredentialsEdit.vue +++ b/packages/editor-ui/src/components/CredentialsEdit.vue @@ -20,7 +20,7 @@ - Need help? Open credential docs + Need help? Open credential docs @@ -119,7 +119,11 @@ export default mixins( const credentialType = this.$store.getters.credentialType(credentialTypeName); if (credentialType.documentationUrl !== undefined) { - return `${credentialType.documentationUrl}`; + if (credentialType.documentationUrl.startsWith('http')) { + return credentialType.documentationUrl; + } else { + return 'https://docs.n8n.io/credentials/' + credentialType.documentationUrl + '/?utm_source=n8n_app&utm_medium=left_nav_menu&utm_campaign=create_new_credentials_modal'; + } } return undefined; }, diff --git a/packages/editor-ui/src/components/DataDisplay.vue b/packages/editor-ui/src/components/DataDisplay.vue index 6eb2b90ea3..58a7849e04 100644 --- a/packages/editor-ui/src/components/DataDisplay.vue +++ b/packages/editor-ui/src/components/DataDisplay.vue @@ -9,7 +9,7 @@
-
@@ -65,6 +65,13 @@ export default Vue.extend({ }; }, computed: { + documentationUrl (): string { + if (this.nodeType.documentationUrl && this.nodeType.documentationUrl.startsWith('http')) { + return this.nodeType.documentationUrl; + } + + return 'https://docs.n8n.io/nodes/' + (this.nodeType.documentationUrl || this.nodeType.name) + '?utm_source=n8n_app&utm_medium=node_settings_modal-credential_link&utm_campaign=' + this.nodeType.name; + }, node (): INodeUi { return this.$store.getters.activeNode; }, diff --git a/packages/workflow/src/Interfaces.ts b/packages/workflow/src/Interfaces.ts index c6e42e0d28..492810cf2c 100644 --- a/packages/workflow/src/Interfaces.ts +++ b/packages/workflow/src/Interfaces.ts @@ -536,6 +536,7 @@ export interface INodeTypeDescription { version: number; description: string; defaults: INodeParameters; + documentationUrl?: string; inputs: string[]; inputNames?: string[]; outputs: string[];