Merge branch 'ui/nodes'

This commit is contained in:
Tanay Pant 2021-04-12 11:37:30 +02:00
commit b7c1a5cf15
5 changed files with 379 additions and 1 deletions

View File

@ -0,0 +1,47 @@
<template>
<div class="container">
<div v-for="i in items" :key="i.name">
<a :href="`/nodes/${i.name}`" class="card-wrapper">
<div class="card" v-if="i.iconData.fileBuffer">
<div class="image-container">
<div style="width: 100%; height: 100%;">
<img :src="i.iconData.fileBuffer" style="width: 100%; height: 100%;">
</div>
</div>
<p>{{i.displayName}}</p>
</div>
</a>
</div>
</div>
</template>
<script>
export default {
props: ['items'],
}
</script>
<style scoped>
.container {
display:flex;
flex-wrap:wrap;
justify-content:center;
}
.card-wrapper {
border-radius: 4px;
text-decoration:none;
}
.card {
border-radius: 4px;
padding: .8em .6em;
margin: .6em;
text-align: center;
width: 100px;
}
.image-container {
width: 60px;
height: 60px;
line-height: 60px;
margin:auto;
}
</style>

View File

@ -1,3 +1,21 @@
# Code Nodes
# Core Nodes
This section contains information about all the core nodes in n8n. Each node documentation contains information on the available resources and operations along with an example workflow.
<!-- <NodeCard :items="items" /> -->
<div v-for="i in items" :key="i.name">
<a :href="`/nodes/${i.name}`">
<p>{{i.displayName}}</p>
</a>
</div>
<script>
import data from './core-nodes.json'
export default {
data () {
return {
items: data
}
}
}
</script>

View File

@ -0,0 +1,240 @@
[
{
"displayName":"Compression",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.compression"
},
{
"displayName":"Cron",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.cron"
},
{
"displayName":"Crypto",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.crypto"
},
{
"displayName":"Date & Time",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.datetime"
},
{
"displayName":"Edit Image",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.editimage"
},
{
"displayName":"Error Trigger",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.errortrigger"
},
{
"displayName":"Execute Command",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.executecommand"
},
{
"displayName":"Execute Workflow",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.executeworkflow"
},
{
"displayName":"Function",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.function"
},
{
"displayName":"Function Item",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.functionitem"
},
{
"displayName":"GraphQL",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.graphql"
},
{
"displayName":"HTML Extract",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.htmlextract"
},
{
"displayName":"HTTP Request",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.httprequest"
},
{
"displayName":"IF",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.if"
},
{
"displayName":"IMAP Email",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.emailreadimap"
},
{
"displayName":"Interval",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.interval"
},
{
"displayName":"Merge",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.merge"
},
{
"displayName":"Move Binary Data",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.movebinarydata"
},
{
"displayName":"No Operation, do nothing",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.noop"
},
{
"displayName":"Read Binary File",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.readbinaryfile"
},
{
"displayName":"Read Binary Files",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.readbinaryfiles"
},
{
"displayName":"Read PDF",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.readpdf"
},
{
"displayName":"Rename Keys",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.renamekeys"
},
{
"displayName":"RSS Read",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.rssfeedread"
},
{
"displayName":"Send Email",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.emailsend"
},
{
"displayName":"Set",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.set"
},
{
"displayName":"Split In Batches",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.splitinbatches"
},
{
"displayName":"Spreadsheet File",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.spreadsheetfile"
},
{
"displayName":"SSE Trigger",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.ssetrigger/"
},
{
"displayName":"Start",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.start"
},
{
"displayName":"Switch",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.switch"
},
{
"displayName":"Webhook",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.webhook"
},
{
"displayName":"Write Binary File",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.writebinaryfile"
},
{
"displayName":"XML",
"iconData":{
"fileBuffer":""
},
"name":"n8n-nodes-base.xml"
}
]

View File

@ -1,3 +1,39 @@
# Nodes
This section contains information about all the regular nodes in n8n. Each node documentation contains information on the available resources and operations along with an example workflow.
<NodeCard :items="items" />
<script>
export default {
data () {
return {
items: []
}
},
beforeMount() {
fetch('https://api.n8n.io/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
query: `
query GetRegularNodes{
nodes(where: {categories:{name_ncontains: "Core Nodes"}, displayName_ncontains:"Trigger"}, sort:"displayName"){
name
displayName
iconData
}
}
`
})
})
.then(response => response.json())
.then(res => {
this.$data.items = res.data.nodes
})
.catch(error => console.log(error))
}
}
</script>

View File

@ -1,3 +1,40 @@
# Trigger Nodes
This section contains information about all the trigger nodes in n8n. Each node documentation contains information on the available resources and operations along with an example workflow.
<NodeCard :items="items" />
<script>
export default {
data () {
return {
items: []
}
},
beforeMount() {
fetch('https://api.n8n.io/graphql', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
query: `
query GetTriggerNodes{
nodes(where: {displayName_contains:"Trigger", categories:{name_ncontains: "Core Nodes"}}, sort:"displayName"){
name
displayName
iconData
}
}
`
})
})
.then(response => response.json())
.then(res => {
this.$data.items = res.data.nodes
})
.catch(error => console.log(error))
}
}
</script>