n8n-nodes-firecrawl-latest 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +19 -0
- package/README.md +232 -0
- package/dist/credentials/FirecrawlApi.credentials.js +22 -0
- package/dist/icons/flames-icon.svg +144 -0
- package/dist/nodes/Firecrawl/FireCrawlScraper.node.js +156 -0
- package/dist/nodes/Firecrawl/resources/batchScrape/batchScrape.methods.js +253 -0
- package/dist/nodes/Firecrawl/resources/batchScrape/batchScrape.properties.js +205 -0
- package/dist/nodes/Firecrawl/resources/crawler/crawler.methods.js +281 -0
- package/dist/nodes/Firecrawl/resources/crawler/crawler.properties.js +313 -0
- package/dist/nodes/Firecrawl/resources/deepResearch/deepResearch.methods.js +171 -0
- package/dist/nodes/Firecrawl/resources/deepResearch/deepResearch.properties.js +200 -0
- package/dist/nodes/Firecrawl/resources/extract/extract.methods.js +424 -0
- package/dist/nodes/Firecrawl/resources/extract/extract.properties.js +339 -0
- package/dist/nodes/Firecrawl/resources/llmsText/llmsText.methods.js +124 -0
- package/dist/nodes/Firecrawl/resources/llmsText/llmsText.properties.js +87 -0
- package/dist/nodes/Firecrawl/resources/map/map.methods.js +52 -0
- package/dist/nodes/Firecrawl/resources/map/map.properties.js +22 -0
- package/dist/nodes/Firecrawl/resources/scrape/scrape.methods.js +203 -0
- package/dist/nodes/Firecrawl/resources/scrape/scrape.properties.js +348 -0
- package/dist/nodes/HttpBin/HttpBin.node.js +59 -0
- package/dist/nodes/HttpBin/HttpVerbDescription.js +246 -0
- package/dist/nodes/HttpBin/httpbin.svg +18 -0
- package/index.js +7 -0
- package/package.json +58 -0
@@ -0,0 +1,246 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.httpVerbFields = exports.httpVerbOperations = void 0;
|
4
|
+
// When the resource `httpVerb` is selected, this `operation` parameter will be shown.
|
5
|
+
exports.httpVerbOperations = [
|
6
|
+
{
|
7
|
+
displayName: 'Operation',
|
8
|
+
name: 'operation',
|
9
|
+
type: 'options',
|
10
|
+
noDataExpression: true,
|
11
|
+
displayOptions: {
|
12
|
+
show: {
|
13
|
+
resource: ['httpVerb'],
|
14
|
+
},
|
15
|
+
},
|
16
|
+
options: [
|
17
|
+
{
|
18
|
+
name: 'GET',
|
19
|
+
value: 'get',
|
20
|
+
description: 'Perform a GET request',
|
21
|
+
routing: {
|
22
|
+
request: {
|
23
|
+
method: 'GET',
|
24
|
+
url: '/get',
|
25
|
+
},
|
26
|
+
},
|
27
|
+
action: 'Get a http verb',
|
28
|
+
},
|
29
|
+
{
|
30
|
+
name: 'DELETE',
|
31
|
+
value: 'delete',
|
32
|
+
description: 'Perform a DELETE request',
|
33
|
+
routing: {
|
34
|
+
request: {
|
35
|
+
method: 'DELETE',
|
36
|
+
url: '/delete',
|
37
|
+
},
|
38
|
+
},
|
39
|
+
action: 'Delete a http verb',
|
40
|
+
},
|
41
|
+
],
|
42
|
+
default: 'get',
|
43
|
+
},
|
44
|
+
];
|
45
|
+
// Here we define what to show when the `get` operation is selected.
|
46
|
+
// We do that by adding `operation: ["get"]` to `displayOptions.show`
|
47
|
+
const getOperation = [
|
48
|
+
{
|
49
|
+
displayName: 'Type of Data',
|
50
|
+
name: 'typeofData',
|
51
|
+
default: 'queryParameter',
|
52
|
+
description: 'Select type of data to send [Query Parameters]',
|
53
|
+
displayOptions: {
|
54
|
+
show: {
|
55
|
+
resource: ['httpVerb'],
|
56
|
+
operation: ['get'],
|
57
|
+
},
|
58
|
+
},
|
59
|
+
type: 'options',
|
60
|
+
options: [
|
61
|
+
{
|
62
|
+
name: 'Query',
|
63
|
+
value: 'queryParameter',
|
64
|
+
},
|
65
|
+
],
|
66
|
+
required: true,
|
67
|
+
},
|
68
|
+
{
|
69
|
+
displayName: 'Query Parameters',
|
70
|
+
name: 'arguments',
|
71
|
+
default: {},
|
72
|
+
description: "The request's query parameters",
|
73
|
+
displayOptions: {
|
74
|
+
show: {
|
75
|
+
resource: ['httpVerb'],
|
76
|
+
operation: ['get'],
|
77
|
+
},
|
78
|
+
},
|
79
|
+
options: [
|
80
|
+
{
|
81
|
+
name: 'keyvalue',
|
82
|
+
displayName: 'Key:Value',
|
83
|
+
values: [
|
84
|
+
{
|
85
|
+
displayName: 'Key',
|
86
|
+
name: 'key',
|
87
|
+
type: 'string',
|
88
|
+
default: '',
|
89
|
+
required: true,
|
90
|
+
description: 'Key of query parameter',
|
91
|
+
},
|
92
|
+
{
|
93
|
+
displayName: 'Value',
|
94
|
+
name: 'value',
|
95
|
+
type: 'string',
|
96
|
+
default: '',
|
97
|
+
routing: {
|
98
|
+
send: {
|
99
|
+
property: '={{$parent.key}}',
|
100
|
+
type: 'query',
|
101
|
+
},
|
102
|
+
},
|
103
|
+
required: true,
|
104
|
+
description: 'Value of query parameter',
|
105
|
+
},
|
106
|
+
],
|
107
|
+
},
|
108
|
+
],
|
109
|
+
type: 'fixedCollection',
|
110
|
+
typeOptions: {
|
111
|
+
multipleValues: true,
|
112
|
+
},
|
113
|
+
},
|
114
|
+
];
|
115
|
+
// Here we define what to show when the DELETE Operation is selected.
|
116
|
+
// We do that by adding `operation: ["delete"]` to `displayOptions.show`
|
117
|
+
const deleteOperation = [
|
118
|
+
{
|
119
|
+
displayName: 'Type of Data',
|
120
|
+
name: 'typeofData',
|
121
|
+
default: 'queryParameter',
|
122
|
+
description: 'Select type of data to send [Query Parameter Arguments, JSON-Body]',
|
123
|
+
displayOptions: {
|
124
|
+
show: {
|
125
|
+
resource: ['httpVerb'],
|
126
|
+
operation: ['delete'],
|
127
|
+
},
|
128
|
+
},
|
129
|
+
options: [
|
130
|
+
{
|
131
|
+
name: 'Query',
|
132
|
+
value: 'queryParameter',
|
133
|
+
},
|
134
|
+
{
|
135
|
+
name: 'JSON',
|
136
|
+
value: 'jsonData',
|
137
|
+
},
|
138
|
+
],
|
139
|
+
required: true,
|
140
|
+
type: 'options',
|
141
|
+
},
|
142
|
+
{
|
143
|
+
displayName: 'Query Parameters',
|
144
|
+
name: 'arguments',
|
145
|
+
default: {},
|
146
|
+
description: "The request's query parameters",
|
147
|
+
displayOptions: {
|
148
|
+
show: {
|
149
|
+
resource: ['httpVerb'],
|
150
|
+
operation: ['delete'],
|
151
|
+
typeofData: ['queryParameter'],
|
152
|
+
},
|
153
|
+
},
|
154
|
+
options: [
|
155
|
+
{
|
156
|
+
name: 'keyvalue',
|
157
|
+
displayName: 'Key:Value',
|
158
|
+
values: [
|
159
|
+
{
|
160
|
+
displayName: 'Key',
|
161
|
+
name: 'key',
|
162
|
+
type: 'string',
|
163
|
+
default: '',
|
164
|
+
required: true,
|
165
|
+
description: 'Key of query parameter',
|
166
|
+
},
|
167
|
+
{
|
168
|
+
displayName: 'Value',
|
169
|
+
name: 'value',
|
170
|
+
type: 'string',
|
171
|
+
default: '',
|
172
|
+
routing: {
|
173
|
+
send: {
|
174
|
+
property: '={{$parent.key}}',
|
175
|
+
type: 'query',
|
176
|
+
},
|
177
|
+
},
|
178
|
+
required: true,
|
179
|
+
description: 'Value of query parameter',
|
180
|
+
},
|
181
|
+
],
|
182
|
+
},
|
183
|
+
],
|
184
|
+
type: 'fixedCollection',
|
185
|
+
typeOptions: {
|
186
|
+
multipleValues: true,
|
187
|
+
},
|
188
|
+
},
|
189
|
+
{
|
190
|
+
displayName: 'JSON Object',
|
191
|
+
name: 'arguments',
|
192
|
+
default: {},
|
193
|
+
description: "The request's JSON properties",
|
194
|
+
displayOptions: {
|
195
|
+
show: {
|
196
|
+
resource: ['httpVerb'],
|
197
|
+
operation: ['delete'],
|
198
|
+
typeofData: ['jsonData'],
|
199
|
+
},
|
200
|
+
},
|
201
|
+
options: [
|
202
|
+
{
|
203
|
+
name: 'keyvalue',
|
204
|
+
displayName: 'Key:Value',
|
205
|
+
values: [
|
206
|
+
{
|
207
|
+
displayName: 'Key',
|
208
|
+
name: 'key',
|
209
|
+
type: 'string',
|
210
|
+
default: '',
|
211
|
+
required: true,
|
212
|
+
description: 'Key of JSON property',
|
213
|
+
},
|
214
|
+
{
|
215
|
+
displayName: 'Value',
|
216
|
+
name: 'value',
|
217
|
+
type: 'string',
|
218
|
+
default: '',
|
219
|
+
routing: {
|
220
|
+
send: {
|
221
|
+
property: '={{$parent.key}}',
|
222
|
+
type: 'body',
|
223
|
+
},
|
224
|
+
},
|
225
|
+
required: true,
|
226
|
+
description: 'Value of JSON property',
|
227
|
+
},
|
228
|
+
],
|
229
|
+
},
|
230
|
+
],
|
231
|
+
type: 'fixedCollection',
|
232
|
+
typeOptions: {
|
233
|
+
multipleValues: true,
|
234
|
+
},
|
235
|
+
},
|
236
|
+
];
|
237
|
+
exports.httpVerbFields = [
|
238
|
+
/* -------------------------------------------------------------------------- */
|
239
|
+
/* httpVerb:get */
|
240
|
+
/* -------------------------------------------------------------------------- */
|
241
|
+
...getOperation,
|
242
|
+
/* -------------------------------------------------------------------------- */
|
243
|
+
/* httpVerb:delete */
|
244
|
+
/* -------------------------------------------------------------------------- */
|
245
|
+
...deleteOperation,
|
246
|
+
];
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
2
|
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
3
|
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="32px" height="32px" viewBox="0 0 32 32" enable-background="new 0 0 32 32" xml:space="preserve"> <image id="image0" width="32" height="32" x="0" y="0"
|
4
|
+
href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAAABGdBTUEAALGPC/xhBQAAACBjSFJN
|
5
|
+
AAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAHdElN
|
6
|
+
RQfmBg4UAC/TqOZZAAACA0lEQVRIx5XVv09TURwF8M+jFHDSyRkGFhPAEfyRdDHi5uriXyDoYgKT
|
7
|
+
MJDWzUT/Ahf/AiOEpajEgCESmpiYmDCxGowDTYE+h76+vte+15Zzk753b7733HNO772PbEw7ECba
|
8
|
+
genswtEcgl0/PHARV72066YrIDSZ6k8KBym4741r0XsB284TdUX8chn1zrzwJUmw4KFXPqjFE0Y0
|
9
|
+
u5YKEhpmfLZuy7f2wLKGI8WhDRYdaVhurdTCidmU5P44N+skaaGQH1IfFFrOYMotT932zNgQExve
|
10
|
+
OfTeT8dtBceO3TFlOyopY7UPxV+/fWyn3Y0xrFhJjZWFXhs12pKdRO9ObGSuyB8Xbd9JjMjDc6HQ
|
11
|
+
IcrKqAiVe8vyCEJPrGBWxZYqqtZt9RbmHabAvAAVdVUlJTvWshbMt0AYn40OmlchSKOePTyYIMQn
|
12
|
+
rb8yI8TsDCrRs4od7Jv3KOoPGWKboBqp2LN3FQvdO7EPshSsRSTXrSop2cSiiUGkG/bj2JqaQiHW
|
13
|
+
4nv50mFcu28j30KQarAnEPhuzvwwGYQ975vx7+JwGXTjTIAzoYlhCArR5d0KkfauqJAVY6+FG5hD
|
14
|
+
OS6veqyCuSiTAQT/jKmlQtyxIBCoZV28HQvN6LuQvJFC4xjvibfYOZUdUXd9taTWJbOubiIVXmjG
|
15
|
+
W/fs9qpZcpr6pOe1U0udSf8BR7ef4yxyOskAAAAldEVYdGRhdGU6Y3JlYXRlADIwMjItMDYtMTRU
|
16
|
+
MTc6MDA6NDcrMDM6MDBfo1sRAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDIyLTA2LTE0VDE3OjAwOjQ3
|
17
|
+
KzAzOjAwLv7jrQAAAABJRU5ErkJggg==" />
|
18
|
+
</svg>
|
package/index.js
ADDED
package/package.json
ADDED
@@ -0,0 +1,58 @@
|
|
1
|
+
{
|
2
|
+
"name": "n8n-nodes-firecrawl-latest",
|
3
|
+
"version": "1.0.0",
|
4
|
+
"description": "Firecrawl Custom N8N Node.",
|
5
|
+
"keywords": [
|
6
|
+
"n8n-community-node-package",
|
7
|
+
"n8n",
|
8
|
+
"firecrawl",
|
9
|
+
"retrieval-qa",
|
10
|
+
"web-scraping"
|
11
|
+
],
|
12
|
+
"license": "MIT",
|
13
|
+
"homepage": "",
|
14
|
+
"author": {
|
15
|
+
"name": "FractalBanana"
|
16
|
+
},
|
17
|
+
"engines": {
|
18
|
+
"node": ">=18.10",
|
19
|
+
"pnpm": ">=9.1"
|
20
|
+
},
|
21
|
+
"packageManager": "pnpm@9.1.4",
|
22
|
+
"main": "index.js",
|
23
|
+
"scripts": {
|
24
|
+
"build": "tsc && gulp build:icons",
|
25
|
+
"dev": "tsc --watch",
|
26
|
+
"format": "prettier nodes --write",
|
27
|
+
"lint": "eslint nodes package.json",
|
28
|
+
"lintfix": "eslint nodes package.json --fix",
|
29
|
+
"prepublishOnly": "pnpm build && pnpm lint -c .eslintrc.prepublish.js nodes package.json"
|
30
|
+
},
|
31
|
+
"files": [
|
32
|
+
"dist"
|
33
|
+
],
|
34
|
+
"n8n": {
|
35
|
+
"n8nNodesApiVersion": 1,
|
36
|
+
"nodes": [
|
37
|
+
"dist/nodes/Firecrawl/FireCrawlScraper.node.js"
|
38
|
+
],
|
39
|
+
"credentials": [
|
40
|
+
"dist/credentials/FirecrawlApi.credentials.js"
|
41
|
+
]
|
42
|
+
},
|
43
|
+
"devDependencies": {
|
44
|
+
"@typescript-eslint/parser": "^7.15.0",
|
45
|
+
"eslint": "^8.56.0",
|
46
|
+
"eslint-plugin-n8n-nodes-base": "^1.16.1",
|
47
|
+
"gulp": "^4.0.2",
|
48
|
+
"n8n-workflow": "*",
|
49
|
+
"prettier": "^3.3.2",
|
50
|
+
"typescript": "^5.5.3"
|
51
|
+
},
|
52
|
+
"peerDependencies": {
|
53
|
+
"n8n-workflow": "*"
|
54
|
+
},
|
55
|
+
"dependencies": {
|
56
|
+
"@mendable/firecrawl-js": "^1.18.2"
|
57
|
+
}
|
58
|
+
}
|