@lovrabet/rabetbase-cli 2.4.7-beta.1 → 2.4.7-beta.2

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 (329) hide show
  1. package/README.md +4 -4
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.js +1 -1
  20. package/lib/commands/app/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/members-list.js +1 -1
  23. package/lib/commands/app/remote-directory.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app-config/delete.js +1 -1
  26. package/lib/commands/app-config/get.js +1 -1
  27. package/lib/commands/app-config/index.js +1 -1
  28. package/lib/commands/app-config/list.js +1 -1
  29. package/lib/commands/app-config/set.js +1 -1
  30. package/lib/commands/app-config/shared.js +1 -1
  31. package/lib/commands/auth/index.js +1 -1
  32. package/lib/commands/bff/create.js +1 -1
  33. package/lib/commands/bff/delete.js +1 -1
  34. package/lib/commands/bff/detail.js +1 -1
  35. package/lib/commands/bff/index.js +1 -1
  36. package/lib/commands/bff/list.js +1 -1
  37. package/lib/commands/bff/pull.js +1 -1
  38. package/lib/commands/bff/push.js +1 -1
  39. package/lib/commands/bff/status.js +1 -1
  40. package/lib/commands/cli-skill/index.js +1 -1
  41. package/lib/commands/cli-update.js +1 -1
  42. package/lib/commands/codegen/index.js +1 -1
  43. package/lib/commands/codegen/sdk.js +1 -1
  44. package/lib/commands/codegen/sql.js +1 -1
  45. package/lib/commands/common/app-registry.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/async-task.js +1 -1
  48. package/lib/commands/common/dry-run.js +1 -1
  49. package/lib/commands/common/flags.d.ts +1 -1
  50. package/lib/commands/common/flags.js +1 -1
  51. package/lib/commands/common/local-file.js +1 -1
  52. package/lib/commands/common/validate.js +1 -1
  53. package/lib/commands/config/get.js +1 -1
  54. package/lib/commands/config/index.js +1 -1
  55. package/lib/commands/config/list.js +1 -1
  56. package/lib/commands/config/set.js +1 -1
  57. package/lib/commands/config/shared.js +1 -1
  58. package/lib/commands/data/filter.js +1 -1
  59. package/lib/commands/data/getOne.js +1 -1
  60. package/lib/commands/data/index.js +1 -1
  61. package/lib/commands/data/shared.js +1 -1
  62. package/lib/commands/dataset/business-group-update.js +1 -1
  63. package/lib/commands/dataset/business-groups.js +1 -1
  64. package/lib/commands/dataset/capability.js +1 -1
  65. package/lib/commands/dataset/delete.js +1 -1
  66. package/lib/commands/dataset/detail.js +1 -1
  67. package/lib/commands/dataset/extend-update.js +1 -1
  68. package/lib/commands/dataset/field-update.js +1 -1
  69. package/lib/commands/dataset/generate.js +1 -1
  70. package/lib/commands/dataset/index.js +1 -1
  71. package/lib/commands/dataset/list.js +1 -1
  72. package/lib/commands/dataset/operations.js +1 -1
  73. package/lib/commands/dataset/relation-audit.js +1 -1
  74. package/lib/commands/dataset/relation-create.js +1 -1
  75. package/lib/commands/dataset/relation-delete.js +1 -1
  76. package/lib/commands/dataset/relation-shared.js +1 -1
  77. package/lib/commands/dataset/relation-update.js +1 -1
  78. package/lib/commands/dataset/relations.js +1 -1
  79. package/lib/commands/dataset/rename.js +1 -1
  80. package/lib/commands/dataset/restore.js +1 -1
  81. package/lib/commands/db/analysis-batching.js +1 -1
  82. package/lib/commands/db/analyze-batch-plan.js +1 -1
  83. package/lib/commands/db/analyze-cancel.js +1 -1
  84. package/lib/commands/db/analyze-start.js +1 -1
  85. package/lib/commands/db/analyze-status.js +1 -1
  86. package/lib/commands/db/create.js +1 -1
  87. package/lib/commands/db/delete.js +1 -1
  88. package/lib/commands/db/detail.js +1 -1
  89. package/lib/commands/db/diff-refresh-start.js +1 -1
  90. package/lib/commands/db/diff-refresh-status.js +1 -1
  91. package/lib/commands/db/diff.js +1 -1
  92. package/lib/commands/db/index.js +1 -1
  93. package/lib/commands/db/list.js +1 -1
  94. package/lib/commands/db/shared.js +1 -1
  95. package/lib/commands/db/tables.js +1 -1
  96. package/lib/commands/db/test.js +1 -1
  97. package/lib/commands/db/update.js +1 -1
  98. package/lib/commands/doctor.js +1 -1
  99. package/lib/commands/file/index.js +1 -1
  100. package/lib/commands/init/index.js +1 -1
  101. package/lib/commands/issue/index.js +1 -1
  102. package/lib/commands/issue/nudge.js +1 -1
  103. package/lib/commands/issue/report.js +1 -1
  104. package/lib/commands/issue/shared.js +1 -1
  105. package/lib/commands/kb/create.js +1 -1
  106. package/lib/commands/kb/delete.js +1 -1
  107. package/lib/commands/kb/detail.js +1 -1
  108. package/lib/commands/kb/index.js +1 -1
  109. package/lib/commands/kb/list.js +1 -1
  110. package/lib/commands/kb/search.js +1 -1
  111. package/lib/commands/kb/shared.js +1 -1
  112. package/lib/commands/kb/update.js +1 -1
  113. package/lib/commands/logs/index.js +1 -1
  114. package/lib/commands/menu/asset-update.js +1 -1
  115. package/lib/commands/menu/delete.js +1 -1
  116. package/lib/commands/menu/external-link-create.js +1 -1
  117. package/lib/commands/menu/external-link-update.js +1 -1
  118. package/lib/commands/menu/group-create.js +1 -1
  119. package/lib/commands/menu/group-update.js +1 -1
  120. package/lib/commands/menu/index.js +1 -1
  121. package/lib/commands/menu/list.js +1 -1
  122. package/lib/commands/menu/move.js +1 -1
  123. package/lib/commands/menu/regroup-start.js +1 -1
  124. package/lib/commands/menu/rename.js +1 -1
  125. package/lib/commands/menu/shared/compare-table.js +1 -1
  126. package/lib/commands/menu/shared/delete-plan.js +1 -1
  127. package/lib/commands/menu/shared/facts.js +1 -1
  128. package/lib/commands/menu/shared/index.js +1 -1
  129. package/lib/commands/menu/shared/inquirer.js +1 -1
  130. package/lib/commands/menu/shared/local-pages.js +1 -1
  131. package/lib/commands/menu/shared/logic.js +1 -1
  132. package/lib/commands/menu/shared/mutations.js +1 -1
  133. package/lib/commands/menu/shared/service.js +1 -1
  134. package/lib/commands/menu/shared/sync-core.js +1 -1
  135. package/lib/commands/menu/shared/update-core.js +1 -1
  136. package/lib/commands/menu/shared/valid-url.js +1 -1
  137. package/lib/commands/menu/sync.js +1 -1
  138. package/lib/commands/menu/visibility-update.js +1 -1
  139. package/lib/commands/notification/config-create.js +1 -1
  140. package/lib/commands/notification/config-delete.js +1 -1
  141. package/lib/commands/notification/config-list.js +1 -1
  142. package/lib/commands/notification/config-update.js +1 -1
  143. package/lib/commands/notification/index.js +1 -1
  144. package/lib/commands/notification/shared.js +1 -1
  145. package/lib/commands/ocr/index.js +1 -1
  146. package/lib/commands/page/create.js +1 -1
  147. package/lib/commands/page/custom/detail.js +1 -1
  148. package/lib/commands/page/custom/list.js +1 -1
  149. package/lib/commands/page/custom/publish.js +1 -1
  150. package/lib/commands/page/custom/shared.js +1 -1
  151. package/lib/commands/page/custom/syntax.js +1 -1
  152. package/lib/commands/page/custom/template.js +1 -1
  153. package/lib/commands/page/custom/update.js +1 -1
  154. package/lib/commands/page/data-list-status.js +1 -1
  155. package/lib/commands/page/generate-start.js +1 -1
  156. package/lib/commands/page/generate-status.js +1 -1
  157. package/lib/commands/page/index.js +1 -1
  158. package/lib/commands/page/pull.js +1 -1
  159. package/lib/commands/page/push.js +1 -1
  160. package/lib/commands/page/relation-audit.js +1 -1
  161. package/lib/commands/page/restore.js +1 -1
  162. package/lib/commands/page/shared.js +1 -1
  163. package/lib/commands/page/sync.js +1 -1
  164. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  165. package/lib/commands/project/create/format-elapsed.js +1 -1
  166. package/lib/commands/project/create/main.js +1 -1
  167. package/lib/commands/project/create/materialize-project-template.js +1 -1
  168. package/lib/commands/project/create/project-name.js +1 -1
  169. package/lib/commands/project/create/project-template-archive.js +1 -1
  170. package/lib/commands/project/create/project-template-path.js +1 -1
  171. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  172. package/lib/commands/project/create/use-format-code.js +1 -1
  173. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  174. package/lib/commands/project/index.js +1 -1
  175. package/lib/commands/project/upgrade.js +1 -1
  176. package/lib/commands/registry.js +1 -1
  177. package/lib/commands/role/delete.js +1 -1
  178. package/lib/commands/role/detail.js +1 -1
  179. package/lib/commands/role/index.js +1 -1
  180. package/lib/commands/role/list.js +1 -1
  181. package/lib/commands/role/shared.js +1 -1
  182. package/lib/commands/role/update.js +1 -1
  183. package/lib/commands/role/user-add.js +1 -1
  184. package/lib/commands/role/user-remove.js +1 -1
  185. package/lib/commands/role/user-resolve.js +1 -1
  186. package/lib/commands/run/index.js +1 -1
  187. package/lib/commands/schema.js +1 -1
  188. package/lib/commands/sql/create.js +1 -1
  189. package/lib/commands/sql/delete.js +1 -1
  190. package/lib/commands/sql/detail.js +1 -1
  191. package/lib/commands/sql/exec.js +1 -1
  192. package/lib/commands/sql/index.js +1 -1
  193. package/lib/commands/sql/list.js +1 -1
  194. package/lib/commands/sql/pull.js +1 -1
  195. package/lib/commands/sql/push.js +1 -1
  196. package/lib/commands/sql/shared.js +1 -1
  197. package/lib/commands/sql/status.js +1 -1
  198. package/lib/commands/sql/validate.js +1 -1
  199. package/lib/commands/task/index.js +1 -1
  200. package/lib/commands/task/status.js +1 -1
  201. package/lib/commands/tenant/index.js +1 -1
  202. package/lib/commands/tenant/members-list.js +1 -1
  203. package/lib/commands/tenant/shared.js +1 -1
  204. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  205. package/lib/commands/user-account/index.js +1 -1
  206. package/lib/commands/workspace/add.js +1 -1
  207. package/lib/commands/workspace/index.js +1 -1
  208. package/lib/commands/workspace/remove.js +1 -1
  209. package/lib/config/schema.js +1 -1
  210. package/lib/constant/cdn.js +1 -1
  211. package/lib/constant/cli.js +1 -1
  212. package/lib/constant/defaults.js +1 -1
  213. package/lib/constant/domain.js +1 -1
  214. package/lib/constant/env.js +1 -1
  215. package/lib/constant/output.js +1 -1
  216. package/lib/constant/paths.js +1 -1
  217. package/lib/constant/risk.js +1 -1
  218. package/lib/context/app-resolver.js +1 -1
  219. package/lib/context/auth-resolver.js +1 -1
  220. package/lib/context/config-loader.js +1 -1
  221. package/lib/context.js +1 -1
  222. package/lib/core/alias-resolver.js +1 -1
  223. package/lib/core/api-client.d.ts +1 -1
  224. package/lib/core/api-client.js +1 -1
  225. package/lib/core/bff/config.d.ts +1 -1
  226. package/lib/core/bff/config.js +1 -1
  227. package/lib/core/bff/file-system.d.ts +1 -1
  228. package/lib/core/bff/file-system.js +1 -1
  229. package/lib/core/bff/hash.d.ts +1 -1
  230. package/lib/core/bff/hash.js +1 -1
  231. package/lib/core/bff/lock.d.ts +2 -2
  232. package/lib/core/bff/lock.js +1 -1
  233. package/lib/core/bff/types.d.ts +1 -1
  234. package/lib/core/bff/utils.d.ts +2 -2
  235. package/lib/core/bff/utils.js +1 -1
  236. package/lib/core/db-resolver.js +1 -1
  237. package/lib/core/page/file-system.js +1 -1
  238. package/lib/core/page/hash.js +1 -1
  239. package/lib/core/page/lock.js +1 -1
  240. package/lib/core/sql-index-auditor.js +1 -1
  241. package/lib/core/sql-sync/config.js +1 -1
  242. package/lib/core/sql-sync/file-system.js +1 -1
  243. package/lib/core/sql-sync/hash.js +1 -1
  244. package/lib/core/sql-sync/lock.js +1 -1
  245. package/lib/core/sql-sync/utils.js +1 -1
  246. package/lib/core/sql-validator.js +1 -1
  247. package/lib/errors.js +1 -1
  248. package/lib/framework/build-all-flags.js +1 -1
  249. package/lib/framework/error-output.js +1 -1
  250. package/lib/framework/explicit-yes.js +1 -1
  251. package/lib/framework/flags.js +1 -1
  252. package/lib/framework/help.js +1 -1
  253. package/lib/framework/index.js +1 -1
  254. package/lib/framework/output.js +1 -1
  255. package/lib/framework/response.js +1 -1
  256. package/lib/framework/runner-alias.js +1 -1
  257. package/lib/framework/runner.js +1 -1
  258. package/lib/framework/schema-export.js +1 -1
  259. package/lib/framework/types.js +1 -1
  260. package/lib/generated/build-info.d.ts +4 -4
  261. package/lib/generated/build-info.js +1 -1
  262. package/lib/help.js +1 -1
  263. package/lib/postinstall.js +1 -1
  264. package/lib/runtime/confirmation.js +1 -1
  265. package/lib/runtime/event.js +1 -1
  266. package/lib/runtime/index.js +1 -1
  267. package/lib/runtime/queue.js +1 -1
  268. package/lib/runtime/resolve.js +1 -1
  269. package/lib/skills/builtin-skill.js +1 -1
  270. package/lib/skills/main.js +1 -1
  271. package/lib/skills/npx-skills-add.js +1 -1
  272. package/lib/skills/skill-presence.js +1 -1
  273. package/lib/telemetry/cli-command-trace.js +1 -1
  274. package/lib/telemetry/cli-help-trace.js +1 -1
  275. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  276. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  277. package/lib/telemetry/send-cli-trace-log.js +1 -1
  278. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  279. package/lib/utils/ai_config.js +1 -1
  280. package/lib/utils/apply-jq-filter.js +1 -1
  281. package/lib/utils/cdn-config.js +1 -1
  282. package/lib/utils/check-sdk-version.js +1 -1
  283. package/lib/utils/cli-version-check.js +1 -1
  284. package/lib/utils/cli-version-policy.js +1 -1
  285. package/lib/utils/config.js +1 -1
  286. package/lib/utils/entity-with-id.js +1 -1
  287. package/lib/utils/file-utils.js +1 -1
  288. package/lib/utils/guides-cdn.js +1 -1
  289. package/lib/utils/http-client.js +1 -1
  290. package/lib/utils/is-non-interactive.js +1 -1
  291. package/lib/utils/logger.js +1 -1
  292. package/lib/utils/params.js +1 -1
  293. package/lib/utils/platform.js +1 -1
  294. package/lib/utils/rules-cdn.js +1 -1
  295. package/lib/utils/sleep.js +1 -1
  296. package/lib/utils/template-replacer.js +1 -1
  297. package/lib/utils/update-notice.js +1 -1
  298. package/lib/utils/version.js +1 -1
  299. package/lib/utils/with-active-cookie.js +1 -1
  300. package/lib/utils/write-cli-side-channel.js +1 -1
  301. package/package.json +2 -2
  302. package/sidecar/flags.json +1 -1
  303. package/skills/rabetbase/SKILL.md +28 -28
  304. package/skills/rabetbase/guides/backend-function.md +30 -30
  305. package/skills/rabetbase/guides/best-practices.md +8 -8
  306. package/skills/rabetbase/guides/bff-creation-workflow.md +16 -16
  307. package/skills/rabetbase/guides/conflict-detection.md +3 -3
  308. package/skills/rabetbase/guides/custom-page-workflow.md +8 -8
  309. package/skills/rabetbase/guides/data-api-guidelines.md +6 -6
  310. package/skills/rabetbase/guides/legacy-application-blueprint-workflow.md +8 -8
  311. package/skills/rabetbase/guides/sql-creation-workflow.md +2 -2
  312. package/skills/rabetbase/guides/troubleshooting.md +6 -6
  313. package/skills/rabetbase/guides/typescript-sdk.md +10 -10
  314. package/skills/rabetbase/knowledge/page-schema/LrSmartTable.md +1 -1
  315. package/skills/rabetbase/knowledge/page-schema/external-resources-usage.md +10 -10
  316. package/skills/rabetbase/references/rabetbase-app-config.md +2 -2
  317. package/skills/rabetbase/references/rabetbase-bff-create.md +3 -3
  318. package/skills/rabetbase/references/rabetbase-bff-delete.md +1 -1
  319. package/skills/rabetbase/references/rabetbase-bff-detail.md +4 -4
  320. package/skills/rabetbase/references/rabetbase-bff-list.md +8 -8
  321. package/skills/rabetbase/references/rabetbase-bff-pull.md +1 -1
  322. package/skills/rabetbase/references/rabetbase-bff-push.md +3 -3
  323. package/skills/rabetbase/references/rabetbase-bff-status.md +1 -1
  324. package/skills/rabetbase/references/rabetbase-codegen-sql.md +3 -3
  325. package/skills/rabetbase/references/rabetbase-dataset-detail.md +1 -1
  326. package/skills/rabetbase/references/rabetbase-notification-config-list.md +3 -3
  327. package/skills/rabetbase.manifest.json +3 -3
  328. package/templates/rules/lovrabet_rules.mdc.tpl +7 -7
  329. package/templates/skill/SKILL.md.tpl +12 -12
@@ -1 +1 @@
1
- function a34_0x4ddd(){const _0x892027=['bff','appCode','bool','str','List\x20BFF\x20scripts','1771965ZNRGjM','ENDPOINT','string','11GQkUgr','list','Return\x20full\x20script\x20objects','1373310MAdtnl','name','117783rzzMxa','2840440rSnmvU','24UKKnEu','1WyuZUx','Filter\x20by\x20script\x20name','332379ootzat','scriptType','verbose','map','Script\x20type\x20filter','No\x20BFF\x20scripts\x20found.','16dHkEHG','type','463578MEuRIL','COMMON','boolean','2089731zHvDQA'];a34_0x4ddd=function(){return _0x892027;};return a34_0x4ddd();}const a34_0x33451d=a34_0x39b5;(function(_0x1509dc,_0x5bebec){const _0x450b00=a34_0x39b5,_0x359344=_0x1509dc();while(!![]){try{const _0x94f47=parseInt(_0x450b00(0xce))/0x1*(parseInt(_0x450b00(0xba))/0x2)+parseInt(_0x450b00(0xcb))/0x3*(-parseInt(_0x450b00(0xcd))/0x4)+parseInt(_0x450b00(0xc3))/0x5+-parseInt(_0x450b00(0xc9))/0x6+parseInt(_0x450b00(0xbd))/0x7+parseInt(_0x450b00(0xb8))/0x8*(parseInt(_0x450b00(0xd0))/0x9)+-parseInt(_0x450b00(0xcc))/0xa*(parseInt(_0x450b00(0xc6))/0xb);if(_0x94f47===_0x5bebec)break;else _0x359344['push'](_0x359344['shift']());}catch(_0x55a132){_0x359344['push'](_0x359344['shift']());}}}(a34_0x4ddd,0x334a2));import{listBffScripts}from'../../core/api-client.js';function a34_0x39b5(_0x25a76f,_0x279dcb){_0x25a76f=_0x25a76f-0xb4;const _0x4ddd9c=a34_0x4ddd();let _0x39b502=_0x4ddd9c[_0x25a76f];return _0x39b502;}export const bffList={'service':a34_0x33451d(0xbe),'command':a34_0x33451d(0xc7),'description':a34_0x33451d(0xc2),'risk':'read','flags':[{'name':a34_0x33451d(0xb9),'type':a34_0x33451d(0xc5),'description':a34_0x33451d(0xb6),'default':a34_0x33451d(0xc4),'enum':[a34_0x33451d(0xc4),a34_0x33451d(0xbb)]},{'name':a34_0x33451d(0xca),'type':a34_0x33451d(0xc5),'description':a34_0x33451d(0xcf)},{'name':a34_0x33451d(0xb4),'type':a34_0x33451d(0xbc),'description':a34_0x33451d(0xc8)}],async 'execute'(_0x14239a){const _0x16a542=a34_0x33451d,_0x21a9bc=await listBffScripts(_0x14239a[_0x16a542(0xbf)],_0x14239a[_0x16a542(0xc1)]('type'),{'scriptName':_0x14239a[_0x16a542(0xc1)]('name')||undefined}),_0x5de23a=_0x14239a[_0x16a542(0xc0)](_0x16a542(0xb4));return{'ok':!![],'data':_0x5de23a?_0x21a9bc:_0x21a9bc[_0x16a542(0xb5)](_0x1fbc01=>({'id':_0x1fbc01['id'],'functionName':_0x1fbc01['functionName']??'','description':_0x1fbc01['description']||'(unnamed)','scriptType':_0x1fbc01[_0x16a542(0xd1)]})),'message':_0x21a9bc['length']===0x0?_0x16a542(0xb7):undefined};}};
1
+ function a34_0xef61(){const _0x41eb82=['boolean','bff','6018830LjXpMe','Filter\x20by\x20script\x20name','functionName','type','length','938959yJxVpV','Return\x20full\x20script\x20objects','1885256qhqTxP','179348YefFbp','string','48kYEoSo','scriptType','(unnamed)','verbose','list','13469710kcgvrF','bool','name','ENDPOINT','12128144DoDzkV','description','str','List\x20Backend\x20Function\x20scripts','78pqWKTB','9YzXDBD','1625549IPjFUu'];a34_0xef61=function(){return _0x41eb82;};return a34_0xef61();}const a34_0xb443f6=a34_0x575f;(function(_0x1317e0,_0x542c54){const _0x21275e=a34_0x575f,_0x47f00f=_0x1317e0();while(!![]){try{const _0x14f402=-parseInt(_0x21275e(0xf6))/0x1+-parseInt(_0x21275e(0xe4))/0x2+-parseInt(_0x21275e(0xe7))/0x3*(-parseInt(_0x21275e(0xe5))/0x4)+parseInt(_0x21275e(0xdd))/0x5+-parseInt(_0x21275e(0xf4))/0x6*(-parseInt(_0x21275e(0xe2))/0x7)+-parseInt(_0x21275e(0xf0))/0x8+parseInt(_0x21275e(0xf5))/0x9*(parseInt(_0x21275e(0xec))/0xa);if(_0x14f402===_0x542c54)break;else _0x47f00f['push'](_0x47f00f['shift']());}catch(_0x322ff6){_0x47f00f['push'](_0x47f00f['shift']());}}}(a34_0xef61,0xe27e3));function a34_0x575f(_0x5ed1fe,_0x4e4a9f){_0x5ed1fe=_0x5ed1fe-0xdd;const _0xef6172=a34_0xef61();let _0x575f20=_0xef6172[_0x5ed1fe];return _0x575f20;}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a34_0xb443f6(0xf8),'command':a34_0xb443f6(0xeb),'description':a34_0xb443f6(0xf3),'risk':'read','flags':[{'name':'type','type':a34_0xb443f6(0xe6),'description':'Script\x20type\x20filter','default':a34_0xb443f6(0xef),'enum':[a34_0xb443f6(0xef),'COMMON']},{'name':a34_0xb443f6(0xee),'type':'string','description':a34_0xb443f6(0xde)},{'name':a34_0xb443f6(0xea),'type':a34_0xb443f6(0xf7),'description':a34_0xb443f6(0xe3)}],async 'execute'(_0x5b47b8){const _0x2c584d=a34_0xb443f6,_0x3dee09=await listBffScripts(_0x5b47b8['appCode'],_0x5b47b8[_0x2c584d(0xf2)](_0x2c584d(0xe0)),{'scriptName':_0x5b47b8[_0x2c584d(0xf2)]('name')||undefined}),_0x51c419=_0x5b47b8[_0x2c584d(0xed)](_0x2c584d(0xea));return{'ok':!![],'data':_0x51c419?_0x3dee09:_0x3dee09['map'](_0xb2083e=>({'id':_0xb2083e['id'],'functionName':_0xb2083e[_0x2c584d(0xdf)]??'','description':_0xb2083e[_0x2c584d(0xf1)]||_0x2c584d(0xe9),'scriptType':_0xb2083e[_0x2c584d(0xe8)]})),'message':_0x3dee09[_0x2c584d(0xe1)]===0x0?'No\x20Backend\x20Function\x20scripts\x20found.':undefined};}};
@@ -1 +1 @@
1
- const a35_0x3c4436=a35_0x1576;(function(_0x3a6286,_0x22935f){const _0x17c89d=a35_0x1576,_0x2c09d6=_0x3a6286();while(!![]){try{const _0x3bb149=parseInt(_0x17c89d(0x1f8))/0x1*(-parseInt(_0x17c89d(0x1c7))/0x2)+-parseInt(_0x17c89d(0x1eb))/0x3+-parseInt(_0x17c89d(0x207))/0x4+parseInt(_0x17c89d(0x1cd))/0x5+-parseInt(_0x17c89d(0x1e3))/0x6+parseInt(_0x17c89d(0x1d9))/0x7+parseInt(_0x17c89d(0x1d7))/0x8*(parseInt(_0x17c89d(0x1f9))/0x9);if(_0x3bb149===_0x22935f)break;else _0x2c09d6['push'](_0x2c09d6['shift']());}catch(_0x77a29c){_0x2c09d6['push'](_0x2c09d6['shift']());}}}(a35_0x1538,0x9870d));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';function a35_0x1538(){const _0xc74edf=['str','\x22\x20not\x20found\x20after\x20ensureLockScope.','alias','&type=','Pull\x20only\x20this\x20script\x20type','skipped','length','1JAsgEb','765gjYGLt','\x20remote\x20BFF\x20script(s)\x20for\x20pull','appCode','COMMON','functionName','Force\x20pull\x20cancelled.','Pull\x20complete:\x20','stderr','Remote\x20script\x20missing\x20content.','functionNode','yes','datasetCode','bool','stringify','458652mBrSFP','toISOString','functions','read','lockFilePath','nonInteractive','toLowerCase','message','381370TFzBjl','lastSync','\x20skipped,\x20','push','bff','includes','759830OPwUQn','\x20pulled,\x20','trim','local\x20unsynced\x20changes','HOOK','close','No\x20remote\x20BFF\x20scripts\x20found.','filePath','pull','apps','3088SwgalQ','scriptType','8269198GZpDnp','scriptContent','parse','type','validation','scriptsRoot','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','hookLocation','GET','/api/management/library/scripts/list?appCode=','1204740fXwekb','all','map','utf8','Remote\x20script\x20missing\x20id.','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','conflict','operationType','706665XzMrKI','ENDPOINT','apiDir','lockKey','cancelled','force'];a35_0x1538=function(){return _0xc74edf;};return a35_0x1538();}import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a35_0x3c4436(0x1cb),'command':a35_0x3c4436(0x1d5),'description':a35_0x3c4436(0x1df),'risk':a35_0x3c4436(0x20a),'flags':[{'name':a35_0x3c4436(0x1dc),'type':'string','description':a35_0x3c4436(0x1f5),'enum':[a35_0x3c4436(0x1fc),a35_0x3c4436(0x1ec),a35_0x3c4436(0x1d1)]},{'name':'force','type':'boolean','description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x4e1f73){const _0x281248=a35_0x3c4436,_0x1c8820=loadBffProjectConfig(_0x4e1f73[_0x281248(0x1fb)]),_0x4886dd=await readBffLockFile(_0x1c8820[_0x281248(0x20b)]),{appLock:_0x25fd8f}=ensureLockScope(_0x4886dd??createEmptyBffLock(),_0x4e1f73[_0x281248(0x1fb)],_0x1c8820[_0x281248(0x1de)],'pull'),_0x1ccc5b=normalizeBffType(_0x4e1f73[_0x281248(0x1f1)]('type'))??undefined,_0x53e37c=buildDatasetCodeToAliasMap(_0x4e1f73[_0x281248(0x1ed)],_0x4e1f73[_0x281248(0x1fb)]),[_0x4d0f2d,_0x6aa13e]=await Promise[_0x281248(0x1e4)]([listBffScripts(_0x4e1f73[_0x281248(0x1fb)],_0x1ccc5b),getBffScriptStatistics(_0x4e1f73[_0x281248(0x1fb)])]),_0x2aa8c9=createHookLocationMap(_0x6aa13e),_0x2cf463=[];for(const _0x5e4701 of _0x4d0f2d){const _0x3fcde0=resolveRemoteScriptTarget(_0x1c8820,_0x5e4701,_0x2aa8c9,_0x25fd8f['functions'],_0x53e37c);if(!_0x3fcde0){_0x2cf463[_0x281248(0x1ca)]({'scriptType':_0x5e4701['scriptType'],'functionName':_0x5e4701[_0x281248(0x1fd)]??'','status':_0x281248(0x1f6),'reason':'unresolvable\x20target\x20path'});continue;}const _0x38c33c=_0x25fd8f['functions'][_0x3fcde0[_0x281248(0x1ee)]],_0x1f3da9=_0x5e4701[_0x281248(0x1da)]!=null?computeContentHash(_0x5e4701[_0x281248(0x1da)]):undefined,_0x11f779=await hasUnsyncedLocalChanges(_0x3fcde0[_0x281248(0x1d4)],_0x38c33c,_0x1f3da9);_0x2cf463[_0x281248(0x1ca)]({'lockKey':_0x3fcde0[_0x281248(0x1ee)],'filePath':_0x3fcde0[_0x281248(0x1d4)],'remoteId':_0x5e4701['id']??null,'status':_0x11f779?_0x281248(0x1e9):'would_pull'});}return{'method':_0x281248(0x1e1),'url':_0x281248(0x1e2)+_0x4e1f73[_0x281248(0x1fb)]+(_0x1ccc5b?_0x281248(0x1f4)+_0x1ccc5b:''),'body':{'appCode':_0x4e1f73[_0x281248(0x1fb)],'filterType':_0x1ccc5b??null,'files':_0x2cf463},'description':'Would\x20inspect\x20'+_0x2cf463[_0x281248(0x1f7)]+_0x281248(0x1fa)};},async 'execute'(_0x14bbe1){const _0x3ea148=a35_0x3c4436,_0x1f1da6=loadBffProjectConfig(_0x14bbe1[_0x3ea148(0x1fb)]),_0x58323c=await readBffLockFile(_0x1f1da6['lockFilePath']),{lockData:_0x3de63b,appLock:_0x2ee09d}=ensureLockScope(_0x58323c??createEmptyBffLock(),_0x14bbe1[_0x3ea148(0x1fb)],_0x1f1da6[_0x3ea148(0x1de)],'pull'),_0x278a92=normalizeBffType(_0x14bbe1[_0x3ea148(0x1f1)](_0x3ea148(0x1dc)))??undefined;if(_0x14bbe1[_0x3ea148(0x1f1)]('type')&&!_0x278a92)throw CliErrors[_0x3ea148(0x1dd)]('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0x2bc533,_0x7d145]=await Promise['all']([listBffScripts(_0x14bbe1[_0x3ea148(0x1fb)],_0x278a92),getBffScriptStatistics(_0x14bbe1[_0x3ea148(0x1fb)])]);if(_0x2bc533['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x3ea148(0x1d3)};const _0x381737=_0x14bbe1[_0x3ea148(0x205)](_0x3ea148(0x1f0));if(_0x381737&&!_0x14bbe1['nonInteractive']){const _0x564f5c=await confirmForce();if(!_0x564f5c)throw CliErrors[_0x3ea148(0x1ef)](_0x3ea148(0x1fe));}if(_0x381737&&_0x14bbe1[_0x3ea148(0x20c)]){}const _0x26cad5=buildDatasetCodeToAliasMap(_0x14bbe1[_0x3ea148(0x1ed)],_0x14bbe1[_0x3ea148(0x1fb)]),_0x471ce9=createHookLocationMap(_0x7d145),_0x4e03a7=JSON[_0x3ea148(0x1db)](JSON[_0x3ea148(0x206)](_0x3de63b)),_0x5a0c6b=_0x14bbe1['appCode'],_0x2a9dd6=_0x4e03a7[_0x3ea148(0x1d6)][_0x5a0c6b];if(!_0x2a9dd6)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x5a0c6b+_0x3ea148(0x1f2));const _0x3e1ac7=[],_0x5a059e=[],_0x2d305d=[];for(const _0x19b59e of _0x2bc533){const _0x1ba663=resolveRemoteScriptTarget(_0x1f1da6,_0x19b59e,_0x471ce9,_0x2ee09d[_0x3ea148(0x209)],_0x26cad5);if(!_0x1ba663){_0x5a059e['push']({'lockKey':_0x19b59e[_0x3ea148(0x1d8)]+'/'+_0x19b59e['functionName'],'reason':'unresolvable\x20target\x20path'});continue;}const _0x410e52=_0x2ee09d['functions'][_0x1ba663[_0x3ea148(0x1ee)]];try{if(!_0x19b59e['id'])throw new Error(_0x3ea148(0x1e7));if(_0x19b59e['scriptContent']==null)throw new Error(_0x3ea148(0x201));const _0x3facca=_0x19b59e[_0x3ea148(0x1da)],_0x58f549=computeContentHash(_0x3facca);if(!_0x381737){const _0x3ffca8=await hasUnsyncedLocalChanges(_0x1ba663['filePath'],_0x410e52,_0x58f549);if(_0x3ffca8){_0x5a059e[_0x3ea148(0x1ca)]({'lockKey':_0x1ba663[_0x3ea148(0x1ee)],'reason':_0x3ea148(0x1d0)});continue;}}await ensureParentDirectory(_0x1ba663[_0x3ea148(0x1d4)]),await writeFile(_0x1ba663['filePath'],_0x3facca,_0x3ea148(0x1e6));const _0x5b3ab6={'hash':_0x58f549,'remoteId':_0x19b59e['id'],'version':_0x19b59e['version']};_0x1ba663[_0x3ea148(0x1dc)]==='HOOK'&&_0x1ba663[_0x3ea148(0x1e0)]&&(_0x5b3ab6[_0x3ea148(0x1f3)]=_0x1ba663[_0x3ea148(0x1e0)][_0x3ea148(0x1f3)],_0x5b3ab6[_0x3ea148(0x204)]=_0x1ba663[_0x3ea148(0x1e0)][_0x3ea148(0x204)],_0x5b3ab6[_0x3ea148(0x1ea)]=_0x1ba663['hookLocation'][_0x3ea148(0x1ea)],_0x5b3ab6[_0x3ea148(0x202)]=_0x1ba663['hookLocation'][_0x3ea148(0x202)]),_0x2a9dd6[_0x3ea148(0x209)][_0x1ba663[_0x3ea148(0x1ee)]]=_0x5b3ab6,_0x3e1ac7[_0x3ea148(0x1ca)]({'lockKey':_0x1ba663[_0x3ea148(0x1ee)],'remoteId':_0x19b59e['id']});}catch(_0x21e25e){_0x2d305d[_0x3ea148(0x1ca)]({'lockKey':_0x1ba663[_0x3ea148(0x1ee)],'error':_0x21e25e instanceof Error?_0x21e25e[_0x3ea148(0x20e)]:String(_0x21e25e)});}}return _0x2a9dd6[_0x3ea148(0x1c8)]=new Date()[_0x3ea148(0x208)](),await writeBffLockFile(_0x1f1da6[_0x3ea148(0x20b)],_0x4e03a7),{'ok':_0x2d305d[_0x3ea148(0x1f7)]===0x0,'data':{'pulled':_0x3e1ac7,'skipped':_0x5a059e,'failed':_0x2d305d},'message':_0x3ea148(0x1ff)+_0x3e1ac7[_0x3ea148(0x1f7)]+_0x3ea148(0x1ce)+_0x5a059e[_0x3ea148(0x1f7)]+_0x3ea148(0x1c9)+_0x2d305d[_0x3ea148(0x1f7)]+'\x20failed'};}};function a35_0x1576(_0x98a7b3,_0x3f7def){_0x98a7b3=_0x98a7b3-0x1c7;const _0x1538f9=a35_0x1538();let _0x157679=_0x1538f9[_0x98a7b3];return _0x157679;}async function hasUnsyncedLocalChanges(_0x1fe5f5,_0x5adb41,_0x2a2010){if(!await fileExists(_0x1fe5f5))return![];const _0x5ac951=await computeFileHash(_0x1fe5f5);if(!_0x5adb41)return _0x2a2010?_0x5ac951!==_0x2a2010:!![];return _0x5ac951!==_0x5adb41['hash'];}function buildDatasetCodeToAliasMap(_0x2590f8,_0x346f7c){const _0x2f6df6=a35_0x3c4436,_0x2945c8=loadAliasMap(_0x2590f8,undefined,resolveApiFilePath(_0x2590f8,_0x346f7c));return new Map(_0x2945c8[_0x2f6df6(0x1e5)](_0x6ae323=>[_0x6ae323['datasetCode'],_0x6ae323[_0x2f6df6(0x1f3)]]));}async function confirmForce(){const _0x222a67=a35_0x3c4436,_0x20683d=createInterface({'input':process['stdin'],'output':process[_0x222a67(0x200)]}),_0x517b60=await new Promise(_0x57ea59=>{const _0x2256e7=_0x222a67;_0x20683d['question'](_0x2256e7(0x1e8),_0x57ea59);});return _0x20683d[_0x222a67(0x1d2)](),['y',_0x222a67(0x203)][_0x222a67(0x1cc)](_0x517b60[_0x222a67(0x1cf)]()[_0x222a67(0x20d)]());}
1
+ const a35_0x6eb12=a35_0xf5e0;(function(_0x2bec7c,_0x27c396){const _0x337292=a35_0xf5e0,_0x50769d=_0x2bec7c();while(!![]){try{const _0x14841c=-parseInt(_0x337292(0x211))/0x1*(parseInt(_0x337292(0x204))/0x2)+-parseInt(_0x337292(0x1fe))/0x3+-parseInt(_0x337292(0x216))/0x4+parseInt(_0x337292(0x1ec))/0x5*(-parseInt(_0x337292(0x214))/0x6)+parseInt(_0x337292(0x1e2))/0x7*(-parseInt(_0x337292(0x206))/0x8)+parseInt(_0x337292(0x1f7))/0x9*(parseInt(_0x337292(0x1fd))/0xa)+parseInt(_0x337292(0x20b))/0xb;if(_0x14841c===_0x27c396)break;else _0x50769d['push'](_0x50769d['shift']());}catch(_0x48a96b){_0x50769d['push'](_0x50769d['shift']());}}}(a35_0x3a62,0xc6097));function a35_0x3a62(){const _0x723f26=['pull','\x20pulled,\x20','functionNode','push','Pull\x20only\x20this\x20script\x20type','all','operationType','Pull\x20complete:\x20','functionName','\x20remote\x20Backend\x20Function\x20script(s)\x20for\x20pull','length','functions','map','bff','boolean','119rvdAYx','type','stdin','includes','No\x20remote\x20Backend\x20Function\x20scripts\x20found.','GET','alias','hookLocation','hash','Would\x20inspect\x20','424405wLnqiP','\x22\x20not\x20found\x20after\x20ensureLockScope.','trim','filePath','validation','Force\x20pull\x20cancelled.','\x20skipped,\x20','bool','Pull\x20remote\x20Backend\x20Function\x20scripts\x20to\x20local','cancelled','lockKey','549eqnukr','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','appCode','&type=','conflict','scriptType','120830nHWUGS','1689450JJOnXx','would_pull','datasetCode','\x20failed','HOOK','version','1210868nnBIGD','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','78424SxZSdP','local\x20unsynced\x20changes','stringify','apiDir','force','25429679eCHTEb','unresolvable\x20target\x20path','toLowerCase','scriptContent','Lock\x20scope\x20for\x20app\x20\x22','skipped','1XlTlEn','parse','message','36GlYjnm','str','1572688nYsRbB','close','lockFilePath'];a35_0x3a62=function(){return _0x723f26;};return a35_0x3a62();}import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a35_0x6eb12(0x1e0),'command':a35_0x6eb12(0x219),'description':a35_0x6eb12(0x1f4),'risk':'read','flags':[{'name':a35_0x6eb12(0x1e3),'type':'string','description':a35_0x6eb12(0x21d),'enum':['COMMON','ENDPOINT',a35_0x6eb12(0x202)]},{'name':a35_0x6eb12(0x20a),'type':a35_0x6eb12(0x1e1),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x213feb){const _0x723f35=a35_0x6eb12,_0x42359e=loadBffProjectConfig(_0x213feb[_0x723f35(0x1f9)]),_0x5037b7=await readBffLockFile(_0x42359e[_0x723f35(0x218)]),{appLock:_0x49b805}=ensureLockScope(_0x5037b7??createEmptyBffLock(),_0x213feb[_0x723f35(0x1f9)],_0x42359e['scriptsRoot'],_0x723f35(0x219)),_0x49c7ca=normalizeBffType(_0x213feb[_0x723f35(0x215)](_0x723f35(0x1e3)))??undefined,_0x11c42c=buildDatasetCodeToAliasMap(_0x213feb['apiDir'],_0x213feb['appCode']),[_0x4965d2,_0x44e064]=await Promise['all']([listBffScripts(_0x213feb[_0x723f35(0x1f9)],_0x49c7ca),getBffScriptStatistics(_0x213feb[_0x723f35(0x1f9)])]),_0x117baf=createHookLocationMap(_0x44e064),_0x314210=[];for(const _0x42eabe of _0x4965d2){const _0x5b930d=resolveRemoteScriptTarget(_0x42359e,_0x42eabe,_0x117baf,_0x49b805[_0x723f35(0x224)],_0x11c42c);if(!_0x5b930d){_0x314210[_0x723f35(0x21c)]({'scriptType':_0x42eabe[_0x723f35(0x1fc)],'functionName':_0x42eabe[_0x723f35(0x221)]??'','status':_0x723f35(0x210),'reason':_0x723f35(0x20c)});continue;}const _0x7d84f3=_0x49b805['functions'][_0x5b930d[_0x723f35(0x1f6)]],_0x3e4899=_0x42eabe[_0x723f35(0x20e)]!=null?computeContentHash(_0x42eabe['scriptContent']):undefined,_0x3da1ba=await hasUnsyncedLocalChanges(_0x5b930d[_0x723f35(0x1ef)],_0x7d84f3,_0x3e4899);_0x314210[_0x723f35(0x21c)]({'lockKey':_0x5b930d[_0x723f35(0x1f6)],'filePath':_0x5b930d[_0x723f35(0x1ef)],'remoteId':_0x42eabe['id']??null,'status':_0x3da1ba?_0x723f35(0x1fb):_0x723f35(0x1ff)});}return{'method':_0x723f35(0x1e7),'url':'/api/management/library/scripts/list?appCode='+_0x213feb[_0x723f35(0x1f9)]+(_0x49c7ca?_0x723f35(0x1fa)+_0x49c7ca:''),'body':{'appCode':_0x213feb['appCode'],'filterType':_0x49c7ca??null,'files':_0x314210},'description':_0x723f35(0x1eb)+_0x314210[_0x723f35(0x223)]+_0x723f35(0x222)};},async 'execute'(_0x5396ee){const _0x55b082=a35_0x6eb12,_0x37a6b8=loadBffProjectConfig(_0x5396ee[_0x55b082(0x1f9)]),_0x582f7d=await readBffLockFile(_0x37a6b8[_0x55b082(0x218)]),{lockData:_0x31bf60,appLock:_0x3dd54b}=ensureLockScope(_0x582f7d??createEmptyBffLock(),_0x5396ee[_0x55b082(0x1f9)],_0x37a6b8['scriptsRoot'],_0x55b082(0x219)),_0x4e01f2=normalizeBffType(_0x5396ee[_0x55b082(0x215)]('type'))??undefined;if(_0x5396ee[_0x55b082(0x215)](_0x55b082(0x1e3))&&!_0x4e01f2)throw CliErrors[_0x55b082(0x1f0)](_0x55b082(0x1f8));const [_0x4353ef,_0x2ff2a9]=await Promise[_0x55b082(0x21e)]([listBffScripts(_0x5396ee['appCode'],_0x4e01f2),getBffScriptStatistics(_0x5396ee['appCode'])]);if(_0x4353ef['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x55b082(0x1e6)};const _0x148d66=_0x5396ee[_0x55b082(0x1f3)](_0x55b082(0x20a));if(_0x148d66&&!_0x5396ee['nonInteractive']){const _0x15c732=await confirmForce();if(!_0x15c732)throw CliErrors[_0x55b082(0x1f5)](_0x55b082(0x1f1));}if(_0x148d66&&_0x5396ee['nonInteractive']){}const _0x44f5c7=buildDatasetCodeToAliasMap(_0x5396ee[_0x55b082(0x209)],_0x5396ee[_0x55b082(0x1f9)]),_0x320088=createHookLocationMap(_0x2ff2a9),_0x13547f=JSON[_0x55b082(0x212)](JSON[_0x55b082(0x208)](_0x31bf60)),_0x599173=_0x5396ee[_0x55b082(0x1f9)],_0x2eafb3=_0x13547f['apps'][_0x599173];if(!_0x2eafb3)throw new Error(_0x55b082(0x20f)+_0x599173+_0x55b082(0x1ed));const _0x46e276=[],_0x5f139a=[],_0x41b857=[];for(const _0x5882ae of _0x4353ef){const _0x3ec23d=resolveRemoteScriptTarget(_0x37a6b8,_0x5882ae,_0x320088,_0x3dd54b[_0x55b082(0x224)],_0x44f5c7);if(!_0x3ec23d){_0x5f139a[_0x55b082(0x21c)]({'lockKey':_0x5882ae[_0x55b082(0x1fc)]+'/'+_0x5882ae[_0x55b082(0x221)],'reason':_0x55b082(0x20c)});continue;}const _0x2cb92f=_0x3dd54b[_0x55b082(0x224)][_0x3ec23d['lockKey']];try{if(!_0x5882ae['id'])throw new Error('Remote\x20script\x20missing\x20id.');if(_0x5882ae[_0x55b082(0x20e)]==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x2b326c=_0x5882ae['scriptContent'],_0x5222af=computeContentHash(_0x2b326c);if(!_0x148d66){const _0x352ab7=await hasUnsyncedLocalChanges(_0x3ec23d[_0x55b082(0x1ef)],_0x2cb92f,_0x5222af);if(_0x352ab7){_0x5f139a['push']({'lockKey':_0x3ec23d[_0x55b082(0x1f6)],'reason':_0x55b082(0x207)});continue;}}await ensureParentDirectory(_0x3ec23d['filePath']),await writeFile(_0x3ec23d[_0x55b082(0x1ef)],_0x2b326c,'utf8');const _0x4ddcc1={'hash':_0x5222af,'remoteId':_0x5882ae['id'],'version':_0x5882ae[_0x55b082(0x203)]};_0x3ec23d[_0x55b082(0x1e3)]==='HOOK'&&_0x3ec23d[_0x55b082(0x1e9)]&&(_0x4ddcc1['alias']=_0x3ec23d['hookLocation'][_0x55b082(0x1e8)],_0x4ddcc1['datasetCode']=_0x3ec23d['hookLocation'][_0x55b082(0x200)],_0x4ddcc1[_0x55b082(0x21f)]=_0x3ec23d[_0x55b082(0x1e9)][_0x55b082(0x21f)],_0x4ddcc1[_0x55b082(0x21b)]=_0x3ec23d['hookLocation'][_0x55b082(0x21b)]),_0x2eafb3[_0x55b082(0x224)][_0x3ec23d['lockKey']]=_0x4ddcc1,_0x46e276['push']({'lockKey':_0x3ec23d[_0x55b082(0x1f6)],'remoteId':_0x5882ae['id']});}catch(_0x4f6ec5){_0x41b857[_0x55b082(0x21c)]({'lockKey':_0x3ec23d[_0x55b082(0x1f6)],'error':_0x4f6ec5 instanceof Error?_0x4f6ec5[_0x55b082(0x213)]:String(_0x4f6ec5)});}}return _0x2eafb3['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x37a6b8[_0x55b082(0x218)],_0x13547f),{'ok':_0x41b857[_0x55b082(0x223)]===0x0,'data':{'pulled':_0x46e276,'skipped':_0x5f139a,'failed':_0x41b857},'message':_0x55b082(0x220)+_0x46e276[_0x55b082(0x223)]+_0x55b082(0x21a)+_0x5f139a[_0x55b082(0x223)]+_0x55b082(0x1f2)+_0x41b857[_0x55b082(0x223)]+_0x55b082(0x201)};}};async function hasUnsyncedLocalChanges(_0x4f9beb,_0x3443da,_0x7574aa){const _0x2c732c=a35_0x6eb12;if(!await fileExists(_0x4f9beb))return![];const _0x5544e8=await computeFileHash(_0x4f9beb);if(!_0x3443da)return _0x7574aa?_0x5544e8!==_0x7574aa:!![];return _0x5544e8!==_0x3443da[_0x2c732c(0x1ea)];}function a35_0xf5e0(_0x45bee8,_0x1089b0){_0x45bee8=_0x45bee8-0x1df;const _0x3a62d5=a35_0x3a62();let _0xf5e0f1=_0x3a62d5[_0x45bee8];return _0xf5e0f1;}function buildDatasetCodeToAliasMap(_0x47b2ee,_0x5546a6){const _0x253783=a35_0x6eb12,_0x159c98=loadAliasMap(_0x47b2ee,undefined,resolveApiFilePath(_0x47b2ee,_0x5546a6));return new Map(_0x159c98[_0x253783(0x1df)](_0x518ef8=>[_0x518ef8[_0x253783(0x200)],_0x518ef8[_0x253783(0x1e8)]]));}async function confirmForce(){const _0x2a8e1f=a35_0x6eb12,_0x324c17=createInterface({'input':process[_0x2a8e1f(0x1e4)],'output':process['stderr']}),_0x400538=await new Promise(_0x17d964=>{const _0x39dbe1=_0x2a8e1f;_0x324c17['question'](_0x39dbe1(0x205),_0x17d964);});return _0x324c17[_0x2a8e1f(0x217)](),['y','yes'][_0x2a8e1f(0x1e5)](_0x400538[_0x2a8e1f(0x1ee)]()[_0x2a8e1f(0x20d)]());}
@@ -1 +1 @@
1
- const a36_0xcb0b31=a36_0x553f;(function(_0x4f0aee,_0x156145){const _0xcf7f46=a36_0x553f,_0x20615e=_0x4f0aee();while(!![]){try{const _0x31aa23=-parseInt(_0xcf7f46(0x10e))/0x1+parseInt(_0xcf7f46(0x117))/0x2+-parseInt(_0xcf7f46(0x12d))/0x3*(parseInt(_0xcf7f46(0x122))/0x4)+-parseInt(_0xcf7f46(0x10d))/0x5+parseInt(_0xcf7f46(0x11d))/0x6+parseInt(_0xcf7f46(0x123))/0x7*(-parseInt(_0xcf7f46(0x126))/0x8)+parseInt(_0xcf7f46(0xfd))/0x9*(parseInt(_0xcf7f46(0x140))/0xa);if(_0x31aa23===_0x156145)break;else _0x20615e['push'](_0x20615e['shift']());}catch(_0x4f6527){_0x20615e['push'](_0x20615e['shift']());}}}(a36_0x5b7b,0x2cdfb));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets,clearBffScriptCache}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';function a36_0x5b7b(){const _0x1175ff=['name','force','106080sDAwaP','description','boolean','Push\x20local\x20BFF\x20scripts\x20to\x20remote','every','4556HkDzJa','14OLKptd','apiDir','COMMON','618776tLBBSE','map','would_push','POST','unchanged','string','parse','123TYsZQu','datasetId','Cannot\x20resolve\x20dataset\x20for\x20\x22','scriptsRoot','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','hash','\x22\x20not\x20found\x20after\x20ensureLockScope.','version','\x20skipped,\x20','join','Runtime\x20script\x20cache\x20cleared.','lastSync','update','push','runtime\x20cache\x20clear\x20failed','type','cleared','remoteId','ENDPOINT','10850DjxHhm','datasetCodeToDataset','aliasToDatasetCode','functionNode','datasetCode','\x22.\x20','stringify','Local\x20function\x20not\x20found:\x20','filePath','runtime\x20cache\x20not\x20needed','set','lockKey','Incomplete\x20HOOK\x20path:\x20','lockFilePath','Would\x20inspect\x20','create','Push\x20complete:\x20','status','script','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','5193xGtPYj','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','has','bool','validation',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','filter','bff','alias','get','toISOString','HOOK','code','write','some','functions','1719335uZdBsV','270930mCbysq','utf8','str','operationType','message','values','Push\x20only\x20this\x20script\x20type','apps','length','712536vlDhwS','attempted','appCode','Lock\x20scope\x20for\x20app\x20\x22'];a36_0x5b7b=function(){return _0x1175ff;};return a36_0x5b7b();}import{computeFileHash}from'../../core/bff/hash.js';function a36_0x553f(_0x16801f,_0x38c13b){_0x16801f=_0x16801f-0xf2;const _0x5b7b9b=a36_0x5b7b();let _0x553f93=_0x5b7b9b[_0x16801f];return _0x553f93;}import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';import{sleep}from'../../utils/sleep.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';const CACHE_CLEAR_ATTEMPTS=0x2,CACHE_CLEAR_INTERVAL_MS=0x12c;export const bffPush={'service':a36_0xcb0b31(0x104),'command':'push','description':a36_0xcb0b31(0x120),'risk':a36_0xcb0b31(0x10a),'flags':[{'name':'type','type':a36_0xcb0b31(0x12b),'description':a36_0xcb0b31(0x114),'enum':[a36_0xcb0b31(0x125),a36_0xcb0b31(0x13f),a36_0xcb0b31(0x108)]},{'name':a36_0xcb0b31(0x11b),'type':a36_0xcb0b31(0x12b),'description':a36_0xcb0b31(0xfe)},{'name':a36_0xcb0b31(0x11c),'type':a36_0xcb0b31(0x11f),'description':'Force\x20push\x20ignoring\x20hash\x20protection'}],async 'dryRun'(_0x302e20){const _0x5c8ea1=a36_0xcb0b31,_0x141003=loadBffProjectConfig(_0x302e20[_0x5c8ea1(0x119)]),_0x1f70ce=await readBffLockFile(_0x141003[_0x5c8ea1(0xf6)]),{appLock:_0x441042}=ensureLockScope(_0x1f70ce??createEmptyBffLock(),_0x302e20[_0x5c8ea1(0x119)],_0x141003['scriptsRoot'],_0x5c8ea1(0x13a)),_0x3e2c52=await getTargetFunctions(_0x141003,_0x302e20),_0x5e1ede=_0x302e20['bool'](_0x5c8ea1(0x11c)),_0x2f4132=[];for(const _0x3ce68e of _0x3e2c52){const _0x2b2188=await computeFileHash(_0x3ce68e['filePath']),_0x4a17a3=_0x441042[_0x5c8ea1(0x10c)][_0x3ce68e[_0x5c8ea1(0xf4)]],_0x1359c2=!!_0x4a17a3&&_0x4a17a3[_0x5c8ea1(0x132)]===_0x2b2188;_0x2f4132[_0x5c8ea1(0x13a)]({'lockKey':_0x3ce68e[_0x5c8ea1(0xf4)],'filePath':_0x3ce68e[_0x5c8ea1(0x148)],'remoteId':_0x4a17a3?.[_0x5c8ea1(0x13e)]??null,'mode':_0x4a17a3?.[_0x5c8ea1(0x13e)]?_0x5c8ea1(0x139):_0x5c8ea1(0xf8),'status':!_0x5e1ede&&_0x1359c2?_0x5c8ea1(0x12a):_0x5c8ea1(0x128)});}return{'method':_0x5c8ea1(0x129),'url':'/api/management/library/scripts/save','body':{'appCode':_0x302e20['appCode'],'force':_0x5e1ede,'files':_0x2f4132,'cacheClearAtRuntime':_0x2f4132[_0x5c8ea1(0x10b)](_0x5c5822=>_0x5c5822[_0x5c8ea1(0xfa)]===_0x5c8ea1(0x128)),'cacheClearAtRuntimeTimes':_0x2f4132[_0x5c8ea1(0x10b)](_0x2eb48c=>_0x2eb48c['status']==='would_push')?CACHE_CLEAR_ATTEMPTS:0x0},'description':_0x5c8ea1(0xf7)+_0x2f4132[_0x5c8ea1(0x116)]+'\x20local\x20BFF\x20script(s)\x20for\x20push\x20and\x20clear\x20runtime\x20cache\x20if\x20files\x20are\x20uploaded'};},async 'execute'(_0x38564d){const _0x55c563=a36_0xcb0b31,_0x3692b2=loadBffProjectConfig(_0x38564d[_0x55c563(0x119)]),_0x554f01=await readBffLockFile(_0x3692b2['lockFilePath']),{lockData:_0x56fb0b,appLock:_0x64f824}=ensureLockScope(_0x554f01??createEmptyBffLock(),_0x38564d['appCode'],_0x3692b2[_0x55c563(0x130)],_0x55c563(0x13a)),_0x3caa72=await getTargetFunctions(_0x3692b2,_0x38564d);if(_0x3caa72['length']===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':'No\x20local\x20BFF\x20functions\x20found.'};const _0x16320d=_0x38564d[_0x55c563(0x100)]('force'),_0x56782b=JSON[_0x55c563(0x12c)](JSON[_0x55c563(0x146)](_0x56fb0b)),_0x58a6a1=_0x56782b[_0x55c563(0x115)][_0x38564d[_0x55c563(0x119)]];if(!_0x58a6a1)throw new Error(_0x55c563(0x11a)+_0x38564d[_0x55c563(0x119)]+_0x55c563(0x133));const _0x1ed007=await buildHookMaps(_0x38564d[_0x55c563(0x119)],_0x38564d[_0x55c563(0x124)],_0x3caa72,_0x58a6a1),_0x4769a4=[],_0x2a4c42=[],_0x5e357f=[];for(const _0xa08a04 of _0x3caa72){const _0x6f6ecd=await computeFileHash(_0xa08a04[_0x55c563(0x148)]),_0x5310f4=_0x58a6a1[_0x55c563(0x10c)][_0xa08a04[_0x55c563(0xf4)]];if(!_0x16320d&&_0x5310f4&&_0x5310f4[_0x55c563(0x132)]===_0x6f6ecd){_0x2a4c42['push']({'lockKey':_0xa08a04[_0x55c563(0xf4)],'reason':_0x55c563(0x12a)});continue;}try{await uploadSingleFunction(_0x38564d['appCode'],_0xa08a04,_0x58a6a1,_0x1ed007);const _0x45d6d9=_0x58a6a1[_0x55c563(0x10c)][_0xa08a04[_0x55c563(0xf4)]];_0x4769a4['push']({'lockKey':_0xa08a04[_0x55c563(0xf4)],'remoteId':_0x45d6d9?.[_0x55c563(0x13e)]??0x0});}catch(_0x27621a){_0x5e357f['push']({'lockKey':_0xa08a04[_0x55c563(0xf4)],'error':_0x27621a instanceof Error?_0x27621a[_0x55c563(0x112)]:String(_0x27621a)});}}_0x58a6a1[_0x55c563(0x138)]=new Date()[_0x55c563(0x107)](),await writeBffLockFile(_0x3692b2['lockFilePath'],_0x56782b),await waitForUploadedLockEntries(_0x3692b2[_0x55c563(0xf6)],_0x38564d[_0x55c563(0x119)],_0x4769a4[_0x55c563(0x127)](_0x1760df=>_0x1760df[_0x55c563(0xf4)]));let _0x390baa={'attempted':![],'cleared':![]};if(_0x4769a4[_0x55c563(0x116)]>0x0)try{let _0x43fa79='';for(let _0x42665c=0x0;_0x42665c<CACHE_CLEAR_ATTEMPTS;_0x42665c+=0x1){_0x43fa79=await clearBffScriptCache(),_0x42665c<CACHE_CLEAR_ATTEMPTS-0x1&&await sleep(CACHE_CLEAR_INTERVAL_MS);}_0x390baa={'attempted':!![],'cleared':!![],'message':_0x43fa79||_0x55c563(0x137)};}catch(_0x167af3){_0x390baa={'attempted':!![],'cleared':![],'error':_0x167af3 instanceof Error?_0x167af3['message']:String(_0x167af3)};}const _0x3640e8=_0x5e357f[_0x55c563(0x116)]===0x0&&(_0x390baa[_0x55c563(0x118)]?_0x390baa[_0x55c563(0x13d)]:!![]),_0x5848b0=_0x390baa[_0x55c563(0x118)]?_0x390baa[_0x55c563(0x13d)]?'runtime\x20cache\x20cleared':_0x55c563(0x13b):_0x55c563(0xf2);return{'ok':_0x3640e8,'data':{'uploaded':_0x4769a4,'skipped':_0x2a4c42,'failed':_0x5e357f,'cacheClear':_0x390baa},'message':_0x55c563(0xf9)+_0x4769a4[_0x55c563(0x116)]+'\x20uploaded,\x20'+_0x2a4c42[_0x55c563(0x116)]+_0x55c563(0x135)+_0x5e357f[_0x55c563(0x116)]+'\x20failed,\x20'+_0x5848b0};}};async function getTargetFunctions(_0x1aaa80,_0x37e931){const _0x464e62=a36_0xcb0b31,_0x133a56=_0x37e931[_0x464e62(0x110)]('type'),_0x4eb142=_0x37e931[_0x464e62(0x110)](_0x464e62(0x11b)),_0x2fbd52=normalizeBffType(_0x133a56)??undefined;if(_0x4eb142&&!_0x2fbd52)throw CliErrors['validation'](_0x464e62(0x131));const _0x5efe0b=await scanLocalBffFunctions(_0x1aaa80,_0x2fbd52);if(_0x4eb142){const _0x1a07df=_0x5efe0b[_0x464e62(0x103)](_0x5bedf9=>_0x5bedf9[_0x464e62(0x11b)]===_0x4eb142);if(_0x1a07df['length']===0x0)throw CliErrors[_0x464e62(0x101)](_0x464e62(0x147)+_0x2fbd52+'/'+_0x4eb142);return _0x1a07df;}return _0x5efe0b;}async function buildHookMaps(_0x2c8fa5,_0x4ab35c,_0x2cee7f,_0x1f6387){const _0x1943ac=a36_0xcb0b31,_0x393c25=_0x2cee7f[_0x1943ac(0x10b)](_0x3ac100=>_0x3ac100[_0x1943ac(0x13c)]===_0x1943ac(0x108));if(!_0x393c25)return{'aliasToDatasetCode':new Map(),'datasetCodeToDataset':new Map()};const _0x6b172=loadAliasMap(_0x4ab35c,undefined,resolveApiFilePath(_0x4ab35c,_0x2c8fa5)),_0x5eb49b=new Map(_0x6b172[_0x1943ac(0x127)](_0xb333ec=>[_0xb333ec[_0x1943ac(0x105)],_0xb333ec['datasetCode']]));for(const _0x1656d6 of Object[_0x1943ac(0x113)](_0x1f6387['functions'])){_0x1656d6[_0x1943ac(0x105)]&&_0x1656d6[_0x1943ac(0x144)]&&!_0x5eb49b[_0x1943ac(0xff)](_0x1656d6[_0x1943ac(0x105)])&&_0x5eb49b[_0x1943ac(0xf3)](_0x1656d6[_0x1943ac(0x105)],_0x1656d6[_0x1943ac(0x144)]);}const _0x5dc76c=await listDatasets(_0x2c8fa5),_0x3beb2c=new Map(_0x5dc76c['map'](_0x244d76=>[_0x244d76[_0x1943ac(0x109)],_0x244d76]));return{'aliasToDatasetCode':_0x5eb49b,'datasetCodeToDataset':_0x3beb2c};}async function uploadSingleFunction(_0x29f533,_0x5257c0,_0xfda0ab,_0x35c0f5){const _0x39c3c1=a36_0xcb0b31,_0x244c56=await readFile(_0x5257c0[_0x39c3c1(0x148)],_0x39c3c1(0x10f)),_0x3a2603=await computeFileHash(_0x5257c0[_0x39c3c1(0x148)]),_0x2d168b=_0xfda0ab[_0x39c3c1(0x10c)][_0x5257c0['lockKey']];if(_0x2d168b?.[_0x39c3c1(0x13e)]&&_0x2d168b[_0x39c3c1(0x134)]==null)throw CliErrors[_0x39c3c1(0x101)](_0x5257c0[_0x39c3c1(0xf4)]+_0x39c3c1(0x102));let _0x4773e6=extractScriptDescription(_0x244c56);if(!_0x4773e6&&_0x2d168b?.[_0x39c3c1(0x13e)]){const _0x208659=await getBffScriptInfo(_0x2d168b['remoteId']);_0x4773e6=_0x208659[_0x39c3c1(0x11e)]||undefined;}const _0x38afcd={'appCode':_0x29f533,'functionName':_0x5257c0[_0x39c3c1(0x11b)],'scriptType':_0x5257c0[_0x39c3c1(0x13c)],'scriptContent':_0x244c56};if(_0x2d168b?.[_0x39c3c1(0x13e)])_0x38afcd['id']=_0x2d168b['remoteId'];if(_0x2d168b?.[_0x39c3c1(0x134)]!=null)_0x38afcd['version']=_0x2d168b[_0x39c3c1(0x134)];if(_0x4773e6)_0x38afcd[_0x39c3c1(0x11e)]=_0x4773e6;if(_0x5257c0[_0x39c3c1(0x13c)]===_0x39c3c1(0x108)){const _0x3ebed7=_0x5257c0['alias'];if(!_0x3ebed7||!_0x5257c0[_0x39c3c1(0x111)]||!_0x5257c0[_0x39c3c1(0x143)])throw CliErrors[_0x39c3c1(0x101)](_0x39c3c1(0xf5)+_0x5257c0[_0x39c3c1(0xf4)]);const _0x245229=_0x35c0f5['aliasToDatasetCode'][_0x39c3c1(0x106)](_0x3ebed7)??_0x2d168b?.['datasetCode']??_0x3ebed7,_0x25b63a=_0x35c0f5[_0x39c3c1(0x141)][_0x39c3c1(0x106)](_0x245229);if(!_0x25b63a)throw CliErrors[_0x39c3c1(0x101)](_0x39c3c1(0x12f)+_0x3ebed7+_0x39c3c1(0x145)+('Run\x20`'+CLI_BIN_NAME+_0x39c3c1(0xfc)));_0x38afcd[_0x39c3c1(0x12e)]=_0x25b63a['id'],_0x38afcd[_0x39c3c1(0x111)]=_0x5257c0[_0x39c3c1(0x111)],_0x38afcd[_0x39c3c1(0x143)]=_0x5257c0['functionNode'];}const _0x5253ea=await saveBffScript(_0x38afcd),_0x16eee=_0x5253ea['id'],_0x3b6004=_0x5253ea[_0x39c3c1(0xfb)]??await getBffScriptInfo(_0x16eee),_0x394798={'hash':_0x3a2603,'remoteId':_0x16eee,'version':_0x3b6004[_0x39c3c1(0x134)]};if(_0x5257c0[_0x39c3c1(0x13c)]==='HOOK'){const _0x106040=_0x5257c0[_0x39c3c1(0x105)],_0x1ac65e=_0x35c0f5['aliasToDatasetCode'][_0x39c3c1(0x106)](_0x106040)??_0x2d168b?.[_0x39c3c1(0x144)]??_0x106040;_0x35c0f5[_0x39c3c1(0x142)][_0x39c3c1(0xff)](_0x106040)?_0x394798[_0x39c3c1(0x105)]=_0x106040:_0x394798[_0x39c3c1(0x105)]=_0x2d168b?.['alias'],_0x394798[_0x39c3c1(0x144)]=_0x1ac65e,_0x394798['operationType']=_0x5257c0[_0x39c3c1(0x111)],_0x394798['functionNode']=_0x5257c0[_0x39c3c1(0x143)];}_0xfda0ab[_0x39c3c1(0x10c)][_0x5257c0[_0x39c3c1(0xf4)]]=_0x394798;}const LOCK_SETTLE_RETRY_COUNT=0x14,LOCK_SETTLE_DELAY_MS=0x64;async function waitForUploadedLockEntries(_0xd9ab2a,_0xe08d26,_0x5e4be9){const _0x13c121=a36_0xcb0b31;if(_0x5e4be9[_0x13c121(0x116)]===0x0)return;for(let _0x3ef9d0=0x0;_0x3ef9d0<LOCK_SETTLE_RETRY_COUNT;_0x3ef9d0+=0x1){const _0x24264d=await readBffLockFile(_0xd9ab2a),_0x3ab1e6=_0x24264d?.['apps']?.[_0xe08d26]?.[_0x13c121(0x10c)]??{},_0x592fbf=_0x5e4be9[_0x13c121(0x121)](_0x467611=>!!_0x3ab1e6[_0x467611]?.[_0x13c121(0x13e)]);if(_0x592fbf)return;await sleep(LOCK_SETTLE_DELAY_MS);}throw new Error('Lock\x20file\x20not\x20settled\x20after\x20push\x20for\x20'+_0x5e4be9[_0x13c121(0x136)](',\x20')+'.');}
1
+ const a36_0x4faabe=a36_0x204a;(function(_0x14b5b4,_0x32fcb3){const _0x369ff8=a36_0x204a,_0x2422b8=_0x14b5b4();while(!![]){try{const _0x275535=parseInt(_0x369ff8(0xaf))/0x1+parseInt(_0x369ff8(0xc2))/0x2+-parseInt(_0x369ff8(0xc1))/0x3+parseInt(_0x369ff8(0xd9))/0x4*(-parseInt(_0x369ff8(0xea))/0x5)+parseInt(_0x369ff8(0xb6))/0x6*(parseInt(_0x369ff8(0xb9))/0x7)+-parseInt(_0x369ff8(0xd2))/0x8+-parseInt(_0x369ff8(0xf8))/0x9;if(_0x275535===_0x32fcb3)break;else _0x2422b8['push'](_0x2422b8['shift']());}catch(_0x1cce3e){_0x2422b8['push'](_0x2422b8['shift']());}}}(a36_0x2892,0xeda6c));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets,clearBffScriptCache}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';function a36_0x204a(_0x544503,_0x2c810c){_0x544503=_0x544503-0xa9;const _0x289299=a36_0x2892();let _0x204ae0=_0x289299[_0x544503];return _0x204ae0;}import{sleep}from'../../utils/sleep.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';const CACHE_CLEAR_ATTEMPTS=0x2,CACHE_CLEAR_INTERVAL_MS=0x12c;export const bffPush={'service':'bff','command':a36_0x4faabe(0xdd),'description':a36_0x4faabe(0xbf),'risk':a36_0x4faabe(0xcf),'flags':[{'name':'type','type':a36_0x4faabe(0xc6),'description':a36_0x4faabe(0xf6),'enum':[a36_0x4faabe(0xd4),'ENDPOINT',a36_0x4faabe(0xd6)]},{'name':'name','type':a36_0x4faabe(0xc6),'description':'Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)'},{'name':'force','type':'boolean','description':a36_0x4faabe(0xe0)}],async 'dryRun'(_0x2c270d){const _0x446ee5=a36_0x4faabe,_0x1e5ad0=loadBffProjectConfig(_0x2c270d[_0x446ee5(0xfa)]),_0x5a1ce6=await readBffLockFile(_0x1e5ad0[_0x446ee5(0xe4)]),{appLock:_0x36fe63}=ensureLockScope(_0x5a1ce6??createEmptyBffLock(),_0x2c270d[_0x446ee5(0xfa)],_0x1e5ad0['scriptsRoot'],_0x446ee5(0xdd)),_0x4d43a0=await getTargetFunctions(_0x1e5ad0,_0x2c270d),_0x29b24f=_0x2c270d['bool'](_0x446ee5(0xf1)),_0x2af7c=[];for(const _0x5c3335 of _0x4d43a0){const _0x1ca159=await computeFileHash(_0x5c3335['filePath']),_0x955661=_0x36fe63['functions'][_0x5c3335[_0x446ee5(0xee)]],_0x5867ee=!!_0x955661&&_0x955661['hash']===_0x1ca159;_0x2af7c[_0x446ee5(0xdd)]({'lockKey':_0x5c3335[_0x446ee5(0xee)],'filePath':_0x5c3335[_0x446ee5(0xe7)],'remoteId':_0x955661?.[_0x446ee5(0xb4)]??null,'mode':_0x955661?.['remoteId']?_0x446ee5(0xc5):_0x446ee5(0xf0),'status':!_0x29b24f&&_0x5867ee?'unchanged':'would_push'});}return{'method':_0x446ee5(0xd7),'url':_0x446ee5(0xb7),'body':{'appCode':_0x2c270d[_0x446ee5(0xfa)],'force':_0x29b24f,'files':_0x2af7c,'cacheClearAtRuntime':_0x2af7c[_0x446ee5(0xac)](_0x212867=>_0x212867[_0x446ee5(0xda)]===_0x446ee5(0xaa)),'cacheClearAtRuntimeTimes':_0x2af7c[_0x446ee5(0xac)](_0x1c9269=>_0x1c9269['status']===_0x446ee5(0xaa))?CACHE_CLEAR_ATTEMPTS:0x0},'description':'Would\x20inspect\x20'+_0x2af7c[_0x446ee5(0xce)]+_0x446ee5(0xef)};},async 'execute'(_0x535a08){const _0x1316c5=a36_0x4faabe,_0x5efff5=loadBffProjectConfig(_0x535a08[_0x1316c5(0xfa)]),_0x78853c=await readBffLockFile(_0x5efff5[_0x1316c5(0xe4)]),{lockData:_0x4555ac,appLock:_0x214d56}=ensureLockScope(_0x78853c??createEmptyBffLock(),_0x535a08['appCode'],_0x5efff5[_0x1316c5(0xbd)],_0x1316c5(0xdd)),_0xf3ef60=await getTargetFunctions(_0x5efff5,_0x535a08);if(_0xf3ef60['length']===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0x1316c5(0xf4)};const _0x48ea6a=_0x535a08[_0x1316c5(0xdf)](_0x1316c5(0xf1)),_0x522b34=JSON[_0x1316c5(0xe2)](JSON[_0x1316c5(0xde)](_0x4555ac)),_0x46ece3=_0x522b34[_0x1316c5(0xc3)][_0x535a08[_0x1316c5(0xfa)]];if(!_0x46ece3)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x535a08[_0x1316c5(0xfa)]+_0x1316c5(0xfb));const _0x983fae=await buildHookMaps(_0x535a08[_0x1316c5(0xfa)],_0x535a08[_0x1316c5(0xed)],_0xf3ef60,_0x46ece3),_0xbda3f8=[],_0x38d8ab=[],_0x10376e=[];for(const _0x3905a2 of _0xf3ef60){const _0x11c196=await computeFileHash(_0x3905a2[_0x1316c5(0xe7)]),_0x42aa7d=_0x46ece3['functions'][_0x3905a2[_0x1316c5(0xee)]];if(!_0x48ea6a&&_0x42aa7d&&_0x42aa7d['hash']===_0x11c196){_0x38d8ab[_0x1316c5(0xdd)]({'lockKey':_0x3905a2[_0x1316c5(0xee)],'reason':_0x1316c5(0xdb)});continue;}try{await uploadSingleFunction(_0x535a08[_0x1316c5(0xfa)],_0x3905a2,_0x46ece3,_0x983fae);const _0x511f34=_0x46ece3['functions'][_0x3905a2[_0x1316c5(0xee)]];_0xbda3f8[_0x1316c5(0xdd)]({'lockKey':_0x3905a2['lockKey'],'remoteId':_0x511f34?.[_0x1316c5(0xb4)]??0x0});}catch(_0x25f5a4){_0x10376e['push']({'lockKey':_0x3905a2[_0x1316c5(0xee)],'error':_0x25f5a4 instanceof Error?_0x25f5a4[_0x1316c5(0xd5)]:String(_0x25f5a4)});}}_0x46ece3[_0x1316c5(0xcc)]=new Date()[_0x1316c5(0xa9)](),await writeBffLockFile(_0x5efff5[_0x1316c5(0xe4)],_0x522b34),await waitForUploadedLockEntries(_0x5efff5['lockFilePath'],_0x535a08[_0x1316c5(0xfa)],_0xbda3f8['map'](_0x5f35ad=>_0x5f35ad[_0x1316c5(0xee)]));let _0x493077={'attempted':![],'cleared':![]};if(_0xbda3f8['length']>0x0)try{let _0x48b2a9='';for(let _0x3771cf=0x0;_0x3771cf<CACHE_CLEAR_ATTEMPTS;_0x3771cf+=0x1){_0x48b2a9=await clearBffScriptCache(),_0x3771cf<CACHE_CLEAR_ATTEMPTS-0x1&&await sleep(CACHE_CLEAR_INTERVAL_MS);}_0x493077={'attempted':!![],'cleared':!![],'message':_0x48b2a9||_0x1316c5(0xba)};}catch(_0x150856){_0x493077={'attempted':!![],'cleared':![],'error':_0x150856 instanceof Error?_0x150856[_0x1316c5(0xd5)]:String(_0x150856)};}const _0x3b9e9e=_0x10376e['length']===0x0&&(_0x493077['attempted']?_0x493077[_0x1316c5(0xfc)]:!![]),_0x5ab5bb=_0x493077[_0x1316c5(0xec)]?_0x493077['cleared']?'runtime\x20cache\x20cleared':_0x1316c5(0xbe):'runtime\x20cache\x20not\x20needed';return{'ok':_0x3b9e9e,'data':{'uploaded':_0xbda3f8,'skipped':_0x38d8ab,'failed':_0x10376e,'cacheClear':_0x493077},'message':_0x1316c5(0xb8)+_0xbda3f8[_0x1316c5(0xce)]+_0x1316c5(0xf7)+_0x38d8ab[_0x1316c5(0xce)]+_0x1316c5(0xf3)+_0x10376e['length']+_0x1316c5(0xb5)+_0x5ab5bb};}};async function getTargetFunctions(_0x236952,_0x48b5dd){const _0x105d3a=a36_0x4faabe,_0x45d1b7=_0x48b5dd[_0x105d3a(0xdc)](_0x105d3a(0xb3)),_0x44651f=_0x48b5dd[_0x105d3a(0xdc)](_0x105d3a(0xb0)),_0x1d1c8c=normalizeBffType(_0x45d1b7)??undefined;if(_0x44651f&&!_0x1d1c8c)throw CliErrors[_0x105d3a(0xca)](_0x105d3a(0xc0));const _0x318319=await scanLocalBffFunctions(_0x236952,_0x1d1c8c);if(_0x44651f){const _0x322da6=_0x318319[_0x105d3a(0xe3)](_0xe187bb=>_0xe187bb[_0x105d3a(0xb0)]===_0x44651f);if(_0x322da6['length']===0x0)throw CliErrors[_0x105d3a(0xca)](_0x105d3a(0xeb)+_0x1d1c8c+'/'+_0x44651f);return _0x322da6;}return _0x318319;}async function buildHookMaps(_0x378c2f,_0x1f16d5,_0x5c3798,_0x20411c){const _0x53133e=a36_0x4faabe,_0x3cafac=_0x5c3798[_0x53133e(0xac)](_0x41b406=>_0x41b406[_0x53133e(0xb3)]===_0x53133e(0xd6));if(!_0x3cafac)return{'aliasToDatasetCode':new Map(),'datasetCodeToDataset':new Map()};const _0x5d7553=loadAliasMap(_0x1f16d5,undefined,resolveApiFilePath(_0x1f16d5,_0x378c2f)),_0x40b424=new Map(_0x5d7553[_0x53133e(0xd0)](_0x4df4d0=>[_0x4df4d0[_0x53133e(0xe5)],_0x4df4d0['datasetCode']]));for(const _0x47545a of Object[_0x53133e(0xe6)](_0x20411c[_0x53133e(0xd3)])){_0x47545a[_0x53133e(0xe5)]&&_0x47545a['datasetCode']&&!_0x40b424[_0x53133e(0xcb)](_0x47545a[_0x53133e(0xe5)])&&_0x40b424[_0x53133e(0xc9)](_0x47545a[_0x53133e(0xe5)],_0x47545a['datasetCode']);}const _0x3b3752=await listDatasets(_0x378c2f),_0x1c26e2=new Map(_0x3b3752[_0x53133e(0xd0)](_0xae1675=>[_0xae1675[_0x53133e(0xf5)],_0xae1675]));return{'aliasToDatasetCode':_0x40b424,'datasetCodeToDataset':_0x1c26e2};}async function uploadSingleFunction(_0x1a1610,_0x226b00,_0xb3195,_0x34d07a){const _0x5a30ec=a36_0x4faabe,_0x59745=await readFile(_0x226b00[_0x5a30ec(0xe7)],'utf8'),_0x4879c2=await computeFileHash(_0x226b00[_0x5a30ec(0xe7)]),_0x284f0a=_0xb3195['functions'][_0x226b00[_0x5a30ec(0xee)]];if(_0x284f0a?.[_0x5a30ec(0xb4)]&&_0x284f0a[_0x5a30ec(0xab)]==null)throw CliErrors[_0x5a30ec(0xca)](_0x226b00[_0x5a30ec(0xee)]+_0x5a30ec(0xe9));let _0x2b86a6=extractScriptDescription(_0x59745);if(!_0x2b86a6&&_0x284f0a?.['remoteId']){const _0x16924e=await getBffScriptInfo(_0x284f0a[_0x5a30ec(0xb4)]);_0x2b86a6=_0x16924e[_0x5a30ec(0xc8)]||undefined;}const _0xeb6c09={'appCode':_0x1a1610,'functionName':_0x226b00[_0x5a30ec(0xb0)],'scriptType':_0x226b00['type'],'scriptContent':_0x59745};if(_0x284f0a?.[_0x5a30ec(0xb4)])_0xeb6c09['id']=_0x284f0a[_0x5a30ec(0xb4)];if(_0x284f0a?.['version']!=null)_0xeb6c09[_0x5a30ec(0xab)]=_0x284f0a[_0x5a30ec(0xab)];if(_0x2b86a6)_0xeb6c09[_0x5a30ec(0xc8)]=_0x2b86a6;if(_0x226b00[_0x5a30ec(0xb3)]==='HOOK'){const _0x1a80ae=_0x226b00[_0x5a30ec(0xe5)];if(!_0x1a80ae||!_0x226b00[_0x5a30ec(0xd8)]||!_0x226b00[_0x5a30ec(0xd1)])throw CliErrors[_0x5a30ec(0xca)](_0x5a30ec(0xe1)+_0x226b00[_0x5a30ec(0xee)]);const _0x2f3511=_0x34d07a['aliasToDatasetCode'][_0x5a30ec(0xc4)](_0x1a80ae)??_0x284f0a?.[_0x5a30ec(0xb1)]??_0x1a80ae,_0x512dba=_0x34d07a[_0x5a30ec(0xe8)]['get'](_0x2f3511);if(!_0x512dba)throw CliErrors[_0x5a30ec(0xca)](_0x5a30ec(0xcd)+_0x1a80ae+_0x5a30ec(0xbc)+(_0x5a30ec(0xf9)+CLI_BIN_NAME+_0x5a30ec(0xf2)));_0xeb6c09[_0x5a30ec(0xbb)]=_0x512dba['id'],_0xeb6c09[_0x5a30ec(0xd8)]=_0x226b00[_0x5a30ec(0xd8)],_0xeb6c09[_0x5a30ec(0xd1)]=_0x226b00[_0x5a30ec(0xd1)];}const _0x2bae9a=await saveBffScript(_0xeb6c09),_0x3cf652=_0x2bae9a['id'],_0x25e558=_0x2bae9a['script']??await getBffScriptInfo(_0x3cf652),_0x3c685e={'hash':_0x4879c2,'remoteId':_0x3cf652,'version':_0x25e558[_0x5a30ec(0xab)]};if(_0x226b00['type']===_0x5a30ec(0xd6)){const _0x34eb9a=_0x226b00[_0x5a30ec(0xe5)],_0x325108=_0x34d07a[_0x5a30ec(0xad)][_0x5a30ec(0xc4)](_0x34eb9a)??_0x284f0a?.['datasetCode']??_0x34eb9a;_0x34d07a[_0x5a30ec(0xad)][_0x5a30ec(0xcb)](_0x34eb9a)?_0x3c685e[_0x5a30ec(0xe5)]=_0x34eb9a:_0x3c685e[_0x5a30ec(0xe5)]=_0x284f0a?.[_0x5a30ec(0xe5)],_0x3c685e[_0x5a30ec(0xb1)]=_0x325108,_0x3c685e['operationType']=_0x226b00[_0x5a30ec(0xd8)],_0x3c685e[_0x5a30ec(0xd1)]=_0x226b00[_0x5a30ec(0xd1)];}_0xb3195[_0x5a30ec(0xd3)][_0x226b00[_0x5a30ec(0xee)]]=_0x3c685e;}function a36_0x2892(){const _0xde4f74=['/api/management/library/scripts/save','Push\x20complete:\x20','112RZJZUt','Runtime\x20script\x20cache\x20cleared.','datasetId','\x22.\x20','scriptsRoot','runtime\x20cache\x20clear\x20failed','Push\x20local\x20Backend\x20Function\x20scripts\x20to\x20remote','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','1620573rHbDbu','2199746QvWjyc','apps','get','update','string','join','description','set','validation','has','lastSync','Cannot\x20resolve\x20dataset\x20for\x20\x22','length','write','map','functionNode','819256SUPmJh','functions','COMMON','message','HOOK','POST','operationType','396236ZzmLiY','status','unchanged','str','push','stringify','bool','Force\x20push\x20ignoring\x20hash\x20protection','Incomplete\x20HOOK\x20path:\x20','parse','filter','lockFilePath','alias','values','filePath','datasetCodeToDataset',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','75ZztJmj','Local\x20function\x20not\x20found:\x20','attempted','apiDir','lockKey','\x20local\x20Backend\x20Function\x20script(s)\x20for\x20push\x20and\x20clear\x20runtime\x20cache\x20if\x20files\x20are\x20uploaded','create','force','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','\x20skipped,\x20','No\x20local\x20Backend\x20Function\x20scripts\x20found.','code','Push\x20only\x20this\x20script\x20type','\x20uploaded,\x20','7558146OMfWnm','Run\x20`','appCode','\x22\x20not\x20found\x20after\x20ensureLockScope.','cleared','toISOString','would_push','version','some','aliasToDatasetCode','Lock\x20file\x20not\x20settled\x20after\x20push\x20for\x20','1719184agTLvX','name','datasetCode','every','type','remoteId','\x20failed,\x20','420990NtDEmO'];a36_0x2892=function(){return _0xde4f74;};return a36_0x2892();}const LOCK_SETTLE_RETRY_COUNT=0x14,LOCK_SETTLE_DELAY_MS=0x64;async function waitForUploadedLockEntries(_0x22a889,_0x4f363e,_0x2bea71){const _0x4fe587=a36_0x4faabe;if(_0x2bea71['length']===0x0)return;for(let _0x23ca7c=0x0;_0x23ca7c<LOCK_SETTLE_RETRY_COUNT;_0x23ca7c+=0x1){const _0x184459=await readBffLockFile(_0x22a889),_0x72bdd8=_0x184459?.[_0x4fe587(0xc3)]?.[_0x4f363e]?.[_0x4fe587(0xd3)]??{},_0x1bdf9f=_0x2bea71[_0x4fe587(0xb2)](_0x51f97d=>!!_0x72bdd8[_0x51f97d]?.['remoteId']);if(_0x1bdf9f)return;await sleep(LOCK_SETTLE_DELAY_MS);}throw new Error(_0x4fe587(0xae)+_0x2bea71[_0x4fe587(0xc7)](',\x20')+'.');}
@@ -1 +1 @@
1
- const a37_0x48db76=a37_0x144a;(function(_0xb2ad7a,_0x557d0f){const _0x51fd35=a37_0x144a,_0x550632=_0xb2ad7a();while(!![]){try{const _0x335479=-parseInt(_0x51fd35(0x19c))/0x1*(parseInt(_0x51fd35(0x1a9))/0x2)+-parseInt(_0x51fd35(0x1a5))/0x3+-parseInt(_0x51fd35(0x1b8))/0x4+-parseInt(_0x51fd35(0x1aa))/0x5+parseInt(_0x51fd35(0x1b3))/0x6*(-parseInt(_0x51fd35(0x19b))/0x7)+parseInt(_0x51fd35(0x1a8))/0x8+-parseInt(_0x51fd35(0x19e))/0x9*(-parseInt(_0x51fd35(0x1b9))/0xa);if(_0x335479===_0x557d0f)break;else _0x550632['push'](_0x550632['shift']());}catch(_0x1a88c5){_0x550632['push'](_0x550632['shift']());}}}(a37_0x113d,0x3f4bb));import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a37_0x113d(){const _0x541d34=['length','All\x20BFF\x20scripts\x20are\x20in\x20sync.','24rVGTnk','functions','status','read','has','375388ptIykf','590QtKXGq','apiDir','appCode','bff','hash','all','556850wYKMgn','11XgduXy','remote','221679sqVBGI','alias','map','bool','\x20unchanged','\x20modified,\x20','lockKey','843477jJlymg','lockFilePath','filePath','3304008jMWvrN','87938NWNHgi','2150530nFbRMm','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','datasetCode','\x20remote-only','push','\x20added,\x20','boolean'];a37_0x113d=function(){return _0x541d34;};return a37_0x113d();}import{createHookLocationMap,resolveRemoteScriptTarget,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';function a37_0x144a(_0x1e783d,_0x37d784){_0x1e783d=_0x1e783d-0x198;const _0x113d6c=a37_0x113d();let _0x144afd=_0x113d6c[_0x1e783d];return _0x144afd;}import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';export const bffStatus={'service':a37_0x48db76(0x198),'command':a37_0x48db76(0x1b5),'description':a37_0x48db76(0x1ab),'risk':a37_0x48db76(0x1b6),'flags':[{'name':a37_0x48db76(0x19d),'type':a37_0x48db76(0x1b0),'description':'Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally'}],async 'execute'(_0x3b3221){const _0x2b1bd0=a37_0x48db76,_0x58baf0=loadBffProjectConfig(_0x3b3221['appCode']),_0x5cfab1=await readBffLockFile(_0x58baf0[_0x2b1bd0(0x1a6)]),{appLock:_0x2f2b04}=ensureLockScope(_0x5cfab1??createEmptyBffLock(),_0x3b3221[_0x2b1bd0(0x1bb)],_0x58baf0['scriptsRoot'],_0x2b1bd0(0x1b5)),_0x1309b3=await scanLocalBffFunctions(_0x58baf0),_0x2243ae=[],_0x1ad177=[],_0x1d7328=[];for(const _0x52da08 of _0x1309b3){const _0x3d1aca=await computeFileHash(_0x52da08[_0x2b1bd0(0x1a7)]),_0x4de100=_0x2f2b04[_0x2b1bd0(0x1b4)][_0x52da08[_0x2b1bd0(0x1a4)]];if(!_0x4de100)_0x2243ae[_0x2b1bd0(0x1ae)](_0x52da08[_0x2b1bd0(0x1a4)]);else _0x4de100[_0x2b1bd0(0x199)]!==_0x3d1aca?_0x1ad177[_0x2b1bd0(0x1ae)](_0x52da08[_0x2b1bd0(0x1a4)]):_0x1d7328[_0x2b1bd0(0x1ae)](_0x52da08[_0x2b1bd0(0x1a4)]);}const _0x33b7b1=[];if(_0x3b3221[_0x2b1bd0(0x1a1)](_0x2b1bd0(0x19d))){const _0x4bafa4=loadAliasMap(_0x3b3221[_0x2b1bd0(0x1ba)],undefined,resolveApiFilePath(_0x3b3221[_0x2b1bd0(0x1ba)],_0x3b3221[_0x2b1bd0(0x1bb)])),_0x28d6cc=new Map(_0x4bafa4[_0x2b1bd0(0x1a0)](_0x218648=>[_0x218648[_0x2b1bd0(0x1ac)],_0x218648[_0x2b1bd0(0x19f)]])),[_0x28c72b,_0x5b62b2]=await Promise[_0x2b1bd0(0x19a)]([listBffScripts(_0x3b3221[_0x2b1bd0(0x1bb)]),getBffScriptStatistics(_0x3b3221['appCode'])]),_0x466660=createHookLocationMap(_0x5b62b2),_0x1105c2=new Set(_0x1309b3[_0x2b1bd0(0x1a0)](_0xfd3a7f=>_0xfd3a7f['lockKey']));for(const _0xd1b78b of _0x28c72b){const _0x3050bc=resolveRemoteScriptTarget(_0x58baf0,_0xd1b78b,_0x466660,_0x2f2b04[_0x2b1bd0(0x1b4)],_0x28d6cc);_0x3050bc&&!_0x1105c2[_0x2b1bd0(0x1b7)](_0x3050bc[_0x2b1bd0(0x1a4)])&&_0x33b7b1[_0x2b1bd0(0x1ae)](_0x3050bc['lockKey']);}}const _0x55eda2=_0x2243ae[_0x2b1bd0(0x1b1)]===0x0&&_0x1ad177['length']===0x0&&_0x33b7b1[_0x2b1bd0(0x1b1)]===0x0;return{'ok':!![],'data':{'added':_0x2243ae,'modified':_0x1ad177,'unchanged':_0x1d7328,'remoteOnly':_0x33b7b1},'message':_0x55eda2?_0x2b1bd0(0x1b2):_0x2243ae['length']+_0x2b1bd0(0x1af)+_0x1ad177[_0x2b1bd0(0x1b1)]+_0x2b1bd0(0x1a3)+_0x1d7328[_0x2b1bd0(0x1b1)]+_0x2b1bd0(0x1a2)+(_0x33b7b1[_0x2b1bd0(0x1b1)]>0x0?',\x20'+_0x33b7b1[_0x2b1bd0(0x1b1)]+_0x2b1bd0(0x1ad):'')};}};
1
+ const a37_0x1b76e1=a37_0x18c7;(function(_0x434379,_0x19c7b9){const _0x13d600=a37_0x18c7,_0x1c5a2d=_0x434379();while(!![]){try{const _0x2d673a=-parseInt(_0x13d600(0x178))/0x1*(parseInt(_0x13d600(0x179))/0x2)+-parseInt(_0x13d600(0x173))/0x3*(parseInt(_0x13d600(0x15f))/0x4)+parseInt(_0x13d600(0x17b))/0x5*(-parseInt(_0x13d600(0x166))/0x6)+parseInt(_0x13d600(0x16b))/0x7*(-parseInt(_0x13d600(0x15e))/0x8)+parseInt(_0x13d600(0x160))/0x9+parseInt(_0x13d600(0x15c))/0xa*(parseInt(_0x13d600(0x17d))/0xb)+-parseInt(_0x13d600(0x162))/0xc*(-parseInt(_0x13d600(0x16c))/0xd);if(_0x2d673a===_0x19c7b9)break;else _0x1c5a2d['push'](_0x1c5a2d['shift']());}catch(_0x2545fe){_0x1c5a2d['push'](_0x1c5a2d['shift']());}}}(a37_0x3440,0x66513));import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';function a37_0x3440(){const _0x12afa5=['lockKey','263269xGLwsd','2aKGLVI','\x20remote-only','268620ARxlVS','appCode','2236542iLDhyT','status','lockFilePath','boolean','10XatIhd','push','781800dDESTm','36620HsAbpl','6857055kPzccW','bff','156dStgjm','all','functions','\x20unchanged','30HlZAEc','\x20modified,\x20','alias','scriptsRoot','Check\x20local\x20Backend\x20Function\x20sync\x20status\x20against\x20lock\x20file','14xmfnTp','400933GSnzMx','map','filePath','bool','length','hash','All\x20Backend\x20Function\x20scripts\x20are\x20in\x20sync.','72ujsvwN','apiDir','remote','\x20added,\x20'];a37_0x3440=function(){return _0x12afa5;};return a37_0x3440();}function a37_0x18c7(_0x58b459,_0x3a7028){_0x58b459=_0x58b459-0x159;const _0x3440ef=a37_0x3440();let _0x18c755=_0x3440ef[_0x58b459];return _0x18c755;}import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,resolveRemoteScriptTarget,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';export const bffStatus={'service':a37_0x1b76e1(0x161),'command':'status','description':a37_0x1b76e1(0x16a),'risk':'read','flags':[{'name':'remote','type':a37_0x1b76e1(0x15b),'description':'Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally'}],async 'execute'(_0x1e8b7e){const _0x33cff4=a37_0x1b76e1,_0x520a43=loadBffProjectConfig(_0x1e8b7e[_0x33cff4(0x17c)]),_0x3e5305=await readBffLockFile(_0x520a43[_0x33cff4(0x15a)]),{appLock:_0x4ecc7f}=ensureLockScope(_0x3e5305??createEmptyBffLock(),_0x1e8b7e[_0x33cff4(0x17c)],_0x520a43[_0x33cff4(0x169)],_0x33cff4(0x159)),_0x22201c=await scanLocalBffFunctions(_0x520a43),_0x55e26a=[],_0x58bcba=[],_0x29f30e=[];for(const _0x33e39a of _0x22201c){const _0x14ae46=await computeFileHash(_0x33e39a[_0x33cff4(0x16e)]),_0x2b2970=_0x4ecc7f[_0x33cff4(0x164)][_0x33e39a[_0x33cff4(0x177)]];if(!_0x2b2970)_0x55e26a['push'](_0x33e39a[_0x33cff4(0x177)]);else _0x2b2970[_0x33cff4(0x171)]!==_0x14ae46?_0x58bcba[_0x33cff4(0x15d)](_0x33e39a['lockKey']):_0x29f30e[_0x33cff4(0x15d)](_0x33e39a[_0x33cff4(0x177)]);}const _0x4ea309=[];if(_0x1e8b7e[_0x33cff4(0x16f)](_0x33cff4(0x175))){const _0x55842a=loadAliasMap(_0x1e8b7e[_0x33cff4(0x174)],undefined,resolveApiFilePath(_0x1e8b7e[_0x33cff4(0x174)],_0x1e8b7e[_0x33cff4(0x17c)])),_0x487069=new Map(_0x55842a[_0x33cff4(0x16d)](_0x5e79c3=>[_0x5e79c3['datasetCode'],_0x5e79c3[_0x33cff4(0x168)]])),[_0x326abb,_0x518c93]=await Promise[_0x33cff4(0x163)]([listBffScripts(_0x1e8b7e[_0x33cff4(0x17c)]),getBffScriptStatistics(_0x1e8b7e[_0x33cff4(0x17c)])]),_0x46fb3b=createHookLocationMap(_0x518c93),_0xb57a27=new Set(_0x22201c['map'](_0x581f94=>_0x581f94[_0x33cff4(0x177)]));for(const _0x1716b1 of _0x326abb){const _0x4d3f58=resolveRemoteScriptTarget(_0x520a43,_0x1716b1,_0x46fb3b,_0x4ecc7f['functions'],_0x487069);_0x4d3f58&&!_0xb57a27['has'](_0x4d3f58[_0x33cff4(0x177)])&&_0x4ea309[_0x33cff4(0x15d)](_0x4d3f58['lockKey']);}}const _0x8ee5a5=_0x55e26a['length']===0x0&&_0x58bcba[_0x33cff4(0x170)]===0x0&&_0x4ea309[_0x33cff4(0x170)]===0x0;return{'ok':!![],'data':{'added':_0x55e26a,'modified':_0x58bcba,'unchanged':_0x29f30e,'remoteOnly':_0x4ea309},'message':_0x8ee5a5?_0x33cff4(0x172):_0x55e26a[_0x33cff4(0x170)]+_0x33cff4(0x176)+_0x58bcba['length']+_0x33cff4(0x167)+_0x29f30e[_0x33cff4(0x170)]+_0x33cff4(0x165)+(_0x4ea309[_0x33cff4(0x170)]>0x0?',\x20'+_0x4ea309[_0x33cff4(0x170)]+_0x33cff4(0x17a):'')};}};
@@ -1 +1 @@
1
- function a38_0x1d49(_0x4773e1,_0x1cdc9a){_0x4773e1=_0x4773e1-0x196;const _0x171346=a38_0x1713();let _0x1d4979=_0x171346[_0x4773e1];return _0x1d4979;}const a38_0x53333f=a38_0x1d49;(function(_0x372507,_0x4ea19d){const _0x2a3e29=a38_0x1d49,_0x362c34=_0x372507();while(!![]){try{const _0x467811=-parseInt(_0x2a3e29(0x1a6))/0x1*(parseInt(_0x2a3e29(0x1af))/0x2)+-parseInt(_0x2a3e29(0x1a3))/0x3*(-parseInt(_0x2a3e29(0x1a1))/0x4)+parseInt(_0x2a3e29(0x1b2))/0x5+parseInt(_0x2a3e29(0x19c))/0x6+parseInt(_0x2a3e29(0x1a7))/0x7*(parseInt(_0x2a3e29(0x1b3))/0x8)+-parseInt(_0x2a3e29(0x1b7))/0x9+parseInt(_0x2a3e29(0x19b))/0xa*(-parseInt(_0x2a3e29(0x1b1))/0xb);if(_0x467811===_0x4ea19d)break;else _0x362c34['push'](_0x362c34['shift']());}catch(_0x18e9b5){_0x362c34['push'](_0x362c34['shift']());}}}(a38_0x1713,0xbe670));import{CliErrors}from'../../errors.js';import{installBuiltinSkill}from'../../skills/builtin-skill.js';import{logger}from'../../utils/logger.js';function a38_0x1713(){const _0x190f54=['repairCommand','installedPath','code','info','14650OZPzbs','7920738YXVsUQ','apiError','setLogPath','CLI\x20Built-in\x20Skill\x20','error','1696NkUClX','Installing\x20CLI\x20Built-in\x20Skill\x20from\x20the\x20current\x20package.','9708iILwTl','read','log','17868rSWxoU','2123723mFUFVs','Resolve\x20the\x20Skills\x20CLI\x20installation\x20issue\x20and\x20run:\x20','skillVersion','changed','\x20at\x20','cli-skill-install','cwd','inherit','52fqiBtb','Install\x20or\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill','14234xPfIkz','1334865ZwrCfN','16KECXvB',']:\x20','\x20via\x20skills@latest','\x20installed','3831948LMEHHU','nonInteractive'];a38_0x1713=function(){return _0x190f54;};return a38_0x1713();}export const cliSkillDefinitions=[{'service':'cli-skill','command':'install','description':a38_0x53333f(0x1b0),'risk':a38_0x53333f(0x1a4),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x3a8ec7){const _0x2f2c2a=a38_0x53333f;logger[_0x2f2c2a(0x19e)](process[_0x2f2c2a(0x1ad)]()),logger[_0x2f2c2a(0x19a)](_0x2f2c2a(0x1ac),_0x2f2c2a(0x1a2));const _0x4b6689=installBuiltinSkill({'stdio':_0x3a8ec7[_0x2f2c2a(0x196)]?'pipe':_0x2f2c2a(0x1ae)});if(!_0x4b6689['ok'])throw CliErrors[_0x2f2c2a(0x19d)]('Built-in\x20Skill\x20install\x20failed\x20['+_0x4b6689[_0x2f2c2a(0x199)]+_0x2f2c2a(0x1b4)+(_0x4b6689[_0x2f2c2a(0x1a0)]||'unknown'),_0x2f2c2a(0x1a8)+_0x4b6689[_0x2f2c2a(0x197)]);return console[_0x2f2c2a(0x1a5)](_0x4b6689[_0x2f2c2a(0x1aa)]?_0x2f2c2a(0x19f)+_0x4b6689[_0x2f2c2a(0x1a9)]+_0x2f2c2a(0x1b6)+(_0x4b6689[_0x2f2c2a(0x198)]?'\x20at\x20'+_0x4b6689[_0x2f2c2a(0x198)]:_0x2f2c2a(0x1b5)):_0x2f2c2a(0x19f)+_0x4b6689[_0x2f2c2a(0x1a9)]+'\x20is\x20already\x20current'+(_0x4b6689[_0x2f2c2a(0x198)]?_0x2f2c2a(0x1ab)+_0x4b6689['installedPath']:'')),{'ok':!![]};}}];
1
+ function a38_0x195f(_0x4ff73f,_0x16c5df){_0x4ff73f=_0x4ff73f-0x1f3;const _0x256057=a38_0x2560();let _0x195fa8=_0x256057[_0x4ff73f];return _0x195fa8;}const a38_0x37f79b=a38_0x195f;(function(_0x3c4287,_0x40c2a7){const _0xe651ac=a38_0x195f,_0x4a7f42=_0x3c4287();while(!![]){try{const _0x4bc45f=-parseInt(_0xe651ac(0x218))/0x1+parseInt(_0xe651ac(0x213))/0x2*(-parseInt(_0xe651ac(0x20d))/0x3)+-parseInt(_0xe651ac(0x20e))/0x4*(parseInt(_0xe651ac(0x1f3))/0x5)+-parseInt(_0xe651ac(0x215))/0x6*(parseInt(_0xe651ac(0x214))/0x7)+parseInt(_0xe651ac(0x20a))/0x8*(-parseInt(_0xe651ac(0x208))/0x9)+-parseInt(_0xe651ac(0x207))/0xa*(-parseInt(_0xe651ac(0x1f4))/0xb)+parseInt(_0xe651ac(0x210))/0xc*(parseInt(_0xe651ac(0x20b))/0xd);if(_0x4bc45f===_0x40c2a7)break;else _0x4a7f42['push'](_0x4a7f42['shift']());}catch(_0xf79cb){_0x4a7f42['push'](_0x4a7f42['shift']());}}}(a38_0x2560,0x4b3f3));import{CliErrors}from'../../errors.js';function a38_0x2560(){const _0x56d7f2=['4063110WUAasU','9ewnIZB','code','4801256OWFVhy','351273Zfhjli','\x20at\x20','953283gVupjk','205804ECNhQx','nonInteractive','876OPyVWm','apiError','Built-in\x20Skill\x20install\x20failed\x20[','2tjOPWE','2552221rAwgmx','6mIaikr','\x20via\x20skills@latest','install','273602DWiMWR','error','50nEBMSR','11vYKLXj','log','repairCommand','installedPath','CLI\x20Built-in\x20Skill\x20','info','Resolve\x20the\x20Skills\x20CLI\x20installation\x20issue\x20and\x20run:\x20','cli-skill-install',']:\x20','skillVersion','setLogPath','unknown','Install\x20or\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill','\x20installed','cli-skill','changed','read','\x20is\x20already\x20current','cwd'];a38_0x2560=function(){return _0x56d7f2;};return a38_0x2560();}import{installBuiltinSkill}from'../../skills/builtin-skill.js';import{logger}from'../../utils/logger.js';export const cliSkillDefinitions=[{'service':a38_0x37f79b(0x202),'command':a38_0x37f79b(0x217),'description':a38_0x37f79b(0x200),'risk':a38_0x37f79b(0x204),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x26d1d1){const _0x9bcaac=a38_0x37f79b;logger[_0x9bcaac(0x1fe)](process[_0x9bcaac(0x206)]()),logger[_0x9bcaac(0x1f9)](_0x9bcaac(0x1fb),'Installing\x20CLI\x20Built-in\x20Skill\x20from\x20the\x20current\x20package.');const _0x1337d5=installBuiltinSkill({'stdio':_0x26d1d1[_0x9bcaac(0x20f)]?'pipe':'inherit'});if(!_0x1337d5['ok'])throw CliErrors[_0x9bcaac(0x211)](_0x9bcaac(0x212)+_0x1337d5[_0x9bcaac(0x209)]+_0x9bcaac(0x1fc)+(_0x1337d5[_0x9bcaac(0x219)]||_0x9bcaac(0x1ff)),_0x9bcaac(0x1fa)+_0x1337d5[_0x9bcaac(0x1f6)]);return console[_0x9bcaac(0x1f5)](_0x1337d5[_0x9bcaac(0x203)]?_0x9bcaac(0x1f8)+_0x1337d5[_0x9bcaac(0x1fd)]+_0x9bcaac(0x201)+(_0x1337d5[_0x9bcaac(0x1f7)]?_0x9bcaac(0x20c)+_0x1337d5[_0x9bcaac(0x1f7)]:_0x9bcaac(0x216)):_0x9bcaac(0x1f8)+_0x1337d5['skillVersion']+_0x9bcaac(0x205)+(_0x1337d5[_0x9bcaac(0x1f7)]?_0x9bcaac(0x20c)+_0x1337d5['installedPath']:'')),{'ok':!![]};}}];
@@ -1 +1 @@
1
- function a39_0xa816(){const _0x5ac477=['@latest','validation','\x20install\x20-g\x20','boolean','slice','Unable\x20to\x20check\x20for\x20updates\x20(network\x20error)','Update\x20failed','pipe','4078600XJByCU','info','state','Updating\x20via\x20','message','Use\x20a\x20full\x20semver\x20such\x20as\x202.1.6\x20or\x202.1.6-beta.1.','1533879vLgQWl','succeed','green','56531wgVdBV','Update\x20available:\x20','\x20\x20CLI\x20Built-in\x20Skill\x20repair\x20failed\x20[','filter','\x20→\x20','Invalid\x20version:\x20','Checking\x20for\x20updates...','\x20\x20Try\x20manually:\x20','5412757QZGIUD','string','red','4XTCCCa','unknown','str','Install\x20the\x20version\x20from\x20npm\x20beta\x20dist-tag','start',',\x20state\x20','skillVersion','json','1736876SkenQE','Updated\x20to\x20v','gray','Already\x20up\x20to\x20date\x20(v','read','warn','code','962540VNKGLW','\x20\x20Built-in\x20Skill\x20verification\x20failed:\x20','version','Beta\x20version:\x20','current','--beta\x20and\x20--version\x20cannot\x20be\x20used\x20together.','\x20\x20CLI\x20Built-in\x20Skill\x20','\x20\x20Restart\x20your\x20terminal\x20to\x20use\x20the\x20new\x20version.','run','expected\x20','npm','error','beta','update','yellow','Update\x20rabetbase\x20CLI\x20to\x20the\x20latest\x20version','timeout','\x20is\x20up\x20to\x20date.','6OIQYGc','repairCommand','Requested\x20version:\x20','/dist-tags','object','length','Choose\x20either\x20npm\x20beta\x20dist-tag\x20or\x20an\x20exact\x20version.','fail','log','32ApncSV','trim','map','source','valid','bun','\x20\x20Run\x20manually:\x20','\x20cli-skill\x20install',',\x20found\x20',']:\x20','Install\x20a\x20specific\x20CLI\x20version','1774266SlZmbs','143NhUWiI','bool','execPath','latest','\x20\x20Run\x20manually:\x20npm\x20install\x20-g\x20','toLowerCase'];a39_0xa816=function(){return _0x5ac477;};return a39_0xa816();}const a39_0x9d77f4=a39_0x5504;(function(_0x1e908b,_0x4e9a54){const _0x5e3a14=a39_0x5504,_0x28e86c=_0x1e908b();while(!![]){try{const _0x53fbda=parseInt(_0x5e3a14(0xdc))/0x1*(parseInt(_0x5e3a14(0xe7))/0x2)+-parseInt(_0x5e3a14(0x11c))/0x3+parseInt(_0x5e3a14(0xef))/0x4+parseInt(_0x5e3a14(0x12b))/0x5+-parseInt(_0x5e3a14(0x108))/0x6*(-parseInt(_0x5e3a14(0xe4))/0x7)+-parseInt(_0x5e3a14(0x111))/0x8*(-parseInt(_0x5e3a14(0xd9))/0x9)+parseInt(_0x5e3a14(0xf6))/0xa*(-parseInt(_0x5e3a14(0x11d))/0xb);if(_0x53fbda===_0x4e9a54)break;else _0x28e86c['push'](_0x28e86c['shift']());}catch(_0x451bd2){_0x28e86c['push'](_0x28e86c['shift']());}}}(a39_0xa816,0xee194));import a39_0x2a0535 from'chalk';import a39_0x3b3b36 from'ora';function a39_0x5504(_0x42648f,_0x4bb476){_0x42648f=_0x42648f-0xd5;const _0xa8165f=a39_0xa816();let _0x550436=_0xa8165f[_0x42648f];return _0x550436;}import a39_0x131e1d from'semver';import{execa}from'execa';import{CLI_BIN_NAME,NPM_PACKAGE_NAME}from'../constant/cli.js';import{VERSION,GIT_COMMIT,BUILD_TIME}from'../generated/build-info.js';import{CliErrors}from'../errors.js';import{inspectInstalledBuiltinSkillVersion,installBuiltinSkill}from'../skills/builtin-skill.js';import{resolveNpmBin}from'../utils/platform.js';function getCurrentVersion(){const _0x55bd89=a39_0x5504;return GIT_COMMIT!==_0x55bd89(0xe8)?VERSION+'\x20('+GIT_COMMIT+',\x20'+BUILD_TIME[_0x55bd89(0x127)](0x0,0xa)+')':VERSION;}function detectPackageManager(){const _0xbdc122=a39_0x5504,_0x4ad712=process[_0xbdc122(0x11f)][_0xbdc122(0x122)]();if(_0x4ad712['includes'](_0xbdc122(0x116)))return _0xbdc122(0x116);return _0xbdc122(0x100);}const updateFlags=[{'name':a39_0x9d77f4(0x102),'type':a39_0x9d77f4(0x126),'description':a39_0x9d77f4(0xea),'default':![]},{'name':a39_0x9d77f4(0xf8),'type':'string','description':a39_0x9d77f4(0x11b)}];function getRequestedVersion(_0x3f988d){const _0x15b5c=a39_0x9d77f4;return _0x3f988d[_0x15b5c(0xe9)]('version')[_0x15b5c(0x112)]();}async function validateUpdateFlags(_0x2099ce){const _0x37e8bf=a39_0x9d77f4,_0x111a1c=_0x2099ce[_0x37e8bf(0x11e)](_0x37e8bf(0x102)),_0x32d700=getRequestedVersion(_0x2099ce);if(_0x111a1c&&_0x32d700)throw CliErrors[_0x37e8bf(0x124)](_0x37e8bf(0xfb),_0x37e8bf(0x10e));if(_0x32d700&&!a39_0x131e1d[_0x37e8bf(0x115)](_0x32d700))throw CliErrors[_0x37e8bf(0x124)](_0x37e8bf(0xe1)+_0x32d700,_0x37e8bf(0xd8));}async function fetchNpmDistTags(){const _0x32713d=a39_0x9d77f4;try{const _0x1b690e=await fetch('https://registry.npmjs.org/-/package/'+encodeURIComponent(NPM_PACKAGE_NAME)+_0x32713d(0x10b),{'signal':AbortSignal[_0x32713d(0x106)](0x2710)});if(!_0x1b690e['ok'])return null;const _0x2d6b46=await _0x1b690e[_0x32713d(0xee)]();if(!_0x2d6b46||typeof _0x2d6b46!==_0x32713d(0x10c))return null;return Object['fromEntries'](Object['entries'](_0x2d6b46)[_0x32713d(0xdf)](([,_0x2a2d4e])=>typeof _0x2a2d4e===_0x32713d(0xe5)&&_0x2a2d4e[_0x32713d(0x112)]()[_0x32713d(0x10d)]>0x0)[_0x32713d(0x113)](([_0xc3b21,_0x1cbcac])=>[_0xc3b21,String(_0x1cbcac)[_0x32713d(0x112)]()]));}catch{return null;}}async function fetchNpmDistTagVersion(_0x545fb4){const _0x53433d=await fetchNpmDistTags();return _0x53433d?.[_0x545fb4]??null;}async function fetchLatestVersion(){return fetchNpmDistTagVersion('latest');}async function resolveTargetVersion(_0x381c70){const _0x5ef27c=a39_0x9d77f4,_0xb7b016=getRequestedVersion(_0x381c70);if(_0xb7b016)return{'version':_0xb7b016,'source':'version'};if(_0x381c70['bool']('beta')){const _0x31a295=await fetchNpmDistTagVersion('beta');if(!_0x31a295)return null;return{'version':_0x31a295,'source':_0x5ef27c(0x102)};}const _0x2313fc=await fetchLatestVersion();if(!_0x2313fc)return null;return{'version':_0x2313fc,'source':_0x5ef27c(0x120)};}function shouldInstallTarget(_0x3d6be3,_0x3bfcf8){const _0x31eb89=a39_0x9d77f4;if(_0x3bfcf8['source']==='version'||_0x3bfcf8[_0x31eb89(0x114)]===_0x31eb89(0x102))return!a39_0x131e1d['eq'](_0x3d6be3,_0x3bfcf8['version']);return a39_0x131e1d['lt'](_0x3d6be3,_0x3bfcf8[_0x31eb89(0xf8)]);}function getInstallPlanLabel(_0x31d689,_0x4cacf5){const _0x241e77=a39_0x9d77f4;switch(_0x4cacf5[_0x241e77(0x114)]){case'beta':return _0x241e77(0xf9)+a39_0x2a0535[_0x241e77(0x104)](_0x31d689)+_0x241e77(0xe0)+a39_0x2a0535['green'](_0x4cacf5['version']);case _0x241e77(0xf8):return _0x241e77(0x10a)+a39_0x2a0535[_0x241e77(0x104)](_0x31d689)+'\x20→\x20'+a39_0x2a0535[_0x241e77(0xdb)](_0x4cacf5[_0x241e77(0xf8)]);case'latest':default:return _0x241e77(0xdd)+a39_0x2a0535[_0x241e77(0x104)](_0x31d689)+_0x241e77(0xe0)+a39_0x2a0535[_0x241e77(0xdb)](_0x4cacf5[_0x241e77(0xf8)]);}}function repairCurrentBuiltinSkill(){const _0x229f2a=a39_0x9d77f4;console[_0x229f2a(0x110)](a39_0x2a0535['gray']('Checking\x20CLI\x20Built-in\x20Skill...'));const _0x5e7231=installBuiltinSkill();if(_0x5e7231['ok'])return console['log'](a39_0x2a0535[_0x229f2a(0xf1)](_0x229f2a(0xfc)+_0x5e7231[_0x229f2a(0xed)]+_0x229f2a(0x107))),!![];return console[_0x229f2a(0xf4)](a39_0x2a0535[_0x229f2a(0x104)](_0x229f2a(0xde)+_0x5e7231[_0x229f2a(0xf5)]+_0x229f2a(0x11a)+(_0x5e7231[_0x229f2a(0x101)]||'unknown'))),console['log'](a39_0x2a0535[_0x229f2a(0xf1)]('\x20\x20Run\x20manually:\x20'+CLI_BIN_NAME+_0x229f2a(0x118))),![];}function verifyUpdatedBuiltinSkill(_0x1474cb){const _0x4ee25b=a39_0x9d77f4,_0x233029=inspectInstalledBuiltinSkillVersion(_0x1474cb);if(_0x233029['state']===_0x4ee25b(0xfa))return console[_0x4ee25b(0x110)](a39_0x2a0535[_0x4ee25b(0xf1)](_0x4ee25b(0xfc)+_0x1474cb+_0x4ee25b(0x107))),!![];const _0xef6f86=_0x233029['skillVersion']?_0x4ee25b(0xff)+_0x1474cb+_0x4ee25b(0x119)+_0x233029[_0x4ee25b(0xed)]:'expected\x20'+_0x1474cb+_0x4ee25b(0xec)+_0x233029[_0x4ee25b(0xd5)];return console[_0x4ee25b(0xf4)](a39_0x2a0535[_0x4ee25b(0x104)](_0x4ee25b(0xf7)+_0xef6f86)),console[_0x4ee25b(0x110)](a39_0x2a0535[_0x4ee25b(0xf1)](_0x4ee25b(0x117)+_0x233029[_0x4ee25b(0x109)])),![];}async function execute(_0x5ab4b0){const _0x5a1019=a39_0x9d77f4;await validateUpdateFlags(_0x5ab4b0);const _0x25ceb6=getCurrentVersion();console[_0x5a1019(0x110)]('Current\x20version:\x20'+_0x25ceb6);const _0x40b082=a39_0x3b3b36(_0x5a1019(0xe2))[_0x5a1019(0xeb)](),_0x8281cb=await resolveTargetVersion(_0x5ab4b0);if(!_0x8281cb){const _0x83868a=_0x5ab4b0[_0x5a1019(0x11e)](_0x5a1019(0x102))?'Unable\x20to\x20resolve\x20beta\x20version\x20from\x20npm':_0x5a1019(0x128);return _0x40b082[_0x5a1019(0x10f)](_0x83868a),console[_0x5a1019(0x110)](a39_0x2a0535[_0x5a1019(0xf1)](_0x5a1019(0x121)+NPM_PACKAGE_NAME+_0x5a1019(0x123))),{'ok':![],'message':_0x83868a};}const _0x3748c7=a39_0x131e1d[_0x5a1019(0x115)](VERSION),_0x332f26=a39_0x131e1d[_0x5a1019(0x115)](_0x8281cb[_0x5a1019(0xf8)]);if(!_0x3748c7||!_0x332f26)return _0x40b082['fail']('Version\x20comparison\x20failed'),{'ok':![],'message':'Version\x20comparison\x20failed'};if(!shouldInstallTarget(_0x3748c7,_0x8281cb)){const _0x32c056=_0x8281cb['source']===_0x5a1019(0xf8)?'Already\x20on\x20requested\x20version\x20(v'+_0x8281cb[_0x5a1019(0xf8)]+')':_0x5a1019(0xf2)+_0x8281cb[_0x5a1019(0xf8)]+')';return _0x40b082[_0x5a1019(0xda)](_0x32c056),{'ok':repairCurrentBuiltinSkill()};}_0x40b082[_0x5a1019(0x12c)](getInstallPlanLabel(_0x25ceb6,_0x8281cb));const _0x1524fa=detectPackageManager(),_0x362351=_0x1524fa===_0x5a1019(0x100)?resolveNpmBin('npm'):_0x1524fa,_0xcc2e64=a39_0x3b3b36(_0x5a1019(0xd6)+_0x1524fa+'...')['start']();try{return await execa(_0x362351,['install','-g',NPM_PACKAGE_NAME+'@'+_0x8281cb[_0x5a1019(0xf8)]],{'stdio':_0x5a1019(0x12a)}),_0xcc2e64[_0x5a1019(0xda)](_0x5a1019(0xf0)+_0x8281cb[_0x5a1019(0xf8)]),console[_0x5a1019(0x110)](a39_0x2a0535['gray'](_0x5a1019(0xfd))),{'ok':verifyUpdatedBuiltinSkill(_0x8281cb[_0x5a1019(0xf8)])};}catch(_0x4f187a){return _0xcc2e64[_0x5a1019(0x10f)](_0x5a1019(0x129)),console[_0x5a1019(0x101)](a39_0x2a0535[_0x5a1019(0xe6)]('\x20\x20'+_0x4f187a[_0x5a1019(0xd7)])),console[_0x5a1019(0x110)](a39_0x2a0535[_0x5a1019(0xf1)](_0x5a1019(0xe3)+_0x1524fa+_0x5a1019(0x125)+NPM_PACKAGE_NAME+'@'+_0x8281cb['version'])),{'ok':![],'message':_0x4f187a['message']};}}export const updateDefinition={'service':a39_0x9d77f4(0x103),'command':a39_0x9d77f4(0xfe),'description':a39_0x9d77f4(0x105),'risk':a39_0x9d77f4(0xf3),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':updateFlags,'validate':validateUpdateFlags,'execute':execute};
1
+ const a39_0x2b92fb=a39_0x1da0;(function(_0x9d2571,_0x1c136a){const _0xd7d043=a39_0x1da0,_0x135e26=_0x9d2571();while(!![]){try{const _0x4bc891=-parseInt(_0xd7d043(0xcd))/0x1*(parseInt(_0xd7d043(0x104))/0x2)+-parseInt(_0xd7d043(0x105))/0x3+parseInt(_0xd7d043(0xf1))/0x4*(-parseInt(_0xd7d043(0x112))/0x5)+parseInt(_0xd7d043(0xcf))/0x6*(parseInt(_0xd7d043(0xef))/0x7)+-parseInt(_0xd7d043(0xea))/0x8+-parseInt(_0xd7d043(0x119))/0x9*(-parseInt(_0xd7d043(0xce))/0xa)+parseInt(_0xd7d043(0xd0))/0xb*(parseInt(_0xd7d043(0xe7))/0xc);if(_0x4bc891===_0x1c136a)break;else _0x135e26['push'](_0x135e26['shift']());}catch(_0x22f967){_0x135e26['push'](_0x135e26['shift']());}}}(a39_0x56bd,0x8a6b5));function a39_0x1da0(_0x273831,_0x44f5bf){_0x273831=_0x273831-0xc4;const _0x56bd36=a39_0x56bd();let _0x1da008=_0x56bd36[_0x273831];return _0x1da008;}import a39_0xa5d30f from'chalk';import a39_0x15bb54 from'ora';import a39_0x5f4367 from'semver';import{execa}from'execa';import{CLI_BIN_NAME,NPM_PACKAGE_NAME}from'../constant/cli.js';import{VERSION,GIT_COMMIT,BUILD_TIME}from'../generated/build-info.js';import{CliErrors}from'../errors.js';import{inspectInstalledBuiltinSkillVersion,installBuiltinSkill}from'../skills/builtin-skill.js';import{resolveNpmBin}from'../utils/platform.js';function getCurrentVersion(){const _0xa1d1b4=a39_0x1da0;return GIT_COMMIT!=='unknown'?VERSION+'\x20('+GIT_COMMIT+',\x20'+BUILD_TIME[_0xa1d1b4(0x114)](0x0,0xa)+')':VERSION;}function detectPackageManager(){const _0x51a2e9=a39_0x1da0,_0x2bb651=process[_0x51a2e9(0xc7)][_0x51a2e9(0xfa)]();if(_0x2bb651[_0x51a2e9(0xde)]('bun'))return _0x51a2e9(0xc4);return'npm';}const updateFlags=[{'name':a39_0x2b92fb(0x106),'type':a39_0x2b92fb(0xe1),'description':a39_0x2b92fb(0x116),'default':![]},{'name':'version','type':a39_0x2b92fb(0xe3),'description':'Install\x20a\x20specific\x20CLI\x20version'}];function getRequestedVersion(_0x2fc906){const _0x32c2fb=a39_0x2b92fb;return _0x2fc906['str'](_0x32c2fb(0xfd))[_0x32c2fb(0x101)]();}async function validateUpdateFlags(_0x288761){const _0x579a8c=a39_0x2b92fb,_0x45933c=_0x288761['bool'](_0x579a8c(0x106)),_0x91bda7=getRequestedVersion(_0x288761);if(_0x45933c&&_0x91bda7)throw CliErrors['validation']('--beta\x20and\x20--version\x20cannot\x20be\x20used\x20together.',_0x579a8c(0x102));if(_0x91bda7&&!a39_0x5f4367[_0x579a8c(0xc5)](_0x91bda7))throw CliErrors['validation'](_0x579a8c(0xfb)+_0x91bda7,_0x579a8c(0xf2));}async function fetchNpmDistTags(){const _0x51c55c=a39_0x2b92fb;try{const _0x583695=await fetch('https://registry.npmjs.org/-/package/'+encodeURIComponent(NPM_PACKAGE_NAME)+_0x51c55c(0xf5),{'signal':AbortSignal['timeout'](0x2710)});if(!_0x583695['ok'])return null;const _0x451d57=await _0x583695[_0x51c55c(0xd1)]();if(!_0x451d57||typeof _0x451d57!==_0x51c55c(0xd9))return null;return Object['fromEntries'](Object['entries'](_0x451d57)[_0x51c55c(0xff)](([,_0x28a595])=>typeof _0x28a595===_0x51c55c(0xe3)&&_0x28a595['trim']()[_0x51c55c(0xcc)]>0x0)[_0x51c55c(0xe0)](([_0x2c7d51,_0x478dd9])=>[_0x2c7d51,String(_0x478dd9)[_0x51c55c(0x101)]()]));}catch{return null;}}async function fetchNpmDistTagVersion(_0x5cef20){const _0x22fe85=await fetchNpmDistTags();return _0x22fe85?.[_0x5cef20]??null;}function a39_0x56bd(){const _0x3467ca=['694669xmVTzk','2426210tphKwE','18594QrGiSv','41899EVGdir','json','warn','Checking\x20CLI\x20Built-in\x20Skill...','Already\x20on\x20requested\x20version\x20(v','yellow','current','Already\x20up\x20to\x20date\x20(v','npm','object','update','Unable\x20to\x20check\x20for\x20updates\x20(network\x20error)','source','log','includes','Version\x20comparison\x20failed','map','boolean','Updated\x20to\x20v','string',',\x20found\x20','run','\x20\x20Restart\x20your\x20terminal\x20to\x20use\x20the\x20new\x20version.','5604SDhTFq','Update\x20failed','Beta\x20version:\x20','2459808NvZeOc','succeed','\x20cli-skill\x20install','gray','info','1582BJoctL','Requested\x20version:\x20','366516FnkPwk','Use\x20a\x20full\x20semver\x20such\x20as\x202.1.6\x20or\x202.1.6-beta.1.','\x20is\x20up\x20to\x20date.','\x20\x20CLI\x20Built-in\x20Skill\x20repair\x20failed\x20[','/dist-tags','install','fail',',\x20state\x20','\x20\x20Built-in\x20Skill\x20verification\x20failed:\x20','toLowerCase','Invalid\x20version:\x20','...','version','error','filter','bool','trim','Choose\x20either\x20npm\x20beta\x20dist-tag\x20or\x20an\x20exact\x20version.','Unable\x20to\x20resolve\x20beta\x20version\x20from\x20npm','2UKfjik','2633403tRFArw','beta','green','code','skillVersion','latest','Current\x20version:\x20','\x20\x20CLI\x20Built-in\x20Skill\x20','pipe','message','@latest','\x20→\x20','start','15RZqLRN','expected\x20','slice','state','Install\x20the\x20version\x20from\x20npm\x20beta\x20dist-tag','\x20install\x20-g\x20','\x20\x20Try\x20manually:\x20','9LexPxd','read','bun','valid','unknown','execPath','\x20\x20Run\x20manually:\x20','Update\x20rabetbase\x20CLI\x20to\x20the\x20latest\x20version','Updating\x20via\x20','Update\x20available:\x20','length'];a39_0x56bd=function(){return _0x3467ca;};return a39_0x56bd();}async function fetchLatestVersion(){const _0x1923b2=a39_0x2b92fb;return fetchNpmDistTagVersion(_0x1923b2(0x10a));}async function resolveTargetVersion(_0x475e7b){const _0x39c85c=a39_0x2b92fb,_0x5471b0=getRequestedVersion(_0x475e7b);if(_0x5471b0)return{'version':_0x5471b0,'source':_0x39c85c(0xfd)};if(_0x475e7b[_0x39c85c(0x100)]('beta')){const _0x33db4a=await fetchNpmDistTagVersion(_0x39c85c(0x106));if(!_0x33db4a)return null;return{'version':_0x33db4a,'source':'beta'};}const _0x5591b3=await fetchLatestVersion();if(!_0x5591b3)return null;return{'version':_0x5591b3,'source':_0x39c85c(0x10a)};}function shouldInstallTarget(_0x241d61,_0x1eb5ab){const _0x1cb7b9=a39_0x2b92fb;if(_0x1eb5ab[_0x1cb7b9(0xdc)]==='version'||_0x1eb5ab[_0x1cb7b9(0xdc)]===_0x1cb7b9(0x106))return!a39_0x5f4367['eq'](_0x241d61,_0x1eb5ab[_0x1cb7b9(0xfd)]);return a39_0x5f4367['lt'](_0x241d61,_0x1eb5ab[_0x1cb7b9(0xfd)]);}function getInstallPlanLabel(_0x5810b4,_0x1ef68a){const _0x18aacb=a39_0x2b92fb;switch(_0x1ef68a['source']){case _0x18aacb(0x106):return _0x18aacb(0xe9)+a39_0xa5d30f['yellow'](_0x5810b4)+_0x18aacb(0x110)+a39_0xa5d30f[_0x18aacb(0x107)](_0x1ef68a[_0x18aacb(0xfd)]);case _0x18aacb(0xfd):return _0x18aacb(0xf0)+a39_0xa5d30f[_0x18aacb(0xd5)](_0x5810b4)+'\x20→\x20'+a39_0xa5d30f[_0x18aacb(0x107)](_0x1ef68a[_0x18aacb(0xfd)]);case _0x18aacb(0x10a):default:return _0x18aacb(0xcb)+a39_0xa5d30f[_0x18aacb(0xd5)](_0x5810b4)+_0x18aacb(0x110)+a39_0xa5d30f['green'](_0x1ef68a[_0x18aacb(0xfd)]);}}function repairCurrentBuiltinSkill(){const _0x39b46d=a39_0x2b92fb;console[_0x39b46d(0xdd)](a39_0xa5d30f[_0x39b46d(0xed)](_0x39b46d(0xd3)));const _0x57def1=installBuiltinSkill();if(_0x57def1['ok'])return console['log'](a39_0xa5d30f['gray'](_0x39b46d(0x10c)+_0x57def1['skillVersion']+_0x39b46d(0xf3))),!![];return console[_0x39b46d(0xd2)](a39_0xa5d30f['yellow'](_0x39b46d(0xf4)+_0x57def1[_0x39b46d(0x108)]+']:\x20'+(_0x57def1['error']||_0x39b46d(0xc6)))),console['log'](a39_0xa5d30f[_0x39b46d(0xed)](_0x39b46d(0xc8)+CLI_BIN_NAME+_0x39b46d(0xec))),![];}function verifyUpdatedBuiltinSkill(_0x59f78e){const _0x4adedf=a39_0x2b92fb,_0x3f0eaa=inspectInstalledBuiltinSkillVersion(_0x59f78e);if(_0x3f0eaa[_0x4adedf(0x115)]===_0x4adedf(0xd6))return console[_0x4adedf(0xdd)](a39_0xa5d30f[_0x4adedf(0xed)](_0x4adedf(0x10c)+_0x59f78e+_0x4adedf(0xf3))),!![];const _0x5ee74a=_0x3f0eaa[_0x4adedf(0x109)]?_0x4adedf(0x113)+_0x59f78e+_0x4adedf(0xe4)+_0x3f0eaa[_0x4adedf(0x109)]:_0x4adedf(0x113)+_0x59f78e+_0x4adedf(0xf8)+_0x3f0eaa['state'];return console[_0x4adedf(0xd2)](a39_0xa5d30f[_0x4adedf(0xd5)](_0x4adedf(0xf9)+_0x5ee74a)),console['log'](a39_0xa5d30f[_0x4adedf(0xed)](_0x4adedf(0xc8)+_0x3f0eaa['repairCommand'])),![];}async function execute(_0x5635cf){const _0x3c3881=a39_0x2b92fb;await validateUpdateFlags(_0x5635cf);const _0x52dca1=getCurrentVersion();console[_0x3c3881(0xdd)](_0x3c3881(0x10b)+_0x52dca1);const _0x588fe4=a39_0x15bb54('Checking\x20for\x20updates...')['start'](),_0x2ef321=await resolveTargetVersion(_0x5635cf);if(!_0x2ef321){const _0x17e08e=_0x5635cf['bool'](_0x3c3881(0x106))?_0x3c3881(0x103):_0x3c3881(0xdb);return _0x588fe4[_0x3c3881(0xf7)](_0x17e08e),console[_0x3c3881(0xdd)](a39_0xa5d30f[_0x3c3881(0xed)]('\x20\x20Run\x20manually:\x20npm\x20install\x20-g\x20'+NPM_PACKAGE_NAME+_0x3c3881(0x10f))),{'ok':![],'message':_0x17e08e};}const _0x1e9667=a39_0x5f4367[_0x3c3881(0xc5)](VERSION),_0x2a6dc4=a39_0x5f4367[_0x3c3881(0xc5)](_0x2ef321['version']);if(!_0x1e9667||!_0x2a6dc4)return _0x588fe4['fail']('Version\x20comparison\x20failed'),{'ok':![],'message':_0x3c3881(0xdf)};if(!shouldInstallTarget(_0x1e9667,_0x2ef321)){const _0x5873c9=_0x2ef321['source']==='version'?_0x3c3881(0xd4)+_0x2ef321[_0x3c3881(0xfd)]+')':_0x3c3881(0xd7)+_0x2ef321[_0x3c3881(0xfd)]+')';return _0x588fe4[_0x3c3881(0xeb)](_0x5873c9),{'ok':repairCurrentBuiltinSkill()};}_0x588fe4[_0x3c3881(0xee)](getInstallPlanLabel(_0x52dca1,_0x2ef321));const _0x2a424b=detectPackageManager(),_0x565a0c=_0x2a424b===_0x3c3881(0xd8)?resolveNpmBin('npm'):_0x2a424b,_0x5e49a3=a39_0x15bb54(_0x3c3881(0xca)+_0x2a424b+_0x3c3881(0xfc))[_0x3c3881(0x111)]();try{return await execa(_0x565a0c,[_0x3c3881(0xf6),'-g',NPM_PACKAGE_NAME+'@'+_0x2ef321[_0x3c3881(0xfd)]],{'stdio':_0x3c3881(0x10d)}),_0x5e49a3[_0x3c3881(0xeb)](_0x3c3881(0xe2)+_0x2ef321[_0x3c3881(0xfd)]),console[_0x3c3881(0xdd)](a39_0xa5d30f[_0x3c3881(0xed)](_0x3c3881(0xe6))),{'ok':verifyUpdatedBuiltinSkill(_0x2ef321[_0x3c3881(0xfd)])};}catch(_0x4cd413){return _0x5e49a3[_0x3c3881(0xf7)](_0x3c3881(0xe8)),console[_0x3c3881(0xfe)](a39_0xa5d30f['red']('\x20\x20'+_0x4cd413['message'])),console[_0x3c3881(0xdd)](a39_0xa5d30f[_0x3c3881(0xed)](_0x3c3881(0x118)+_0x2a424b+_0x3c3881(0x117)+NPM_PACKAGE_NAME+'@'+_0x2ef321[_0x3c3881(0xfd)])),{'ok':![],'message':_0x4cd413[_0x3c3881(0x10e)]};}}export const updateDefinition={'service':a39_0x2b92fb(0xda),'command':a39_0x2b92fb(0xe5),'description':a39_0x2b92fb(0xc9),'risk':a39_0x2b92fb(0x11a),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':updateFlags,'validate':validateUpdateFlags,'execute':execute};
@@ -1 +1 @@
1
- (function(_0xdc663e,_0x38003f){const _0x298fd3=a40_0x27c4,_0x22345e=_0xdc663e();while(!![]){try{const _0x493926=-parseInt(_0x298fd3(0x168))/0x1*(parseInt(_0x298fd3(0x160))/0x2)+-parseInt(_0x298fd3(0x165))/0x3*(-parseInt(_0x298fd3(0x169))/0x4)+parseInt(_0x298fd3(0x166))/0x5+-parseInt(_0x298fd3(0x15e))/0x6*(-parseInt(_0x298fd3(0x162))/0x7)+-parseInt(_0x298fd3(0x15f))/0x8*(parseInt(_0x298fd3(0x164))/0x9)+parseInt(_0x298fd3(0x163))/0xa+-parseInt(_0x298fd3(0x167))/0xb*(parseInt(_0x298fd3(0x161))/0xc);if(_0x493926===_0x38003f)break;else _0x22345e['push'](_0x22345e['shift']());}catch(_0x3402b8){_0x22345e['push'](_0x22345e['shift']());}}}(a40_0x534c,0x9a52c));import{codegenSdk}from'../../commands/codegen/sdk.js';import{codegenSql}from'../../commands/codegen/sql.js';export const codegenDefinitions=[codegenSdk,codegenSql];function a40_0x27c4(_0x2a0d4f,_0x57c323){_0x2a0d4f=_0x2a0d4f-0x15e;const _0x534c79=a40_0x534c();let _0x27c424=_0x534c79[_0x2a0d4f];return _0x27c424;}function a40_0x534c(){const _0x567703=['1633244KexvWx','466284NXapGB','4327918WzqdQL','4007570TMBVNs','666ZZgfDe','3UweIju','3779655PBRpDL','341uNAHXI','1zifHMu','3652148ylQpLb','12pGHGUr','70592yFGzJL'];a40_0x534c=function(){return _0x567703;};return a40_0x534c();}
1
+ (function(_0x45d6bb,_0xf6c73){const _0x39a494=a40_0x3d5b,_0x448f4a=_0x45d6bb();while(!![]){try{const _0x2bd92d=parseInt(_0x39a494(0xb9))/0x1*(parseInt(_0x39a494(0xbd))/0x2)+-parseInt(_0x39a494(0xbe))/0x3+-parseInt(_0x39a494(0xb7))/0x4+-parseInt(_0x39a494(0xbb))/0x5+-parseInt(_0x39a494(0xba))/0x6+-parseInt(_0x39a494(0xbc))/0x7+parseInt(_0x39a494(0xb8))/0x8;if(_0x2bd92d===_0xf6c73)break;else _0x448f4a['push'](_0x448f4a['shift']());}catch(_0x5b1345){_0x448f4a['push'](_0x448f4a['shift']());}}}(a40_0x422d,0xa9e89));function a40_0x422d(){const _0x2bf92b=['368631wxWERQ','4938436qtwHoN','26289712Xhfgqp','33855lydULf','6767004aZKFrb','4708970CgmlJf','1014650amqLcT','58cLcGvX'];a40_0x422d=function(){return _0x2bf92b;};return a40_0x422d();}import{codegenSdk}from'../../commands/codegen/sdk.js';import{codegenSql}from'../../commands/codegen/sql.js';function a40_0x3d5b(_0x3bf01a,_0xab4564){_0x3bf01a=_0x3bf01a-0xb7;const _0x422d87=a40_0x422d();let _0x3d5bfc=_0x422d87[_0x3bf01a];return _0x3d5bfc;}export const codegenDefinitions=[codegenSdk,codegenSql];
@@ -1 +1 @@
1
- const a41_0x264fb5=a41_0x43cb;function a41_0x4794(){const _0x42f3e5=['2234211tuIgvr','bool','alias','5759970pLfckh','operation','2217865fgBRvb','Generate\x20TypeScript\x20SDK\x20code\x20for\x20a\x20dataset\x20operation','8rsOMqX','name','3paCVDV','3910869UfgHWh','745214PDldna','330FlpgXy','8kajWWr','code','appCode','483876YpqfBa','sdk','boolean','skip-imports','14xvlwCx','str','string','1651770BxLvDz'];a41_0x4794=function(){return _0x42f3e5;};return a41_0x4794();}(function(_0x487bf1,_0x5ab48d){const _0xc870ef=a41_0x43cb,_0x97912d=_0x487bf1();while(!![]){try{const _0xeeda5a=parseInt(_0xc870ef(0x117))/0x1*(parseInt(_0xc870ef(0x119))/0x2)+parseInt(_0xc870ef(0x126))/0x3*(-parseInt(_0xc870ef(0x115))/0x4)+-parseInt(_0xc870ef(0x113))/0x5+parseInt(_0xc870ef(0x125))/0x6*(parseInt(_0xc870ef(0x122))/0x7)+parseInt(_0xc870ef(0x11b))/0x8*(parseInt(_0xc870ef(0x118))/0x9)+-parseInt(_0xc870ef(0x129))/0xa+-parseInt(_0xc870ef(0x11a))/0xb*(-parseInt(_0xc870ef(0x11e))/0xc);if(_0xeeda5a===_0x5ab48d)break;else _0x97912d['push'](_0x97912d['shift']());}catch(_0x24d126){_0x97912d['push'](_0x97912d['shift']());}}}(a41_0x4794,0xc430e));import{getOperationDetail,generateSdkCode}from'../../core/api-client.js';function a41_0x43cb(_0x950758,_0x4c8ffc){_0x950758=_0x950758-0x112;const _0x4794ba=a41_0x4794();let _0x43cb7a=_0x4794ba[_0x950758];return _0x43cb7a;}import{CODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const codegenSdk={'service':'codegen','command':a41_0x264fb5(0x11f),'description':a41_0x264fb5(0x114),'risk':'read','flags':[CODE_FLAG_OPTIONAL,{'name':a41_0x264fb5(0x128),'type':a41_0x264fb5(0x124),'description':'Dataset\x20alias\x20defined\x20in\x20api.ts\x20(e.g.\x20order,\x20coupon)'},{'name':a41_0x264fb5(0x112),'type':a41_0x264fb5(0x124),'required':!![],'description':'Operation\x20name\x20(e.g.\x20filter,\x20getOne,\x20create,\x20update)'},{'name':a41_0x264fb5(0x121),'type':a41_0x264fb5(0x120),'description':'Omit\x20import\x20statements\x20from\x20generated\x20code'}],async 'execute'(_0x4030c8){const _0x15ff16=a41_0x264fb5,{dataset:_0x5904f1,operation:_0x3384fc}=await getOperationDetail(_0x4030c8[_0x15ff16(0x11d)],_0x4030c8[_0x15ff16(0x123)](_0x15ff16(0x11c)),_0x4030c8['str'](_0x15ff16(0x112))),_0x2bacbc=generateSdkCode(_0x5904f1,_0x3384fc,{'includeImports':!_0x4030c8[_0x15ff16(0x127)]('skip-imports')});return{'ok':!![],'data':{'dataset':{'name':_0x5904f1[_0x15ff16(0x116)],'code':_0x5904f1[_0x15ff16(0x11c)],'tableName':_0x5904f1['tableName']},'operation':_0x4030c8['str']('operation'),'code':_0x2bacbc}};}};
1
+ const a41_0x35c1f4=a41_0x153b;(function(_0x1bb4b8,_0x62c82f){const _0x1dc823=a41_0x153b,_0xbded10=_0x1bb4b8();while(!![]){try{const _0x4cc104=-parseInt(_0x1dc823(0x157))/0x1+parseInt(_0x1dc823(0x15e))/0x2+-parseInt(_0x1dc823(0x158))/0x3+-parseInt(_0x1dc823(0x160))/0x4*(-parseInt(_0x1dc823(0x155))/0x5)+-parseInt(_0x1dc823(0x15d))/0x6+parseInt(_0x1dc823(0x15b))/0x7*(parseInt(_0x1dc823(0x163))/0x8)+-parseInt(_0x1dc823(0x152))/0x9*(-parseInt(_0x1dc823(0x156))/0xa);if(_0x4cc104===_0x62c82f)break;else _0xbded10['push'](_0xbded10['shift']());}catch(_0x34a613){_0xbded10['push'](_0xbded10['shift']());}}}(a41_0x34d6,0x3530c));import{getOperationDetail,generateSdkCode}from'../../core/api-client.js';import{CODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a41_0x153b(_0x19d6f0,_0x25c473){_0x19d6f0=_0x19d6f0-0x151;const _0x34d690=a41_0x34d6();let _0x153b4a=_0x34d690[_0x19d6f0];return _0x153b4a;}function a41_0x34d6(){const _0x3a12ac=['70LmbNAZ','320312OMPMCi','257301Qpmiix','sdk','name','2493778auiXdj','Generate\x20TypeScript\x20SDK\x20code\x20for\x20a\x20dataset\x20operation','1812042IGnbwZ','185950yVBqrE','string','61928hkuLEg','Operation\x20name\x20(e.g.\x20filter,\x20getOne,\x20create,\x20update)','Omit\x20import\x20statements\x20from\x20generated\x20code','8gpeWqX','code','alias','read','str','95391nItYqt','operation','appCode','130jIVBOR'];a41_0x34d6=function(){return _0x3a12ac;};return a41_0x34d6();}export const codegenSdk={'service':'codegen','command':a41_0x35c1f4(0x159),'description':a41_0x35c1f4(0x15c),'risk':a41_0x35c1f4(0x166),'flags':[CODE_FLAG_OPTIONAL,{'name':a41_0x35c1f4(0x165),'type':a41_0x35c1f4(0x15f),'description':'Dataset\x20alias\x20defined\x20in\x20api.ts\x20(e.g.\x20order,\x20coupon)'},{'name':a41_0x35c1f4(0x153),'type':a41_0x35c1f4(0x15f),'required':!![],'description':a41_0x35c1f4(0x161)},{'name':'skip-imports','type':'boolean','description':a41_0x35c1f4(0x162)}],async 'execute'(_0xcb23dc){const _0xb88910=a41_0x35c1f4,{dataset:_0x4a00f8,operation:_0x345311}=await getOperationDetail(_0xcb23dc[_0xb88910(0x154)],_0xcb23dc[_0xb88910(0x151)](_0xb88910(0x164)),_0xcb23dc[_0xb88910(0x151)]('operation')),_0x4554d5=generateSdkCode(_0x4a00f8,_0x345311,{'includeImports':!_0xcb23dc['bool']('skip-imports')});return{'ok':!![],'data':{'dataset':{'name':_0x4a00f8[_0xb88910(0x15a)],'code':_0x4a00f8['code'],'tableName':_0x4a00f8['tableName']},'operation':_0xcb23dc[_0xb88910(0x151)](_0xb88910(0x153)),'code':_0x4554d5}};}};
@@ -1 +1 @@
1
- function a42_0x1af1(_0x14b26a,_0x14639e){_0x14b26a=_0x14b26a-0x133;const _0x52bf57=a42_0x52bf();let _0x1af18d=_0x52bf57[_0x14b26a];return _0x1af18d;}const a42_0x5c374f=a42_0x1af1;(function(_0x137c22,_0x9ce624){const _0x10fbb1=a42_0x1af1,_0x41b336=_0x137c22();while(!![]){try{const _0x222232=-parseInt(_0x10fbb1(0x13d))/0x1*(parseInt(_0x10fbb1(0x145))/0x2)+-parseInt(_0x10fbb1(0x136))/0x3+-parseInt(_0x10fbb1(0x139))/0x4+parseInt(_0x10fbb1(0x13e))/0x5+parseInt(_0x10fbb1(0x141))/0x6+parseInt(_0x10fbb1(0x138))/0x7+-parseInt(_0x10fbb1(0x142))/0x8*(-parseInt(_0x10fbb1(0x140))/0x9);if(_0x222232===_0x9ce624)break;else _0x41b336['push'](_0x41b336['shift']());}catch(_0x17925e){_0x41b336['push'](_0x41b336['shift']());}}}(a42_0x52bf,0xceb6d));import{getSqlQueryInfo,generateSqlCodeTemplate}from'../../core/api-client.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a42_0x52bf(){const _0x547035=['Code\x20target:\x20sdk\x20(default)\x20or\x20bff','sdk','sqlName','28225VLogDN','4769135sWvnUI','sqlCode','158013SNTJCq','7968168keTziS','184BggCwl','Omit\x20import\x20statements\x20from\x20generated\x20code','string','78AViCTx','boolean','codegen','sqlcode','str','bool','sql','no-imports','3472890LIBfGn','appCode','6485864HoaKUv','2028448LiNTVa'];a42_0x52bf=function(){return _0x547035;};return a42_0x52bf();}export const codegenSql={'service':a42_0x5c374f(0x147),'command':a42_0x5c374f(0x134),'description':'Generate\x20TypeScript\x20code\x20for\x20a\x20custom\x20SQL\x20query','risk':'read','flags':[SQLCODE_FLAG,{'name':'target','type':a42_0x5c374f(0x144),'description':a42_0x5c374f(0x13a),'default':'sdk','enum':['sdk','bff']},{'name':a42_0x5c374f(0x135),'type':a42_0x5c374f(0x146),'description':a42_0x5c374f(0x143)}],async 'execute'(_0x46086){const _0x4455b8=a42_0x5c374f,_0x42fd3d=await getSqlQueryInfo(_0x46086[_0x4455b8(0x137)],_0x46086['str'](_0x4455b8(0x148))),_0x4c60c1=_0x46086[_0x4455b8(0x149)]('target')||_0x4455b8(0x13b),_0x2128d6=generateSqlCodeTemplate(_0x42fd3d,{'target':_0x4c60c1,'includeImports':!_0x46086[_0x4455b8(0x133)]('no-imports')});return{'ok':!![],'data':{'sqlCode':_0x42fd3d[_0x4455b8(0x13f)],'sqlName':_0x42fd3d[_0x4455b8(0x13c)],'target':_0x4c60c1,'code':_0x2128d6}};}};
1
+ const a42_0x285043=a42_0x5409;function a42_0x5409(_0x3be252,_0x2a34e7){_0x3be252=_0x3be252-0x140;const _0x10b7c7=a42_0x10b7();let _0x54091f=_0x10b7c7[_0x3be252];return _0x54091f;}(function(_0x39aa58,_0x1102bb){const _0x5a8f58=a42_0x5409,_0x382614=_0x39aa58();while(!![]){try{const _0x4ed77e=-parseInt(_0x5a8f58(0x154))/0x1+parseInt(_0x5a8f58(0x14d))/0x2+-parseInt(_0x5a8f58(0x158))/0x3*(-parseInt(_0x5a8f58(0x14e))/0x4)+-parseInt(_0x5a8f58(0x14a))/0x5+parseInt(_0x5a8f58(0x153))/0x6*(parseInt(_0x5a8f58(0x150))/0x7)+-parseInt(_0x5a8f58(0x14f))/0x8*(-parseInt(_0x5a8f58(0x146))/0x9)+-parseInt(_0x5a8f58(0x140))/0xa;if(_0x4ed77e===_0x1102bb)break;else _0x382614['push'](_0x382614['shift']());}catch(_0x50c204){_0x382614['push'](_0x382614['shift']());}}}(a42_0x10b7,0x65dde));import{getSqlQueryInfo,generateSqlCodeTemplate}from'../../core/api-client.js';function a42_0x10b7(){const _0x5d0f7e=['Code\x20target:\x20sdk\x20(default)\x20or\x20bff','boolean','sql','bff','read','90jEBrrQ','target','no-imports','sqlCode','710770rryLKM','codegen','str','611456RvtGoL','1923676zBYGMS','550232aCvyEB','602hSpmCN','sqlName','sdk','19554DSmzmL','439165wLixrp','sqlcode','Generate\x20TypeScript\x20code\x20for\x20a\x20custom\x20SQL\x20query','bool','3ILhBKV','7561460kmazsd'];a42_0x10b7=function(){return _0x5d0f7e;};return a42_0x10b7();}import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const codegenSql={'service':a42_0x285043(0x14b),'command':a42_0x285043(0x143),'description':a42_0x285043(0x156),'risk':a42_0x285043(0x145),'flags':[SQLCODE_FLAG,{'name':'target','type':'string','description':a42_0x285043(0x141),'default':a42_0x285043(0x152),'enum':['sdk',a42_0x285043(0x144)]},{'name':a42_0x285043(0x148),'type':a42_0x285043(0x142),'description':'Omit\x20import\x20statements\x20from\x20generated\x20code'}],async 'execute'(_0x2a3473){const _0x1148a4=a42_0x285043,_0xc4563a=await getSqlQueryInfo(_0x2a3473['appCode'],_0x2a3473[_0x1148a4(0x14c)](_0x1148a4(0x155))),_0x2557c2=_0x2a3473['str'](_0x1148a4(0x147))||_0x1148a4(0x152),_0x373246=generateSqlCodeTemplate(_0xc4563a,{'target':_0x2557c2,'includeImports':!_0x2a3473[_0x1148a4(0x157)](_0x1148a4(0x148))});return{'ok':!![],'data':{'sqlCode':_0xc4563a[_0x1148a4(0x149)],'sqlName':_0xc4563a[_0x1148a4(0x151)],'target':_0x2557c2,'code':_0x373246}};}};
@@ -1 +1 @@
1
- (function(_0x2c6a10,_0x593775){const _0x128088=a43_0x3fdd,_0x1fe737=_0x2c6a10();while(!![]){try{const _0x5be165=-parseInt(_0x128088(0x156))/0x1*(-parseInt(_0x128088(0x136))/0x2)+-parseInt(_0x128088(0x14e))/0x3*(parseInt(_0x128088(0x146))/0x4)+parseInt(_0x128088(0x15f))/0x5*(parseInt(_0x128088(0x147))/0x6)+parseInt(_0x128088(0x15b))/0x7+-parseInt(_0x128088(0x151))/0x8*(-parseInt(_0x128088(0x153))/0x9)+-parseInt(_0x128088(0x14b))/0xa+-parseInt(_0x128088(0x137))/0xb*(parseInt(_0x128088(0x155))/0xc);if(_0x5be165===_0x593775)break;else _0x1fe737['push'](_0x1fe737['shift']());}catch(_0x5d78d8){_0x1fe737['push'](_0x1fe737['shift']());}}}(a43_0x4fdd,0x1d08a));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{collectAppProfileOverrides,getAppProfileFlagDefs}from'../../config/schema.js';function a43_0x3fdd(_0xec7ac8,_0x1cd79d){_0xec7ac8=_0xec7ac8-0x133;const _0x4fdddb=a43_0x4fdd();let _0x3fdd48=_0x4fdddb[_0xec7ac8];return _0x3fdd48;}import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';function a43_0x4fdd(){const _0x147beb=['344082HNFhdw','defaultApp','Missing\x20app\x20name.','1366984KmsFFx','\x22\x20(appcode:\x20','9leTfLX','appcode','813828AKgQJV','864QDNolD','string','globalConfig','validation','length','1615019thFLRc','str','Use\x20global\x20config\x20scope','boolean','5zwAccB','\x22\x20still\x20defined\x20in\x20','flagMissing','\x20Default\x20app\x20changed\x20to\x20\x22','232zKBqOj','11YYXlIJ','\x20config.','\x22\x20not\x20found.','Usage:\x20','\x20Note:\x20app\x20\x22','args','object','projectConfig','project','global','Updated','App\x20\x22','\x20Set\x20as\x20default\x20app.','keys','trim','8PzhyGf','765030gAZBQy','bool','apps','Added','2131900PLGoiu','both','\x20<name>\x20--appcode\x20<code>'];a43_0x4fdd=function(){return _0x147beb;};return a43_0x4fdd();}export function buildAppAddFlags(){const _0x370d17=a43_0x3fdd;return[{'name':_0x370d17(0x154),'type':_0x370d17(0x157),'description':'App\x20code','required':!![]},{'name':_0x370d17(0x140),'type':_0x370d17(0x15e),'description':'Use\x20global\x20config\x20scope','default':![]},...getAppProfileFlagDefs()];}export function buildAppRemoveFlags(){const _0x221770=a43_0x3fdd;return[{'name':_0x221770(0x140),'type':_0x221770(0x15e),'description':_0x221770(0x15d),'default':![]}];}export async function validateAppName(_0x2f2d8,_0x411090){const _0x30727e=a43_0x3fdd,_0x53e796=_0x2f2d8[_0x30727e(0x13c)][0x0]?.['trim']();if(!_0x53e796)throw CliErrors[_0x30727e(0x159)](_0x30727e(0x150),_0x30727e(0x13a)+CLI_BIN_NAME+'\x20'+_0x411090+'\x20<name>');}export async function runAppAdd(_0x3e6d0,_0x270735){const _0x51ee64=a43_0x3fdd,_0x3eff8b=_0x3e6d0[_0x51ee64(0x13c)][0x0]?.[_0x51ee64(0x145)]();if(!_0x3eff8b)throw CliErrors[_0x51ee64(0x159)](_0x51ee64(0x150),_0x51ee64(0x13a)+CLI_BIN_NAME+'\x20'+_0x270735+_0x51ee64(0x14d));const _0x5a8ddb=_0x3e6d0['str']('appcode');if(!_0x5a8ddb)throw CliErrors[_0x51ee64(0x134)]('appcode',_0x51ee64(0x13a)+CLI_BIN_NAME+'\x20'+_0x270735+_0x51ee64(0x14d));const _0x2d927f={'global':_0x3e6d0[_0x51ee64(0x148)](_0x51ee64(0x140))},_0x4e6e75=readConfig(_0x2d927f);if(!_0x4e6e75[_0x51ee64(0x149)])_0x4e6e75[_0x51ee64(0x149)]={};const _0x1451b0={'appcode':_0x5a8ddb,...collectAppProfileOverrides(_0x5c59af=>_0x3e6d0[_0x51ee64(0x15c)](_0x5c59af))},_0x18de4a=_0x4e6e75[_0x51ee64(0x149)],_0x5e2626=!!_0x18de4a[_0x3eff8b];_0x18de4a[_0x3eff8b]=_0x1451b0;if(!_0x4e6e75[_0x51ee64(0x14f)])_0x4e6e75[_0x51ee64(0x14f)]=_0x3eff8b;writeConfig(_0x4e6e75,_0x2d927f);const _0x3223e3=!_0x5e2626&&_0x4e6e75[_0x51ee64(0x14f)]===_0x3eff8b?_0x51ee64(0x143):'',_0x490f61=(_0x5e2626?_0x51ee64(0x141):_0x51ee64(0x14a))+'\x20app\x20\x22'+_0x3eff8b+_0x51ee64(0x152)+_0x5a8ddb+')'+scopeLabel(_0x2d927f)+'.'+_0x3223e3;return{'ok':!![],'message':_0x490f61};}export async function runAppRemove(_0x399765,_0x5e2b8b){const _0x50bc3f=a43_0x3fdd,_0x2a91ba=_0x399765['args'][0x0]?.[_0x50bc3f(0x145)]();if(!_0x2a91ba)throw CliErrors['validation']('Missing\x20app\x20name.',_0x50bc3f(0x13a)+CLI_BIN_NAME+'\x20'+_0x5e2b8b+'\x20<name>\x20[--global]');const _0x5175a9=_0x399765['bool'](_0x50bc3f(0x140)),{config:_0x1c8362,layers:_0x16d66e}=readRawConfigWithLayers(),_0x317b4f=_0x1c8362['apps']??{};if(!_0x317b4f[_0x2a91ba])throw CliErrors['validation'](_0x50bc3f(0x142)+_0x2a91ba+'\x22\x20not\x20found.');const _0x3e1e93=_0x16d66e[_0x50bc3f(0x158)]['apps']&&typeof _0x16d66e[_0x50bc3f(0x158)][_0x50bc3f(0x149)]===_0x50bc3f(0x13d)?_0x16d66e[_0x50bc3f(0x158)][_0x50bc3f(0x149)]:{},_0x1515c1=_0x16d66e[_0x50bc3f(0x13e)]['apps']&&typeof _0x16d66e[_0x50bc3f(0x13e)]['apps']===_0x50bc3f(0x13d)?_0x16d66e[_0x50bc3f(0x13e)][_0x50bc3f(0x149)]:{},_0xa30896=appDefinedIn(_0x2a91ba,_0x3e1e93,_0x1515c1,_0x16d66e['projectConfig']['inherit']===![]),_0x2d8356=resolveAppScopeForWrite(_0x2a91ba,_0x5175a9,_0x16d66e),_0x46dcf6={'global':_0x2d8356===_0x50bc3f(0x140)},_0xa53cd=readConfig(_0x46dcf6),_0x27f605=_0xa53cd[_0x50bc3f(0x149)];if(!_0x27f605||!_0x27f605[_0x2a91ba])throw CliErrors[_0x50bc3f(0x159)]('App\x20\x22'+_0x2a91ba+_0x50bc3f(0x139));delete _0x27f605[_0x2a91ba];let _0x315db9='';if(_0xa53cd[_0x50bc3f(0x14f)]===_0x2a91ba){const _0x1b0a66=Object['keys'](_0x27f605);_0xa53cd[_0x50bc3f(0x14f)]=_0x1b0a66[_0x50bc3f(0x15a)]>0x0?_0x1b0a66[0x0]:undefined,_0xa53cd[_0x50bc3f(0x14f)]?_0x315db9=_0x50bc3f(0x135)+_0xa53cd[_0x50bc3f(0x14f)]+'\x22.':delete _0xa53cd[_0x50bc3f(0x14f)];}Object[_0x50bc3f(0x144)](_0x27f605)[_0x50bc3f(0x15a)]===0x0&&(delete _0xa53cd[_0x50bc3f(0x149)],delete _0xa53cd[_0x50bc3f(0x14f)]);writeConfig(_0xa53cd,_0x46dcf6);const _0x463b97=_0xa30896===_0x50bc3f(0x14c)?_0x50bc3f(0x13b)+_0x2a91ba+_0x50bc3f(0x133)+(_0x2d8356===_0x50bc3f(0x13f)?_0x50bc3f(0x140):_0x50bc3f(0x13f))+_0x50bc3f(0x138):'';return{'ok':!![],'message':'Removed\x20app\x20\x22'+_0x2a91ba+'\x22'+scopeLabel(_0x46dcf6)+'.'+_0x315db9+_0x463b97};}
1
+ (function(_0x3e4234,_0x57c1ef){const _0x58fa51=a43_0xe2a2,_0x386051=_0x3e4234();while(!![]){try{const _0x10efd1=-parseInt(_0x58fa51(0x98))/0x1+parseInt(_0x58fa51(0x9a))/0x2*(-parseInt(_0x58fa51(0x8f))/0x3)+parseInt(_0x58fa51(0x82))/0x4*(-parseInt(_0x58fa51(0x80))/0x5)+-parseInt(_0x58fa51(0x9e))/0x6*(-parseInt(_0x58fa51(0x7e))/0x7)+-parseInt(_0x58fa51(0x7c))/0x8*(-parseInt(_0x58fa51(0x8c))/0x9)+-parseInt(_0x58fa51(0x9f))/0xa*(-parseInt(_0x58fa51(0x91))/0xb)+parseInt(_0x58fa51(0x96))/0xc;if(_0x10efd1===_0x57c1ef)break;else _0x386051['push'](_0x386051['shift']());}catch(_0x35752f){_0x386051['push'](_0x386051['shift']());}}}(a43_0x157b,0xf0a3c));import{CliErrors}from'../../errors.js';function a43_0x157b(){const _0x195a6c=['29195RrXjjC','object','92ihjzKx','Usage:\x20','projectConfig','string','validation','args','apps','str','Removed\x20app\x20\x22','App\x20\x22','324909WEPMPM','\x22\x20(appcode:\x20','global','37725fEuzsp','Added','1871507kdcKkq','Use\x20global\x20config\x20scope','Missing\x20app\x20name.','inherit','\x20config.','6021636qLrihW','appcode','1718110CqshEV','\x20Set\x20as\x20default\x20app.','34XlvaaN','\x20Note:\x20app\x20\x22','globalConfig','trim','444NVCYNT','20VtyLvu','defaultApp','\x20<name>\x20[--global]','boolean','keys','bool','\x20<name>\x20--appcode\x20<code>','flagMissing','232yUzHBh','Updated','109998ZLEdTm','both'];a43_0x157b=function(){return _0x195a6c;};return a43_0x157b();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{collectAppProfileOverrides,getAppProfileFlagDefs}from'../../config/schema.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';export function buildAppAddFlags(){const _0x5390af=a43_0xe2a2;return[{'name':_0x5390af(0x97),'type':_0x5390af(0x85),'description':'App\x20code','required':!![]},{'name':_0x5390af(0x8e),'type':_0x5390af(0xa2),'description':_0x5390af(0x92),'default':![]},...getAppProfileFlagDefs()];}export function buildAppRemoveFlags(){const _0x97ec25=a43_0xe2a2;return[{'name':_0x97ec25(0x8e),'type':'boolean','description':_0x97ec25(0x92),'default':![]}];}export async function validateAppName(_0x458975,_0x58bbc4){const _0x30d68b=a43_0xe2a2,_0x8a56d7=_0x458975[_0x30d68b(0x87)][0x0]?.[_0x30d68b(0x9d)]();if(!_0x8a56d7)throw CliErrors['validation'](_0x30d68b(0x93),_0x30d68b(0x83)+CLI_BIN_NAME+'\x20'+_0x58bbc4+'\x20<name>');}export async function runAppAdd(_0x5ef5cc,_0xe3d675){const _0x3464b5=a43_0xe2a2,_0x4f0c0e=_0x5ef5cc[_0x3464b5(0x87)][0x0]?.[_0x3464b5(0x9d)]();if(!_0x4f0c0e)throw CliErrors[_0x3464b5(0x86)](_0x3464b5(0x93),_0x3464b5(0x83)+CLI_BIN_NAME+'\x20'+_0xe3d675+_0x3464b5(0x7a));const _0x4b45c4=_0x5ef5cc[_0x3464b5(0x89)](_0x3464b5(0x97));if(!_0x4b45c4)throw CliErrors[_0x3464b5(0x7b)](_0x3464b5(0x97),_0x3464b5(0x83)+CLI_BIN_NAME+'\x20'+_0xe3d675+_0x3464b5(0x7a));const _0x20aded={'global':_0x5ef5cc[_0x3464b5(0x79)](_0x3464b5(0x8e))},_0x2a9f18=readConfig(_0x20aded);if(!_0x2a9f18[_0x3464b5(0x88)])_0x2a9f18[_0x3464b5(0x88)]={};const _0x1d612d={'appcode':_0x4b45c4,...collectAppProfileOverrides(_0x28e5e3=>_0x5ef5cc[_0x3464b5(0x89)](_0x28e5e3))},_0x3b5627=_0x2a9f18[_0x3464b5(0x88)],_0x27d9d4=!!_0x3b5627[_0x4f0c0e];_0x3b5627[_0x4f0c0e]=_0x1d612d;if(!_0x2a9f18[_0x3464b5(0xa0)])_0x2a9f18[_0x3464b5(0xa0)]=_0x4f0c0e;writeConfig(_0x2a9f18,_0x20aded);const _0x464963=!_0x27d9d4&&_0x2a9f18[_0x3464b5(0xa0)]===_0x4f0c0e?_0x3464b5(0x99):'',_0x4b68ad=(_0x27d9d4?_0x3464b5(0x7d):_0x3464b5(0x90))+'\x20app\x20\x22'+_0x4f0c0e+_0x3464b5(0x8d)+_0x4b45c4+')'+scopeLabel(_0x20aded)+'.'+_0x464963;return{'ok':!![],'message':_0x4b68ad};}function a43_0xe2a2(_0x2f4c4c,_0x3f00b8){_0x2f4c4c=_0x2f4c4c-0x79;const _0x157b46=a43_0x157b();let _0xe2a2f7=_0x157b46[_0x2f4c4c];return _0xe2a2f7;}export async function runAppRemove(_0x9bce32,_0x13eeff){const _0x2ec842=a43_0xe2a2,_0x3b27bd=_0x9bce32[_0x2ec842(0x87)][0x0]?.[_0x2ec842(0x9d)]();if(!_0x3b27bd)throw CliErrors[_0x2ec842(0x86)](_0x2ec842(0x93),'Usage:\x20'+CLI_BIN_NAME+'\x20'+_0x13eeff+_0x2ec842(0xa1));const _0x4fc667=_0x9bce32[_0x2ec842(0x79)](_0x2ec842(0x8e)),{config:_0xf10244,layers:_0x4aa0e2}=readRawConfigWithLayers(),_0x37781e=_0xf10244[_0x2ec842(0x88)]??{};if(!_0x37781e[_0x3b27bd])throw CliErrors['validation'](_0x2ec842(0x8b)+_0x3b27bd+'\x22\x20not\x20found.');const _0x2e4cbf=_0x4aa0e2['globalConfig'][_0x2ec842(0x88)]&&typeof _0x4aa0e2[_0x2ec842(0x9c)]['apps']==='object'?_0x4aa0e2['globalConfig'][_0x2ec842(0x88)]:{},_0x1c2e53=_0x4aa0e2[_0x2ec842(0x84)]['apps']&&typeof _0x4aa0e2[_0x2ec842(0x84)][_0x2ec842(0x88)]===_0x2ec842(0x81)?_0x4aa0e2[_0x2ec842(0x84)][_0x2ec842(0x88)]:{},_0x2d8a03=appDefinedIn(_0x3b27bd,_0x2e4cbf,_0x1c2e53,_0x4aa0e2[_0x2ec842(0x84)][_0x2ec842(0x94)]===![]),_0xf44bce=resolveAppScopeForWrite(_0x3b27bd,_0x4fc667,_0x4aa0e2),_0x2e4828={'global':_0xf44bce===_0x2ec842(0x8e)},_0x272035=readConfig(_0x2e4828),_0x4126cd=_0x272035['apps'];if(!_0x4126cd||!_0x4126cd[_0x3b27bd])throw CliErrors[_0x2ec842(0x86)](_0x2ec842(0x8b)+_0x3b27bd+'\x22\x20not\x20found.');delete _0x4126cd[_0x3b27bd];let _0x4c5dd3='';if(_0x272035[_0x2ec842(0xa0)]===_0x3b27bd){const _0x47932d=Object['keys'](_0x4126cd);_0x272035[_0x2ec842(0xa0)]=_0x47932d['length']>0x0?_0x47932d[0x0]:undefined,_0x272035['defaultApp']?_0x4c5dd3='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x272035[_0x2ec842(0xa0)]+'\x22.':delete _0x272035[_0x2ec842(0xa0)];}Object[_0x2ec842(0xa3)](_0x4126cd)['length']===0x0&&(delete _0x272035[_0x2ec842(0x88)],delete _0x272035[_0x2ec842(0xa0)]);writeConfig(_0x272035,_0x2e4828);const _0x16b4df=_0x2d8a03===_0x2ec842(0x7f)?_0x2ec842(0x9b)+_0x3b27bd+'\x22\x20still\x20defined\x20in\x20'+(_0xf44bce==='project'?'global':'project')+_0x2ec842(0x95):'';return{'ok':!![],'message':_0x2ec842(0x8a)+_0x3b27bd+'\x22'+scopeLabel(_0x2e4828)+'.'+_0x4c5dd3+_0x16b4df};}
@@ -1 +1 @@
1
- function a44_0x69db(_0x3e8fb3,_0x28a175){_0x3e8fb3=_0x3e8fb3-0x1bd;const _0x3316b8=a44_0x3316();let _0x69dbbc=_0x3316b8[_0x3e8fb3];return _0x69dbbc;}(function(_0x2711f5,_0xbada1e){const _0x3d99bb=a44_0x69db,_0x93a3cd=_0x2711f5();while(!![]){try{const _0x41e1c2=parseInt(_0x3d99bb(0x1c4))/0x1+parseInt(_0x3d99bb(0x1ce))/0x2*(-parseInt(_0x3d99bb(0x1cc))/0x3)+-parseInt(_0x3d99bb(0x1c7))/0x4+-parseInt(_0x3d99bb(0x1be))/0x5+-parseInt(_0x3d99bb(0x1c6))/0x6*(-parseInt(_0x3d99bb(0x1ca))/0x7)+parseInt(_0x3d99bb(0x1c2))/0x8+-parseInt(_0x3d99bb(0x1d4))/0x9;if(_0x41e1c2===_0xbada1e)break;else _0x93a3cd['push'](_0x93a3cd['shift']());}catch(_0x556230){_0x93a3cd['push'](_0x93a3cd['shift']());}}}(a44_0x3316,0x1fe4d));import{input,checkbox,select}from'@inquirer/prompts';import a44_0x54411f from'chalk';import{validateAppcode}from'../../commands/common/validate.js';import{listRemoteApps}from'../../core/api-client.js';import{withActiveCookie}from'../../utils/with-active-cookie.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';export async function promptCustomAppcode(){const _0x3a038b=a44_0x69db,_0x5ad3bb=await input({'message':_0x3a038b(0x1cb),'validate':_0x2c561b=>{const _0x593dbb=_0x3a038b,_0x56b256=validateAppcode(_0x2c561b['trim']());return _0x56b256['valid']||_0x56b256['message']||_0x593dbb(0x1d2);}});return _0x5ad3bb[_0x3a038b(0x1da)]();}export async function promptAppSelection(_0xe0903c){const _0x5a776c=a44_0x69db,_0x442a40=[{'name':a44_0x54411f[_0x5a776c(0x1bf)](_0x5a776c(0x1c9)),'value':-0x1},..._0xe0903c['map']((_0xfe8a4a,_0x558494)=>({'name':_0xfe8a4a['appName']+'\x20\x20'+a44_0x54411f['gray']('('+_0xfe8a4a['appCode']+')'),'value':_0x558494}))],_0x359345=await checkbox({'message':_0x5a776c(0x1d1)+a44_0x54411f[_0x5a776c(0x1e0)](_0xe0903c[_0x5a776c(0x1c5)])+_0x5a776c(0x1cd),'choices':_0x442a40,'loop':![]});if(_0x359345[_0x5a776c(0x1bd)](-0x1))return'custom';if(_0x359345[_0x5a776c(0x1c5)]===0x0)return _0x5a776c(0x1d9);return _0x359345[_0x5a776c(0x1e1)](_0x1b0247=>_0xe0903c[_0x1b0247]);}export async function promptSingleAppSelection(_0x2cfe14){const _0x595a67=a44_0x69db,_0x2b581e=[{'name':a44_0x54411f['gray'](_0x595a67(0x1c1)),'value':_0x595a67(0x1df)},{'name':a44_0x54411f['yellow'](_0x595a67(0x1c9)),'value':_0x595a67(0x1d9)},..._0x2cfe14[_0x595a67(0x1e1)](_0x3d96ea=>({'name':_0x3d96ea[_0x595a67(0x1d6)]+'\x20\x20'+a44_0x54411f[_0x595a67(0x1c0)]('('+_0x3d96ea[_0x595a67(0x1d8)]+')'),'value':_0x3d96ea[_0x595a67(0x1d8)]}))],_0x4f09ec=await select({'message':_0x595a67(0x1d0),'choices':_0x2b581e});if(_0x4f09ec===_0x595a67(0x1df))return _0x595a67(0x1df);if(_0x4f09ec===_0x595a67(0x1d9))return _0x595a67(0x1d9);return _0x2cfe14['find'](_0x25bb15=>_0x25bb15[_0x595a67(0x1d8)]===_0x4f09ec);}export async function selectSingleAppcode(_0x1a40f9){const _0x2d3fef=a44_0x69db;if(!_0x1a40f9)return writeCliSideChannelLine(a44_0x54411f[_0x2d3fef(0x1c0)](_0x2d3fef(0x1c3))),_fallbackOrSkip();writeCliSideChannelLine(_0x2d3fef(0x1db));let _0x53fcf4;try{_0x53fcf4=await withActiveCookie(_0x1a40f9,()=>listRemoteApps());}catch(_0x40ab73){writeCliSideChannelLine(a44_0x54411f[_0x2d3fef(0x1bf)](_0x2d3fef(0x1dc)));if(_0x40ab73 instanceof Error)writeCliSideChannelLine(a44_0x54411f['gray'](_0x2d3fef(0x1d3)+_0x40ab73['message']+')'));return _fallbackOrSkip();}if(_0x53fcf4[_0x2d3fef(0x1c5)]===0x0)return writeCliSideChannelLine(a44_0x54411f[_0x2d3fef(0x1bf)]('未找到可用应用。')),_fallbackOrSkip();const _0x45a59f=await promptSingleAppSelection(_0x53fcf4);if(_0x45a59f===_0x2d3fef(0x1df))return'';if(_0x45a59f===_0x2d3fef(0x1d9))return promptCustomAppcode();return _0x45a59f[_0x2d3fef(0x1d8)];}function a44_0x3316(){const _0xb342c0=['正在获取可用应用列表...','无法获取远程应用列表,请手动输入。','\x0a无法获取远程应用列表,请手动输入。','✎\x20手动输入','skip','cyan','map','includes','86955MAuNGy','yellow','gray','(跳过,稍后通过\x20config\x20set\x20appcode\x20配置)','1636416njSLTR','(未检测到登录态,请手动输入\x20App\x20Code\x20或直接跳过)','251431UZEnkD','length','11712qpyWCG','572152IVwRpb','message','✎\x20自定义输入\x20appcode','679nzIpqN','请输入\x20App\x20Code:','12dCQopb','\x20个应用,请选择\x20(空格勾选,\x20a=全选,\x20i=反选):','37450mrUKEt','(跳过,稍后配置)','请选择要绑定的应用:','获取到\x20','Invalid\x20App\x20Code','\x20\x20(','2514249JiqsIK','\x0a未找到可用应用。','appName','App\x20Code:','appCode','custom','trim'];a44_0x3316=function(){return _0xb342c0;};return a44_0x3316();}export async function selectMultipleApps(_0x525203){const _0x2bfb10=a44_0x69db;writeCliSideChannelLine(_0x2bfb10(0x1db));let _0x3e1476;try{_0x3e1476=await withActiveCookie(_0x525203,()=>listRemoteApps());}catch(_0x1e9fe7){writeCliSideChannelLine(_0x2bfb10(0x1dd));if(_0x1e9fe7 instanceof Error)writeCliSideChannelLine(_0x2bfb10(0x1d3)+_0x1e9fe7[_0x2bfb10(0x1c8)]+')');return _0x2bfb10(0x1d9);}if(_0x3e1476[_0x2bfb10(0x1c5)]===0x0)return writeCliSideChannelLine(_0x2bfb10(0x1d5)),'custom';return promptAppSelection(_0x3e1476);}async function _fallbackOrSkip(){const _0x208874=a44_0x69db,_0x54be19=await select({'message':_0x208874(0x1d7),'choices':[{'name':a44_0x54411f[_0x208874(0x1c0)](_0x208874(0x1cf)),'value':_0x208874(0x1df)},{'name':a44_0x54411f[_0x208874(0x1bf)](_0x208874(0x1de)),'value':'manual'}]});if(_0x54be19===_0x208874(0x1df))return'';return promptCustomAppcode();}
1
+ (function(_0x3697d2,_0x1539c6){const _0x298b70=a44_0x3c15,_0x226f9d=_0x3697d2();while(!![]){try{const _0x3f41e2=parseInt(_0x298b70(0xc8))/0x1+-parseInt(_0x298b70(0xec))/0x2*(-parseInt(_0x298b70(0xda))/0x3)+parseInt(_0x298b70(0xd4))/0x4*(parseInt(_0x298b70(0xd8))/0x5)+parseInt(_0x298b70(0xe7))/0x6+-parseInt(_0x298b70(0xe8))/0x7+-parseInt(_0x298b70(0xe6))/0x8+-parseInt(_0x298b70(0xce))/0x9;if(_0x3f41e2===_0x1539c6)break;else _0x226f9d['push'](_0x226f9d['shift']());}catch(_0x26bc30){_0x226f9d['push'](_0x226f9d['shift']());}}}(a44_0x4c9c,0x6228c));import{input,checkbox,select}from'@inquirer/prompts';import a44_0xc5ca69 from'chalk';import{validateAppcode}from'../../commands/common/validate.js';import{listRemoteApps}from'../../core/api-client.js';import{withActiveCookie}from'../../utils/with-active-cookie.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';export async function promptCustomAppcode(){const _0x45173a=a44_0x3c15,_0x43c9e1=await input({'message':'请输入\x20App\x20Code:','validate':_0x462ae2=>{const _0x169443=a44_0x3c15,_0x4359e2=validateAppcode(_0x462ae2[_0x169443(0xe3)]());return _0x4359e2[_0x169443(0xca)]||_0x4359e2['message']||_0x169443(0xd7);}});return _0x43c9e1[_0x45173a(0xe3)]();}export async function promptAppSelection(_0x29fe92){const _0x27030d=a44_0x3c15,_0x210b52=[{'name':a44_0xc5ca69[_0x27030d(0xcd)]('✎\x20自定义输入\x20appcode'),'value':-0x1},..._0x29fe92[_0x27030d(0xc9)]((_0x5a529c,_0x23dfe6)=>({'name':_0x5a529c[_0x27030d(0xde)]+'\x20\x20'+a44_0xc5ca69['gray']('('+_0x5a529c[_0x27030d(0xcc)]+')'),'value':_0x23dfe6}))],_0x2a6dd3=await checkbox({'message':_0x27030d(0xdf)+a44_0xc5ca69['cyan'](_0x29fe92[_0x27030d(0xd0)])+'\x20个应用,请选择\x20(空格勾选,\x20a=全选,\x20i=反选):','choices':_0x210b52,'loop':![]});if(_0x2a6dd3[_0x27030d(0xd2)](-0x1))return _0x27030d(0xeb);if(_0x2a6dd3['length']===0x0)return _0x27030d(0xeb);return _0x2a6dd3[_0x27030d(0xc9)](_0x1aca26=>_0x29fe92[_0x1aca26]);}export async function promptSingleAppSelection(_0x425dcc){const _0x4643e1=a44_0x3c15,_0x1e5e30=[{'name':a44_0xc5ca69['gray'](_0x4643e1(0xd3)),'value':_0x4643e1(0xea)},{'name':a44_0xc5ca69[_0x4643e1(0xcd)](_0x4643e1(0xd1)),'value':'custom'},..._0x425dcc[_0x4643e1(0xc9)](_0x2d0efd=>({'name':_0x2d0efd[_0x4643e1(0xde)]+'\x20\x20'+a44_0xc5ca69[_0x4643e1(0xcb)]('('+_0x2d0efd[_0x4643e1(0xcc)]+')'),'value':_0x2d0efd[_0x4643e1(0xcc)]}))],_0x1e3af8=await select({'message':_0x4643e1(0xd6),'choices':_0x1e5e30});if(_0x1e3af8===_0x4643e1(0xea))return _0x4643e1(0xea);if(_0x1e3af8===_0x4643e1(0xeb))return _0x4643e1(0xeb);return _0x425dcc['find'](_0x27f618=>_0x27f618['appCode']===_0x1e3af8);}function a44_0x3c15(_0x3cc884,_0x28cf61){_0x3cc884=_0x3cc884-0xc8;const _0x4c9ca6=a44_0x4c9c();let _0x3c15c6=_0x4c9ca6[_0x3cc884];return _0x3c15c6;}export async function selectSingleAppcode(_0x64e4e6){const _0xeb9794=a44_0x3c15;if(!_0x64e4e6)return writeCliSideChannelLine(a44_0xc5ca69['gray'](_0xeb9794(0xe1))),_fallbackOrSkip();writeCliSideChannelLine('正在获取可用应用列表...');let _0x5ddb39;try{_0x5ddb39=await withActiveCookie(_0x64e4e6,()=>listRemoteApps());}catch(_0x49882c){writeCliSideChannelLine(a44_0xc5ca69[_0xeb9794(0xcd)](_0xeb9794(0xe4)));if(_0x49882c instanceof Error)writeCliSideChannelLine(a44_0xc5ca69[_0xeb9794(0xcb)](_0xeb9794(0xe9)+_0x49882c[_0xeb9794(0xdc)]+')'));return _fallbackOrSkip();}if(_0x5ddb39['length']===0x0)return writeCliSideChannelLine(a44_0xc5ca69[_0xeb9794(0xcd)](_0xeb9794(0xe2))),_fallbackOrSkip();const _0x4dd1c8=await promptSingleAppSelection(_0x5ddb39);if(_0x4dd1c8==='skip')return'';if(_0x4dd1c8===_0xeb9794(0xeb))return promptCustomAppcode();return _0x4dd1c8['appCode'];}export async function selectMultipleApps(_0xc2dcbe){const _0x148bee=a44_0x3c15;writeCliSideChannelLine(_0x148bee(0xdb));let _0x11a8c1;try{_0x11a8c1=await withActiveCookie(_0xc2dcbe,()=>listRemoteApps());}catch(_0x248d06){writeCliSideChannelLine(_0x148bee(0xe0));if(_0x248d06 instanceof Error)writeCliSideChannelLine('\x20\x20('+_0x248d06[_0x148bee(0xdc)]+')');return _0x148bee(0xeb);}if(_0x11a8c1[_0x148bee(0xd0)]===0x0)return writeCliSideChannelLine(_0x148bee(0xdd)),_0x148bee(0xeb);return promptAppSelection(_0x11a8c1);}function a44_0x4c9c(){const _0x45eb31=['2064360jCxPLv','4154430FMnOag','\x20\x20(','skip','custom','121256sBJWHM','157067xxSvyh','map','valid','gray','appCode','yellow','2460825VlyOnz','(跳过,稍后配置)','length','✎\x20自定义输入\x20appcode','includes','(跳过,稍后通过\x20config\x20set\x20appcode\x20配置)','8xBAJMa','manual','请选择要绑定的应用:','Invalid\x20App\x20Code','1494120LnwmgM','✎\x20手动输入','12oqRcVH','正在获取可用应用列表...','message','\x0a未找到可用应用。','appName','获取到\x20','\x0a无法获取远程应用列表,请手动输入。','(未检测到登录态,请手动输入\x20App\x20Code\x20或直接跳过)','未找到可用应用。','trim','无法获取远程应用列表,请手动输入。','App\x20Code:','578496CKyxsa'];a44_0x4c9c=function(){return _0x45eb31;};return a44_0x4c9c();}async function _fallbackOrSkip(){const _0x552354=a44_0x3c15,_0x5a66b6=await select({'message':_0x552354(0xe5),'choices':[{'name':a44_0xc5ca69[_0x552354(0xcb)](_0x552354(0xcf)),'value':_0x552354(0xea)},{'name':a44_0xc5ca69[_0x552354(0xcd)](_0x552354(0xd9)),'value':_0x552354(0xd5)}]});if(_0x5a66b6==='skip')return'';return promptCustomAppcode();}
@@ -1 +1 @@
1
- const a45_0x5e2251=a45_0x432f;(function(_0x1e25e8,_0x14ab0d){const _0xfc866b=a45_0x432f,_0x293dd6=_0x1e25e8();while(!![]){try{const _0x537fdc=-parseInt(_0xfc866b(0x18e))/0x1*(-parseInt(_0xfc866b(0x173))/0x2)+-parseInt(_0xfc866b(0x17f))/0x3+-parseInt(_0xfc866b(0x17d))/0x4*(parseInt(_0xfc866b(0x17a))/0x5)+parseInt(_0xfc866b(0x16f))/0x6*(-parseInt(_0xfc866b(0x175))/0x7)+parseInt(_0xfc866b(0x188))/0x8*(parseInt(_0xfc866b(0x179))/0x9)+-parseInt(_0xfc866b(0x171))/0xa*(-parseInt(_0xfc866b(0x181))/0xb)+-parseInt(_0xfc866b(0x178))/0xc*(-parseInt(_0xfc866b(0x17c))/0xd);if(_0x537fdc===_0x14ab0d)break;else _0x293dd6['push'](_0x293dd6['shift']());}catch(_0x3a3038){_0x293dd6['push'](_0x293dd6['shift']());}}}(a45_0x47ac,0xf34ae));import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const TERMINAL_STATUSES=new Set([a45_0x5e2251(0x18b),'FAILED']),NON_TERMINAL_STATUSES=new Set([a45_0x5e2251(0x177),'PROCESSING']);export function normalizeAsyncTask(_0x551c91){const _0xffa111=a45_0x5e2251,_0x361f6a=typeof _0x551c91?.[_0xffa111(0x189)]===_0xffa111(0x16b)?_0x551c91[_0xffa111(0x189)][_0xffa111(0x16e)]():'';if(!_0x361f6a)throw CliErrors[_0xffa111(0x187)](_0xffa111(0x170));const _0x25e5f9=typeof _0x551c91[_0xffa111(0x176)]===_0xffa111(0x16b)?_0x551c91[_0xffa111(0x176)][_0xffa111(0x16e)]()[_0xffa111(0x18c)]():'';if(!_0x25e5f9)throw CliErrors[_0xffa111(0x187)](_0xffa111(0x183)+_0x361f6a+_0xffa111(0x182));return{'taskId':_0x361f6a,'status':_0x25e5f9,'errorMessage':typeof _0x551c91[_0xffa111(0x174)]===_0xffa111(0x16b)&&_0x551c91['errorMessage']['trim']()?_0x551c91['errorMessage']['trim']():null,'isTerminal':TERMINAL_STATUSES[_0xffa111(0x18d)](_0x25e5f9),'knownStatus':TERMINAL_STATUSES[_0xffa111(0x18d)](_0x25e5f9)||NON_TERMINAL_STATUSES[_0xffa111(0x18d)](_0x25e5f9)};}export function buildAsyncTaskStatusCommand(_0x184e6e,_0xfcda31){const _0x3216ac=a45_0x5e2251;return CLI_BIN_NAME+'\x20task\x20status\x20--task-id\x20'+quoteShellArg(_0x184e6e)+_0x3216ac(0x17b)+quoteShellArg(_0xfcda31)+_0x3216ac(0x186);}function a45_0x432f(_0x227c58,_0x202e32){_0x227c58=_0x227c58-0x16b;const _0x47ac7d=a45_0x47ac();let _0x432fae=_0x47ac7d[_0x227c58];return _0x432fae;}export function asyncTaskMessage(_0x242dec){const _0x5a5692=a45_0x5e2251;switch(_0x242dec[_0x5a5692(0x176)]){case _0x5a5692(0x177):return _0x5a5692(0x16d)+_0x242dec[_0x5a5692(0x189)]+_0x5a5692(0x172);case'PROCESSING':return _0x5a5692(0x16d)+_0x242dec[_0x5a5692(0x189)]+'\x20is\x20processing.';case'SUCCESS':return _0x5a5692(0x16d)+_0x242dec['taskId']+_0x5a5692(0x17e);case _0x5a5692(0x184):return _0x242dec['errorMessage']?_0x5a5692(0x16d)+_0x242dec[_0x5a5692(0x189)]+_0x5a5692(0x185)+_0x242dec[_0x5a5692(0x174)]:'Task\x20'+_0x242dec[_0x5a5692(0x189)]+_0x5a5692(0x16c);default:return _0x5a5692(0x16d)+_0x242dec[_0x5a5692(0x189)]+_0x5a5692(0x18f)+_0x242dec[_0x5a5692(0x176)]+'.';}}function quoteShellArg(_0x150b97){const _0x5b123a=a45_0x5e2251;return'\x27'+_0x150b97[_0x5b123a(0x18a)](/'/g,_0x5b123a(0x180))+'\x27';}function a45_0x47ac(){const _0x872912=['Async\x20task\x20response\x20did\x20not\x20contain\x20a\x20taskId.','7660nwZCQN','\x20is\x20pending.','362kUPrZG','errorMessage','11418722fBkQSN','status','PENDING','36DNuIQD','9VmZsdn','908465LpAgrd','\x20--appcode\x20','3543241rvoAeP','4IBpADp','\x20completed\x20successfully.','3464667eJIcbM','\x27\x5c\x27\x27','13783bQHfXW','\x20response\x20did\x20not\x20contain\x20a\x20status.','Async\x20task\x20','FAILED','\x20failed:\x20','\x20--format\x20compress','apiError','5217488lzXLnK','taskId','replace','SUCCESS','toUpperCase','has','8479yDXnLP','\x20returned\x20unknown\x20status\x20','string','\x20failed.','Task\x20','trim','6kOimvT'];a45_0x47ac=function(){return _0x872912;};return a45_0x47ac();}
1
+ const a45_0x4aaa30=a45_0x1979;function a45_0x1979(_0x5d1a6d,_0x53fc66){_0x5d1a6d=_0x5d1a6d-0x91;const _0x3722ad=a45_0x3722();let _0x1979a7=_0x3722ad[_0x5d1a6d];return _0x1979a7;}(function(_0x458255,_0x1bf63e){const _0x294386=a45_0x1979,_0x3d1702=_0x458255();while(!![]){try{const _0x13a66a=-parseInt(_0x294386(0x98))/0x1+-parseInt(_0x294386(0x93))/0x2*(parseInt(_0x294386(0xb2))/0x3)+parseInt(_0x294386(0x94))/0x4*(parseInt(_0x294386(0x92))/0x5)+parseInt(_0x294386(0xb1))/0x6+parseInt(_0x294386(0xa6))/0x7+-parseInt(_0x294386(0xa1))/0x8+-parseInt(_0x294386(0xae))/0x9*(-parseInt(_0x294386(0xa2))/0xa);if(_0x13a66a===_0x1bf63e)break;else _0x3d1702['push'](_0x3d1702['shift']());}catch(_0x1867b4){_0x3d1702['push'](_0x3d1702['shift']());}}}(a45_0x3722,0xd3b30));function a45_0x3722(){const _0x196712=['Async\x20task\x20response\x20did\x20not\x20contain\x20a\x20taskId.','apiError','errorMessage','\x27\x5c\x27\x27','status','FAILED','295533xDqijM','toUpperCase','replace','1748826JKiVDn','3jQRFIz','trim','Task\x20','\x20returned\x20unknown\x20status\x20','string','745kvWrEa','1460598LWbmmc','13480TNPeyG','has','Async\x20task\x20','\x20is\x20processing.','660219ThzoBH','\x20completed\x20successfully.','\x20failed.','\x20response\x20did\x20not\x20contain\x20a\x20status.','PROCESSING','PENDING','SUCCESS','\x20is\x20pending.','\x20--appcode\x20','9352488qleEYy','730pcBSEq','taskId','\x20task\x20status\x20--task-id\x20','\x20--format\x20compress','1651979UEnwTG','\x20failed:\x20'];a45_0x3722=function(){return _0x196712;};return a45_0x3722();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';const TERMINAL_STATUSES=new Set(['SUCCESS',a45_0x4aaa30(0xad)]),NON_TERMINAL_STATUSES=new Set(['PENDING',a45_0x4aaa30(0x9c)]);export function normalizeAsyncTask(_0x41b1cd){const _0x4830a1=a45_0x4aaa30,_0x21887e=typeof _0x41b1cd?.['taskId']===_0x4830a1(0x91)?_0x41b1cd[_0x4830a1(0xa3)][_0x4830a1(0xb3)]():'';if(!_0x21887e)throw CliErrors[_0x4830a1(0xa9)](_0x4830a1(0xa8));const _0x2fd8ec=typeof _0x41b1cd[_0x4830a1(0xac)]===_0x4830a1(0x91)?_0x41b1cd['status'][_0x4830a1(0xb3)]()[_0x4830a1(0xaf)]():'';if(!_0x2fd8ec)throw CliErrors[_0x4830a1(0xa9)](_0x4830a1(0x96)+_0x21887e+_0x4830a1(0x9b));return{'taskId':_0x21887e,'status':_0x2fd8ec,'errorMessage':typeof _0x41b1cd[_0x4830a1(0xaa)]==='string'&&_0x41b1cd[_0x4830a1(0xaa)][_0x4830a1(0xb3)]()?_0x41b1cd['errorMessage'][_0x4830a1(0xb3)]():null,'isTerminal':TERMINAL_STATUSES[_0x4830a1(0x95)](_0x2fd8ec),'knownStatus':TERMINAL_STATUSES['has'](_0x2fd8ec)||NON_TERMINAL_STATUSES[_0x4830a1(0x95)](_0x2fd8ec)};}export function buildAsyncTaskStatusCommand(_0x2a6ae1,_0x35bfd9){const _0x32b5a0=a45_0x4aaa30;return CLI_BIN_NAME+_0x32b5a0(0xa4)+quoteShellArg(_0x2a6ae1)+_0x32b5a0(0xa0)+quoteShellArg(_0x35bfd9)+_0x32b5a0(0xa5);}export function asyncTaskMessage(_0x783dc7){const _0x283602=a45_0x4aaa30;switch(_0x783dc7[_0x283602(0xac)]){case _0x283602(0x9d):return _0x283602(0xb4)+_0x783dc7[_0x283602(0xa3)]+_0x283602(0x9f);case _0x283602(0x9c):return _0x283602(0xb4)+_0x783dc7['taskId']+_0x283602(0x97);case _0x283602(0x9e):return _0x283602(0xb4)+_0x783dc7['taskId']+_0x283602(0x99);case _0x283602(0xad):return _0x783dc7[_0x283602(0xaa)]?_0x283602(0xb4)+_0x783dc7['taskId']+_0x283602(0xa7)+_0x783dc7[_0x283602(0xaa)]:_0x283602(0xb4)+_0x783dc7[_0x283602(0xa3)]+_0x283602(0x9a);default:return'Task\x20'+_0x783dc7[_0x283602(0xa3)]+_0x283602(0xb5)+_0x783dc7[_0x283602(0xac)]+'.';}}function quoteShellArg(_0x1ac1ce){const _0x83395=a45_0x4aaa30;return'\x27'+_0x1ac1ce[_0x83395(0xb0)](/'/g,_0x83395(0xab))+'\x27';}
@@ -1 +1 @@
1
- function a46_0x4fcc(_0x392726,_0x2585ed){_0x392726=_0x392726-0x144;var _0x3e1c39=a46_0x3e1c();var _0x4fcc71=_0x3e1c39[_0x392726];return _0x4fcc71;}function a46_0x3e1c(){var _0x388aef=['5004210daeqlE','14081816jPwuUN','42491VFRxrj','350dtOUwC','48mHikoL','url','description','108PyFxug','1120935mFTuuk','method','1795584wUlYsP','174228GDlsvd','126540HdGhsh'];a46_0x3e1c=function(){return _0x388aef;};return a46_0x3e1c();}(function(_0x141f2e,_0x5bac0b){var _0x5c8276=a46_0x4fcc,_0x3e6b95=_0x141f2e();while(!![]){try{var _0x5bf776=parseInt(_0x5c8276(0x145))/0x1*(-parseInt(_0x5c8276(0x147))/0x2)+-parseInt(_0x5c8276(0x14b))/0x3+-parseInt(_0x5c8276(0x14d))/0x4+-parseInt(_0x5c8276(0x14f))/0x5+parseInt(_0x5c8276(0x14e))/0x6*(-parseInt(_0x5c8276(0x146))/0x7)+-parseInt(_0x5c8276(0x144))/0x8+-parseInt(_0x5c8276(0x14a))/0x9*(-parseInt(_0x5c8276(0x150))/0xa);if(_0x5bf776===_0x5bac0b)break;else _0x3e6b95['push'](_0x3e6b95['shift']());}catch(_0x4fc221){_0x3e6b95['push'](_0x3e6b95['shift']());}}}(a46_0x3e1c,0xe1e6c));export function asDryRunResult(_0x27ac8e,_0x306f56){var _0x4a6e84=a46_0x4fcc;return Object['defineProperties'](_0x27ac8e,{'method':{'value':_0x306f56[_0x4a6e84(0x14c)],'enumerable':![]},'url':{'value':_0x306f56[_0x4a6e84(0x148)],'enumerable':![]},..._0x306f56[_0x4a6e84(0x149)]?{'description':{'value':_0x306f56[_0x4a6e84(0x149)],'enumerable':![]}}:{}});}
1
+ function a46_0x4103(){var _0x29c8a1=['30kGlSPv','81194XMxDaj','446yVrcfI','url','363429NyaeIy','description','2778ZXLzLW','880070GISbkq','8790496QeEfcA','defineProperties','586278fIWpXC','1558344YzgDWG','30ZafYka','8VxoNmi'];a46_0x4103=function(){return _0x29c8a1;};return a46_0x4103();}(function(_0x42e3b5,_0x4a2b71){var _0x2b6d87=a46_0x430e,_0x326f33=_0x42e3b5();while(!![]){try{var _0x3c4ebd=-parseInt(_0x2b6d87(0x120))/0x1+parseInt(_0x2b6d87(0x113))/0x2*(parseInt(_0x2b6d87(0x117))/0x3)+-parseInt(_0x2b6d87(0x11e))/0x4*(parseInt(_0x2b6d87(0x118))/0x5)+-parseInt(_0x2b6d87(0x11d))/0x6*(parseInt(_0x2b6d87(0x11b))/0x7)+parseInt(_0x2b6d87(0x11c))/0x8+parseInt(_0x2b6d87(0x115))/0x9*(-parseInt(_0x2b6d87(0x11f))/0xa)+parseInt(_0x2b6d87(0x119))/0xb;if(_0x3c4ebd===_0x4a2b71)break;else _0x326f33['push'](_0x326f33['shift']());}catch(_0x2fac20){_0x326f33['push'](_0x326f33['shift']());}}}(a46_0x4103,0x377dc));function a46_0x430e(_0x17787c,_0x4a0f9e){_0x17787c=_0x17787c-0x113;var _0x41033a=a46_0x4103();var _0x430e3e=_0x41033a[_0x17787c];return _0x430e3e;}export function asDryRunResult(_0x546f2b,_0x1c7249){var _0x38a718=a46_0x430e;return Object[_0x38a718(0x11a)](_0x546f2b,{'method':{'value':_0x1c7249['method'],'enumerable':![]},'url':{'value':_0x1c7249[_0x38a718(0x114)],'enumerable':![]},..._0x1c7249[_0x38a718(0x116)]?{'description':{'value':_0x1c7249[_0x38a718(0x116)],'enumerable':![]}}:{}});}
@@ -12,7 +12,7 @@ export declare const CODE_FLAG: FlagDef;
12
12
  export declare const CODE_FLAG_OPTIONAL: FlagDef;
13
13
  /** Dataset --datasetcode(可选,常用于 page / bff / sql 等跨资源命令) */
14
14
  export declare const DATASETCODE_FLAG_OPTIONAL: FlagDef;
15
- /** SQL/BFF --sqlcode:xxxxxxxx-xxxxxxxx 格式 */
15
+ /** SQL/Backend Function --sqlcode:xxxxxxxx-xxxxxxxx 格式 */
16
16
  export declare const SQLCODE_FLAG: FlagDef;
17
17
  /** --appcode:显式指定应用 code(覆盖配置文件,用于 dataset 命令) */
18
18
  export declare const APPCODE_FLAG_OPTIONAL: FlagDef;
@@ -1 +1 @@
1
- const a47_0x52b253=a47_0x4fec;(function(_0xbba83d,_0x2482c7){const _0x2315fd=a47_0x4fec,_0x25ff62=_0xbba83d();while(!![]){try{const _0x2f5b65=parseInt(_0x2315fd(0x1fd))/0x1*(-parseInt(_0x2315fd(0x1f6))/0x2)+-parseInt(_0x2315fd(0x1f9))/0x3+-parseInt(_0x2315fd(0x1f2))/0x4+parseInt(_0x2315fd(0x1f7))/0x5*(-parseInt(_0x2315fd(0x1fa))/0x6)+parseInt(_0x2315fd(0x203))/0x7+-parseInt(_0x2315fd(0x204))/0x8*(parseInt(_0x2315fd(0x1f8))/0x9)+parseInt(_0x2315fd(0x208))/0xa;if(_0x2f5b65===_0x2482c7)break;else _0x25ff62['push'](_0x25ff62['shift']());}catch(_0x5673a3){_0x25ff62['push'](_0x25ff62['shift']());}}}(a47_0x1eb8,0xed688));export const DATASET_CODE_PATTERN={'regex':/^[a-f0-9]{32}(?:_[^_\s]+_[^_\s]+)?$/i,'description':'a\x2032-character\x20hex\x20code,\x20optionally\x20with\x20`_xx_xx`\x20suffix\x20(e.g.\x2099a909313f1fa7153186431e1c551588\x20or\x2099a909313f1fa7153186431e1c551588_75_3c7120aa)'};function a47_0x4fec(_0x556ef5,_0x395169){_0x556ef5=_0x556ef5-0x1f2;const _0x1eb8e2=a47_0x1eb8();let _0x4fecd1=_0x1eb8e2[_0x556ef5];return _0x4fecd1;}export const CODE_FLAG={'name':a47_0x52b253(0x201),'type':a47_0x52b253(0x209),'required':!![],'description':'Dataset\x20code\x20(32-char\x20hex,\x20optionally\x20with\x20_xx_xx\x20suffix)','pattern':DATASET_CODE_PATTERN};export const CODE_FLAG_OPTIONAL={...CODE_FLAG,'required':![]};export const DATASETCODE_FLAG_OPTIONAL={...CODE_FLAG_OPTIONAL,'name':'datasetcode','description':a47_0x52b253(0x1fb)};export const SQLCODE_FLAG={'name':'sqlcode','type':a47_0x52b253(0x209),'required':!![],'description':a47_0x52b253(0x1f4),'pattern':{'regex':/^[a-f0-9]{8}-[a-f0-9]{8}$/i,'description':a47_0x52b253(0x1fc)}};export const APPCODE_FLAG_OPTIONAL={'name':a47_0x52b253(0x205),'type':a47_0x52b253(0x209),'required':![],'description':a47_0x52b253(0x1f5)};export const APPCODE_FLAG={...APPCODE_FLAG_OPTIONAL,'required':!![],'description':'App\x20code\x20(e.g.\x20app-xxxxx)'};export const SQLCODE_FLAG_OPTIONAL={...SQLCODE_FLAG,'required':![]};function a47_0x1eb8(){const _0x36ece6=['SQL\x20code\x20in\x20format\x20xxxxxxxx-xxxxxxxx\x20(e.g.\x202305f915-dd48cd4c)','31tuuQOS','number','MYSQL','boolean','code','dbtype','6496546NRkqTv','23408RILGyY','appcode','POSTGRESQL','Database\x20product\x20type','40288620ROJeiE','string','4138608dTLOov','skip-connection-test','SQL\x20code\x20identifier\x20(format:\x20xxxxxxxx-xxxxxxxx,\x20e.g.\x202305f915-dd48cd4c)','App\x20code\x20(overrides\x20config\x20file,\x20e.g.\x20app-xxxxx)','27338keTHis','13145QWvbNh','5310STKIJL','2068101kOHRAz','252CYRePu','Dataset\x20code\x20(32-char\x20hex,\x20optionally\x20with\x20_xx_xx\x20suffix)'];a47_0x1eb8=function(){return _0x36ece6;};return a47_0x1eb8();}export const DBLINK_ID_FLAG={'name':'id','type':a47_0x52b253(0x1fe),'required':!![],'description':'Database\x20connection\x20ID\x20(dblink\x20id\x20from\x20db\x20list)'};export const DB_TYPE_FLAG={'name':a47_0x52b253(0x202),'type':a47_0x52b253(0x209),'required':!![],'description':a47_0x52b253(0x207),'enum':[a47_0x52b253(0x1ff),a47_0x52b253(0x206)]};export const SKIP_CONNECTION_TEST_FLAG={'name':a47_0x52b253(0x1f3),'type':a47_0x52b253(0x200),'description':'Skip\x20testing\x20the\x20unsaved\x20database\x20configuration\x20before\x20create/update'};
1
+ const a47_0x579263=a47_0x2963;(function(_0x30d88e,_0x1b6f0a){const _0x328c83=a47_0x2963,_0x520370=_0x30d88e();while(!![]){try{const _0xdbf73a=parseInt(_0x328c83(0xd5))/0x1*(-parseInt(_0x328c83(0xd4))/0x2)+-parseInt(_0x328c83(0xc8))/0x3+parseInt(_0x328c83(0xc3))/0x4+parseInt(_0x328c83(0xd6))/0x5*(parseInt(_0x328c83(0xd0))/0x6)+parseInt(_0x328c83(0xc6))/0x7*(parseInt(_0x328c83(0xd7))/0x8)+parseInt(_0x328c83(0xd3))/0x9*(parseInt(_0x328c83(0xca))/0xa)+-parseInt(_0x328c83(0xc9))/0xb;if(_0xdbf73a===_0x1b6f0a)break;else _0x520370['push'](_0x520370['shift']());}catch(_0xc9d101){_0x520370['push'](_0x520370['shift']());}}}(a47_0x428d,0xf0b20));export const DATASET_CODE_PATTERN={'regex':/^[a-f0-9]{32}(?:_[^_\s]+_[^_\s]+)?$/i,'description':'a\x2032-character\x20hex\x20code,\x20optionally\x20with\x20`_xx_xx`\x20suffix\x20(e.g.\x2099a909313f1fa7153186431e1c551588\x20or\x2099a909313f1fa7153186431e1c551588_75_3c7120aa)'};export const CODE_FLAG={'name':'code','type':a47_0x579263(0xc2),'required':!![],'description':a47_0x579263(0xce),'pattern':DATASET_CODE_PATTERN};export const CODE_FLAG_OPTIONAL={...CODE_FLAG,'required':![]};function a47_0x2963(_0x298311,_0x164361){_0x298311=_0x298311-0xc0;const _0x428d5f=a47_0x428d();let _0x2963c2=_0x428d5f[_0x298311];return _0x2963c2;}export const DATASETCODE_FLAG_OPTIONAL={...CODE_FLAG_OPTIONAL,'name':a47_0x579263(0xcf),'description':'Dataset\x20code\x20(32-char\x20hex,\x20optionally\x20with\x20_xx_xx\x20suffix)'};export const SQLCODE_FLAG={'name':'sqlcode','type':'string','required':!![],'description':'SQL\x20code\x20identifier\x20(format:\x20xxxxxxxx-xxxxxxxx,\x20e.g.\x202305f915-dd48cd4c)','pattern':{'regex':/^[a-f0-9]{8}-[a-f0-9]{8}$/i,'description':a47_0x579263(0xd8)}};export const APPCODE_FLAG_OPTIONAL={'name':a47_0x579263(0xc5),'type':a47_0x579263(0xc2),'required':![],'description':a47_0x579263(0xcc)};export const APPCODE_FLAG={...APPCODE_FLAG_OPTIONAL,'required':!![],'description':a47_0x579263(0xc4)};export const SQLCODE_FLAG_OPTIONAL={...SQLCODE_FLAG,'required':![]};export const DBLINK_ID_FLAG={'name':'id','type':a47_0x579263(0xcb),'required':!![],'description':a47_0x579263(0xc0)};export const DB_TYPE_FLAG={'name':a47_0x579263(0xd1),'type':a47_0x579263(0xc2),'required':!![],'description':a47_0x579263(0xd2),'enum':[a47_0x579263(0xc7),'POSTGRESQL']};function a47_0x428d(){const _0x361177=['8KdbzFb','SQL\x20code\x20in\x20format\x20xxxxxxxx-xxxxxxxx\x20(e.g.\x202305f915-dd48cd4c)','Database\x20connection\x20ID\x20(dblink\x20id\x20from\x20db\x20list)','boolean','string','5222028ezYYXE','App\x20code\x20(e.g.\x20app-xxxxx)','appcode','5334553BxjFrg','MYSQL','3353199TWESpS','11335874vWszBt','10218380OqoRMq','number','App\x20code\x20(overrides\x20config\x20file,\x20e.g.\x20app-xxxxx)','skip-connection-test','Dataset\x20code\x20(32-char\x20hex,\x20optionally\x20with\x20_xx_xx\x20suffix)','datasetcode','5662686pGWuLj','dbtype','Database\x20product\x20type','9ObyGHd','45502lfkhIx','81agoprh','10jVfDLi'];a47_0x428d=function(){return _0x361177;};return a47_0x428d();}export const SKIP_CONNECTION_TEST_FLAG={'name':a47_0x579263(0xcd),'type':a47_0x579263(0xc1),'description':'Skip\x20testing\x20the\x20unsaved\x20database\x20configuration\x20before\x20create/update'};
@@ -1 +1 @@
1
- (function(_0x44a203,_0x40c340){const _0x46cede=a48_0x1093,_0x4bf134=_0x44a203();while(!![]){try{const _0x49c16f=parseInt(_0x46cede(0x8e))/0x1*(parseInt(_0x46cede(0x95))/0x2)+parseInt(_0x46cede(0x90))/0x3*(-parseInt(_0x46cede(0x9d))/0x4)+-parseInt(_0x46cede(0x9b))/0x5+parseInt(_0x46cede(0x9c))/0x6+parseInt(_0x46cede(0x99))/0x7*(-parseInt(_0x46cede(0x96))/0x8)+-parseInt(_0x46cede(0x91))/0x9*(parseInt(_0x46cede(0x8a))/0xa)+parseInt(_0x46cede(0x8b))/0xb;if(_0x49c16f===_0x40c340)break;else _0x4bf134['push'](_0x4bf134['shift']());}catch(_0x4e1d2f){_0x4bf134['push'](_0x4bf134['shift']());}}}(a48_0x2e64,0x1a92f));import{existsSync,statSync}from'node:fs';import{CliErrors}from'../../errors.js';const BYTES_PER_MB=0x400*0x400;export const DEVELOPMENT_UPLOAD_MAX_BYTES=0x32*BYTES_PER_MB;function a48_0x2e64(){const _0x5b0637=['36vztCXh','File\x20exceeds\x20the\x20development\x20upload\x20limit\x20of\x2050\x20MB:\x20','1422oPsFAG','207zFULWf','\x20MB','File\x20not\x20found:\x20','validation','1056taChtX','808408YtKvvC','ceil','\x20path\x20is\x20required.','14cTTmVi','size','403590LdBGlY','101988slxZyo','44cwhyPg','34330PqbOvi','4838174lxHdjV','isFile','trim'];a48_0x2e64=function(){return _0x5b0637;};return a48_0x2e64();}function formatBytes(_0x51732b){const _0x4c0e6c=a48_0x1093;if(_0x51732b>=BYTES_PER_MB){const _0x1ea3f2=Math[_0x4c0e6c(0x97)](_0x51732b/BYTES_PER_MB*0x64)/0x64;return _0x1ea3f2['toFixed'](0x2)+_0x4c0e6c(0x92);}return _0x51732b+'\x20B';}function a48_0x1093(_0x2e3f24,_0x4c8aa9){_0x2e3f24=_0x2e3f24-0x8a;const _0x2e64fd=a48_0x2e64();let _0x10934f=_0x2e64fd[_0x2e3f24];return _0x10934f;}export function requireDevelopmentUploadFile(_0x51d4e9,_0x5aa414){const _0x157e8c=a48_0x1093,_0x367bb2=_0x51d4e9[_0x157e8c(0x8d)]();if(!_0x367bb2)throw CliErrors[_0x157e8c(0x94)](_0x5aa414+_0x157e8c(0x98));if(!existsSync(_0x367bb2))throw CliErrors[_0x157e8c(0x94)](_0x157e8c(0x93)+_0x367bb2);const _0x24ce66=statSync(_0x367bb2);if(!_0x24ce66[_0x157e8c(0x8c)]())throw CliErrors[_0x157e8c(0x94)]('File\x20is\x20not\x20a\x20regular\x20file:\x20'+_0x367bb2);if(_0x24ce66[_0x157e8c(0x9a)]>DEVELOPMENT_UPLOAD_MAX_BYTES)throw CliErrors[_0x157e8c(0x94)](_0x157e8c(0x8f)+_0x367bb2+'\x20('+formatBytes(_0x24ce66[_0x157e8c(0x9a)])+')');return{'path':_0x367bb2,'size':_0x24ce66[_0x157e8c(0x9a)]};}
1
+ (function(_0x20f028,_0x462d07){const _0x252b35=a48_0x2a22,_0x1937d8=_0x20f028();while(!![]){try{const _0x4fd3c2=parseInt(_0x252b35(0x91))/0x1+parseInt(_0x252b35(0x95))/0x2+parseInt(_0x252b35(0x90))/0x3*(-parseInt(_0x252b35(0x9b))/0x4)+-parseInt(_0x252b35(0x97))/0x5+parseInt(_0x252b35(0x96))/0x6*(parseInt(_0x252b35(0x98))/0x7)+-parseInt(_0x252b35(0x92))/0x8+parseInt(_0x252b35(0x9a))/0x9*(parseInt(_0x252b35(0x8e))/0xa);if(_0x4fd3c2===_0x462d07)break;else _0x1937d8['push'](_0x1937d8['shift']());}catch(_0x4dc2f2){_0x1937d8['push'](_0x1937d8['shift']());}}}(a48_0x1a14,0xcbde3));import{existsSync,statSync}from'node:fs';import{CliErrors}from'../../errors.js';const BYTES_PER_MB=0x400*0x400;export const DEVELOPMENT_UPLOAD_MAX_BYTES=0x32*BYTES_PER_MB;function formatBytes(_0x588f90){const _0x242865=a48_0x2a22;if(_0x588f90>=BYTES_PER_MB){const _0x2a9575=Math['ceil'](_0x588f90/BYTES_PER_MB*0x64)/0x64;return _0x2a9575[_0x242865(0x8a)](0x2)+_0x242865(0x8c);}return _0x588f90+'\x20B';}function a48_0x2a22(_0x4f7228,_0x41c110){_0x4f7228=_0x4f7228-0x8a;const _0x1a1488=a48_0x1a14();let _0x2a22e2=_0x1a1488[_0x4f7228];return _0x2a22e2;}function a48_0x1a14(){const _0x246b1e=['949707jChZZa','8583280GuBfFo','size','File\x20not\x20found:\x20','1047096JUAARH','35562rNHUOH','3032305KTokes','357NKZGJo','\x20path\x20is\x20required.','9nBtrqa','1921228oDZJPV','toFixed','File\x20exceeds\x20the\x20development\x20upload\x20limit\x20of\x2050\x20MB:\x20','\x20MB','validation','12191890CTCfFU','File\x20is\x20not\x20a\x20regular\x20file:\x20','3SavmIZ'];a48_0x1a14=function(){return _0x246b1e;};return a48_0x1a14();}export function requireDevelopmentUploadFile(_0x37d49a,_0x349cc1){const _0x4b32da=a48_0x2a22,_0x21a454=_0x37d49a['trim']();if(!_0x21a454)throw CliErrors['validation'](_0x349cc1+_0x4b32da(0x99));if(!existsSync(_0x21a454))throw CliErrors['validation'](_0x4b32da(0x94)+_0x21a454);const _0x524b50=statSync(_0x21a454);if(!_0x524b50['isFile']())throw CliErrors[_0x4b32da(0x8d)](_0x4b32da(0x8f)+_0x21a454);if(_0x524b50[_0x4b32da(0x93)]>DEVELOPMENT_UPLOAD_MAX_BYTES)throw CliErrors[_0x4b32da(0x8d)](_0x4b32da(0x8b)+_0x21a454+'\x20('+formatBytes(_0x524b50[_0x4b32da(0x93)])+')');return{'path':_0x21a454,'size':_0x524b50[_0x4b32da(0x93)]};}