nodejs-insta-private-api-mqt 1.3.85 → 1.3.86

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 (464) hide show
  1. package/dist/dist/constants/constants.d.ts +1 -0
  2. package/dist/dist/constants/index.d.ts +25 -0
  3. package/dist/dist/core/client.d.ts +106 -0
  4. package/dist/dist/core/nav-chain.d.ts +77 -0
  5. package/dist/dist/core/repository.d.ts +3 -0
  6. package/dist/dist/core/request.d.ts +76 -0
  7. package/dist/dist/core/state.d.ts +605 -0
  8. package/dist/dist/core/utils.d.ts +129 -0
  9. package/dist/dist/downloadMedia.d.ts +106 -0
  10. package/{dist-ts → dist}/dist/downloadMedia.js +19 -20
  11. package/dist/dist/errors/index.d.ts +18 -0
  12. package/dist/dist/extend.d.ts +20 -0
  13. package/dist/dist/fbns/fbns.client.d.ts +43 -0
  14. package/dist/dist/fbns/fbns.client.events.d.ts +0 -0
  15. package/{dist-ts → dist}/dist/fbns/fbns.client.js +4 -5
  16. package/dist/dist/fbns/fbns.device-auth.d.ts +9 -0
  17. package/{src-ts/dist/fbns/fbns.device-auth.ts → dist/dist/fbns/fbns.device-auth.js} +6 -3
  18. package/dist/dist/fbns/fbns.types.d.ts +0 -0
  19. package/dist/dist/fbns/fbns.utilities.d.ts +4 -0
  20. package/dist/dist/fbns/index.d.ts +2 -0
  21. package/dist/dist/index.d.ts +49 -0
  22. package/dist/dist/mqtt-shim.d.ts +1 -0
  23. package/dist/dist/mqttot/index.d.ts +2 -0
  24. package/dist/dist/mqttot/mqttot.client.d.ts +77 -0
  25. package/{dist-ts → dist}/dist/mqttot/mqttot.client.js +10 -10
  26. package/dist/dist/mqttot/mqttot.connect.request.packet.d.ts +1 -0
  27. package/dist/dist/mqttot/mqttot.connect.response.packet.d.ts +5 -0
  28. package/dist/dist/mqttot/mqttot.connection.d.ts +6 -0
  29. package/dist/dist/realtime/commands/commands.d.ts +19 -0
  30. package/dist/dist/realtime/commands/direct.commands.d.ts +142 -0
  31. package/dist/dist/realtime/commands/enhanced.direct.commands.d.ts +425 -0
  32. package/{dist-ts → dist}/dist/realtime/commands/enhanced.direct.commands.js +8 -10
  33. package/dist/dist/realtime/commands/index.d.ts +2 -0
  34. package/dist/dist/realtime/delta-sync.manager.d.ts +82 -0
  35. package/{dist-ts → dist}/dist/realtime/delta-sync.manager.js +7 -10
  36. package/dist/dist/realtime/features/dm-sender.d.ts +20 -0
  37. package/{src-ts/dist/realtime/features/dm-sender.ts → dist/dist/realtime/features/dm-sender.js} +6 -3
  38. package/dist/dist/realtime/features/error-handler.d.ts +33 -0
  39. package/{dist-ts → dist}/dist/realtime/features/error-handler.js +4 -4
  40. package/dist/dist/realtime/features/gap-handler.d.ts +19 -0
  41. package/dist/dist/realtime/features/persistent-logger.d.ts +28 -0
  42. package/{dist-ts → dist}/dist/realtime/features/persistent-logger.js +3 -3
  43. package/dist/dist/realtime/features/presence.manager.d.ts +24 -0
  44. package/{src-ts/dist/realtime/features/presence.manager.ts → dist/dist/realtime/features/presence.manager.js} +2 -1
  45. package/dist/dist/realtime/features/session-health-monitor.d.ts +93 -0
  46. package/{src-ts/dist/realtime/features/session-health-monitor.ts → dist/dist/realtime/features/session-health-monitor.js} +45 -65
  47. package/dist/dist/realtime/index.d.ts +9 -0
  48. package/dist/dist/realtime/messages/app-presence.event.d.ts +0 -0
  49. package/dist/dist/realtime/messages/index.d.ts +2 -0
  50. package/dist/dist/realtime/messages/message-sync.message.d.ts +1 -0
  51. package/dist/dist/realtime/messages/realtime-sub.direct.data.d.ts +0 -0
  52. package/dist/dist/realtime/messages/thread-update.message.d.ts +0 -0
  53. package/dist/dist/realtime/mixins/index.d.ts +2 -0
  54. package/dist/dist/realtime/mixins/message-sync.mixin.d.ts +38 -0
  55. package/{dist-ts → dist}/dist/realtime/mixins/message-sync.mixin.js +16 -18
  56. package/dist/dist/realtime/mixins/mixin.d.ts +4 -0
  57. package/dist/dist/realtime/mixins/presence-typing.mixin.d.ts +9 -0
  58. package/dist/dist/realtime/mixins/realtime-sub.mixin.d.ts +37 -0
  59. package/{dist-ts → dist}/dist/realtime/mixins/realtime-sub.mixin.js +4 -5
  60. package/dist/dist/realtime/parsers/graphql-parser.d.ts +18 -0
  61. package/dist/dist/realtime/parsers/graphql.parser.d.ts +10 -0
  62. package/{src-ts/dist/realtime/parsers/graphql.parser.ts → dist/dist/realtime/parsers/graphql.parser.js} +0 -1
  63. package/dist/dist/realtime/parsers/index.d.ts +2 -0
  64. package/dist/dist/realtime/parsers/iris-parser.d.ts +18 -0
  65. package/dist/dist/realtime/parsers/iris.parser.d.ts +3 -0
  66. package/dist/dist/realtime/parsers/json-parser.d.ts +18 -0
  67. package/dist/dist/realtime/parsers/json.parser.d.ts +6 -0
  68. package/dist/dist/realtime/parsers/parser.d.ts +0 -0
  69. package/dist/dist/realtime/parsers/region-hint-parser.d.ts +18 -0
  70. package/dist/dist/realtime/parsers/region-hint.parser.d.ts +4 -0
  71. package/dist/dist/realtime/parsers/skywalker-parser.d.ts +18 -0
  72. package/dist/dist/realtime/parsers/skywalker.parser.d.ts +7 -0
  73. package/dist/dist/realtime/parsers-advanced.d.ts +93 -0
  74. package/{dist-ts → dist}/dist/realtime/parsers-advanced.js +5 -8
  75. package/dist/dist/realtime/proto-parser.d.ts +27 -0
  76. package/{dist-ts → dist}/dist/realtime/proto-parser.js +1 -2
  77. package/dist/dist/realtime/protocols/iris.handshake.d.ts +41 -0
  78. package/dist/dist/realtime/protocols/proto-definitions.d.ts +0 -0
  79. package/dist/dist/realtime/protocols/skywalker.protocol.d.ts +20 -0
  80. package/{src-ts/dist/realtime/protocols/skywalker.protocol.ts → dist/dist/realtime/protocols/skywalker.protocol.js} +8 -5
  81. package/dist/dist/realtime/realtime.client.d.ts +169 -0
  82. package/dist/dist/realtime/realtime.client.events.d.ts +0 -0
  83. package/{dist-ts → dist}/dist/realtime/realtime.client.js +75 -86
  84. package/dist/dist/realtime/realtime.service.d.ts +109 -0
  85. package/dist/dist/realtime/reconnect.manager.d.ts +15 -0
  86. package/dist/dist/realtime/session.manager.d.ts +25 -0
  87. package/dist/dist/realtime/subscriptions/graphql.subscription.d.ts +4 -0
  88. package/dist/dist/realtime/subscriptions/index.d.ts +2 -0
  89. package/dist/dist/realtime/subscriptions/skywalker.subscription.d.ts +4 -0
  90. package/dist/dist/realtime/topic-map.d.ts +97 -0
  91. package/dist/dist/realtime/topic.d.ts +71 -0
  92. package/dist/dist/repositories/account.repository.d.ts +72 -0
  93. package/{dist-ts → dist}/dist/repositories/account.repository.js +4 -6
  94. package/dist/dist/repositories/bloks.repository.d.ts +6 -0
  95. package/dist/dist/repositories/captcha.repository.d.ts +6 -0
  96. package/dist/dist/repositories/challenge.repository.d.ts +12 -0
  97. package/{dist-ts → dist}/dist/repositories/challenge.repository.js +1 -2
  98. package/dist/dist/repositories/clip.repository.d.ts +10 -0
  99. package/dist/dist/repositories/close-friends.repository.d.ts +8 -0
  100. package/dist/dist/repositories/collection.repository.d.ts +8 -0
  101. package/dist/dist/repositories/direct-thread.repository.d.ts +88 -0
  102. package/{dist-ts → dist}/dist/repositories/direct-thread.repository.js +7 -9
  103. package/dist/dist/repositories/direct.repository.d.ts +22 -0
  104. package/{dist-ts → dist}/dist/repositories/direct.repository.js +4 -5
  105. package/dist/dist/repositories/explore.repository.d.ts +7 -0
  106. package/dist/dist/repositories/fbsearch.repository.d.ts +14 -0
  107. package/dist/dist/repositories/feed.repository.d.ts +19 -0
  108. package/dist/dist/repositories/friendship.repository.d.ts +26 -0
  109. package/dist/dist/repositories/fundraiser.repository.d.ts +6 -0
  110. package/dist/dist/repositories/hashtag.repository.d.ts +11 -0
  111. package/dist/dist/repositories/highlights.repository.d.ts +11 -0
  112. package/dist/dist/repositories/insights.repository.d.ts +8 -0
  113. package/dist/dist/repositories/location.repository.d.ts +9 -0
  114. package/dist/dist/repositories/media.repository.d.ts +41 -0
  115. package/{dist-ts → dist}/dist/repositories/media.repository.js +1 -2
  116. package/dist/dist/repositories/multiple-accounts.repository.d.ts +7 -0
  117. package/dist/dist/repositories/news.repository.d.ts +6 -0
  118. package/dist/dist/repositories/note.repository.d.ts +8 -0
  119. package/dist/dist/repositories/notification.repository.d.ts +33 -0
  120. package/{dist-ts → dist}/dist/repositories/notification.repository.js +1 -1
  121. package/dist/dist/repositories/share.repository.d.ts +12 -0
  122. package/dist/dist/repositories/signup.repository.d.ts +19 -0
  123. package/dist/dist/repositories/story.repository.d.ts +23 -0
  124. package/{dist-ts → dist}/dist/repositories/story.repository.js +1 -2
  125. package/dist/dist/repositories/timeline.repository.d.ts +7 -0
  126. package/dist/dist/repositories/totp.repository.d.ts +14 -0
  127. package/dist/dist/repositories/track.repository.d.ts +7 -0
  128. package/{dist-ts → dist}/dist/repositories/track.repository.js +1 -2
  129. package/dist/dist/repositories/upload.repository.d.ts +30 -0
  130. package/{dist-ts → dist}/dist/repositories/upload.repository.js +4 -5
  131. package/dist/dist/repositories/user.repository.d.ts +52 -0
  132. package/dist/dist/sendmedia/index.d.ts +12 -0
  133. package/dist/dist/sendmedia/sendFile.d.ts +8 -0
  134. package/dist/dist/sendmedia/sendPhoto.d.ts +26 -0
  135. package/dist/dist/sendmedia/sendRavenPhoto.d.ts +14 -0
  136. package/{dist-ts → dist}/dist/sendmedia/sendRavenPhoto.js +4 -5
  137. package/dist/dist/sendmedia/sendRavenVideo.d.ts +15 -0
  138. package/{dist-ts → dist}/dist/sendmedia/sendRavenVideo.js +4 -5
  139. package/dist/dist/sendmedia/uploadPhoto.d.ts +8 -0
  140. package/dist/dist/sendmedia/uploadfFile.d.ts +13 -0
  141. package/{dist-ts → dist}/dist/sendmedia/uploadfFile.js +3 -4
  142. package/dist/dist/services/live.service.d.ts +13 -0
  143. package/dist/dist/services/search.service.d.ts +11 -0
  144. package/dist/dist/shared/index.d.ts +4 -0
  145. package/{src-ts/dist/shared/index.ts → dist/dist/shared/index.js} +14 -13
  146. package/dist/dist/shared/shared.d.ts +15 -0
  147. package/dist/dist/thrift/index.d.ts +2 -0
  148. package/dist/dist/thrift/thrift.d.ts +11 -0
  149. package/dist/dist/thrift/thrift.reading.d.ts +49 -0
  150. package/{dist-ts → dist}/dist/thrift/thrift.reading.js +3 -5
  151. package/dist/dist/thrift/thrift.writing.d.ts +49 -0
  152. package/{dist-ts → dist}/dist/thrift/thrift.writing.js +2 -4
  153. package/dist/dist/types/index.d.ts +28 -0
  154. package/dist/dist/useMultiFileAuthState.d.ts +267 -0
  155. package/{dist-ts → dist}/dist/useMultiFileAuthState.js +47 -61
  156. package/dist/dist/utils/helper-1.d.ts +0 -0
  157. package/dist/dist/utils/helper-10.d.ts +0 -0
  158. package/dist/dist/utils/helper-11.d.ts +0 -0
  159. package/dist/dist/utils/helper-12.d.ts +0 -0
  160. package/dist/dist/utils/helper-13.d.ts +0 -0
  161. package/dist/dist/utils/helper-14.d.ts +0 -0
  162. package/dist/dist/utils/helper-15.d.ts +0 -0
  163. package/dist/dist/utils/helper-16.d.ts +0 -0
  164. package/dist/dist/utils/helper-17.d.ts +0 -0
  165. package/dist/dist/utils/helper-18.d.ts +0 -0
  166. package/dist/dist/utils/helper-19.d.ts +0 -0
  167. package/dist/dist/utils/helper-2.d.ts +0 -0
  168. package/dist/dist/utils/helper-20.d.ts +0 -0
  169. package/dist/dist/utils/helper-21.d.ts +0 -0
  170. package/dist/dist/utils/helper-22.d.ts +0 -0
  171. package/dist/dist/utils/helper-23.d.ts +0 -0
  172. package/dist/dist/utils/helper-24.d.ts +0 -0
  173. package/dist/dist/utils/helper-25.d.ts +0 -0
  174. package/dist/dist/utils/helper-26.d.ts +0 -0
  175. package/dist/dist/utils/helper-27.d.ts +0 -0
  176. package/dist/dist/utils/helper-28.d.ts +0 -0
  177. package/dist/dist/utils/helper-29.d.ts +0 -0
  178. package/dist/dist/utils/helper-3.d.ts +0 -0
  179. package/dist/dist/utils/helper-30.d.ts +0 -0
  180. package/dist/dist/utils/helper-4.d.ts +0 -0
  181. package/dist/dist/utils/helper-5.d.ts +0 -0
  182. package/dist/dist/utils/helper-6.d.ts +0 -0
  183. package/dist/dist/utils/helper-7.d.ts +0 -0
  184. package/dist/dist/utils/helper-8.d.ts +0 -0
  185. package/dist/dist/utils/helper-9.d.ts +0 -0
  186. package/dist/dist/utils/index.d.ts +56 -0
  187. package/{dist-ts → dist}/dist/utils/index.js +1 -2
  188. package/dist/dist/utils/insta-mqtt-helper.d.ts +30 -0
  189. package/dist/examples/listen-to-messages.d.ts +4 -0
  190. package/{dist-ts → dist}/examples/listen-to-messages.js +1 -2
  191. package/package.json +37 -42
  192. package/dist-ts/dist/fbns/fbns.device-auth.js +0 -59
  193. package/dist-ts/dist/realtime/features/dm-sender.js +0 -94
  194. package/dist-ts/dist/realtime/features/presence.manager.js +0 -68
  195. package/dist-ts/dist/realtime/features/session-health-monitor.js +0 -327
  196. package/dist-ts/dist/realtime/parsers/graphql.parser.js +0 -22
  197. package/dist-ts/dist/realtime/protocols/skywalker.protocol.js +0 -96
  198. package/dist-ts/dist/shared/index.js +0 -98
  199. package/examples/listen-to-messages.js +0 -86
  200. package/src-ts/dist/constants/constants.ts +0 -342
  201. package/src-ts/dist/constants/index.ts +0 -58
  202. package/src-ts/dist/core/client.ts +0 -419
  203. package/src-ts/dist/core/nav-chain.ts +0 -282
  204. package/src-ts/dist/core/repository.ts +0 -7
  205. package/src-ts/dist/core/request.ts +0 -395
  206. package/src-ts/dist/core/state.ts +0 -1484
  207. package/src-ts/dist/core/utils.ts +0 -786
  208. package/src-ts/dist/downloadMedia.ts +0 -381
  209. package/src-ts/dist/errors/index.ts +0 -38
  210. package/src-ts/dist/extend.ts +0 -167
  211. package/src-ts/dist/fbns/fbns.client.events.ts +0 -3
  212. package/src-ts/dist/fbns/fbns.client.ts +0 -252
  213. package/src-ts/dist/fbns/fbns.types.ts +0 -3
  214. package/src-ts/dist/fbns/fbns.utilities.ts +0 -79
  215. package/src-ts/dist/fbns/index.ts +0 -21
  216. package/src-ts/dist/index.ts +0 -139
  217. package/src-ts/dist/mqtt-shim.ts +0 -15
  218. package/src-ts/dist/mqttot/index.ts +0 -21
  219. package/src-ts/dist/mqttot/mqttot.client.ts +0 -318
  220. package/src-ts/dist/mqttot/mqttot.connect.request.packet.ts +0 -9
  221. package/src-ts/dist/mqttot/mqttot.connect.response.packet.ts +0 -24
  222. package/src-ts/dist/mqttot/mqttot.connection.ts +0 -77
  223. package/src-ts/dist/realtime/commands/commands.ts +0 -71
  224. package/src-ts/dist/realtime/commands/direct.commands.ts +0 -417
  225. package/src-ts/dist/realtime/commands/enhanced.direct.commands.ts +0 -1731
  226. package/src-ts/dist/realtime/commands/index.ts +0 -20
  227. package/src-ts/dist/realtime/delta-sync.manager.ts +0 -293
  228. package/src-ts/dist/realtime/features/error-handler.ts +0 -185
  229. package/src-ts/dist/realtime/features/gap-handler.ts +0 -61
  230. package/src-ts/dist/realtime/features/persistent-logger.ts +0 -186
  231. package/src-ts/dist/realtime/index.ts +0 -30
  232. package/src-ts/dist/realtime/messages/app-presence.event.ts +0 -3
  233. package/src-ts/dist/realtime/messages/index.ts +0 -20
  234. package/src-ts/dist/realtime/messages/message-sync.message.ts +0 -43
  235. package/src-ts/dist/realtime/messages/realtime-sub.direct.data.ts +0 -3
  236. package/src-ts/dist/realtime/messages/thread-update.message.ts +0 -3
  237. package/src-ts/dist/realtime/mixins/index.ts +0 -20
  238. package/src-ts/dist/realtime/mixins/message-sync.mixin.ts +0 -596
  239. package/src-ts/dist/realtime/mixins/mixin.ts +0 -41
  240. package/src-ts/dist/realtime/mixins/presence-typing.mixin.ts +0 -33
  241. package/src-ts/dist/realtime/mixins/realtime-sub.mixin.ts +0 -181
  242. package/src-ts/dist/realtime/parsers/graphql-parser.ts +0 -43
  243. package/src-ts/dist/realtime/parsers/index.ts +0 -23
  244. package/src-ts/dist/realtime/parsers/iris-parser.ts +0 -43
  245. package/src-ts/dist/realtime/parsers/iris.parser.ts +0 -10
  246. package/src-ts/dist/realtime/parsers/json-parser.ts +0 -43
  247. package/src-ts/dist/realtime/parsers/json.parser.ts +0 -10
  248. package/src-ts/dist/realtime/parsers/parser.ts +0 -3
  249. package/src-ts/dist/realtime/parsers/region-hint-parser.ts +0 -43
  250. package/src-ts/dist/realtime/parsers/region-hint.parser.ts +0 -15
  251. package/src-ts/dist/realtime/parsers/skywalker-parser.ts +0 -43
  252. package/src-ts/dist/realtime/parsers/skywalker.parser.ts +0 -15
  253. package/src-ts/dist/realtime/parsers-advanced.ts +0 -158
  254. package/src-ts/dist/realtime/proto-parser.ts +0 -195
  255. package/src-ts/dist/realtime/protocols/iris.handshake.ts +0 -74
  256. package/src-ts/dist/realtime/protocols/proto-definitions.ts +0 -80
  257. package/src-ts/dist/realtime/realtime.client.events.ts +0 -3
  258. package/src-ts/dist/realtime/realtime.client.ts +0 -1996
  259. package/src-ts/dist/realtime/realtime.service.ts +0 -462
  260. package/src-ts/dist/realtime/reconnect.manager.ts +0 -88
  261. package/src-ts/dist/realtime/session.manager.ts +0 -121
  262. package/src-ts/dist/realtime/subscriptions/graphql.subscription.ts +0 -99
  263. package/src-ts/dist/realtime/subscriptions/index.ts +0 -19
  264. package/src-ts/dist/realtime/subscriptions/skywalker.subscription.ts +0 -13
  265. package/src-ts/dist/realtime/topic-map.ts +0 -71
  266. package/src-ts/dist/realtime/topic.ts +0 -80
  267. package/src-ts/dist/repositories/account.repository.ts +0 -1384
  268. package/src-ts/dist/repositories/bloks.repository.ts +0 -70
  269. package/src-ts/dist/repositories/captcha.repository.ts +0 -44
  270. package/src-ts/dist/repositories/challenge.repository.ts +0 -120
  271. package/src-ts/dist/repositories/clip.repository.ts +0 -165
  272. package/src-ts/dist/repositories/close-friends.repository.ts +0 -46
  273. package/src-ts/dist/repositories/collection.repository.ts +0 -68
  274. package/src-ts/dist/repositories/direct-thread.repository.ts +0 -446
  275. package/src-ts/dist/repositories/direct.repository.ts +0 -266
  276. package/src-ts/dist/repositories/explore.repository.ts +0 -70
  277. package/src-ts/dist/repositories/fbsearch.repository.ts +0 -140
  278. package/src-ts/dist/repositories/feed.repository.ts +0 -245
  279. package/src-ts/dist/repositories/friendship.repository.ts +0 -296
  280. package/src-ts/dist/repositories/fundraiser.repository.ts +0 -49
  281. package/src-ts/dist/repositories/hashtag.repository.ts +0 -99
  282. package/src-ts/dist/repositories/highlights.repository.ts +0 -121
  283. package/src-ts/dist/repositories/insights.repository.ts +0 -82
  284. package/src-ts/dist/repositories/location.repository.ts +0 -84
  285. package/src-ts/dist/repositories/media.repository.ts +0 -395
  286. package/src-ts/dist/repositories/multiple-accounts.repository.ts +0 -41
  287. package/src-ts/dist/repositories/news.repository.ts +0 -35
  288. package/src-ts/dist/repositories/note.repository.ts +0 -57
  289. package/src-ts/dist/repositories/notification.repository.ts +0 -79
  290. package/src-ts/dist/repositories/share.repository.ts +0 -35
  291. package/src-ts/dist/repositories/signup.repository.ts +0 -218
  292. package/src-ts/dist/repositories/story.repository.ts +0 -290
  293. package/src-ts/dist/repositories/timeline.repository.ts +0 -60
  294. package/src-ts/dist/repositories/totp.repository.ts +0 -139
  295. package/src-ts/dist/repositories/track.repository.ts +0 -53
  296. package/src-ts/dist/repositories/upload.repository.ts +0 -204
  297. package/src-ts/dist/repositories/user.repository.ts +0 -360
  298. package/src-ts/dist/sendmedia/index.ts +0 -27
  299. package/src-ts/dist/sendmedia/sendFile.ts +0 -72
  300. package/src-ts/dist/sendmedia/sendPhoto.ts +0 -142
  301. package/src-ts/dist/sendmedia/sendRavenPhoto.ts +0 -153
  302. package/src-ts/dist/sendmedia/sendRavenVideo.ts +0 -158
  303. package/src-ts/dist/sendmedia/uploadPhoto.ts +0 -107
  304. package/src-ts/dist/sendmedia/uploadfFile.ts +0 -130
  305. package/src-ts/dist/services/live.service.ts +0 -139
  306. package/src-ts/dist/services/search.service.ts +0 -115
  307. package/src-ts/dist/shared/shared.ts +0 -86
  308. package/src-ts/dist/thrift/index.ts +0 -20
  309. package/src-ts/dist/thrift/thrift.reading.ts +0 -368
  310. package/src-ts/dist/thrift/thrift.ts +0 -111
  311. package/src-ts/dist/thrift/thrift.writing.ts +0 -396
  312. package/src-ts/dist/types/index.ts +0 -285
  313. package/src-ts/dist/useMultiFileAuthState.ts +0 -1800
  314. package/src-ts/dist/utils/helper-1.ts +0 -1
  315. package/src-ts/dist/utils/helper-10.ts +0 -1
  316. package/src-ts/dist/utils/helper-11.ts +0 -1
  317. package/src-ts/dist/utils/helper-12.ts +0 -1
  318. package/src-ts/dist/utils/helper-13.ts +0 -1
  319. package/src-ts/dist/utils/helper-14.ts +0 -1
  320. package/src-ts/dist/utils/helper-15.ts +0 -1
  321. package/src-ts/dist/utils/helper-16.ts +0 -1
  322. package/src-ts/dist/utils/helper-17.ts +0 -1
  323. package/src-ts/dist/utils/helper-18.ts +0 -1
  324. package/src-ts/dist/utils/helper-19.ts +0 -1
  325. package/src-ts/dist/utils/helper-2.ts +0 -1
  326. package/src-ts/dist/utils/helper-20.ts +0 -1
  327. package/src-ts/dist/utils/helper-21.ts +0 -1
  328. package/src-ts/dist/utils/helper-22.ts +0 -1
  329. package/src-ts/dist/utils/helper-23.ts +0 -1
  330. package/src-ts/dist/utils/helper-24.ts +0 -1
  331. package/src-ts/dist/utils/helper-25.ts +0 -1
  332. package/src-ts/dist/utils/helper-26.ts +0 -1
  333. package/src-ts/dist/utils/helper-27.ts +0 -1
  334. package/src-ts/dist/utils/helper-28.ts +0 -1
  335. package/src-ts/dist/utils/helper-29.ts +0 -1
  336. package/src-ts/dist/utils/helper-3.ts +0 -1
  337. package/src-ts/dist/utils/helper-30.ts +0 -1
  338. package/src-ts/dist/utils/helper-4.ts +0 -1
  339. package/src-ts/dist/utils/helper-5.ts +0 -1
  340. package/src-ts/dist/utils/helper-6.ts +0 -1
  341. package/src-ts/dist/utils/helper-7.ts +0 -1
  342. package/src-ts/dist/utils/helper-8.ts +0 -1
  343. package/src-ts/dist/utils/helper-9.ts +0 -1
  344. package/src-ts/dist/utils/index.ts +0 -280
  345. package/src-ts/dist/utils/insta-mqtt-helper.ts +0 -128
  346. package/src-ts/examples/listen-to-messages.ts +0 -86
  347. /package/{dist-ts → dist}/dist/constants/constants.js +0 -0
  348. /package/{dist-ts → dist}/dist/constants/index.js +0 -0
  349. /package/{dist-ts → dist}/dist/core/client.js +0 -0
  350. /package/{dist-ts → dist}/dist/core/nav-chain.js +0 -0
  351. /package/{dist-ts → dist}/dist/core/repository.js +0 -0
  352. /package/{dist-ts → dist}/dist/core/request.js +0 -0
  353. /package/{dist-ts → dist}/dist/core/state.js +0 -0
  354. /package/{dist-ts → dist}/dist/core/utils.js +0 -0
  355. /package/{dist-ts → dist}/dist/errors/index.js +0 -0
  356. /package/{dist-ts → dist}/dist/extend.js +0 -0
  357. /package/{dist-ts → dist}/dist/fbns/fbns.client.events.js +0 -0
  358. /package/{dist-ts → dist}/dist/fbns/fbns.types.js +0 -0
  359. /package/{dist-ts → dist}/dist/fbns/fbns.utilities.js +0 -0
  360. /package/{dist-ts → dist}/dist/fbns/index.js +0 -0
  361. /package/{dist-ts → dist}/dist/index.js +0 -0
  362. /package/{dist-ts → dist}/dist/mqtt-shim.js +0 -0
  363. /package/{dist-ts → dist}/dist/mqttot/index.js +0 -0
  364. /package/{dist-ts → dist}/dist/mqttot/mqttot.connect.request.packet.js +0 -0
  365. /package/{dist-ts → dist}/dist/mqttot/mqttot.connect.response.packet.js +0 -0
  366. /package/{dist-ts → dist}/dist/mqttot/mqttot.connection.js +0 -0
  367. /package/{dist-ts → dist}/dist/realtime/commands/commands.js +0 -0
  368. /package/{dist-ts → dist}/dist/realtime/commands/direct.commands.js +0 -0
  369. /package/{dist-ts → dist}/dist/realtime/commands/index.js +0 -0
  370. /package/{dist-ts → dist}/dist/realtime/features/gap-handler.js +0 -0
  371. /package/{dist-ts → dist}/dist/realtime/index.js +0 -0
  372. /package/{dist-ts → dist}/dist/realtime/messages/app-presence.event.js +0 -0
  373. /package/{dist-ts → dist}/dist/realtime/messages/index.js +0 -0
  374. /package/{dist-ts → dist}/dist/realtime/messages/message-sync.message.js +0 -0
  375. /package/{dist-ts → dist}/dist/realtime/messages/realtime-sub.direct.data.js +0 -0
  376. /package/{dist-ts → dist}/dist/realtime/messages/thread-update.message.js +0 -0
  377. /package/{dist-ts → dist}/dist/realtime/mixins/index.js +0 -0
  378. /package/{dist-ts → dist}/dist/realtime/mixins/mixin.js +0 -0
  379. /package/{dist-ts → dist}/dist/realtime/mixins/presence-typing.mixin.js +0 -0
  380. /package/{dist-ts → dist}/dist/realtime/parsers/graphql-parser.js +0 -0
  381. /package/{dist-ts → dist}/dist/realtime/parsers/index.js +0 -0
  382. /package/{dist-ts → dist}/dist/realtime/parsers/iris-parser.js +0 -0
  383. /package/{dist-ts → dist}/dist/realtime/parsers/iris.parser.js +0 -0
  384. /package/{dist-ts → dist}/dist/realtime/parsers/json-parser.js +0 -0
  385. /package/{dist-ts → dist}/dist/realtime/parsers/json.parser.js +0 -0
  386. /package/{dist-ts → dist}/dist/realtime/parsers/parser.js +0 -0
  387. /package/{dist-ts → dist}/dist/realtime/parsers/region-hint-parser.js +0 -0
  388. /package/{dist-ts → dist}/dist/realtime/parsers/region-hint.parser.js +0 -0
  389. /package/{dist-ts → dist}/dist/realtime/parsers/skywalker-parser.js +0 -0
  390. /package/{dist-ts → dist}/dist/realtime/parsers/skywalker.parser.js +0 -0
  391. /package/{dist-ts → dist}/dist/realtime/protocols/iris.handshake.js +0 -0
  392. /package/{dist-ts → dist}/dist/realtime/protocols/proto-definitions.js +0 -0
  393. /package/{dist-ts → dist}/dist/realtime/realtime.client.events.js +0 -0
  394. /package/{dist-ts → dist}/dist/realtime/realtime.service.js +0 -0
  395. /package/{dist-ts → dist}/dist/realtime/reconnect.manager.js +0 -0
  396. /package/{dist-ts → dist}/dist/realtime/session.manager.js +0 -0
  397. /package/{dist-ts → dist}/dist/realtime/subscriptions/graphql.subscription.js +0 -0
  398. /package/{dist-ts → dist}/dist/realtime/subscriptions/index.js +0 -0
  399. /package/{dist-ts → dist}/dist/realtime/subscriptions/skywalker.subscription.js +0 -0
  400. /package/{dist-ts → dist}/dist/realtime/topic-map.js +0 -0
  401. /package/{dist-ts → dist}/dist/realtime/topic.js +0 -0
  402. /package/{dist-ts → dist}/dist/repositories/bloks.repository.js +0 -0
  403. /package/{dist-ts → dist}/dist/repositories/captcha.repository.js +0 -0
  404. /package/{dist-ts → dist}/dist/repositories/clip.repository.js +0 -0
  405. /package/{dist-ts → dist}/dist/repositories/close-friends.repository.js +0 -0
  406. /package/{dist-ts → dist}/dist/repositories/collection.repository.js +0 -0
  407. /package/{dist-ts → dist}/dist/repositories/explore.repository.js +0 -0
  408. /package/{dist-ts → dist}/dist/repositories/fbsearch.repository.js +0 -0
  409. /package/{dist-ts → dist}/dist/repositories/feed.repository.js +0 -0
  410. /package/{dist-ts → dist}/dist/repositories/friendship.repository.js +0 -0
  411. /package/{dist-ts → dist}/dist/repositories/fundraiser.repository.js +0 -0
  412. /package/{dist-ts → dist}/dist/repositories/hashtag.repository.js +0 -0
  413. /package/{dist-ts → dist}/dist/repositories/highlights.repository.js +0 -0
  414. /package/{dist-ts → dist}/dist/repositories/insights.repository.js +0 -0
  415. /package/{dist-ts → dist}/dist/repositories/location.repository.js +0 -0
  416. /package/{dist-ts → dist}/dist/repositories/multiple-accounts.repository.js +0 -0
  417. /package/{dist-ts → dist}/dist/repositories/news.repository.js +0 -0
  418. /package/{dist-ts → dist}/dist/repositories/note.repository.js +0 -0
  419. /package/{dist-ts → dist}/dist/repositories/share.repository.js +0 -0
  420. /package/{dist-ts → dist}/dist/repositories/signup.repository.js +0 -0
  421. /package/{dist-ts → dist}/dist/repositories/timeline.repository.js +0 -0
  422. /package/{dist-ts → dist}/dist/repositories/totp.repository.js +0 -0
  423. /package/{dist-ts → dist}/dist/repositories/user.repository.js +0 -0
  424. /package/{dist-ts → dist}/dist/sendmedia/index.js +0 -0
  425. /package/{dist-ts → dist}/dist/sendmedia/sendFile.js +0 -0
  426. /package/{dist-ts → dist}/dist/sendmedia/sendPhoto.js +0 -0
  427. /package/{dist-ts → dist}/dist/sendmedia/uploadPhoto.js +0 -0
  428. /package/{dist-ts → dist}/dist/services/live.service.js +0 -0
  429. /package/{dist-ts → dist}/dist/services/search.service.js +0 -0
  430. /package/{dist-ts → dist}/dist/shared/shared.js +0 -0
  431. /package/{dist-ts → dist}/dist/thrift/index.js +0 -0
  432. /package/{dist-ts → dist}/dist/thrift/thrift.js +0 -0
  433. /package/{dist-ts → dist}/dist/types/index.js +0 -0
  434. /package/{dist-ts → dist}/dist/utils/helper-1.js +0 -0
  435. /package/{dist-ts → dist}/dist/utils/helper-10.js +0 -0
  436. /package/{dist-ts → dist}/dist/utils/helper-11.js +0 -0
  437. /package/{dist-ts → dist}/dist/utils/helper-12.js +0 -0
  438. /package/{dist-ts → dist}/dist/utils/helper-13.js +0 -0
  439. /package/{dist-ts → dist}/dist/utils/helper-14.js +0 -0
  440. /package/{dist-ts → dist}/dist/utils/helper-15.js +0 -0
  441. /package/{dist-ts → dist}/dist/utils/helper-16.js +0 -0
  442. /package/{dist-ts → dist}/dist/utils/helper-17.js +0 -0
  443. /package/{dist-ts → dist}/dist/utils/helper-18.js +0 -0
  444. /package/{dist-ts → dist}/dist/utils/helper-19.js +0 -0
  445. /package/{dist-ts → dist}/dist/utils/helper-2.js +0 -0
  446. /package/{dist-ts → dist}/dist/utils/helper-20.js +0 -0
  447. /package/{dist-ts → dist}/dist/utils/helper-21.js +0 -0
  448. /package/{dist-ts → dist}/dist/utils/helper-22.js +0 -0
  449. /package/{dist-ts → dist}/dist/utils/helper-23.js +0 -0
  450. /package/{dist-ts → dist}/dist/utils/helper-24.js +0 -0
  451. /package/{dist-ts → dist}/dist/utils/helper-25.js +0 -0
  452. /package/{dist-ts → dist}/dist/utils/helper-26.js +0 -0
  453. /package/{dist-ts → dist}/dist/utils/helper-27.js +0 -0
  454. /package/{dist-ts → dist}/dist/utils/helper-28.js +0 -0
  455. /package/{dist-ts → dist}/dist/utils/helper-29.js +0 -0
  456. /package/{dist-ts → dist}/dist/utils/helper-3.js +0 -0
  457. /package/{dist-ts → dist}/dist/utils/helper-30.js +0 -0
  458. /package/{dist-ts → dist}/dist/utils/helper-4.js +0 -0
  459. /package/{dist-ts → dist}/dist/utils/helper-5.js +0 -0
  460. /package/{dist-ts → dist}/dist/utils/helper-6.js +0 -0
  461. /package/{dist-ts → dist}/dist/utils/helper-7.js +0 -0
  462. /package/{dist-ts → dist}/dist/utils/helper-8.js +0 -0
  463. /package/{dist-ts → dist}/dist/utils/helper-9.js +0 -0
  464. /package/{dist-ts → dist}/dist/utils/insta-mqtt-helper.js +0 -0
@@ -1,360 +0,0 @@
1
- const Repository = require('../core/repository');
2
-
3
- const ALPHABET = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_';
4
-
5
- class UserRepository extends Repository {
6
- constructor(client) {
7
- super(client);
8
- this._usersCache = {};
9
- this._usernamesCache = {};
10
- }
11
-
12
- async infoByUsername(username) {
13
- const response = await this.client.request.send({
14
- method: 'GET',
15
- url: `/api/v1/users/${username}/usernameinfo/`,
16
- });
17
- return response.body.user;
18
- }
19
-
20
- async info(userId) {
21
- const response = await this.client.request.send({
22
- method: 'GET',
23
- url: `/api/v1/users/${userId}/info/`,
24
- });
25
- return response.body.user;
26
- }
27
-
28
- async infoV1(userId, fromModule = 'self_profile') {
29
- const response = await this.client.request.send({
30
- method: 'GET',
31
- url: `/api/v1/users/${userId}/info/`,
32
- qs: { from_module: fromModule },
33
- });
34
- return response.body.user;
35
- }
36
-
37
- async userIdFromUsername(username) {
38
- const user = await this.infoByUsername(username.toLowerCase());
39
- return String(user.pk);
40
- }
41
-
42
- async usernameFromUserId(userId) {
43
- const user = await this.info(userId);
44
- return user.username;
45
- }
46
-
47
- async search(query, count = 50) {
48
- const response = await this.client.request.send({
49
- method: 'GET',
50
- url: '/api/v1/users/search/',
51
- qs: { q: query, count },
52
- });
53
- return response.body.users;
54
- }
55
-
56
- async searchExact(username) {
57
- const response = await this.client.request.send({
58
- method: 'GET',
59
- url: '/api/v1/users/search/',
60
- qs: {
61
- q: username,
62
- count: 1,
63
- search_surface: 'user_search_page',
64
- },
65
- });
66
- const users = response.body.users || [];
67
- return users.find(u => u.username === username) || null;
68
- }
69
-
70
- async follow(userId) {
71
- const response = await this.client.request.send({
72
- method: 'POST',
73
- url: `/api/v1/friendships/create/${userId}/`,
74
- form: this.client.request.sign({
75
- _uid: this.client.state.cookieUserId,
76
- _uuid: this.client.state.uuid,
77
- user_id: userId,
78
- }),
79
- });
80
- return response.body;
81
- }
82
-
83
- async unfollow(userId) {
84
- const response = await this.client.request.send({
85
- method: 'POST',
86
- url: `/api/v1/friendships/destroy/${userId}/`,
87
- form: this.client.request.sign({
88
- _uid: this.client.state.cookieUserId,
89
- _uuid: this.client.state.uuid,
90
- user_id: userId,
91
- }),
92
- });
93
- return response.body;
94
- }
95
-
96
- async getFollowers(userId, amount = 200, maxId = null) {
97
- return this._paginateUsers(`/api/v1/friendships/${userId}/followers/`, amount, maxId);
98
- }
99
-
100
- async getFollowing(userId, amount = 200, maxId = null) {
101
- return this._paginateUsers(`/api/v1/friendships/${userId}/following/`, amount, maxId);
102
- }
103
-
104
- async _paginateUsers(endpoint, amount = 200, startMaxId = null) {
105
- const allUsers = [];
106
- let nextMaxId = startMaxId;
107
- while (allUsers.length < amount) {
108
- const qs = {};
109
- if (nextMaxId) qs.max_id = nextMaxId;
110
- const response = await this.client.request.send({
111
- method: 'GET',
112
- url: endpoint,
113
- qs,
114
- });
115
- const body = response.body;
116
- const users = body.users || [];
117
- allUsers.push(...users);
118
- if (!body.next_max_id) break;
119
- nextMaxId = body.next_max_id;
120
- }
121
- return { users: allUsers.slice(0, amount), nextMaxId };
122
- }
123
-
124
- async getFriendshipStatuses(userIds) {
125
- const response = await this.client.request.send({
126
- method: 'POST',
127
- url: '/api/v1/friendships/show_many/',
128
- form: this.client.request.sign({
129
- user_ids: Array.isArray(userIds) ? userIds.join(',') : userIds,
130
- _uuid: this.client.state.uuid,
131
- }),
132
- });
133
- return response.body;
134
- }
135
-
136
- async friendshipShow(userId) {
137
- const response = await this.client.request.send({
138
- method: 'GET',
139
- url: `/api/v1/friendships/show/${userId}/`,
140
- });
141
- return response.body;
142
- }
143
-
144
- async getReelsTrayFeed() {
145
- const response = await this.client.request.send({
146
- method: 'GET',
147
- url: '/api/v1/feed/reels_tray/',
148
- });
149
- return response.body;
150
- }
151
-
152
- async getUserTags(userId, maxId = null) {
153
- const qs = {};
154
- if (maxId) qs.max_id = maxId;
155
- const response = await this.client.request.send({
156
- method: 'GET',
157
- url: `/api/v1/usertags/${userId}/feed/`,
158
- qs,
159
- });
160
- return response.body;
161
- }
162
-
163
- async getUserMedias(userId, amount = 50, maxId = null) {
164
- const allItems = [];
165
- let nextMaxId = maxId;
166
- while (allItems.length < amount) {
167
- const qs = { count: Math.min(amount - allItems.length, 33) };
168
- if (nextMaxId) qs.max_id = nextMaxId;
169
- const response = await this.client.request.send({
170
- method: 'GET',
171
- url: `/api/v1/feed/user/${userId}/`,
172
- qs,
173
- });
174
- const body = response.body;
175
- allItems.push(...(body.items || []));
176
- if (!body.more_available || !body.next_max_id) break;
177
- nextMaxId = body.next_max_id;
178
- }
179
- return allItems.slice(0, amount);
180
- }
181
-
182
- async getUserReels(userId, amount = 50, maxId = null) {
183
- const allItems = [];
184
- let nextMaxId = maxId;
185
- while (allItems.length < amount) {
186
- const response = await this.client.request.send({
187
- method: 'POST',
188
- url: '/api/v1/clips/user/',
189
- form: {
190
- target_user_id: userId,
191
- page_size: Math.min(amount - allItems.length, 12),
192
- max_id: nextMaxId || '',
193
- },
194
- });
195
- const body = response.body;
196
- for (const item of (body.items || [])) {
197
- allItems.push(item.media || item);
198
- }
199
- const pagingInfo = body.paging_info || {};
200
- if (!pagingInfo.more_available) break;
201
- nextMaxId = pagingInfo.max_id || '';
202
- }
203
- return allItems.slice(0, amount);
204
- }
205
-
206
- async getUserClips(userId, amount = 50, maxId = null) {
207
- return this.getUserReels(userId, amount, maxId);
208
- }
209
-
210
- async getUserStories(userId) {
211
- const response = await this.client.request.send({
212
- method: 'POST',
213
- url: `/api/v1/feed/user/${userId}/story/`,
214
- form: {
215
- supported_capabilities_new: JSON.stringify(this.client.state.constants.SUPPORTED_CAPABILITIES),
216
- },
217
- });
218
- return response.body;
219
- }
220
-
221
- async setSelfBio(biography) {
222
- const response = await this.client.request.send({
223
- method: 'POST',
224
- url: '/api/v1/accounts/set_biography/',
225
- form: this.client.request.sign({
226
- _uid: this.client.state.cookieUserId,
227
- _uuid: this.client.state.uuid,
228
- raw_text: biography,
229
- }),
230
- });
231
- return response.body;
232
- }
233
-
234
- async report(userId, reason = 1) {
235
- const response = await this.client.request.send({
236
- method: 'POST',
237
- url: `/api/v1/users/${userId}/flag_user/`,
238
- form: this.client.request.sign({
239
- reason_id: reason,
240
- _uid: this.client.state.cookieUserId,
241
- _uuid: this.client.state.uuid,
242
- }),
243
- });
244
- return response.body;
245
- }
246
-
247
- async getSuggested() {
248
- const response = await this.client.request.send({
249
- method: 'GET',
250
- url: '/api/v1/discover/ayml/',
251
- });
252
- return response.body;
253
- }
254
-
255
- async block(userId) {
256
- const response = await this.client.request.send({
257
- method: 'POST',
258
- url: `/api/v1/friendships/block/${userId}/`,
259
- form: this.client.request.sign({
260
- _uid: this.client.state.cookieUserId,
261
- _uuid: this.client.state.uuid,
262
- user_id: userId,
263
- }),
264
- });
265
- return response.body;
266
- }
267
-
268
- async unblock(userId) {
269
- const response = await this.client.request.send({
270
- method: 'POST',
271
- url: `/api/v1/friendships/unblock/${userId}/`,
272
- form: this.client.request.sign({
273
- _uid: this.client.state.cookieUserId,
274
- _uuid: this.client.state.uuid,
275
- user_id: userId,
276
- }),
277
- });
278
- return response.body;
279
- }
280
-
281
- async mute(userId, { muteStories = false, mutePosts = false } = {}) {
282
- const response = await this.client.request.send({
283
- method: 'POST',
284
- url: `/api/v1/friendships/mute_posts_or_story_from_follow/`,
285
- form: this.client.request.sign({
286
- _uid: this.client.state.cookieUserId,
287
- _uuid: this.client.state.uuid,
288
- target_posts_author_id: mutePosts ? userId : '',
289
- target_reel_author_id: muteStories ? userId : '',
290
- }),
291
- });
292
- return response.body;
293
- }
294
-
295
- async unmute(userId, { unmuteStories = false, unmutePosts = false } = {}) {
296
- const response = await this.client.request.send({
297
- method: 'POST',
298
- url: `/api/v1/friendships/unmute_posts_or_story_from_follow/`,
299
- form: this.client.request.sign({
300
- _uid: this.client.state.cookieUserId,
301
- _uuid: this.client.state.uuid,
302
- target_posts_author_id: unmutePosts ? userId : '',
303
- target_reel_author_id: unmuteStories ? userId : '',
304
- }),
305
- });
306
- return response.body;
307
- }
308
-
309
- async removeFollower(userId) {
310
- const response = await this.client.request.send({
311
- method: 'POST',
312
- url: `/api/v1/friendships/remove_follower/${userId}/`,
313
- form: this.client.request.sign({
314
- _uid: this.client.state.cookieUserId,
315
- _uuid: this.client.state.uuid,
316
- user_id: userId,
317
- }),
318
- });
319
- return response.body;
320
- }
321
-
322
- async getBlockedUsers() {
323
- const response = await this.client.request.send({
324
- method: 'GET',
325
- url: '/api/v1/users/blocked_list/',
326
- });
327
- return response.body;
328
- }
329
-
330
- async getMutualFollowers(userId) {
331
- const response = await this.client.request.send({
332
- method: 'GET',
333
- url: `/api/v1/friendships/${userId}/mutual_followers/`,
334
- });
335
- return response.body;
336
- }
337
-
338
- static mediaPkFromCode(code) {
339
- let pk = BigInt(0);
340
- for (let i = 0; i < code.length; i++) {
341
- const idx = ALPHABET.indexOf(code[i]);
342
- if (idx === -1) continue;
343
- pk = pk * BigInt(64) + BigInt(idx);
344
- }
345
- return pk.toString();
346
- }
347
-
348
- static mediaCodeFromPk(pk) {
349
- let id = BigInt(pk);
350
- let code = '';
351
- while (id > BigInt(0)) {
352
- const remainder = Number(id % BigInt(64));
353
- code = ALPHABET[remainder] + code;
354
- id = id / BigInt(64);
355
- }
356
- return code;
357
- }
358
- }
359
-
360
- module.exports = UserRepository;
@@ -1,27 +0,0 @@
1
- const sendPhoto = require('./sendPhoto');
2
- const sendFile = require('./sendFile');
3
- const uploadPhoto = require('./uploadPhoto');
4
- const uploadFile = require('./uploadfFile');
5
- const sendRavenPhotoModule = require('./sendRavenPhoto');
6
- const sendRavenVideoModule = require('./sendRavenVideo');
7
-
8
- const sendRavenPhoto = sendRavenPhotoModule.sendRavenPhoto || sendRavenPhotoModule;
9
- const sendRavenPhotoOnce = sendRavenPhotoModule.sendRavenPhotoOnce;
10
- const sendRavenPhotoReplayable = sendRavenPhotoModule.sendRavenPhotoReplayable;
11
-
12
- const sendRavenVideo = sendRavenVideoModule.sendRavenVideo || sendRavenVideoModule;
13
- const sendRavenVideoOnce = sendRavenVideoModule.sendRavenVideoOnce;
14
- const sendRavenVideoReplayable = sendRavenVideoModule.sendRavenVideoReplayable;
15
-
16
- module.exports = {
17
- sendPhoto,
18
- sendFile,
19
- uploadPhoto,
20
- uploadFile,
21
- sendRavenPhoto,
22
- sendRavenPhotoOnce,
23
- sendRavenPhotoReplayable,
24
- sendRavenVideo,
25
- sendRavenVideoOnce,
26
- sendRavenVideoReplayable,
27
- };
@@ -1,72 +0,0 @@
1
- /**
2
- * sendFile.js - Fixed to support MQTT if realtime client provided
3
- */
4
-
5
- const uploadFile = require('./uploadfFile');
6
-
7
- /**
8
- * Send a file to Instagram Direct.
9
- */
10
- async function sendFile(session, opts = {}) {
11
- const {
12
- fileBuffer,
13
- mimeType = 'video/mp4',
14
- fileName,
15
- caption = '',
16
- userId,
17
- threadId,
18
- signal,
19
- realtimeClient,
20
- } = opts;
21
-
22
- if (!userId && !threadId) {
23
- throw new Error('sendFile: Provide userId or threadId.');
24
- }
25
- if (!fileBuffer || !Buffer.isBuffer(fileBuffer) || fileBuffer.length === 0) {
26
- throw new Error('sendFile: fileBuffer must be a non-empty Buffer.');
27
- }
28
-
29
- // 1) Upload
30
- const upload_id = await uploadFile(session, fileBuffer, {
31
- mimeType,
32
- fileName,
33
- signal,
34
- });
35
-
36
- // 2) MQTT Check
37
- if (realtimeClient && realtimeClient.direct && typeof realtimeClient.direct.sendMedia === 'function') {
38
- return await realtimeClient.direct.sendMedia({
39
- text: caption,
40
- mediaId: upload_id,
41
- threadId: threadId || userId,
42
- });
43
- }
44
-
45
- // 3) REST Fallback
46
- const url = '/direct_v2/threads/broadcast/upload_video/';
47
- const form = {
48
- upload_id,
49
- action: 'send_item',
50
- caption,
51
- };
52
-
53
- if (userId) {
54
- form.recipient_users = JSON.stringify([[String(userId)]]);
55
- } else {
56
- form.thread_ids = JSON.stringify([String(threadId)]);
57
- }
58
-
59
- try {
60
- const response = await session.request.send({
61
- url,
62
- method: 'POST',
63
- form,
64
- signal,
65
- });
66
- return response;
67
- } catch (err) {
68
- throw new Error(`sendFile: Broadcast failed — ${err.message}`);
69
- }
70
- }
71
-
72
- module.exports = sendFile;
@@ -1,142 +0,0 @@
1
- /**
2
- * uploadPhoto.fixed.js
3
- *
4
- * Fixed and hardened version of uploadPhoto for nodejs-insta-private-api(-mqtt).
5
- * - sends Buffer in `data` (axios uses `data`, not `body`)
6
- * - sets axios-friendly headers (X-Entity-Type uses provided mimeType)
7
- * - removes explicit Accept-Encoding header (axios handles it)
8
- * - sets maxContentLength / maxBodyLength via Request httpClient (should be patched there too)
9
- * - returns the rupload/uploadId (server-provided when available, otherwise local uploadId)
10
- *
11
- * Usage:
12
- * const uploadPhoto = require('./uploadPhoto.fixed');
13
- * const uploadId = await uploadPhoto(session, photoBuffer, { mimeType: 'image/jpeg' });
14
- *
15
- * Note: session.request.send(...) is expected to accept axios-like options.
16
- */
17
-
18
- const { v4: uuidv4 } = require('uuid');
19
-
20
- function validateImageInput(photoBuffer, mimeType) {
21
- if (!photoBuffer || !Buffer.isBuffer(photoBuffer) || photoBuffer.length === 0) {
22
- throw new Error('uploadPhoto: photoBuffer must be a non-empty Buffer.');
23
- }
24
- const allowed = ['image/jpeg', 'image/jpg', 'image/png'];
25
- if (!allowed.includes(mimeType)) {
26
- throw new Error(`uploadPhoto: mimeType must be one of ${allowed.join(', ')}.`);
27
- }
28
- }
29
-
30
- function buildRuploadParams(uploadId, mimeType) {
31
- const isJpeg = mimeType === 'image/jpeg' || mimeType === 'image/jpg';
32
- const compression = isJpeg
33
- ? { lib_name: 'moz', lib_version: '3.1.m', quality: '80' }
34
- : { lib_name: 'png', lib_version: '1.0', quality: '100' };
35
-
36
- // Match instagram-private-api shape; include is_sidecar for compatibility
37
- return {
38
- retry_context: JSON.stringify({ num_step_auto_retry: 0, num_reupload: 0, num_step_manual_retry: 0 }),
39
- media_type: '1',
40
- upload_id: uploadId.toString(),
41
- xsharing_user_ids: JSON.stringify([]),
42
- image_compression: JSON.stringify(compression),
43
- is_sidecar: '0'
44
- };
45
- }
46
-
47
- /**
48
- * Upload a photo buffer to Instagram rupload endpoint.
49
- *
50
- * @param {Object} session - client/session object that exposes session.request.send(options)
51
- * @param {Buffer} photoBuffer - binary buffer of the image
52
- * @param {Object} options - { mimeType = 'image/jpeg', fileName?, signal? }
53
- * @returns {Promise<string>} uploadId (server upload_id when available, otherwise local uploadId)
54
- */
55
- async function uploadPhoto(session, photoBuffer, options = {}) {
56
- const {
57
- mimeType = 'image/jpeg',
58
- fileName,
59
- signal
60
- } = options;
61
-
62
- validateImageInput(photoBuffer, mimeType);
63
-
64
- // local upload id similar to insta clients
65
- const uploadId = Date.now().toString();
66
- // create an entity name similar to instagram-private-api naming
67
- const randomSuffix = Math.floor(Math.random() * (9999999999 - 1000000000) + 1000000000);
68
- const name = `${uploadId}_0_${randomSuffix}`;
69
- const contentLength = photoBuffer.byteLength;
70
-
71
- const ruploadParams = buildRuploadParams(uploadId, mimeType);
72
-
73
- const headers = {
74
- 'X_FB_PHOTO_WATERFALL_ID': uuidv4(),
75
- 'X-Entity-Type': mimeType, // use actual mimeType
76
- 'Offset': '0',
77
- 'X-Instagram-Rupload-Params': JSON.stringify(ruploadParams),
78
- 'X-Entity-Name': name,
79
- 'X-Entity-Length': String(contentLength),
80
- 'Content-Type': 'application/octet-stream',
81
- 'Content-Length': String(contentLength),
82
- // remove explicit Accept-Encoding to avoid conflicts; axios handles compression
83
- // 'Accept-Encoding': 'gzip',
84
- };
85
-
86
- const url = `/rupload_igphoto/${name}`;
87
-
88
- try {
89
- // session.request.send is expected to forward options to axios (or similar)
90
- // We MUST use `data` (not `body`) for axios-friendly request.
91
- const response = await session.request.send({
92
- url,
93
- method: 'POST',
94
- headers,
95
- data: photoBuffer,
96
- signal,
97
- // ensure axios does not apply any transform that would corrupt binary
98
- transformRequest: [(d) => d]
99
- });
100
-
101
- if (!response) {
102
- throw new Error('uploadPhoto: Empty response from Instagram rupload endpoint.');
103
- }
104
-
105
- // The request wrapper in different forks may return { body, headers } OR axios response
106
- // Normalize possible shapes:
107
- let respBody = null;
108
- if (response.body !== undefined) {
109
- // wrapper returned { body, headers }
110
- respBody = response.body;
111
- } else if (response.data !== undefined) {
112
- respBody = response.data;
113
- } else {
114
- respBody = response;
115
- }
116
-
117
- // If respBody is a string, try parse JSON
118
- let parsed = null;
119
- if (typeof respBody === 'string') {
120
- try { parsed = JSON.parse(respBody); } catch (e) { parsed = null; }
121
- } else if (typeof respBody === 'object') {
122
- parsed = respBody;
123
- }
124
-
125
- // server might return upload_id inside parsed
126
- const serverUploadId = parsed && (parsed.upload_id || parsed.uploadId || parsed.media && parsed.media.upload_id);
127
- if (serverUploadId) {
128
- return serverUploadId.toString();
129
- }
130
-
131
- // fallback: some endpoints respond with status only; return our local uploadId
132
- return uploadId;
133
- } catch (err) {
134
- // try to unwrap axios error message
135
- let msg = '';
136
- if (err && err.message) msg = err.message;
137
- else msg = String(err);
138
- throw new Error(`uploadPhoto: Upload failed — ${msg}`);
139
- }
140
- }
141
-
142
- module.exports = uploadPhoto;