@moontaiworks/fanbox-dl 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (596) hide show
  1. package/README.md +1 -1
  2. package/dist/bundle/index.cjs +1 -1
  3. package/dist/bundle/index.cjs.map +1 -1
  4. package/dist/bundle/index.d.cts +111 -101
  5. package/dist/bundle/index.d.ts +111 -101
  6. package/dist/bundle/index.js +1 -1
  7. package/dist/bundle/index.js.map +1 -1
  8. package/dist/cjs/cli.d.ts +3 -0
  9. package/dist/cjs/cli.d.ts.map +1 -0
  10. package/dist/cjs/cli.js +97 -0
  11. package/dist/cjs/cli.js.map +1 -0
  12. package/dist/cjs/client/client.d.ts +36 -0
  13. package/dist/cjs/client/client.d.ts.map +1 -0
  14. package/dist/cjs/client/client.js +73 -0
  15. package/dist/cjs/client/client.js.map +1 -0
  16. package/dist/cjs/client/endpoints/creator-get.d.ts +8 -0
  17. package/dist/cjs/client/endpoints/creator-get.d.ts.map +1 -0
  18. package/dist/cjs/client/endpoints/creator-get.js +7 -0
  19. package/dist/cjs/client/endpoints/creator-get.js.map +1 -0
  20. package/dist/cjs/client/endpoints/creator-list-pages.d.ts +9 -0
  21. package/dist/cjs/client/endpoints/creator-list-pages.d.ts.map +1 -0
  22. package/dist/cjs/client/endpoints/creator-list-pages.js +7 -0
  23. package/dist/cjs/client/endpoints/creator-list-pages.js.map +1 -0
  24. package/dist/cjs/client/endpoints/creator-list-plans.d.ts +8 -0
  25. package/dist/cjs/client/endpoints/creator-list-plans.d.ts.map +1 -0
  26. package/dist/cjs/client/endpoints/creator-list-plans.js +7 -0
  27. package/dist/cjs/client/endpoints/creator-list-plans.js.map +1 -0
  28. package/dist/cjs/client/endpoints/creator-list-posts.d.ts +11 -0
  29. package/dist/cjs/client/endpoints/creator-list-posts.d.ts.map +1 -0
  30. package/dist/cjs/client/endpoints/creator-list-posts.js +7 -0
  31. package/dist/cjs/client/endpoints/creator-list-posts.js.map +1 -0
  32. package/dist/cjs/client/endpoints/post-info.d.ts +8 -0
  33. package/dist/cjs/client/endpoints/post-info.d.ts.map +1 -0
  34. package/dist/cjs/client/endpoints/post-info.js +7 -0
  35. package/dist/cjs/client/endpoints/post-info.js.map +1 -0
  36. package/dist/cjs/client/endpoints/post-list-home.d.ts +6 -0
  37. package/dist/cjs/client/endpoints/post-list-home.d.ts.map +1 -0
  38. package/dist/cjs/client/endpoints/post-list-home.js +7 -0
  39. package/dist/cjs/client/endpoints/post-list-home.js.map +1 -0
  40. package/dist/cjs/client/endpoints/post-list-supporting.d.ts +6 -0
  41. package/dist/cjs/client/endpoints/post-list-supporting.d.ts.map +1 -0
  42. package/dist/cjs/client/endpoints/post-list-supporting.js +7 -0
  43. package/dist/cjs/client/endpoints/post-list-supporting.js.map +1 -0
  44. package/dist/cjs/client/endpoints/user-list-following.d.ts +7 -0
  45. package/dist/cjs/client/endpoints/user-list-following.d.ts.map +1 -0
  46. package/dist/cjs/client/endpoints/user-list-following.js +7 -0
  47. package/dist/cjs/client/endpoints/user-list-following.js.map +1 -0
  48. package/dist/cjs/client/endpoints/user-list-supporting.d.ts +5 -0
  49. package/dist/cjs/client/endpoints/user-list-supporting.d.ts.map +1 -0
  50. package/dist/cjs/client/endpoints/user-list-supporting.js +7 -0
  51. package/dist/cjs/client/endpoints/user-list-supporting.js.map +1 -0
  52. package/dist/cjs/client/fanbox-envelope.d.ts.map +1 -0
  53. package/dist/cjs/client/fanbox-envelope.js.map +1 -0
  54. package/dist/cjs/client/fanbox-headers.d.ts.map +1 -0
  55. package/dist/cjs/{fanbox-headers.js → client/fanbox-headers.js} +0 -4
  56. package/dist/cjs/client/fanbox-headers.js.map +1 -0
  57. package/dist/cjs/client/models/creator.d.ts.map +1 -0
  58. package/dist/cjs/client/models/creator.js.map +1 -0
  59. package/dist/cjs/client/models/plan.d.ts.map +1 -0
  60. package/dist/cjs/{endpoints → client}/models/plan.js.map +1 -1
  61. package/dist/cjs/client/models/post/article.d.ts +41 -0
  62. package/dist/cjs/client/models/post/article.d.ts.map +1 -0
  63. package/dist/cjs/client/models/post/article.js +3 -0
  64. package/dist/cjs/client/models/post/article.js.map +1 -0
  65. package/dist/cjs/client/models/post/asset.d.ts +16 -0
  66. package/dist/cjs/client/models/post/asset.d.ts.map +1 -0
  67. package/dist/cjs/client/models/post/asset.js +3 -0
  68. package/dist/cjs/client/models/post/asset.js.map +1 -0
  69. package/dist/cjs/client/models/post/embed.d.ts +12 -0
  70. package/dist/cjs/client/models/post/embed.d.ts.map +1 -0
  71. package/dist/cjs/client/models/post/embed.js +3 -0
  72. package/dist/cjs/client/models/post/embed.js.map +1 -0
  73. package/dist/cjs/client/models/post/url-embed.d.ts +13 -0
  74. package/dist/cjs/client/models/post/url-embed.d.ts.map +1 -0
  75. package/dist/cjs/client/models/post/url-embed.js +3 -0
  76. package/dist/cjs/client/models/post/url-embed.js.map +1 -0
  77. package/dist/cjs/{endpoints → client}/models/post.d.ts +5 -48
  78. package/dist/cjs/client/models/post.d.ts.map +1 -0
  79. package/dist/cjs/{endpoints → client}/models/post.js.map +1 -1
  80. package/dist/cjs/client/models/user.d.ts.map +1 -0
  81. package/dist/cjs/{endpoints → client}/models/user.js.map +1 -1
  82. package/dist/cjs/client/types.d.ts +14 -0
  83. package/dist/cjs/client/types.d.ts.map +1 -0
  84. package/dist/cjs/{types.js.map → client/types.js.map} +1 -1
  85. package/dist/cjs/downloader/asset/download.d.ts +21 -0
  86. package/dist/cjs/downloader/asset/download.d.ts.map +1 -0
  87. package/dist/cjs/downloader/asset/download.js +95 -0
  88. package/dist/cjs/downloader/asset/download.js.map +1 -0
  89. package/dist/cjs/downloader/cli/cookie.d.ts +2 -0
  90. package/dist/cjs/downloader/cli/cookie.d.ts.map +1 -0
  91. package/dist/cjs/downloader/cli/cookie.js +37 -0
  92. package/dist/cjs/downloader/cli/cookie.js.map +1 -0
  93. package/dist/cjs/downloader/cli/index.d.ts +4 -0
  94. package/dist/cjs/downloader/cli/index.d.ts.map +1 -0
  95. package/dist/cjs/downloader/cli/index.js +15 -0
  96. package/dist/cjs/downloader/cli/index.js.map +1 -0
  97. package/dist/cjs/downloader/cli/options.d.ts +22 -0
  98. package/dist/cjs/downloader/cli/options.d.ts.map +1 -0
  99. package/dist/cjs/downloader/cli/options.js +124 -0
  100. package/dist/cjs/downloader/cli/options.js.map +1 -0
  101. package/dist/cjs/downloader/{resolver.d.ts → cli/resolver.d.ts} +7 -1
  102. package/dist/cjs/downloader/cli/resolver.d.ts.map +1 -0
  103. package/dist/cjs/downloader/cli/resolver.js +28 -0
  104. package/dist/cjs/downloader/cli/resolver.js.map +1 -0
  105. package/dist/cjs/downloader/creator/discover-posts.d.ts +15 -0
  106. package/dist/cjs/downloader/creator/discover-posts.d.ts.map +1 -0
  107. package/dist/cjs/downloader/creator/discover-posts.js +20 -0
  108. package/dist/cjs/downloader/creator/discover-posts.js.map +1 -0
  109. package/dist/cjs/downloader/creator/sync.d.ts +16 -0
  110. package/dist/cjs/downloader/creator/sync.d.ts.map +1 -0
  111. package/dist/cjs/downloader/creator/sync.js +34 -0
  112. package/dist/cjs/downloader/creator/sync.js.map +1 -0
  113. package/dist/cjs/downloader/fs/filesystem.d.ts +2 -0
  114. package/dist/cjs/downloader/fs/filesystem.d.ts.map +1 -0
  115. package/dist/cjs/downloader/fs/filesystem.js +10 -0
  116. package/dist/cjs/downloader/fs/filesystem.js.map +1 -0
  117. package/dist/cjs/downloader/fs/path-manager.d.ts +17 -0
  118. package/dist/cjs/downloader/fs/path-manager.d.ts.map +1 -0
  119. package/dist/cjs/downloader/fs/path-manager.js +49 -0
  120. package/dist/cjs/downloader/fs/path-manager.js.map +1 -0
  121. package/dist/cjs/downloader/index.d.ts +8 -2
  122. package/dist/cjs/downloader/index.d.ts.map +1 -1
  123. package/dist/cjs/downloader/index.js +55 -5
  124. package/dist/cjs/downloader/index.js.map +1 -1
  125. package/dist/cjs/downloader/manifest/creator-manager.d.ts +15 -0
  126. package/dist/cjs/downloader/manifest/creator-manager.d.ts.map +1 -0
  127. package/dist/cjs/downloader/manifest/creator-manager.js +42 -0
  128. package/dist/cjs/downloader/manifest/creator-manager.js.map +1 -0
  129. package/dist/cjs/downloader/manifest/creator.d.ts +42 -0
  130. package/dist/cjs/downloader/manifest/creator.d.ts.map +1 -0
  131. package/dist/cjs/downloader/manifest/creator.js +54 -0
  132. package/dist/cjs/downloader/manifest/creator.js.map +1 -0
  133. package/dist/cjs/downloader/manifest/store.d.ts +9 -0
  134. package/dist/cjs/downloader/manifest/store.d.ts.map +1 -0
  135. package/dist/cjs/downloader/manifest/store.js +29 -0
  136. package/dist/cjs/downloader/manifest/store.js.map +1 -0
  137. package/dist/cjs/downloader/markdown/asset.d.ts +12 -0
  138. package/dist/cjs/downloader/markdown/asset.d.ts.map +1 -0
  139. package/dist/cjs/downloader/markdown/asset.js +31 -0
  140. package/dist/cjs/downloader/markdown/asset.js.map +1 -0
  141. package/dist/cjs/downloader/post/article.d.ts +4 -0
  142. package/dist/cjs/downloader/post/article.d.ts.map +1 -0
  143. package/dist/cjs/downloader/post/article.js +35 -0
  144. package/dist/cjs/downloader/post/article.js.map +1 -0
  145. package/dist/cjs/downloader/post/content.d.ts +52 -0
  146. package/dist/cjs/downloader/post/content.d.ts.map +1 -0
  147. package/dist/cjs/downloader/post/content.js +48 -0
  148. package/dist/cjs/downloader/post/content.js.map +1 -0
  149. package/dist/cjs/downloader/post/contents.d.ts +9 -0
  150. package/dist/cjs/downloader/post/contents.d.ts.map +1 -0
  151. package/dist/cjs/downloader/post/contents.js +36 -0
  152. package/dist/cjs/downloader/post/contents.js.map +1 -0
  153. package/dist/cjs/downloader/post/embed.d.ts +7 -0
  154. package/dist/cjs/downloader/post/embed.d.ts.map +1 -0
  155. package/dist/cjs/downloader/post/embed.js +14 -0
  156. package/dist/cjs/downloader/post/embed.js.map +1 -0
  157. package/dist/cjs/downloader/post/sync.d.ts +17 -0
  158. package/dist/cjs/downloader/post/sync.d.ts.map +1 -0
  159. package/dist/cjs/downloader/post/sync.js +127 -0
  160. package/dist/cjs/downloader/post/sync.js.map +1 -0
  161. package/dist/cjs/downloader/post/url-embed.d.ts +7 -0
  162. package/dist/cjs/downloader/post/url-embed.d.ts.map +1 -0
  163. package/dist/cjs/downloader/post/url-embed.js +14 -0
  164. package/dist/cjs/downloader/post/url-embed.js.map +1 -0
  165. package/dist/cjs/index.d.ts +2 -2
  166. package/dist/cjs/index.d.ts.map +1 -1
  167. package/dist/cjs/index.js +1 -1
  168. package/dist/cjs/index.js.map +1 -1
  169. package/dist/cjs/transport/http2-session.d.ts +7 -0
  170. package/dist/cjs/transport/http2-session.d.ts.map +1 -0
  171. package/dist/cjs/transport/http2-session.js +48 -0
  172. package/dist/cjs/transport/http2-session.js.map +1 -0
  173. package/dist/cjs/transport/http2.d.ts +11 -0
  174. package/dist/cjs/transport/http2.d.ts.map +1 -0
  175. package/dist/cjs/transport/http2.js +85 -0
  176. package/dist/cjs/transport/http2.js.map +1 -0
  177. package/dist/cjs/transport/worker.d.ts +17 -0
  178. package/dist/cjs/transport/worker.d.ts.map +1 -0
  179. package/dist/cjs/transport/worker.js +137 -0
  180. package/dist/cjs/transport/worker.js.map +1 -0
  181. package/dist/cjs/usage.d.ts +4 -0
  182. package/dist/cjs/usage.d.ts.map +1 -0
  183. package/dist/cjs/usage.js +11 -0
  184. package/dist/cjs/usage.js.map +1 -0
  185. package/dist/esm/cli.d.ts +3 -0
  186. package/dist/esm/cli.d.ts.map +1 -0
  187. package/dist/esm/cli.js +62 -0
  188. package/dist/esm/cli.js.map +1 -0
  189. package/dist/esm/client/client.d.ts +36 -0
  190. package/dist/esm/client/client.d.ts.map +1 -0
  191. package/dist/esm/client/client.js +68 -0
  192. package/dist/esm/client/client.js.map +1 -0
  193. package/dist/esm/client/endpoints/creator-get.d.ts +8 -0
  194. package/dist/esm/client/endpoints/creator-get.d.ts.map +1 -0
  195. package/dist/esm/client/endpoints/creator-get.js +4 -0
  196. package/dist/esm/client/endpoints/creator-get.js.map +1 -0
  197. package/dist/esm/client/endpoints/creator-list-pages.d.ts +9 -0
  198. package/dist/esm/client/endpoints/creator-list-pages.d.ts.map +1 -0
  199. package/dist/esm/client/endpoints/creator-list-pages.js +4 -0
  200. package/dist/esm/client/endpoints/creator-list-pages.js.map +1 -0
  201. package/dist/esm/client/endpoints/creator-list-plans.d.ts +8 -0
  202. package/dist/esm/client/endpoints/creator-list-plans.d.ts.map +1 -0
  203. package/dist/esm/client/endpoints/creator-list-plans.js +4 -0
  204. package/dist/esm/client/endpoints/creator-list-plans.js.map +1 -0
  205. package/dist/esm/client/endpoints/creator-list-posts.d.ts +11 -0
  206. package/dist/esm/client/endpoints/creator-list-posts.d.ts.map +1 -0
  207. package/dist/esm/client/endpoints/creator-list-posts.js +4 -0
  208. package/dist/esm/client/endpoints/creator-list-posts.js.map +1 -0
  209. package/dist/esm/client/endpoints/post-info.d.ts +8 -0
  210. package/dist/esm/client/endpoints/post-info.d.ts.map +1 -0
  211. package/dist/esm/client/endpoints/post-info.js +4 -0
  212. package/dist/esm/client/endpoints/post-info.js.map +1 -0
  213. package/dist/esm/client/endpoints/post-list-home.d.ts +6 -0
  214. package/dist/esm/client/endpoints/post-list-home.d.ts.map +1 -0
  215. package/dist/esm/client/endpoints/post-list-home.js +4 -0
  216. package/dist/esm/client/endpoints/post-list-home.js.map +1 -0
  217. package/dist/esm/client/endpoints/post-list-supporting.d.ts +6 -0
  218. package/dist/esm/client/endpoints/post-list-supporting.d.ts.map +1 -0
  219. package/dist/esm/client/endpoints/post-list-supporting.js +4 -0
  220. package/dist/esm/client/endpoints/post-list-supporting.js.map +1 -0
  221. package/dist/esm/client/endpoints/user-list-following.d.ts +7 -0
  222. package/dist/esm/client/endpoints/user-list-following.d.ts.map +1 -0
  223. package/dist/esm/client/endpoints/user-list-following.js +4 -0
  224. package/dist/esm/client/endpoints/user-list-following.js.map +1 -0
  225. package/dist/esm/client/endpoints/user-list-supporting.d.ts +5 -0
  226. package/dist/esm/client/endpoints/user-list-supporting.d.ts.map +1 -0
  227. package/dist/esm/client/endpoints/user-list-supporting.js +4 -0
  228. package/dist/esm/client/endpoints/user-list-supporting.js.map +1 -0
  229. package/dist/esm/client/fanbox-envelope.d.ts.map +1 -0
  230. package/dist/esm/client/fanbox-envelope.js.map +1 -0
  231. package/dist/esm/client/fanbox-headers.d.ts.map +1 -0
  232. package/dist/esm/{fanbox-headers.js → client/fanbox-headers.js} +0 -4
  233. package/dist/esm/client/fanbox-headers.js.map +1 -0
  234. package/dist/esm/client/models/creator.d.ts.map +1 -0
  235. package/dist/esm/client/models/creator.js.map +1 -0
  236. package/dist/esm/client/models/plan.d.ts.map +1 -0
  237. package/dist/esm/{endpoints → client}/models/plan.js.map +1 -1
  238. package/dist/esm/client/models/post/article.d.ts +41 -0
  239. package/dist/esm/client/models/post/article.d.ts.map +1 -0
  240. package/dist/esm/client/models/post/article.js +2 -0
  241. package/dist/esm/client/models/post/article.js.map +1 -0
  242. package/dist/esm/client/models/post/asset.d.ts +16 -0
  243. package/dist/esm/client/models/post/asset.d.ts.map +1 -0
  244. package/dist/esm/client/models/post/asset.js +2 -0
  245. package/dist/esm/client/models/post/asset.js.map +1 -0
  246. package/dist/esm/client/models/post/embed.d.ts +12 -0
  247. package/dist/esm/client/models/post/embed.d.ts.map +1 -0
  248. package/dist/esm/client/models/post/embed.js +2 -0
  249. package/dist/esm/client/models/post/embed.js.map +1 -0
  250. package/dist/esm/client/models/post/url-embed.d.ts +13 -0
  251. package/dist/esm/client/models/post/url-embed.d.ts.map +1 -0
  252. package/dist/esm/client/models/post/url-embed.js +2 -0
  253. package/dist/esm/client/models/post/url-embed.js.map +1 -0
  254. package/dist/esm/{endpoints → client}/models/post.d.ts +5 -48
  255. package/dist/esm/client/models/post.d.ts.map +1 -0
  256. package/dist/esm/{endpoints → client}/models/post.js.map +1 -1
  257. package/dist/esm/client/models/user.d.ts.map +1 -0
  258. package/dist/esm/{endpoints → client}/models/user.js.map +1 -1
  259. package/dist/esm/client/types.d.ts +14 -0
  260. package/dist/esm/client/types.d.ts.map +1 -0
  261. package/dist/esm/{types.js.map → client/types.js.map} +1 -1
  262. package/dist/esm/downloader/asset/download.d.ts +21 -0
  263. package/dist/esm/downloader/asset/download.d.ts.map +1 -0
  264. package/dist/esm/downloader/asset/download.js +56 -0
  265. package/dist/esm/downloader/asset/download.js.map +1 -0
  266. package/dist/esm/downloader/cli/cookie.d.ts +2 -0
  267. package/dist/esm/downloader/cli/cookie.d.ts.map +1 -0
  268. package/dist/esm/downloader/cli/cookie.js +34 -0
  269. package/dist/esm/downloader/cli/cookie.js.map +1 -0
  270. package/dist/esm/downloader/cli/index.d.ts +4 -0
  271. package/dist/esm/downloader/cli/index.d.ts.map +1 -0
  272. package/dist/esm/downloader/cli/index.js +11 -0
  273. package/dist/esm/downloader/cli/index.js.map +1 -0
  274. package/dist/esm/downloader/cli/options.d.ts +22 -0
  275. package/dist/esm/downloader/cli/options.d.ts.map +1 -0
  276. package/dist/esm/downloader/cli/options.js +120 -0
  277. package/dist/esm/downloader/cli/options.js.map +1 -0
  278. package/dist/esm/downloader/{resolver.d.ts → cli/resolver.d.ts} +7 -1
  279. package/dist/esm/downloader/cli/resolver.d.ts.map +1 -0
  280. package/dist/esm/downloader/cli/resolver.js +25 -0
  281. package/dist/esm/downloader/cli/resolver.js.map +1 -0
  282. package/dist/esm/downloader/creator/discover-posts.d.ts +15 -0
  283. package/dist/esm/downloader/creator/discover-posts.d.ts.map +1 -0
  284. package/dist/esm/downloader/creator/discover-posts.js +17 -0
  285. package/dist/esm/downloader/creator/discover-posts.js.map +1 -0
  286. package/dist/esm/downloader/creator/sync.d.ts +16 -0
  287. package/dist/esm/downloader/creator/sync.d.ts.map +1 -0
  288. package/dist/esm/downloader/creator/sync.js +31 -0
  289. package/dist/esm/downloader/creator/sync.js.map +1 -0
  290. package/dist/esm/downloader/fs/filesystem.d.ts +2 -0
  291. package/dist/esm/downloader/fs/filesystem.d.ts.map +1 -0
  292. package/dist/esm/downloader/fs/filesystem.js +7 -0
  293. package/dist/esm/downloader/fs/filesystem.js.map +1 -0
  294. package/dist/esm/downloader/fs/path-manager.d.ts +17 -0
  295. package/dist/esm/downloader/fs/path-manager.d.ts.map +1 -0
  296. package/dist/esm/downloader/fs/path-manager.js +45 -0
  297. package/dist/esm/downloader/fs/path-manager.js.map +1 -0
  298. package/dist/esm/downloader/index.d.ts +8 -2
  299. package/dist/esm/downloader/index.d.ts.map +1 -1
  300. package/dist/esm/downloader/index.js +54 -5
  301. package/dist/esm/downloader/index.js.map +1 -1
  302. package/dist/esm/downloader/manifest/creator-manager.d.ts +15 -0
  303. package/dist/esm/downloader/manifest/creator-manager.d.ts.map +1 -0
  304. package/dist/esm/downloader/manifest/creator-manager.js +38 -0
  305. package/dist/esm/downloader/manifest/creator-manager.js.map +1 -0
  306. package/dist/esm/downloader/manifest/creator.d.ts +42 -0
  307. package/dist/esm/downloader/manifest/creator.d.ts.map +1 -0
  308. package/dist/esm/downloader/manifest/creator.js +50 -0
  309. package/dist/esm/downloader/manifest/creator.js.map +1 -0
  310. package/dist/esm/downloader/manifest/store.d.ts +9 -0
  311. package/dist/esm/downloader/manifest/store.d.ts.map +1 -0
  312. package/dist/esm/downloader/manifest/store.js +25 -0
  313. package/dist/esm/downloader/manifest/store.js.map +1 -0
  314. package/dist/esm/downloader/markdown/asset.d.ts +12 -0
  315. package/dist/esm/downloader/markdown/asset.d.ts.map +1 -0
  316. package/dist/esm/downloader/markdown/asset.js +22 -0
  317. package/dist/esm/downloader/markdown/asset.js.map +1 -0
  318. package/dist/esm/downloader/post/article.d.ts +4 -0
  319. package/dist/esm/downloader/post/article.d.ts.map +1 -0
  320. package/dist/esm/downloader/post/article.js +32 -0
  321. package/dist/esm/downloader/post/article.js.map +1 -0
  322. package/dist/esm/downloader/post/content.d.ts +52 -0
  323. package/dist/esm/downloader/post/content.d.ts.map +1 -0
  324. package/dist/esm/downloader/post/content.js +39 -0
  325. package/dist/esm/downloader/post/content.js.map +1 -0
  326. package/dist/esm/downloader/post/contents.d.ts +9 -0
  327. package/dist/esm/downloader/post/contents.d.ts.map +1 -0
  328. package/dist/esm/downloader/post/contents.js +33 -0
  329. package/dist/esm/downloader/post/contents.js.map +1 -0
  330. package/dist/esm/downloader/post/embed.d.ts +7 -0
  331. package/dist/esm/downloader/post/embed.d.ts.map +1 -0
  332. package/dist/esm/downloader/post/embed.js +11 -0
  333. package/dist/esm/downloader/post/embed.js.map +1 -0
  334. package/dist/esm/downloader/post/sync.d.ts +17 -0
  335. package/dist/esm/downloader/post/sync.d.ts.map +1 -0
  336. package/dist/esm/downloader/post/sync.js +124 -0
  337. package/dist/esm/downloader/post/sync.js.map +1 -0
  338. package/dist/esm/downloader/post/url-embed.d.ts +7 -0
  339. package/dist/esm/downloader/post/url-embed.d.ts.map +1 -0
  340. package/dist/esm/downloader/post/url-embed.js +11 -0
  341. package/dist/esm/downloader/post/url-embed.js.map +1 -0
  342. package/dist/esm/index.d.ts +2 -2
  343. package/dist/esm/index.d.ts.map +1 -1
  344. package/dist/esm/index.js +1 -1
  345. package/dist/esm/index.js.map +1 -1
  346. package/dist/esm/transport/http2-session.d.ts +7 -0
  347. package/dist/esm/transport/http2-session.d.ts.map +1 -0
  348. package/dist/esm/transport/http2-session.js +44 -0
  349. package/dist/esm/transport/http2-session.js.map +1 -0
  350. package/dist/esm/transport/http2.d.ts +11 -0
  351. package/dist/esm/transport/http2.d.ts.map +1 -0
  352. package/dist/esm/transport/http2.js +80 -0
  353. package/dist/esm/transport/http2.js.map +1 -0
  354. package/dist/esm/transport/worker.d.ts +17 -0
  355. package/dist/esm/transport/worker.d.ts.map +1 -0
  356. package/dist/esm/transport/worker.js +133 -0
  357. package/dist/esm/transport/worker.js.map +1 -0
  358. package/dist/esm/usage.d.ts +4 -0
  359. package/dist/esm/usage.d.ts.map +1 -0
  360. package/dist/esm/usage.js +7 -0
  361. package/dist/esm/usage.js.map +1 -0
  362. package/package.json +5 -2
  363. package/dist/cjs/client-options.d.ts +0 -8
  364. package/dist/cjs/client-options.d.ts.map +0 -1
  365. package/dist/cjs/client-options.js +0 -3
  366. package/dist/cjs/client-options.js.map +0 -1
  367. package/dist/cjs/client.d.ts +0 -31
  368. package/dist/cjs/client.d.ts.map +0 -1
  369. package/dist/cjs/client.js +0 -107
  370. package/dist/cjs/client.js.map +0 -1
  371. package/dist/cjs/downloader/asset.d.ts +0 -30
  372. package/dist/cjs/downloader/asset.d.ts.map +0 -1
  373. package/dist/cjs/downloader/asset.js +0 -99
  374. package/dist/cjs/downloader/asset.js.map +0 -1
  375. package/dist/cjs/downloader/cli.d.ts +0 -8
  376. package/dist/cjs/downloader/cli.d.ts.map +0 -1
  377. package/dist/cjs/downloader/cli.js +0 -168
  378. package/dist/cjs/downloader/cli.js.map +0 -1
  379. package/dist/cjs/downloader/discovery.d.ts +0 -12
  380. package/dist/cjs/downloader/discovery.d.ts.map +0 -1
  381. package/dist/cjs/downloader/discovery.js +0 -87
  382. package/dist/cjs/downloader/discovery.js.map +0 -1
  383. package/dist/cjs/downloader/errors.d.ts +0 -5
  384. package/dist/cjs/downloader/errors.d.ts.map +0 -1
  385. package/dist/cjs/downloader/errors.js +0 -40
  386. package/dist/cjs/downloader/errors.js.map +0 -1
  387. package/dist/cjs/downloader/logger.d.ts +0 -16
  388. package/dist/cjs/downloader/logger.d.ts.map +0 -1
  389. package/dist/cjs/downloader/logger.js +0 -51
  390. package/dist/cjs/downloader/logger.js.map +0 -1
  391. package/dist/cjs/downloader/manifest.d.ts +0 -31
  392. package/dist/cjs/downloader/manifest.d.ts.map +0 -1
  393. package/dist/cjs/downloader/manifest.js +0 -53
  394. package/dist/cjs/downloader/manifest.js.map +0 -1
  395. package/dist/cjs/downloader/markdown.d.ts +0 -4
  396. package/dist/cjs/downloader/markdown.d.ts.map +0 -1
  397. package/dist/cjs/downloader/markdown.js +0 -62
  398. package/dist/cjs/downloader/markdown.js.map +0 -1
  399. package/dist/cjs/downloader/options.d.ts +0 -24
  400. package/dist/cjs/downloader/options.d.ts.map +0 -1
  401. package/dist/cjs/downloader/options.js +0 -135
  402. package/dist/cjs/downloader/options.js.map +0 -1
  403. package/dist/cjs/downloader/path.d.ts +0 -15
  404. package/dist/cjs/downloader/path.d.ts.map +0 -1
  405. package/dist/cjs/downloader/path.js +0 -79
  406. package/dist/cjs/downloader/path.js.map +0 -1
  407. package/dist/cjs/downloader/resolver.d.ts.map +0 -1
  408. package/dist/cjs/downloader/resolver.js +0 -22
  409. package/dist/cjs/downloader/resolver.js.map +0 -1
  410. package/dist/cjs/downloader/scheduler.d.ts +0 -19
  411. package/dist/cjs/downloader/scheduler.d.ts.map +0 -1
  412. package/dist/cjs/downloader/scheduler.js +0 -124
  413. package/dist/cjs/downloader/scheduler.js.map +0 -1
  414. package/dist/cjs/downloader/sync.d.ts +0 -21
  415. package/dist/cjs/downloader/sync.d.ts.map +0 -1
  416. package/dist/cjs/downloader/sync.js +0 -317
  417. package/dist/cjs/downloader/sync.js.map +0 -1
  418. package/dist/cjs/endpoints/creator-get.d.ts +0 -7
  419. package/dist/cjs/endpoints/creator-get.d.ts.map +0 -1
  420. package/dist/cjs/endpoints/creator-get.js +0 -5
  421. package/dist/cjs/endpoints/creator-get.js.map +0 -1
  422. package/dist/cjs/endpoints/creator-list-following.d.ts +0 -6
  423. package/dist/cjs/endpoints/creator-list-following.d.ts.map +0 -1
  424. package/dist/cjs/endpoints/creator-list-following.js +0 -5
  425. package/dist/cjs/endpoints/creator-list-following.js.map +0 -1
  426. package/dist/cjs/endpoints/fanbox-envelope.d.ts.map +0 -1
  427. package/dist/cjs/endpoints/fanbox-envelope.js.map +0 -1
  428. package/dist/cjs/endpoints/models/creator.d.ts.map +0 -1
  429. package/dist/cjs/endpoints/models/creator.js.map +0 -1
  430. package/dist/cjs/endpoints/models/plan.d.ts.map +0 -1
  431. package/dist/cjs/endpoints/models/post.d.ts.map +0 -1
  432. package/dist/cjs/endpoints/models/user.d.ts.map +0 -1
  433. package/dist/cjs/endpoints/plan-list-creator.d.ts +0 -7
  434. package/dist/cjs/endpoints/plan-list-creator.d.ts.map +0 -1
  435. package/dist/cjs/endpoints/plan-list-creator.js +0 -5
  436. package/dist/cjs/endpoints/plan-list-creator.js.map +0 -1
  437. package/dist/cjs/endpoints/plan-list-supporting.d.ts +0 -4
  438. package/dist/cjs/endpoints/plan-list-supporting.d.ts.map +0 -1
  439. package/dist/cjs/endpoints/plan-list-supporting.js +0 -5
  440. package/dist/cjs/endpoints/plan-list-supporting.js.map +0 -1
  441. package/dist/cjs/endpoints/post-info.d.ts +0 -7
  442. package/dist/cjs/endpoints/post-info.d.ts.map +0 -1
  443. package/dist/cjs/endpoints/post-info.js +0 -5
  444. package/dist/cjs/endpoints/post-info.js.map +0 -1
  445. package/dist/cjs/endpoints/post-list-creator.d.ts +0 -10
  446. package/dist/cjs/endpoints/post-list-creator.d.ts.map +0 -1
  447. package/dist/cjs/endpoints/post-list-creator.js +0 -5
  448. package/dist/cjs/endpoints/post-list-creator.js.map +0 -1
  449. package/dist/cjs/endpoints/post-list-home.d.ts +0 -5
  450. package/dist/cjs/endpoints/post-list-home.d.ts.map +0 -1
  451. package/dist/cjs/endpoints/post-list-home.js +0 -5
  452. package/dist/cjs/endpoints/post-list-home.js.map +0 -1
  453. package/dist/cjs/endpoints/post-list-supporting.d.ts +0 -5
  454. package/dist/cjs/endpoints/post-list-supporting.d.ts.map +0 -1
  455. package/dist/cjs/endpoints/post-list-supporting.js +0 -5
  456. package/dist/cjs/endpoints/post-list-supporting.js.map +0 -1
  457. package/dist/cjs/endpoints/post-paginate-creator.d.ts +0 -8
  458. package/dist/cjs/endpoints/post-paginate-creator.d.ts.map +0 -1
  459. package/dist/cjs/endpoints/post-paginate-creator.js +0 -5
  460. package/dist/cjs/endpoints/post-paginate-creator.js.map +0 -1
  461. package/dist/cjs/fanbox-headers.d.ts.map +0 -1
  462. package/dist/cjs/fanbox-headers.js.map +0 -1
  463. package/dist/cjs/http.d.ts +0 -31
  464. package/dist/cjs/http.d.ts.map +0 -1
  465. package/dist/cjs/http.js +0 -200
  466. package/dist/cjs/http.js.map +0 -1
  467. package/dist/cjs/types.d.ts +0 -16
  468. package/dist/cjs/types.d.ts.map +0 -1
  469. package/dist/esm/client-options.d.ts +0 -8
  470. package/dist/esm/client-options.d.ts.map +0 -1
  471. package/dist/esm/client-options.js +0 -2
  472. package/dist/esm/client-options.js.map +0 -1
  473. package/dist/esm/client.d.ts +0 -31
  474. package/dist/esm/client.d.ts.map +0 -1
  475. package/dist/esm/client.js +0 -102
  476. package/dist/esm/client.js.map +0 -1
  477. package/dist/esm/downloader/asset.d.ts +0 -30
  478. package/dist/esm/downloader/asset.d.ts.map +0 -1
  479. package/dist/esm/downloader/asset.js +0 -91
  480. package/dist/esm/downloader/asset.js.map +0 -1
  481. package/dist/esm/downloader/cli.d.ts +0 -8
  482. package/dist/esm/downloader/cli.d.ts.map +0 -1
  483. package/dist/esm/downloader/cli.js +0 -164
  484. package/dist/esm/downloader/cli.js.map +0 -1
  485. package/dist/esm/downloader/discovery.d.ts +0 -12
  486. package/dist/esm/downloader/discovery.d.ts.map +0 -1
  487. package/dist/esm/downloader/discovery.js +0 -84
  488. package/dist/esm/downloader/discovery.js.map +0 -1
  489. package/dist/esm/downloader/errors.d.ts +0 -5
  490. package/dist/esm/downloader/errors.d.ts.map +0 -1
  491. package/dist/esm/downloader/errors.js +0 -36
  492. package/dist/esm/downloader/errors.js.map +0 -1
  493. package/dist/esm/downloader/logger.d.ts +0 -16
  494. package/dist/esm/downloader/logger.d.ts.map +0 -1
  495. package/dist/esm/downloader/logger.js +0 -47
  496. package/dist/esm/downloader/logger.js.map +0 -1
  497. package/dist/esm/downloader/manifest.d.ts +0 -31
  498. package/dist/esm/downloader/manifest.d.ts.map +0 -1
  499. package/dist/esm/downloader/manifest.js +0 -46
  500. package/dist/esm/downloader/manifest.js.map +0 -1
  501. package/dist/esm/downloader/markdown.d.ts +0 -4
  502. package/dist/esm/downloader/markdown.d.ts.map +0 -1
  503. package/dist/esm/downloader/markdown.js +0 -59
  504. package/dist/esm/downloader/markdown.js.map +0 -1
  505. package/dist/esm/downloader/options.d.ts +0 -24
  506. package/dist/esm/downloader/options.d.ts.map +0 -1
  507. package/dist/esm/downloader/options.js +0 -130
  508. package/dist/esm/downloader/options.js.map +0 -1
  509. package/dist/esm/downloader/path.d.ts +0 -15
  510. package/dist/esm/downloader/path.d.ts.map +0 -1
  511. package/dist/esm/downloader/path.js +0 -69
  512. package/dist/esm/downloader/path.js.map +0 -1
  513. package/dist/esm/downloader/resolver.d.ts.map +0 -1
  514. package/dist/esm/downloader/resolver.js +0 -19
  515. package/dist/esm/downloader/resolver.js.map +0 -1
  516. package/dist/esm/downloader/scheduler.d.ts +0 -19
  517. package/dist/esm/downloader/scheduler.d.ts.map +0 -1
  518. package/dist/esm/downloader/scheduler.js +0 -120
  519. package/dist/esm/downloader/scheduler.js.map +0 -1
  520. package/dist/esm/downloader/sync.d.ts +0 -21
  521. package/dist/esm/downloader/sync.d.ts.map +0 -1
  522. package/dist/esm/downloader/sync.js +0 -311
  523. package/dist/esm/downloader/sync.js.map +0 -1
  524. package/dist/esm/endpoints/creator-get.d.ts +0 -7
  525. package/dist/esm/endpoints/creator-get.d.ts.map +0 -1
  526. package/dist/esm/endpoints/creator-get.js +0 -2
  527. package/dist/esm/endpoints/creator-get.js.map +0 -1
  528. package/dist/esm/endpoints/creator-list-following.d.ts +0 -6
  529. package/dist/esm/endpoints/creator-list-following.d.ts.map +0 -1
  530. package/dist/esm/endpoints/creator-list-following.js +0 -2
  531. package/dist/esm/endpoints/creator-list-following.js.map +0 -1
  532. package/dist/esm/endpoints/fanbox-envelope.d.ts.map +0 -1
  533. package/dist/esm/endpoints/fanbox-envelope.js.map +0 -1
  534. package/dist/esm/endpoints/models/creator.d.ts.map +0 -1
  535. package/dist/esm/endpoints/models/creator.js.map +0 -1
  536. package/dist/esm/endpoints/models/plan.d.ts.map +0 -1
  537. package/dist/esm/endpoints/models/post.d.ts.map +0 -1
  538. package/dist/esm/endpoints/models/user.d.ts.map +0 -1
  539. package/dist/esm/endpoints/plan-list-creator.d.ts +0 -7
  540. package/dist/esm/endpoints/plan-list-creator.d.ts.map +0 -1
  541. package/dist/esm/endpoints/plan-list-creator.js +0 -2
  542. package/dist/esm/endpoints/plan-list-creator.js.map +0 -1
  543. package/dist/esm/endpoints/plan-list-supporting.d.ts +0 -4
  544. package/dist/esm/endpoints/plan-list-supporting.d.ts.map +0 -1
  545. package/dist/esm/endpoints/plan-list-supporting.js +0 -2
  546. package/dist/esm/endpoints/plan-list-supporting.js.map +0 -1
  547. package/dist/esm/endpoints/post-info.d.ts +0 -7
  548. package/dist/esm/endpoints/post-info.d.ts.map +0 -1
  549. package/dist/esm/endpoints/post-info.js +0 -2
  550. package/dist/esm/endpoints/post-info.js.map +0 -1
  551. package/dist/esm/endpoints/post-list-creator.d.ts +0 -10
  552. package/dist/esm/endpoints/post-list-creator.d.ts.map +0 -1
  553. package/dist/esm/endpoints/post-list-creator.js +0 -2
  554. package/dist/esm/endpoints/post-list-creator.js.map +0 -1
  555. package/dist/esm/endpoints/post-list-home.d.ts +0 -5
  556. package/dist/esm/endpoints/post-list-home.d.ts.map +0 -1
  557. package/dist/esm/endpoints/post-list-home.js +0 -2
  558. package/dist/esm/endpoints/post-list-home.js.map +0 -1
  559. package/dist/esm/endpoints/post-list-supporting.d.ts +0 -5
  560. package/dist/esm/endpoints/post-list-supporting.d.ts.map +0 -1
  561. package/dist/esm/endpoints/post-list-supporting.js +0 -2
  562. package/dist/esm/endpoints/post-list-supporting.js.map +0 -1
  563. package/dist/esm/endpoints/post-paginate-creator.d.ts +0 -8
  564. package/dist/esm/endpoints/post-paginate-creator.d.ts.map +0 -1
  565. package/dist/esm/endpoints/post-paginate-creator.js +0 -2
  566. package/dist/esm/endpoints/post-paginate-creator.js.map +0 -1
  567. package/dist/esm/fanbox-headers.d.ts.map +0 -1
  568. package/dist/esm/fanbox-headers.js.map +0 -1
  569. package/dist/esm/http.d.ts +0 -31
  570. package/dist/esm/http.d.ts.map +0 -1
  571. package/dist/esm/http.js +0 -195
  572. package/dist/esm/http.js.map +0 -1
  573. package/dist/esm/types.d.ts +0 -16
  574. package/dist/esm/types.d.ts.map +0 -1
  575. /package/dist/cjs/{endpoints → client}/fanbox-envelope.d.ts +0 -0
  576. /package/dist/cjs/{endpoints → client}/fanbox-envelope.js +0 -0
  577. /package/dist/cjs/{fanbox-headers.d.ts → client/fanbox-headers.d.ts} +0 -0
  578. /package/dist/cjs/{endpoints → client}/models/creator.d.ts +0 -0
  579. /package/dist/cjs/{endpoints → client}/models/creator.js +0 -0
  580. /package/dist/cjs/{endpoints → client}/models/plan.d.ts +0 -0
  581. /package/dist/cjs/{endpoints → client}/models/plan.js +0 -0
  582. /package/dist/cjs/{endpoints → client}/models/post.js +0 -0
  583. /package/dist/cjs/{endpoints → client}/models/user.d.ts +0 -0
  584. /package/dist/cjs/{endpoints → client}/models/user.js +0 -0
  585. /package/dist/cjs/{types.js → client/types.js} +0 -0
  586. /package/dist/esm/{endpoints → client}/fanbox-envelope.d.ts +0 -0
  587. /package/dist/esm/{endpoints → client}/fanbox-envelope.js +0 -0
  588. /package/dist/esm/{fanbox-headers.d.ts → client/fanbox-headers.d.ts} +0 -0
  589. /package/dist/esm/{endpoints → client}/models/creator.d.ts +0 -0
  590. /package/dist/esm/{endpoints → client}/models/creator.js +0 -0
  591. /package/dist/esm/{endpoints → client}/models/plan.d.ts +0 -0
  592. /package/dist/esm/{endpoints → client}/models/plan.js +0 -0
  593. /package/dist/esm/{endpoints → client}/models/post.js +0 -0
  594. /package/dist/esm/{endpoints → client}/models/user.d.ts +0 -0
  595. /package/dist/esm/{endpoints → client}/models/user.js +0 -0
  596. /package/dist/esm/{types.js → client/types.js} +0 -0
@@ -1,164 +0,0 @@
1
- import { FanboxClient } from "../client.js";
2
- import { createFanboxRequestHeaders } from "../fanbox-headers.js";
3
- import { Http2Transport } from "../http.js";
4
- import { AssetDownloader } from "./asset.js";
5
- import { discoverCreatorPosts } from "./discovery.js";
6
- import { logDebugErrorResponse } from "./errors.js";
7
- import { createLogger } from "./logger.js";
8
- import { CliUsageError, parseDownloadOptions } from "./options.js";
9
- import { assertPathBudget } from "./path.js";
10
- import { resolveCreatorIds } from "./resolver.js";
11
- import { RequestScheduler } from "./scheduler.js";
12
- import { syncCreator } from "./sync.js";
13
- export const DOWNLOAD_HELP = `Usage: fanbox-dl download [options]
14
-
15
- Download FANBOX posts for selected creators.
16
-
17
- Selectors:
18
- --creator <id> Add a creator ID. Can be repeated.
19
- --following Add all followed creators.
20
- --supporting Add all supporting creators.
21
- --ignore-creator <id> Exclude a creator ID. Can be repeated.
22
-
23
- Auth:
24
- --cookie <value> Raw session ID or FANBOXSESSID=... cookie.
25
- --cookie-file <path> Read raw cookie or Netscape cookies.txt.
26
- --user-agent <value> Send the User-Agent from your logged-in browser.
27
- FANBOX_SESSION_ID Environment fallback.
28
- FANBOX_USER_AGENT User-Agent environment fallback.
29
-
30
- Download:
31
- --output <path> Output directory. Default: fanbox-downloads.
32
- --dry-run List creators/posts without downloading or writing.
33
- --flat-posts Store post files directly under each creator.
34
- --verify-assets Verify existing asset size and SHA-256 locally.
35
-
36
- Requests:
37
- --concurrency <n> Concurrent requests. Default: 3.
38
- --request-interval-ms <n> Delay between request starts. Default: 0.
39
- --rate-limit-pause-ms <n> Pause after 429 without Retry-After. Default: 60000.
40
- --max-retries <n> Retry attempts. Default: 5.
41
-
42
- Output:
43
- --log-format json|pretty Default: json.
44
- --log-level <level> debug|info|warn|error. Default: info.
45
- --help Show this help.
46
- `;
47
- export async function runCli(args, env = process.env, dependencies = {}) {
48
- const write = dependencies.write ?? ((line) => process.stderr.write(`${line}\n`));
49
- if (args.includes("--help") || args.includes("-h")) {
50
- write(DOWNLOAD_HELP);
51
- return 0;
52
- }
53
- let logger;
54
- let transportToClose;
55
- try {
56
- const options = parseDownloadOptions(args, env);
57
- assertPathBudget(options.output);
58
- logger = createLogger({
59
- format: options.logFormat,
60
- level: options.logLevel,
61
- write: dependencies.write,
62
- });
63
- const transport = dependencies.transport ?? new Http2Transport();
64
- transportToClose = dependencies.transport ? undefined : transport;
65
- const requestHeaders = createFanboxRequestHeaders({
66
- cookie: options.cookie,
67
- userAgent: options.userAgent,
68
- });
69
- const scheduler = new RequestScheduler({
70
- concurrency: options.concurrency,
71
- logger,
72
- maxRetries: options.maxRetries,
73
- rateLimitPauseMs: options.rateLimitPauseMs,
74
- requestIntervalMs: options.requestIntervalMs,
75
- });
76
- const client = new FanboxClient({
77
- cookie: requestHeaders.Cookie,
78
- transport: {
79
- close: () => transport.close(),
80
- request: (request) => scheduler.request(() => transport.request(request)),
81
- },
82
- userAgent: requestHeaders["User-Agent"],
83
- });
84
- const creatorIds = await resolveCreatorIds(client, options);
85
- if (options.dryRun) {
86
- for (const creatorId of creatorIds) {
87
- logger.info("dry-run.creator", "Dry-run creator selected", {
88
- creatorId,
89
- });
90
- for (const post of await discoverCreatorPosts(client, creatorId, {
91
- logger,
92
- })) {
93
- logger.info("dry-run.post", "Dry-run post discovered", {
94
- creatorId,
95
- postId: post.id,
96
- restricted: post.isRestricted,
97
- title: post.title,
98
- updatedDatetime: post.updatedDatetime,
99
- });
100
- }
101
- }
102
- return 0;
103
- }
104
- const assetDownloader = new AssetDownloader({
105
- headers: requestHeaders,
106
- scheduler,
107
- transport,
108
- });
109
- let failed = false;
110
- for (const creatorId of creatorIds) {
111
- logger.info("creator.sync.start", "Creator sync started", { creatorId });
112
- try {
113
- const manifest = await syncCreator({
114
- assetDownloader,
115
- client,
116
- creatorId,
117
- flatPosts: options.flatPosts,
118
- logger,
119
- outputDirectory: options.output,
120
- verifyAssets: options.verifyAssets,
121
- });
122
- failed || (failed = hasFailures(manifest));
123
- logger.info("creator.sync.complete", "Creator sync completed", {
124
- creatorId,
125
- });
126
- }
127
- catch (error) {
128
- failed = true;
129
- logDebugErrorResponse(logger, error);
130
- logger.error("creator.sync.failed", "Creator sync failed", {
131
- creatorId,
132
- error: String(error),
133
- });
134
- }
135
- }
136
- return failed ? 1 : 0;
137
- }
138
- catch (error) {
139
- const usage = error instanceof CliUsageError;
140
- const message = String(error);
141
- if (usage) {
142
- write(`${message}\n\n${DOWNLOAD_HELP}`);
143
- }
144
- else {
145
- if (logger) {
146
- logDebugErrorResponse(logger, error);
147
- }
148
- write(JSON.stringify({
149
- event: "cli.failed",
150
- level: "error",
151
- msg: message,
152
- time: new Date().toISOString(),
153
- }));
154
- }
155
- return usage ? 2 : 1;
156
- }
157
- finally {
158
- await transportToClose?.close();
159
- }
160
- }
161
- function hasFailures(manifest) {
162
- return Object.values(manifest.posts).some((post) => post?.status === "failed");
163
- }
164
- //# sourceMappingURL=cli.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/downloader/cli.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import type { ListCreatorPostsParams, PaginateCreatorPostsParams, PostSummary } from "../types.js";
2
- import type { Logger } from "./logger.js";
3
- export interface CreatorPostClient {
4
- listCreatorPosts(params: ListCreatorPostsParams): Promise<PostSummary[]>;
5
- paginateCreatorPosts(params: PaginateCreatorPostsParams): Promise<string[]>;
6
- }
7
- export interface DiscoverCreatorPostsOptions {
8
- logger?: Logger;
9
- pageSize?: number;
10
- }
11
- export declare function discoverCreatorPosts(client: CreatorPostClient, creatorId: string, options?: DiscoverCreatorPostsOptions): Promise<PostSummary[]>;
12
- //# sourceMappingURL=discovery.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../src/downloader/discovery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,0BAA0B,EAC1B,WAAW,EACZ,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAK1C,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACzE,oBAAoB,CAAC,MAAM,EAAE,0BAA0B,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CAC7E;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,WAAW,EAAE,CAAC,CAqDxB"}
@@ -1,84 +0,0 @@
1
- import { logDebugErrorResponse } from "./errors.js";
2
- import { silentLogger } from "./logger.js";
3
- const DEFAULT_PAGE_SIZE = 300;
4
- export async function discoverCreatorPosts(client, creatorId, options = {}) {
5
- const logger = options.logger ?? silentLogger;
6
- const pageSize = options.pageSize ?? DEFAULT_PAGE_SIZE;
7
- const found = new Map();
8
- let cursor = {
9
- creatorId,
10
- limit: pageSize,
11
- sort: "newest",
12
- };
13
- for (;;) {
14
- let page;
15
- try {
16
- page = await client.listCreatorPosts(cursor);
17
- }
18
- catch (error) {
19
- logDebugErrorResponse(logger, error, { creatorId });
20
- logger.warn("post.discovery.fallback", "Direct cursor failed; using paginateCreator", {
21
- creatorId,
22
- error: String(error),
23
- });
24
- await fallbackPaginate(client, creatorId, found);
25
- break;
26
- }
27
- const added = addPosts(page, found);
28
- if (page.length < pageSize) {
29
- break;
30
- }
31
- if (added === 0) {
32
- logger.warn("post.discovery.fallback", "Direct cursor made no progress; using paginateCreator", {
33
- creatorId,
34
- });
35
- await fallbackPaginate(client, creatorId, found);
36
- break;
37
- }
38
- const last = page.at(-1);
39
- cursor = {
40
- creatorId,
41
- firstId: last.id,
42
- firstPublishedDatetime: last.publishedDatetime,
43
- limit: pageSize,
44
- sort: "newest",
45
- };
46
- }
47
- return [...found.values()];
48
- }
49
- function addPosts(posts, found) {
50
- let added = 0;
51
- for (const post of posts) {
52
- if (!found.has(post.id)) {
53
- added += 1;
54
- found.set(post.id, post);
55
- }
56
- }
57
- return added;
58
- }
59
- function cursorFromUrl(url) {
60
- const parsed = new URL(url);
61
- const creatorId = parsed.searchParams.get("creatorId");
62
- if (!creatorId) {
63
- return undefined;
64
- }
65
- return {
66
- creatorId,
67
- firstId: parsed.searchParams.get("firstId") ?? undefined,
68
- firstPublishedDatetime: parsed.searchParams.get("firstPublishedDatetime") ?? undefined,
69
- limit: Number(parsed.searchParams.get("limit") ?? DEFAULT_PAGE_SIZE),
70
- sort: "newest",
71
- };
72
- }
73
- async function fallbackPaginate(client, creatorId, found) {
74
- for (const url of await client.paginateCreatorPosts({
75
- creatorId,
76
- sort: "newest",
77
- })) {
78
- const cursor = cursorFromUrl(url);
79
- if (cursor) {
80
- addPosts(await client.listCreatorPosts(cursor), found);
81
- }
82
- }
83
- }
84
- //# sourceMappingURL=discovery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../../src/downloader/discovery.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import type { HttpResponse } from "../http.js";
2
- import type { LogFields, Logger } from "./logger.js";
3
- export declare function logDebugErrorResponse(logger: Logger, error: unknown, fields?: LogFields): void;
4
- export declare function logDebugResponse(logger: Logger, response: HttpResponse, fields?: LogFields): Promise<void>;
5
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/downloader/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAQrD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,OAAO,EACd,MAAM,GAAE,SAAc,GACrB,IAAI,CAWN;AAED,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,YAAY,EACtB,MAAM,GAAE,SAAc,GACrB,OAAO,CAAC,IAAI,CAAC,CAOf"}
@@ -1,36 +0,0 @@
1
- export function logDebugErrorResponse(logger, error, fields = {}) {
2
- if (!isResponseLikeError(error)) {
3
- return;
4
- }
5
- logger.debug("api.response.error", "HTTP error response", {
6
- ...fields,
7
- body: error.body,
8
- status: error.status,
9
- statusText: error.statusText,
10
- });
11
- }
12
- export async function logDebugResponse(logger, response, fields = {}) {
13
- logger.debug("api.response.error", "HTTP error response", {
14
- ...fields,
15
- body: await readResponseBody(response),
16
- status: response.status,
17
- statusText: response.statusText,
18
- });
19
- }
20
- function isResponseLikeError(error) {
21
- return (typeof error === "object" &&
22
- error !== null &&
23
- "body" in error &&
24
- "status" in error &&
25
- typeof error.status === "number");
26
- }
27
- async function readResponseBody(response) {
28
- const text = await response.text();
29
- try {
30
- return JSON.parse(text);
31
- }
32
- catch {
33
- return text;
34
- }
35
- }
36
- //# sourceMappingURL=errors.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/downloader/errors.ts"],"names":[],"mappings":"AASA,MAAM,UAAU,qBAAqB,CACnC,MAAc,EACd,KAAc,EACd,SAAoB,EAAE;IAEtB,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO;IACT,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,qBAAqB,EAAE;QACxD,GAAG,MAAM;QACT,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,UAAU,EAAE,KAAK,CAAC,UAAU;KAC7B,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAc,EACd,QAAsB,EACtB,SAAoB,EAAE;IAEtB,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,qBAAqB,EAAE;QACxD,GAAG,MAAM;QACT,IAAI,EAAE,MAAM,gBAAgB,CAAC,QAAQ,CAAC;QACtC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;KAChC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAc;IACzC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,MAAM,IAAI,KAAK;QACf,QAAQ,IAAI,KAAK;QACjB,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CACjC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,QAAsB;IACpD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1,16 +0,0 @@
1
- export interface CreateLoggerOptions {
2
- format?: "json" | "pretty";
3
- level?: LogLevel;
4
- write?: (line: string) => void;
5
- }
6
- export type LogFields = Record<string, unknown>;
7
- export interface Logger {
8
- debug(event: string, message: string, fields?: LogFields): void;
9
- error(event: string, message: string, fields?: LogFields): void;
10
- info(event: string, message: string, fields?: LogFields): void;
11
- warn(event: string, message: string, fields?: LogFields): void;
12
- }
13
- export type LogLevel = "debug" | "error" | "info" | "warn";
14
- export declare function createLogger(options?: CreateLoggerOptions): Logger;
15
- export declare const silentLogger: Logger;
16
- //# sourceMappingURL=logger.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/downloader/logger.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,MAAM,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC3B,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEhD,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAChE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAChE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAC/D,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;CAChE;AAED,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;AAS3D,wBAAgB,YAAY,CAAC,OAAO,GAAE,mBAAwB,GAAG,MAAM,CA0CtE;AAED,eAAO,MAAM,YAAY,EAAE,MAK1B,CAAC"}
@@ -1,47 +0,0 @@
1
- const LEVEL_WEIGHTS = {
2
- debug: 10,
3
- error: 40,
4
- info: 20,
5
- warn: 30,
6
- };
7
- export function createLogger(options = {}) {
8
- const format = options.format ?? "json";
9
- const minimumLevel = options.level ?? "info";
10
- const write = options.write ?? ((line) => process.stdout.write(`${line}\n`));
11
- const log = (level, event, message, fields = {}) => {
12
- if (LEVEL_WEIGHTS[level] < LEVEL_WEIGHTS[minimumLevel]) {
13
- return;
14
- }
15
- const entry = {
16
- event,
17
- level,
18
- msg: message,
19
- time: new Date().toISOString(),
20
- ...fields,
21
- };
22
- write(format === "json"
23
- ? JSON.stringify(entry)
24
- : `${entry.time} ${level.toUpperCase()} ${event} ${message} ${JSON.stringify(fields)}`);
25
- };
26
- return {
27
- debug: (event, message, fields) => {
28
- log("debug", event, message, fields);
29
- },
30
- error: (event, message, fields) => {
31
- log("error", event, message, fields);
32
- },
33
- info: (event, message, fields) => {
34
- log("info", event, message, fields);
35
- },
36
- warn: (event, message, fields) => {
37
- log("warn", event, message, fields);
38
- },
39
- };
40
- }
41
- export const silentLogger = {
42
- debug: () => undefined,
43
- error: () => undefined,
44
- info: () => undefined,
45
- warn: () => undefined,
46
- };
47
- //# sourceMappingURL=logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/downloader/logger.ts"],"names":[],"mappings":"AAiBA,MAAM,aAAa,GAA6B;IAC9C,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;CACT,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,UAA+B,EAAE;IAC5D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC;IACxC,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC;IAC7C,MAAM,KAAK,GACT,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC;IACzE,MAAM,GAAG,GAAG,CACV,KAAe,EACf,KAAa,EACb,OAAe,EACf,SAAoB,EAAE,EACtB,EAAE;QACF,IAAI,aAAa,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;YACvD,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG;YACZ,KAAK;YACL,KAAK;YACL,GAAG,EAAE,OAAO;YACZ,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YAC9B,GAAG,MAAM;SACV,CAAC;QACF,KAAK,CACH,MAAM,KAAK,MAAM;YACf,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YACvB,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,KAAK,IAAI,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CACzF,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO;QACL,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAChC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;QACD,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAChC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAC/B,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACtC,CAAC;QACD,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAC/B,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACtC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAW;IAClC,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS;IACtB,KAAK,EAAE,GAAG,EAAE,CAAC,SAAS;IACtB,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS;IACrB,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS;CACtB,CAAC"}
@@ -1,31 +0,0 @@
1
- export interface AssetManifestEntry {
2
- bytes?: number;
3
- error?: string;
4
- path: string;
5
- sha256?: string;
6
- status: AssetStatus;
7
- url: string;
8
- }
9
- export type AssetStatus = "complete" | "downloading" | "failed" | "obsolete" | "pending";
10
- export interface CreatorManifest {
11
- creatorId: string;
12
- posts: Partial<Record<string, PostManifestEntry>>;
13
- schemaVersion: 1;
14
- }
15
- export interface PostManifestEntry {
16
- assets: Partial<Record<string, AssetManifestEntry>>;
17
- directory: string;
18
- error?: string;
19
- id: string;
20
- restricted: boolean;
21
- status: PostStatus;
22
- updatedDatetime: string;
23
- }
24
- export type PostStatus = "complete" | "failed" | "pending" | "skipped";
25
- export declare class ManifestStore {
26
- #private;
27
- constructor(outputDirectory: string, creatorId: string);
28
- load(): Promise<CreatorManifest>;
29
- save(manifest: CreatorManifest): Promise<void>;
30
- }
31
- //# sourceMappingURL=manifest.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/downloader/manifest.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;CACb;AACD,MAAM,MAAM,WAAW,GACnB,UAAU,GACV,aAAa,GACb,QAAQ,GACR,UAAU,GACV,SAAS,CAAC;AAEd,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAClD,aAAa,EAAE,CAAC,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC;AAEvE,qBAAa,aAAa;;gBAIL,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAQhD,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAkBhC,IAAI,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAM5D"}
@@ -1,46 +0,0 @@
1
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
- if (kind === "m") throw new TypeError("Private method is not writable");
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
- };
7
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
- };
12
- var _ManifestStore_creatorDirectory, _ManifestStore_manifestPath;
13
- import { mkdir, readFile, rename, writeFile } from "node:fs/promises";
14
- import path from "node:path";
15
- import { createCreatorDirectoryName } from "./path.js";
16
- export class ManifestStore {
17
- constructor(outputDirectory, creatorId) {
18
- _ManifestStore_creatorDirectory.set(this, void 0);
19
- _ManifestStore_manifestPath.set(this, void 0);
20
- __classPrivateFieldSet(this, _ManifestStore_creatorDirectory, path.join(outputDirectory, createCreatorDirectoryName(creatorId, outputDirectory)), "f");
21
- __classPrivateFieldSet(this, _ManifestStore_manifestPath, path.join(__classPrivateFieldGet(this, _ManifestStore_creatorDirectory, "f"), "manifest.json"), "f");
22
- }
23
- async load() {
24
- try {
25
- return JSON.parse(await readFile(__classPrivateFieldGet(this, _ManifestStore_manifestPath, "f"), "utf8"));
26
- }
27
- catch (error) {
28
- if (error.code !== "ENOENT") {
29
- throw error;
30
- }
31
- return {
32
- creatorId: path.basename(__classPrivateFieldGet(this, _ManifestStore_creatorDirectory, "f")),
33
- posts: {},
34
- schemaVersion: 1,
35
- };
36
- }
37
- }
38
- async save(manifest) {
39
- await mkdir(__classPrivateFieldGet(this, _ManifestStore_creatorDirectory, "f"), { recursive: true });
40
- const temporaryPath = `${__classPrivateFieldGet(this, _ManifestStore_manifestPath, "f")}.tmp`;
41
- await writeFile(temporaryPath, `${JSON.stringify(manifest, null, 2)}\n`);
42
- await rename(temporaryPath, __classPrivateFieldGet(this, _ManifestStore_manifestPath, "f"));
43
- }
44
- }
45
- _ManifestStore_creatorDirectory = new WeakMap(), _ManifestStore_manifestPath = new WeakMap();
46
- //# sourceMappingURL=manifest.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/downloader/manifest.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,0BAA0B,EAAE,MAAM,WAAW,CAAC;AAmCvD,MAAM,OAAO,aAAa;IAIxB,YAAmB,eAAuB,EAAE,SAAiB;QAHpD,kDAA0B;QAC1B,8CAAsB;QAG7B,uBAAA,IAAI,mCAAqB,IAAI,CAAC,IAAI,CAChC,eAAe,EACf,0BAA0B,CAAC,SAAS,EAAE,eAAe,CAAC,CACvD,MAAA,CAAC;QACF,uBAAA,IAAI,+BAAiB,IAAI,CAAC,IAAI,CAAC,uBAAA,IAAI,uCAAkB,EAAE,eAAe,CAAC,MAAA,CAAC;IAC1E,CAAC;IAEM,KAAK,CAAC,IAAI;QACf,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CACf,MAAM,QAAQ,CAAC,uBAAA,IAAI,mCAAc,EAAE,MAAM,CAAC,CACxB,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACvD,MAAM,KAAK,CAAC;YACd,CAAC;YAED,OAAO;gBACL,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,uBAAA,IAAI,uCAAkB,CAAC;gBAChD,KAAK,EAAE,EAAE;gBACT,aAAa,EAAE,CAAC;aACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,QAAyB;QACzC,MAAM,KAAK,CAAC,uBAAA,IAAI,uCAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,MAAM,aAAa,GAAG,GAAG,uBAAA,IAAI,mCAAc,MAAM,CAAC;QAClD,MAAM,SAAS,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACzE,MAAM,MAAM,CAAC,aAAa,EAAE,uBAAA,IAAI,mCAAc,CAAC,CAAC;IAClD,CAAC;CACF"}
@@ -1,4 +0,0 @@
1
- import type { Post } from "../types.js";
2
- export type AssetPathMap = ReadonlyMap<string, string>;
3
- export declare function renderPostMarkdown(post: Post, paths: AssetPathMap): string;
4
- //# sourceMappingURL=markdown.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../src/downloader/markdown.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAIV,IAAI,EAGL,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEvD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,GAAG,MAAM,CAwC1E"}
@@ -1,59 +0,0 @@
1
- export function renderPostMarkdown(post, paths) {
2
- let content;
3
- switch (post.type) {
4
- case "article":
5
- content = renderArticle(post, paths);
6
- break;
7
- case "file": {
8
- const filePost = post;
9
- content = [
10
- filePost.body.text,
11
- ...filePost.body.files.map((file) => `[${file.name}](${assetLink(paths, `file:${file.id}`)})`),
12
- ].join("\n\n");
13
- break;
14
- }
15
- case "image": {
16
- const imagePost = post;
17
- content = [
18
- imagePost.body.text,
19
- ...imagePost.body.images.map((image) => `![${image.id}](./${assetLink(paths, `image:${image.id}`)})`),
20
- ].join("\n\n");
21
- break;
22
- }
23
- case "text":
24
- content = post.body.text;
25
- break;
26
- case "video": {
27
- const videoPost = post;
28
- content = `${videoPost.body.text}\n\n${videoPost.body.video.serviceProvider}: ${videoPost.body.video.videoId}`;
29
- break;
30
- }
31
- default:
32
- content = `[unsupported post type: ${post.type}]`;
33
- }
34
- return `# ${post.title}\n\n${content.trim()}\n`;
35
- }
36
- function assetLink(paths, key) {
37
- return paths.get(key) ?? `[missing asset: ${key}]`;
38
- }
39
- function renderArticle(post, paths) {
40
- return post.body.blocks
41
- .map((block) => {
42
- switch (block.type) {
43
- case "file":
44
- return `[${String(block.fileId)}](${assetLink(paths, `file:${String(block.fileId)}`)})`;
45
- case "header":
46
- return `# ${String(block.text)}`;
47
- case "image":
48
- return `![${String(block.imageId)}](${assetLink(paths, `image:${String(block.imageId)}`)})`;
49
- case "p":
50
- return String(block.text);
51
- case "url_embed":
52
- return String(post.body.urlEmbedMap[String(block.urlEmbedId)] ?? block.urlEmbedId);
53
- default:
54
- return `[unsupported block: ${block.type}]`;
55
- }
56
- })
57
- .join("\n\n");
58
- }
59
- //# sourceMappingURL=markdown.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../src/downloader/markdown.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import type { LogLevel } from "./logger.js";
2
- export interface DownloadOptions {
3
- concurrency: number;
4
- cookie?: string;
5
- creatorIds: string[];
6
- dryRun: boolean;
7
- flatPosts: boolean;
8
- following: boolean;
9
- ignoreCreatorIds: string[];
10
- logFormat: "json" | "pretty";
11
- logLevel: LogLevel;
12
- maxRetries: number;
13
- output: string;
14
- rateLimitPauseMs: number;
15
- requestIntervalMs: number;
16
- supporting: boolean;
17
- userAgent?: string;
18
- verifyAssets: boolean;
19
- }
20
- export declare class CliUsageError extends Error {
21
- constructor(message: string);
22
- }
23
- export declare function parseDownloadOptions(args: string[], env?: NodeJS.ProcessEnv): DownloadOptions;
24
- //# sourceMappingURL=options.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/downloader/options.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC7B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,qBAAa,aAAc,SAAQ,KAAK;gBACnB,OAAO,EAAE,MAAM;CAInC;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,eAAe,CA8CjB"}