n8n-nodes-apivault-woocommerce-analyzer 0.1.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 ADDED
@@ -0,0 +1,5 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Apivault
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction... THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.
package/README.md ADDED
@@ -0,0 +1,14 @@
1
+ # n8n-nodes-apivault-woocommerce-analyzer
2
+
3
+ n8n community node for **WooCommerce Store Analyzer**.
4
+
5
+ Spy on any WooCommerce store: traffic, estimated revenue, brand age, 70+ plugins detected, tech stack, tracking IDs (GTM/GA4/FB Pixel), dropshipper risk score, international expansion, customer segment, marketing channel mix. 8 public data sources combined. Pay-per-use $10/1K.
6
+
7
+ ## Install
8
+ n8n: Settings → Community Nodes → Install → `n8n-nodes-apivault-woocommerce-analyzer`
9
+
10
+ ## Credential
11
+ Add an **Apify API** credential with your Apify token (Apify Console → Settings → Integrations). Free account includes monthly credits.
12
+
13
+ ---
14
+ Backed by the Apify Actor [`apivault_labs/woocommerce-store-analyzer`](https://apify.com/apivault_labs/woocommerce-store-analyzer).
@@ -0,0 +1,9 @@
1
+ import type { IAuthenticateGeneric, ICredentialTestRequest, ICredentialType, INodeProperties } from 'n8n-workflow';
2
+ export declare class ApifyApi implements ICredentialType {
3
+ name: string;
4
+ displayName: string;
5
+ documentationUrl: string;
6
+ properties: INodeProperties[];
7
+ authenticate: IAuthenticateGeneric;
8
+ test: ICredentialTestRequest;
9
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ApifyApi = void 0;
4
+ class ApifyApi {
5
+ constructor() {
6
+ this.name = 'apifyApi';
7
+ this.displayName = 'Apify API';
8
+ this.documentationUrl = 'https://docs.apify.com/platform/integrations/api';
9
+ this.properties = [
10
+ {
11
+ displayName: 'API Token',
12
+ name: 'apiToken',
13
+ type: 'string',
14
+ typeOptions: { password: true },
15
+ default: '',
16
+ required: true,
17
+ description: 'Your personal Apify API token (Apify Console -> Settings -> Integrations).',
18
+ },
19
+ ];
20
+ this.authenticate = {
21
+ type: 'generic',
22
+ properties: { headers: { Authorization: '=Bearer {{$credentials.apiToken}}' } },
23
+ };
24
+ this.test = { request: { baseURL: 'https://api.apify.com/v2', url: '/users/me' } };
25
+ }
26
+ }
27
+ exports.ApifyApi = ApifyApi;
28
+ //# sourceMappingURL=ApifyApi.credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApifyApi.credentials.js","sourceRoot":"","sources":["../../credentials/ApifyApi.credentials.ts"],"names":[],"mappings":";;;AAOA,MAAa,QAAQ;IAArB;QACC,SAAI,GAAG,UAAU,CAAC;QAClB,gBAAW,GAAG,WAAW,CAAC;QAC1B,qBAAgB,GAAG,kDAAkD,CAAC;QACtE,eAAU,GAAsB;YAC/B;gBACC,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC/B,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,4EAA4E;aACzF;SACD,CAAC;QACF,iBAAY,GAAyB;YACpC,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,mCAAmC,EAAE,EAAE;SAC/E,CAAC;QACF,SAAI,GAA2B,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,0BAA0B,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC;IACvG,CAAC;CAAA;AApBD,4BAoBC"}
@@ -0,0 +1,5 @@
1
+ import type { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class WoocommerceAnalyzer implements INodeType {
3
+ description: INodeTypeDescription;
4
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
5
+ }
@@ -0,0 +1,291 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WoocommerceAnalyzer = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const ACTOR_ID = 'apivault_labs~woocommerce-store-analyzer';
6
+ class WoocommerceAnalyzer {
7
+ constructor() {
8
+ this.description = {
9
+ displayName: 'WooCommerce Store Analyzer',
10
+ name: 'woocommerceAnalyzer',
11
+ icon: 'file:woocommerceanalyzer.svg',
12
+ group: ['transform'],
13
+ version: 1,
14
+ description: 'Spy on any WooCommerce store: traffic, estimated revenue, brand age, 70+ plugins detected, tech stack, tracking IDs (GTM/GA4/FB Pixel), dropshipper risk score, international expansion, customer segment, marketing channel mix. 8 public data sources combined. Pay-per-use $10/1K.',
15
+ defaults: { name: 'WooCommerce Store Analyzer' },
16
+ inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
17
+ outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
18
+ usableAsTool: true,
19
+ credentials: [{ name: 'apifyApi', required: true }],
20
+ properties: [
21
+ {
22
+ "displayName": "WooCommerce Store URLs",
23
+ "name": "storeUrls",
24
+ "description": "Store homepages. Bare domains or full URLs. (comma or new-line separated)",
25
+ "type": "string",
26
+ "default": "",
27
+ "required": true
28
+ },
29
+ {
30
+ "displayName": "Conversion rate for revenue estimate (%)",
31
+ "name": "conversionRate",
32
+ "description": "WooCommerce industry average is 1.5-2%. Fashion 1-1.5%, electronics 0.8-1%, high-intent niches 2-3%.",
33
+ "type": "number",
34
+ "default": 1.8,
35
+ "typeOptions": {
36
+ "minValue": 0.1,
37
+ "maxValue": 10.0
38
+ }
39
+ },
40
+ {
41
+ "displayName": "Product sample size",
42
+ "name": "productSampleSize",
43
+ "description": "How many products to sample (0 = full catalog).",
44
+ "type": "number",
45
+ "default": 200,
46
+ "typeOptions": {
47
+ "minValue": 10,
48
+ "maxValue": 5000
49
+ }
50
+ },
51
+ {
52
+ "displayName": "Products & AOV",
53
+ "name": "extractProducts",
54
+ "description": "Product count, AOV, price range, currency, in/out-of-stock counts, avg images per product.",
55
+ "type": "boolean",
56
+ "default": true
57
+ },
58
+ {
59
+ "displayName": "Product velocity",
60
+ "name": "extractVelocity",
61
+ "description": "New products in last 7/30/90 days, on-sale %, avg discount %.",
62
+ "type": "boolean",
63
+ "default": true
64
+ },
65
+ {
66
+ "displayName": "Categories",
67
+ "name": "extractCategories",
68
+ "description": "Category count and top categories by product count.",
69
+ "type": "boolean",
70
+ "default": true
71
+ },
72
+ {
73
+ "displayName": "Sitemap counts",
74
+ "name": "extractSitemap",
75
+ "description": "Real total products/pages/posts/categories from sitemap.xml.",
76
+ "type": "boolean",
77
+ "default": true
78
+ },
79
+ {
80
+ "displayName": "Traffic (SimilarWeb)",
81
+ "name": "extractTraffic",
82
+ "description": "Monthly visits, ranks, bounce rate, traffic sources, top countries, keywords.",
83
+ "type": "boolean",
84
+ "default": true
85
+ },
86
+ {
87
+ "displayName": "Revenue estimate",
88
+ "name": "extractRevenueEstimate",
89
+ "description": "Monthly orders + revenue + annualized estimate. Requires extractTraffic.",
90
+ "type": "boolean",
91
+ "default": true
92
+ },
93
+ {
94
+ "displayName": "Tech stack & tracking IDs",
95
+ "name": "extractTechStack",
96
+ "description": "Detect 70+ WP/WC plugins (Elementor, Klaviyo, Stripe, Yoast) plus extract tracking IDs (GTM, GA4, FB Pixel, Klaviyo, Hotjar) for brand-network mapping.",
97
+ "type": "boolean",
98
+ "default": true
99
+ },
100
+ {
101
+ "displayName": "WP plugins from HTML",
102
+ "name": "extractPlugins",
103
+ "description": "List of plugin slugs detected from /wp-content/plugins/<slug>/ paths.",
104
+ "type": "boolean",
105
+ "default": true
106
+ },
107
+ {
108
+ "displayName": "WP REST namespaces",
109
+ "name": "extractWpNamespaces",
110
+ "description": "Active plugins via /wp-json/ namespaces (more reliable than HTML scanning).",
111
+ "type": "boolean",
112
+ "default": true
113
+ },
114
+ {
115
+ "displayName": "Social links",
116
+ "name": "extractSocials",
117
+ "description": "Instagram, Facebook, Twitter/X, TikTok, YouTube, Pinterest, LinkedIn URLs.",
118
+ "type": "boolean",
119
+ "default": true
120
+ },
121
+ {
122
+ "displayName": "Contact info",
123
+ "name": "extractContact",
124
+ "description": "Public emails and phones from homepage / footer.",
125
+ "type": "boolean",
126
+ "default": true
127
+ },
128
+ {
129
+ "displayName": "WP / WC meta",
130
+ "name": "extractWpMeta",
131
+ "description": "WordPress version, WooCommerce version, theme, currency, OpenGraph meta.",
132
+ "type": "boolean",
133
+ "default": true
134
+ },
135
+ {
136
+ "displayName": "International expansion",
137
+ "name": "extractInternational",
138
+ "description": "hreflang languages, currency switcher, country selector, expansion score 0-100.",
139
+ "type": "boolean",
140
+ "default": true
141
+ },
142
+ {
143
+ "displayName": "Brand age",
144
+ "name": "extractBrandAge",
145
+ "description": "Earliest Wayback snapshot + earliest SSL cert -> brand age in years and founding year.",
146
+ "type": "boolean",
147
+ "default": true
148
+ },
149
+ {
150
+ "displayName": "Derived signals",
151
+ "name": "extractDerivedSignals",
152
+ "description": "Customer segment, marketing channel mix, tech_quality_score, dropshipper_risk_score, security_posture_score, enterprise_readiness_score, growth_velocity_score, lead_score.",
153
+ "type": "boolean",
154
+ "default": true
155
+ },
156
+ {
157
+ "displayName": "Catalog aggregate (collection-data)",
158
+ "name": "extractCollectionData",
159
+ "description": "One-shot stats from /products/collection-data: catalog price range, stock status counts, rating counts, attribute term counts.",
160
+ "type": "boolean",
161
+ "default": true
162
+ },
163
+ {
164
+ "displayName": "Authors / admins enumeration",
165
+ "name": "extractAuthors",
166
+ "description": "List of public authors via /wp-json/wp/v2/users — names, slugs, descriptions, profile URLs. Critical for B2B lead-gen and OSINT.",
167
+ "type": "boolean",
168
+ "default": true
169
+ },
170
+ {
171
+ "displayName": "Blog content velocity",
172
+ "name": "extractBlog",
173
+ "description": "Recent posts via /wp-json/wp/v2/posts — counts in last 30/90 days, latest post date, days_since_last_post.",
174
+ "type": "boolean",
175
+ "default": true
176
+ },
177
+ {
178
+ "displayName": "robots.txt analysis",
179
+ "name": "extractRobots",
180
+ "description": "Detect AI crawler blocks (GPTBot, ClaudeBot, etc.), additional sitemaps, disallowed path count.",
181
+ "type": "boolean",
182
+ "default": true
183
+ },
184
+ {
185
+ "displayName": "Security headers",
186
+ "name": "extractSecurityHeaders",
187
+ "description": "HSTS, CSP, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy. Plus CDN detection (Cloudflare, Fastly, Akamai, Vercel).",
188
+ "type": "boolean",
189
+ "default": true
190
+ },
191
+ {
192
+ "displayName": "DNS / hosting / email",
193
+ "name": "extractDns",
194
+ "description": "A records (hosting provider hint: AWS / Google / Cloudflare / Vercel) and MX records (email provider: Google Workspace / Microsoft 365 / Zoho).",
195
+ "type": "boolean",
196
+ "default": true
197
+ },
198
+ {
199
+ "displayName": "Schema.org JSON-LD",
200
+ "name": "extractSchemaOrg",
201
+ "description": "Organization name, founding date, employee count, founders, sitewide aggregateRating from JSON-LD blocks.",
202
+ "type": "boolean",
203
+ "default": true
204
+ },
205
+ {
206
+ "displayName": "Max Concurrency",
207
+ "name": "maxConcurrency",
208
+ "description": "Parallel stores to analyze.",
209
+ "type": "number",
210
+ "default": 3,
211
+ "typeOptions": {
212
+ "minValue": 1,
213
+ "maxValue": 10
214
+ }
215
+ },
216
+ {
217
+ "displayName": "Timeout (seconds)",
218
+ "name": "timeout",
219
+ "description": "HTTP timeout per request.",
220
+ "type": "number",
221
+ "default": 30,
222
+ "typeOptions": {
223
+ "minValue": 10,
224
+ "maxValue": 180
225
+ }
226
+ }
227
+ ],
228
+ };
229
+ }
230
+ async execute() {
231
+ const items = this.getInputData();
232
+ const returnData = [];
233
+ for (let i = 0; i < items.length; i++) {
234
+ try {
235
+ const body = {};
236
+ {
237
+ const _v = this.getNodeParameter("storeUrls", i, '');
238
+ const _a = _v.split(/[,\n]/).map(s => s.trim()).filter(s => s.length > 0);
239
+ if (_a.length)
240
+ body["storeUrls"] = _a;
241
+ }
242
+ body["conversionRate"] = this.getNodeParameter("conversionRate", i);
243
+ body["productSampleSize"] = this.getNodeParameter("productSampleSize", i);
244
+ body["extractProducts"] = this.getNodeParameter("extractProducts", i);
245
+ body["extractVelocity"] = this.getNodeParameter("extractVelocity", i);
246
+ body["extractCategories"] = this.getNodeParameter("extractCategories", i);
247
+ body["extractSitemap"] = this.getNodeParameter("extractSitemap", i);
248
+ body["extractTraffic"] = this.getNodeParameter("extractTraffic", i);
249
+ body["extractRevenueEstimate"] = this.getNodeParameter("extractRevenueEstimate", i);
250
+ body["extractTechStack"] = this.getNodeParameter("extractTechStack", i);
251
+ body["extractPlugins"] = this.getNodeParameter("extractPlugins", i);
252
+ body["extractWpNamespaces"] = this.getNodeParameter("extractWpNamespaces", i);
253
+ body["extractSocials"] = this.getNodeParameter("extractSocials", i);
254
+ body["extractContact"] = this.getNodeParameter("extractContact", i);
255
+ body["extractWpMeta"] = this.getNodeParameter("extractWpMeta", i);
256
+ body["extractInternational"] = this.getNodeParameter("extractInternational", i);
257
+ body["extractBrandAge"] = this.getNodeParameter("extractBrandAge", i);
258
+ body["extractDerivedSignals"] = this.getNodeParameter("extractDerivedSignals", i);
259
+ body["extractCollectionData"] = this.getNodeParameter("extractCollectionData", i);
260
+ body["extractAuthors"] = this.getNodeParameter("extractAuthors", i);
261
+ body["extractBlog"] = this.getNodeParameter("extractBlog", i);
262
+ body["extractRobots"] = this.getNodeParameter("extractRobots", i);
263
+ body["extractSecurityHeaders"] = this.getNodeParameter("extractSecurityHeaders", i);
264
+ body["extractDns"] = this.getNodeParameter("extractDns", i);
265
+ body["extractSchemaOrg"] = this.getNodeParameter("extractSchemaOrg", i);
266
+ body["maxConcurrency"] = this.getNodeParameter("maxConcurrency", i);
267
+ body["timeout"] = this.getNodeParameter("timeout", i);
268
+ const options = {
269
+ method: 'POST',
270
+ url: `https://api.apify.com/v2/acts/${ACTOR_ID}/run-sync-get-dataset-items`,
271
+ body,
272
+ json: true,
273
+ };
274
+ const response = await this.helpers.requestWithAuthentication.call(this, 'apifyApi', options);
275
+ const results = Array.isArray(response) ? response : [response];
276
+ for (const result of results)
277
+ returnData.push({ json: result, pairedItem: { item: i } });
278
+ }
279
+ catch (error) {
280
+ if (this.continueOnFail()) {
281
+ returnData.push({ json: { error: error.message }, pairedItem: { item: i } });
282
+ continue;
283
+ }
284
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), error, { itemIndex: i });
285
+ }
286
+ }
287
+ return [returnData];
288
+ }
289
+ }
290
+ exports.WoocommerceAnalyzer = WoocommerceAnalyzer;
291
+ //# sourceMappingURL=WoocommerceAnalyzer.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WoocommerceAnalyzer.node.js","sourceRoot":"","sources":["../../../nodes/WoocommerceAnalyzer/WoocommerceAnalyzer.node.ts"],"names":[],"mappings":";;;AAQA,+CAAuE;AAEvE,MAAM,QAAQ,GAAG,0CAA0C,CAAC;AAE5D,MAAa,mBAAmB;IAAhC;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,4BAA4B;YACzC,IAAI,EAAE,qBAAqB;YAC3B,IAAI,EAAE,8BAA8B;YACpC,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,uRAAuR;YACpS,QAAQ,EAAE,EAAE,IAAI,EAAE,4BAA4B,EAAE;YAChD,MAAM,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YACnC,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YACnD,UAAU,EAAE;gBACX;oBACG,aAAa,EAAE,wBAAwB;oBACvC,MAAM,EAAE,WAAW;oBACnB,aAAa,EAAE,2EAA2E;oBAC1F,MAAM,EAAE,QAAQ;oBAChB,SAAS,EAAE,EAAE;oBACb,UAAU,EAAE,IAAI;iBAClB;gBACD;oBACG,aAAa,EAAE,0CAA0C;oBACzD,MAAM,EAAE,gBAAgB;oBACxB,aAAa,EAAE,sGAAsG;oBACrH,MAAM,EAAE,QAAQ;oBAChB,SAAS,EAAE,GAAG;oBACd,aAAa,EAAE;wBACZ,UAAU,EAAE,GAAG;wBACf,UAAU,EAAE,IAAI;qBAClB;iBACH;gBACD;oBACG,aAAa,EAAE,qBAAqB;oBACpC,MAAM,EAAE,mBAAmB;oBAC3B,aAAa,EAAE,iDAAiD;oBAChE,MAAM,EAAE,QAAQ;oBAChB,SAAS,EAAE,GAAG;oBACd,aAAa,EAAE;wBACZ,UAAU,EAAE,EAAE;wBACd,UAAU,EAAE,IAAI;qBAClB;iBACH;gBACD;oBACG,aAAa,EAAE,gBAAgB;oBAC/B,MAAM,EAAE,iBAAiB;oBACzB,aAAa,EAAE,4FAA4F;oBAC3G,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,kBAAkB;oBACjC,MAAM,EAAE,iBAAiB;oBACzB,aAAa,EAAE,+DAA+D;oBAC9E,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,YAAY;oBAC3B,MAAM,EAAE,mBAAmB;oBAC3B,aAAa,EAAE,qDAAqD;oBACpE,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,gBAAgB;oBAC/B,MAAM,EAAE,gBAAgB;oBACxB,aAAa,EAAE,8DAA8D;oBAC7E,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,sBAAsB;oBACrC,MAAM,EAAE,gBAAgB;oBACxB,aAAa,EAAE,+EAA+E;oBAC9F,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,kBAAkB;oBACjC,MAAM,EAAE,wBAAwB;oBAChC,aAAa,EAAE,0EAA0E;oBACzF,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,2BAA2B;oBAC1C,MAAM,EAAE,kBAAkB;oBAC1B,aAAa,EAAE,yJAAyJ;oBACxK,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,sBAAsB;oBACrC,MAAM,EAAE,gBAAgB;oBACxB,aAAa,EAAE,uEAAuE;oBACtF,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,oBAAoB;oBACnC,MAAM,EAAE,qBAAqB;oBAC7B,aAAa,EAAE,6EAA6E;oBAC5F,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,cAAc;oBAC7B,MAAM,EAAE,gBAAgB;oBACxB,aAAa,EAAE,4EAA4E;oBAC3F,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,cAAc;oBAC7B,MAAM,EAAE,gBAAgB;oBACxB,aAAa,EAAE,kDAAkD;oBACjE,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,cAAc;oBAC7B,MAAM,EAAE,eAAe;oBACvB,aAAa,EAAE,0EAA0E;oBACzF,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,yBAAyB;oBACxC,MAAM,EAAE,sBAAsB;oBAC9B,aAAa,EAAE,iFAAiF;oBAChG,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,WAAW;oBAC1B,MAAM,EAAE,iBAAiB;oBACzB,aAAa,EAAE,wFAAwF;oBACvG,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,iBAAiB;oBAChC,MAAM,EAAE,uBAAuB;oBAC/B,aAAa,EAAE,6KAA6K;oBAC5L,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,qCAAqC;oBACpD,MAAM,EAAE,uBAAuB;oBAC/B,aAAa,EAAE,gIAAgI;oBAC/I,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,8BAA8B;oBAC7C,MAAM,EAAE,gBAAgB;oBACxB,aAAa,EAAE,kIAAkI;oBACjJ,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,uBAAuB;oBACtC,MAAM,EAAE,aAAa;oBACrB,aAAa,EAAE,4GAA4G;oBAC3H,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,qBAAqB;oBACpC,MAAM,EAAE,eAAe;oBACvB,aAAa,EAAE,iGAAiG;oBAChH,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,kBAAkB;oBACjC,MAAM,EAAE,wBAAwB;oBAChC,aAAa,EAAE,mJAAmJ;oBAClK,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,uBAAuB;oBACtC,MAAM,EAAE,YAAY;oBACpB,aAAa,EAAE,iJAAiJ;oBAChK,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,oBAAoB;oBACnC,MAAM,EAAE,kBAAkB;oBAC1B,aAAa,EAAE,2GAA2G;oBAC1H,MAAM,EAAE,SAAS;oBACjB,SAAS,EAAE,IAAI;iBACjB;gBACD;oBACG,aAAa,EAAE,iBAAiB;oBAChC,MAAM,EAAE,gBAAgB;oBACxB,aAAa,EAAE,6BAA6B;oBAC5C,MAAM,EAAE,QAAQ;oBAChB,SAAS,EAAE,CAAC;oBACZ,aAAa,EAAE;wBACZ,UAAU,EAAE,CAAC;wBACb,UAAU,EAAE,EAAE;qBAChB;iBACH;gBACD;oBACG,aAAa,EAAE,mBAAmB;oBAClC,MAAM,EAAE,SAAS;oBACjB,aAAa,EAAE,2BAA2B;oBAC1C,MAAM,EAAE,QAAQ;oBAChB,SAAS,EAAE,EAAE;oBACb,aAAa,EAAE;wBACZ,UAAU,EAAE,EAAE;wBACd,UAAU,EAAE,GAAG;qBACjB;iBACH;aACH;SACC,CAAC;IAsDH,CAAC;IApDA,KAAK,CAAC,OAAO;QACZ,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClC,MAAM,UAAU,GAAyB,EAAE,CAAC;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC;gBACJ,MAAM,IAAI,GAA4B,EAAE,CAAC;gBACzC,CAAC;oBAAC,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAW,CAAC;oBAAC,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,MAAM,GAAC,CAAC,CAAC,CAAC;oBAAC,IAAI,EAAE,CAAC,MAAM;wBAAE,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;gBAAC,CAAC;gBAC/K,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;gBAC1E,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;gBACtE,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;gBACtE,IAAI,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;gBAC1E,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,wBAAwB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;gBACpF,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;gBACxE,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;gBAC9E,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;gBAClE,IAAI,CAAC,sBAAsB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;gBAChF,IAAI,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;gBACtE,IAAI,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC;gBAClF,IAAI,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,CAAC,CAAC,CAAC;gBAClF,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;gBAC9D,IAAI,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;gBAClE,IAAI,CAAC,wBAAwB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;gBACpF,IAAI,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gBAC5D,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;gBACxE,IAAI,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;gBACpE,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;gBACtD,MAAM,OAAO,GAAoB;oBAChC,MAAM,EAAE,MAA6B;oBACrC,GAAG,EAAE,iCAAiC,QAAQ,6BAA6B;oBAC3E,IAAI;oBACJ,IAAI,EAAE,IAAI;iBACV,CAAC;gBACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;gBAC9F,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAChE,KAAK,MAAM,MAAM,IAAI,OAAO;oBAAE,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1F,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;oBAC3B,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAG,KAAe,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxF,SAAS;gBACV,CAAC;gBACD,MAAM,IAAI,iCAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,KAAc,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;YAChF,CAAC;QACF,CAAC;QACD,OAAO,CAAC,UAAU,CAAC,CAAC;IACrB,CAAC;CACD;AAnRD,kDAmRC"}
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64"><rect width="64" height="64" rx="12" fill="#4f46e5"/><text x="32" y="40" font-family="Arial" font-size="28" font-weight="700" fill="#fff" text-anchor="middle">W</text></svg>
package/index.js ADDED
@@ -0,0 +1 @@
1
+ module.exports = {};
package/package.json ADDED
@@ -0,0 +1,48 @@
1
+ {
2
+ "name": "n8n-nodes-apivault-woocommerce-analyzer",
3
+ "version": "0.1.0",
4
+ "description": "n8n community node for WooCommerce Store Analyzer — backed by the Apify Actor apivault_labs/woocommerce-store-analyzer. No login. Pay-as-you-go via Apify.",
5
+ "license": "MIT",
6
+ "homepage": "https://apify.com/apivault_labs/woocommerce-store-analyzer",
7
+ "keywords": [
8
+ "n8n-community-node-package",
9
+ "n8n",
10
+ "woocommerce-analyzer",
11
+ "apify",
12
+ "no-code",
13
+ "automation"
14
+ ],
15
+ "author": {
16
+ "name": "apivault_labs"
17
+ },
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "https://github.com/apivault-labs/n8n-nodes-apivault-woocommerce-analyzer.git"
21
+ },
22
+ "main": "index.js",
23
+ "scripts": {
24
+ "build": "tsc && copyfiles \"nodes/**/*.svg\" dist",
25
+ "dev": "tsc --watch"
26
+ },
27
+ "files": [
28
+ "dist"
29
+ ],
30
+ "n8n": {
31
+ "n8nNodesApiVersion": 1,
32
+ "credentials": [
33
+ "dist/credentials/ApifyApi.credentials.js"
34
+ ],
35
+ "nodes": [
36
+ "dist/nodes/WoocommerceAnalyzer/WoocommerceAnalyzer.node.js"
37
+ ]
38
+ },
39
+ "devDependencies": {
40
+ "@types/node": "^20.10.0",
41
+ "copyfiles": "^2.4.1",
42
+ "n8n-workflow": "*",
43
+ "typescript": "^5.4.0"
44
+ },
45
+ "peerDependencies": {
46
+ "n8n-workflow": "*"
47
+ }
48
+ }