@yuniruyuni/n8n-nodes-twitch 0.1.4 → 0.1.6

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 (205) hide show
  1. package/dist/credentials/TwitchOAuth2Api.credentials.d.ts +2 -1
  2. package/dist/credentials/TwitchOAuth2Api.credentials.js +8 -0
  3. package/dist/credentials/TwitchOAuth2Api.credentials.js.map +1 -1
  4. package/dist/nodes/{TwitchBans/TwitchBans.node.d.ts → Twitch/Twitch.node.d.ts} +1 -1
  5. package/dist/nodes/Twitch/Twitch.node.js +145 -0
  6. package/dist/nodes/Twitch/Twitch.node.js.map +1 -0
  7. package/dist/nodes/Twitch/resources/Announcement.d.ts +3 -0
  8. package/dist/nodes/Twitch/resources/Announcement.js +146 -0
  9. package/dist/nodes/Twitch/resources/Announcement.js.map +1 -0
  10. package/dist/nodes/Twitch/resources/Ban.d.ts +3 -0
  11. package/dist/nodes/Twitch/resources/Ban.js +324 -0
  12. package/dist/nodes/Twitch/resources/Ban.js.map +1 -0
  13. package/dist/nodes/Twitch/resources/BitsLeaderboard.d.ts +3 -0
  14. package/dist/nodes/Twitch/resources/BitsLeaderboard.js +152 -0
  15. package/dist/nodes/Twitch/resources/BitsLeaderboard.js.map +1 -0
  16. package/dist/nodes/Twitch/resources/Channel.d.ts +3 -0
  17. package/dist/nodes/Twitch/resources/Channel.js +78 -0
  18. package/dist/nodes/Twitch/resources/Channel.js.map +1 -0
  19. package/dist/nodes/Twitch/resources/ChatMessage.d.ts +3 -0
  20. package/dist/nodes/Twitch/resources/ChatMessage.js +110 -0
  21. package/dist/nodes/Twitch/resources/ChatMessage.js.map +1 -0
  22. package/dist/nodes/Twitch/resources/Chatter.d.ts +3 -0
  23. package/dist/nodes/Twitch/resources/Chatter.js +109 -0
  24. package/dist/nodes/Twitch/resources/Chatter.js.map +1 -0
  25. package/dist/nodes/Twitch/resources/Cheermote.d.ts +3 -0
  26. package/dist/nodes/Twitch/resources/Cheermote.js +73 -0
  27. package/dist/nodes/Twitch/resources/Cheermote.js.map +1 -0
  28. package/dist/nodes/Twitch/resources/Clip.d.ts +3 -0
  29. package/dist/nodes/Twitch/resources/Clip.js +273 -0
  30. package/dist/nodes/Twitch/resources/Clip.js.map +1 -0
  31. package/dist/nodes/Twitch/resources/CustomReward.d.ts +3 -0
  32. package/dist/nodes/Twitch/resources/CustomReward.js +564 -0
  33. package/dist/nodes/Twitch/resources/CustomReward.js.map +1 -0
  34. package/dist/nodes/Twitch/resources/Emote.d.ts +3 -0
  35. package/dist/nodes/Twitch/resources/Emote.js +72 -0
  36. package/dist/nodes/Twitch/resources/Emote.js.map +1 -0
  37. package/dist/nodes/Twitch/resources/Game.d.ts +3 -0
  38. package/dist/nodes/Twitch/resources/Game.js +209 -0
  39. package/dist/nodes/Twitch/resources/Game.js.map +1 -0
  40. package/dist/nodes/Twitch/resources/Moderator.d.ts +3 -0
  41. package/dist/nodes/Twitch/resources/Moderator.js +268 -0
  42. package/dist/nodes/Twitch/resources/Moderator.js.map +1 -0
  43. package/dist/nodes/Twitch/resources/Poll.d.ts +3 -0
  44. package/dist/nodes/Twitch/resources/Poll.js +411 -0
  45. package/dist/nodes/Twitch/resources/Poll.js.map +1 -0
  46. package/dist/nodes/Twitch/resources/Prediction.d.ts +3 -0
  47. package/dist/nodes/Twitch/resources/Prediction.js +367 -0
  48. package/dist/nodes/Twitch/resources/Prediction.js.map +1 -0
  49. package/dist/nodes/Twitch/resources/Raid.d.ts +3 -0
  50. package/dist/nodes/Twitch/resources/Raid.js +161 -0
  51. package/dist/nodes/Twitch/resources/Raid.js.map +1 -0
  52. package/dist/nodes/Twitch/resources/Redemption.d.ts +3 -0
  53. package/dist/nodes/Twitch/resources/Redemption.js +260 -0
  54. package/dist/nodes/Twitch/resources/Redemption.js.map +1 -0
  55. package/dist/nodes/Twitch/resources/Schedule.d.ts +3 -0
  56. package/dist/nodes/Twitch/resources/Schedule.js +415 -0
  57. package/dist/nodes/Twitch/resources/Schedule.js.map +1 -0
  58. package/dist/nodes/Twitch/resources/Search.d.ts +3 -0
  59. package/dist/nodes/Twitch/resources/Search.js +108 -0
  60. package/dist/nodes/Twitch/resources/Search.js.map +1 -0
  61. package/dist/nodes/Twitch/resources/Stream.d.ts +3 -0
  62. package/dist/nodes/Twitch/resources/Stream.js +68 -0
  63. package/dist/nodes/Twitch/resources/Stream.js.map +1 -0
  64. package/dist/nodes/Twitch/resources/Subscription.d.ts +3 -0
  65. package/dist/nodes/Twitch/resources/Subscription.js +190 -0
  66. package/dist/nodes/Twitch/resources/Subscription.js.map +1 -0
  67. package/dist/nodes/Twitch/resources/Team.d.ts +3 -0
  68. package/dist/nodes/Twitch/resources/Team.js +168 -0
  69. package/dist/nodes/Twitch/resources/Team.js.map +1 -0
  70. package/dist/nodes/Twitch/resources/User.d.ts +3 -0
  71. package/dist/nodes/Twitch/resources/User.js +68 -0
  72. package/dist/nodes/Twitch/resources/User.js.map +1 -0
  73. package/dist/nodes/Twitch/resources/Video.d.ts +3 -0
  74. package/dist/nodes/Twitch/resources/Video.js +323 -0
  75. package/dist/nodes/Twitch/resources/Video.js.map +1 -0
  76. package/dist/nodes/Twitch/resources/Whisper.d.ts +3 -0
  77. package/dist/nodes/Twitch/resources/Whisper.js +78 -0
  78. package/dist/nodes/Twitch/resources/Whisper.js.map +1 -0
  79. package/dist/nodes/Twitch/shared/userIdConverter.d.ts +2 -0
  80. package/dist/nodes/Twitch/shared/userIdConverter.js +32 -0
  81. package/dist/nodes/Twitch/shared/userIdConverter.js.map +1 -0
  82. package/dist/nodes/TwitchTrigger/TwitchTrigger.node.js +6 -4
  83. package/dist/nodes/TwitchTrigger/TwitchTrigger.node.js.map +1 -1
  84. package/dist/package.json +3 -26
  85. package/dist/tsconfig.tsbuildinfo +1 -1
  86. package/package.json +3 -26
  87. package/dist/nodes/TwitchAnnouncements/TwitchAnnouncements.node.d.ts +0 -4
  88. package/dist/nodes/TwitchAnnouncements/TwitchAnnouncements.node.js +0 -166
  89. package/dist/nodes/TwitchAnnouncements/TwitchAnnouncements.node.js.map +0 -1
  90. package/dist/nodes/TwitchBans/TwitchBans.node.js +0 -324
  91. package/dist/nodes/TwitchBans/TwitchBans.node.js.map +0 -1
  92. package/dist/nodes/TwitchBans/twitch.dark.svg +0 -1
  93. package/dist/nodes/TwitchBans/twitch.svg +0 -1
  94. package/dist/nodes/TwitchBitsLeaderboard/TwitchBitsLeaderboard.node.d.ts +0 -4
  95. package/dist/nodes/TwitchBitsLeaderboard/TwitchBitsLeaderboard.node.js +0 -172
  96. package/dist/nodes/TwitchBitsLeaderboard/TwitchBitsLeaderboard.node.js.map +0 -1
  97. package/dist/nodes/TwitchBitsLeaderboard/twitch.dark.svg +0 -1
  98. package/dist/nodes/TwitchBitsLeaderboard/twitch.svg +0 -1
  99. package/dist/nodes/TwitchChannels/TwitchChannels.node.d.ts +0 -4
  100. package/dist/nodes/TwitchChannels/TwitchChannels.node.js +0 -94
  101. package/dist/nodes/TwitchChannels/TwitchChannels.node.js.map +0 -1
  102. package/dist/nodes/TwitchChannels/twitch.dark.svg +0 -1
  103. package/dist/nodes/TwitchChannels/twitch.svg +0 -1
  104. package/dist/nodes/TwitchChatMessages/TwitchChatMessages.node.d.ts +0 -4
  105. package/dist/nodes/TwitchChatMessages/TwitchChatMessages.node.js +0 -130
  106. package/dist/nodes/TwitchChatMessages/TwitchChatMessages.node.js.map +0 -1
  107. package/dist/nodes/TwitchChatMessages/twitch.dark.svg +0 -1
  108. package/dist/nodes/TwitchChatMessages/twitch.svg +0 -1
  109. package/dist/nodes/TwitchChatters/TwitchChatters.node.d.ts +0 -4
  110. package/dist/nodes/TwitchChatters/TwitchChatters.node.js +0 -118
  111. package/dist/nodes/TwitchChatters/TwitchChatters.node.js.map +0 -1
  112. package/dist/nodes/TwitchChatters/twitch.dark.svg +0 -1
  113. package/dist/nodes/TwitchChatters/twitch.svg +0 -1
  114. package/dist/nodes/TwitchCheermotes/TwitchCheermotes.node.d.ts +0 -4
  115. package/dist/nodes/TwitchCheermotes/TwitchCheermotes.node.js +0 -83
  116. package/dist/nodes/TwitchCheermotes/TwitchCheermotes.node.js.map +0 -1
  117. package/dist/nodes/TwitchCheermotes/twitch.dark.svg +0 -1
  118. package/dist/nodes/TwitchCheermotes/twitch.svg +0 -1
  119. package/dist/nodes/TwitchClips/TwitchClips.node.d.ts +0 -4
  120. package/dist/nodes/TwitchClips/TwitchClips.node.js +0 -278
  121. package/dist/nodes/TwitchClips/TwitchClips.node.js.map +0 -1
  122. package/dist/nodes/TwitchClips/twitch.dark.svg +0 -1
  123. package/dist/nodes/TwitchClips/twitch.svg +0 -1
  124. package/dist/nodes/TwitchCustomRewards/TwitchCustomRewards.node.d.ts +0 -4
  125. package/dist/nodes/TwitchCustomRewards/TwitchCustomRewards.node.js +0 -576
  126. package/dist/nodes/TwitchCustomRewards/TwitchCustomRewards.node.js.map +0 -1
  127. package/dist/nodes/TwitchCustomRewards/twitch.dark.svg +0 -1
  128. package/dist/nodes/TwitchCustomRewards/twitch.svg +0 -1
  129. package/dist/nodes/TwitchEmotes/TwitchEmotes.node.d.ts +0 -4
  130. package/dist/nodes/TwitchEmotes/TwitchEmotes.node.js +0 -95
  131. package/dist/nodes/TwitchEmotes/TwitchEmotes.node.js.map +0 -1
  132. package/dist/nodes/TwitchEmotes/twitch.dark.svg +0 -1
  133. package/dist/nodes/TwitchEmotes/twitch.svg +0 -1
  134. package/dist/nodes/TwitchGames/TwitchGames.node.d.ts +0 -4
  135. package/dist/nodes/TwitchGames/TwitchGames.node.js +0 -230
  136. package/dist/nodes/TwitchGames/TwitchGames.node.js.map +0 -1
  137. package/dist/nodes/TwitchGames/twitch.dark.svg +0 -1
  138. package/dist/nodes/TwitchGames/twitch.svg +0 -1
  139. package/dist/nodes/TwitchModerators/TwitchModerators.node.d.ts +0 -4
  140. package/dist/nodes/TwitchModerators/TwitchModerators.node.js +0 -280
  141. package/dist/nodes/TwitchModerators/TwitchModerators.node.js.map +0 -1
  142. package/dist/nodes/TwitchModerators/twitch.dark.svg +0 -1
  143. package/dist/nodes/TwitchModerators/twitch.svg +0 -1
  144. package/dist/nodes/TwitchPolls/TwitchPolls.node.d.ts +0 -4
  145. package/dist/nodes/TwitchPolls/TwitchPolls.node.js +0 -422
  146. package/dist/nodes/TwitchPolls/TwitchPolls.node.js.map +0 -1
  147. package/dist/nodes/TwitchPolls/twitch.dark.svg +0 -1
  148. package/dist/nodes/TwitchPolls/twitch.svg +0 -1
  149. package/dist/nodes/TwitchPredictions/TwitchPredictions.node.d.ts +0 -4
  150. package/dist/nodes/TwitchPredictions/TwitchPredictions.node.js +0 -378
  151. package/dist/nodes/TwitchPredictions/TwitchPredictions.node.js.map +0 -1
  152. package/dist/nodes/TwitchPredictions/twitch.dark.svg +0 -1
  153. package/dist/nodes/TwitchPredictions/twitch.svg +0 -1
  154. package/dist/nodes/TwitchRaids/TwitchRaids.node.d.ts +0 -4
  155. package/dist/nodes/TwitchRaids/TwitchRaids.node.js +0 -162
  156. package/dist/nodes/TwitchRaids/TwitchRaids.node.js.map +0 -1
  157. package/dist/nodes/TwitchRaids/twitch.dark.svg +0 -1
  158. package/dist/nodes/TwitchRaids/twitch.svg +0 -1
  159. package/dist/nodes/TwitchRedemptions/TwitchRedemptions.node.d.ts +0 -4
  160. package/dist/nodes/TwitchRedemptions/TwitchRedemptions.node.js +0 -271
  161. package/dist/nodes/TwitchRedemptions/TwitchRedemptions.node.js.map +0 -1
  162. package/dist/nodes/TwitchRedemptions/twitch.dark.svg +0 -1
  163. package/dist/nodes/TwitchRedemptions/twitch.svg +0 -1
  164. package/dist/nodes/TwitchSchedule/TwitchSchedule.node.d.ts +0 -4
  165. package/dist/nodes/TwitchSchedule/TwitchSchedule.node.js +0 -427
  166. package/dist/nodes/TwitchSchedule/TwitchSchedule.node.js.map +0 -1
  167. package/dist/nodes/TwitchSchedule/twitch.dark.svg +0 -1
  168. package/dist/nodes/TwitchSchedule/twitch.svg +0 -1
  169. package/dist/nodes/TwitchSearch/TwitchSearch.node.d.ts +0 -4
  170. package/dist/nodes/TwitchSearch/TwitchSearch.node.js +0 -134
  171. package/dist/nodes/TwitchSearch/TwitchSearch.node.js.map +0 -1
  172. package/dist/nodes/TwitchSearch/twitch.dark.svg +0 -1
  173. package/dist/nodes/TwitchSearch/twitch.svg +0 -1
  174. package/dist/nodes/TwitchStreams/TwitchStreams.node.d.ts +0 -4
  175. package/dist/nodes/TwitchStreams/TwitchStreams.node.js +0 -94
  176. package/dist/nodes/TwitchStreams/TwitchStreams.node.js.map +0 -1
  177. package/dist/nodes/TwitchStreams/twitch.dark.svg +0 -1
  178. package/dist/nodes/TwitchStreams/twitch.svg +0 -1
  179. package/dist/nodes/TwitchSubscriptions/TwitchSubscriptions.node.d.ts +0 -4
  180. package/dist/nodes/TwitchSubscriptions/TwitchSubscriptions.node.js +0 -202
  181. package/dist/nodes/TwitchSubscriptions/TwitchSubscriptions.node.js.map +0 -1
  182. package/dist/nodes/TwitchSubscriptions/twitch.dark.svg +0 -1
  183. package/dist/nodes/TwitchSubscriptions/twitch.svg +0 -1
  184. package/dist/nodes/TwitchTeams/TwitchTeams.node.d.ts +0 -4
  185. package/dist/nodes/TwitchTeams/TwitchTeams.node.js +0 -189
  186. package/dist/nodes/TwitchTeams/TwitchTeams.node.js.map +0 -1
  187. package/dist/nodes/TwitchTeams/twitch.dark.svg +0 -1
  188. package/dist/nodes/TwitchTeams/twitch.svg +0 -1
  189. package/dist/nodes/TwitchUsers/TwitchUsers.node.d.ts +0 -4
  190. package/dist/nodes/TwitchUsers/TwitchUsers.node.js +0 -94
  191. package/dist/nodes/TwitchUsers/TwitchUsers.node.js.map +0 -1
  192. package/dist/nodes/TwitchUsers/twitch.dark.svg +0 -1
  193. package/dist/nodes/TwitchUsers/twitch.svg +0 -1
  194. package/dist/nodes/TwitchVideos/TwitchVideos.node.d.ts +0 -4
  195. package/dist/nodes/TwitchVideos/TwitchVideos.node.js +0 -341
  196. package/dist/nodes/TwitchVideos/TwitchVideos.node.js.map +0 -1
  197. package/dist/nodes/TwitchVideos/twitch.dark.svg +0 -1
  198. package/dist/nodes/TwitchVideos/twitch.svg +0 -1
  199. package/dist/nodes/TwitchWhispers/TwitchWhispers.node.d.ts +0 -4
  200. package/dist/nodes/TwitchWhispers/TwitchWhispers.node.js +0 -105
  201. package/dist/nodes/TwitchWhispers/TwitchWhispers.node.js.map +0 -1
  202. package/dist/nodes/TwitchWhispers/twitch.dark.svg +0 -1
  203. package/dist/nodes/TwitchWhispers/twitch.svg +0 -1
  204. /package/dist/nodes/{TwitchAnnouncements → Twitch}/twitch.dark.svg +0 -0
  205. /package/dist/nodes/{TwitchAnnouncements → Twitch}/twitch.svg +0 -0
@@ -1,4 +0,0 @@
1
- import { type INodeType, type INodeTypeDescription } from 'n8n-workflow';
2
- export declare class TwitchVideos implements INodeType {
3
- description: INodeTypeDescription;
4
- }
@@ -1,341 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TwitchVideos = void 0;
4
- const n8n_workflow_1 = require("n8n-workflow");
5
- class TwitchVideos {
6
- constructor() {
7
- this.description = {
8
- displayName: 'Twitch Videos',
9
- name: 'twitchVideos',
10
- icon: { light: 'file:twitch.svg', dark: 'file:twitch.dark.svg' },
11
- group: ['transform'],
12
- version: 1,
13
- subtitle: '={{$parameter["operation"]}}',
14
- description: 'Interact with Twitch Videos API',
15
- defaults: {
16
- name: 'Twitch Videos',
17
- },
18
- usableAsTool: true,
19
- inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
20
- outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
21
- credentials: [
22
- {
23
- name: 'twitchOAuth2Api',
24
- required: true,
25
- },
26
- ],
27
- requestDefaults: {
28
- baseURL: 'https://api.twitch.tv/helix',
29
- headers: {
30
- Accept: 'application/json',
31
- 'Content-Type': 'application/json',
32
- },
33
- },
34
- properties: [
35
- {
36
- displayName: 'Operation',
37
- name: 'operation',
38
- type: 'options',
39
- noDataExpression: true,
40
- options: [
41
- {
42
- name: 'Get Videos',
43
- value: 'getVideos',
44
- action: 'Get videos',
45
- description: 'Get videos by user ID, game ID, or video ID',
46
- routing: {
47
- request: {
48
- method: 'GET',
49
- url: '/videos',
50
- },
51
- send: {
52
- preSend: [
53
- async function (requestOptions) {
54
- const queryBy = this.getNodeParameter('queryBy', 0);
55
- const qs = {};
56
- if (queryBy === 'userId') {
57
- const userId = this.getNodeParameter('userId', 0);
58
- qs.user_id = userId;
59
- }
60
- else if (queryBy === 'gameId') {
61
- const gameId = this.getNodeParameter('gameId', 0);
62
- qs.game_id = gameId;
63
- }
64
- else if (queryBy === 'videoId') {
65
- const videoIds = this.getNodeParameter('videoIds', 0);
66
- qs.id = videoIds;
67
- }
68
- const additionalFields = this.getNodeParameter('additionalFields', 0, {});
69
- if (additionalFields.first) {
70
- qs.first = additionalFields.first;
71
- }
72
- if (additionalFields.language) {
73
- qs.language = additionalFields.language;
74
- }
75
- if (additionalFields.period) {
76
- qs.period = additionalFields.period;
77
- }
78
- if (additionalFields.sort) {
79
- qs.sort = additionalFields.sort;
80
- }
81
- if (additionalFields.type) {
82
- qs.type = additionalFields.type;
83
- }
84
- requestOptions.qs = qs;
85
- return requestOptions;
86
- },
87
- ],
88
- },
89
- output: {
90
- postReceive: [
91
- {
92
- type: 'rootProperty',
93
- properties: {
94
- property: 'data',
95
- },
96
- },
97
- ],
98
- },
99
- },
100
- },
101
- {
102
- name: 'Delete Videos',
103
- value: 'deleteVideos',
104
- action: 'Delete videos',
105
- description: 'Delete one or more videos (requires OAuth2 with channel:manage:videos scope)',
106
- routing: {
107
- request: {
108
- method: 'DELETE',
109
- url: '/videos',
110
- },
111
- send: {
112
- preSend: [
113
- async function (requestOptions) {
114
- const videoIds = this.getNodeParameter('deleteVideoIds', 0);
115
- requestOptions.qs = {
116
- id: videoIds,
117
- };
118
- return requestOptions;
119
- },
120
- ],
121
- },
122
- },
123
- },
124
- ],
125
- default: 'getVideos',
126
- },
127
- {
128
- displayName: 'Query By',
129
- name: 'queryBy',
130
- type: 'options',
131
- displayOptions: {
132
- show: {
133
- operation: ['getVideos'],
134
- },
135
- },
136
- options: [
137
- {
138
- name: 'User ID',
139
- value: 'userId',
140
- description: 'Get videos by user ID',
141
- },
142
- {
143
- name: 'Game ID',
144
- value: 'gameId',
145
- description: 'Get videos by game ID',
146
- },
147
- {
148
- name: 'Video ID',
149
- value: 'videoId',
150
- description: 'Get videos by video ID(s)',
151
- },
152
- ],
153
- default: 'userId',
154
- required: true,
155
- description: 'How to query for videos (at least one required)',
156
- },
157
- {
158
- displayName: 'User ID',
159
- name: 'userId',
160
- type: 'string',
161
- displayOptions: {
162
- show: {
163
- operation: ['getVideos'],
164
- queryBy: ['userId'],
165
- },
166
- },
167
- default: '',
168
- required: true,
169
- placeholder: 'e.g. 123456789',
170
- description: 'ID of the user who owns the videos',
171
- },
172
- {
173
- displayName: 'Game ID',
174
- name: 'gameId',
175
- type: 'string',
176
- displayOptions: {
177
- show: {
178
- operation: ['getVideos'],
179
- queryBy: ['gameId'],
180
- },
181
- },
182
- default: '',
183
- required: true,
184
- placeholder: 'e.g. 493057',
185
- description: 'ID of the game the videos are of',
186
- },
187
- {
188
- displayName: 'Video IDs',
189
- name: 'videoIds',
190
- type: 'string',
191
- displayOptions: {
192
- show: {
193
- operation: ['getVideos'],
194
- queryBy: ['videoId'],
195
- },
196
- },
197
- default: '',
198
- required: true,
199
- placeholder: 'e.g. 234482848 or 234482848,234482850',
200
- description: 'ID(s) of the video(s). Separate multiple IDs with commas. Maximum 100 IDs.',
201
- },
202
- {
203
- displayName: 'Additional Fields',
204
- name: 'additionalFields',
205
- type: 'collection',
206
- placeholder: 'Add Field',
207
- default: {},
208
- displayOptions: {
209
- show: {
210
- operation: ['getVideos'],
211
- },
212
- },
213
- options: [
214
- {
215
- displayName: 'First',
216
- name: 'first',
217
- type: 'number',
218
- default: 20,
219
- typeOptions: {
220
- minValue: 1,
221
- maxValue: 100,
222
- },
223
- description: 'Maximum number of videos to return. Default: 20. Max: 100.',
224
- },
225
- {
226
- displayName: 'Language',
227
- name: 'language',
228
- type: 'string',
229
- default: '',
230
- placeholder: 'e.g. en',
231
- description: 'Language of the videos to return (ISO 639-1 two-letter code)',
232
- },
233
- {
234
- displayName: 'Period',
235
- name: 'period',
236
- type: 'options',
237
- options: [
238
- {
239
- name: 'All',
240
- value: 'all',
241
- },
242
- {
243
- name: 'Day',
244
- value: 'day',
245
- },
246
- {
247
- name: 'Month',
248
- value: 'month',
249
- },
250
- {
251
- name: 'Week',
252
- value: 'week',
253
- },
254
- ],
255
- default: 'all',
256
- description: 'Period during which the videos were created',
257
- },
258
- {
259
- displayName: 'Sort',
260
- name: 'sort',
261
- type: 'options',
262
- options: [
263
- {
264
- name: 'Time',
265
- value: 'time',
266
- description: 'Sort by creation time (newest first)',
267
- },
268
- {
269
- name: 'Trending',
270
- value: 'trending',
271
- description: 'Sort by trending',
272
- },
273
- {
274
- name: 'Views',
275
- value: 'views',
276
- description: 'Sort by view count (highest first)',
277
- },
278
- ],
279
- default: 'time',
280
- description: 'Sort order of the videos',
281
- },
282
- {
283
- displayName: 'Type',
284
- name: 'type',
285
- type: 'options',
286
- options: [
287
- {
288
- name: 'All',
289
- value: 'all',
290
- },
291
- {
292
- name: 'Archive',
293
- value: 'archive',
294
- description: 'Past broadcasts',
295
- },
296
- {
297
- name: 'Highlight',
298
- value: 'highlight',
299
- },
300
- {
301
- name: 'Upload',
302
- value: 'upload',
303
- },
304
- ],
305
- default: 'all',
306
- description: 'Type of videos to return',
307
- },
308
- ],
309
- },
310
- {
311
- displayName: 'Video IDs',
312
- name: 'deleteVideoIds',
313
- type: 'string',
314
- displayOptions: {
315
- show: {
316
- operation: ['deleteVideos'],
317
- },
318
- },
319
- default: '',
320
- required: true,
321
- placeholder: 'e.g. 234482848 or 234482848,234482850',
322
- description: 'ID(s) of the video(s) to delete. Separate multiple IDs with commas. Maximum 5 IDs.',
323
- },
324
- {
325
- displayName: 'Note',
326
- name: 'deleteNote',
327
- type: 'notice',
328
- default: '',
329
- displayOptions: {
330
- show: {
331
- operation: ['deleteVideos'],
332
- },
333
- },
334
- description: 'Requires OAuth2 authentication with channel:manage:videos scope. You can only delete videos owned by the authenticated user.',
335
- },
336
- ],
337
- };
338
- }
339
- }
340
- exports.TwitchVideos = TwitchVideos;
341
- //# sourceMappingURL=TwitchVideos.node.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TwitchVideos.node.js","sourceRoot":"","sources":["../../../nodes/TwitchVideos/TwitchVideos.node.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Twitch</title><path fill="#FFFFFF" d="M11.571 4.714h1.715v5.143H11.57zm4.715 0H18v5.143h-1.714zM6 0L1.714 4.286v15.428h5.143V24l4.286-4.286h3.428L22.286 12V0zm14.571 11.143l-3.428 3.428h-3.429l-3 3v-3H6.857V1.714h13.714Z"/></svg>
@@ -1 +0,0 @@
1
- <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Twitch</title><path d="M11.571 4.714h1.715v5.143H11.57zm4.715 0H18v5.143h-1.714zM6 0L1.714 4.286v15.428h5.143V24l4.286-4.286h3.428L22.286 12V0zm14.571 11.143l-3.428 3.428h-3.429l-3 3v-3H6.857V1.714h13.714Z"/></svg>
@@ -1,4 +0,0 @@
1
- import { type INodeType, type INodeTypeDescription } from 'n8n-workflow';
2
- export declare class TwitchWhispers implements INodeType {
3
- description: INodeTypeDescription;
4
- }
@@ -1,105 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TwitchWhispers = void 0;
4
- const n8n_workflow_1 = require("n8n-workflow");
5
- class TwitchWhispers {
6
- constructor() {
7
- this.description = {
8
- displayName: 'Twitch Whispers',
9
- name: 'twitchWhispers',
10
- icon: { light: 'file:twitch.svg', dark: 'file:twitch.dark.svg' },
11
- group: ['transform'],
12
- version: 1,
13
- subtitle: '={{$parameter["operation"]}}',
14
- description: 'Interact with Twitch Whispers API',
15
- defaults: {
16
- name: 'Twitch Whispers',
17
- },
18
- usableAsTool: true,
19
- inputs: [n8n_workflow_1.NodeConnectionTypes.Main],
20
- outputs: [n8n_workflow_1.NodeConnectionTypes.Main],
21
- credentials: [
22
- {
23
- name: 'twitchOAuth2Api',
24
- required: true,
25
- },
26
- ],
27
- requestDefaults: {
28
- baseURL: 'https://api.twitch.tv/helix',
29
- headers: {
30
- Accept: 'application/json',
31
- 'Content-Type': 'application/json',
32
- },
33
- },
34
- properties: [
35
- {
36
- displayName: 'Operation',
37
- name: 'operation',
38
- type: 'options',
39
- noDataExpression: true,
40
- options: [
41
- {
42
- name: 'Send Whisper',
43
- value: 'sendWhisper',
44
- action: 'Send a whisper',
45
- description: 'Send a whisper message to a user',
46
- routing: {
47
- request: {
48
- method: 'POST',
49
- url: '/whispers',
50
- },
51
- send: {
52
- preSend: [
53
- async function (requestOptions) {
54
- const fromUserId = this.getNodeParameter('fromUserId', 0);
55
- const toUserId = this.getNodeParameter('toUserId', 0);
56
- const message = this.getNodeParameter('message', 0);
57
- requestOptions.qs = {
58
- from_user_id: fromUserId,
59
- to_user_id: toUserId,
60
- };
61
- requestOptions.body = {
62
- message,
63
- };
64
- return requestOptions;
65
- },
66
- ],
67
- },
68
- },
69
- },
70
- ],
71
- default: 'sendWhisper',
72
- },
73
- {
74
- displayName: 'From User ID',
75
- name: 'fromUserId',
76
- type: 'string',
77
- required: true,
78
- default: '',
79
- placeholder: 'e.g. 123456789',
80
- description: 'The ID of the user sending the whisper',
81
- },
82
- {
83
- displayName: 'To User ID',
84
- name: 'toUserId',
85
- type: 'string',
86
- required: true,
87
- default: '',
88
- placeholder: 'e.g. 987654321',
89
- description: 'The ID of the user to receive the whisper',
90
- },
91
- {
92
- displayName: 'Message',
93
- name: 'message',
94
- type: 'string',
95
- required: true,
96
- default: '',
97
- placeholder: 'e.g. Hello from n8n!',
98
- description: 'The whisper message to send (maximum 500 characters)',
99
- },
100
- ],
101
- };
102
- }
103
- }
104
- exports.TwitchWhispers = TwitchWhispers;
105
- //# sourceMappingURL=TwitchWhispers.node.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TwitchWhispers.node.js","sourceRoot":"","sources":["../../../nodes/TwitchWhispers/TwitchWhispers.node.ts"],"names":[],"mappings":";;;AAAA,+CAA8F;AAE9F,MAAa,cAAc;IAA3B;QACC,gBAAW,GAAyB;YACnC,WAAW,EAAE,iBAAiB;YAC9B,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,sBAAsB,EAAE;YAChE,KAAK,EAAE,CAAC,WAAW,CAAC;YACpB,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,8BAA8B;YACxC,WAAW,EAAE,mCAAmC;YAChD,QAAQ,EAAE;gBACT,IAAI,EAAE,iBAAiB;aACvB;YACD,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YAClC,OAAO,EAAE,CAAC,kCAAmB,CAAC,IAAI,CAAC;YACnC,WAAW,EAAE;gBACZ;oBACC,IAAI,EAAE,iBAAiB;oBACvB,QAAQ,EAAE,IAAI;iBACd;aACD;YACD,eAAe,EAAE;gBAChB,OAAO,EAAE,6BAA6B;gBACtC,OAAO,EAAE;oBACR,MAAM,EAAE,kBAAkB;oBAC1B,cAAc,EAAE,kBAAkB;iBAClC;aACD;YACD,UAAU,EAAE;gBACX;oBACC,WAAW,EAAE,WAAW;oBACxB,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,SAAS;oBACf,gBAAgB,EAAE,IAAI;oBACtB,OAAO,EAAE;wBACR;4BACC,IAAI,EAAE,cAAc;4BACpB,KAAK,EAAE,aAAa;4BACpB,MAAM,EAAE,gBAAgB;4BACxB,WAAW,EAAE,kCAAkC;4BAC/C,OAAO,EAAE;gCACR,OAAO,EAAE;oCACR,MAAM,EAAE,MAAM;oCACd,GAAG,EAAE,WAAW;iCAChB;gCACD,IAAI,EAAE;oCACL,OAAO,EAAE;wCACR,KAAK,WAAiB,cAAc;4CACnC,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC,CAAW,CAAC;4CACpE,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAW,CAAC;4CAChE,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAW,CAAC;4CAE9D,cAAc,CAAC,EAAE,GAAG;gDACnB,YAAY,EAAE,UAAU;gDACxB,UAAU,EAAE,QAAQ;6CACpB,CAAC;4CAEF,cAAc,CAAC,IAAI,GAAG;gDACrB,OAAO;6CACP,CAAC;4CAEF,OAAO,cAAc,CAAC;wCACvB,CAAC;qCACD;iCACD;6BACD;yBACD;qBACD;oBACD,OAAO,EAAE,aAAa;iBACtB;gBACD;oBACC,WAAW,EAAE,cAAc;oBAC3B,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,gBAAgB;oBAC7B,WAAW,EAAE,wCAAwC;iBACrD;gBACD;oBACC,WAAW,EAAE,YAAY;oBACzB,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,gBAAgB;oBAC7B,WAAW,EAAE,2CAA2C;iBACxD;gBACD;oBACC,WAAW,EAAE,SAAS;oBACtB,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,IAAI;oBACd,OAAO,EAAE,EAAE;oBACX,WAAW,EAAE,sBAAsB;oBACnC,WAAW,EAAE,sDAAsD;iBACnE;aACD;SACD,CAAC;IACH,CAAC;CAAA;AAnGD,wCAmGC"}
@@ -1 +0,0 @@
1
- <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Twitch</title><path fill="#FFFFFF" d="M11.571 4.714h1.715v5.143H11.57zm4.715 0H18v5.143h-1.714zM6 0L1.714 4.286v15.428h5.143V24l4.286-4.286h3.428L22.286 12V0zm14.571 11.143l-3.428 3.428h-3.429l-3 3v-3H6.857V1.714h13.714Z"/></svg>
@@ -1 +0,0 @@
1
- <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Twitch</title><path d="M11.571 4.714h1.715v5.143H11.57zm4.715 0H18v5.143h-1.714zM6 0L1.714 4.286v15.428h5.143V24l4.286-4.286h3.428L22.286 12V0zm14.571 11.143l-3.428 3.428h-3.429l-3 3v-3H6.857V1.714h13.714Z"/></svg>