@memberjunction/actions-bizapps-social 2.61.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.
Files changed (458) hide show
  1. package/.turbo/turbo-build.log +4 -0
  2. package/CHANGELOG.md +16 -0
  3. package/README.md +375 -0
  4. package/dist/base/base-social.action.d.ts +137 -0
  5. package/dist/base/base-social.action.d.ts.map +1 -0
  6. package/dist/base/base-social.action.js +176 -0
  7. package/dist/base/base-social.action.js.map +1 -0
  8. package/dist/index.d.ts +10 -0
  9. package/dist/index.d.ts.map +1 -0
  10. package/dist/index.js +35 -0
  11. package/dist/index.js.map +1 -0
  12. package/dist/providers/buffer/actions/create-post.action.d.ts +20 -0
  13. package/dist/providers/buffer/actions/create-post.action.d.ts.map +1 -0
  14. package/dist/providers/buffer/actions/create-post.action.js +195 -0
  15. package/dist/providers/buffer/actions/create-post.action.js.map +1 -0
  16. package/dist/providers/buffer/actions/delete-post.action.d.ts +20 -0
  17. package/dist/providers/buffer/actions/delete-post.action.d.ts.map +1 -0
  18. package/dist/providers/buffer/actions/delete-post.action.js +119 -0
  19. package/dist/providers/buffer/actions/delete-post.action.js.map +1 -0
  20. package/dist/providers/buffer/actions/get-analytics.action.d.ts +28 -0
  21. package/dist/providers/buffer/actions/get-analytics.action.d.ts.map +1 -0
  22. package/dist/providers/buffer/actions/get-analytics.action.js +143 -0
  23. package/dist/providers/buffer/actions/get-analytics.action.js.map +1 -0
  24. package/dist/providers/buffer/actions/get-pending-posts.action.d.ts +24 -0
  25. package/dist/providers/buffer/actions/get-pending-posts.action.d.ts.map +1 -0
  26. package/dist/providers/buffer/actions/get-pending-posts.action.js +161 -0
  27. package/dist/providers/buffer/actions/get-pending-posts.action.js.map +1 -0
  28. package/dist/providers/buffer/actions/get-profiles.action.d.ts +24 -0
  29. package/dist/providers/buffer/actions/get-profiles.action.d.ts.map +1 -0
  30. package/dist/providers/buffer/actions/get-profiles.action.js +128 -0
  31. package/dist/providers/buffer/actions/get-profiles.action.js.map +1 -0
  32. package/dist/providers/buffer/actions/get-sent-posts.action.d.ts +32 -0
  33. package/dist/providers/buffer/actions/get-sent-posts.action.d.ts.map +1 -0
  34. package/dist/providers/buffer/actions/get-sent-posts.action.js +187 -0
  35. package/dist/providers/buffer/actions/get-sent-posts.action.js.map +1 -0
  36. package/dist/providers/buffer/actions/index.d.ts +9 -0
  37. package/dist/providers/buffer/actions/index.d.ts.map +1 -0
  38. package/dist/providers/buffer/actions/index.js +25 -0
  39. package/dist/providers/buffer/actions/index.js.map +1 -0
  40. package/dist/providers/buffer/actions/reorder-queue.action.d.ts +20 -0
  41. package/dist/providers/buffer/actions/reorder-queue.action.d.ts.map +1 -0
  42. package/dist/providers/buffer/actions/reorder-queue.action.js +138 -0
  43. package/dist/providers/buffer/actions/reorder-queue.action.js.map +1 -0
  44. package/dist/providers/buffer/actions/search-posts.action.d.ts +28 -0
  45. package/dist/providers/buffer/actions/search-posts.action.d.ts.map +1 -0
  46. package/dist/providers/buffer/actions/search-posts.action.js +249 -0
  47. package/dist/providers/buffer/actions/search-posts.action.js.map +1 -0
  48. package/dist/providers/buffer/buffer-base.action.d.ts +95 -0
  49. package/dist/providers/buffer/buffer-base.action.d.ts.map +1 -0
  50. package/dist/providers/buffer/buffer-base.action.js +419 -0
  51. package/dist/providers/buffer/buffer-base.action.js.map +1 -0
  52. package/dist/providers/buffer/index.d.ts +3 -0
  53. package/dist/providers/buffer/index.d.ts.map +1 -0
  54. package/dist/providers/buffer/index.js +19 -0
  55. package/dist/providers/buffer/index.js.map +1 -0
  56. package/dist/providers/facebook/actions/boost-post.action.d.ts +45 -0
  57. package/dist/providers/facebook/actions/boost-post.action.d.ts.map +1 -0
  58. package/dist/providers/facebook/actions/boost-post.action.js +340 -0
  59. package/dist/providers/facebook/actions/boost-post.action.js.map +1 -0
  60. package/dist/providers/facebook/actions/create-album.action.d.ts +33 -0
  61. package/dist/providers/facebook/actions/create-album.action.d.ts.map +1 -0
  62. package/dist/providers/facebook/actions/create-album.action.js +285 -0
  63. package/dist/providers/facebook/actions/create-album.action.js.map +1 -0
  64. package/dist/providers/facebook/actions/create-post.action.d.ts +21 -0
  65. package/dist/providers/facebook/actions/create-post.action.d.ts.map +1 -0
  66. package/dist/providers/facebook/actions/create-post.action.js +223 -0
  67. package/dist/providers/facebook/actions/create-post.action.js.map +1 -0
  68. package/dist/providers/facebook/actions/get-page-insights.action.d.ts +37 -0
  69. package/dist/providers/facebook/actions/get-page-insights.action.d.ts.map +1 -0
  70. package/dist/providers/facebook/actions/get-page-insights.action.js +359 -0
  71. package/dist/providers/facebook/actions/get-page-insights.action.js.map +1 -0
  72. package/dist/providers/facebook/actions/get-page-posts.action.d.ts +29 -0
  73. package/dist/providers/facebook/actions/get-page-posts.action.d.ts.map +1 -0
  74. package/dist/providers/facebook/actions/get-page-posts.action.js +216 -0
  75. package/dist/providers/facebook/actions/get-page-posts.action.js.map +1 -0
  76. package/dist/providers/facebook/actions/get-post-insights.action.d.ts +33 -0
  77. package/dist/providers/facebook/actions/get-post-insights.action.d.ts.map +1 -0
  78. package/dist/providers/facebook/actions/get-post-insights.action.js +287 -0
  79. package/dist/providers/facebook/actions/get-post-insights.action.js.map +1 -0
  80. package/dist/providers/facebook/actions/index.d.ts +10 -0
  81. package/dist/providers/facebook/actions/index.d.ts.map +1 -0
  82. package/dist/providers/facebook/actions/index.js +26 -0
  83. package/dist/providers/facebook/actions/index.js.map +1 -0
  84. package/dist/providers/facebook/actions/respond-to-comments.action.d.ts +41 -0
  85. package/dist/providers/facebook/actions/respond-to-comments.action.d.ts.map +1 -0
  86. package/dist/providers/facebook/actions/respond-to-comments.action.js +328 -0
  87. package/dist/providers/facebook/actions/respond-to-comments.action.js.map +1 -0
  88. package/dist/providers/facebook/actions/schedule-post.action.d.ts +29 -0
  89. package/dist/providers/facebook/actions/schedule-post.action.d.ts.map +1 -0
  90. package/dist/providers/facebook/actions/schedule-post.action.js +289 -0
  91. package/dist/providers/facebook/actions/schedule-post.action.js.map +1 -0
  92. package/dist/providers/facebook/actions/search-posts.action.d.ts +54 -0
  93. package/dist/providers/facebook/actions/search-posts.action.d.ts.map +1 -0
  94. package/dist/providers/facebook/actions/search-posts.action.js +396 -0
  95. package/dist/providers/facebook/actions/search-posts.action.js.map +1 -0
  96. package/dist/providers/facebook/facebook-base.action.d.ts +230 -0
  97. package/dist/providers/facebook/facebook-base.action.d.ts.map +1 -0
  98. package/dist/providers/facebook/facebook-base.action.js +566 -0
  99. package/dist/providers/facebook/facebook-base.action.js.map +1 -0
  100. package/dist/providers/facebook/index.d.ts +3 -0
  101. package/dist/providers/facebook/index.d.ts.map +1 -0
  102. package/dist/providers/facebook/index.js +19 -0
  103. package/dist/providers/facebook/index.js.map +1 -0
  104. package/dist/providers/hootsuite/actions/bulk-schedule-posts.action.d.ts +24 -0
  105. package/dist/providers/hootsuite/actions/bulk-schedule-posts.action.d.ts.map +1 -0
  106. package/dist/providers/hootsuite/actions/bulk-schedule-posts.action.js +266 -0
  107. package/dist/providers/hootsuite/actions/bulk-schedule-posts.action.js.map +1 -0
  108. package/dist/providers/hootsuite/actions/create-scheduled-post.action.d.ts +25 -0
  109. package/dist/providers/hootsuite/actions/create-scheduled-post.action.d.ts.map +1 -0
  110. package/dist/providers/hootsuite/actions/create-scheduled-post.action.js +202 -0
  111. package/dist/providers/hootsuite/actions/create-scheduled-post.action.js.map +1 -0
  112. package/dist/providers/hootsuite/actions/delete-scheduled-post.action.d.ts +20 -0
  113. package/dist/providers/hootsuite/actions/delete-scheduled-post.action.d.ts.map +1 -0
  114. package/dist/providers/hootsuite/actions/delete-scheduled-post.action.js +172 -0
  115. package/dist/providers/hootsuite/actions/delete-scheduled-post.action.js.map +1 -0
  116. package/dist/providers/hootsuite/actions/get-analytics.action.d.ts +52 -0
  117. package/dist/providers/hootsuite/actions/get-analytics.action.d.ts.map +1 -0
  118. package/dist/providers/hootsuite/actions/get-analytics.action.js +265 -0
  119. package/dist/providers/hootsuite/actions/get-analytics.action.js.map +1 -0
  120. package/dist/providers/hootsuite/actions/get-scheduled-posts.action.d.ts +37 -0
  121. package/dist/providers/hootsuite/actions/get-scheduled-posts.action.d.ts.map +1 -0
  122. package/dist/providers/hootsuite/actions/get-scheduled-posts.action.js +208 -0
  123. package/dist/providers/hootsuite/actions/get-scheduled-posts.action.js.map +1 -0
  124. package/dist/providers/hootsuite/actions/get-social-profiles.action.d.ts +36 -0
  125. package/dist/providers/hootsuite/actions/get-social-profiles.action.d.ts.map +1 -0
  126. package/dist/providers/hootsuite/actions/get-social-profiles.action.js +212 -0
  127. package/dist/providers/hootsuite/actions/get-social-profiles.action.js.map +1 -0
  128. package/dist/providers/hootsuite/actions/search-posts.action.d.ts +53 -0
  129. package/dist/providers/hootsuite/actions/search-posts.action.d.ts.map +1 -0
  130. package/dist/providers/hootsuite/actions/search-posts.action.js +353 -0
  131. package/dist/providers/hootsuite/actions/search-posts.action.js.map +1 -0
  132. package/dist/providers/hootsuite/actions/update-scheduled-post.action.d.ts +20 -0
  133. package/dist/providers/hootsuite/actions/update-scheduled-post.action.d.ts.map +1 -0
  134. package/dist/providers/hootsuite/actions/update-scheduled-post.action.js +217 -0
  135. package/dist/providers/hootsuite/actions/update-scheduled-post.action.js.map +1 -0
  136. package/dist/providers/hootsuite/hootsuite-base.action.d.ts +101 -0
  137. package/dist/providers/hootsuite/hootsuite-base.action.d.ts.map +1 -0
  138. package/dist/providers/hootsuite/hootsuite-base.action.js +274 -0
  139. package/dist/providers/hootsuite/hootsuite-base.action.js.map +1 -0
  140. package/dist/providers/hootsuite/index.d.ts +10 -0
  141. package/dist/providers/hootsuite/index.d.ts.map +1 -0
  142. package/dist/providers/hootsuite/index.js +28 -0
  143. package/dist/providers/hootsuite/index.js.map +1 -0
  144. package/dist/providers/instagram/actions/create-post.action.d.ts +30 -0
  145. package/dist/providers/instagram/actions/create-post.action.d.ts.map +1 -0
  146. package/dist/providers/instagram/actions/create-post.action.js +269 -0
  147. package/dist/providers/instagram/actions/create-post.action.js.map +1 -0
  148. package/dist/providers/instagram/actions/create-story.action.d.ts +43 -0
  149. package/dist/providers/instagram/actions/create-story.action.d.ts.map +1 -0
  150. package/dist/providers/instagram/actions/create-story.action.js +365 -0
  151. package/dist/providers/instagram/actions/create-story.action.js.map +1 -0
  152. package/dist/providers/instagram/actions/get-account-insights.action.d.ts +50 -0
  153. package/dist/providers/instagram/actions/get-account-insights.action.d.ts.map +1 -0
  154. package/dist/providers/instagram/actions/get-account-insights.action.js +390 -0
  155. package/dist/providers/instagram/actions/get-account-insights.action.js.map +1 -0
  156. package/dist/providers/instagram/actions/get-business-posts.action.d.ts +30 -0
  157. package/dist/providers/instagram/actions/get-business-posts.action.d.ts.map +1 -0
  158. package/dist/providers/instagram/actions/get-business-posts.action.js +246 -0
  159. package/dist/providers/instagram/actions/get-business-posts.action.js.map +1 -0
  160. package/dist/providers/instagram/actions/get-comments.action.d.ts +41 -0
  161. package/dist/providers/instagram/actions/get-comments.action.d.ts.map +1 -0
  162. package/dist/providers/instagram/actions/get-comments.action.js +337 -0
  163. package/dist/providers/instagram/actions/get-comments.action.js.map +1 -0
  164. package/dist/providers/instagram/actions/get-post-insights.action.d.ts +42 -0
  165. package/dist/providers/instagram/actions/get-post-insights.action.d.ts.map +1 -0
  166. package/dist/providers/instagram/actions/get-post-insights.action.js +271 -0
  167. package/dist/providers/instagram/actions/get-post-insights.action.js.map +1 -0
  168. package/dist/providers/instagram/actions/index.d.ts +9 -0
  169. package/dist/providers/instagram/actions/index.d.ts.map +1 -0
  170. package/dist/providers/instagram/actions/index.js +26 -0
  171. package/dist/providers/instagram/actions/index.js.map +1 -0
  172. package/dist/providers/instagram/actions/schedule-post.action.d.ts +34 -0
  173. package/dist/providers/instagram/actions/schedule-post.action.d.ts.map +1 -0
  174. package/dist/providers/instagram/actions/schedule-post.action.js +234 -0
  175. package/dist/providers/instagram/actions/schedule-post.action.js.map +1 -0
  176. package/dist/providers/instagram/actions/search-posts.action.d.ts +56 -0
  177. package/dist/providers/instagram/actions/search-posts.action.d.ts.map +1 -0
  178. package/dist/providers/instagram/actions/search-posts.action.js +479 -0
  179. package/dist/providers/instagram/actions/search-posts.action.js.map +1 -0
  180. package/dist/providers/instagram/index.d.ts +3 -0
  181. package/dist/providers/instagram/index.d.ts.map +1 -0
  182. package/dist/providers/instagram/index.js +20 -0
  183. package/dist/providers/instagram/index.js.map +1 -0
  184. package/dist/providers/instagram/instagram-base.action.d.ts +76 -0
  185. package/dist/providers/instagram/instagram-base.action.d.ts.map +1 -0
  186. package/dist/providers/instagram/instagram-base.action.js +362 -0
  187. package/dist/providers/instagram/instagram-base.action.js.map +1 -0
  188. package/dist/providers/linkedin/actions/create-article.action.d.ts +28 -0
  189. package/dist/providers/linkedin/actions/create-article.action.d.ts.map +1 -0
  190. package/dist/providers/linkedin/actions/create-article.action.js +275 -0
  191. package/dist/providers/linkedin/actions/create-article.action.js.map +1 -0
  192. package/dist/providers/linkedin/actions/create-post.action.d.ts +20 -0
  193. package/dist/providers/linkedin/actions/create-post.action.d.ts.map +1 -0
  194. package/dist/providers/linkedin/actions/create-post.action.js +188 -0
  195. package/dist/providers/linkedin/actions/create-post.action.js.map +1 -0
  196. package/dist/providers/linkedin/actions/get-followers.action.d.ts +29 -0
  197. package/dist/providers/linkedin/actions/get-followers.action.d.ts.map +1 -0
  198. package/dist/providers/linkedin/actions/get-followers.action.js +222 -0
  199. package/dist/providers/linkedin/actions/get-followers.action.js.map +1 -0
  200. package/dist/providers/linkedin/actions/get-organization-posts.action.d.ts +24 -0
  201. package/dist/providers/linkedin/actions/get-organization-posts.action.d.ts.map +1 -0
  202. package/dist/providers/linkedin/actions/get-organization-posts.action.js +163 -0
  203. package/dist/providers/linkedin/actions/get-organization-posts.action.js.map +1 -0
  204. package/dist/providers/linkedin/actions/get-personal-posts.action.d.ts +25 -0
  205. package/dist/providers/linkedin/actions/get-personal-posts.action.d.ts.map +1 -0
  206. package/dist/providers/linkedin/actions/get-personal-posts.action.js +156 -0
  207. package/dist/providers/linkedin/actions/get-personal-posts.action.js.map +1 -0
  208. package/dist/providers/linkedin/actions/get-post-analytics.action.d.ts +28 -0
  209. package/dist/providers/linkedin/actions/get-post-analytics.action.d.ts.map +1 -0
  210. package/dist/providers/linkedin/actions/get-post-analytics.action.js +200 -0
  211. package/dist/providers/linkedin/actions/get-post-analytics.action.js.map +1 -0
  212. package/dist/providers/linkedin/actions/index.d.ts +9 -0
  213. package/dist/providers/linkedin/actions/index.d.ts.map +1 -0
  214. package/dist/providers/linkedin/actions/index.js +25 -0
  215. package/dist/providers/linkedin/actions/index.js.map +1 -0
  216. package/dist/providers/linkedin/actions/schedule-post.action.d.ts +22 -0
  217. package/dist/providers/linkedin/actions/schedule-post.action.d.ts.map +1 -0
  218. package/dist/providers/linkedin/actions/schedule-post.action.js +205 -0
  219. package/dist/providers/linkedin/actions/schedule-post.action.js.map +1 -0
  220. package/dist/providers/linkedin/actions/search-posts.action.d.ts +41 -0
  221. package/dist/providers/linkedin/actions/search-posts.action.d.ts.map +1 -0
  222. package/dist/providers/linkedin/actions/search-posts.action.js +292 -0
  223. package/dist/providers/linkedin/actions/search-posts.action.js.map +1 -0
  224. package/dist/providers/linkedin/index.d.ts +3 -0
  225. package/dist/providers/linkedin/index.d.ts.map +1 -0
  226. package/dist/providers/linkedin/index.js +19 -0
  227. package/dist/providers/linkedin/index.js.map +1 -0
  228. package/dist/providers/linkedin/linkedin-base.action.d.ts +166 -0
  229. package/dist/providers/linkedin/linkedin-base.action.d.ts.map +1 -0
  230. package/dist/providers/linkedin/linkedin-base.action.js +346 -0
  231. package/dist/providers/linkedin/linkedin-base.action.js.map +1 -0
  232. package/dist/providers/tiktok/actions/create-video-post.action.d.ts +21 -0
  233. package/dist/providers/tiktok/actions/create-video-post.action.d.ts.map +1 -0
  234. package/dist/providers/tiktok/actions/create-video-post.action.js +226 -0
  235. package/dist/providers/tiktok/actions/create-video-post.action.js.map +1 -0
  236. package/dist/providers/tiktok/actions/get-account-analytics.action.d.ts +32 -0
  237. package/dist/providers/tiktok/actions/get-account-analytics.action.d.ts.map +1 -0
  238. package/dist/providers/tiktok/actions/get-account-analytics.action.js +242 -0
  239. package/dist/providers/tiktok/actions/get-account-analytics.action.js.map +1 -0
  240. package/dist/providers/tiktok/actions/get-comments.action.d.ts +44 -0
  241. package/dist/providers/tiktok/actions/get-comments.action.d.ts.map +1 -0
  242. package/dist/providers/tiktok/actions/get-comments.action.js +290 -0
  243. package/dist/providers/tiktok/actions/get-comments.action.js.map +1 -0
  244. package/dist/providers/tiktok/actions/get-trending-hashtags.action.d.ts +48 -0
  245. package/dist/providers/tiktok/actions/get-trending-hashtags.action.d.ts.map +1 -0
  246. package/dist/providers/tiktok/actions/get-trending-hashtags.action.js +309 -0
  247. package/dist/providers/tiktok/actions/get-trending-hashtags.action.js.map +1 -0
  248. package/dist/providers/tiktok/actions/get-user-videos.action.d.ts +20 -0
  249. package/dist/providers/tiktok/actions/get-user-videos.action.d.ts.map +1 -0
  250. package/dist/providers/tiktok/actions/get-user-videos.action.js +131 -0
  251. package/dist/providers/tiktok/actions/get-user-videos.action.js.map +1 -0
  252. package/dist/providers/tiktok/actions/get-video-analytics.action.d.ts +28 -0
  253. package/dist/providers/tiktok/actions/get-video-analytics.action.d.ts.map +1 -0
  254. package/dist/providers/tiktok/actions/get-video-analytics.action.js +198 -0
  255. package/dist/providers/tiktok/actions/get-video-analytics.action.js.map +1 -0
  256. package/dist/providers/tiktok/actions/index.d.ts +8 -0
  257. package/dist/providers/tiktok/actions/index.d.ts.map +1 -0
  258. package/dist/providers/tiktok/actions/index.js +25 -0
  259. package/dist/providers/tiktok/actions/index.js.map +1 -0
  260. package/dist/providers/tiktok/actions/search-videos.action.d.ts +89 -0
  261. package/dist/providers/tiktok/actions/search-videos.action.d.ts.map +1 -0
  262. package/dist/providers/tiktok/actions/search-videos.action.js +653 -0
  263. package/dist/providers/tiktok/actions/search-videos.action.js.map +1 -0
  264. package/dist/providers/tiktok/index.d.ts +3 -0
  265. package/dist/providers/tiktok/index.d.ts.map +1 -0
  266. package/dist/providers/tiktok/index.js +20 -0
  267. package/dist/providers/tiktok/index.js.map +1 -0
  268. package/dist/providers/tiktok/tiktok-base.action.d.ts +87 -0
  269. package/dist/providers/tiktok/tiktok-base.action.d.ts.map +1 -0
  270. package/dist/providers/tiktok/tiktok-base.action.js +294 -0
  271. package/dist/providers/tiktok/tiktok-base.action.js.map +1 -0
  272. package/dist/providers/twitter/actions/create-thread.action.d.ts +28 -0
  273. package/dist/providers/twitter/actions/create-thread.action.d.ts.map +1 -0
  274. package/dist/providers/twitter/actions/create-thread.action.js +217 -0
  275. package/dist/providers/twitter/actions/create-thread.action.js.map +1 -0
  276. package/dist/providers/twitter/actions/create-tweet.action.d.ts +24 -0
  277. package/dist/providers/twitter/actions/create-tweet.action.d.ts.map +1 -0
  278. package/dist/providers/twitter/actions/create-tweet.action.js +199 -0
  279. package/dist/providers/twitter/actions/create-tweet.action.js.map +1 -0
  280. package/dist/providers/twitter/actions/delete-tweet.action.d.ts +24 -0
  281. package/dist/providers/twitter/actions/delete-tweet.action.d.ts.map +1 -0
  282. package/dist/providers/twitter/actions/delete-tweet.action.js +158 -0
  283. package/dist/providers/twitter/actions/delete-tweet.action.js.map +1 -0
  284. package/dist/providers/twitter/actions/get-analytics.action.d.ts +44 -0
  285. package/dist/providers/twitter/actions/get-analytics.action.d.ts.map +1 -0
  286. package/dist/providers/twitter/actions/get-analytics.action.js +399 -0
  287. package/dist/providers/twitter/actions/get-analytics.action.js.map +1 -0
  288. package/dist/providers/twitter/actions/get-mentions.action.d.ts +24 -0
  289. package/dist/providers/twitter/actions/get-mentions.action.d.ts.map +1 -0
  290. package/dist/providers/twitter/actions/get-mentions.action.js +229 -0
  291. package/dist/providers/twitter/actions/get-mentions.action.js.map +1 -0
  292. package/dist/providers/twitter/actions/get-timeline.action.d.ts +24 -0
  293. package/dist/providers/twitter/actions/get-timeline.action.d.ts.map +1 -0
  294. package/dist/providers/twitter/actions/get-timeline.action.js +249 -0
  295. package/dist/providers/twitter/actions/get-timeline.action.js.map +1 -0
  296. package/dist/providers/twitter/actions/index.d.ts +14 -0
  297. package/dist/providers/twitter/actions/index.d.ts.map +1 -0
  298. package/dist/providers/twitter/actions/index.js +30 -0
  299. package/dist/providers/twitter/actions/index.js.map +1 -0
  300. package/dist/providers/twitter/actions/schedule-tweet.action.d.ts +30 -0
  301. package/dist/providers/twitter/actions/schedule-tweet.action.d.ts.map +1 -0
  302. package/dist/providers/twitter/actions/schedule-tweet.action.js +250 -0
  303. package/dist/providers/twitter/actions/schedule-tweet.action.js.map +1 -0
  304. package/dist/providers/twitter/actions/search-tweets.action.d.ts +41 -0
  305. package/dist/providers/twitter/actions/search-tweets.action.d.ts.map +1 -0
  306. package/dist/providers/twitter/actions/search-tweets.action.js +559 -0
  307. package/dist/providers/twitter/actions/search-tweets.action.js.map +1 -0
  308. package/dist/providers/twitter/index.d.ts +8 -0
  309. package/dist/providers/twitter/index.d.ts.map +1 -0
  310. package/dist/providers/twitter/index.js +24 -0
  311. package/dist/providers/twitter/index.js.map +1 -0
  312. package/dist/providers/twitter/twitter-base.action.d.ts +185 -0
  313. package/dist/providers/twitter/twitter-base.action.d.ts.map +1 -0
  314. package/dist/providers/twitter/twitter-base.action.js +484 -0
  315. package/dist/providers/twitter/twitter-base.action.js.map +1 -0
  316. package/dist/providers/youtube/actions/create-playlist.action.d.ts +28 -0
  317. package/dist/providers/youtube/actions/create-playlist.action.d.ts.map +1 -0
  318. package/dist/providers/youtube/actions/create-playlist.action.js +235 -0
  319. package/dist/providers/youtube/actions/create-playlist.action.js.map +1 -0
  320. package/dist/providers/youtube/actions/get-channel-analytics.action.d.ts +60 -0
  321. package/dist/providers/youtube/actions/get-channel-analytics.action.d.ts.map +1 -0
  322. package/dist/providers/youtube/actions/get-channel-analytics.action.js +429 -0
  323. package/dist/providers/youtube/actions/get-channel-analytics.action.js.map +1 -0
  324. package/dist/providers/youtube/actions/get-channel-videos.action.d.ts +28 -0
  325. package/dist/providers/youtube/actions/get-channel-videos.action.d.ts.map +1 -0
  326. package/dist/providers/youtube/actions/get-channel-videos.action.js +263 -0
  327. package/dist/providers/youtube/actions/get-channel-videos.action.js.map +1 -0
  328. package/dist/providers/youtube/actions/get-comments.action.d.ts +40 -0
  329. package/dist/providers/youtube/actions/get-comments.action.d.ts.map +1 -0
  330. package/dist/providers/youtube/actions/get-comments.action.js +381 -0
  331. package/dist/providers/youtube/actions/get-comments.action.js.map +1 -0
  332. package/dist/providers/youtube/actions/get-video-analytics.action.d.ts +48 -0
  333. package/dist/providers/youtube/actions/get-video-analytics.action.d.ts.map +1 -0
  334. package/dist/providers/youtube/actions/get-video-analytics.action.js +280 -0
  335. package/dist/providers/youtube/actions/get-video-analytics.action.js.map +1 -0
  336. package/dist/providers/youtube/actions/index.d.ts +10 -0
  337. package/dist/providers/youtube/actions/index.d.ts.map +1 -0
  338. package/dist/providers/youtube/actions/index.js +26 -0
  339. package/dist/providers/youtube/actions/index.js.map +1 -0
  340. package/dist/providers/youtube/actions/schedule-video.action.d.ts +24 -0
  341. package/dist/providers/youtube/actions/schedule-video.action.d.ts.map +1 -0
  342. package/dist/providers/youtube/actions/schedule-video.action.js +225 -0
  343. package/dist/providers/youtube/actions/schedule-video.action.js.map +1 -0
  344. package/dist/providers/youtube/actions/search-videos.action.d.ts +40 -0
  345. package/dist/providers/youtube/actions/search-videos.action.d.ts.map +1 -0
  346. package/dist/providers/youtube/actions/search-videos.action.js +483 -0
  347. package/dist/providers/youtube/actions/search-videos.action.js.map +1 -0
  348. package/dist/providers/youtube/actions/update-video-metadata.action.d.ts +32 -0
  349. package/dist/providers/youtube/actions/update-video-metadata.action.d.ts.map +1 -0
  350. package/dist/providers/youtube/actions/update-video-metadata.action.js +298 -0
  351. package/dist/providers/youtube/actions/update-video-metadata.action.js.map +1 -0
  352. package/dist/providers/youtube/actions/upload-video.action.d.ts +28 -0
  353. package/dist/providers/youtube/actions/upload-video.action.d.ts.map +1 -0
  354. package/dist/providers/youtube/actions/upload-video.action.js +266 -0
  355. package/dist/providers/youtube/actions/upload-video.action.js.map +1 -0
  356. package/dist/providers/youtube/index.d.ts +3 -0
  357. package/dist/providers/youtube/index.d.ts.map +1 -0
  358. package/dist/providers/youtube/index.js +19 -0
  359. package/dist/providers/youtube/index.js.map +1 -0
  360. package/dist/providers/youtube/youtube-base.action.d.ts +83 -0
  361. package/dist/providers/youtube/youtube-base.action.d.ts.map +1 -0
  362. package/dist/providers/youtube/youtube-base.action.js +319 -0
  363. package/dist/providers/youtube/youtube-base.action.js.map +1 -0
  364. package/package.json +42 -0
  365. package/social_actions_summary.md +439 -0
  366. package/src/base/base-social.action.ts +270 -0
  367. package/src/index.ts +26 -0
  368. package/src/providers/buffer/actions/create-post.action.ts +205 -0
  369. package/src/providers/buffer/actions/delete-post.action.ts +116 -0
  370. package/src/providers/buffer/actions/get-analytics.action.ts +146 -0
  371. package/src/providers/buffer/actions/get-pending-posts.action.ts +161 -0
  372. package/src/providers/buffer/actions/get-profiles.action.ts +126 -0
  373. package/src/providers/buffer/actions/get-sent-posts.action.ts +189 -0
  374. package/src/providers/buffer/actions/index.ts +8 -0
  375. package/src/providers/buffer/actions/reorder-queue.action.ts +141 -0
  376. package/src/providers/buffer/actions/search-posts.action.ts +262 -0
  377. package/src/providers/buffer/buffer-base.action.ts +490 -0
  378. package/src/providers/buffer/index.ts +2 -0
  379. package/src/providers/facebook/actions/boost-post.action.ts +412 -0
  380. package/src/providers/facebook/actions/create-album.action.ts +335 -0
  381. package/src/providers/facebook/actions/create-post.action.ts +243 -0
  382. package/src/providers/facebook/actions/get-page-insights.action.ts +427 -0
  383. package/src/providers/facebook/actions/get-page-posts.action.ts +241 -0
  384. package/src/providers/facebook/actions/get-post-insights.action.ts +338 -0
  385. package/src/providers/facebook/actions/index.ts +9 -0
  386. package/src/providers/facebook/actions/respond-to-comments.action.ts +372 -0
  387. package/src/providers/facebook/actions/schedule-post.action.ts +310 -0
  388. package/src/providers/facebook/actions/search-posts.action.ts +449 -0
  389. package/src/providers/facebook/facebook-base.action.ts +750 -0
  390. package/src/providers/facebook/index.ts +2 -0
  391. package/src/providers/hootsuite/actions/bulk-schedule-posts.action.ts +293 -0
  392. package/src/providers/hootsuite/actions/create-scheduled-post.action.ts +206 -0
  393. package/src/providers/hootsuite/actions/delete-scheduled-post.action.ts +173 -0
  394. package/src/providers/hootsuite/actions/get-analytics.action.ts +281 -0
  395. package/src/providers/hootsuite/actions/get-scheduled-posts.action.ts +220 -0
  396. package/src/providers/hootsuite/actions/get-social-profiles.action.ts +220 -0
  397. package/src/providers/hootsuite/actions/search-posts.action.ts +395 -0
  398. package/src/providers/hootsuite/actions/update-scheduled-post.action.ts +222 -0
  399. package/src/providers/hootsuite/hootsuite-base.action.ts +346 -0
  400. package/src/providers/hootsuite/index.ts +12 -0
  401. package/src/providers/instagram/README.md +129 -0
  402. package/src/providers/instagram/actions/create-post.action.ts +329 -0
  403. package/src/providers/instagram/actions/create-story.action.ts +415 -0
  404. package/src/providers/instagram/actions/get-account-insights.action.ts +449 -0
  405. package/src/providers/instagram/actions/get-business-posts.action.ts +281 -0
  406. package/src/providers/instagram/actions/get-comments.action.ts +395 -0
  407. package/src/providers/instagram/actions/get-post-insights.action.ts +302 -0
  408. package/src/providers/instagram/actions/index.ts +9 -0
  409. package/src/providers/instagram/actions/schedule-post.action.ts +248 -0
  410. package/src/providers/instagram/actions/search-posts.action.ts +569 -0
  411. package/src/providers/instagram/index.ts +3 -0
  412. package/src/providers/instagram/instagram-base.action.ts +430 -0
  413. package/src/providers/linkedin/actions/create-article.action.ts +301 -0
  414. package/src/providers/linkedin/actions/create-post.action.ts +190 -0
  415. package/src/providers/linkedin/actions/get-followers.action.ts +226 -0
  416. package/src/providers/linkedin/actions/get-organization-posts.action.ts +164 -0
  417. package/src/providers/linkedin/actions/get-personal-posts.action.ts +158 -0
  418. package/src/providers/linkedin/actions/get-post-analytics.action.ts +205 -0
  419. package/src/providers/linkedin/actions/index.ts +8 -0
  420. package/src/providers/linkedin/actions/schedule-post.action.ts +206 -0
  421. package/src/providers/linkedin/actions/search-posts.action.ts +323 -0
  422. package/src/providers/linkedin/index.ts +2 -0
  423. package/src/providers/linkedin/linkedin-base.action.ts +481 -0
  424. package/src/providers/tiktok/actions/create-video-post.action.ts +234 -0
  425. package/src/providers/tiktok/actions/get-account-analytics.action.ts +255 -0
  426. package/src/providers/tiktok/actions/get-comments.action.ts +332 -0
  427. package/src/providers/tiktok/actions/get-trending-hashtags.action.ts +341 -0
  428. package/src/providers/tiktok/actions/get-user-videos.action.ts +136 -0
  429. package/src/providers/tiktok/actions/get-video-analytics.action.ts +218 -0
  430. package/src/providers/tiktok/actions/index.ts +8 -0
  431. package/src/providers/tiktok/actions/search-videos.action.ts +717 -0
  432. package/src/providers/tiktok/index.ts +3 -0
  433. package/src/providers/tiktok/tiktok-base.action.ts +356 -0
  434. package/src/providers/twitter/README.md +207 -0
  435. package/src/providers/twitter/actions/create-thread.action.ts +227 -0
  436. package/src/providers/twitter/actions/create-tweet.action.ts +204 -0
  437. package/src/providers/twitter/actions/delete-tweet.action.ts +153 -0
  438. package/src/providers/twitter/actions/get-analytics.action.ts +440 -0
  439. package/src/providers/twitter/actions/get-mentions.action.ts +233 -0
  440. package/src/providers/twitter/actions/get-timeline.action.ts +248 -0
  441. package/src/providers/twitter/actions/index.ts +14 -0
  442. package/src/providers/twitter/actions/schedule-tweet.action.ts +259 -0
  443. package/src/providers/twitter/actions/search-tweets.action.ts +588 -0
  444. package/src/providers/twitter/index.ts +8 -0
  445. package/src/providers/twitter/twitter-base.action.ts +629 -0
  446. package/src/providers/youtube/actions/create-playlist.action.ts +256 -0
  447. package/src/providers/youtube/actions/get-channel-analytics.action.ts +502 -0
  448. package/src/providers/youtube/actions/get-channel-videos.action.ts +286 -0
  449. package/src/providers/youtube/actions/get-comments.action.ts +411 -0
  450. package/src/providers/youtube/actions/get-video-analytics.action.ts +298 -0
  451. package/src/providers/youtube/actions/index.ts +9 -0
  452. package/src/providers/youtube/actions/schedule-video.action.ts +246 -0
  453. package/src/providers/youtube/actions/search-videos.action.ts +530 -0
  454. package/src/providers/youtube/actions/update-video-metadata.action.ts +321 -0
  455. package/src/providers/youtube/actions/upload-video.action.ts +288 -0
  456. package/src/providers/youtube/index.ts +2 -0
  457. package/src/providers/youtube/youtube-base.action.ts +373 -0
  458. package/tsconfig.json +18 -0
@@ -0,0 +1,76 @@
1
+ import { BaseSocialMediaAction, MediaFile } from '../../base/base-social.action';
2
+ import { AxiosInstance, AxiosError } from 'axios';
3
+ /**
4
+ * Base class for all Instagram actions.
5
+ * Handles Instagram Graph API and Basic Display API authentication and common functionality.
6
+ * Instagram uses Facebook's Graph API infrastructure.
7
+ */
8
+ export declare abstract class InstagramBaseAction extends BaseSocialMediaAction {
9
+ protected get platformName(): string;
10
+ protected get apiBaseUrl(): string;
11
+ /**
12
+ * Instagram Business Account ID (stored in CustomAttribute1)
13
+ */
14
+ protected get instagramBusinessAccountId(): string;
15
+ /**
16
+ * Facebook Page ID (stored in CustomAttribute2) - required for Instagram Business API
17
+ */
18
+ protected get facebookPageId(): string;
19
+ /**
20
+ * Axios instance for API calls
21
+ */
22
+ private _axiosInstance;
23
+ /**
24
+ * Get or create axios instance with authentication
25
+ */
26
+ protected get axios(): AxiosInstance;
27
+ /**
28
+ * Refresh the Instagram/Facebook access token
29
+ */
30
+ protected refreshAccessToken(): Promise<void>;
31
+ /**
32
+ * Make an Instagram Graph API request
33
+ */
34
+ protected makeInstagramRequest<T = any>(endpoint: string, method?: 'GET' | 'POST' | 'DELETE', data?: any, params?: any): Promise<T>;
35
+ /**
36
+ * Handle Instagram-specific errors
37
+ */
38
+ protected handleInstagramError(error: AxiosError): void;
39
+ /**
40
+ * Parse Facebook's app usage header to determine rate limit status
41
+ */
42
+ private parseAppUsage;
43
+ /**
44
+ * Upload media to Instagram (returns container ID)
45
+ */
46
+ protected uploadSingleMedia(file: MediaFile): Promise<string>;
47
+ /**
48
+ * Upload media to a CDN (placeholder - implement based on your CDN)
49
+ */
50
+ private uploadMediaToCDN;
51
+ /**
52
+ * Publish a media container
53
+ */
54
+ protected publishMediaContainer(containerId: string): Promise<string>;
55
+ /**
56
+ * Get insights for a media object or account
57
+ */
58
+ protected getInsights(objectId: string, metrics: string[], period?: 'lifetime' | 'day' | 'week' | 'days_28'): Promise<any>;
59
+ /**
60
+ * Search for posts (limited to business account's own posts)
61
+ */
62
+ protected searchPosts(params: any): Promise<any[]>;
63
+ /**
64
+ * Normalize Instagram post to common format
65
+ */
66
+ protected normalizePost(instagramPost: any): any;
67
+ /**
68
+ * Check if media container is ready for publishing
69
+ */
70
+ protected isMediaContainerReady(containerId: string): Promise<boolean>;
71
+ /**
72
+ * Wait for media container to be ready
73
+ */
74
+ protected waitForMediaContainer(containerId: string, maxWaitTime?: number): Promise<void>;
75
+ }
76
+ //# sourceMappingURL=instagram-base.action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instagram-base.action.d.ts","sourceRoot":"","sources":["../../../src/providers/instagram/instagram-base.action.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAEjF,OAAc,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEzD;;;;GAIG;AACH,8BACsB,mBAAoB,SAAQ,qBAAqB;IACnE,SAAS,KAAK,YAAY,IAAI,MAAM,CAEnC;IAED,SAAS,KAAK,UAAU,IAAI,MAAM,CAEjC;IAED;;OAEG;IACH,SAAS,KAAK,0BAA0B,IAAI,MAAM,CAEjD;IAED;;OAEG;IACH,SAAS,KAAK,cAAc,IAAI,MAAM,CAErC;IAED;;OAEG;IACH,OAAO,CAAC,cAAc,CAA8B;IAEpD;;OAEG;IACH,SAAS,KAAK,KAAK,IAAI,aAAa,CAwBnC;IAED;;OAEG;cACa,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCnD;;OAEG;cACa,oBAAoB,CAAC,CAAC,GAAG,GAAG,EACxC,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,QAAgB,EACzC,IAAI,CAAC,EAAE,GAAG,EACV,MAAM,CAAC,EAAE,GAAG,GACb,OAAO,CAAC,CAAC,CAAC;IAqBb;;OAEG;IACH,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAuDvD;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;cACa,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IA2CnE;;OAEG;YACW,gBAAgB;IAM9B;;OAEG;cACa,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAa3E;;OAEG;cACa,WAAW,CACvB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EAAE,EACjB,MAAM,CAAC,EAAE,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GACjD,OAAO,CAAC,GAAG,CAAC;IAoBf;;OAEG;cACa,WAAW,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAmDxD;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,GAAG,GAAG;IA4BhD;;OAEG;cACa,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAc5E;;OAEG;cACa,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,GAAE,MAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAazG"}
@@ -0,0 +1,362 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.InstagramBaseAction = void 0;
13
+ const global_1 = require("@memberjunction/global");
14
+ const base_social_action_1 = require("../../base/base-social.action");
15
+ const core_1 = require("@memberjunction/core");
16
+ const axios_1 = __importDefault(require("axios"));
17
+ /**
18
+ * Base class for all Instagram actions.
19
+ * Handles Instagram Graph API and Basic Display API authentication and common functionality.
20
+ * Instagram uses Facebook's Graph API infrastructure.
21
+ */
22
+ let InstagramBaseAction = class InstagramBaseAction extends base_social_action_1.BaseSocialMediaAction {
23
+ get platformName() {
24
+ return 'Instagram';
25
+ }
26
+ get apiBaseUrl() {
27
+ return 'https://graph.facebook.com/v18.0';
28
+ }
29
+ /**
30
+ * Instagram Business Account ID (stored in CustomAttribute1)
31
+ */
32
+ get instagramBusinessAccountId() {
33
+ return this.getCustomAttribute(1) || '';
34
+ }
35
+ /**
36
+ * Facebook Page ID (stored in CustomAttribute2) - required for Instagram Business API
37
+ */
38
+ get facebookPageId() {
39
+ return this.getCustomAttribute(2) || '';
40
+ }
41
+ /**
42
+ * Axios instance for API calls
43
+ */
44
+ _axiosInstance = null;
45
+ /**
46
+ * Get or create axios instance with authentication
47
+ */
48
+ get axios() {
49
+ if (!this._axiosInstance) {
50
+ this._axiosInstance = axios_1.default.create({
51
+ baseURL: this.apiBaseUrl,
52
+ headers: this.buildHeaders()
53
+ });
54
+ // Add response interceptor for error handling
55
+ this._axiosInstance.interceptors.response.use(response => response, async (error) => {
56
+ if (error.response?.status === 401 && this.isAuthError(error)) {
57
+ (0, core_1.LogStatus)('Instagram token appears invalid, attempting refresh...');
58
+ await this.refreshAccessToken();
59
+ // Retry the request with new token
60
+ error.config.headers.Authorization = `Bearer ${this.getAccessToken()}`;
61
+ return axios_1.default.request(error.config);
62
+ }
63
+ throw error;
64
+ });
65
+ }
66
+ return this._axiosInstance;
67
+ }
68
+ /**
69
+ * Refresh the Instagram/Facebook access token
70
+ */
71
+ async refreshAccessToken() {
72
+ try {
73
+ // Instagram uses Facebook's OAuth system
74
+ // Long-lived tokens need to be exchanged periodically
75
+ const currentToken = this.getAccessToken();
76
+ if (!currentToken) {
77
+ throw new Error('No access token available to refresh');
78
+ }
79
+ // Exchange for a new long-lived token
80
+ const response = await axios_1.default.get(`${this.apiBaseUrl}/oauth/access_token`, {
81
+ params: {
82
+ grant_type: 'fb_exchange_token',
83
+ client_id: this.getCustomAttribute(3), // App ID stored in CustomAttribute3
84
+ client_secret: this.getCustomAttribute(4), // App Secret stored in CustomAttribute4
85
+ fb_exchange_token: currentToken
86
+ }
87
+ });
88
+ if (response.data.access_token) {
89
+ await this.updateStoredTokens(response.data.access_token, undefined, // Instagram doesn't use refresh tokens
90
+ response.data.expires_in || 5184000 // Default to 60 days
91
+ );
92
+ // Reset axios instance to use new token
93
+ this._axiosInstance = null;
94
+ }
95
+ }
96
+ catch (error) {
97
+ (0, core_1.LogError)('Failed to refresh Instagram access token', error);
98
+ throw new Error('Failed to refresh Instagram access token');
99
+ }
100
+ }
101
+ /**
102
+ * Make an Instagram Graph API request
103
+ */
104
+ async makeInstagramRequest(endpoint, method = 'GET', data, params) {
105
+ try {
106
+ this.logApiRequest(method, `${this.apiBaseUrl}/${endpoint}`, data || params);
107
+ const response = await this.axios.request({
108
+ url: endpoint,
109
+ method,
110
+ data,
111
+ params
112
+ });
113
+ this.logApiResponse(response.data);
114
+ return response.data;
115
+ }
116
+ catch (error) {
117
+ if (axios_1.default.isAxiosError(error)) {
118
+ this.handleInstagramError(error);
119
+ }
120
+ throw error;
121
+ }
122
+ }
123
+ /**
124
+ * Handle Instagram-specific errors
125
+ */
126
+ handleInstagramError(error) {
127
+ const response = error.response;
128
+ if (!response) {
129
+ throw new Error('Network error occurred while calling Instagram API');
130
+ }
131
+ const errorData = response.data;
132
+ const errorMessage = errorData?.error?.message || 'Unknown Instagram API error';
133
+ const errorCode = errorData?.error?.code;
134
+ const errorSubcode = errorData?.error?.error_subcode;
135
+ // Check for rate limiting
136
+ if (errorCode === 32 || errorCode === 4 || response.status === 429) {
137
+ const retryAfter = response.headers['x-app-usage']
138
+ ? this.parseAppUsage(response.headers['x-app-usage'])
139
+ : 3600; // Default to 1 hour
140
+ throw {
141
+ code: 'RATE_LIMIT',
142
+ message: 'Instagram API rate limit exceeded',
143
+ retryAfter
144
+ };
145
+ }
146
+ // Check for permission errors
147
+ if (errorCode === 10 || errorSubcode === 460) {
148
+ throw {
149
+ code: 'INSUFFICIENT_PERMISSIONS',
150
+ message: 'Insufficient permissions for this Instagram operation'
151
+ };
152
+ }
153
+ // Media errors
154
+ if (errorCode === 100 && errorMessage.toLowerCase().includes('media')) {
155
+ throw {
156
+ code: 'INVALID_MEDIA',
157
+ message: errorMessage
158
+ };
159
+ }
160
+ // Post not found
161
+ if (errorCode === 100 && errorSubcode === 33) {
162
+ throw {
163
+ code: 'POST_NOT_FOUND',
164
+ message: 'Instagram post not found'
165
+ };
166
+ }
167
+ throw {
168
+ code: 'PLATFORM_ERROR',
169
+ message: errorMessage,
170
+ details: errorData
171
+ };
172
+ }
173
+ /**
174
+ * Parse Facebook's app usage header to determine rate limit status
175
+ */
176
+ parseAppUsage(appUsage) {
177
+ try {
178
+ const usage = JSON.parse(appUsage);
179
+ const callCount = usage.call_count || 0;
180
+ const totalTime = usage.total_time || 0;
181
+ const totalCputime = usage.total_cputime || 0;
182
+ // If any metric is above 90%, implement backoff
183
+ if (callCount > 90 || totalTime > 90 || totalCputime > 90) {
184
+ return 3600; // Wait 1 hour
185
+ }
186
+ return 0;
187
+ }
188
+ catch {
189
+ return 0;
190
+ }
191
+ }
192
+ /**
193
+ * Upload media to Instagram (returns container ID)
194
+ */
195
+ async uploadSingleMedia(file) {
196
+ try {
197
+ // For Instagram, media must be hosted at a public URL
198
+ // This is a simplified version - in production, you'd upload to a CDN first
199
+ const mediaUrl = await this.uploadMediaToCDN(file);
200
+ let containerParams = {
201
+ access_token: this.getAccessToken()
202
+ };
203
+ // Determine media type and set appropriate parameters
204
+ if (file.mimeType.startsWith('image/')) {
205
+ containerParams.image_url = mediaUrl;
206
+ // Check if it's a carousel
207
+ if (file.filename.includes('carousel')) {
208
+ containerParams.is_carousel_item = true;
209
+ }
210
+ }
211
+ else if (file.mimeType.startsWith('video/')) {
212
+ containerParams.video_url = mediaUrl;
213
+ containerParams.media_type = 'REELS'; // or 'VIDEO' for feed videos
214
+ }
215
+ // Add caption if provided in metadata
216
+ const metadata = file.metadata;
217
+ if (metadata?.caption) {
218
+ containerParams.caption = metadata.caption;
219
+ }
220
+ // Create media container
221
+ const response = await this.makeInstagramRequest(`${this.instagramBusinessAccountId}/media`, 'POST', containerParams);
222
+ return response.id;
223
+ }
224
+ catch (error) {
225
+ (0, core_1.LogError)('Failed to upload media to Instagram', error);
226
+ throw error;
227
+ }
228
+ }
229
+ /**
230
+ * Upload media to a CDN (placeholder - implement based on your CDN)
231
+ */
232
+ async uploadMediaToCDN(file) {
233
+ // In a real implementation, this would upload to S3, Cloudinary, etc.
234
+ // For now, throw an error indicating this needs implementation
235
+ throw new Error('Media CDN upload not implemented. Instagram requires media to be hosted at a public URL.');
236
+ }
237
+ /**
238
+ * Publish a media container
239
+ */
240
+ async publishMediaContainer(containerId) {
241
+ const response = await this.makeInstagramRequest(`${this.instagramBusinessAccountId}/media_publish`, 'POST', {
242
+ creation_id: containerId,
243
+ access_token: this.getAccessToken()
244
+ });
245
+ return response.id;
246
+ }
247
+ /**
248
+ * Get insights for a media object or account
249
+ */
250
+ async getInsights(objectId, metrics, period) {
251
+ const params = {
252
+ metric: metrics.join(','),
253
+ access_token: this.getAccessToken()
254
+ };
255
+ if (period) {
256
+ params.period = period;
257
+ }
258
+ const response = await this.makeInstagramRequest(`${objectId}/insights`, 'GET', null, params);
259
+ return response.data;
260
+ }
261
+ /**
262
+ * Search for posts (limited to business account's own posts)
263
+ */
264
+ async searchPosts(params) {
265
+ // Instagram doesn't have a general search API
266
+ // We can only search within the business account's own posts
267
+ const fields = 'id,caption,media_type,media_url,permalink,timestamp,like_count,comments_count';
268
+ let endpoint = `${this.instagramBusinessAccountId}/media`;
269
+ const queryParams = {
270
+ fields,
271
+ access_token: this.getAccessToken(),
272
+ limit: params.limit || 25
273
+ };
274
+ // Add date filtering if provided
275
+ if (params.startDate) {
276
+ queryParams.since = Math.floor(new Date(params.startDate).getTime() / 1000);
277
+ }
278
+ if (params.endDate) {
279
+ queryParams.until = Math.floor(new Date(params.endDate).getTime() / 1000);
280
+ }
281
+ const posts = [];
282
+ let hasNext = true;
283
+ while (hasNext && posts.length < (params.limit || 100)) {
284
+ const response = await this.makeInstagramRequest(endpoint, 'GET', null, queryParams);
285
+ if (response.data) {
286
+ // Filter by caption if query is provided
287
+ const filtered = params.query
288
+ ? response.data.filter(post => post.caption?.toLowerCase().includes(params.query.toLowerCase()))
289
+ : response.data;
290
+ posts.push(...filtered);
291
+ }
292
+ if (response.paging?.next) {
293
+ // Parse next URL for pagination
294
+ const nextUrl = new URL(response.paging.next);
295
+ queryParams.after = nextUrl.searchParams.get('after');
296
+ }
297
+ else {
298
+ hasNext = false;
299
+ }
300
+ }
301
+ return posts.slice(0, params.limit || 100);
302
+ }
303
+ /**
304
+ * Normalize Instagram post to common format
305
+ */
306
+ normalizePost(instagramPost) {
307
+ return {
308
+ id: instagramPost.id,
309
+ platform: 'Instagram',
310
+ profileId: this.instagramBusinessAccountId,
311
+ content: instagramPost.caption || '',
312
+ mediaUrls: instagramPost.media_url ? [instagramPost.media_url] : [],
313
+ publishedAt: new Date(instagramPost.timestamp),
314
+ analytics: {
315
+ impressions: instagramPost.impressions_count || 0,
316
+ engagements: (instagramPost.like_count || 0) + (instagramPost.comments_count || 0),
317
+ clicks: 0, // Not available in basic metrics
318
+ shares: 0, // Instagram doesn't track shares
319
+ comments: instagramPost.comments_count || 0,
320
+ likes: instagramPost.like_count || 0,
321
+ reach: instagramPost.reach || 0,
322
+ saves: instagramPost.saved || 0,
323
+ videoViews: instagramPost.video_views || 0,
324
+ platformMetrics: instagramPost
325
+ },
326
+ platformSpecificData: {
327
+ mediaType: instagramPost.media_type,
328
+ permalink: instagramPost.permalink,
329
+ isCarousel: instagramPost.media_type === 'CAROUSEL_ALBUM'
330
+ }
331
+ };
332
+ }
333
+ /**
334
+ * Check if media container is ready for publishing
335
+ */
336
+ async isMediaContainerReady(containerId) {
337
+ const response = await this.makeInstagramRequest(containerId, 'GET', null, {
338
+ fields: 'status_code',
339
+ access_token: this.getAccessToken()
340
+ });
341
+ return response.status_code === 'FINISHED';
342
+ }
343
+ /**
344
+ * Wait for media container to be ready
345
+ */
346
+ async waitForMediaContainer(containerId, maxWaitTime = 60000) {
347
+ const startTime = Date.now();
348
+ const pollInterval = 2000; // 2 seconds
349
+ while (Date.now() - startTime < maxWaitTime) {
350
+ if (await this.isMediaContainerReady(containerId)) {
351
+ return;
352
+ }
353
+ await new Promise(resolve => setTimeout(resolve, pollInterval));
354
+ }
355
+ throw new Error('Media container processing timeout');
356
+ }
357
+ };
358
+ exports.InstagramBaseAction = InstagramBaseAction;
359
+ exports.InstagramBaseAction = InstagramBaseAction = __decorate([
360
+ (0, global_1.RegisterClass)(base_social_action_1.BaseSocialMediaAction, 'InstagramBaseAction')
361
+ ], InstagramBaseAction);
362
+ //# sourceMappingURL=instagram-base.action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instagram-base.action.js","sourceRoot":"","sources":["../../../src/providers/instagram/instagram-base.action.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { LinkedInBaseAction } from '../linkedin-base.action';
2
+ import { ActionParam, ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
3
+ /**
4
+ * Action to create a LinkedIn article (long-form content)
5
+ */
6
+ export declare class LinkedInCreateArticleAction extends LinkedInBaseAction {
7
+ /**
8
+ * Create a LinkedIn article
9
+ */
10
+ protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
11
+ /**
12
+ * Format article content for LinkedIn
13
+ */
14
+ private formatArticleContent;
15
+ /**
16
+ * Create a rich media share that resembles an article
17
+ */
18
+ private createRichMediaShare;
19
+ /**
20
+ * Define the parameters this action expects
21
+ */
22
+ get Params(): ActionParam[];
23
+ /**
24
+ * Get action description
25
+ */
26
+ get Description(): string;
27
+ }
28
+ //# sourceMappingURL=create-article.action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-article.action.d.ts","sourceRoot":"","sources":["../../../../src/providers/linkedin/actions/create-article.action.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAsC,MAAM,yBAAyB,CAAC;AACjG,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAIhG;;GAEG;AACH,qBACa,2BAA4B,SAAQ,kBAAkB;IAC/D;;OAEG;cACa,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAkIvF;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA4B5B;;OAEG;YACW,oBAAoB;IAyDlC;;OAEG;IACH,IAAW,MAAM,IAAI,WAAW,EAAE,CAsDjC;IAED;;OAEG;IACH,IAAW,WAAW,IAAI,MAAM,CAE/B;CACJ"}