@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,42 @@
1
+ import { InstagramBaseAction } from '../instagram-base.action';
2
+ import { ActionParam, ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
3
+ /**
4
+ * Retrieves detailed insights and analytics for a specific Instagram post.
5
+ * Available metrics vary by post type (feed, reels, stories).
6
+ */
7
+ export declare class InstagramGetPostInsightsAction extends InstagramBaseAction {
8
+ protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
9
+ /**
10
+ * Get post details including media type
11
+ */
12
+ private getPostDetails;
13
+ /**
14
+ * Get available metrics based on post type
15
+ */
16
+ private getAvailableMetrics;
17
+ /**
18
+ * Parse insights data into a structured format
19
+ */
20
+ private parseInsightsData;
21
+ /**
22
+ * Calculate engagement rate
23
+ */
24
+ private calculateEngagementRate;
25
+ /**
26
+ * Calculate total engagements
27
+ */
28
+ private calculateTotalEngagements;
29
+ /**
30
+ * Calculate a performance score (0-100)
31
+ */
32
+ private calculatePerformanceScore;
33
+ /**
34
+ * Define the parameters for this action
35
+ */
36
+ get Params(): ActionParam[];
37
+ /**
38
+ * Get the description for this action
39
+ */
40
+ get Description(): string;
41
+ }
42
+ //# sourceMappingURL=get-post-insights.action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-post-insights.action.d.ts","sourceRoot":"","sources":["../../../../src/providers/instagram/actions/get-post-insights.action.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGhG;;;GAGG;AACH,qBACa,8BAA+B,SAAQ,mBAAmB;cAEnD,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiHvF;;OAEG;YACW,cAAc;IAiB5B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAoB3B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA+BzB;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAS/B;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAQjC;;OAEG;IACH,OAAO,CAAC,yBAAyB;IA2CjC;;OAEG;IACH,IAAW,MAAM,IAAI,WAAW,EAAE,CAmBjC;IAED;;OAEG;IACH,IAAW,WAAW,IAAI,MAAM,CAE/B;CACJ"}
@@ -0,0 +1,271 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.InstagramGetPostInsightsAction = void 0;
10
+ const global_1 = require("@memberjunction/global");
11
+ const instagram_base_action_1 = require("../instagram-base.action");
12
+ const core_1 = require("@memberjunction/core");
13
+ /**
14
+ * Retrieves detailed insights and analytics for a specific Instagram post.
15
+ * Available metrics vary by post type (feed, reels, stories).
16
+ */
17
+ let InstagramGetPostInsightsAction = class InstagramGetPostInsightsAction extends instagram_base_action_1.InstagramBaseAction {
18
+ async InternalRunAction(params) {
19
+ try {
20
+ const companyIntegrationId = this.getParamValue(params.Params, 'CompanyIntegrationID');
21
+ const postId = this.getParamValue(params.Params, 'PostID');
22
+ const metricTypes = this.getParamValue(params.Params, 'MetricTypes');
23
+ const period = this.getParamValue(params.Params, 'Period') || 'lifetime';
24
+ // Initialize OAuth
25
+ if (!await this.initializeOAuth(companyIntegrationId)) {
26
+ return {
27
+ Success: false,
28
+ Message: 'Failed to initialize Instagram authentication',
29
+ ResultCode: 'AUTH_FAILED'
30
+ };
31
+ }
32
+ // Validate inputs
33
+ if (!postId) {
34
+ return {
35
+ Success: false,
36
+ Message: 'PostID is required',
37
+ ResultCode: 'MISSING_PARAMS'
38
+ };
39
+ }
40
+ // First, get the post details to determine its type
41
+ const postDetails = await this.getPostDetails(postId);
42
+ if (!postDetails) {
43
+ return {
44
+ Success: false,
45
+ Message: 'Post not found or access denied',
46
+ ResultCode: 'POST_NOT_FOUND'
47
+ };
48
+ }
49
+ // Determine available metrics based on post type
50
+ const availableMetrics = this.getAvailableMetrics(postDetails.media_type);
51
+ const requestedMetrics = metricTypes && metricTypes.length > 0
52
+ ? metricTypes.filter(m => availableMetrics.includes(m))
53
+ : availableMetrics;
54
+ if (requestedMetrics.length === 0) {
55
+ return {
56
+ Success: false,
57
+ Message: 'No valid metrics specified for this post type',
58
+ ResultCode: 'INVALID_METRICS'
59
+ };
60
+ }
61
+ // Get insights
62
+ const insights = await this.getInsights(postId, requestedMetrics, period);
63
+ // Parse and structure the insights data
64
+ const parsedInsights = this.parseInsightsData(insights);
65
+ // Calculate engagement rate
66
+ const engagementRate = this.calculateEngagementRate(parsedInsights, postDetails);
67
+ // Store result in output params
68
+ const outputParams = [...params.Params];
69
+ outputParams.push({
70
+ Name: 'ResultData',
71
+ Type: 'Output',
72
+ Value: JSON.stringify({
73
+ postId,
74
+ postType: postDetails.media_type,
75
+ permalink: postDetails.permalink,
76
+ publishedAt: postDetails.timestamp,
77
+ metrics: parsedInsights,
78
+ summary: {
79
+ engagementRate,
80
+ totalEngagements: this.calculateTotalEngagements(parsedInsights),
81
+ performanceScore: this.calculatePerformanceScore(parsedInsights)
82
+ },
83
+ period,
84
+ dataCollectedAt: new Date().toISOString()
85
+ })
86
+ });
87
+ return {
88
+ Success: true,
89
+ Message: 'Successfully retrieved post insights',
90
+ ResultCode: 'SUCCESS',
91
+ Params: outputParams
92
+ };
93
+ }
94
+ catch (error) {
95
+ (0, core_1.LogError)('Failed to retrieve Instagram post insights', error);
96
+ if (error.code === 'RATE_LIMIT') {
97
+ return {
98
+ Success: false,
99
+ Message: 'Instagram API rate limit exceeded. Please try again later.',
100
+ ResultCode: 'RATE_LIMIT'
101
+ };
102
+ }
103
+ if (error.code === 'POST_NOT_FOUND') {
104
+ return {
105
+ Success: false,
106
+ Message: 'Instagram post not found or access denied',
107
+ ResultCode: 'POST_NOT_FOUND'
108
+ };
109
+ }
110
+ return {
111
+ Success: false,
112
+ Message: `Failed to retrieve post insights: ${error.message}`,
113
+ ResultCode: 'ERROR'
114
+ };
115
+ }
116
+ }
117
+ /**
118
+ * Get post details including media type
119
+ */
120
+ async getPostDetails(postId) {
121
+ try {
122
+ const response = await this.makeInstagramRequest(postId, 'GET', null, {
123
+ fields: 'id,media_type,permalink,timestamp,caption,like_count,comments_count',
124
+ access_token: this.getAccessToken()
125
+ });
126
+ return response;
127
+ }
128
+ catch (error) {
129
+ return null;
130
+ }
131
+ }
132
+ /**
133
+ * Get available metrics based on post type
134
+ */
135
+ getAvailableMetrics(mediaType) {
136
+ const baseMetrics = ['impressions', 'reach', 'engagement'];
137
+ switch (mediaType) {
138
+ case 'IMAGE':
139
+ case 'CAROUSEL_ALBUM':
140
+ return [...baseMetrics, 'saved', 'shares'];
141
+ case 'VIDEO':
142
+ case 'REELS':
143
+ return [...baseMetrics, 'saved', 'shares', 'video_views', 'avg_watch_time', 'completion_rate'];
144
+ case 'STORY':
145
+ return ['impressions', 'reach', 'exits', 'replies', 'taps_forward', 'taps_back'];
146
+ default:
147
+ return baseMetrics;
148
+ }
149
+ }
150
+ /**
151
+ * Parse insights data into a structured format
152
+ */
153
+ parseInsightsData(insights) {
154
+ const parsed = {};
155
+ insights.forEach(metric => {
156
+ const name = metric.name;
157
+ const values = metric.values || [];
158
+ if (values.length > 0) {
159
+ // For lifetime metrics, there's usually only one value
160
+ const primaryValue = values[0];
161
+ parsed[name] = {
162
+ value: primaryValue.value || 0,
163
+ title: metric.title,
164
+ description: metric.description,
165
+ period: metric.period
166
+ };
167
+ // For time series data (like daily metrics)
168
+ if (values.length > 1) {
169
+ parsed[name].timeSeries = values.map((v) => ({
170
+ value: v.value,
171
+ endTime: v.end_time
172
+ }));
173
+ }
174
+ }
175
+ });
176
+ return parsed;
177
+ }
178
+ /**
179
+ * Calculate engagement rate
180
+ */
181
+ calculateEngagementRate(insights, postDetails) {
182
+ const reach = insights.reach?.value || postDetails.reach || 0;
183
+ const engagement = insights.engagement?.value || 0;
184
+ if (reach === 0)
185
+ return 0;
186
+ return Number(((engagement / reach) * 100).toFixed(2));
187
+ }
188
+ /**
189
+ * Calculate total engagements
190
+ */
191
+ calculateTotalEngagements(insights) {
192
+ const engagement = insights.engagement?.value || 0;
193
+ const saves = insights.saved?.value || 0;
194
+ const shares = insights.shares?.value || 0;
195
+ return engagement + saves + shares;
196
+ }
197
+ /**
198
+ * Calculate a performance score (0-100)
199
+ */
200
+ calculatePerformanceScore(insights) {
201
+ // Simple scoring algorithm based on key metrics
202
+ let score = 0;
203
+ let factors = 0;
204
+ // Engagement rate factor
205
+ const reach = insights.reach?.value || 0;
206
+ const engagement = insights.engagement?.value || 0;
207
+ if (reach > 0) {
208
+ const engagementRate = (engagement / reach) * 100;
209
+ score += Math.min(engagementRate * 10, 30); // Max 30 points
210
+ factors++;
211
+ }
212
+ // Reach factor (compared to impressions)
213
+ const impressions = insights.impressions?.value || 0;
214
+ if (impressions > 0) {
215
+ const reachRate = (reach / impressions) * 100;
216
+ score += Math.min(reachRate, 20); // Max 20 points
217
+ factors++;
218
+ }
219
+ // Saves factor
220
+ const saves = insights.saved?.value || 0;
221
+ if (reach > 0) {
222
+ const saveRate = (saves / reach) * 100;
223
+ score += Math.min(saveRate * 20, 25); // Max 25 points
224
+ factors++;
225
+ }
226
+ // Video completion rate (for videos)
227
+ const completionRate = insights.completion_rate?.value || 0;
228
+ if (completionRate > 0) {
229
+ score += Math.min(completionRate, 25); // Max 25 points
230
+ factors++;
231
+ }
232
+ // Normalize score
233
+ if (factors === 0)
234
+ return 0;
235
+ return Math.round(Math.min(score, 100));
236
+ }
237
+ /**
238
+ * Define the parameters for this action
239
+ */
240
+ get Params() {
241
+ return [
242
+ ...this.commonSocialParams,
243
+ {
244
+ Name: 'PostID',
245
+ Type: 'Input',
246
+ Value: null
247
+ },
248
+ {
249
+ Name: 'MetricTypes',
250
+ Type: 'Input',
251
+ Value: null
252
+ },
253
+ {
254
+ Name: 'Period',
255
+ Type: 'Input',
256
+ Value: 'lifetime'
257
+ }
258
+ ];
259
+ }
260
+ /**
261
+ * Get the description for this action
262
+ */
263
+ get Description() {
264
+ return 'Retrieves detailed analytics and insights for a specific Instagram post including impressions, reach, engagement, and more.';
265
+ }
266
+ };
267
+ exports.InstagramGetPostInsightsAction = InstagramGetPostInsightsAction;
268
+ exports.InstagramGetPostInsightsAction = InstagramGetPostInsightsAction = __decorate([
269
+ (0, global_1.RegisterClass)(instagram_base_action_1.InstagramBaseAction, 'Instagram - Get Post Insights')
270
+ ], InstagramGetPostInsightsAction);
271
+ //# sourceMappingURL=get-post-insights.action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-post-insights.action.js","sourceRoot":"","sources":["../../../../src/providers/instagram/actions/get-post-insights.action.ts"],"names":[],"mappings":";;;;;;;;;AAAA,mDAAuD;AACvD,oEAA+D;AAE/D,+CAAgD;AAEhD;;;GAGG;AAEI,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,2CAAmB;IAEzD,KAAK,CAAC,iBAAiB,CAAC,MAAuB;QACrD,IAAI,CAAC;YACD,MAAM,oBAAoB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;YACvF,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAa,CAAC;YACjF,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,UAAU,CAAC;YAEzE,mBAAmB;YACnB,IAAI,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBACpD,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,+CAA+C;oBACxD,UAAU,EAAE,aAAa;iBAC5B,CAAC;YACN,CAAC;YAED,kBAAkB;YAClB,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,oBAAoB;oBAC7B,UAAU,EAAE,gBAAgB;iBAC/B,CAAC;YACN,CAAC;YAED,oDAAoD;YACpD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACtD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,iCAAiC;oBAC1C,UAAU,EAAE,gBAAgB;iBAC/B,CAAC;YACN,CAAC;YAED,iDAAiD;YACjD,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC1E,MAAM,gBAAgB,GAAG,WAAW,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;gBAC1D,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACvD,CAAC,CAAC,gBAAgB,CAAC;YAEvB,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChC,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,+CAA+C;oBACxD,UAAU,EAAE,iBAAiB;iBAChC,CAAC;YACN,CAAC;YAED,eAAe;YACf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAa,CAAC,CAAC;YAEjF,wCAAwC;YACxC,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YAExD,4BAA4B;YAC5B,MAAM,cAAc,GAAG,IAAI,CAAC,uBAAuB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;YAEjF,gCAAgC;YAChC,MAAM,YAAY,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YACxC,YAAY,CAAC,IAAI,CAAC;gBACd,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC;oBAClB,MAAM;oBACN,QAAQ,EAAE,WAAW,CAAC,UAAU;oBAChC,SAAS,EAAE,WAAW,CAAC,SAAS;oBAChC,WAAW,EAAE,WAAW,CAAC,SAAS;oBAClC,OAAO,EAAE,cAAc;oBACvB,OAAO,EAAE;wBACL,cAAc;wBACd,gBAAgB,EAAE,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC;wBAChE,gBAAgB,EAAE,IAAI,CAAC,yBAAyB,CAAC,cAAc,CAAC;qBACnE;oBACD,MAAM;oBACN,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBAC5C,CAAC;aACL,CAAC,CAAC;YAEH,OAAO;gBACH,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,sCAAsC;gBAC/C,UAAU,EAAE,SAAS;gBACrB,MAAM,EAAE,YAAY;aACvB,CAAC;QAEN,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,IAAA,eAAQ,EAAC,4CAA4C,EAAE,KAAK,CAAC,CAAC;YAE9D,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBAC9B,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,4DAA4D;oBACrE,UAAU,EAAE,YAAY;iBAC3B,CAAC;YACN,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAClC,OAAO;oBACH,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,2CAA2C;oBACpD,UAAU,EAAE,gBAAgB;iBAC/B,CAAC;YACN,CAAC;YAED,OAAO;gBACH,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,qCAAqC,KAAK,CAAC,OAAO,EAAE;gBAC7D,UAAU,EAAE,OAAO;aACtB,CAAC;QACN,CAAC;IACL,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,MAAc;QACvC,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAC5C,MAAM,EACN,KAAK,EACL,IAAI,EACJ;gBACI,MAAM,EAAE,qEAAqE;gBAC7E,YAAY,EAAE,IAAI,CAAC,cAAc,EAAE;aACtC,CACJ,CAAC;YACF,OAAO,QAAQ,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,SAAiB;QACzC,MAAM,WAAW,GAAG,CAAC,aAAa,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QAE3D,QAAQ,SAAS,EAAE,CAAC;YAChB,KAAK,OAAO,CAAC;YACb,KAAK,gBAAgB;gBACjB,OAAO,CAAC,GAAG,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;YAE/C,KAAK,OAAO,CAAC;YACb,KAAK,OAAO;gBACR,OAAO,CAAC,GAAG,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;YAEnG,KAAK,OAAO;gBACR,OAAO,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;YAErF;gBACI,OAAO,WAAW,CAAC;QAC3B,CAAC;IACL,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,QAAe;QACrC,MAAM,MAAM,GAAwB,EAAE,CAAC;QAEvC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACtB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YACzB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;YAEnC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,uDAAuD;gBACvD,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBAE/B,MAAM,CAAC,IAAI,CAAC,GAAG;oBACX,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,CAAC;oBAC9B,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,MAAM,EAAE,MAAM,CAAC,MAAM;iBACxB,CAAC;gBAEF,4CAA4C;gBAC5C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpB,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;wBAC9C,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,OAAO,EAAE,CAAC,CAAC,QAAQ;qBACtB,CAAC,CAAC,CAAC;gBACR,CAAC;YACL,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;OAEG;IACK,uBAAuB,CAAC,QAA6B,EAAE,WAAgB;QAC3E,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,IAAI,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC;QAC9D,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,EAAE,KAAK,IAAI,CAAC,CAAC;QAEnD,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAE1B,OAAO,MAAM,CAAC,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACK,yBAAyB,CAAC,QAA6B;QAC3D,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,EAAE,KAAK,IAAI,CAAC,CAAC;QACnD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC;QAE3C,OAAO,UAAU,GAAG,KAAK,GAAG,MAAM,CAAC;IACvC,CAAC;IAED;;OAEG;IACK,yBAAyB,CAAC,QAA6B;QAC3D,gDAAgD;QAChD,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,yBAAyB;QACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,EAAE,KAAK,IAAI,CAAC,CAAC;QACnD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACZ,MAAM,cAAc,GAAG,CAAC,UAAU,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC;YAClD,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB;YAC5D,OAAO,EAAE,CAAC;QACd,CAAC;QAED,yCAAyC;QACzC,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,CAAC;QACrD,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,SAAS,GAAG,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,GAAG,CAAC;YAC9C,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB;YAClD,OAAO,EAAE,CAAC;QACd,CAAC;QAED,eAAe;QACf,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC;QACzC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC;YACvC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB;YACtD,OAAO,EAAE,CAAC;QACd,CAAC;QAED,qCAAqC;QACrC,MAAM,cAAc,GAAG,QAAQ,CAAC,eAAe,EAAE,KAAK,IAAI,CAAC,CAAC;QAC5D,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACrB,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB;YACvD,OAAO,EAAE,CAAC;QACd,CAAC;QAED,kBAAkB;QAClB,IAAI,OAAO,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAE5B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,OAAO;YACH,GAAG,IAAI,CAAC,kBAAkB;YAC1B;gBACI,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,IAAI;aACd;YACD;gBACI,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,IAAI;aACd;YACD;gBACI,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,UAAU;aACpB;SACJ,CAAC;IACN,CAAC;IAED;;OAEG;IACH,IAAW,WAAW;QAClB,OAAO,6HAA6H,CAAC;IACzI,CAAC;CACJ,CAAA;AAnSY,wEAA8B;yCAA9B,8BAA8B;IAD1C,IAAA,sBAAa,EAAC,2CAAmB,EAAE,+BAA+B,CAAC;GACvD,8BAA8B,CAmS1C"}
@@ -0,0 +1,9 @@
1
+ export * from './create-post.action';
2
+ export * from './get-business-posts.action';
3
+ export * from './get-post-insights.action';
4
+ export * from './get-account-insights.action';
5
+ export * from './schedule-post.action';
6
+ export * from './get-comments.action';
7
+ export * from './create-story.action';
8
+ export * from './search-posts.action';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/providers/instagram/actions/index.ts"],"names":[],"mappings":"AACA,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,26 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ // Instagram Actions
18
+ __exportStar(require("./create-post.action"), exports);
19
+ __exportStar(require("./get-business-posts.action"), exports);
20
+ __exportStar(require("./get-post-insights.action"), exports);
21
+ __exportStar(require("./get-account-insights.action"), exports);
22
+ __exportStar(require("./schedule-post.action"), exports);
23
+ __exportStar(require("./get-comments.action"), exports);
24
+ __exportStar(require("./create-story.action"), exports);
25
+ __exportStar(require("./search-posts.action"), exports);
26
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/providers/instagram/actions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oBAAoB;AACpB,uDAAqC;AACrC,8DAA4C;AAC5C,6DAA2C;AAC3C,gEAA8C;AAC9C,yDAAuC;AACvC,wDAAsC;AACtC,wDAAsC;AACtC,wDAAsC"}
@@ -0,0 +1,34 @@
1
+ import { InstagramBaseAction } from '../instagram-base.action';
2
+ import { ActionParam, ActionResultSimple, RunActionParams } from '@memberjunction/actions-base';
3
+ /**
4
+ * Schedules an Instagram post for future publication.
5
+ * Note: Instagram API has limited native scheduling support. This action provides
6
+ * scheduling information that needs to be integrated with Facebook Creator Studio
7
+ * or third-party scheduling tools.
8
+ */
9
+ export declare class InstagramSchedulePostAction extends InstagramBaseAction {
10
+ protected InternalRunAction(params: RunActionParams): Promise<ActionResultSimple>;
11
+ /**
12
+ * Generate a unique scheduling ID
13
+ */
14
+ private generateSchedulingId;
15
+ /**
16
+ * Store scheduling data (placeholder - implement based on your storage solution)
17
+ */
18
+ private storeSchedulingData;
19
+ /**
20
+ * Create a scheduled post using Facebook Creator Studio API
21
+ * Note: This is a conceptual implementation as Creator Studio API
22
+ * has specific requirements and approval process
23
+ */
24
+ private createCreatorStudioScheduledPost;
25
+ /**
26
+ * Define the parameters for this action
27
+ */
28
+ get Params(): ActionParam[];
29
+ /**
30
+ * Get the description for this action
31
+ */
32
+ get Description(): string;
33
+ }
34
+ //# sourceMappingURL=schedule-post.action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule-post.action.d.ts","sourceRoot":"","sources":["../../../../src/providers/instagram/actions/schedule-post.action.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGhG;;;;;GAKG;AACH,qBACa,2BAA4B,SAAQ,mBAAmB;cAEhD,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;IA8IvF;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAM5B;;OAEG;YACW,mBAAmB;IAcjC;;;;OAIG;YACW,gCAAgC;IAU9C;;OAEG;IACH,IAAW,MAAM,IAAI,WAAW,EAAE,CAuCjC;IAED;;OAEG;IACH,IAAW,WAAW,IAAI,MAAM,CAE/B;CACJ"}
@@ -0,0 +1,234 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.InstagramSchedulePostAction = void 0;
10
+ const global_1 = require("@memberjunction/global");
11
+ const instagram_base_action_1 = require("../instagram-base.action");
12
+ const core_1 = require("@memberjunction/core");
13
+ /**
14
+ * Schedules an Instagram post for future publication.
15
+ * Note: Instagram API has limited native scheduling support. This action provides
16
+ * scheduling information that needs to be integrated with Facebook Creator Studio
17
+ * or third-party scheduling tools.
18
+ */
19
+ let InstagramSchedulePostAction = class InstagramSchedulePostAction extends instagram_base_action_1.InstagramBaseAction {
20
+ async InternalRunAction(params) {
21
+ try {
22
+ const companyIntegrationId = this.getParamValue(params.Params, 'CompanyIntegrationID');
23
+ const content = this.getParamValue(params.Params, 'Content');
24
+ const mediaUrls = this.getParamValue(params.Params, 'MediaUrls');
25
+ const scheduledTime = this.getParamValue(params.Params, 'ScheduledTime');
26
+ const postType = this.getParamValue(params.Params, 'PostType') || 'FEED';
27
+ const locationId = this.getParamValue(params.Params, 'LocationID');
28
+ const taggedUsers = this.getParamValue(params.Params, 'TaggedUsers');
29
+ const firstComment = this.getParamValue(params.Params, 'FirstComment');
30
+ // Initialize OAuth
31
+ if (!await this.initializeOAuth(companyIntegrationId)) {
32
+ return {
33
+ Success: false,
34
+ Message: 'Failed to initialize Instagram authentication',
35
+ ResultCode: 'AUTH_FAILED'
36
+ };
37
+ }
38
+ // Validate inputs
39
+ if (!scheduledTime) {
40
+ return {
41
+ Success: false,
42
+ Message: 'ScheduledTime is required',
43
+ ResultCode: 'MISSING_PARAMS'
44
+ };
45
+ }
46
+ if (!mediaUrls || mediaUrls.length === 0) {
47
+ return {
48
+ Success: false,
49
+ Message: 'At least one media URL is required',
50
+ ResultCode: 'MISSING_MEDIA'
51
+ };
52
+ }
53
+ // Validate scheduled time
54
+ const scheduleDate = new Date(scheduledTime);
55
+ const now = new Date();
56
+ if (scheduleDate <= now) {
57
+ return {
58
+ Success: false,
59
+ Message: 'Scheduled time must be in the future',
60
+ ResultCode: 'INVALID_SCHEDULE_TIME'
61
+ };
62
+ }
63
+ // Instagram requires scheduling at least 10 minutes in the future
64
+ const minScheduleTime = new Date(now.getTime() + 10 * 60 * 1000);
65
+ if (scheduleDate < minScheduleTime) {
66
+ return {
67
+ Success: false,
68
+ Message: 'Posts must be scheduled at least 10 minutes in the future',
69
+ ResultCode: 'SCHEDULE_TOO_SOON'
70
+ };
71
+ }
72
+ // Instagram limits scheduling to 75 days in the future
73
+ const maxScheduleTime = new Date(now.getTime() + 75 * 24 * 60 * 60 * 1000);
74
+ if (scheduleDate > maxScheduleTime) {
75
+ return {
76
+ Success: false,
77
+ Message: 'Posts cannot be scheduled more than 75 days in the future',
78
+ ResultCode: 'SCHEDULE_TOO_FAR'
79
+ };
80
+ }
81
+ // Create scheduling payload
82
+ const schedulingData = {
83
+ content,
84
+ mediaUrls,
85
+ scheduledTime: scheduleDate.toISOString(),
86
+ postType,
87
+ locationId,
88
+ taggedUsers,
89
+ firstComment,
90
+ accountId: this.instagramBusinessAccountId,
91
+ pageId: this.facebookPageId
92
+ };
93
+ // Instagram doesn't have a direct scheduling API endpoint
94
+ // Instead, we need to use Facebook's Content Publishing API
95
+ // or integrate with Creator Studio
96
+ // For now, we'll store the scheduling data and return instructions
97
+ const schedulingId = this.generateSchedulingId();
98
+ // In a production environment, you would:
99
+ // 1. Store this in a database
100
+ // 2. Set up a cron job or scheduler to publish at the scheduled time
101
+ // 3. Or integrate with Facebook Creator Studio API
102
+ // Store scheduling data (this is a placeholder - implement your storage solution)
103
+ await this.storeSchedulingData(schedulingId, schedulingData);
104
+ // Store result in output params
105
+ const outputParams = [...params.Params];
106
+ outputParams.push({
107
+ Name: 'ResultData',
108
+ Type: 'Output',
109
+ Value: JSON.stringify({
110
+ schedulingId,
111
+ scheduledTime: scheduleDate.toISOString(),
112
+ postType,
113
+ mediaCount: mediaUrls.length,
114
+ instructions: {
115
+ creatorStudio: 'This post can be managed in Facebook Creator Studio',
116
+ api: 'Use the scheduling ID to retrieve and publish this post at the scheduled time',
117
+ webhook: 'Set up a webhook to be notified when it\'s time to publish'
118
+ },
119
+ schedulingData
120
+ })
121
+ });
122
+ return {
123
+ Success: true,
124
+ Message: 'Instagram post scheduled successfully',
125
+ ResultCode: 'SUCCESS',
126
+ Params: outputParams
127
+ };
128
+ }
129
+ catch (error) {
130
+ (0, core_1.LogError)('Failed to schedule Instagram post', error);
131
+ if (error.code === 'RATE_LIMIT') {
132
+ return {
133
+ Success: false,
134
+ Message: 'Instagram API rate limit exceeded. Please try again later.',
135
+ ResultCode: 'RATE_LIMIT'
136
+ };
137
+ }
138
+ return {
139
+ Success: false,
140
+ Message: `Failed to schedule post: ${error.message}`,
141
+ ResultCode: 'ERROR'
142
+ };
143
+ }
144
+ }
145
+ /**
146
+ * Generate a unique scheduling ID
147
+ */
148
+ generateSchedulingId() {
149
+ const timestamp = Date.now();
150
+ const random = Math.random().toString(36).substring(2, 9);
151
+ return `ig_schedule_${timestamp}_${random}`;
152
+ }
153
+ /**
154
+ * Store scheduling data (placeholder - implement based on your storage solution)
155
+ */
156
+ async storeSchedulingData(schedulingId, data) {
157
+ // In a real implementation, this would:
158
+ // 1. Store in a database (e.g., in a ScheduledPosts table)
159
+ // 2. Set up a scheduled job in your job queue
160
+ // 3. Or send to a scheduling service
161
+ // For demonstration, we'll just log it
162
+ (0, core_1.LogError)('Scheduling data would be stored:', schedulingId, data);
163
+ // You could also use MemberJunction entities to store this
164
+ // For example, create a "Social Media Scheduled Posts" entity
165
+ // and save the scheduling data there
166
+ }
167
+ /**
168
+ * Create a scheduled post using Facebook Creator Studio API
169
+ * Note: This is a conceptual implementation as Creator Studio API
170
+ * has specific requirements and approval process
171
+ */
172
+ async createCreatorStudioScheduledPost(data) {
173
+ // This would require:
174
+ // 1. Creator Studio API access
175
+ // 2. Additional permissions
176
+ // 3. Different API endpoints
177
+ // For now, we return a placeholder
178
+ throw new Error('Creator Studio integration not implemented. Use the scheduling data to create your own scheduling solution.');
179
+ }
180
+ /**
181
+ * Define the parameters for this action
182
+ */
183
+ get Params() {
184
+ return [
185
+ ...this.commonSocialParams,
186
+ {
187
+ Name: 'Content',
188
+ Type: 'Input',
189
+ Value: null
190
+ },
191
+ {
192
+ Name: 'MediaUrls',
193
+ Type: 'Input',
194
+ Value: null
195
+ },
196
+ {
197
+ Name: 'ScheduledTime',
198
+ Type: 'Input',
199
+ Value: null
200
+ },
201
+ {
202
+ Name: 'PostType',
203
+ Type: 'Input',
204
+ Value: 'FEED'
205
+ },
206
+ {
207
+ Name: 'LocationID',
208
+ Type: 'Input',
209
+ Value: null
210
+ },
211
+ {
212
+ Name: 'TaggedUsers',
213
+ Type: 'Input',
214
+ Value: null
215
+ },
216
+ {
217
+ Name: 'FirstComment',
218
+ Type: 'Input',
219
+ Value: null
220
+ }
221
+ ];
222
+ }
223
+ /**
224
+ * Get the description for this action
225
+ */
226
+ get Description() {
227
+ return 'Schedules an Instagram post for future publication. Returns scheduling data that can be used with Creator Studio or custom scheduling solutions.';
228
+ }
229
+ };
230
+ exports.InstagramSchedulePostAction = InstagramSchedulePostAction;
231
+ exports.InstagramSchedulePostAction = InstagramSchedulePostAction = __decorate([
232
+ (0, global_1.RegisterClass)(instagram_base_action_1.InstagramBaseAction, 'Instagram - Schedule Post')
233
+ ], InstagramSchedulePostAction);
234
+ //# sourceMappingURL=schedule-post.action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schedule-post.action.js","sourceRoot":"","sources":["../../../../src/providers/instagram/actions/schedule-post.action.ts"],"names":[],"mappings":"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"}