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

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 +828 -214
  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,35 +0,0 @@
1
- const Repository = require('../core/repository');
2
-
3
- class ShareRepository extends Repository {
4
- shareInfo(code) {
5
- let decoded;
6
- if (Buffer.isBuffer(code)) {
7
- decoded = code.toString('utf8').replace(/\x1d/g, '');
8
- } else {
9
- try {
10
- decoded = Buffer.from(code, 'base64').toString('utf8').replace(/\x1d/g, '');
11
- } catch {
12
- decoded = String(code);
13
- }
14
- }
15
- const parts = decoded.split(':');
16
- return { type: parts[0], pk: parts[1] || '' };
17
- }
18
-
19
- shareInfoByUrl(url) {
20
- const code = this.shareCodeFromUrl(url);
21
- return this.shareInfo(code);
22
- }
23
-
24
- shareCodeFromUrl(url) {
25
- try {
26
- const parsed = new URL(url);
27
- const parts = parsed.pathname.split('/').filter(p => p.length > 0);
28
- return parts[parts.length - 1];
29
- } catch {
30
- return url;
31
- }
32
- }
33
- }
34
-
35
- module.exports = ShareRepository;
@@ -1,218 +0,0 @@
1
- const Repository = require('../core/repository');
2
-
3
- class SignupRepository extends Repository {
4
- constructor(client) {
5
- super(client);
6
- this.waterfallId = this._generateUUID();
7
- }
8
-
9
- _generateUUID() {
10
- return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {
11
- const r = Math.random() * 16 | 0;
12
- return (c === 'x' ? r : (r & 0x3 | 0x8)).toString(16);
13
- });
14
- }
15
-
16
- async signup(options = {}) {
17
- const {
18
- username,
19
- password,
20
- email,
21
- phoneNumber = '',
22
- fullName = '',
23
- year = null,
24
- month = null,
25
- day = null,
26
- } = options;
27
-
28
- await this.getSignupConfig();
29
-
30
- const checkResult = await this.checkEmail(email);
31
- if (!checkResult.valid) {
32
- throw new Error(`Email not valid: ${checkResult.error_title || JSON.stringify(checkResult)}`);
33
- }
34
- if (!checkResult.available) {
35
- throw new Error(`Email not available: ${checkResult.feedback_message || JSON.stringify(checkResult)}`);
36
- }
37
-
38
- const sendResult = await this.sendVerifyEmail(email);
39
- if (!sendResult.email_sent) {
40
- throw new Error(`Failed to send verification email: ${JSON.stringify(sendResult)}`);
41
- }
42
-
43
- if (year && month && day) {
44
- const ageCheck = await this.checkAgeEligibility(year, month, day);
45
- if (!ageCheck.eligible) {
46
- throw new Error(`Not eligible based on age: ${JSON.stringify(ageCheck)}`);
47
- }
48
- }
49
-
50
- return { status: 'verification_sent', email };
51
- }
52
-
53
- async getSignupConfig() {
54
- const response = await this.client.request.send({
55
- method: 'GET',
56
- url: '/api/v1/consent/get_signup_config/',
57
- qs: {
58
- guid: this.client.state.uuid,
59
- main_account_selected: false,
60
- },
61
- });
62
- return response.body;
63
- }
64
-
65
- async checkEmail(email) {
66
- const response = await this.client.request.send({
67
- method: 'POST',
68
- url: '/api/v1/users/check_email/',
69
- form: {
70
- android_device_id: this.client.state.deviceId,
71
- login_nonce_map: '{}',
72
- login_nonces: '[]',
73
- email,
74
- qe_id: this._generateUUID(),
75
- waterfall_id: this.waterfallId,
76
- },
77
- });
78
- return response.body;
79
- }
80
-
81
- async checkUsername(username) {
82
- const response = await this.client.request.send({
83
- method: 'POST',
84
- url: '/api/v1/users/check_username/',
85
- form: {
86
- username,
87
- _uuid: this.client.state.uuid,
88
- },
89
- });
90
- return response.body;
91
- }
92
-
93
- async sendVerifyEmail(email) {
94
- const response = await this.client.request.send({
95
- method: 'POST',
96
- url: '/api/v1/accounts/send_verify_email/',
97
- form: {
98
- phone_id: this.client.state.phoneId,
99
- device_id: this.client.state.deviceId,
100
- email,
101
- waterfall_id: this.waterfallId,
102
- auto_confirm_only: 'false',
103
- },
104
- });
105
- return response.body;
106
- }
107
-
108
- async checkConfirmationCode(email, code) {
109
- const response = await this.client.request.send({
110
- method: 'POST',
111
- url: '/api/v1/accounts/check_confirmation_code/',
112
- form: {
113
- code,
114
- device_id: this.client.state.deviceId,
115
- email,
116
- waterfall_id: this.waterfallId,
117
- },
118
- });
119
- return response.body;
120
- }
121
-
122
- async checkAgeEligibility(year, month, day) {
123
- const response = await this.client.request.send({
124
- method: 'POST',
125
- url: '/api/v1/consent/check_age_eligibility/',
126
- form: {
127
- _uuid: this.client.state.uuid,
128
- day: String(day),
129
- month: String(month),
130
- year: String(year),
131
- },
132
- });
133
- return response.body;
134
- }
135
-
136
- async accountsCreate(options = {}) {
137
- const {
138
- username,
139
- password,
140
- email,
141
- signupCode,
142
- fullName = '',
143
- year = null,
144
- month = null,
145
- day = null,
146
- } = options;
147
-
148
- const { encrypted, time } = this.client.account.encryptPassword(password);
149
-
150
- const data = {
151
- enc_password: `#PWD_INSTAGRAM:4:${time}:${encrypted}`,
152
- phone_id: this.client.state.phoneId,
153
- username,
154
- first_name: fullName,
155
- day: day ? String(day) : '',
156
- month: month ? String(month) : '',
157
- year: year ? String(year) : '',
158
- device_id: this.client.state.deviceId,
159
- email,
160
- signup_code: signupCode || '',
161
- waterfall_id: this.waterfallId,
162
- _uuid: this.client.state.uuid,
163
- force_sign_up_code: '',
164
- qs_stamp: '',
165
- has_sms_consent: 'true',
166
- };
167
-
168
- const response = await this.client.request.send({
169
- method: 'POST',
170
- url: '/api/v1/accounts/create/',
171
- form: this.client.request.sign(data),
172
- });
173
- return response.body;
174
- }
175
-
176
- async sendSignupSmsCode(phoneNumber) {
177
- const response = await this.client.request.send({
178
- method: 'POST',
179
- url: '/api/v1/accounts/send_signup_sms_code/',
180
- form: this.client.request.sign({
181
- phone_id: this.client.state.phoneId,
182
- phone_number: phoneNumber,
183
- waterfall_id: this.waterfallId,
184
- has_whatsapp_installed: '0',
185
- }),
186
- });
187
- return response.body;
188
- }
189
-
190
- async validateSignupSmsCode(phoneNumber, code) {
191
- const response = await this.client.request.send({
192
- method: 'POST',
193
- url: '/api/v1/accounts/validate_signup_sms_code/',
194
- form: this.client.request.sign({
195
- phone_id: this.client.state.phoneId,
196
- phone_number: phoneNumber,
197
- verification_code: code,
198
- waterfall_id: this.waterfallId,
199
- }),
200
- });
201
- return response.body;
202
- }
203
-
204
- async getSuggestedUsernames(name, email) {
205
- const response = await this.client.request.send({
206
- method: 'POST',
207
- url: '/api/v1/accounts/username_suggestions/',
208
- form: {
209
- name: name || '',
210
- email: email || '',
211
- waterfall_id: this.waterfallId,
212
- },
213
- });
214
- return response.body;
215
- }
216
- }
217
-
218
- module.exports = SignupRepository;
@@ -1,290 +0,0 @@
1
- const Repository = require('../core/repository');
2
- const fs = require('fs');
3
-
4
- class StoryRepository extends Repository {
5
- async react(options) {
6
- const { storyId, reaction } = options;
7
- const response = await this.client.request.send({
8
- url: `/api/v1/media/${storyId}/story_react/`,
9
- method: 'POST',
10
- form: this.client.request.sign({
11
- _uid: this.client.state.cookieUserId,
12
- _uuid: this.client.state.uuid,
13
- reaction_type: 'like',
14
- emoji: reaction || '\u2764\uFE0F',
15
- }),
16
- });
17
- return response.body;
18
- }
19
-
20
- async getFeed() {
21
- const response = await this.client.request.send({
22
- method: 'POST',
23
- url: '/api/v1/feed/reels_tray/',
24
- form: this.client.request.sign({
25
- supported_capabilities_new: JSON.stringify(this.client.state.constants.SUPPORTED_CAPABILITIES),
26
- reason: 'pull_to_refresh',
27
- _uuid: this.client.state.uuid,
28
- }),
29
- });
30
- return response.body;
31
- }
32
-
33
- async getUser(userId) {
34
- const response = await this.client.request.send({
35
- method: 'GET',
36
- url: `/api/v1/feed/user/${userId}/reel_media/`,
37
- });
38
- return response.body;
39
- }
40
-
41
- async getUserStories(userId) {
42
- return this.getUser(userId);
43
- }
44
-
45
- async upload(options) {
46
- const { imagePath, caption, mentions, links, hashtags, stickers } = options;
47
- const imageBuffer = fs.readFileSync(imagePath);
48
- const uploadId = Date.now();
49
- const uploadResult = await this.client.upload.photo({
50
- file: imageBuffer,
51
- uploadId,
52
- });
53
-
54
- return this.configureStory({
55
- uploadId: uploadResult.upload_id,
56
- caption,
57
- mentions,
58
- links,
59
- hashtags,
60
- stickers,
61
- });
62
- }
63
-
64
- async uploadVideo(options) {
65
- const { videoPath, caption, mentions, links, hashtags, stickers } = options;
66
- const videoBuffer = fs.readFileSync(videoPath);
67
- const uploadId = Date.now();
68
- const uploadResult = await this.client.upload.video({
69
- video: videoBuffer,
70
- uploadId,
71
- duration_ms: options.duration_ms || 15000,
72
- width: options.width || 720,
73
- height: options.height || 1280,
74
- });
75
-
76
- return this.configureStoryVideo({
77
- uploadId: uploadResult.upload_id,
78
- caption,
79
- mentions,
80
- links,
81
- hashtags,
82
- stickers,
83
- length: options.duration_ms || 15000,
84
- });
85
- }
86
-
87
- async configureStory(options = {}) {
88
- const { uploadId, caption, mentions, links, hashtags, stickers } = options;
89
- const data = {
90
- upload_id: uploadId,
91
- source_type: '4',
92
- configure_mode: '1',
93
- caption: caption || '',
94
- _uid: this.client.state.cookieUserId,
95
- _uuid: this.client.state.uuid,
96
- };
97
-
98
- if (mentions && mentions.length > 0) {
99
- data.reel_mentions = JSON.stringify(mentions);
100
- }
101
- if (links && links.length > 0) {
102
- data.story_cta = JSON.stringify(links.map(l => ({
103
- links: [{ webUri: l.url || l, linkType: 1 }],
104
- })));
105
- }
106
- if (hashtags && hashtags.length > 0) {
107
- data.story_hashtags = JSON.stringify(hashtags);
108
- }
109
- if (stickers && stickers.length > 0) {
110
- data.story_sticker_ids = JSON.stringify(stickers.map(s => s.id || s));
111
- }
112
-
113
- const response = await this.client.request.send({
114
- url: '/api/v1/media/configure_to_story/',
115
- method: 'POST',
116
- form: this.client.request.sign(data),
117
- });
118
- return response.body;
119
- }
120
-
121
- async configureStoryVideo(options = {}) {
122
- const { uploadId, caption, mentions, links, hashtags, stickers, length } = options;
123
- const data = {
124
- upload_id: uploadId,
125
- source_type: '4',
126
- configure_mode: '1',
127
- caption: caption || '',
128
- _uid: this.client.state.cookieUserId,
129
- _uuid: this.client.state.uuid,
130
- video_result: 'deprecated',
131
- length: length || 0,
132
- clips: JSON.stringify([{ length: length || 0, source_type: '4' }]),
133
- poster_frame_index: '0',
134
- audio_muted: '0',
135
- };
136
-
137
- if (mentions && mentions.length > 0) {
138
- data.reel_mentions = JSON.stringify(mentions);
139
- }
140
- if (links && links.length > 0) {
141
- data.story_cta = JSON.stringify(links.map(l => ({
142
- links: [{ webUri: l.url || l, linkType: 1 }],
143
- })));
144
- }
145
- if (hashtags && hashtags.length > 0) {
146
- data.story_hashtags = JSON.stringify(hashtags);
147
- }
148
- if (stickers && stickers.length > 0) {
149
- data.story_sticker_ids = JSON.stringify(stickers.map(s => s.id || s));
150
- }
151
-
152
- const response = await this.client.request.send({
153
- url: '/api/v1/media/configure_to_story/',
154
- method: 'POST',
155
- form: this.client.request.sign(data),
156
- });
157
- return response.body;
158
- }
159
-
160
- async seen(input, sourceId = null) {
161
- let items = [];
162
- if (Array.isArray(input)) {
163
- items = input;
164
- } else {
165
- items = Object.values(input).reduce((acc, reel) => acc.concat(reel.items || []), []);
166
- }
167
-
168
- const reels = {};
169
- const maxSeenAt = Math.floor(Date.now() / 1000);
170
- let seenAt = maxSeenAt - items.length;
171
-
172
- for (const item of items) {
173
- const itemTakenAt = item.taken_at;
174
- if (seenAt < itemTakenAt) seenAt = itemTakenAt + 1;
175
- if (seenAt > maxSeenAt) seenAt = maxSeenAt;
176
- const itemSourceId = sourceId === null ? item.user.pk : sourceId;
177
- const reelId = `${item.id}_${itemSourceId}`;
178
- reels[reelId] = [`${itemTakenAt}_${seenAt}`];
179
- seenAt += 1;
180
- }
181
-
182
- return this.client.media.seen(reels);
183
- }
184
-
185
- async getHighlights(userId) {
186
- const response = await this.client.request.send({
187
- method: 'GET',
188
- url: `/api/v1/highlights/${userId}/highlights_tray/`,
189
- });
190
- return response.body;
191
- }
192
-
193
- async getHighlight(highlightId) {
194
- const ids = Array.isArray(highlightId) ? highlightId : [highlightId];
195
- const response = await this.client.request.send({
196
- method: 'POST',
197
- url: '/api/v1/feed/reels_media/',
198
- form: this.client.request.sign({
199
- user_ids: ids,
200
- _uuid: this.client.state.uuid,
201
- }),
202
- });
203
- return response.body;
204
- }
205
-
206
- async getHighlightById(highlightId) {
207
- return this.getHighlight(highlightId);
208
- }
209
-
210
- async viewers(storyId) {
211
- const response = await this.client.request.send({
212
- method: 'GET',
213
- url: `/api/v1/media/${storyId}/list_reel_media_viewer/`,
214
- });
215
- return response.body;
216
- }
217
-
218
- async deleteStory(storyId) {
219
- return this.client.media.delete(storyId, 'STORY');
220
- }
221
-
222
- async downloadByUrl(url) {
223
- const axios = require('axios');
224
- const response = await axios.get(url, { responseType: 'arraybuffer' });
225
- return Buffer.from(response.data);
226
- }
227
-
228
- async download(storyPk) {
229
- const result = await this.client.media.info(storyPk);
230
- const items = result.items || [result];
231
- const item = items[0] || result;
232
- if (item.video_versions && item.video_versions.length > 0) {
233
- return this.downloadByUrl(item.video_versions[0].url);
234
- }
235
- const candidates = item.image_versions2?.candidates || [];
236
- if (candidates.length > 0) {
237
- return this.downloadByUrl(candidates[0].url);
238
- }
239
- throw new Error('No media URL found for story');
240
- }
241
-
242
- async createHighlight(options = {}) {
243
- const { title, coverMediaId, mediaIds = [] } = options;
244
- const response = await this.client.request.send({
245
- method: 'POST',
246
- url: '/api/v1/highlights/create_reel/',
247
- form: this.client.request.sign({
248
- _uuid: this.client.state.uuid,
249
- _uid: this.client.state.cookieUserId,
250
- title: title || '',
251
- cover: JSON.stringify({ media_id: coverMediaId }),
252
- media_ids: JSON.stringify(mediaIds),
253
- }),
254
- });
255
- return response.body;
256
- }
257
-
258
- async editHighlight(highlightId, options = {}) {
259
- const { title, coverMediaId, addedMediaIds = [], removedMediaIds = [] } = options;
260
- const data = {
261
- _uuid: this.client.state.uuid,
262
- _uid: this.client.state.cookieUserId,
263
- };
264
- if (title) data.title = title;
265
- if (coverMediaId) data.cover = JSON.stringify({ media_id: coverMediaId });
266
- if (addedMediaIds.length > 0) data.added_media_ids = JSON.stringify(addedMediaIds);
267
- if (removedMediaIds.length > 0) data.removed_media_ids = JSON.stringify(removedMediaIds);
268
-
269
- const response = await this.client.request.send({
270
- method: 'POST',
271
- url: `/api/v1/highlights/${highlightId}/edit_reel/`,
272
- form: this.client.request.sign(data),
273
- });
274
- return response.body;
275
- }
276
-
277
- async deleteHighlight(highlightId) {
278
- const response = await this.client.request.send({
279
- method: 'POST',
280
- url: `/api/v1/highlights/${highlightId}/delete_reel/`,
281
- form: this.client.request.sign({
282
- _uuid: this.client.state.uuid,
283
- _uid: this.client.state.cookieUserId,
284
- }),
285
- });
286
- return response.body;
287
- }
288
- }
289
-
290
- module.exports = StoryRepository;
@@ -1,60 +0,0 @@
1
- const Repository = require('../core/repository');
2
-
3
- class TimelineRepository extends Repository {
4
- async reels(amount = 10, lastMediaPk = 0) {
5
- return this._reelsTimelineMedia('clips/connected/', amount, lastMediaPk);
6
- }
7
-
8
- async exploreReels(amount = 10, lastMediaPk = 0) {
9
- return this._reelsTimelineMedia('clips/discover/', amount, lastMediaPk);
10
- }
11
-
12
- async _reelsTimelineMedia(endpoint, amount = 10, lastMediaPk = 0) {
13
- const totalItems = [];
14
- let nextMaxId = '';
15
- while (totalItems.length < amount) {
16
- try {
17
- const response = await this.client.request.send({
18
- method: 'POST',
19
- url: `/api/v1/${endpoint}`,
20
- form: { max_id: nextMaxId },
21
- });
22
- const body = response.body;
23
- for (const item of (body.items || [])) {
24
- const media = item.media || item;
25
- if (lastMediaPk && String(media.pk) === String(lastMediaPk)) {
26
- return totalItems;
27
- }
28
- totalItems.push(media);
29
- }
30
- const pagingInfo = body.paging_info || {};
31
- if (!pagingInfo.more_available) return totalItems;
32
- nextMaxId = pagingInfo.max_id || '';
33
- } catch (e) {
34
- return totalItems;
35
- }
36
- }
37
- return totalItems.slice(0, amount);
38
- }
39
-
40
- async getFeed(maxId = '', options = {}) {
41
- const response = await this.client.request.send({
42
- method: 'POST',
43
- url: '/api/v1/feed/timeline/',
44
- form: this.client.request.sign({
45
- _uuid: this.client.state.uuid,
46
- is_prefetch: '0',
47
- feed_view_info: '[]',
48
- seen_posts: '',
49
- phone_id: this.client.state.phoneId,
50
- battery_level: String(Math.floor(Math.random() * 50) + 50),
51
- timezone_offset: String(this.client.state.timezoneOffset),
52
- max_id: maxId,
53
- ...options,
54
- }),
55
- });
56
- return response.body;
57
- }
58
- }
59
-
60
- module.exports = TimelineRepository;