@adaptive-ds/n8n-nodes-publer 1.1.8 → 1.1.10

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.
Files changed (75) hide show
  1. package/dist/credentials/PublerApi.credentials.d.ts +2 -2
  2. package/dist/credentials/PublerApi.credentials.js +16 -16
  3. package/dist/credentials/PublerApi.credentials.js.map +1 -1
  4. package/dist/nodes/PublerAnalytics/PublerAnalytics.node.d.ts +4 -0
  5. package/dist/nodes/PublerAnalytics/PublerAnalytics.node.js +75 -0
  6. package/dist/nodes/PublerAnalytics/PublerAnalytics.node.js.map +1 -0
  7. package/dist/nodes/PublerAnalytics/PublerAnalytics.spec.js +8 -0
  8. package/dist/nodes/PublerAnalytics/PublerAnalytics.spec.js.map +1 -0
  9. package/dist/nodes/PublerAnalytics/logo.svg +44 -0
  10. package/dist/nodes/PublerAnalytics/openapi.json +777 -0
  11. package/dist/nodes/{Publer/Publer.node.d.ts → PublerBasic/PublerBasic.node.d.ts} +1 -1
  12. package/dist/nodes/PublerBasic/PublerBasic.node.js +75 -0
  13. package/dist/nodes/PublerBasic/PublerBasic.node.js.map +1 -0
  14. package/dist/nodes/PublerBasic/PublerBasic.spec.d.ts +1 -0
  15. package/dist/nodes/PublerBasic/PublerBasic.spec.js +8 -0
  16. package/dist/nodes/PublerBasic/PublerBasic.spec.js.map +1 -0
  17. package/dist/nodes/PublerBasic/logo.svg +44 -0
  18. package/dist/nodes/PublerBasic/openapi.json +507 -0
  19. package/dist/nodes/PublerCompetitors/PublerCompetitors.node.d.ts +4 -0
  20. package/dist/nodes/PublerCompetitors/PublerCompetitors.node.js +75 -0
  21. package/dist/nodes/PublerCompetitors/PublerCompetitors.node.js.map +1 -0
  22. package/dist/nodes/PublerCompetitors/PublerCompetitors.spec.d.ts +1 -0
  23. package/dist/nodes/PublerCompetitors/PublerCompetitors.spec.js +8 -0
  24. package/dist/nodes/PublerCompetitors/PublerCompetitors.spec.js.map +1 -0
  25. package/dist/nodes/PublerCompetitors/logo.svg +44 -0
  26. package/dist/nodes/PublerCompetitors/openapi.json +264 -0
  27. package/dist/nodes/PublerLocations/PublerLocations.node.d.ts +4 -0
  28. package/dist/nodes/PublerLocations/PublerLocations.node.js +75 -0
  29. package/dist/nodes/PublerLocations/PublerLocations.node.js.map +1 -0
  30. package/dist/nodes/PublerLocations/PublerLocations.spec.d.ts +1 -0
  31. package/dist/nodes/PublerLocations/PublerLocations.spec.js +8 -0
  32. package/dist/nodes/PublerLocations/PublerLocations.spec.js.map +1 -0
  33. package/dist/nodes/PublerLocations/logo.svg +44 -0
  34. package/dist/nodes/PublerLocations/openapi.json +205 -0
  35. package/dist/nodes/PublerMedia/PublerMedia.node.d.ts +4 -0
  36. package/dist/nodes/{Publer/Publer.node.js → PublerMedia/PublerMedia.node.js} +8 -8
  37. package/dist/nodes/PublerMedia/PublerMedia.node.js.map +1 -0
  38. package/dist/nodes/PublerMedia/PublerMedia.spec.d.ts +1 -0
  39. package/dist/nodes/PublerMedia/PublerMedia.spec.js +8 -0
  40. package/dist/nodes/PublerMedia/PublerMedia.spec.js.map +1 -0
  41. package/dist/nodes/PublerMedia/logo.svg +44 -0
  42. package/dist/nodes/PublerMedia/openapi.json +346 -0
  43. package/dist/nodes/PublerPosts/PublerPosts.node.d.ts +4 -0
  44. package/dist/nodes/PublerPosts/PublerPosts.node.js +75 -0
  45. package/dist/nodes/PublerPosts/PublerPosts.node.js.map +1 -0
  46. package/dist/nodes/PublerPosts/PublerPosts.spec.d.ts +1 -0
  47. package/dist/nodes/PublerPosts/PublerPosts.spec.js +8 -0
  48. package/dist/nodes/PublerPosts/PublerPosts.spec.js.map +1 -0
  49. package/dist/nodes/PublerPosts/logo.svg +44 -0
  50. package/dist/nodes/PublerPosts/openapi.json +536 -0
  51. package/dist/nodes/PublerPostsPublish/PublerPostsPublish.node.d.ts +4 -0
  52. package/dist/nodes/PublerPostsPublish/PublerPostsPublish.node.js +75 -0
  53. package/dist/nodes/PublerPostsPublish/PublerPostsPublish.node.js.map +1 -0
  54. package/dist/nodes/PublerPostsPublish/PublerPostsPublish.spec.d.ts +1 -0
  55. package/dist/nodes/PublerPostsPublish/PublerPostsPublish.spec.js +8 -0
  56. package/dist/nodes/PublerPostsPublish/PublerPostsPublish.spec.js.map +1 -0
  57. package/dist/nodes/PublerPostsPublish/logo.svg +44 -0
  58. package/dist/nodes/PublerPostsPublish/openapi.json +229 -0
  59. package/dist/nodes/PublerPostsSchedule/PublerPostsSchedule.node.d.ts +4 -0
  60. package/dist/nodes/PublerPostsSchedule/PublerPostsSchedule.node.js +75 -0
  61. package/dist/nodes/PublerPostsSchedule/PublerPostsSchedule.node.js.map +1 -0
  62. package/dist/nodes/PublerPostsSchedule/PublerPostsSchedule.spec.d.ts +1 -0
  63. package/dist/nodes/PublerPostsSchedule/PublerPostsSchedule.spec.js +8 -0
  64. package/dist/nodes/PublerPostsSchedule/PublerPostsSchedule.spec.js.map +1 -0
  65. package/dist/nodes/PublerPostsSchedule/logo.svg +44 -0
  66. package/dist/nodes/PublerPostsSchedule/openapi.json +235 -0
  67. package/dist/package.json +27 -6
  68. package/package.json +27 -6
  69. package/dist/nodes/Publer/Publer.node.js.map +0 -1
  70. package/dist/nodes/Publer/Publer.node.json +0 -18
  71. package/dist/nodes/Publer/Publer.spec.js +0 -8
  72. package/dist/nodes/Publer/Publer.spec.js.map +0 -1
  73. package/dist/nodes/Publer/logo.svg +0 -1
  74. package/dist/nodes/Publer/openapi.json +0 -1527
  75. /package/dist/nodes/{Publer/Publer.spec.d.ts → PublerAnalytics/PublerAnalytics.spec.d.ts} +0 -0
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.PublerCompetitors = void 0;
37
+ const n8n_openapi_node_1 = require("@devlikeapro/n8n-openapi-node");
38
+ const doc = __importStar(require("./openapi.json"));
39
+ const config = {};
40
+ const parser = new n8n_openapi_node_1.N8NPropertiesBuilder(doc, config);
41
+ const properties = parser.build();
42
+ class PublerCompetitors {
43
+ constructor() {
44
+ this.description = {
45
+ displayName: "Publer Competitors",
46
+ name: "publerCompetitors",
47
+ icon: "file:logo.svg",
48
+ group: ["transform"],
49
+ version: 1,
50
+ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
51
+ description: "Interact with Publer Competitors API - List competitors and retrieve analytics",
52
+ defaults: {
53
+ name: "Publer Competitors",
54
+ },
55
+ inputs: ["main"],
56
+ outputs: ["main"],
57
+ credentials: [
58
+ {
59
+ name: "publerApi",
60
+ required: true,
61
+ },
62
+ ],
63
+ requestDefaults: {
64
+ headers: {
65
+ Accept: "application/json",
66
+ "Content-Type": "application/json",
67
+ },
68
+ baseURL: "https://app.publer.com",
69
+ },
70
+ properties: properties,
71
+ };
72
+ }
73
+ }
74
+ exports.PublerCompetitors = PublerCompetitors;
75
+ //# sourceMappingURL=PublerCompetitors.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublerCompetitors.node.js","sourceRoot":"","sources":["../../../nodes/PublerCompetitors/PublerCompetitors.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,oEAAgG;AAChG,oDAAqC;AAErC,MAAM,MAAM,GAA+B,EAAE,CAAA;AAC7C,MAAM,MAAM,GAAG,IAAI,uCAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;AACpD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;AAEjC,MAAa,iBAAiB;IAA9B;QACE,gBAAW,GAAyB;YAClC,WAAW,EAAE,oBAAoB;YACjC,IAAI,EAAE,mBAAmB;YACzB,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EAAE,gFAAgF;YAC7F,QAAQ,EAAE;gBACR,IAAI,EAAE,oBAAoB;aAC3B;YACD,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE;gBACX;oBACE,IAAI,EAAE,WAAW;oBACjB,QAAQ,EAAE,IAAI;iBACf;aACF;YACD,eAAe,EAAE;gBACf,OAAO,EAAE;oBACP,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBACnC;gBACD,OAAO,EAAE,wBAAwB;aAClC;YACD,UAAU,EAAE,UAAU;SACvB,CAAA;IACH,CAAC;CAAA;AA7BD,8CA6BC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const PublerCompetitors_node_1 = require("./PublerCompetitors.node");
4
+ test("PublerCompetitors", () => {
5
+ const node = new PublerCompetitors_node_1.PublerCompetitors();
6
+ expect(node.description.properties).toBeDefined();
7
+ });
8
+ //# sourceMappingURL=PublerCompetitors.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublerCompetitors.spec.js","sourceRoot":"","sources":["../../../nodes/PublerCompetitors/PublerCompetitors.spec.ts"],"names":[],"mappings":";;AAAA,qEAA4D;AAE5D,IAAI,CAAC,mBAAmB,EAAE,GAAG,EAAE;IAC7B,MAAM,IAAI,GAAG,IAAI,0CAAiB,EAAE,CAAA;IACpC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAA;AACnD,CAAC,CAAC,CAAA"}
@@ -0,0 +1,44 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 115 38" height='38' width="115">
2
+ <path
3
+ fill="#113A54"
4
+ d="M43.6 31V13.4h7.7c1 0 1.8.1 2.6.4.6.3 1.1.7 1.5 1.2.4.6.7 1.2.8 1.9a14 14 0 0 1 0 4.7c-.1.6-.4 1.3-.8 1.8-.3.6-.9 1-1.5 1.2-.8.3-1.7.4-2.6.4H47v6h-3.5Zm3.5-8.8h2.8c.5 0 1.1 0 1.6-.2.4 0 .7-.2 1-.4l.3-.9.2-1.5c0-.5 0-1-.2-1.4l-.3-.9c-.3-.2-.6-.4-.9-.4l-1.6-.1h-3v5.8ZM63 31.1c-.7 0-1.4 0-2-.3-.5-.2-.9-.5-1.2-1-.3-.4-.5-1-.5-1.5A14 14 0 0 1 59 26v-8h3.2v6.8l.1 1.9c0 .4.1.7.3 1 .2.2.4.4.7.4l1.1.1c.4 0 .9 0 1.3-.2.3 0 .5-.3.7-.6l.2-1V18H70v13h-3l-.1-1.6h-.2a3 3 0 0 1-.9 1c-.3.3-.8.5-1.2.6-.6.1-1.1.2-1.7.1Zm17.4 0-1.5-.1-1.2-.5a3 3 0 0 1-1-1.2h-.2l-.1 1.7h-3V12h3.2v7.4h.2a2 2 0 0 1 1-1c.3-.3.7-.4 1.1-.5a7.3 7.3 0 0 1 3.4.2c.5.2 1 .6 1.3 1.1.4.6.6 1.3.7 2a18.9 18.9 0 0 1 0 6.5c0 .8-.3 1.5-.7 2-.3.6-.8 1-1.3 1.2-.6.2-1.3.3-2 .2ZM79 28.2h1.3c.3-.1.5-.3.7-.6.2-.3.3-.7.3-1v-4.2a2 2 0 0 0-.3-1.1c-.2-.3-.4-.4-.7-.5a5 5 0 0 0-1.3-.1 4 4 0 0 0-1.2.1 1.1 1.1 0 0 0-.7.6l-.4 1.2a15.5 15.5 0 0 0 0 3.6c0 .5.2.9.4 1.2.1.3.4.5.7.6.4.2.8.2 1.2.2Zm8.6 2.8V12h3.2v19h-3.2Zm12.2.1c-1 0-1.8 0-2.7-.2a4 4 0 0 1-1.8-.7c-.4-.3-.7-.8-1-1.3-.2-.6-.3-1.2-.3-1.9l-.1-2.5.1-3c.1-.8.4-1.5.7-2.1.5-.6 1-1 1.7-1.2 1-.3 2-.4 3-.4s1.8 0 2.6.2c.6.2 1 .4 1.5.8.4.3.7.8.9 1.3.2.6.3 1.2.3 1.9v3.5H97l.1 1.6c0 .3.2.6.4.9l1 .4h4.5l1.3-.2v2.5l-1.3.2-1.7.2h-1.5Zm1.9-7.3v-.4l-.1-1.6c0-.3-.2-.6-.4-.9l-.7-.4h-2.3c-.3.1-.6.2-.8.5l-.3.9v1.5h5l-.4.4Zm6.1 7.2V18h3v2.2h.2c.2-.6.5-1.1.9-1.5.3-.4.8-.7 1.3-.8l1.8-.1V21a5 5 0 0 0-2.4.5c-.6.3-1 .8-1.3 1.5-.3.9-.4 1.8-.3 2.8V31h-3.2Z"
5
+ />
6
+ <path
7
+ fill="url(#publer_logo_letter)"
8
+ d="m31 34.4 7.1-28.8a4.3 4.3 0 0 0-.4-3.1A4 4 0 0 0 35.3.6l-1-.1H3.8a3.7 3.7 0 0 0-2.7 1.2A4 4 0 0 0 0 4.6l.1 1 7 28.8a4 4 0 0 0 1.4 2.2c.7.6 1.5.9 2.4.9h16.4c.9 0 1.7-.3 2.4-.9.7-.5 1.1-1.3 1.4-2.2Z"
9
+ />
10
+ <path
11
+ fill="#fff"
12
+ d="M30.6 5.5h-23a2 2 0 0 0-1.5.7 2.3 2.3 0 0 0-.6 2.1L11 30.8c.1.5.4 1 .8 1.2.3.3.8.5 1.3.5h2.5a2 2 0 0 0 1.5-.7 2.3 2.3 0 0 0 .6-1.6v-.5l-1-4.6-2.4-1.6h13c.5 0 1-.2 1.3-.5.4-.3.7-.7.8-1.2l3.3-13.5a2.4 2.4 0 0 0-.3-1.7 2.2 2.2 0 0 0-1.3-1 2 2 0 0 0-.5 0Z"
13
+ />
14
+ <path
15
+ fill="url(#publer_logo_text)"
16
+ d="m11.3 12 2.4 1.9.5 2.1c0 .3.2.5.4.7.2.2.5.3.7.3H24c.2 0 .5 0 .7-.3.2-.1.4-.4.5-.7l.6-4H11.3Z"
17
+ />
18
+ <defs>
19
+ <linearGradient
20
+ id="publer_logo_letter"
21
+ x1="-11.6"
22
+ x2="37"
23
+ y1="52.6"
24
+ y2="-1.9"
25
+ gradientUnits="userSpaceOnUse"
26
+ >
27
+ <stop offset=".5" stop-color="#00C2FF" />
28
+ <stop offset=".8" stop-color="#00E2CE" />
29
+ <stop offset="1" stop-color="#00FAA8" />
30
+ </linearGradient>
31
+ <linearGradient
32
+ id="publer_logo_text"
33
+ x1="-141.9"
34
+ x2="-26.2"
35
+ y1="-38.3"
36
+ y2="348.4"
37
+ gradientUnits="userSpaceOnUse"
38
+ >
39
+ <stop offset=".5" stop-color="#00C2FF" />
40
+ <stop offset=".8" stop-color="#00E2CE" />
41
+ <stop offset="1" stop-color="#00FAA8" />
42
+ </linearGradient>
43
+ </defs>
44
+ </svg>
@@ -0,0 +1,264 @@
1
+ {
2
+ "openapi": "3.1.1",
3
+ "info": {
4
+ "title": "Publer Competitors API",
5
+ "description": "Competitor analysis endpoints for Publer API including listing competitors and retrieving competitor analytics.",
6
+ "version": "1.0.0"
7
+ },
8
+ "servers": [
9
+ {
10
+ "url": "https://app.publer.com/api/v1"
11
+ }
12
+ ],
13
+ "security": [
14
+ {
15
+ "BearerApiAuth": []
16
+ }
17
+ ],
18
+ "components": {
19
+ "securitySchemes": {
20
+ "BearerApiAuth": {
21
+ "type": "apiKey",
22
+ "name": "Authorization",
23
+ "in": "header",
24
+ "description": "API key authentication. Format: \"Bearer-API YOUR_API_KEY\""
25
+ }
26
+ },
27
+ "schemas": {
28
+ "CompetitorsListResponse": {
29
+ "type": "object",
30
+ "description": "Response containing list of competitors",
31
+ "properties": {
32
+ "data": {
33
+ "type": "array",
34
+ "description": "List of competitor accounts",
35
+ "items": {
36
+ "type": "object",
37
+ "additionalProperties": true
38
+ }
39
+ }
40
+ },
41
+ "required": ["data"]
42
+ },
43
+ "CompetitorsAnalyticsResponse": {
44
+ "type": "object",
45
+ "description": "Response containing competitor analytics data",
46
+ "properties": {
47
+ "data": {
48
+ "type": "array",
49
+ "description": "List of competitor analytics",
50
+ "items": {
51
+ "type": "object",
52
+ "additionalProperties": true
53
+ }
54
+ },
55
+ "pagination": {
56
+ "type": "object",
57
+ "description": "Pagination information",
58
+ "properties": {
59
+ "page": {
60
+ "type": "integer",
61
+ "format": "int32",
62
+ "minimum": 0,
63
+ "maximum": 10000,
64
+ "description": "Current page number"
65
+ },
66
+ "total": {
67
+ "type": "integer",
68
+ "format": "int32",
69
+ "minimum": 0,
70
+ "maximum": 1000000,
71
+ "description": "Total number of items"
72
+ }
73
+ }
74
+ }
75
+ },
76
+ "required": ["data"]
77
+ }
78
+ }
79
+ },
80
+ "tags": [
81
+ {
82
+ "name": "COMPETITORS"
83
+ }
84
+ ],
85
+ "paths": {
86
+ "/competitors/{account_id}": {
87
+ "get": {
88
+ "tags": ["COMPETITORS"],
89
+ "summary": "List Competitors",
90
+ "description": "Retrieves a list of competitor accounts for the workspace or for a specific social media account.",
91
+ "operationId": "list_competitors",
92
+ "parameters": [
93
+ {
94
+ "name": "account_id",
95
+ "in": "path",
96
+ "schema": {
97
+ "type": "string"
98
+ },
99
+ "required": true,
100
+ "description": "Social account ID to scope competitors"
101
+ },
102
+ {
103
+ "name": "Publer-Workspace-Id",
104
+ "in": "header",
105
+ "schema": {
106
+ "type": "string"
107
+ },
108
+ "example": "{{workspace_id}}",
109
+ "required": true,
110
+ "description": "Workspace ID to access competitors for"
111
+ }
112
+ ],
113
+ "responses": {
114
+ "200": {
115
+ "description": "Successful response",
116
+ "content": {
117
+ "application/json": {
118
+ "schema": {
119
+ "$ref": "#/components/schemas/CompetitorsListResponse"
120
+ },
121
+ "example": {
122
+ "data": [
123
+ {
124
+ "competitor_id": "comp123",
125
+ "name": "Competitor Name",
126
+ "username": "@competitor"
127
+ }
128
+ ]
129
+ }
130
+ }
131
+ }
132
+ }
133
+ }
134
+ }
135
+ },
136
+ "/competitors/{account_id}/analytics": {
137
+ "get": {
138
+ "tags": ["COMPETITORS"],
139
+ "summary": "Competitors analytics",
140
+ "description": "Retrieves analytics data for competitor accounts, including engagement metrics, follower counts, and post performance statistics.",
141
+ "operationId": "get_competitors_analytics",
142
+ "parameters": [
143
+ {
144
+ "name": "account_id",
145
+ "in": "path",
146
+ "schema": {
147
+ "type": "string"
148
+ },
149
+ "required": true,
150
+ "description": "ID of the social media account to retrieve competitors analytics for"
151
+ },
152
+ {
153
+ "name": "Publer-Workspace-Id",
154
+ "in": "header",
155
+ "schema": {
156
+ "type": "string"
157
+ },
158
+ "example": "{{workspace_id}}",
159
+ "required": true,
160
+ "description": "Workspace ID to access competitor analytics for"
161
+ },
162
+ {
163
+ "name": "competitor_id",
164
+ "in": "query",
165
+ "schema": {
166
+ "type": "string"
167
+ },
168
+ "description": "Specific competitor account ID to analyze"
169
+ },
170
+ {
171
+ "name": "query",
172
+ "in": "query",
173
+ "schema": {
174
+ "type": "string"
175
+ },
176
+ "description": "Search filter for competitor account names"
177
+ },
178
+ {
179
+ "name": "from",
180
+ "in": "query",
181
+ "schema": {
182
+ "type": "string",
183
+ "format": "date"
184
+ },
185
+ "description": "Start date for analytics data (YYYY-MM-DD)"
186
+ },
187
+ {
188
+ "name": "to",
189
+ "in": "query",
190
+ "schema": {
191
+ "type": "string",
192
+ "format": "date"
193
+ },
194
+ "description": "End date for analytics data (YYYY-MM-DD)"
195
+ },
196
+ {
197
+ "name": "page",
198
+ "in": "query",
199
+ "schema": {
200
+ "type": "integer",
201
+ "format": "int32",
202
+ "minimum": 0,
203
+ "maximum": 10000
204
+ },
205
+ "example": 0,
206
+ "description": "Page number for pagination (default: 0)"
207
+ },
208
+ {
209
+ "name": "sort_by",
210
+ "in": "query",
211
+ "schema": {
212
+ "type": "string",
213
+ "enum": [
214
+ "followers",
215
+ "reach",
216
+ "engagement",
217
+ "posts_count",
218
+ "videos_count",
219
+ "photos_count",
220
+ "links_count",
221
+ "statuses_count"
222
+ ]
223
+ },
224
+ "description": "Field to sort results by (default: followers)"
225
+ },
226
+ {
227
+ "name": "sort_type",
228
+ "in": "query",
229
+ "schema": {
230
+ "type": "string",
231
+ "enum": ["asc", "desc"]
232
+ },
233
+ "description": "Sort direction (default: asc)"
234
+ }
235
+ ],
236
+ "responses": {
237
+ "200": {
238
+ "description": "Successful response",
239
+ "content": {
240
+ "application/json": {
241
+ "schema": {
242
+ "$ref": "#/components/schemas/CompetitorsAnalyticsResponse"
243
+ },
244
+ "example": {
245
+ "data": [
246
+ {
247
+ "competitor_id": "comp123",
248
+ "followers": 50000,
249
+ "engagement": 2500
250
+ }
251
+ ],
252
+ "pagination": {
253
+ "page": 0,
254
+ "total": 100
255
+ }
256
+ }
257
+ }
258
+ }
259
+ }
260
+ }
261
+ }
262
+ }
263
+ }
264
+ }
@@ -0,0 +1,4 @@
1
+ import { INodeType, INodeTypeDescription } from "n8n-workflow";
2
+ export declare class PublerLocations implements INodeType {
3
+ description: INodeTypeDescription;
4
+ }
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.PublerLocations = void 0;
37
+ const n8n_openapi_node_1 = require("@devlikeapro/n8n-openapi-node");
38
+ const doc = __importStar(require("./openapi.json"));
39
+ const config = {};
40
+ const parser = new n8n_openapi_node_1.N8NPropertiesBuilder(doc, config);
41
+ const properties = parser.build();
42
+ class PublerLocations {
43
+ constructor() {
44
+ this.description = {
45
+ displayName: "Publer Locations",
46
+ name: "publerLocations",
47
+ icon: "file:logo.svg",
48
+ group: ["transform"],
49
+ version: 1,
50
+ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
51
+ description: "Interact with Publer Locations API - Search Instagram, Facebook, and Threads locations",
52
+ defaults: {
53
+ name: "Publer Locations",
54
+ },
55
+ inputs: ["main"],
56
+ outputs: ["main"],
57
+ credentials: [
58
+ {
59
+ name: "publerApi",
60
+ required: true,
61
+ },
62
+ ],
63
+ requestDefaults: {
64
+ headers: {
65
+ Accept: "application/json",
66
+ "Content-Type": "application/json",
67
+ },
68
+ baseURL: "https://app.publer.com",
69
+ },
70
+ properties: properties,
71
+ };
72
+ }
73
+ }
74
+ exports.PublerLocations = PublerLocations;
75
+ //# sourceMappingURL=PublerLocations.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublerLocations.node.js","sourceRoot":"","sources":["../../../nodes/PublerLocations/PublerLocations.node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,oEAAgG;AAChG,oDAAqC;AAErC,MAAM,MAAM,GAA+B,EAAE,CAAA;AAC7C,MAAM,MAAM,GAAG,IAAI,uCAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;AACpD,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;AAEjC,MAAa,eAAe;IAA5B;QACE,gBAAW,GAAyB;YAClC,WAAW,EAAE,kBAAkB;YAC/B,IAAI,EAAE,iBAAiB;YACvB,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,8DAA8D;YACxE,WAAW,EAAE,wFAAwF;YACrG,QAAQ,EAAE;gBACR,IAAI,EAAE,kBAAkB;aACzB;YACD,MAAM,EAAE,CAAC,MAAM,CAAC;YAChB,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,WAAW,EAAE;gBACX;oBACE,IAAI,EAAE,WAAW;oBACjB,QAAQ,EAAE,IAAI;iBACf;aACF;YACD,eAAe,EAAE;gBACf,OAAO,EAAE;oBACP,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBACnC;gBACD,OAAO,EAAE,wBAAwB;aAClC;YACD,UAAU,EAAE,UAAU;SACvB,CAAA;IACH,CAAC;CAAA;AA7BD,0CA6BC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const PublerLocations_node_1 = require("./PublerLocations.node");
4
+ test("PublerLocations", () => {
5
+ const node = new PublerLocations_node_1.PublerLocations();
6
+ expect(node.description.properties).toBeDefined();
7
+ });
8
+ //# sourceMappingURL=PublerLocations.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PublerLocations.spec.js","sourceRoot":"","sources":["../../../nodes/PublerLocations/PublerLocations.spec.ts"],"names":[],"mappings":";;AAAA,iEAAwD;AAExD,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC3B,MAAM,IAAI,GAAG,IAAI,sCAAe,EAAE,CAAA;IAClC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAA;AACnD,CAAC,CAAC,CAAA"}
@@ -0,0 +1,44 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 115 38" height='38' width="115">
2
+ <path
3
+ fill="#113A54"
4
+ d="M43.6 31V13.4h7.7c1 0 1.8.1 2.6.4.6.3 1.1.7 1.5 1.2.4.6.7 1.2.8 1.9a14 14 0 0 1 0 4.7c-.1.6-.4 1.3-.8 1.8-.3.6-.9 1-1.5 1.2-.8.3-1.7.4-2.6.4H47v6h-3.5Zm3.5-8.8h2.8c.5 0 1.1 0 1.6-.2.4 0 .7-.2 1-.4l.3-.9.2-1.5c0-.5 0-1-.2-1.4l-.3-.9c-.3-.2-.6-.4-.9-.4l-1.6-.1h-3v5.8ZM63 31.1c-.7 0-1.4 0-2-.3-.5-.2-.9-.5-1.2-1-.3-.4-.5-1-.5-1.5A14 14 0 0 1 59 26v-8h3.2v6.8l.1 1.9c0 .4.1.7.3 1 .2.2.4.4.7.4l1.1.1c.4 0 .9 0 1.3-.2.3 0 .5-.3.7-.6l.2-1V18H70v13h-3l-.1-1.6h-.2a3 3 0 0 1-.9 1c-.3.3-.8.5-1.2.6-.6.1-1.1.2-1.7.1Zm17.4 0-1.5-.1-1.2-.5a3 3 0 0 1-1-1.2h-.2l-.1 1.7h-3V12h3.2v7.4h.2a2 2 0 0 1 1-1c.3-.3.7-.4 1.1-.5a7.3 7.3 0 0 1 3.4.2c.5.2 1 .6 1.3 1.1.4.6.6 1.3.7 2a18.9 18.9 0 0 1 0 6.5c0 .8-.3 1.5-.7 2-.3.6-.8 1-1.3 1.2-.6.2-1.3.3-2 .2ZM79 28.2h1.3c.3-.1.5-.3.7-.6.2-.3.3-.7.3-1v-4.2a2 2 0 0 0-.3-1.1c-.2-.3-.4-.4-.7-.5a5 5 0 0 0-1.3-.1 4 4 0 0 0-1.2.1 1.1 1.1 0 0 0-.7.6l-.4 1.2a15.5 15.5 0 0 0 0 3.6c0 .5.2.9.4 1.2.1.3.4.5.7.6.4.2.8.2 1.2.2Zm8.6 2.8V12h3.2v19h-3.2Zm12.2.1c-1 0-1.8 0-2.7-.2a4 4 0 0 1-1.8-.7c-.4-.3-.7-.8-1-1.3-.2-.6-.3-1.2-.3-1.9l-.1-2.5.1-3c.1-.8.4-1.5.7-2.1.5-.6 1-1 1.7-1.2 1-.3 2-.4 3-.4s1.8 0 2.6.2c.6.2 1 .4 1.5.8.4.3.7.8.9 1.3.2.6.3 1.2.3 1.9v3.5H97l.1 1.6c0 .3.2.6.4.9l1 .4h4.5l1.3-.2v2.5l-1.3.2-1.7.2h-1.5Zm1.9-7.3v-.4l-.1-1.6c0-.3-.2-.6-.4-.9l-.7-.4h-2.3c-.3.1-.6.2-.8.5l-.3.9v1.5h5l-.4.4Zm6.1 7.2V18h3v2.2h.2c.2-.6.5-1.1.9-1.5.3-.4.8-.7 1.3-.8l1.8-.1V21a5 5 0 0 0-2.4.5c-.6.3-1 .8-1.3 1.5-.3.9-.4 1.8-.3 2.8V31h-3.2Z"
5
+ />
6
+ <path
7
+ fill="url(#publer_logo_letter)"
8
+ d="m31 34.4 7.1-28.8a4.3 4.3 0 0 0-.4-3.1A4 4 0 0 0 35.3.6l-1-.1H3.8a3.7 3.7 0 0 0-2.7 1.2A4 4 0 0 0 0 4.6l.1 1 7 28.8a4 4 0 0 0 1.4 2.2c.7.6 1.5.9 2.4.9h16.4c.9 0 1.7-.3 2.4-.9.7-.5 1.1-1.3 1.4-2.2Z"
9
+ />
10
+ <path
11
+ fill="#fff"
12
+ d="M30.6 5.5h-23a2 2 0 0 0-1.5.7 2.3 2.3 0 0 0-.6 2.1L11 30.8c.1.5.4 1 .8 1.2.3.3.8.5 1.3.5h2.5a2 2 0 0 0 1.5-.7 2.3 2.3 0 0 0 .6-1.6v-.5l-1-4.6-2.4-1.6h13c.5 0 1-.2 1.3-.5.4-.3.7-.7.8-1.2l3.3-13.5a2.4 2.4 0 0 0-.3-1.7 2.2 2.2 0 0 0-1.3-1 2 2 0 0 0-.5 0Z"
13
+ />
14
+ <path
15
+ fill="url(#publer_logo_text)"
16
+ d="m11.3 12 2.4 1.9.5 2.1c0 .3.2.5.4.7.2.2.5.3.7.3H24c.2 0 .5 0 .7-.3.2-.1.4-.4.5-.7l.6-4H11.3Z"
17
+ />
18
+ <defs>
19
+ <linearGradient
20
+ id="publer_logo_letter"
21
+ x1="-11.6"
22
+ x2="37"
23
+ y1="52.6"
24
+ y2="-1.9"
25
+ gradientUnits="userSpaceOnUse"
26
+ >
27
+ <stop offset=".5" stop-color="#00C2FF" />
28
+ <stop offset=".8" stop-color="#00E2CE" />
29
+ <stop offset="1" stop-color="#00FAA8" />
30
+ </linearGradient>
31
+ <linearGradient
32
+ id="publer_logo_text"
33
+ x1="-141.9"
34
+ x2="-26.2"
35
+ y1="-38.3"
36
+ y2="348.4"
37
+ gradientUnits="userSpaceOnUse"
38
+ >
39
+ <stop offset=".5" stop-color="#00C2FF" />
40
+ <stop offset=".8" stop-color="#00E2CE" />
41
+ <stop offset="1" stop-color="#00FAA8" />
42
+ </linearGradient>
43
+ </defs>
44
+ </svg>