apify-cli 0.21.7 → 0.21.8-beta.1

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 (425) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +0 -1431
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/commands/_register.js +52 -0
  5. package/dist/commands/_register.js.map +1 -0
  6. package/dist/commands/actor/_index.js +24 -0
  7. package/dist/commands/actor/_index.js.map +1 -0
  8. package/dist/commands/actor/charge.js +5 -3
  9. package/dist/commands/actor/charge.js.map +1 -1
  10. package/dist/commands/actor/get-input.js +3 -2
  11. package/dist/commands/actor/get-input.js.map +1 -1
  12. package/dist/commands/actor/get-public-url.js +4 -3
  13. package/dist/commands/actor/get-public-url.js.map +1 -1
  14. package/dist/commands/actor/get-value.js +4 -3
  15. package/dist/commands/actor/get-value.js.map +1 -1
  16. package/dist/commands/actor/push-data.js +6 -5
  17. package/dist/commands/actor/push-data.js.map +1 -1
  18. package/dist/commands/actor/set-value.js +5 -5
  19. package/dist/commands/actor/set-value.js.map +1 -1
  20. package/dist/commands/actors/_index.js +28 -0
  21. package/dist/commands/actors/_index.js.map +1 -0
  22. package/dist/commands/actors/build.js +3 -1
  23. package/dist/commands/actors/build.js.map +1 -1
  24. package/dist/commands/actors/call.js +9 -7
  25. package/dist/commands/actors/call.js.map +1 -1
  26. package/dist/commands/actors/info.js +7 -5
  27. package/dist/commands/actors/info.js.map +1 -1
  28. package/dist/commands/actors/ls.js +8 -6
  29. package/dist/commands/actors/ls.js.map +1 -1
  30. package/dist/commands/actors/pull.js +4 -2
  31. package/dist/commands/actors/pull.js.map +1 -1
  32. package/dist/commands/actors/push.js +4 -6
  33. package/dist/commands/actors/push.js.map +1 -1
  34. package/dist/commands/actors/rm.js +4 -3
  35. package/dist/commands/actors/rm.js.map +1 -1
  36. package/dist/commands/actors/start.js +9 -7
  37. package/dist/commands/actors/start.js.map +1 -1
  38. package/dist/commands/builds/_index.js +22 -0
  39. package/dist/commands/builds/_index.js.map +1 -0
  40. package/dist/commands/builds/create.js +7 -5
  41. package/dist/commands/builds/create.js.map +1 -1
  42. package/dist/commands/builds/info.js +7 -6
  43. package/dist/commands/builds/info.js.map +1 -1
  44. package/dist/commands/builds/log.js +4 -3
  45. package/dist/commands/builds/log.js.map +1 -1
  46. package/dist/commands/builds/ls.js +8 -6
  47. package/dist/commands/builds/ls.js.map +1 -1
  48. package/dist/commands/builds/rm.js +3 -2
  49. package/dist/commands/builds/rm.js.map +1 -1
  50. package/dist/commands/call.js +1 -0
  51. package/dist/commands/call.js.map +1 -1
  52. package/dist/commands/check-version.js +4 -3
  53. package/dist/commands/check-version.js.map +1 -1
  54. package/dist/commands/create.js +4 -2
  55. package/dist/commands/create.js.map +1 -1
  56. package/dist/commands/datasets/_index.js +25 -0
  57. package/dist/commands/datasets/_index.js.map +1 -0
  58. package/dist/commands/datasets/create.js +6 -5
  59. package/dist/commands/datasets/create.js.map +1 -1
  60. package/dist/commands/datasets/get-items.js +6 -7
  61. package/dist/commands/datasets/get-items.js.map +1 -1
  62. package/dist/commands/datasets/info.js +7 -6
  63. package/dist/commands/datasets/info.js.map +1 -1
  64. package/dist/commands/datasets/ls.js +6 -5
  65. package/dist/commands/datasets/ls.js.map +1 -1
  66. package/dist/commands/datasets/push-items.js +5 -4
  67. package/dist/commands/datasets/push-items.js.map +1 -1
  68. package/dist/commands/datasets/rename.js +4 -2
  69. package/dist/commands/datasets/rename.js.map +1 -1
  70. package/dist/commands/datasets/rm.js +3 -2
  71. package/dist/commands/datasets/rm.js.map +1 -1
  72. package/dist/commands/edit-input-schema.js +4 -3
  73. package/dist/commands/edit-input-schema.js.map +1 -1
  74. package/dist/commands/info.js +2 -1
  75. package/dist/commands/info.js.map +1 -1
  76. package/dist/commands/init-wrap-scrapy.js +3 -2
  77. package/dist/commands/init-wrap-scrapy.js.map +1 -1
  78. package/dist/commands/init.js +4 -2
  79. package/dist/commands/init.js.map +1 -1
  80. package/dist/commands/key-value-stores/_index.js +30 -0
  81. package/dist/commands/key-value-stores/_index.js.map +1 -0
  82. package/dist/commands/key-value-stores/create.js +7 -7
  83. package/dist/commands/key-value-stores/create.js.map +1 -1
  84. package/dist/commands/key-value-stores/delete-value.js +4 -4
  85. package/dist/commands/key-value-stores/delete-value.js.map +1 -1
  86. package/dist/commands/key-value-stores/get-value.js +4 -3
  87. package/dist/commands/key-value-stores/get-value.js.map +1 -1
  88. package/dist/commands/key-value-stores/info.js +7 -7
  89. package/dist/commands/key-value-stores/info.js.map +1 -1
  90. package/dist/commands/key-value-stores/keys.js +7 -6
  91. package/dist/commands/key-value-stores/keys.js.map +1 -1
  92. package/dist/commands/key-value-stores/ls.js +6 -7
  93. package/dist/commands/key-value-stores/ls.js.map +1 -1
  94. package/dist/commands/key-value-stores/rename.js +4 -3
  95. package/dist/commands/key-value-stores/rename.js.map +1 -1
  96. package/dist/commands/key-value-stores/rm.js +3 -3
  97. package/dist/commands/key-value-stores/rm.js.map +1 -1
  98. package/dist/commands/key-value-stores/set-value.js +4 -6
  99. package/dist/commands/key-value-stores/set-value.js.map +1 -1
  100. package/dist/commands/login.js +4 -3
  101. package/dist/commands/login.js.map +1 -1
  102. package/dist/commands/logout.js +2 -1
  103. package/dist/commands/logout.js.map +1 -1
  104. package/dist/commands/pull.js +1 -0
  105. package/dist/commands/pull.js.map +1 -1
  106. package/dist/commands/push.js +1 -0
  107. package/dist/commands/push.js.map +1 -1
  108. package/dist/commands/request-queues/{index.js → _index.js} +4 -3
  109. package/dist/commands/request-queues/_index.js.map +1 -0
  110. package/dist/commands/run.js +7 -5
  111. package/dist/commands/run.js.map +1 -1
  112. package/dist/commands/runs/_index.js +23 -0
  113. package/dist/commands/runs/_index.js.map +1 -0
  114. package/dist/commands/runs/abort.js +7 -5
  115. package/dist/commands/runs/abort.js.map +1 -1
  116. package/dist/commands/runs/info.js +8 -6
  117. package/dist/commands/runs/info.js.map +1 -1
  118. package/dist/commands/runs/log.js +3 -2
  119. package/dist/commands/runs/log.js.map +1 -1
  120. package/dist/commands/runs/ls.js +7 -5
  121. package/dist/commands/runs/ls.js.map +1 -1
  122. package/dist/commands/runs/resurrect.js +6 -5
  123. package/dist/commands/runs/resurrect.js.map +1 -1
  124. package/dist/commands/runs/rm.js +3 -2
  125. package/dist/commands/runs/rm.js.map +1 -1
  126. package/dist/commands/secrets/{index.js → _index.js} +7 -3
  127. package/dist/commands/secrets/_index.js.map +1 -0
  128. package/dist/commands/secrets/add.js +3 -2
  129. package/dist/commands/secrets/add.js.map +1 -1
  130. package/dist/commands/secrets/rm.js +4 -3
  131. package/dist/commands/secrets/rm.js.map +1 -1
  132. package/dist/commands/task/_index.js +11 -0
  133. package/dist/commands/task/_index.js.map +1 -0
  134. package/dist/commands/task/run.js +3 -2
  135. package/dist/commands/task/run.js.map +1 -1
  136. package/dist/commands/validate-schema.js +3 -2
  137. package/dist/commands/validate-schema.js.map +1 -1
  138. package/dist/entrypoints/_shared.js +219 -0
  139. package/dist/entrypoints/_shared.js.map +1 -0
  140. package/dist/entrypoints/actor.js +19 -0
  141. package/dist/entrypoints/actor.js.map +1 -0
  142. package/dist/entrypoints/apify.js +32 -0
  143. package/dist/entrypoints/apify.js.map +1 -0
  144. package/dist/lib/command-framework/apify-command.js +342 -0
  145. package/dist/lib/command-framework/apify-command.js.map +1 -0
  146. package/dist/lib/command-framework/args.js +23 -0
  147. package/dist/lib/command-framework/args.js.map +1 -0
  148. package/dist/lib/command-framework/flags.js +102 -0
  149. package/dist/lib/command-framework/flags.js.map +1 -0
  150. package/dist/lib/command-framework/help/CommandHelp.js +228 -0
  151. package/dist/lib/command-framework/help/CommandHelp.js.map +1 -0
  152. package/dist/lib/command-framework/help/CommandWithSubcommands.js +75 -0
  153. package/dist/lib/command-framework/help/CommandWithSubcommands.js.map +1 -0
  154. package/dist/lib/command-framework/help/_BaseCommandRenderer.js +63 -0
  155. package/dist/lib/command-framework/help/_BaseCommandRenderer.js.map +1 -0
  156. package/dist/lib/command-framework/help/consts.js +27 -0
  157. package/dist/lib/command-framework/help/consts.js.map +1 -0
  158. package/dist/lib/command-framework/help.js +104 -0
  159. package/dist/lib/command-framework/help.js.map +1 -0
  160. package/dist/lib/commands/read-stdin.js +71 -14
  161. package/dist/lib/commands/read-stdin.js.map +1 -1
  162. package/dist/lib/commands/resolve-input.js +6 -6
  163. package/dist/lib/commands/resolve-input.js.map +1 -1
  164. package/dist/lib/commands/run-on-cloud.js +1 -1
  165. package/dist/lib/commands/run-on-cloud.js.map +1 -1
  166. package/dist/lib/consts.js +18 -3
  167. package/dist/lib/consts.js.map +1 -1
  168. package/dist/lib/hooks/runtimes/utils.js +3 -6
  169. package/dist/lib/hooks/runtimes/utils.js.map +1 -1
  170. package/dist/lib/types.js +3 -1
  171. package/dist/lib/types.js.map +1 -1
  172. package/dist/lib/utils.js +21 -12
  173. package/dist/lib/utils.js.map +1 -1
  174. package/dist/typechecking.tsbuildinfo +1 -1
  175. package/package.json +23 -42
  176. package/bin/dev.cmd +0 -3
  177. package/bin/dev.js +0 -23
  178. package/bin/dev.sh +0 -4
  179. package/bin/run.cmd +0 -3
  180. package/bin/run.js +0 -25
  181. package/dist/commands/actor/charge.d.ts +0 -23
  182. package/dist/commands/actor/charge.d.ts.map +0 -1
  183. package/dist/commands/actor/get-input.d.ts +0 -6
  184. package/dist/commands/actor/get-input.d.ts.map +0 -1
  185. package/dist/commands/actor/get-public-url.d.ts +0 -9
  186. package/dist/commands/actor/get-public-url.d.ts.map +0 -1
  187. package/dist/commands/actor/get-value.d.ts +0 -9
  188. package/dist/commands/actor/get-value.d.ts.map +0 -1
  189. package/dist/commands/actor/index.d.ts +0 -6
  190. package/dist/commands/actor/index.d.ts.map +0 -1
  191. package/dist/commands/actor/index.js +0 -8
  192. package/dist/commands/actor/index.js.map +0 -1
  193. package/dist/commands/actor/push-data.d.ts +0 -9
  194. package/dist/commands/actor/push-data.d.ts.map +0 -1
  195. package/dist/commands/actor/set-value.d.ts +0 -13
  196. package/dist/commands/actor/set-value.d.ts.map +0 -1
  197. package/dist/commands/actors/build.d.ts +0 -4
  198. package/dist/commands/actors/build.d.ts.map +0 -1
  199. package/dist/commands/actors/call.d.ts +0 -30
  200. package/dist/commands/actors/call.d.ts.map +0 -1
  201. package/dist/commands/actors/index.d.ts +0 -6
  202. package/dist/commands/actors/index.d.ts.map +0 -1
  203. package/dist/commands/actors/index.js +0 -8
  204. package/dist/commands/actors/index.js.map +0 -1
  205. package/dist/commands/actors/info.d.ts +0 -22
  206. package/dist/commands/actors/info.d.ts.map +0 -1
  207. package/dist/commands/actors/ls.d.ts +0 -15
  208. package/dist/commands/actors/ls.d.ts.map +0 -1
  209. package/dist/commands/actors/pull.d.ts +0 -13
  210. package/dist/commands/actors/pull.d.ts.map +0 -1
  211. package/dist/commands/actors/push.d.ts +0 -18
  212. package/dist/commands/actors/push.d.ts.map +0 -1
  213. package/dist/commands/actors/rm.d.ts +0 -9
  214. package/dist/commands/actors/rm.d.ts.map +0 -1
  215. package/dist/commands/actors/start.d.ts +0 -18
  216. package/dist/commands/actors/start.d.ts.map +0 -1
  217. package/dist/commands/builds/create.d.ts +0 -15
  218. package/dist/commands/builds/create.d.ts.map +0 -1
  219. package/dist/commands/builds/index.d.ts +0 -6
  220. package/dist/commands/builds/index.d.ts.map +0 -1
  221. package/dist/commands/builds/index.js +0 -8
  222. package/dist/commands/builds/index.js.map +0 -1
  223. package/dist/commands/builds/info.d.ts +0 -10
  224. package/dist/commands/builds/info.d.ts.map +0 -1
  225. package/dist/commands/builds/log.d.ts +0 -9
  226. package/dist/commands/builds/log.d.ts.map +0 -1
  227. package/dist/commands/builds/ls.d.ts +0 -17
  228. package/dist/commands/builds/ls.d.ts.map +0 -1
  229. package/dist/commands/builds/rm.d.ts +0 -9
  230. package/dist/commands/builds/rm.d.ts.map +0 -1
  231. package/dist/commands/call.d.ts +0 -4
  232. package/dist/commands/call.d.ts.map +0 -1
  233. package/dist/commands/check-version.d.ts +0 -11
  234. package/dist/commands/check-version.d.ts.map +0 -1
  235. package/dist/commands/create.d.ts +0 -15
  236. package/dist/commands/create.d.ts.map +0 -1
  237. package/dist/commands/datasets/create.d.ts +0 -10
  238. package/dist/commands/datasets/create.d.ts.map +0 -1
  239. package/dist/commands/datasets/get-items.d.ts +0 -17
  240. package/dist/commands/datasets/get-items.d.ts.map +0 -1
  241. package/dist/commands/datasets/index.d.ts +0 -6
  242. package/dist/commands/datasets/index.d.ts.map +0 -1
  243. package/dist/commands/datasets/index.js +0 -8
  244. package/dist/commands/datasets/index.js.map +0 -1
  245. package/dist/commands/datasets/info.d.ts +0 -30
  246. package/dist/commands/datasets/info.d.ts.map +0 -1
  247. package/dist/commands/datasets/ls.d.ts +0 -13
  248. package/dist/commands/datasets/ls.d.ts.map +0 -1
  249. package/dist/commands/datasets/push-items.d.ts +0 -10
  250. package/dist/commands/datasets/push-items.d.ts.map +0 -1
  251. package/dist/commands/datasets/rename.d.ts +0 -13
  252. package/dist/commands/datasets/rename.d.ts.map +0 -1
  253. package/dist/commands/datasets/rm.d.ts +0 -9
  254. package/dist/commands/datasets/rm.d.ts.map +0 -1
  255. package/dist/commands/edit-input-schema.d.ts +0 -11
  256. package/dist/commands/edit-input-schema.d.ts.map +0 -1
  257. package/dist/commands/info.d.ts +0 -6
  258. package/dist/commands/info.d.ts.map +0 -1
  259. package/dist/commands/init-wrap-scrapy.d.ts +0 -10
  260. package/dist/commands/init-wrap-scrapy.d.ts.map +0 -1
  261. package/dist/commands/init.d.ts +0 -12
  262. package/dist/commands/init.d.ts.map +0 -1
  263. package/dist/commands/key-value-stores/create.d.ts +0 -11
  264. package/dist/commands/key-value-stores/create.d.ts.map +0 -1
  265. package/dist/commands/key-value-stores/delete-value.d.ts +0 -11
  266. package/dist/commands/key-value-stores/delete-value.d.ts.map +0 -1
  267. package/dist/commands/key-value-stores/get-value.d.ts +0 -14
  268. package/dist/commands/key-value-stores/get-value.d.ts.map +0 -1
  269. package/dist/commands/key-value-stores/index.d.ts +0 -7
  270. package/dist/commands/key-value-stores/index.d.ts.map +0 -1
  271. package/dist/commands/key-value-stores/index.js +0 -9
  272. package/dist/commands/key-value-stores/index.js.map +0 -1
  273. package/dist/commands/key-value-stores/info.d.ts +0 -28
  274. package/dist/commands/key-value-stores/info.d.ts.map +0 -1
  275. package/dist/commands/key-value-stores/keys.d.ts +0 -15
  276. package/dist/commands/key-value-stores/keys.d.ts.map +0 -1
  277. package/dist/commands/key-value-stores/ls.d.ts +0 -14
  278. package/dist/commands/key-value-stores/ls.d.ts.map +0 -1
  279. package/dist/commands/key-value-stores/rename.d.ts +0 -14
  280. package/dist/commands/key-value-stores/rename.d.ts.map +0 -1
  281. package/dist/commands/key-value-stores/rm.d.ts +0 -10
  282. package/dist/commands/key-value-stores/rm.d.ts.map +0 -1
  283. package/dist/commands/key-value-stores/set-value.d.ts +0 -15
  284. package/dist/commands/key-value-stores/set-value.d.ts.map +0 -1
  285. package/dist/commands/login.d.ts +0 -10
  286. package/dist/commands/login.d.ts.map +0 -1
  287. package/dist/commands/logout.d.ts +0 -6
  288. package/dist/commands/logout.d.ts.map +0 -1
  289. package/dist/commands/pull.d.ts +0 -4
  290. package/dist/commands/pull.d.ts.map +0 -1
  291. package/dist/commands/push.d.ts +0 -4
  292. package/dist/commands/push.d.ts.map +0 -1
  293. package/dist/commands/request-queues/index.d.ts +0 -6
  294. package/dist/commands/request-queues/index.d.ts.map +0 -1
  295. package/dist/commands/request-queues/index.js.map +0 -1
  296. package/dist/commands/run.d.ts +0 -20
  297. package/dist/commands/run.d.ts.map +0 -1
  298. package/dist/commands/runs/abort.d.ts +0 -13
  299. package/dist/commands/runs/abort.d.ts.map +0 -1
  300. package/dist/commands/runs/index.d.ts +0 -6
  301. package/dist/commands/runs/index.d.ts.map +0 -1
  302. package/dist/commands/runs/index.js +0 -8
  303. package/dist/commands/runs/index.js.map +0 -1
  304. package/dist/commands/runs/info.d.ts +0 -48
  305. package/dist/commands/runs/info.d.ts.map +0 -1
  306. package/dist/commands/runs/log.d.ts +0 -9
  307. package/dist/commands/runs/log.d.ts.map +0 -1
  308. package/dist/commands/runs/ls.d.ts +0 -16
  309. package/dist/commands/runs/ls.d.ts.map +0 -1
  310. package/dist/commands/runs/resurrect.d.ts +0 -10
  311. package/dist/commands/runs/resurrect.d.ts.map +0 -1
  312. package/dist/commands/runs/rm.d.ts +0 -9
  313. package/dist/commands/runs/rm.d.ts.map +0 -1
  314. package/dist/commands/secrets/add.d.ts +0 -10
  315. package/dist/commands/secrets/add.d.ts.map +0 -1
  316. package/dist/commands/secrets/index.d.ts +0 -6
  317. package/dist/commands/secrets/index.d.ts.map +0 -1
  318. package/dist/commands/secrets/index.js.map +0 -1
  319. package/dist/commands/secrets/rm.d.ts +0 -9
  320. package/dist/commands/secrets/rm.d.ts.map +0 -1
  321. package/dist/commands/task/index.d.ts +0 -6
  322. package/dist/commands/task/index.d.ts.map +0 -1
  323. package/dist/commands/task/index.js +0 -8
  324. package/dist/commands/task/index.js.map +0 -1
  325. package/dist/commands/task/run.d.ts +0 -15
  326. package/dist/commands/task/run.d.ts.map +0 -1
  327. package/dist/commands/validate-schema.d.ts +0 -10
  328. package/dist/commands/validate-schema.d.ts.map +0 -1
  329. package/dist/hooks/deprecations.d.ts +0 -4
  330. package/dist/hooks/deprecations.d.ts.map +0 -1
  331. package/dist/hooks/deprecations.js +0 -18
  332. package/dist/hooks/deprecations.js.map +0 -1
  333. package/dist/hooks/init.d.ts +0 -7
  334. package/dist/hooks/init.d.ts.map +0 -1
  335. package/dist/hooks/init.js +0 -17
  336. package/dist/hooks/init.js.map +0 -1
  337. package/dist/index.d.ts +0 -2
  338. package/dist/index.d.ts.map +0 -1
  339. package/dist/lib/actor.d.ts +0 -32
  340. package/dist/lib/actor.d.ts.map +0 -1
  341. package/dist/lib/apify-oclif-help.d.ts +0 -15
  342. package/dist/lib/apify-oclif-help.d.ts.map +0 -1
  343. package/dist/lib/apify-oclif-help.js +0 -19
  344. package/dist/lib/apify-oclif-help.js.map +0 -1
  345. package/dist/lib/apify_command.d.ts +0 -17
  346. package/dist/lib/apify_command.d.ts.map +0 -1
  347. package/dist/lib/apify_command.js +0 -76
  348. package/dist/lib/apify_command.js.map +0 -1
  349. package/dist/lib/commands/pretty-print-bytes.d.ts +0 -7
  350. package/dist/lib/commands/pretty-print-bytes.d.ts.map +0 -1
  351. package/dist/lib/commands/pretty-print-status.d.ts +0 -3
  352. package/dist/lib/commands/pretty-print-status.d.ts.map +0 -1
  353. package/dist/lib/commands/read-stdin.d.ts +0 -2
  354. package/dist/lib/commands/read-stdin.d.ts.map +0 -1
  355. package/dist/lib/commands/resolve-actor-context.d.ts +0 -22
  356. package/dist/lib/commands/resolve-actor-context.d.ts.map +0 -1
  357. package/dist/lib/commands/resolve-input.d.ts +0 -9
  358. package/dist/lib/commands/resolve-input.d.ts.map +0 -1
  359. package/dist/lib/commands/responsive-table.d.ts +0 -62
  360. package/dist/lib/commands/responsive-table.d.ts.map +0 -1
  361. package/dist/lib/commands/run-on-cloud.d.ts +0 -22
  362. package/dist/lib/commands/run-on-cloud.d.ts.map +0 -1
  363. package/dist/lib/commands/storage-size.d.ts +0 -6
  364. package/dist/lib/commands/storage-size.d.ts.map +0 -1
  365. package/dist/lib/commands/storages.d.ts +0 -10
  366. package/dist/lib/commands/storages.d.ts.map +0 -1
  367. package/dist/lib/community.d.ts +0 -2
  368. package/dist/lib/community.d.ts.map +0 -1
  369. package/dist/lib/consts.d.ts +0 -56
  370. package/dist/lib/consts.d.ts.map +0 -1
  371. package/dist/lib/create-utils.d.ts +0 -8
  372. package/dist/lib/create-utils.d.ts.map +0 -1
  373. package/dist/lib/exec.d.ts +0 -9
  374. package/dist/lib/exec.d.ts.map +0 -1
  375. package/dist/lib/files.d.ts +0 -14
  376. package/dist/lib/files.d.ts.map +0 -1
  377. package/dist/lib/hooks/runtimes/javascript.d.ts +0 -4
  378. package/dist/lib/hooks/runtimes/javascript.d.ts.map +0 -1
  379. package/dist/lib/hooks/runtimes/python.d.ts +0 -8
  380. package/dist/lib/hooks/runtimes/python.d.ts.map +0 -1
  381. package/dist/lib/hooks/runtimes/utils.d.ts +0 -3
  382. package/dist/lib/hooks/runtimes/utils.d.ts.map +0 -1
  383. package/dist/lib/hooks/useActorConfig.d.ts +0 -20
  384. package/dist/lib/hooks/useActorConfig.d.ts.map +0 -1
  385. package/dist/lib/hooks/useCwdProject.d.ts +0 -33
  386. package/dist/lib/hooks/useCwdProject.d.ts.map +0 -1
  387. package/dist/lib/hooks/useModuleVersion.d.ts +0 -8
  388. package/dist/lib/hooks/useModuleVersion.d.ts.map +0 -1
  389. package/dist/lib/input_schema.d.ts +0 -28
  390. package/dist/lib/input_schema.d.ts.map +0 -1
  391. package/dist/lib/local_state.d.ts +0 -11
  392. package/dist/lib/local_state.d.ts.map +0 -1
  393. package/dist/lib/outputs.d.ts +0 -19
  394. package/dist/lib/outputs.d.ts.map +0 -1
  395. package/dist/lib/project_analyzer.d.ts +0 -4
  396. package/dist/lib/project_analyzer.d.ts.map +0 -1
  397. package/dist/lib/projects/CrawleeAnalyzer.d.ts +0 -4
  398. package/dist/lib/projects/CrawleeAnalyzer.d.ts.map +0 -1
  399. package/dist/lib/projects/OldApifySDKAnalyzer.d.ts +0 -4
  400. package/dist/lib/projects/OldApifySDKAnalyzer.d.ts.map +0 -1
  401. package/dist/lib/projects/scrapy/ScrapyProjectAnalyzer.d.ts +0 -17
  402. package/dist/lib/projects/scrapy/ScrapyProjectAnalyzer.d.ts.map +0 -1
  403. package/dist/lib/projects/scrapy/Spider.d.ts +0 -14
  404. package/dist/lib/projects/scrapy/Spider.d.ts.map +0 -1
  405. package/dist/lib/projects/scrapy/SpiderFileAnalyzer.d.ts +0 -7
  406. package/dist/lib/projects/scrapy/SpiderFileAnalyzer.d.ts.map +0 -1
  407. package/dist/lib/projects/scrapy/wrapScrapyProject.d.ts +0 -4
  408. package/dist/lib/projects/scrapy/wrapScrapyProject.d.ts.map +0 -1
  409. package/dist/lib/projects/shared.d.ts +0 -2
  410. package/dist/lib/projects/shared.d.ts.map +0 -1
  411. package/dist/lib/secrets.d.ts +0 -22
  412. package/dist/lib/secrets.d.ts.map +0 -1
  413. package/dist/lib/telemetry.d.ts +0 -21
  414. package/dist/lib/telemetry.d.ts.map +0 -1
  415. package/dist/lib/types.d.ts +0 -11
  416. package/dist/lib/types.d.ts.map +0 -1
  417. package/dist/lib/utils/cliDebugPrint.d.ts +0 -2
  418. package/dist/lib/utils/cliDebugPrint.d.ts.map +0 -1
  419. package/dist/lib/utils/confirm.d.ts +0 -7
  420. package/dist/lib/utils/confirm.d.ts.map +0 -1
  421. package/dist/lib/utils.d.ts +0 -109
  422. package/dist/lib/utils.d.ts.map +0 -1
  423. package/dist/lib/version_check.d.ts +0 -14
  424. package/dist/lib/version_check.d.ts.map +0 -1
  425. package/oclif.manifest.json +0 -2661
@@ -0,0 +1,219 @@
1
+ import process from 'node:process';
2
+ import chalk from 'chalk';
3
+ import yargonaut from 'yargonaut';
4
+ // eslint-disable-next-line import/extensions
5
+ import yargs from 'yargs/yargs';
6
+ import { camelCaseToKebabCase, commandRegistry, kebabCaseString } from '../lib/command-framework/apify-command.js';
7
+ import { renderMainHelpMenu, selectiveRenderHelpForCommand } from '../lib/command-framework/help.js';
8
+ import { readStdin } from '../lib/commands/read-stdin.js';
9
+ import { cliVersion } from '../lib/consts.js';
10
+ import { error } from '../lib/outputs.js';
11
+ import { cliDebugPrint } from '../lib/utils/cliDebugPrint.js';
12
+ export const cachedStdinInput = await readStdin();
13
+ yargonaut //
14
+ .style('blue')
15
+ .style('yellow', 'required')
16
+ .helpStyle('green')
17
+ .errorsStyle('red');
18
+ export const cli = yargs()
19
+ .version(false)
20
+ .help(false)
21
+ .parserConfiguration({
22
+ // Disables the automatic conversion of `--foo-bar` to `fooBar` (we handle it manually)
23
+ 'camel-case-expansion': false,
24
+ // `--foo.bar` is not allowed
25
+ 'dot-notation': false,
26
+ // We parse numbers manually
27
+ 'parse-numbers': false,
28
+ 'parse-positional-numbers': false,
29
+ 'short-option-groups': false,
30
+ })
31
+ .strict()
32
+ .locale('en')
33
+ .updateStrings({
34
+ // Keys come from https://github.com/yargs/yargs/blob/main/locales/en.json
35
+ 'Not enough arguments following: %s': 'MISSING_ARGUMENT_INPUT %s',
36
+ // @ts-expect-error @types/yargs is outdated -.-
37
+ 'Unknown argument: %s': {
38
+ one: 'UNKNOWN_ARGUMENT_INPUT %s',
39
+ other: 'UNKNOWN_ARGUMENTS_INPUT %s',
40
+ },
41
+ // @ts-expect-error @types/yargs is outdated -.-
42
+ 'Not enough non-option arguments: got %s, need at least %s': {
43
+ one: 'NOT_ENOUGH_NON_OPTION_ARGUMENTS_INPUT {"got":%s,"need":%s}',
44
+ other: 'NOT_ENOUGH_NON_OPTION_ARGUMENTS_INPUT {"got":%s,"need":%s}',
45
+ },
46
+ 'Arguments %s and %s are mutually exclusive': 'ARGUMENTS_ARE_MUTUALLY_EXCLUSIVE_INPUT ["%s","%s"]',
47
+ 'Invalid values:': 'INVALID_VALUES_INPUT',
48
+ 'Argument: %s, Given: %s, Choices: %s': 'INVALID_ARGUMENT_OPTION {"argument":"%s","given":%s,"choices":[%s]}',
49
+ })
50
+ .option('help', {
51
+ boolean: true,
52
+ describe: 'Shows this help message.',
53
+ alias: 'h',
54
+ });
55
+ // @ts-expect-error @types/yargs is outdated -.-
56
+ cli.usageConfiguration({ 'hide-types': true });
57
+ export function printCLIVersionAndExitIfFlagUsed(parsed) {
58
+ if (parsed.v === true || parsed.version === true) {
59
+ console.log(cliVersion);
60
+ process.exit(0);
61
+ }
62
+ }
63
+ export function printHelpAndExitIfFlagUsedOrNoCommandPassed(parsed, entrypoint) {
64
+ if (parsed.help === true || parsed.h === true || parsed._.length === 0) {
65
+ console.log(renderMainHelpMenu(entrypoint));
66
+ process.exit(0);
67
+ }
68
+ }
69
+ export async function runCLI(entrypoint) {
70
+ await cli.parse(process.argv.slice(2), {}, (rawError, parsed) => {
71
+ if (rawError) {
72
+ cliDebugPrint('RunCLIError', { type: 'parsed', error: rawError?.message, parsed });
73
+ const errorMessageSplit = rawError.message.split(' ').map((part) => part.trim());
74
+ const possibleCommands = [
75
+ //
76
+ `${parsed._[0]} ${parsed._[1]}`,
77
+ `${parsed._[0]}`,
78
+ ];
79
+ const command = commandRegistry.get(possibleCommands.find((cmd) => commandRegistry.has(cmd)) ?? '');
80
+ if (!command) {
81
+ error({
82
+ message: `Command ${parsed._[0]} not found`,
83
+ });
84
+ return;
85
+ }
86
+ const commandFlags = Object.entries(command.flags ?? {})
87
+ .filter(([, flag]) => typeof flag !== 'string')
88
+ .map(([flagName, flag]) => {
89
+ const castedFlag = flag;
90
+ const flagKey = kebabCaseString(camelCaseToKebabCase(flagName)).toLowerCase();
91
+ return {
92
+ flagKey,
93
+ char: castedFlag.char,
94
+ aliases: castedFlag.aliases?.map((alias) => kebabCaseString(camelCaseToKebabCase(alias)).toLowerCase()),
95
+ matches(otherFlagKey) {
96
+ return (this.flagKey === otherFlagKey ||
97
+ this.char === otherFlagKey ||
98
+ this.aliases?.some((aliasedFlag) => aliasedFlag === otherFlagKey));
99
+ },
100
+ };
101
+ });
102
+ switch (errorMessageSplit[0]) {
103
+ case 'MISSING_ARGUMENT_INPUT': {
104
+ for (const flag of commandFlags) {
105
+ if (flag.matches(errorMessageSplit[1])) {
106
+ error({
107
+ message: `Flag --${flag.flagKey} expects a value`,
108
+ });
109
+ return;
110
+ }
111
+ }
112
+ break;
113
+ }
114
+ case 'ARGUMENTS_ARE_MUTUALLY_EXCLUSIVE_INPUT': {
115
+ const args = JSON.parse(errorMessageSplit[1]);
116
+ error({
117
+ message: [
118
+ `The following errors occurred:`,
119
+ ...args
120
+ .sort((a, b) => a.localeCompare(b))
121
+ .map((arg) => {
122
+ const value = parsed[arg];
123
+ const isBoolean = typeof value === 'boolean';
124
+ const argRepresentation = isBoolean ? `--${arg}` : `--${arg}=${value}`;
125
+ return ` ${chalk.red('>')} ${chalk.gray(`${argRepresentation} cannot also be provided when using ${args
126
+ .filter((a) => a !== arg)
127
+ .map((a) => `--${a}`)
128
+ .join(', ')}`)}`;
129
+ }),
130
+ ` ${chalk.red('>')} See more help with --help`,
131
+ ].join('\n'),
132
+ });
133
+ break;
134
+ }
135
+ case 'UNKNOWN_ARGUMENT_INPUT':
136
+ case 'UNKNOWN_ARGUMENTS_INPUT': {
137
+ const nonexistentType = commandFlags.length ? 'flag' : 'subcommand';
138
+ const nonexistentRepresentation = (() => {
139
+ // Rudimentary as heck, we cannot infer if the flag is provided as `-f` or `-ff` or `--flag`, etc.
140
+ if (nonexistentType === 'flag') {
141
+ return errorMessageSplit[1].length === 1
142
+ ? `-${errorMessageSplit[1]}`
143
+ : `--${errorMessageSplit[1]}`;
144
+ }
145
+ return errorMessageSplit[1];
146
+ })();
147
+ error({
148
+ message: [
149
+ `Nonexistent ${nonexistentType}: ${nonexistentRepresentation}`,
150
+ ` ${chalk.red('>')} See more help with --help`,
151
+ '',
152
+ selectiveRenderHelpForCommand(command, {
153
+ showUsageString: true,
154
+ showSubcommands: true,
155
+ }),
156
+ ].join('\n'),
157
+ });
158
+ break;
159
+ }
160
+ // @ts-expect-error Intentional fallthrough
161
+ case 'INVALID_VALUES_INPUT': {
162
+ if (errorMessageSplit[2] === 'INVALID_ARGUMENT_OPTION') {
163
+ const jsonPart = errorMessageSplit.slice(3).join(' ');
164
+ try {
165
+ const json = JSON.parse(jsonPart);
166
+ const type = commandFlags.some((flag) => flag.matches(json.argument)) ? 'flag' : 'argument';
167
+ const representation = type === 'flag' ? `--${json.argument}` : json.argument;
168
+ error({
169
+ message: [
170
+ `Expected ${representation} to have one of the following values: ${json.choices.join(', ')}`,
171
+ ` ${chalk.red('>')} See more help with --help`,
172
+ ].join('\n'),
173
+ });
174
+ break;
175
+ }
176
+ catch {
177
+ cliDebugPrint('RunCLIError', {
178
+ type: 'parse_error_invalid_choices',
179
+ error: rawError.message,
180
+ parsed,
181
+ jsonPart,
182
+ });
183
+ // fallthrough
184
+ }
185
+ }
186
+ // fallthrough
187
+ }
188
+ default: {
189
+ cliDebugPrint('RunCLIError', { type: 'unhandled', error: rawError.message, parsed });
190
+ console.error([
191
+ 'The CLI encountered an unhandled argument parsing error!',
192
+ `Please report this issue at https://github.com/apify/apify-cli/issues, and provide the following information:`,
193
+ '',
194
+ `- Stack:\n${rawError.stack}`,
195
+ '',
196
+ '- Arguments (!!!only provide these as is if there is no sensitive information!!!):',
197
+ ` ${JSON.stringify(process.argv.slice(2))}`,
198
+ '',
199
+ `- CLI version: \`${cliVersion}\``,
200
+ `- CLI debug logs (process.env.APIFY_CLI_DEBUG): ${process.env.APIFY_CLI_DEBUG ? 'Enabled' : 'Disabled'}`,
201
+ `- Stdin data? ${cachedStdinInput ? 'Yes' : 'No'}`,
202
+ ].join('\n'));
203
+ process.exit(1);
204
+ }
205
+ }
206
+ }
207
+ else {
208
+ handleParseResults(parsed, entrypoint);
209
+ }
210
+ });
211
+ }
212
+ export function handleParseResults(parsed, entrypoint) {
213
+ if (parsed._.length === 0) {
214
+ printCLIVersionAndExitIfFlagUsed(parsed);
215
+ printHelpAndExitIfFlagUsedOrNoCommandPassed(parsed, entrypoint);
216
+ }
217
+ // console.log({ unhandledArgs: parsed });
218
+ }
219
+ //# sourceMappingURL=_shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_shared.js","sourceRoot":"","sources":["../../src/entrypoints/_shared.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ #!/usr/bin/env node
2
+ import { satisfies } from 'semver';
3
+ import { actorCommands } from '../commands/_register.js';
4
+ import { SUPPORTED_NODEJS_VERSION } from '../lib/consts.js';
5
+ import { error } from '../lib/outputs.js';
6
+ import { cli, runCLI } from './_shared.js';
7
+ cli.scriptName('actor');
8
+ if (!satisfies(process.version, SUPPORTED_NODEJS_VERSION)) {
9
+ error({
10
+ message: `Actor CLI requires Node.js version ${SUPPORTED_NODEJS_VERSION}. Your current version is ${process.version}.`,
11
+ });
12
+ process.exit(1);
13
+ }
14
+ // Register all commands
15
+ for (const CommandClass of actorCommands) {
16
+ CommandClass.registerCommand('actor', cli);
17
+ }
18
+ await runCLI('actor');
19
+ //# sourceMappingURL=actor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/entrypoints/actor.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAExB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,wBAAwB,CAAC,EAAE,CAAC;IAC3D,KAAK,CAAC;QACL,OAAO,EAAE,sCAAsC,wBAAwB,6BAA6B,OAAO,CAAC,OAAO,GAAG;KACtH,CAAC,CAAC;IAEH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,wBAAwB;AACxB,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;IAC1C,YAAY,CAAC,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC"}
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/env node
2
+ import { satisfies } from 'semver';
3
+ import { apifyCommands } from '../commands/_register.js';
4
+ import { CheckVersionCommand } from '../commands/check-version.js';
5
+ import { SUPPORTED_NODEJS_VERSION } from '../lib/consts.js';
6
+ import { error } from '../lib/outputs.js';
7
+ import { checkLatestVersion, SKIP_UPDATE_CHECK } from '../lib/version_check.js';
8
+ import { cli, runCLI } from './_shared.js';
9
+ if (!satisfies(process.version, SUPPORTED_NODEJS_VERSION)) {
10
+ error({
11
+ message: `Apify CLI requires Node.js version ${SUPPORTED_NODEJS_VERSION}. Your current version is ${process.version}.`,
12
+ });
13
+ process.exit(1);
14
+ }
15
+ cli.middleware(async (argv) => {
16
+ const checkVersionsCommandIds = [CheckVersionCommand.name, ...CheckVersionCommand.aliases];
17
+ if (checkVersionsCommandIds.some((id) => argv._[0] === id)) {
18
+ // Skip running the middleware
19
+ return;
20
+ }
21
+ // If the user has configured the `APIFY_CLI_SKIP_UPDATE_CHECK` env variable then skip the check.
22
+ if (SKIP_UPDATE_CHECK) {
23
+ return;
24
+ }
25
+ await checkLatestVersion();
26
+ });
27
+ // Register all commands
28
+ for (const CommandClass of apifyCommands) {
29
+ CommandClass.registerCommand('apify', cli);
30
+ }
31
+ await runCLI('apify');
32
+ //# sourceMappingURL=apify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apify.js","sourceRoot":"","sources":["../../src/entrypoints/apify.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,wBAAwB,CAAC,EAAE,CAAC;IAC3D,KAAK,CAAC;QACL,OAAO,EAAE,sCAAsC,wBAAwB,6BAA6B,OAAO,CAAC,OAAO,GAAG;KACtH,CAAC,CAAC;IAEH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,GAAG,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;IAC7B,MAAM,uBAAuB,GAAG,CAAC,mBAAmB,CAAC,IAAI,EAAE,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAE3F,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC;QAC5D,8BAA8B;QAC9B,OAAO;IACR,CAAC;IAED,iGAAiG;IACjG,IAAI,iBAAiB,EAAE,CAAC;QACvB,OAAO;IACR,CAAC;IAED,MAAM,kBAAkB,EAAE,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,wBAAwB;AACxB,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;IAC1C,YAAY,CAAC,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC"}
@@ -0,0 +1,342 @@
1
+ /* eslint-disable max-classes-per-file */
2
+ import chalk from 'chalk';
3
+ import indentString from 'indent-string';
4
+ import widestLine from 'widest-line';
5
+ import wrapAnsi from 'wrap-ansi';
6
+ import { cachedStdinInput } from '../../entrypoints/_shared.js';
7
+ import { error } from '../outputs.js';
8
+ import { registerCommandForHelpGeneration, renderHelpForCommand, selectiveRenderHelpForCommand } from './help.js';
9
+ import { getMaxLineWidth } from './help/consts.js';
10
+ export var StdinMode;
11
+ (function (StdinMode) {
12
+ StdinMode[StdinMode["Raw"] = 1] = "Raw";
13
+ StdinMode[StdinMode["Stringified"] = 2] = "Stringified";
14
+ })(StdinMode || (StdinMode = {}));
15
+ export function camelCaseString(str) {
16
+ return str.replace(/[-_\s](.)/g, (_, group1) => group1.toUpperCase());
17
+ }
18
+ export function kebabCaseString(str) {
19
+ return str.replace(/[\s_]+/g, '-');
20
+ }
21
+ export function camelCaseToKebabCase(str) {
22
+ return str.replace(/([A-Z])/g, '-$1').toLowerCase();
23
+ }
24
+ export const commandRegistry = new Map();
25
+ export class ApifyCommand {
26
+ static args;
27
+ static flags;
28
+ static subcommands;
29
+ static enableJsonFlag = false;
30
+ static name;
31
+ static shortDescription;
32
+ static description;
33
+ static aliases;
34
+ static hidden;
35
+ static hiddenAliases;
36
+ telemetryData = {};
37
+ flags;
38
+ args;
39
+ get ctor() {
40
+ return this.constructor;
41
+ }
42
+ pluralString(amount, singular, plural) {
43
+ return amount === 1 ? singular : plural;
44
+ }
45
+ printHelp() {
46
+ console.log(renderHelpForCommand(this.ctor));
47
+ process.exit(0);
48
+ }
49
+ async _run(rawArgs) {
50
+ if (rawArgs.help) {
51
+ this.printHelp();
52
+ }
53
+ // Cheating a bit here with the types, but its fine
54
+ this.args = {};
55
+ this.flags = {};
56
+ // If we have this set, we assume that the user wants only the flag
57
+ if (this.ctor.enableJsonFlag) {
58
+ if (typeof rawArgs.json === 'boolean') {
59
+ this.flags.json = rawArgs.json;
60
+ }
61
+ else {
62
+ // Idk exactly if this is achievable but 🤷
63
+ this.flags.json = false;
64
+ }
65
+ }
66
+ const missingRequiredArgs = new Map();
67
+ if (this.ctor.args) {
68
+ for (const [userArgName, builderData] of Object.entries(this.ctor.args)) {
69
+ if (typeof builderData === 'string') {
70
+ throw new RangeError('Do not provide the string for the json arg! It is a type level assertion!');
71
+ }
72
+ const yargsArgName = userArgName.replaceAll(' ', '');
73
+ const camelCasedName = camelCaseString(userArgName);
74
+ if (rawArgs[yargsArgName]) {
75
+ switch (builderData.argTag) {
76
+ case 'string':
77
+ default:
78
+ this.args[camelCasedName] = String(rawArgs[yargsArgName]);
79
+ if (rawArgs[yargsArgName] === '-' && builderData.stdin) {
80
+ this.args[camelCasedName] = this._handleStdin(builderData.stdin);
81
+ }
82
+ break;
83
+ }
84
+ }
85
+ else if (builderData.required) {
86
+ missingRequiredArgs.set(userArgName, builderData);
87
+ }
88
+ }
89
+ }
90
+ if (missingRequiredArgs.size) {
91
+ this._printMissingRequiredArgs(missingRequiredArgs);
92
+ return;
93
+ }
94
+ if (this.ctor.flags) {
95
+ for (const [userFlagName, builderData] of Object.entries(this.ctor.flags)) {
96
+ if (typeof builderData === 'string') {
97
+ throw new RangeError('Do not provide the string for the json arg! It is a type level assertion!');
98
+ }
99
+ const rawYargsFlagName = kebabCaseString(camelCaseToKebabCase(userFlagName)).toLowerCase();
100
+ const camelCasedName = camelCaseString(rawYargsFlagName);
101
+ let yargsFlagName = rawYargsFlagName;
102
+ if (rawYargsFlagName.startsWith('no-')) {
103
+ yargsFlagName = rawYargsFlagName.slice(3);
104
+ }
105
+ if (typeof rawArgs[yargsFlagName] !== 'undefined') {
106
+ if (Array.isArray(rawArgs[yargsFlagName])) {
107
+ error({
108
+ message: `Flag --${yargsFlagName} can only be specified once`,
109
+ });
110
+ return;
111
+ }
112
+ switch (builderData.flagTag) {
113
+ case 'boolean': {
114
+ this.flags[camelCasedName] = rawYargsFlagName.startsWith('no-')
115
+ ? !rawArgs[yargsFlagName]
116
+ : rawArgs[yargsFlagName];
117
+ break;
118
+ }
119
+ case 'integer': {
120
+ const parsed = Number(rawArgs[yargsFlagName]);
121
+ if (Number.isNaN(parsed) || !Number.isInteger(parsed)) {
122
+ error({
123
+ message: `The provided value for the '--${yargsFlagName}' flag could not be processed as an integer.`,
124
+ });
125
+ return;
126
+ }
127
+ this.flags[camelCasedName] = parsed;
128
+ break;
129
+ }
130
+ case 'string':
131
+ default: {
132
+ this.flags[camelCasedName] = rawArgs[yargsFlagName];
133
+ if (rawArgs[yargsFlagName] === '-' && builderData.stdin) {
134
+ this.flags[camelCasedName] = this._handleStdin(builderData.stdin);
135
+ }
136
+ if (!this.flags[camelCasedName]) {
137
+ error({
138
+ message: `Flag --${yargsFlagName} expects a value`,
139
+ });
140
+ return;
141
+ }
142
+ break;
143
+ }
144
+ }
145
+ }
146
+ else if (builderData.required) {
147
+ error({
148
+ message: `Flag --${yargsFlagName} is required`,
149
+ });
150
+ return;
151
+ }
152
+ }
153
+ }
154
+ try {
155
+ await this.run();
156
+ }
157
+ catch (err) {
158
+ error({ message: err.message });
159
+ }
160
+ finally {
161
+ // analytics
162
+ /*
163
+ eventData.installationType = detectInstallationType();
164
+
165
+ if (!this.telemetryData.actorLanguage && command && COMMANDS_WITHIN_ACTOR.includes(command)) {
166
+ const cwdProject = await useCwdProject();
167
+
168
+ cwdProject.inspect((project) => {
169
+ if (project.type === ProjectLanguage.JavaScript) {
170
+ eventData.actorLanguage = LANGUAGE.NODEJS;
171
+ eventData.actorNodejsVersion = project.runtime!.version;
172
+ } else if (project.type === ProjectLanguage.Python || project.type === ProjectLanguage.Scrapy) {
173
+ eventData.actorLanguage = LANGUAGE.PYTHON;
174
+ eventData.actorPythonVersion = project.runtime!.version;
175
+ }
176
+ });
177
+ }
178
+
179
+ await maybeTrackTelemetry({
180
+ eventName: `cli_command_${command}`,
181
+ eventData,
182
+ });
183
+ */
184
+ }
185
+ }
186
+ _printMissingRequiredArgs(missingRequiredArgs) {
187
+ const help = selectiveRenderHelpForCommand(this.ctor, {
188
+ showUsageString: true,
189
+ });
190
+ const widestArgNameLength = widestLine([...missingRequiredArgs.keys()].join('\n'));
191
+ const missingArgsStrings = [];
192
+ for (const [argName, arg] of missingRequiredArgs) {
193
+ const fullString = `${argName.padEnd(widestArgNameLength)} ${arg.description}`;
194
+ const wrapped = wrapAnsi(fullString, getMaxLineWidth() - widestArgNameLength - 2);
195
+ const indented = indentString(wrapped, widestArgNameLength + 2 + 2).trim();
196
+ missingArgsStrings.push(` ${chalk.red('>')} ${indented}`);
197
+ }
198
+ error({
199
+ message: [
200
+ `Missing ${missingRequiredArgs.size} required ${this.pluralString(missingRequiredArgs.size, 'argument', 'arguments')}:`,
201
+ ...missingArgsStrings,
202
+ chalk.gray(' See more help with --help'),
203
+ '',
204
+ help,
205
+ ].join('\n'),
206
+ });
207
+ }
208
+ _handleStdin(mode) {
209
+ switch (mode) {
210
+ case StdinMode.Stringified:
211
+ return cachedStdinInput?.toString('utf8') ?? '';
212
+ default:
213
+ return cachedStdinInput;
214
+ }
215
+ }
216
+ _buildCommandStrings(nameOverride) {
217
+ let baseDefinition = `${nameOverride || this.ctor.name}`;
218
+ if (this.ctor.args) {
219
+ for (const [key, internalBuilderData] of Object.entries(this.ctor.args)) {
220
+ if (typeof internalBuilderData === 'string') {
221
+ throw new RangeError('Do not provide the string for the json arg! It is a type level assertion!');
222
+ }
223
+ // We mark all args as optional, even if they are not, to pretty-print a help message ourselves
224
+ baseDefinition += ` [${key}]`;
225
+ }
226
+ }
227
+ return [baseDefinition, ...(this.ctor.aliases ?? [])];
228
+ }
229
+ _buildCommandBuilder() {
230
+ return (yargs) => {
231
+ let finalYargs = yargs;
232
+ if (this.ctor.args) {
233
+ for (const [key, internalBuilderData] of Object.entries(this.ctor.args)) {
234
+ if (typeof internalBuilderData === 'string') {
235
+ throw new RangeError('Do not provide the string for the json arg! It is a type level assertion!');
236
+ }
237
+ // Skip the "json" argument, as it is reserved for the --json flag
238
+ if (key.toLowerCase() === 'json') {
239
+ continue;
240
+ }
241
+ finalYargs = internalBuilderData.builder(finalYargs, key);
242
+ }
243
+ }
244
+ if (this.ctor.flags) {
245
+ for (const [key, internalBuilderData] of Object.entries(this.ctor.flags)) {
246
+ if (typeof internalBuilderData === 'string') {
247
+ throw new RangeError('Do not provide the string for the json flag! It is a type level assertion!');
248
+ }
249
+ // Skip the "json" flag, as it is set by enableJsonFlag
250
+ if (key.toLowerCase() === 'json') {
251
+ continue;
252
+ }
253
+ const flagKey = kebabCaseString(camelCaseToKebabCase(key)).toLowerCase();
254
+ // yargs handles "no-" flags by negating the flag, so we need to handle that differently if we register a flag with a "no-" prefix
255
+ if (flagKey.startsWith('no-')) {
256
+ finalYargs = internalBuilderData.builder(finalYargs, flagKey.slice(3), [], true);
257
+ }
258
+ else {
259
+ finalYargs = internalBuilderData.builder(finalYargs, flagKey);
260
+ }
261
+ }
262
+ }
263
+ if (this.ctor.subcommands?.length) {
264
+ for (const SubCommandClass of this.ctor.subcommands) {
265
+ const yargsObject = new SubCommandClass()._toYargs();
266
+ finalYargs = finalYargs.command(yargsObject);
267
+ }
268
+ }
269
+ // Register --json
270
+ if (this.ctor.enableJsonFlag) {
271
+ finalYargs = finalYargs.option('json', {
272
+ boolean: true,
273
+ describe: 'Format output as json.',
274
+ });
275
+ }
276
+ return finalYargs;
277
+ };
278
+ }
279
+ _toYargs() {
280
+ const baseCmd = {
281
+ handler: this._run.bind(this),
282
+ command: this._buildCommandStrings(),
283
+ describe: this.ctor.hidden ? false : this.ctor.description,
284
+ builder: this._buildCommandBuilder(),
285
+ };
286
+ const baseCommands = [
287
+ {
288
+ ...baseCmd,
289
+ aliases: this.ctor.aliases,
290
+ },
291
+ ];
292
+ if (this.ctor.hiddenAliases?.length) {
293
+ for (const alias of this.ctor.hiddenAliases) {
294
+ baseCommands.push({
295
+ ...baseCmd,
296
+ command: this._buildCommandStrings(alias),
297
+ describe: false,
298
+ });
299
+ }
300
+ }
301
+ return baseCommands;
302
+ }
303
+ static registerCommand(entrypoint, yargsInstance) {
304
+ const instance = new this();
305
+ const yargsObject = instance._toYargs();
306
+ yargsInstance.command(yargsObject);
307
+ registerCommandForHelpGeneration(entrypoint, this);
308
+ commandRegistry.set(this.name, this);
309
+ if (this.subcommands?.length) {
310
+ for (const subcommand of this.subcommands) {
311
+ commandRegistry.set(`${this.name} ${subcommand.name}`, subcommand);
312
+ }
313
+ }
314
+ }
315
+ }
316
+ export async function runCommand(command, argsFlags) {
317
+ // This is very much yolo'd in, but its purpose is for testing only
318
+ const rawObject = {
319
+ _: [],
320
+ $0: 'apify',
321
+ };
322
+ for (const [key, value] of Object.entries(argsFlags)) {
323
+ const [type, rawKey] = key.split('_');
324
+ if (type === 'args') {
325
+ rawObject[rawKey] = value;
326
+ }
327
+ else {
328
+ const yargsFlagName = kebabCaseString(camelCaseToKebabCase(rawKey)).toLowerCase();
329
+ // We handle "no-" flags differently, as yargs handles them by negating the base flag name (no-prompt -> prompt=false)
330
+ if (yargsFlagName.startsWith('no-')) {
331
+ rawObject[yargsFlagName.slice(3)] = !value;
332
+ }
333
+ else {
334
+ rawObject[yargsFlagName] = value;
335
+ }
336
+ }
337
+ }
338
+ const instance = new command();
339
+ // eslint-disable-next-line dot-notation
340
+ await instance['_run'](rawObject);
341
+ }
342
+ //# sourceMappingURL=apify-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apify-command.js","sourceRoot":"","sources":["../../../src/lib/command-framework/apify-command.ts"],"names":[],"mappings":"AAAA,yCAAyC;AAGzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,QAAQ,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAGtC,OAAO,EAAE,gCAAgC,EAAE,oBAAoB,EAAE,6BAA6B,EAAE,MAAM,WAAW,CAAC;AAClH,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,CAAN,IAAY,SAGX;AAHD,WAAY,SAAS;IACpB,uCAAO,CAAA;IACP,uDAAe,CAAA;AAChB,CAAC,EAHW,SAAS,KAAT,SAAS,QAGpB;AAiGD,MAAM,UAAU,eAAe,CAAC,GAAW;IAC1C,OAAO,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAW;IAC1C,OAAO,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC/C,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,GAAG,EAAoC,CAAC;AAE3E,MAAM,OAAgB,YAAY;IACjC,MAAM,CAAC,IAAI,CAET;IAEF,MAAM,CAAC,KAAK,CAEV;IAEF,MAAM,CAAC,WAAW,CAAgC;IAElD,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC;IAE9B,MAAM,CAAC,IAAI,CAAS;IAEpB,MAAM,CAAC,gBAAgB,CAAU;IAEjC,MAAM,CAAC,WAAW,CAAU;IAE5B,MAAM,CAAC,OAAO,CAAY;IAE1B,MAAM,CAAC,MAAM,CAAW;IAExB,MAAM,CAAC,aAAa,CAAY;IAEtB,aAAa,GAA4B,EAAE,CAAC;IAE5C,KAAK,CAAqC;IAE1C,IAAI,CAAmC;IAIjD,IAAc,IAAI;QACjB,OAAO,IAAI,CAAC,WAAuC,CAAC;IACrD,CAAC;IAES,YAAY,CAAC,MAAc,EAAE,QAAgB,EAAE,MAAc;QACtE,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;IACzC,CAAC;IAES,SAAS;QAClB,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,IAAI,CAAC,OAA2B;QAC7C,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC;QAED,mDAAmD;QAEnD,IAAI,CAAC,IAAI,GAAG,EAAS,CAAC;QAEtB,IAAI,CAAC,KAAK,GAAG,EAAS,CAAC;QAEvB,mEAAmE;QACnE,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YAC9B,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvC,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACP,2CAA2C;gBAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC;YACzB,CAAC;QACF,CAAC;QAED,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA6C,CAAC;QAEjF,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzE,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;oBACrC,MAAM,IAAI,UAAU,CAAC,2EAA2E,CAAC,CAAC;gBACnG,CAAC;gBAED,MAAM,YAAY,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACrD,MAAM,cAAc,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;gBAEpD,IAAI,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC3B,QAAQ,WAAW,CAAC,MAAM,EAAE,CAAC;wBAC5B,KAAK,QAAQ,CAAC;wBACd;4BACC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;4BAE1D,IAAI,OAAO,CAAC,YAAY,CAAC,KAAK,GAAG,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gCACxD,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;4BAClE,CAAC;4BAED,MAAM;oBACR,CAAC;gBACF,CAAC;qBAAM,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;oBACjC,mBAAmB,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBACnD,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,mBAAmB,CAAC,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,yBAAyB,CAAC,mBAAmB,CAAC,CAAC;YACpD,OAAO;QACR,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACrB,KAAK,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3E,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;oBACrC,MAAM,IAAI,UAAU,CAAC,2EAA2E,CAAC,CAAC;gBACnG,CAAC;gBAED,MAAM,gBAAgB,GAAG,eAAe,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC3F,MAAM,cAAc,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBAEzD,IAAI,aAAa,GAAG,gBAAgB,CAAC;gBAErC,IAAI,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;oBACxC,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC3C,CAAC;gBAED,IAAI,OAAO,OAAO,CAAC,aAAa,CAAC,KAAK,WAAW,EAAE,CAAC;oBACnD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;wBAC3C,KAAK,CAAC;4BACL,OAAO,EAAE,UAAU,aAAa,6BAA6B;yBAC7D,CAAC,CAAC;wBAEH,OAAO;oBACR,CAAC;oBAED,QAAQ,WAAW,CAAC,OAAO,EAAE,CAAC;wBAC7B,KAAK,SAAS,CAAC,CAAC,CAAC;4BAChB,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC;gCAC9D,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;gCACzB,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;4BAE1B,MAAM;wBACP,CAAC;wBACD,KAAK,SAAS,CAAC,CAAC,CAAC;4BAChB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC;4BAE9C,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;gCACvD,KAAK,CAAC;oCACL,OAAO,EAAE,iCAAiC,aAAa,8CAA8C;iCACrG,CAAC,CAAC;gCAEH,OAAO;4BACR,CAAC;4BAED,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC;4BAEpC,MAAM;wBACP,CAAC;wBACD,KAAK,QAAQ,CAAC;wBACd,OAAO,CAAC,CAAC,CAAC;4BACT,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;4BAEpD,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI,WAAW,CAAC,KAAK,EAAE,CAAC;gCACzD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;4BACnE,CAAC;4BAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;gCACjC,KAAK,CAAC;oCACL,OAAO,EAAE,UAAU,aAAa,kBAAkB;iCAClD,CAAC,CAAC;gCAEH,OAAO;4BACR,CAAC;4BAED,MAAM;wBACP,CAAC;oBACF,CAAC;gBACF,CAAC;qBAAM,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;oBACjC,KAAK,CAAC;wBACL,OAAO,EAAE,UAAU,aAAa,cAAc;qBAC9C,CAAC,CAAC;oBAEH,OAAO;gBACR,CAAC;YACF,CAAC;QACF,CAAC;QAED,IAAI,CAAC;YACJ,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QAClB,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YACnB,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACjC,CAAC;gBAAS,CAAC;YACV,YAAY;YACZ;;;;;;;;;;;;;;;;;;;;;cAqBE;QACH,CAAC;IACF,CAAC;IAEO,yBAAyB,CAAC,mBAAmE;QACpG,MAAM,IAAI,GAAG,6BAA6B,CAAC,IAAI,CAAC,IAAI,EAAE;YACrD,eAAe,EAAE,IAAI;SACrB,CAAC,CAAC;QAEH,MAAM,mBAAmB,GAAG,UAAU,CAAC,CAAC,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEnF,MAAM,kBAAkB,GAAa,EAAE,CAAC;QAExC,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,mBAAmB,EAAE,CAAC;YAClD,MAAM,UAAU,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC;YAEhF,MAAM,OAAO,GAAG,QAAQ,CAAC,UAAU,EAAE,eAAe,EAAE,GAAG,mBAAmB,GAAG,CAAC,CAAC,CAAC;YAElF,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAE3E,kBAAkB,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,KAAK,CAAC;YACL,OAAO,EAAE;gBACR,WAAW,mBAAmB,CAAC,IAAI,aAAa,IAAI,CAAC,YAAY,CAAC,mBAAmB,CAAC,IAAI,EAAE,UAAU,EAAE,WAAW,CAAC,GAAG;gBACvH,GAAG,kBAAkB;gBACrB,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC;gBACzC,EAAE;gBACF,IAAI;aACJ,CAAC,IAAI,CAAC,IAAI,CAAC;SACZ,CAAC,CAAC;IACJ,CAAC;IAEO,YAAY,CAAC,IAAe;QACnC,QAAQ,IAAI,EAAE,CAAC;YACd,KAAK,SAAS,CAAC,WAAW;gBACzB,OAAO,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACjD;gBACC,OAAO,gBAAgB,CAAC;QAC1B,CAAC;IACF,CAAC;IAEO,oBAAoB,CAAC,YAAqB;QACjD,IAAI,cAAc,GAAG,GAAG,YAAY,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAEzD,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,MAAM,CAAC,GAAG,EAAE,mBAAmB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzE,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE,CAAC;oBAC7C,MAAM,IAAI,UAAU,CAAC,2EAA2E,CAAC,CAAC;gBACnG,CAAC;gBAED,+FAA+F;gBAC/F,cAAc,IAAI,KAAK,GAAG,GAAG,CAAC;YAC/B,CAAC;QACF,CAAC;QAED,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAEO,oBAAoB;QAC3B,OAAO,CAAC,KAAK,EAAE,EAAE;YAChB,IAAI,UAAU,GAAG,KAAK,CAAC;YAEvB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACpB,KAAK,MAAM,CAAC,GAAG,EAAE,mBAAmB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBACzE,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE,CAAC;wBAC7C,MAAM,IAAI,UAAU,CACnB,2EAA2E,CAC3E,CAAC;oBACH,CAAC;oBAED,kEAAkE;oBAClE,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;wBAClC,SAAS;oBACV,CAAC;oBAED,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;gBAC3D,CAAC;YACF,CAAC;YAED,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACrB,KAAK,MAAM,CAAC,GAAG,EAAE,mBAAmB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC1E,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE,CAAC;wBAC7C,MAAM,IAAI,UAAU,CACnB,4EAA4E,CAC5E,CAAC;oBACH,CAAC;oBAED,uDAAuD;oBACvD,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;wBAClC,SAAS;oBACV,CAAC;oBAED,MAAM,OAAO,GAAG,eAAe,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;oBAEzE,kIAAkI;oBAClI,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC/B,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;oBAClF,CAAC;yBAAM,CAAC;wBACP,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;oBAC/D,CAAC;gBACF,CAAC;YACF,CAAC;YAED,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;gBACnC,KAAK,MAAM,eAAe,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrD,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE,CAAC,QAAQ,EAAE,CAAC;oBAErD,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAC9C,CAAC;YACF,CAAC;YAED,kBAAkB;YAClB,IAAI,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC9B,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE;oBACtC,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,wBAAwB;iBAClC,CAAC,CAAC;YACJ,CAAC;YAED,OAAO,UAAU,CAAC;QACnB,CAAC,CAAC;IACH,CAAC;IAEO,QAAQ;QACf,MAAM,OAAO,GAAkB;YAC9B,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;YAC7B,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE;YACpC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW;YAC1D,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE;SACpC,CAAC;QAEF,MAAM,YAAY,GAAoB;YACrC;gBACC,GAAG,OAAO;gBACV,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;aAC1B;SACD,CAAC;QAEF,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;YACrC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC7C,YAAY,CAAC,IAAI,CAAC;oBACjB,GAAG,OAAO;oBACV,OAAO,EAAE,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC;oBACzC,QAAQ,EAAE,KAAK;iBACf,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,OAAO,YAAY,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,UAAkB,EAAE,aAAmB;QAC7D,MAAM,QAAQ,GAAG,IAAK,IAAiC,EAAE,CAAC;QAE1D,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAExC,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAEnC,gCAAgC,CAAC,UAAU,EAAE,IAAgC,CAAC,CAAC;QAC/E,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAgC,CAAC,CAAC;QAEjE,IAAI,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;YAC9B,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3C,eAAe,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE,UAAsC,CAAC,CAAC;YAChG,CAAC;QACF,CAAC;IACF,CAAC;;AAiEF,MAAM,CAAC,KAAK,UAAU,UAAU,CAC/B,OAAY,EACZ,SAAoC;IAEpC,mEAAmE;IACnE,MAAM,SAAS,GAAuB;QACrC,CAAC,EAAE,EAAE;QACL,EAAE,EAAE,OAAO;KACX,CAAC;IAEF,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACtD,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEtC,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACrB,SAAS,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;QAC3B,CAAC;aAAM,CAAC;YACP,MAAM,aAAa,GAAG,eAAe,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAElF,sHAAsH;YACtH,IAAI,aAAa,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC;YAC5C,CAAC;iBAAM,CAAC;gBACP,SAAS,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC;YAClC,CAAC;QACF,CAAC;IACF,CAAC;IAED,MAAM,QAAQ,GAAG,IAAK,OAAoC,EAAE,CAAC;IAE7D,wCAAwC;IACxC,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC"}