@lovrabet/rabetbase-cli 2.2.4-beta.6 → 2.2.4

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 (209) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/create.js +1 -1
  28. package/lib/commands/bff/delete.js +1 -1
  29. package/lib/commands/bff/detail.js +1 -1
  30. package/lib/commands/bff/index.js +1 -1
  31. package/lib/commands/bff/list.js +1 -1
  32. package/lib/commands/bff/pull.js +1 -1
  33. package/lib/commands/bff/push.js +1 -1
  34. package/lib/commands/bff/status.js +1 -1
  35. package/lib/commands/cli-update.js +1 -1
  36. package/lib/commands/codegen/index.js +1 -1
  37. package/lib/commands/codegen/sdk.js +1 -1
  38. package/lib/commands/codegen/sql.js +1 -1
  39. package/lib/commands/common/app-selector.js +1 -1
  40. package/lib/commands/common/flags.js +1 -1
  41. package/lib/commands/common/validate.js +1 -1
  42. package/lib/commands/config/get.js +1 -1
  43. package/lib/commands/config/index.js +1 -1
  44. package/lib/commands/config/list.js +1 -1
  45. package/lib/commands/config/set.js +1 -1
  46. package/lib/commands/config/shared.js +1 -1
  47. package/lib/commands/data/filter.js +1 -1
  48. package/lib/commands/data/getOne.js +1 -1
  49. package/lib/commands/data/index.js +1 -1
  50. package/lib/commands/data/shared.js +1 -1
  51. package/lib/commands/dataset/capability.js +1 -1
  52. package/lib/commands/dataset/delete.js +1 -1
  53. package/lib/commands/dataset/detail.js +1 -1
  54. package/lib/commands/dataset/extend-update.js +1 -1
  55. package/lib/commands/dataset/field-update.js +1 -1
  56. package/lib/commands/dataset/index.js +1 -1
  57. package/lib/commands/dataset/list.js +1 -1
  58. package/lib/commands/dataset/operations.js +1 -1
  59. package/lib/commands/dataset/relation-create.js +1 -1
  60. package/lib/commands/dataset/relation-delete.js +1 -1
  61. package/lib/commands/dataset/relation-shared.js +1 -1
  62. package/lib/commands/dataset/relation-update.js +1 -1
  63. package/lib/commands/dataset/relations.js +1 -1
  64. package/lib/commands/dataset/rename.js +1 -1
  65. package/lib/commands/db/analyze-cancel.js +1 -1
  66. package/lib/commands/db/analyze-start.js +1 -1
  67. package/lib/commands/db/analyze-status.js +1 -1
  68. package/lib/commands/db/create.js +1 -1
  69. package/lib/commands/db/delete.js +1 -1
  70. package/lib/commands/db/detail.js +1 -1
  71. package/lib/commands/db/diff.js +1 -1
  72. package/lib/commands/db/index.js +1 -1
  73. package/lib/commands/db/list.js +1 -1
  74. package/lib/commands/db/shared.js +1 -1
  75. package/lib/commands/db/tables.js +1 -1
  76. package/lib/commands/db/test.js +1 -1
  77. package/lib/commands/db/update.js +1 -1
  78. package/lib/commands/doctor.js +1 -1
  79. package/lib/commands/init/index.js +1 -1
  80. package/lib/commands/issue/index.js +1 -1
  81. package/lib/commands/issue/nudge.js +1 -1
  82. package/lib/commands/issue/report.js +1 -1
  83. package/lib/commands/issue/shared.js +1 -1
  84. package/lib/commands/logs/index.js +1 -1
  85. package/lib/commands/menu/index.js +1 -1
  86. package/lib/commands/menu/list.js +1 -1
  87. package/lib/commands/menu/shared/compare-table.js +1 -1
  88. package/lib/commands/menu/shared/index.js +1 -1
  89. package/lib/commands/menu/shared/inquirer.js +1 -1
  90. package/lib/commands/menu/shared/local-pages.js +1 -1
  91. package/lib/commands/menu/shared/logic.js +1 -1
  92. package/lib/commands/menu/shared/service.js +1 -1
  93. package/lib/commands/menu/shared/sync-core.js +1 -1
  94. package/lib/commands/menu/shared/update-core.js +1 -1
  95. package/lib/commands/menu/shared/valid-url.js +1 -1
  96. package/lib/commands/menu/sync.js +1 -1
  97. package/lib/commands/menu/update.js +1 -1
  98. package/lib/commands/page/generate-start.js +1 -1
  99. package/lib/commands/page/generate-status.js +1 -1
  100. package/lib/commands/page/index.js +1 -1
  101. package/lib/commands/page/pull.js +1 -1
  102. package/lib/commands/page/push.js +1 -1
  103. package/lib/commands/page/relation-audit.js +1 -1
  104. package/lib/commands/page/shared.js +1 -1
  105. package/lib/commands/page/standard-page-status.js +1 -1
  106. package/lib/commands/page/sync.js +1 -1
  107. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  108. package/lib/commands/project/create/format-elapsed.js +1 -1
  109. package/lib/commands/project/create/main.js +1 -1
  110. package/lib/commands/project/create/non-interactive.js +1 -1
  111. package/lib/commands/project/create/project-template-path.js +1 -1
  112. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  113. package/lib/commands/project/create/use-format-code.js +1 -1
  114. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  115. package/lib/commands/project/index.js +1 -1
  116. package/lib/commands/project/init.js +1 -1
  117. package/lib/commands/project/upgrade.js +1 -1
  118. package/lib/commands/registry.js +1 -1
  119. package/lib/commands/run/index.js +1 -1
  120. package/lib/commands/schema.js +1 -1
  121. package/lib/commands/skill/index.js +1 -1
  122. package/lib/commands/sql/create.js +1 -1
  123. package/lib/commands/sql/delete.js +1 -1
  124. package/lib/commands/sql/detail.js +1 -1
  125. package/lib/commands/sql/exec.js +1 -1
  126. package/lib/commands/sql/index.js +1 -1
  127. package/lib/commands/sql/list.js +1 -1
  128. package/lib/commands/sql/pull.js +1 -1
  129. package/lib/commands/sql/push.js +1 -1
  130. package/lib/commands/sql/save.js +1 -1
  131. package/lib/commands/sql/shared.js +1 -1
  132. package/lib/commands/sql/status.js +1 -1
  133. package/lib/commands/sql/validate.js +1 -1
  134. package/lib/commands/workspace/index.js +1 -1
  135. package/lib/config/schema.js +1 -1
  136. package/lib/constant/cdn.js +1 -1
  137. package/lib/constant/cli.js +1 -1
  138. package/lib/constant/defaults.js +1 -1
  139. package/lib/constant/domain.js +1 -1
  140. package/lib/constant/env.js +1 -1
  141. package/lib/constant/output.js +1 -1
  142. package/lib/constant/paths.js +1 -1
  143. package/lib/constant/risk.js +1 -1
  144. package/lib/context/app-resolver.js +1 -1
  145. package/lib/context/auth-resolver.js +1 -1
  146. package/lib/context/config-loader.js +1 -1
  147. package/lib/context.js +1 -1
  148. package/lib/core/alias-resolver.js +1 -1
  149. package/lib/core/api-client.js +1 -1
  150. package/lib/core/bff/config.js +1 -1
  151. package/lib/core/bff/file-system.js +1 -1
  152. package/lib/core/bff/hash.js +1 -1
  153. package/lib/core/bff/lock.js +1 -1
  154. package/lib/core/bff/utils.js +1 -1
  155. package/lib/core/db-resolver.js +1 -1
  156. package/lib/core/page/file-system.js +1 -1
  157. package/lib/core/page/hash.js +1 -1
  158. package/lib/core/page/lock.js +1 -1
  159. package/lib/core/sql-sync/config.js +1 -1
  160. package/lib/core/sql-sync/file-system.js +1 -1
  161. package/lib/core/sql-sync/hash.js +1 -1
  162. package/lib/core/sql-sync/lock.js +1 -1
  163. package/lib/core/sql-sync/utils.js +1 -1
  164. package/lib/core/sql-validator.js +1 -1
  165. package/lib/errors.js +1 -1
  166. package/lib/framework/build-all-flags.js +1 -1
  167. package/lib/framework/flags.js +1 -1
  168. package/lib/framework/help.js +1 -1
  169. package/lib/framework/index.js +1 -1
  170. package/lib/framework/output.js +1 -1
  171. package/lib/framework/response.js +1 -1
  172. package/lib/framework/runner-alias.js +1 -1
  173. package/lib/framework/runner.js +1 -1
  174. package/lib/framework/schema-export.js +1 -1
  175. package/lib/framework/types.js +1 -1
  176. package/lib/generated/build-info.js +1 -1
  177. package/lib/help.js +1 -1
  178. package/lib/skills/main.js +1 -1
  179. package/lib/skills/npx-skills-add.js +1 -1
  180. package/lib/telemetry/cli-command-trace.js +1 -1
  181. package/lib/telemetry/cli-help-trace.js +1 -1
  182. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  183. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  184. package/lib/telemetry/send-cli-trace-log.js +1 -1
  185. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  186. package/lib/utils/ai_config.js +1 -1
  187. package/lib/utils/apply-jq-filter.js +1 -1
  188. package/lib/utils/cdn-config.js +1 -1
  189. package/lib/utils/check-sdk-version.js +1 -1
  190. package/lib/utils/cli-version-check.js +1 -1
  191. package/lib/utils/cli-version-policy.js +1 -1
  192. package/lib/utils/config.js +1 -1
  193. package/lib/utils/copy-directory.js +1 -1
  194. package/lib/utils/entity-with-id.js +1 -1
  195. package/lib/utils/file-utils.js +1 -1
  196. package/lib/utils/guides-cdn.js +1 -1
  197. package/lib/utils/http-client.js +1 -1
  198. package/lib/utils/is-non-interactive.js +1 -1
  199. package/lib/utils/logger.js +1 -1
  200. package/lib/utils/params.js +1 -1
  201. package/lib/utils/platform.js +1 -1
  202. package/lib/utils/rules-cdn.js +1 -1
  203. package/lib/utils/sleep.js +1 -1
  204. package/lib/utils/template-replacer.js +1 -1
  205. package/lib/utils/update-notice.js +1 -1
  206. package/lib/utils/version.js +1 -1
  207. package/lib/utils/with-active-cookie.js +1 -1
  208. package/lib/utils/write-cli-side-channel.js +1 -1
  209. package/package.json +1 -1
@@ -1 +1 @@
1
- const a19_0x5d54f6=a19_0x9316;(function(_0x144744,_0x49a8ff){const _0x3eaf10=a19_0x9316,_0x2b25a6=_0x144744();while(!![]){try{const _0x59d17a=-parseInt(_0x3eaf10(0x111))/0x1*(-parseInt(_0x3eaf10(0x11f))/0x2)+parseInt(_0x3eaf10(0x118))/0x3*(parseInt(_0x3eaf10(0x119))/0x4)+parseInt(_0x3eaf10(0x10c))/0x5*(parseInt(_0x3eaf10(0x114))/0x6)+parseInt(_0x3eaf10(0x115))/0x7*(parseInt(_0x3eaf10(0x10b))/0x8)+-parseInt(_0x3eaf10(0x10f))/0x9*(-parseInt(_0x3eaf10(0x11b))/0xa)+parseInt(_0x3eaf10(0x117))/0xb*(-parseInt(_0x3eaf10(0x11d))/0xc)+-parseInt(_0x3eaf10(0x11a))/0xd*(parseInt(_0x3eaf10(0x108))/0xe);if(_0x59d17a===_0x49a8ff)break;else _0x2b25a6['push'](_0x2b25a6['shift']());}catch(_0x107822){_0x2b25a6['push'](_0x2b25a6['shift']());}}}(a19_0x31d9,0xc6cda));import{listRemoteApps}from'../../core/api-client.js';import{getCookie}from'../../auth/get-cookie.js';import{CliErrors}from'../../errors.js';import{withActiveCookie}from'../../utils/with-active-cookie.js';export const APP_REMOTE_DEPRECATED_MESSAGE=a19_0x5d54f6(0x11e);function resolveCookie(_0x250607){const _0x539c8=a19_0x5d54f6,_0xe0d0ae=_0x250607[_0x539c8(0x112)]||getCookie();if(!_0xe0d0ae)throw CliErrors[_0x539c8(0x110)]();return _0xe0d0ae;}export async function listRemoteAppDirectory(_0x1fb163){const _0x1dd913=a19_0x5d54f6,_0x1e8e66=await withActiveCookie(resolveCookie(_0x1fb163),()=>listRemoteApps());return{'items':_0x1e8e66[_0x1dd913(0x109)](_0x62b431=>({..._0x62b431['id']!=null?{'id':_0x62b431['id']}:{},'appCode':_0x62b431[_0x1dd913(0x116)],'appName':_0x62b431[_0x1dd913(0x10e)],..._0x62b431[_0x1dd913(0x11c)]!=null?{'appDesc':_0x62b431[_0x1dd913(0x11c)]}:{}})),'meta':{'source':_0x1dd913(0x113)}};}async function execute(_0x9a884f){return{'ok':!![],'data':await listRemoteAppDirectory(_0x9a884f)};}export const appRemoteDefinition={'service':'app','command':a19_0x5d54f6(0x10d),'description':'Deprecated:\x20use\x20app\x20list\x20--remote','risk':'read','auth':a19_0x5d54f6(0x10a),'requiresAuth':!![],'requiresAppCode':![],'deprecated':{'replacement':'rabetbase\x20app\x20list\x20--remote'},'flags':[],'execute':execute};function a19_0x9316(_0x3a0c68,_0x17a8b0){_0x3a0c68=_0x3a0c68-0x108;const _0x31d96c=a19_0x31d9();let _0x931693=_0x31d96c[_0x3a0c68];return _0x931693;}function a19_0x31d9(){const _0x3ee155=['3490101mATRZV','authRequired','3526RhzCts','cookie','platform','9396tIifBN','7pLZVdQ','appCode','5136505QrifCA','1179gnQfjZ','8144PnSZEp','559MBRIuS','30bYnNoz','appDesc','24sPsCqH','`rabetbase\x20app\x20remote`\x20is\x20deprecated.\x20Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','268MNJTkA','796376YdjtBL','map','required','7187896qrjOFt','2745mNyBtg','remote','appName'];a19_0x31d9=function(){return _0x3ee155;};return a19_0x31d9();}
1
+ const a19_0xa6f132=a19_0x4eda;(function(_0x266156,_0x1d0732){const _0x2ec79d=a19_0x4eda,_0x5b196a=_0x266156();while(!![]){try{const _0x130ba6=-parseInt(_0x2ec79d(0xab))/0x1*(-parseInt(_0x2ec79d(0xb3))/0x2)+parseInt(_0x2ec79d(0xa5))/0x3*(parseInt(_0x2ec79d(0xa4))/0x4)+-parseInt(_0x2ec79d(0xa9))/0x5+parseInt(_0x2ec79d(0xa0))/0x6*(parseInt(_0x2ec79d(0x9d))/0x7)+-parseInt(_0x2ec79d(0x9f))/0x8+-parseInt(_0x2ec79d(0xa3))/0x9*(parseInt(_0x2ec79d(0xae))/0xa)+-parseInt(_0x2ec79d(0xa8))/0xb*(-parseInt(_0x2ec79d(0xad))/0xc);if(_0x130ba6===_0x1d0732)break;else _0x5b196a['push'](_0x5b196a['shift']());}catch(_0x20b761){_0x5b196a['push'](_0x5b196a['shift']());}}}(a19_0x4ab7,0x60470));import{listRemoteApps}from'../../core/api-client.js';import{getCookie}from'../../auth/get-cookie.js';import{CliErrors}from'../../errors.js';import{withActiveCookie}from'../../utils/with-active-cookie.js';export const APP_REMOTE_DEPRECATED_MESSAGE=a19_0xa6f132(0xa7);function resolveCookie(_0x307be5){const _0x4c0121=a19_0xa6f132,_0x3229f2=_0x307be5[_0x4c0121(0xb1)]||getCookie();if(!_0x3229f2)throw CliErrors[_0x4c0121(0xac)]();return _0x3229f2;}export async function listRemoteAppDirectory(_0x531f4e){const _0x2b102b=a19_0xa6f132,_0x37f819=await withActiveCookie(resolveCookie(_0x531f4e),()=>listRemoteApps());return{'items':_0x37f819[_0x2b102b(0xa6)](_0xe67009=>({..._0xe67009['id']!=null?{'id':_0xe67009['id']}:{},'appCode':_0xe67009[_0x2b102b(0xa1)],'appName':_0xe67009[_0x2b102b(0xb0)],..._0xe67009[_0x2b102b(0xaf)]!=null?{'appDesc':_0xe67009[_0x2b102b(0xaf)]}:{}})),'meta':{'source':_0x2b102b(0xa2)}};}async function execute(_0x8bf161){return{'ok':!![],'data':await listRemoteAppDirectory(_0x8bf161)};}function a19_0x4eda(_0x2b4f03,_0x3db935){_0x2b4f03=_0x2b4f03-0x9d;const _0x4ab74b=a19_0x4ab7();let _0x4edacd=_0x4ab74b[_0x2b4f03];return _0x4edacd;}export const appRemoteDefinition={'service':'app','command':a19_0xa6f132(0xaa),'description':'Deprecated:\x20use\x20app\x20list\x20--remote','risk':'read','auth':a19_0xa6f132(0x9e),'requiresAuth':!![],'requiresAppCode':![],'deprecated':{'replacement':a19_0xa6f132(0xb2)},'flags':[],'execute':execute};function a19_0x4ab7(){const _0x2be997=['authRequired','5844fbdpws','10vsnsbT','appDesc','appName','cookie','rabetbase\x20app\x20list\x20--remote','74234ZJPWvg','427MShbXj','required','619576YkxFmX','12846EamosE','appCode','platform','1733445XPyehC','92iQtGbB','97221XYcuuy','map','`rabetbase\x20app\x20remote`\x20is\x20deprecated.\x20Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','253pYeARo','1670550NYkzMJ','remote','3OdMhtk'];a19_0x4ab7=function(){return _0x2be997;};return a19_0x4ab7();}
@@ -1 +1 @@
1
- (function(_0x27c514,_0x14b5c0){const _0xb89e22=a20_0x5382,_0x57042c=_0x27c514();while(!![]){try{const _0x1c1aac=-parseInt(_0xb89e22(0x7d))/0x1*(parseInt(_0xb89e22(0x80))/0x2)+-parseInt(_0xb89e22(0x7f))/0x3+-parseInt(_0xb89e22(0x82))/0x4+-parseInt(_0xb89e22(0x81))/0x5+-parseInt(_0xb89e22(0x7c))/0x6*(-parseInt(_0xb89e22(0x83))/0x7)+parseInt(_0xb89e22(0x7e))/0x8+parseInt(_0xb89e22(0x84))/0x9;if(_0x1c1aac===_0x14b5c0)break;else _0x57042c['push'](_0x57042c['shift']());}catch(_0x3a3ea7){_0x57042c['push'](_0x57042c['shift']());}}}(a20_0x138a,0xa2b13));import{appListDefinition}from'../../commands/app/list.js';function a20_0x138a(){const _0x4cab47=['16098228JHbkez','366zdcTfk','532376mzEeWS','9725464BGyhXR','3094413UZZghC','4bYIKGO','2493710DwnYeN','3780600GfzjZv','137949BWSSMx'];a20_0x138a=function(){return _0x4cab47;};return a20_0x138a();}import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';function a20_0x5382(_0x568116,_0x3bb122){_0x568116=_0x568116-0x7c;const _0x138ac4=a20_0x138a();let _0x53824e=_0x138ac4[_0x568116];return _0x53824e;}import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ function a20_0x38d6(){const _0x54ea1b=['1044MoaqGK','13263gEGqQh','5273495pqQdWA','17032pMupiK','124370SeIegw','2394yxCmoP','7279844wOoZIw','4150rQPkTq','1704492XZOhuM','304ggKCtZ','117fJajgk'];a20_0x38d6=function(){return _0x54ea1b;};return a20_0x38d6();}(function(_0x3a6ed0,_0x3a4d37){const _0x171c50=a20_0x1692,_0x2b6904=_0x3a6ed0();while(!![]){try{const _0x1a36d0=parseInt(_0x171c50(0x103))/0x1*(-parseInt(_0x171c50(0x105))/0x2)+-parseInt(_0x171c50(0xfd))/0x3*(-parseInt(_0x171c50(0x107))/0x4)+parseInt(_0x171c50(0xfe))/0x5+parseInt(_0x171c50(0x104))/0x6+-parseInt(_0x171c50(0x101))/0x7*(parseInt(_0x171c50(0xff))/0x8)+parseInt(_0x171c50(0x106))/0x9*(parseInt(_0x171c50(0x100))/0xa)+-parseInt(_0x171c50(0x102))/0xb;if(_0x1a36d0===_0x3a4d37)break;else _0x2b6904['push'](_0x2b6904['shift']());}catch(_0x4f52ea){_0x2b6904['push'](_0x2b6904['shift']());}}}(a20_0x38d6,0x9ab15));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';function a20_0x1692(_0x22d8c0,_0x3f292e){_0x22d8c0=_0x22d8c0-0xfd;const _0x38d60c=a20_0x38d6();let _0x1692bd=_0x38d60c[_0x22d8c0];return _0x1692bd;}import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- const a21_0x28354e=a21_0xae8c;(function(_0x1db914,_0x35ae6c){const _0x159790=a21_0xae8c,_0x15f210=_0x1db914();while(!![]){try{const _0x2bb107=-parseInt(_0x159790(0x88))/0x1*(-parseInt(_0x159790(0x8f))/0x2)+parseInt(_0x159790(0xab))/0x3+-parseInt(_0x159790(0x9f))/0x4+parseInt(_0x159790(0xa2))/0x5+-parseInt(_0x159790(0x93))/0x6+-parseInt(_0x159790(0x96))/0x7*(parseInt(_0x159790(0xaa))/0x8)+-parseInt(_0x159790(0x91))/0x9*(parseInt(_0x159790(0x9c))/0xa);if(_0x2bb107===_0x35ae6c)break;else _0x15f210['push'](_0x15f210['shift']());}catch(_0x5c716b){_0x15f210['push'](_0x15f210['shift']());}}}(a21_0x59fa,0x9896c));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';import{listRemoteAppDirectory}from'../../commands/app/discover.js';function buildItemsFromLayer(_0x5878d7,_0x58a18f){const _0x148e45=a21_0xae8c,_0x2fa7b9=[],_0x4ae28f=_0x5878d7['apps']&&typeof _0x5878d7['apps']===_0x148e45(0x98)?_0x5878d7[_0x148e45(0x9d)]:{},_0xbd41e4=_0x5878d7['defaultApp']||undefined;for(const [_0x3efebc,_0xeb5da0]of Object[_0x148e45(0xa9)](_0x4ae28f)){if(!_0xeb5da0||typeof _0xeb5da0!=='object'||!_0xeb5da0[_0x148e45(0xa8)])continue;_0x2fa7b9[_0x148e45(0x90)]({'name':_0x3efebc,'appcode':_0xeb5da0[_0x148e45(0xa8)],'named':!![],'definedIn':_0x58a18f,'isDefault':_0x3efebc===_0xbd41e4,...buildAppProfileListFields(_0xeb5da0)});}return _0x2fa7b9;}function a21_0xae8c(_0x5419a0,_0x22e8fc){_0x5419a0=_0x5419a0-0x84;const _0x59faf9=a21_0x59fa();let _0xae8cfa=_0x59faf9[_0x5419a0];return _0xae8cfa;}function buildMergedItems(_0x2de85b,_0x302e74){const _0x45a2be=a21_0xae8c,{apps:apps={},defaultApp:_0x30296e}=_0x2de85b,_0x253e11=_0x302e74[_0x45a2be(0xa3)][_0x45a2be(0x9d)]&&typeof _0x302e74[_0x45a2be(0xa3)][_0x45a2be(0x9d)]===_0x45a2be(0x98)?_0x302e74['globalConfig'][_0x45a2be(0x9d)]:{},_0x87af=_0x302e74[_0x45a2be(0x8e)]['apps']&&typeof _0x302e74['projectConfig'][_0x45a2be(0x9d)]===_0x45a2be(0x98)?_0x302e74[_0x45a2be(0x8e)][_0x45a2be(0x9d)]:{},_0xf260a2=_0x302e74[_0x45a2be(0x8e)][_0x45a2be(0x89)]===![],_0x5b528c=Object[_0x45a2be(0xa9)](apps),_0xca16e5=_0x5b528c[_0x45a2be(0xa7)](([_0x4c69e0,_0x49e3ed])=>({'name':_0x4c69e0,'appcode':_0x49e3ed[_0x45a2be(0xa8)],'named':!![],'definedIn':appDefinedIn(_0x4c69e0,_0x253e11,_0x87af,_0xf260a2),'isDefault':_0x4c69e0===_0x30296e,...buildAppProfileListFields(_0x49e3ed)}));return _0xca16e5;}function validateAppListFlags(_0x596207){const _0x311244=a21_0xae8c;if(!_0x596207[_0x311244(0xa4)](_0x311244(0x9b)))return;if(!_0x596207['bool'](_0x311244(0x8d))&&!_0x596207[_0x311244(0xa4)](_0x311244(0x9a)))return;throw CliErrors[_0x311244(0x97)](_0x311244(0x8c),'Use\x20`rabetbase\x20app\x20list\x20--remote`\x20for\x20the\x20platform\x20directory,\x20or\x20`rabetbase\x20app\x20list\x20--global/--project`\x20for\x20local\x20config.');}async function execute(_0x4eb1bf){const _0x4e2bd2=a21_0xae8c;validateAppListFlags(_0x4eb1bf);if(_0x4eb1bf[_0x4e2bd2(0xa4)](_0x4e2bd2(0x9b)))return{'ok':!![],'data':await listRemoteAppDirectory(_0x4eb1bf)};const _0x34f957=_0x4eb1bf['bool'](_0x4e2bd2(0x8d)),_0x29176c=_0x4eb1bf[_0x4e2bd2(0xa4)](_0x4e2bd2(0x9a)),_0x22b5d7=_0x34f957?_0x4e2bd2(0x8d):_0x29176c?_0x4e2bd2(0x9a):_0x4e2bd2(0x95),{config:_0x486bac,layers:_0x23e3c8}=readRawConfigWithLayers(),_0x454d31=resolveDefaultAppSource(_0x23e3c8),{defaultApp:_0x19e7a3}=_0x486bac;let _0xc90b99,_0x461d96;switch(_0x22b5d7){case'global':_0xc90b99=buildItemsFromLayer(_0x23e3c8[_0x4e2bd2(0xa3)],_0x4e2bd2(0x8d)),_0x461d96=_0x23e3c8[_0x4e2bd2(0x92)];break;case _0x4e2bd2(0x9a):_0xc90b99=buildItemsFromLayer(_0x23e3c8[_0x4e2bd2(0x8e)],_0x4e2bd2(0x9a)),_0x461d96=_0x23e3c8['projectPath'];break;default:_0xc90b99=buildMergedItems(_0x486bac,_0x23e3c8);break;}enrichAppListItemsWithMergedSelection(_0xc90b99,_0x4eb1bf[_0x4e2bd2(0xac)]);if(_0xc90b99['length']===0x0){const _0x3c3a71=_0x22b5d7===_0x4e2bd2(0x95)?'':'\x20in\x20'+_0x22b5d7+_0x4e2bd2(0x84);return{'ok':!![],'data':[],'message':_0x4e2bd2(0xad)+_0x3c3a71+_0x4e2bd2(0xa5)+CLI_BIN_NAME+_0x4e2bd2(0xa0)};}const _0x3176df=_0xc90b99[_0x4e2bd2(0x85)](_0x4c7c4f=>_0x4c7c4f[_0x4e2bd2(0x9e)]===!![]),_0x2a3842=_0x19e7a3??_0x3176df?.[_0x4e2bd2(0xa8)]??null,_0x3b26bc=_0x22b5d7==='merged'?{'globalPath':_0x23e3c8[_0x4e2bd2(0x92)]??null,'projectPath':_0x23e3c8[_0x4e2bd2(0xa1)]??null,'defaultApp':_0x2a3842,'defaultAppSource':_0x19e7a3!=null?_0x454d31:null}:{'scope':_0x22b5d7,'configPath':_0x461d96??null};return{'ok':!![],'data':{'items':_0xc90b99,'meta':_0x3b26bc}};}function a21_0x59fa(){const _0xd7ea1d=['\x20config','find','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','224838HGASMQ','inherit','list','optional','`--remote`\x20cannot\x20be\x20used\x20with\x20`--global`\x20or\x20`--project`.','global','projectConfig','6OzHFlK','push','3015729khaiwL','globalPath','2050248FUAKmG','boolean','merged','3682ViVSSE','validation','object','read','project','remote','10TyheAN','apps','isCurrent','353304fXijiI','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','projectPath','1210355DDdpcb','globalConfig','bool','.\x20Use\x20`','List\x20configured\x20apps,\x20or\x20platform\x20apps\x20with\x20--remote','map','appcode','entries','11176KnMpkt','3625068XZcwVK','mergedCli','No\x20apps\x20configured'];a21_0x59fa=function(){return _0xd7ea1d;};return a21_0x59fa();}export const appListDefinition={'service':'app','command':a21_0x28354e(0x8a),'description':a21_0x28354e(0xa6),'risk':a21_0x28354e(0x99),'auth':a21_0x28354e(0x8b),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x28354e(0x9b),'type':'boolean','description':'List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','default':![]},{'name':a21_0x28354e(0x8d),'type':a21_0x28354e(0x94),'description':a21_0x28354e(0x87),'default':![]},{'name':'project','type':'boolean','description':a21_0x28354e(0x86),'default':![]}],async 'validate'(_0x5d2ef4){validateAppListFlags(_0x5d2ef4);},'execute':execute};
1
+ const a21_0x5ba26d=a21_0x48c4;(function(_0x2c014e,_0x1b010c){const _0x236923=a21_0x48c4,_0x2f62d1=_0x2c014e();while(!![]){try{const _0x5cb9d6=-parseInt(_0x236923(0xf9))/0x1*(-parseInt(_0x236923(0xe5))/0x2)+parseInt(_0x236923(0x10c))/0x3*(parseInt(_0x236923(0xf6))/0x4)+parseInt(_0x236923(0xef))/0x5*(parseInt(_0x236923(0x108))/0x6)+parseInt(_0x236923(0x10b))/0x7+parseInt(_0x236923(0xec))/0x8+-parseInt(_0x236923(0xe8))/0x9*(parseInt(_0x236923(0xf2))/0xa)+-parseInt(_0x236923(0xf1))/0xb;if(_0x5cb9d6===_0x1b010c)break;else _0x2f62d1['push'](_0x2f62d1['shift']());}catch(_0x328768){_0x2f62d1['push'](_0x2f62d1['shift']());}}}(a21_0x4165,0x31903));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{CliErrors}from'../../errors.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';import{listRemoteAppDirectory}from'../../commands/app/discover.js';function buildItemsFromLayer(_0x2f4fcf,_0x39c036){const _0x535571=a21_0x48c4,_0x443661=[],_0xb45d02=_0x2f4fcf['apps']&&typeof _0x2f4fcf[_0x535571(0x102)]==='object'?_0x2f4fcf[_0x535571(0x102)]:{},_0x548b92=_0x2f4fcf['defaultApp']||undefined;for(const [_0x2747ca,_0x4a2dd9]of Object[_0x535571(0x104)](_0xb45d02)){if(!_0x4a2dd9||typeof _0x4a2dd9!==_0x535571(0xfb)||!_0x4a2dd9['appcode'])continue;_0x443661['push']({'name':_0x2747ca,'appcode':_0x4a2dd9['appcode'],'named':!![],'definedIn':_0x39c036,'isDefault':_0x2747ca===_0x548b92,...buildAppProfileListFields(_0x4a2dd9)});}return _0x443661;}function a21_0x48c4(_0x10cbcd,_0x1525aa){_0x10cbcd=_0x10cbcd-0xe3;const _0x416585=a21_0x4165();let _0x48c4cb=_0x416585[_0x10cbcd];return _0x48c4cb;}function buildMergedItems(_0x3d2c45,_0x2417e9){const _0x40866a=a21_0x48c4,{apps:apps={},defaultApp:_0x4ce3ea}=_0x3d2c45,_0x227645=_0x2417e9['globalConfig'][_0x40866a(0x102)]&&typeof _0x2417e9[_0x40866a(0xfc)]['apps']==='object'?_0x2417e9['globalConfig']['apps']:{},_0x135bfe=_0x2417e9['projectConfig']['apps']&&typeof _0x2417e9['projectConfig'][_0x40866a(0x102)]===_0x40866a(0xfb)?_0x2417e9[_0x40866a(0xf4)][_0x40866a(0x102)]:{},_0x4ea6e8=_0x2417e9[_0x40866a(0xf4)][_0x40866a(0xe4)]===![],_0x3a5cf1=Object['entries'](apps),_0x24cd8c=_0x3a5cf1[_0x40866a(0xf3)](([_0x21727d,_0x24d280])=>({'name':_0x21727d,'appcode':_0x24d280[_0x40866a(0x107)],'named':!![],'definedIn':appDefinedIn(_0x21727d,_0x227645,_0x135bfe,_0x4ea6e8),'isDefault':_0x21727d===_0x4ce3ea,...buildAppProfileListFields(_0x24d280)}));return _0x24cd8c;}function a21_0x4165(){const _0x11d92a=['No\x20apps\x20configured','global','apps','merged','entries','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','\x20in\x20','appcode','6pxyvjh','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','globalPath','2326443UPQgQd','21ycSfOG','bool','validation','inherit','6VCvFoy','app','projectPath','45XyuyHB','mergedCli','remote','\x20config','2912496nXBYEF','list','length','1167835tOuPwV','find','12410431QRKqIj','568580zZRpmK','map','projectConfig','.\x20Use\x20`','174188CoTuTB','read','isCurrent','126905ifbSBB','`--remote`\x20cannot\x20be\x20used\x20with\x20`--global`\x20or\x20`--project`.','object','globalConfig','boolean','project','List\x20configured\x20apps,\x20or\x20platform\x20apps\x20with\x20--remote'];a21_0x4165=function(){return _0x11d92a;};return a21_0x4165();}function validateAppListFlags(_0x5e9757){const _0x15d726=a21_0x48c4;if(!_0x5e9757[_0x15d726(0x10d)]('remote'))return;if(!_0x5e9757[_0x15d726(0x10d)](_0x15d726(0x101))&&!_0x5e9757[_0x15d726(0x10d)](_0x15d726(0xfe)))return;throw CliErrors[_0x15d726(0xe3)](_0x15d726(0xfa),'Use\x20`rabetbase\x20app\x20list\x20--remote`\x20for\x20the\x20platform\x20directory,\x20or\x20`rabetbase\x20app\x20list\x20--global/--project`\x20for\x20local\x20config.');}async function execute(_0x2116a4){const _0x4c1b14=a21_0x48c4;validateAppListFlags(_0x2116a4);if(_0x2116a4[_0x4c1b14(0x10d)](_0x4c1b14(0xea)))return{'ok':!![],'data':await listRemoteAppDirectory(_0x2116a4)};const _0x16147a=_0x2116a4[_0x4c1b14(0x10d)](_0x4c1b14(0x101)),_0x234401=_0x2116a4[_0x4c1b14(0x10d)](_0x4c1b14(0xfe)),_0x3d4971=_0x16147a?_0x4c1b14(0x101):_0x234401?'project':_0x4c1b14(0x103),{config:_0x484b84,layers:_0x5458b6}=readRawConfigWithLayers(),_0x453430=resolveDefaultAppSource(_0x5458b6),{defaultApp:_0x25eec3}=_0x484b84;let _0x4321bd,_0x36eddb;switch(_0x3d4971){case _0x4c1b14(0x101):_0x4321bd=buildItemsFromLayer(_0x5458b6['globalConfig'],_0x4c1b14(0x101)),_0x36eddb=_0x5458b6[_0x4c1b14(0x10a)];break;case _0x4c1b14(0xfe):_0x4321bd=buildItemsFromLayer(_0x5458b6[_0x4c1b14(0xf4)],_0x4c1b14(0xfe)),_0x36eddb=_0x5458b6[_0x4c1b14(0xe7)];break;default:_0x4321bd=buildMergedItems(_0x484b84,_0x5458b6);break;}enrichAppListItemsWithMergedSelection(_0x4321bd,_0x2116a4[_0x4c1b14(0xe9)]);if(_0x4321bd[_0x4c1b14(0xee)]===0x0){const _0x22c05e=_0x3d4971===_0x4c1b14(0x103)?'':_0x4c1b14(0x106)+_0x3d4971+_0x4c1b14(0xeb);return{'ok':!![],'data':[],'message':_0x4c1b14(0x100)+_0x22c05e+_0x4c1b14(0xf5)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x448405=_0x4321bd[_0x4c1b14(0xf0)](_0x4f2694=>_0x4f2694[_0x4c1b14(0xf8)]===!![]),_0xe9ca73=_0x25eec3??_0x448405?.[_0x4c1b14(0x107)]??null,_0x200ffc=_0x3d4971==='merged'?{'globalPath':_0x5458b6[_0x4c1b14(0x10a)]??null,'projectPath':_0x5458b6[_0x4c1b14(0xe7)]??null,'defaultApp':_0xe9ca73,'defaultAppSource':_0x25eec3!=null?_0x453430:null}:{'scope':_0x3d4971,'configPath':_0x36eddb??null};return{'ok':!![],'data':{'items':_0x4321bd,'meta':_0x200ffc}};}export const appListDefinition={'service':a21_0x5ba26d(0xe6),'command':a21_0x5ba26d(0xed),'description':a21_0x5ba26d(0xff),'risk':a21_0x5ba26d(0xf7),'auth':'optional','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x5ba26d(0xea),'type':a21_0x5ba26d(0xfd),'description':a21_0x5ba26d(0x105),'default':![]},{'name':a21_0x5ba26d(0x101),'type':a21_0x5ba26d(0xfd),'description':a21_0x5ba26d(0x109),'default':![]},{'name':a21_0x5ba26d(0xfe),'type':a21_0x5ba26d(0xfd),'description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],async 'validate'(_0x3d9db1){validateAppListFlags(_0x3d9db1);},'execute':execute};
@@ -1 +1 @@
1
- const a22_0x476dca=a22_0x545a;function a22_0x2c1d(){const _0x6990be=['Usage:\x20','validation','8199wKqikV','projectConfig','Use\x20global\x20config\x20scope','\x20app\x20remove\x20<name>\x20[--global]','17660nTzJac','boolean','inherit','16006925drZtUJ','keys','\x22\x20not\x20found.','Remove\x20an\x20app\x20from\x20config','App\x20\x22','\x20Default\x20app\x20changed\x20to\x20\x22','2026NmlnLM','1527233FHrliC','project','defaultApp','23800VfemQe','remove','280PmiIBS','Missing\x20app\x20name.','global','3273WneEWU','Removed\x20app\x20\x22','bool','globalConfig','args','3388370ubTfmG','trim','name','apps','1412024RAiKsZ','12vtdyMO','both','\x20config.','object'];a22_0x2c1d=function(){return _0x6990be;};return a22_0x2c1d();}(function(_0x366aac,_0xd8abce){const _0x4748eb=a22_0x545a,_0x3adabd=_0x366aac();while(!![]){try{const _0x2cc6e8=-parseInt(_0x4748eb(0xa6))/0x1+parseInt(_0x4748eb(0xa5))/0x2*(parseInt(_0x4748eb(0x88))/0x3)+-parseInt(_0x4748eb(0x91))/0x4+parseInt(_0x4748eb(0x8d))/0x5*(parseInt(_0x4748eb(0x92))/0x6)+parseInt(_0x4748eb(0x83))/0x7*(parseInt(_0x4748eb(0x85))/0x8)+-parseInt(_0x4748eb(0x98))/0x9*(-parseInt(_0x4748eb(0x9c))/0xa)+-parseInt(_0x4748eb(0x9f))/0xb;if(_0x2cc6e8===_0xd8abce)break;else _0x3adabd['push'](_0x3adabd['shift']());}catch(_0x5ec3d9){_0x3adabd['push'](_0x3adabd['shift']());}}}(a22_0x2c1d,0xd03cf));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';function a22_0x545a(_0x4c03d4,_0xca8b82){_0x4c03d4=_0x4c03d4-0x81;const _0x2c1def=a22_0x2c1d();let _0x545af3=_0x2c1def[_0x4c03d4];return _0x545af3;}async function validateArgs(_0x33608e){const _0x10ba49=a22_0x545a,_0x4f3328=_0x33608e[_0x10ba49(0x8c)][0x0]?.[_0x10ba49(0x8e)]();if(!_0x4f3328)throw CliErrors[_0x10ba49(0x97)](_0x10ba49(0x86),'Usage:\x20'+CLI_BIN_NAME+_0x10ba49(0x9b));}async function execute(_0x35e279){const _0x5daef1=a22_0x545a,_0x28a423=_0x35e279[_0x5daef1(0x8c)][0x0]?.['trim']();if(!_0x28a423)throw CliErrors[_0x5daef1(0x97)](_0x5daef1(0x86),_0x5daef1(0x96)+CLI_BIN_NAME+_0x5daef1(0x9b));const _0x1c4742=_0x35e279[_0x5daef1(0x8a)](_0x5daef1(0x87)),{config:_0x2a2352,layers:_0x81e7a1}=readRawConfigWithLayers(),_0x5d9e0c=_0x2a2352[_0x5daef1(0x90)]??{};if(!_0x5d9e0c[_0x28a423])throw CliErrors[_0x5daef1(0x97)](_0x5daef1(0xa3)+_0x28a423+_0x5daef1(0xa1));const _0x4712f1=_0x81e7a1[_0x5daef1(0x8b)][_0x5daef1(0x90)]&&typeof _0x81e7a1[_0x5daef1(0x8b)]['apps']===_0x5daef1(0x95)?_0x81e7a1[_0x5daef1(0x8b)]['apps']:{},_0x3ab669=_0x81e7a1[_0x5daef1(0x99)]['apps']&&typeof _0x81e7a1[_0x5daef1(0x99)]['apps']==='object'?_0x81e7a1[_0x5daef1(0x99)][_0x5daef1(0x90)]:{},_0x12a15b=appDefinedIn(_0x28a423,_0x4712f1,_0x3ab669,_0x81e7a1['projectConfig'][_0x5daef1(0x9e)]===![]),_0x4a34c1=resolveAppScopeForWrite(_0x28a423,_0x1c4742,_0x81e7a1),_0x2b2436={'global':_0x4a34c1===_0x5daef1(0x87)},_0x4c14db=readConfig(_0x2b2436),_0x37ee33=_0x4c14db[_0x5daef1(0x90)];if(!_0x37ee33||!_0x37ee33[_0x28a423])throw CliErrors[_0x5daef1(0x97)](_0x5daef1(0xa3)+_0x28a423+_0x5daef1(0xa1));delete _0x37ee33[_0x28a423];let _0x1d9fce='';if(_0x4c14db['defaultApp']===_0x28a423){const _0x1a31df=Object[_0x5daef1(0xa0)](_0x37ee33);_0x4c14db['defaultApp']=_0x1a31df['length']>0x0?_0x1a31df[0x0]:undefined,_0x4c14db[_0x5daef1(0x82)]?_0x1d9fce=_0x5daef1(0xa4)+_0x4c14db['defaultApp']+'\x22.':delete _0x4c14db[_0x5daef1(0x82)];}Object[_0x5daef1(0xa0)](_0x37ee33)['length']===0x0&&(delete _0x4c14db[_0x5daef1(0x90)],delete _0x4c14db[_0x5daef1(0x82)]);writeConfig(_0x4c14db,_0x2b2436);const _0x51dc5d=_0x12a15b===_0x5daef1(0x93)?'\x20Note:\x20app\x20\x22'+_0x28a423+'\x22\x20still\x20defined\x20in\x20'+(_0x4a34c1===_0x5daef1(0x81)?_0x5daef1(0x87):_0x5daef1(0x81))+_0x5daef1(0x94):'';return{'ok':!![],'message':_0x5daef1(0x89)+_0x28a423+'\x22'+scopeLabel(_0x2b2436)+'.'+_0x1d9fce+_0x51dc5d};}export const appRemoveDefinition={'service':'app','command':a22_0x476dca(0x84),'description':a22_0x476dca(0xa2),'risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x476dca(0x8f),'description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':[{'name':a22_0x476dca(0x87),'type':a22_0x476dca(0x9d),'description':a22_0x476dca(0x9a),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x378ced=a22_0x35a9;(function(_0x2d399c,_0x32e176){const _0x493cb6=a22_0x35a9,_0xbf371b=_0x2d399c();while(!![]){try{const _0x58f863=-parseInt(_0x493cb6(0xd1))/0x1+parseInt(_0x493cb6(0xe1))/0x2*(-parseInt(_0x493cb6(0xbf))/0x3)+parseInt(_0x493cb6(0xc5))/0x4*(-parseInt(_0x493cb6(0xcb))/0x5)+-parseInt(_0x493cb6(0xc2))/0x6*(-parseInt(_0x493cb6(0xc8))/0x7)+parseInt(_0x493cb6(0xc3))/0x8+-parseInt(_0x493cb6(0xd6))/0x9*(parseInt(_0x493cb6(0xbe))/0xa)+parseInt(_0x493cb6(0xe0))/0xb;if(_0x58f863===_0x32e176)break;else _0xbf371b['push'](_0xbf371b['shift']());}catch(_0x4f6aa0){_0xbf371b['push'](_0xbf371b['shift']());}}}(a22_0x49ee,0x1e5ed));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a22_0x35a9(_0x57213c,_0x301441){_0x57213c=_0x57213c-0xbb;const _0x49eecc=a22_0x49ee();let _0x35a95b=_0x49eecc[_0x57213c];return _0x35a95b;}function a22_0x49ee(){const _0x323810=['App\x20profile\x20name\x20to\x20remove','32izRdKx','global','bool','2905RsoJzK','validation','keys','86630BGlGdj','Removed\x20app\x20\x22','\x20Note:\x20app\x20\x22','trim','boolean','defaultApp','123730PNCyCr','args','App\x20\x22','length','app','468rzpQFS','apps','inherit','\x22\x20not\x20found.','remove','project','projectConfig','Remove\x20an\x20app\x20from\x20config','Missing\x20app\x20name.','globalConfig','3692480fxxWdb','8OSasOE','name','Usage:\x20','object','33230OaLjoG','36705DgGUyl','Use\x20global\x20config\x20scope','\x20app\x20remove\x20<name>\x20[--global]','366uPqHsV','1979808uVCiKq'];a22_0x49ee=function(){return _0x323810;};return a22_0x49ee();}import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x204e13){const _0x4217d8=a22_0x35a9,_0x3adf52=_0x204e13[_0x4217d8(0xd2)][0x0]?.[_0x4217d8(0xce)]();if(!_0x3adf52)throw CliErrors[_0x4217d8(0xc9)](_0x4217d8(0xde),_0x4217d8(0xbc)+CLI_BIN_NAME+_0x4217d8(0xc1));}async function execute(_0x4bbe86){const _0x4fb224=a22_0x35a9,_0xb4d5f9=_0x4bbe86[_0x4fb224(0xd2)][0x0]?.[_0x4fb224(0xce)]();if(!_0xb4d5f9)throw CliErrors[_0x4fb224(0xc9)](_0x4fb224(0xde),'Usage:\x20'+CLI_BIN_NAME+_0x4fb224(0xc1));const _0x2f4d6b=_0x4bbe86[_0x4fb224(0xc7)]('global'),{config:_0x6500a,layers:_0x508e63}=readRawConfigWithLayers(),_0x5f2af8=_0x6500a[_0x4fb224(0xd7)]??{};if(!_0x5f2af8[_0xb4d5f9])throw CliErrors['validation']('App\x20\x22'+_0xb4d5f9+_0x4fb224(0xd9));const _0x4b528a=_0x508e63[_0x4fb224(0xdf)][_0x4fb224(0xd7)]&&typeof _0x508e63[_0x4fb224(0xdf)][_0x4fb224(0xd7)]===_0x4fb224(0xbd)?_0x508e63[_0x4fb224(0xdf)]['apps']:{},_0x5debb8=_0x508e63[_0x4fb224(0xdc)]['apps']&&typeof _0x508e63[_0x4fb224(0xdc)]['apps']===_0x4fb224(0xbd)?_0x508e63[_0x4fb224(0xdc)]['apps']:{},_0x23ec3c=appDefinedIn(_0xb4d5f9,_0x4b528a,_0x5debb8,_0x508e63['projectConfig'][_0x4fb224(0xd8)]===![]),_0x2463ba=resolveAppScopeForWrite(_0xb4d5f9,_0x2f4d6b,_0x508e63),_0x37e884={'global':_0x2463ba==='global'},_0x5092ec=readConfig(_0x37e884),_0x42b512=_0x5092ec[_0x4fb224(0xd7)];if(!_0x42b512||!_0x42b512[_0xb4d5f9])throw CliErrors[_0x4fb224(0xc9)](_0x4fb224(0xd3)+_0xb4d5f9+_0x4fb224(0xd9));delete _0x42b512[_0xb4d5f9];let _0x5177fe='';if(_0x5092ec[_0x4fb224(0xd0)]===_0xb4d5f9){const _0x5a121a=Object[_0x4fb224(0xca)](_0x42b512);_0x5092ec[_0x4fb224(0xd0)]=_0x5a121a[_0x4fb224(0xd4)]>0x0?_0x5a121a[0x0]:undefined,_0x5092ec['defaultApp']?_0x5177fe='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x5092ec[_0x4fb224(0xd0)]+'\x22.':delete _0x5092ec[_0x4fb224(0xd0)];}Object[_0x4fb224(0xca)](_0x42b512)['length']===0x0&&(delete _0x5092ec['apps'],delete _0x5092ec['defaultApp']);writeConfig(_0x5092ec,_0x37e884);const _0x42a64b=_0x23ec3c==='both'?_0x4fb224(0xcd)+_0xb4d5f9+'\x22\x20still\x20defined\x20in\x20'+(_0x2463ba===_0x4fb224(0xdb)?_0x4fb224(0xc6):_0x4fb224(0xdb))+'\x20config.':'';return{'ok':!![],'message':_0x4fb224(0xcc)+_0xb4d5f9+'\x22'+scopeLabel(_0x37e884)+'.'+_0x5177fe+_0x42a64b};}export const appRemoveDefinition={'service':a22_0x378ced(0xd5),'command':a22_0x378ced(0xda),'description':a22_0x378ced(0xdd),'risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x378ced(0xbb),'description':a22_0x378ced(0xc4),'required':!![]}],'flags':[{'name':a22_0x378ced(0xc6),'type':a22_0x378ced(0xcf),'description':a22_0x378ced(0xc0),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- function a23_0x24d3(){const _0x1689b2=['2486394EVJthZ','length','hasOwnProperty','appcode','projectConfig','isCurrent','8tkwiiU','492933poRQhk','defaultApp','appCode','keys','object','50OSysJg','42453dqpqGy','307844HCNPDk','project','24BbfMYj','1951191SbujIX','10wKoLqC','call','globalConfig','prototype','apps','inherit','312192gLkaJj','global','211352lcRoyp','trim'];a23_0x24d3=function(){return _0x1689b2;};return a23_0x24d3();}(function(_0x399333,_0x19b5f9){const _0x2ac685=a23_0x46bb,_0x40effa=_0x399333();while(!![]){try{const _0x49c94e=-parseInt(_0x2ac685(0x1b1))/0x1+-parseInt(_0x2ac685(0x1a7))/0x2*(parseInt(_0x2ac685(0x1a4))/0x3)+-parseInt(_0x2ac685(0x1a5))/0x4+parseInt(_0x2ac685(0x1a9))/0x5*(parseInt(_0x2ac685(0x1af))/0x6)+-parseInt(_0x2ac685(0x19e))/0x7+parseInt(_0x2ac685(0x19d))/0x8*(-parseInt(_0x2ac685(0x1b3))/0x9)+parseInt(_0x2ac685(0x1a3))/0xa*(parseInt(_0x2ac685(0x1a8))/0xb);if(_0x49c94e===_0x19b5f9)break;else _0x40effa['push'](_0x40effa['shift']());}catch(_0x541e7){_0x40effa['push'](_0x40effa['shift']());}}}(a23_0x24d3,0x2d72f));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x331f45,_0x27dd1c){const _0x5ab0f6=a23_0x46bb;if(!_0x27dd1c)return;const _0x444cce=_0x27dd1c[_0x5ab0f6(0x1ad)]&&typeof _0x27dd1c[_0x5ab0f6(0x1ad)]===_0x5ab0f6(0x1a2)?_0x27dd1c[_0x5ab0f6(0x1ad)]:{},_0x2ba73b=Object[_0x5ab0f6(0x1a1)](_0x444cce)[_0x5ab0f6(0x1b4)]>0x0;for(const _0x5612dd of _0x331f45){_0x5612dd['isCurrent']=![];}const _0x2efb55=_0x27dd1c[_0x5ab0f6(0x1a0)]!=null?String(_0x27dd1c[_0x5ab0f6(0x1a0)])[_0x5ab0f6(0x1b2)]():'';if(_0x2ba73b){const _0x268493=_0x27dd1c['currentApp']??_0x27dd1c[_0x5ab0f6(0x19f)];if(_0x268493)for(const _0xf64c80 of _0x331f45){_0xf64c80['named']===!![]&&_0xf64c80['name']===_0x268493&&(_0xf64c80[_0x5ab0f6(0x19c)]=!![]);}for(const _0x48f124 of _0x331f45){if(_0x48f124['named']!==![])continue;if(_0x27dd1c[_0x5ab0f6(0x19f)])continue;_0x2efb55&&String(_0x48f124['appcode']??'')[_0x5ab0f6(0x1b2)]()===_0x2efb55&&(_0x48f124[_0x5ab0f6(0x19c)]=!![]);}return;}if(!_0x2efb55)return;for(const _0x2c12d4 of _0x331f45){String(_0x2c12d4[_0x5ab0f6(0x1b6)]??'')[_0x5ab0f6(0x1b2)]()===_0x2efb55&&(_0x2c12d4[_0x5ab0f6(0x19c)]=!![]);}}export function resolveAppScopeForWrite(_0x1fcd9c,_0x4cf693,_0x2b4940){const _0x542da4=a23_0x46bb;if(_0x4cf693)return _0x542da4(0x1b0);const _0x5a095e=_0x2b4940['projectConfig'][_0x542da4(0x1ad)]&&typeof _0x2b4940[_0x542da4(0x1b7)]['apps']===_0x542da4(0x1a2)?_0x2b4940['projectConfig'][_0x542da4(0x1ad)]:{},_0x1711a4=_0x2b4940['globalConfig']['apps']&&typeof _0x2b4940['globalConfig'][_0x542da4(0x1ad)]==='object'?_0x2b4940[_0x542da4(0x1ab)][_0x542da4(0x1ad)]:{};if(Object[_0x542da4(0x1ac)][_0x542da4(0x1b5)][_0x542da4(0x1aa)](_0x5a095e,_0x1fcd9c))return _0x542da4(0x1a6);if(Object[_0x542da4(0x1ac)]['hasOwnProperty'][_0x542da4(0x1aa)](_0x1711a4,_0x1fcd9c))return _0x542da4(0x1b0);return _0x542da4(0x1a6);}export function appDefinedIn(_0x2e0697,_0x1c541d,_0x21dccd,_0x2225ca){const _0x50cd74=a23_0x46bb;if(_0x2225ca)return Object[_0x50cd74(0x1ac)]['hasOwnProperty'][_0x50cd74(0x1aa)](_0x21dccd,_0x2e0697)?_0x50cd74(0x1a6):_0x50cd74(0x1b0);const _0x49bc43=Object[_0x50cd74(0x1ac)][_0x50cd74(0x1b5)][_0x50cd74(0x1aa)](_0x1c541d,_0x2e0697),_0x48eabc=Object[_0x50cd74(0x1ac)][_0x50cd74(0x1b5)][_0x50cd74(0x1aa)](_0x21dccd,_0x2e0697);if(_0x49bc43&&_0x48eabc)return'both';if(_0x48eabc)return _0x50cd74(0x1a6);return _0x50cd74(0x1b0);}export function resolveDefaultAppSource(_0x3ef9b3){const _0x2196d9=a23_0x46bb,_0x40f23c=_0x3ef9b3[_0x2196d9(0x1b7)][_0x2196d9(0x1ad)]&&typeof _0x3ef9b3['projectConfig']['apps']===_0x2196d9(0x1a2)?_0x3ef9b3['projectConfig'][_0x2196d9(0x1ad)]:{};if(_0x2196d9(0x19f)in _0x3ef9b3[_0x2196d9(0x1b7)])return'project';if(Object[_0x2196d9(0x1a1)](_0x40f23c)[_0x2196d9(0x1b4)]>0x0)return _0x2196d9(0x1a6);if(_0x3ef9b3[_0x2196d9(0x1b7)][_0x2196d9(0x1ae)]===![])return null;if(_0x3ef9b3[_0x2196d9(0x1ab)][_0x2196d9(0x19f)])return _0x2196d9(0x1b0);return null;}export function getConfigPath(_0x4191f6={}){const _0x1e08d7=a23_0x46bb,_0x486782=_0x4191f6[_0x1e08d7(0x1b0)]?_0x1e08d7(0x1b0):_0x1e08d7(0x1a6);return resolveWriteConfigPath(_0x486782);}export function readConfig(_0x264964={}){return readConfigFile(getConfigPath(_0x264964));}function a23_0x46bb(_0x10e074,_0x308208){_0x10e074=_0x10e074-0x19c;const _0x24d39e=a23_0x24d3();let _0x46bbac=_0x24d39e[_0x10e074];return _0x46bbac;}export function writeConfig(_0x49d1a7,_0xc62690={}){writeConfigFile(getConfigPath(_0xc62690),_0x49d1a7);}export function scopeLabel(_0x43338c){return _0x43338c['global']?'\x20(global)':'';}
1
+ (function(_0x5aec91,_0x22dd0f){const _0x2895bf=a23_0x3716,_0x32cbe6=_0x5aec91();while(!![]){try{const _0xd026c8=-parseInt(_0x2895bf(0x1a1))/0x1+-parseInt(_0x2895bf(0x1b8))/0x2*(-parseInt(_0x2895bf(0x1ae))/0x3)+parseInt(_0x2895bf(0x1bc))/0x4*(parseInt(_0x2895bf(0x1a5))/0x5)+parseInt(_0x2895bf(0x1ac))/0x6*(-parseInt(_0x2895bf(0x1b1))/0x7)+parseInt(_0x2895bf(0x1af))/0x8*(-parseInt(_0x2895bf(0x1ad))/0x9)+-parseInt(_0x2895bf(0x1a6))/0xa+parseInt(_0x2895bf(0x1a0))/0xb;if(_0xd026c8===_0x22dd0f)break;else _0x32cbe6['push'](_0x32cbe6['shift']());}catch(_0x2ff871){_0x32cbe6['push'](_0x32cbe6['shift']());}}}(a23_0x4529,0x5c15d));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x327804,_0x4bce42){const _0x3cdd33=a23_0x3716;if(!_0x4bce42)return;const _0x413fb5=_0x4bce42['apps']&&typeof _0x4bce42[_0x3cdd33(0x1b0)]==='object'?_0x4bce42[_0x3cdd33(0x1b0)]:{},_0x3e6454=Object[_0x3cdd33(0x1b2)](_0x413fb5)[_0x3cdd33(0x1a9)]>0x0;for(const _0xfdb3ef of _0x327804){_0xfdb3ef['isCurrent']=![];}const _0x1e4bb2=_0x4bce42[_0x3cdd33(0x1a8)]!=null?String(_0x4bce42[_0x3cdd33(0x1a8)])[_0x3cdd33(0x1ab)]():'';if(_0x3e6454){const _0x105ca7=_0x4bce42[_0x3cdd33(0x19e)]??_0x4bce42['defaultApp'];if(_0x105ca7)for(const _0x4b33f2 of _0x327804){_0x4b33f2[_0x3cdd33(0x1b5)]===!![]&&_0x4b33f2['name']===_0x105ca7&&(_0x4b33f2[_0x3cdd33(0x1bb)]=!![]);}for(const _0x3d4152 of _0x327804){if(_0x3d4152[_0x3cdd33(0x1b5)]!==![])continue;if(_0x4bce42[_0x3cdd33(0x19f)])continue;_0x1e4bb2&&String(_0x3d4152[_0x3cdd33(0x1a7)]??'')['trim']()===_0x1e4bb2&&(_0x3d4152['isCurrent']=!![]);}return;}if(!_0x1e4bb2)return;for(const _0x56d04c of _0x327804){String(_0x56d04c[_0x3cdd33(0x1a7)]??'')[_0x3cdd33(0x1ab)]()===_0x1e4bb2&&(_0x56d04c[_0x3cdd33(0x1bb)]=!![]);}}export function resolveAppScopeForWrite(_0x5721d2,_0x1ddec8,_0x2c46e6){const _0x5c0436=a23_0x3716;if(_0x1ddec8)return _0x5c0436(0x1aa);const _0x1c092d=_0x2c46e6[_0x5c0436(0x1b6)][_0x5c0436(0x1b0)]&&typeof _0x2c46e6[_0x5c0436(0x1b6)][_0x5c0436(0x1b0)]===_0x5c0436(0x1a2)?_0x2c46e6[_0x5c0436(0x1b6)][_0x5c0436(0x1b0)]:{},_0x51e7ab=_0x2c46e6[_0x5c0436(0x1b9)]['apps']&&typeof _0x2c46e6['globalConfig'][_0x5c0436(0x1b0)]===_0x5c0436(0x1a2)?_0x2c46e6[_0x5c0436(0x1b9)][_0x5c0436(0x1b0)]:{};if(Object[_0x5c0436(0x1a4)][_0x5c0436(0x1b7)][_0x5c0436(0x1b4)](_0x1c092d,_0x5721d2))return _0x5c0436(0x1a3);if(Object[_0x5c0436(0x1a4)][_0x5c0436(0x1b7)][_0x5c0436(0x1b4)](_0x51e7ab,_0x5721d2))return _0x5c0436(0x1aa);return _0x5c0436(0x1a3);}export function appDefinedIn(_0xc9863,_0x511b34,_0x1d34e9,_0x4e5f33){const _0x299bc9=a23_0x3716;if(_0x4e5f33)return Object[_0x299bc9(0x1a4)]['hasOwnProperty']['call'](_0x1d34e9,_0xc9863)?_0x299bc9(0x1a3):'global';const _0x4dac64=Object[_0x299bc9(0x1a4)][_0x299bc9(0x1b7)][_0x299bc9(0x1b4)](_0x511b34,_0xc9863),_0x65a0f8=Object[_0x299bc9(0x1a4)][_0x299bc9(0x1b7)][_0x299bc9(0x1b4)](_0x1d34e9,_0xc9863);if(_0x4dac64&&_0x65a0f8)return'both';if(_0x65a0f8)return _0x299bc9(0x1a3);return _0x299bc9(0x1aa);}function a23_0x3716(_0x19e910,_0xaa549d){_0x19e910=_0x19e910-0x19e;const _0x452906=a23_0x4529();let _0x371663=_0x452906[_0x19e910];return _0x371663;}export function resolveDefaultAppSource(_0x18a638){const _0xc655df=a23_0x3716,_0x28c895=_0x18a638['projectConfig'][_0xc655df(0x1b0)]&&typeof _0x18a638[_0xc655df(0x1b6)][_0xc655df(0x1b0)]===_0xc655df(0x1a2)?_0x18a638['projectConfig'][_0xc655df(0x1b0)]:{};if(_0xc655df(0x19f)in _0x18a638[_0xc655df(0x1b6)])return _0xc655df(0x1a3);if(Object['keys'](_0x28c895)[_0xc655df(0x1a9)]>0x0)return'project';if(_0x18a638[_0xc655df(0x1b6)][_0xc655df(0x1ba)]===![])return null;if(_0x18a638[_0xc655df(0x1b9)]['defaultApp'])return'global';return null;}export function getConfigPath(_0x403949={}){const _0x1454c6=a23_0x3716,_0x3a875f=_0x403949['global']?_0x1454c6(0x1aa):_0x1454c6(0x1a3);return resolveWriteConfigPath(_0x3a875f);}export function readConfig(_0x69c109={}){return readConfigFile(getConfigPath(_0x69c109));}export function writeConfig(_0x481083,_0x71aaf7={}){writeConfigFile(getConfigPath(_0x71aaf7),_0x481083);}export function scopeLabel(_0x3df54d){const _0x3a0517=a23_0x3716;return _0x3df54d[_0x3a0517(0x1aa)]?_0x3a0517(0x1b3):'';}function a23_0x4529(){const _0x3a7b5d=['20nXwFEF','367450lpsjwR','appcode','appCode','length','global','trim','5970lAlLqr','9lfggIS','1098phERtf','4360112Hishgu','apps','42eqjyhT','keys','\x20(global)','call','named','projectConfig','hasOwnProperty','618fXWjcY','globalConfig','inherit','isCurrent','414944TFRAvc','currentApp','defaultApp','4956193QKBvtg','13691kfhJTN','object','project','prototype'];a23_0x4529=function(){return _0x3a7b5d;};return a23_0x4529();}
@@ -1 +1 @@
1
- const a24_0x1824bd=a24_0x4a57;(function(_0x2ff86f,_0x18a28a){const _0x4e7436=a24_0x4a57,_0x3663c2=_0x2ff86f();while(!![]){try{const _0x2caeae=-parseInt(_0x4e7436(0xbe))/0x1+-parseInt(_0x4e7436(0xd0))/0x2*(-parseInt(_0x4e7436(0xb0))/0x3)+-parseInt(_0x4e7436(0xab))/0x4*(parseInt(_0x4e7436(0xc9))/0x5)+-parseInt(_0x4e7436(0xc5))/0x6*(-parseInt(_0x4e7436(0xae))/0x7)+parseInt(_0x4e7436(0xba))/0x8*(-parseInt(_0x4e7436(0xa9))/0x9)+-parseInt(_0x4e7436(0xc3))/0xa*(parseInt(_0x4e7436(0xa8))/0xb)+parseInt(_0x4e7436(0xd2))/0xc;if(_0x2caeae===_0x18a28a)break;else _0x3663c2['push'](_0x3663c2['shift']());}catch(_0x3f7811){_0x3663c2['push'](_0x3663c2['shift']());}}}(a24_0x250a,0x1b017));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';function a24_0x4a57(_0x4b12d3,_0x37d5c9){_0x4b12d3=_0x4b12d3-0xa6;const _0x250a22=a24_0x250a();let _0x4a575b=_0x250a22[_0x4b12d3];return _0x4a575b;}function a24_0x250a(){const _0x4a611d=['App\x20\x22','Use\x20`','5dPTtyB','name','appcode','write','call','trim','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','4478uogSCH','bool','6124332CjlkDf','keys','use','defaultApp','38511KBCiqK','9SmSDHG','apps','550008zOrkay','Default\x20app\x20set\x20to\x20\x22','global','695289VJxdVF','rabetbase\x20workspace\x20use\x20--app\x20<name>','3HOAHNi','globalConfig','Use\x20global\x20config\x20scope','object','hasOwnProperty','args','join','Deprecated:\x20use\x20workspace\x20use','Usage:\x20','Missing\x20app\x20name.','582104igqZMa','\x20--appcode\x20<code>`\x20first.','\x20app\x20use\x20<name>\x20[--global]','boolean','193019RzbpSs','\x20app\x20add\x20','Available:\x20','app','validation','280PLNUQb','length','6LiZvmI','prototype'];a24_0x250a=function(){return _0x4a611d;};return a24_0x250a();}async function validateArgs(_0xc0fe53){const _0x311977=a24_0x4a57,_0x39ede0=_0xc0fe53['args'][0x0]?.[_0x311977(0xce)]();if(!_0x39ede0)throw CliErrors[_0x311977(0xc2)](_0x311977(0xb9),_0x311977(0xb8)+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');}async function execute(_0x500577){const _0x292a5c=a24_0x4a57,_0x5a3227=_0x500577[_0x292a5c(0xb5)][0x0]?.['trim']();if(!_0x5a3227)throw CliErrors[_0x292a5c(0xc2)](_0x292a5c(0xb9),_0x292a5c(0xb8)+CLI_BIN_NAME+_0x292a5c(0xbc));const _0x4761fe=_0x500577[_0x292a5c(0xd1)](_0x292a5c(0xad)),{config:_0x456e5a,layers:_0x3a6ddc}=readRawConfigWithLayers(),_0x191264=_0x456e5a['apps']??{},_0x1ac444=_0x3a6ddc[_0x292a5c(0xb1)][_0x292a5c(0xaa)]&&typeof _0x3a6ddc['globalConfig'][_0x292a5c(0xaa)]===_0x292a5c(0xb3)?_0x3a6ddc[_0x292a5c(0xb1)][_0x292a5c(0xaa)]:{},_0x2c50cd={..._0x1ac444,..._0x191264};if(!_0x2c50cd[_0x5a3227]){const _0x48eebe=Object[_0x292a5c(0xd3)](_0x2c50cd),_0x1e88b1=_0x48eebe[_0x292a5c(0xc4)]===0x0?_0x292a5c(0xc8)+CLI_BIN_NAME+_0x292a5c(0xbf)+_0x5a3227+_0x292a5c(0xbb):_0x292a5c(0xc0)+_0x48eebe[_0x292a5c(0xb6)](',\x20');throw CliErrors[_0x292a5c(0xc2)](_0x292a5c(0xc7)+_0x5a3227+'\x22\x20not\x20found.',_0x1e88b1);}let _0x5c80a1,_0x5263d1='';if(_0x4761fe)_0x5c80a1={'global':!![]};else{const _0x1eaa9e=isInProject()&&!!_0x3a6ddc['projectPath'];_0x5c80a1={'global':!_0x1eaa9e};}const _0x65316b=readConfig(_0x5c80a1);_0x65316b[_0x292a5c(0xa7)]=_0x5a3227;if(!_0x5c80a1['global']){const _0x3990d4=_0x65316b[_0x292a5c(0xaa)]&&typeof _0x65316b[_0x292a5c(0xaa)]===_0x292a5c(0xb3)?_0x65316b[_0x292a5c(0xaa)]:{};!Object[_0x292a5c(0xc6)][_0x292a5c(0xb4)][_0x292a5c(0xcd)](_0x3990d4,_0x5a3227)&&(_0x65316b[_0x292a5c(0xaa)]={..._0x3990d4,[_0x5a3227]:_0x2c50cd[_0x5a3227]},_0x5263d1='\x0aNote:\x20\x22'+_0x5a3227+_0x292a5c(0xcf));}return writeConfig(_0x65316b,_0x5c80a1),{'ok':!![],'message':_0x292a5c(0xac)+_0x5a3227+'\x22\x20(appcode:\x20'+_0x2c50cd[_0x5a3227][_0x292a5c(0xcb)]+')'+scopeLabel(_0x5c80a1)+_0x5263d1};}export const appUseDefinition={'service':a24_0x1824bd(0xc1),'command':a24_0x1824bd(0xa6),'description':a24_0x1824bd(0xb7),'risk':a24_0x1824bd(0xcc),'requiresAuth':![],'requiresAppCode':![],'deprecated':{'replacement':a24_0x1824bd(0xaf)},'args':[{'name':a24_0x1824bd(0xca),'description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':'global','type':a24_0x1824bd(0xbd),'description':a24_0x1824bd(0xb2),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x5341c1=a24_0x43a3;(function(_0x15ba40,_0x1669cb){const _0x14d79c=a24_0x43a3,_0x30a76e=_0x15ba40();while(!![]){try{const _0x5b9e51=parseInt(_0x14d79c(0x18b))/0x1*(-parseInt(_0x14d79c(0x196))/0x2)+-parseInt(_0x14d79c(0x175))/0x3*(parseInt(_0x14d79c(0x17a))/0x4)+parseInt(_0x14d79c(0x170))/0x5+parseInt(_0x14d79c(0x17b))/0x6+parseInt(_0x14d79c(0x177))/0x7+-parseInt(_0x14d79c(0x192))/0x8*(-parseInt(_0x14d79c(0x18a))/0x9)+parseInt(_0x14d79c(0x17e))/0xa;if(_0x5b9e51===_0x1669cb)break;else _0x30a76e['push'](_0x30a76e['shift']());}catch(_0xfdffa6){_0x30a76e['push'](_0x30a76e['shift']());}}}(a24_0x55bc,0xe97e5));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';function a24_0x43a3(_0x5ea21d,_0x201269){_0x5ea21d=_0x5ea21d-0x16f;const _0x55bc74=a24_0x55bc();let _0x43a379=_0x55bc74[_0x5ea21d];return _0x43a379;}async function validateArgs(_0x155097){const _0x41de98=a24_0x43a3,_0x254935=_0x155097[_0x41de98(0x186)][0x0]?.[_0x41de98(0x182)]();if(!_0x254935)throw CliErrors[_0x41de98(0x189)](_0x41de98(0x183),_0x41de98(0x191)+CLI_BIN_NAME+_0x41de98(0x179));}async function execute(_0x338216){const _0x560367=a24_0x43a3,_0x43f9e0=_0x338216['args'][0x0]?.[_0x560367(0x182)]();if(!_0x43f9e0)throw CliErrors[_0x560367(0x189)](_0x560367(0x183),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');const _0x144b72=_0x338216[_0x560367(0x18d)](_0x560367(0x190)),{config:_0x27a68a,layers:_0xce7ebc}=readRawConfigWithLayers(),_0x59c341=_0x27a68a[_0x560367(0x18f)]??{},_0x268944=_0xce7ebc['globalConfig']['apps']&&typeof _0xce7ebc[_0x560367(0x18e)][_0x560367(0x18f)]==='object'?_0xce7ebc[_0x560367(0x18e)][_0x560367(0x18f)]:{},_0x32b7bb={..._0x268944,..._0x59c341};if(!_0x32b7bb[_0x43f9e0]){const _0x412870=Object[_0x560367(0x181)](_0x32b7bb),_0x1826c7=_0x412870['length']===0x0?_0x560367(0x178)+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x43f9e0+'\x20--appcode\x20<code>`\x20first.':_0x560367(0x194)+_0x412870[_0x560367(0x18c)](',\x20');throw CliErrors[_0x560367(0x189)](_0x560367(0x17f)+_0x43f9e0+'\x22\x20not\x20found.',_0x1826c7);}let _0x140e76,_0x40db47='';if(_0x144b72)_0x140e76={'global':!![]};else{const _0x24ded4=isInProject()&&!!_0xce7ebc[_0x560367(0x172)];_0x140e76={'global':!_0x24ded4};}const _0x215046=readConfig(_0x140e76);_0x215046[_0x560367(0x195)]=_0x43f9e0;if(!_0x140e76[_0x560367(0x190)]){const _0x1cda20=_0x215046[_0x560367(0x18f)]&&typeof _0x215046[_0x560367(0x18f)]===_0x560367(0x197)?_0x215046['apps']:{};!Object['prototype'][_0x560367(0x187)][_0x560367(0x185)](_0x1cda20,_0x43f9e0)&&(_0x215046['apps']={..._0x1cda20,[_0x43f9e0]:_0x32b7bb[_0x43f9e0]},_0x40db47='\x0aNote:\x20\x22'+_0x43f9e0+'\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.');}return writeConfig(_0x215046,_0x140e76),{'ok':!![],'message':_0x560367(0x174)+_0x43f9e0+_0x560367(0x180)+_0x32b7bb[_0x43f9e0][_0x560367(0x16f)]+')'+scopeLabel(_0x140e76)+_0x40db47};}export const appUseDefinition={'service':a24_0x5341c1(0x17c),'command':a24_0x5341c1(0x176),'description':a24_0x5341c1(0x184),'risk':a24_0x5341c1(0x188),'requiresAuth':![],'requiresAppCode':![],'deprecated':{'replacement':a24_0x5341c1(0x171)},'args':[{'name':a24_0x5341c1(0x17d),'description':a24_0x5341c1(0x173),'required':!![]}],'flags':[{'name':a24_0x5341c1(0x190),'type':a24_0x5341c1(0x193),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};function a24_0x55bc(){const _0x91b481=['object','appcode','1548780dLRVVk','rabetbase\x20workspace\x20use\x20--app\x20<name>','projectPath','App\x20profile\x20name\x20to\x20activate','Default\x20app\x20set\x20to\x20\x22','1766301sKHrpm','use','2150582fLURuU','Use\x20`','\x20app\x20use\x20<name>\x20[--global]','4zKWnKM','6215862svMQIm','app','name','11611360IyxXgp','App\x20\x22','\x22\x20(appcode:\x20','keys','trim','Missing\x20app\x20name.','Deprecated:\x20use\x20workspace\x20use','call','args','hasOwnProperty','write','validation','47898zfpPfC','1dccGEX','join','bool','globalConfig','apps','global','Usage:\x20','544yplLLk','boolean','Available:\x20','defaultApp','3261670TlBxzn'];a24_0x55bc=function(){return _0x91b481;};return a24_0x55bc();}
@@ -1 +1 @@
1
- const a25_0x3afbd9=a25_0x3ff6;function a25_0x3ff6(_0x470fa4,_0xbad8b6){_0x470fa4=_0x470fa4-0x12e;const _0x1a4a6b=a25_0x1a4a();let _0x3ff6c7=_0x1a4a6b[_0x470fa4];return _0x3ff6c7;}function a25_0x1a4a(){const _0xbb0922=['3409244PyXQFH','write','37110SQxYwl','9RWxzMA','yes','nonInteractive','auth','3532236IFLDuH','6pgIzvL','594kwpbLm','58849oCWAGg','read','../../auth/auth-server-ui.js','Clear\x20login\x20session','236407uqLMwk','login','1065830oIrDIB','57634TAaHgj','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','✓\x20Logged\x20out','11cSMsyk','log','856rBVPWl'];a25_0x1a4a=function(){return _0xbb0922;};return a25_0x1a4a();}(function(_0x51a844,_0x52121e){const _0x267677=a25_0x3ff6,_0x18f20b=_0x51a844();while(!![]){try{const _0x516a41=-parseInt(_0x267677(0x141))/0x1+parseInt(_0x267677(0x144))/0x2*(-parseInt(_0x267677(0x13b))/0x3)+parseInt(_0x267677(0x133))/0x4+-parseInt(_0x267677(0x135))/0x5*(parseInt(_0x267677(0x13c))/0x6)+parseInt(_0x267677(0x13d))/0x7*(parseInt(_0x267677(0x132))/0x8)+-parseInt(_0x267677(0x136))/0x9*(-parseInt(_0x267677(0x143))/0xa)+-parseInt(_0x267677(0x130))/0xb*(parseInt(_0x267677(0x13a))/0xc);if(_0x516a41===_0x52121e)break;else _0x18f20b['push'](_0x18f20b['shift']());}catch(_0x1d909b){_0x18f20b['push'](_0x18f20b['shift']());}}}(a25_0x1a4a,0x82ae7));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x3afbd9(0x139),'command':a25_0x3afbd9(0x142),'description':'Login\x20via\x20browser','risk':a25_0x3afbd9(0x13e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'yes','type':'boolean','description':a25_0x3afbd9(0x12e),'default':![]}],async 'execute'(_0x10c7ce){const _0x49ca9a=a25_0x3afbd9,{runAuthServer:_0x4ed43d}=await import(_0x49ca9a(0x13f));return await _0x4ed43d({'autoYes':_0x10c7ce['bool'](_0x49ca9a(0x137)),'nonInteractive':_0x10c7ce[_0x49ca9a(0x138)]}),{'ok':!![]};}},{'service':a25_0x3afbd9(0x139),'command':'logout','description':a25_0x3afbd9(0x140),'risk':a25_0x3afbd9(0x134),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0xb60743){const _0x196fe2=a25_0x3afbd9;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x196fe2(0x131)](_0x196fe2(0x12f))):console[_0x196fe2(0x131)]('!\x20Not\x20logged\x20in'),{'ok':!![]};}}];
1
+ const a25_0x20c807=a25_0x1d05;(function(_0x5c2642,_0x5e84f6){const _0x55a1b4=a25_0x1d05,_0x251688=_0x5c2642();while(!![]){try{const _0x2a5859=-parseInt(_0x55a1b4(0x187))/0x1*(parseInt(_0x55a1b4(0x183))/0x2)+parseInt(_0x55a1b4(0x186))/0x3+parseInt(_0x55a1b4(0x18e))/0x4*(parseInt(_0x55a1b4(0x192))/0x5)+parseInt(_0x55a1b4(0x199))/0x6*(-parseInt(_0x55a1b4(0x18d))/0x7)+-parseInt(_0x55a1b4(0x191))/0x8+parseInt(_0x55a1b4(0x185))/0x9+parseInt(_0x55a1b4(0x184))/0xa*(parseInt(_0x55a1b4(0x193))/0xb);if(_0x2a5859===_0x5e84f6)break;else _0x251688['push'](_0x251688['shift']());}catch(_0x38ff44){_0x251688['push'](_0x251688['shift']());}}}(a25_0x1548,0xd0564));import{unlinkSync,existsSync}from'node:fs';function a25_0x1548(){const _0x439011=['auth','1685058bKNGzU','nonInteractive','✓\x20Logged\x20out','2fMgnRb','590kFenVV','1844703yxhctr','268155tzlhJV','857011JmVvEz','bool','!\x20Not\x20logged\x20in','logout','Clear\x20login\x20session','write','7AxwjVm','972084RrZXnF','boolean','yes','12571640cbjmUb','10oHttBP','518727pulcGB','read','Login\x20via\x20browser','log','../../auth/auth-server-ui.js'];a25_0x1548=function(){return _0x439011;};return a25_0x1548();}function a25_0x1d05(_0x3c7ac4,_0x2a39c5){_0x3c7ac4=_0x3c7ac4-0x182;const _0x154820=a25_0x1548();let _0x1d05ef=_0x154820[_0x3c7ac4];return _0x1d05ef;}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x20c807(0x198),'command':'login','description':a25_0x20c807(0x195),'risk':a25_0x20c807(0x194),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x20c807(0x190),'type':a25_0x20c807(0x18f),'description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0x32fb18){const _0x4d16cd=a25_0x20c807,{runAuthServer:_0x2dda14}=await import(_0x4d16cd(0x197));return await _0x2dda14({'autoYes':_0x32fb18[_0x4d16cd(0x188)](_0x4d16cd(0x190)),'nonInteractive':_0x32fb18[_0x4d16cd(0x19a)]}),{'ok':!![]};}},{'service':'auth','command':a25_0x20c807(0x18a),'description':a25_0x20c807(0x18b),'risk':a25_0x20c807(0x18c),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0xfd85ed){const _0x217703=a25_0x20c807;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x217703(0x196)](_0x217703(0x182))):console[_0x217703(0x196)](_0x217703(0x189)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a26_0x4d352d=a26_0x3982;(function(_0x39e0c2,_0x2cc01d){const _0x215b6d=a26_0x3982,_0x258c0b=_0x39e0c2();while(!![]){try{const _0x57d4bc=parseInt(_0x215b6d(0x14a))/0x1*(-parseInt(_0x215b6d(0x157))/0x2)+-parseInt(_0x215b6d(0x15b))/0x3+parseInt(_0x215b6d(0x179))/0x4*(-parseInt(_0x215b6d(0x178))/0x5)+parseInt(_0x215b6d(0x142))/0x6+parseInt(_0x215b6d(0x17c))/0x7+parseInt(_0x215b6d(0x172))/0x8*(-parseInt(_0x215b6d(0x13b))/0x9)+parseInt(_0x215b6d(0x14b))/0xa*(parseInt(_0x215b6d(0x15a))/0xb);if(_0x57d4bc===_0x2cc01d)break;else _0x258c0b['push'](_0x258c0b['shift']());}catch(_0x6fbe80){_0x258c0b['push'](_0x258c0b['shift']());}}}(a26_0x3d44,0xe6190));function a26_0x3982(_0x34fe13,_0x5df512){_0x34fe13=_0x34fe13-0x13b;const _0x3d44c3=a26_0x3d44();let _0x39826c=_0x3d44c3[_0x34fe13];return _0x39826c;}import{createInterface}from'node:readline';function a26_0x3d44(){const _0x6429dc=['Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','tableName','\x20function:\x20','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Available:\x20','COMMON','apiDir','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','join','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','Operation\x20type\x20\x22','operation-type','alias','HOOK\x20requires\x20alias/operation/node\x20options.','trim','code','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','Trigger\x20node\x20(HOOK\x20only)','stderr','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','.js','after','string','\x0a\x20*\x20[脚本名称]\x20','isInteger','Function\x20name\x20(valid\x20JS\x20identifier)','UNKNOWN','3159xjPhyA','appCode','map','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','No\x20operation\x20types\x20found\x20for\x20dataset\x20','functionNode','before','6390624RDtnyB','\x0a\x20*\x20[触发节点]\x20','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','write','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','HOOK','datasetcode','name','127GAaUrI','80DyYBqK','entries','Invalid\x20function\x20name\x20\x22','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','\x22\x20not\x20found.\x20','question','close','TODO:\x20add\x20script\x20description','description','function-node','File\x20already\x20exists:\x20','bff','3734aeHcBm','\x22.\x20','source','2325444SAjDiK','492093ujNDWu','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','nonInteractive','operationType','str','Created\x20','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','type','\x20api\x20pull`\x20to\x20refresh.','Alias\x20\x22','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Script\x20type','scriptsRootDir','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','find','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','validation','Operation\x20type\x20(HOOK\x20only)','stdin','No\x20datasets\x20found\x20for\x20this\x20app.','create','length',']\x20(','1928nwWKrU','datasetCode','\x22\x20not\x20found\x20for\x20dataset\x20','Dataset\x20not\x20found\x20for\x20code\x20\x22','ENDPOINT','Select\x20dataset:','13985vOwyXj','2084swJjHE','includes','Invalid\x20dataset\x20selection.','903784ledcqJ'];a26_0x3d44=function(){return _0x6429dc;};return a26_0x3d44();}import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0x4d352d(0x156),'command':a26_0x4d352d(0x16f),'description':a26_0x4d352d(0x17d),'risk':a26_0x4d352d(0x145),'flags':[{'name':a26_0x4d352d(0x162),'type':'string','required':!![],'enum':[a26_0x4d352d(0x183),a26_0x4d352d(0x176),a26_0x4d352d(0x147)],'description':a26_0x4d352d(0x166)},{'name':a26_0x4d352d(0x149),'type':a26_0x4d352d(0x196),'required':!![],'description':a26_0x4d352d(0x199)},{'name':a26_0x4d352d(0x153),'type':a26_0x4d352d(0x196),'description':'Script\x20description'},{'name':a26_0x4d352d(0x18a),'type':a26_0x4d352d(0x196),'description':a26_0x4d352d(0x18f)},{'name':a26_0x4d352d(0x148),'type':'string','description':a26_0x4d352d(0x190)},{'name':'operation-type','type':a26_0x4d352d(0x196),'description':a26_0x4d352d(0x16c)},{'name':'function-node','type':a26_0x4d352d(0x196),'description':a26_0x4d352d(0x191),'enum':[a26_0x4d352d(0x141),'after']}],async 'validate'(_0x2fa49e){const _0x442c16=a26_0x4d352d,_0x28320f=_0x2fa49e['str']('name');if(!isValidBffFunctionName(_0x28320f))throw CliErrors[_0x442c16(0x16b)](_0x442c16(0x14d)+_0x28320f+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0x771dca){const _0x39d1eb=a26_0x4d352d,_0x4ccea3=loadBffProjectConfig(_0x771dca[_0x39d1eb(0x13c)]),_0x5a0c43=_0x771dca[_0x39d1eb(0x15f)](_0x39d1eb(0x162)),_0x24de13=_0x771dca[_0x39d1eb(0x15f)](_0x39d1eb(0x149)),_0x149f3d=_0x771dca[_0x39d1eb(0x15f)](_0x39d1eb(0x153))||undefined,_0x509adf=_0x5a0c43===_0x39d1eb(0x147)?await resolveHookOptions(_0x4ccea3,_0x771dca):undefined,_0x3d9534=buildFilePath(_0x4ccea3,_0x5a0c43,_0x24de13,_0x509adf);if(await fileExists(_0x3d9534))throw CliErrors[_0x39d1eb(0x16b)](_0x39d1eb(0x155)+_0x3d9534);await mkdir(dirname(_0x3d9534),{'recursive':!![]});const _0x3b7d47=generateTemplate(_0x5a0c43,_0x24de13,_0x771dca['appCode'],_0x149f3d,_0x509adf);await writeFile(_0x3d9534,_0x3b7d47,'utf8');const _0x1cb7cd={'type':_0x5a0c43,'name':_0x24de13,'path':_0x3d9534};if(_0x149f3d)_0x1cb7cd[_0x39d1eb(0x153)]=_0x149f3d;if(_0x509adf){if(_0x509adf[_0x39d1eb(0x18a)])_0x1cb7cd[_0x39d1eb(0x18a)]=_0x509adf[_0x39d1eb(0x18a)];_0x1cb7cd[_0x39d1eb(0x173)]=_0x509adf[_0x39d1eb(0x173)],_0x1cb7cd['operationType']=_0x509adf[_0x39d1eb(0x15e)],_0x1cb7cd[_0x39d1eb(0x140)]=_0x509adf[_0x39d1eb(0x140)];}return{'ok':!![],'data':_0x1cb7cd,'message':_0x39d1eb(0x160)+_0x5a0c43+_0x39d1eb(0x17f)+_0x24de13};}};async function resolveHookOptions(_0x1c16a0,_0x48a970){const _0xceeed0=a26_0x4d352d,_0x1fb427=loadAliasMap(_0x48a970[_0xceeed0(0x184)],undefined,resolveApiFilePath(_0x48a970[_0xceeed0(0x184)],_0x48a970[_0xceeed0(0x13c)])),_0x3d03e3=_0x1fb427[_0xceeed0(0x170)]>0x0;let _0x3ff2fe,_0x28d6d8,_0xc2573a;const _0x373322=_0x48a970[_0xceeed0(0x15f)]('alias'),_0x20e331=_0x48a970[_0xceeed0(0x15f)](_0xceeed0(0x148));if(_0x373322){const _0x11c082=resolveAlias(_0x48a970['apiDir'],_0x373322,undefined,resolveApiFilePath(_0x48a970['apiDir'],_0x48a970[_0xceeed0(0x13c)]));if(!_0x11c082){const _0x5d099e=_0x3d03e3?'Available\x20aliases:\x20'+_0x1fb427['map'](_0x1cd3c3=>_0x1cd3c3[_0xceeed0(0x18a)])[_0xceeed0(0x186)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0xceeed0(0x16b)](_0xceeed0(0x164)+_0x373322+_0xceeed0(0x14f)+_0x5d099e);}_0x3ff2fe=_0x373322,_0x28d6d8=_0x11c082;}else{if(_0x20e331){_0x28d6d8=_0x20e331;const _0x483d53=_0x1fb427[_0xceeed0(0x169)](_0xa58a27=>_0xa58a27[_0xceeed0(0x173)]===_0x20e331);_0x3ff2fe=_0x483d53?.[_0xceeed0(0x18a)];}else{if(_0x48a970[_0xceeed0(0x15d)])throw CliErrors[_0xceeed0(0x16b)]('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x3d03e3){const _0x93b8ec=_0x1fb427[_0xceeed0(0x13d)](_0x1136cc=>_0x1136cc['alias']+'\x20('+_0x1136cc[_0xceeed0(0x17e)]+')'),_0x11b909=await promptSelect(_0xceeed0(0x177),_0x93b8ec),_0x1c3183=_0x1fb427[_0x11b909];if(!_0x1c3183)throw CliErrors[_0xceeed0(0x16b)](_0xceeed0(0x17b));_0x3ff2fe=_0x1c3183[_0xceeed0(0x18a)],_0x28d6d8=_0x1c3183['datasetCode'];}else{const _0x393ca6=await listDatasets(_0x48a970[_0xceeed0(0x13c)]);if(_0x393ca6[_0xceeed0(0x170)]===0x0)throw CliErrors[_0xceeed0(0x16b)](_0xceeed0(0x16e));const _0xc27674=_0x393ca6['map'](_0x4559dd=>_0x4559dd[_0xceeed0(0x149)]+'\x20['+(_0x4559dd[_0xceeed0(0x159)]??_0xceeed0(0x19a))+_0xceeed0(0x171)+_0x4559dd[_0xceeed0(0x18d)]+')'),_0x1f19c0=await promptSelect(_0xceeed0(0x177),_0xc27674),_0x35e184=_0x393ca6[_0x1f19c0];if(!_0x35e184)throw CliErrors[_0xceeed0(0x16b)](_0xceeed0(0x17b));_0x28d6d8=_0x35e184[_0xceeed0(0x18d)],_0x3ff2fe=undefined;}}}}const _0x17f18b=await listDatasets(_0x48a970[_0xceeed0(0x13c)]),_0x245787=_0x17f18b[_0xceeed0(0x169)](_0x5caa79=>_0x5caa79[_0xceeed0(0x18d)]===_0x28d6d8);if(!_0x245787)throw CliErrors['validation'](_0xceeed0(0x175)+_0x28d6d8+_0xceeed0(0x158)+(_0x3ff2fe?_0xceeed0(0x168)+CLI_BIN_NAME+_0xceeed0(0x163):''));_0xc2573a=_0x245787['id'];const _0x599deb=_0x3ff2fe??_0x28d6d8,_0x4de71e=await listBffDatasetOperations(_0x48a970['appCode'],_0xc2573a),_0x2aaf9f=_0x4de71e?Object['keys'](_0x4de71e):[];if(_0x2aaf9f[_0xceeed0(0x170)]===0x0)throw CliErrors['validation'](_0xceeed0(0x13f)+_0x599deb+'.');let _0x289726;const _0x263a2c=_0x48a970[_0xceeed0(0x15f)](_0xceeed0(0x189));if(_0x263a2c){if(!_0x2aaf9f[_0xceeed0(0x17a)](_0x263a2c))throw CliErrors[_0xceeed0(0x16b)](_0xceeed0(0x188)+_0x263a2c+_0xceeed0(0x174)+_0x599deb+'.\x20'+(_0xceeed0(0x182)+_0x2aaf9f[_0xceeed0(0x186)](',\x20')));_0x289726=_0x263a2c;}else{if(_0x48a970[_0xceeed0(0x15d)])throw CliErrors[_0xceeed0(0x16b)](_0xceeed0(0x165));const _0x366048=await promptSelect('Select\x20operation\x20type:',_0x2aaf9f);_0x289726=_0x2aaf9f[_0x366048]??_0x2aaf9f[0x0];}let _0x548f82=normalizeHookFunctionNode(_0x48a970[_0xceeed0(0x15f)]('function-node'));if(!_0x548f82){if(_0x48a970['str'](_0xceeed0(0x154)))throw CliErrors[_0xceeed0(0x16b)](_0xceeed0(0x185));if(_0x48a970[_0xceeed0(0x15d)])throw CliErrors['validation'](_0xceeed0(0x193));const _0x5944bd=await promptSelect('Select\x20trigger\x20node:',[_0xceeed0(0x141),_0xceeed0(0x195)]);_0x548f82=[_0xceeed0(0x141),_0xceeed0(0x195)][_0x5944bd]??'before';}return{'alias':_0x3ff2fe,'datasetCode':_0x28d6d8,'datasetId':_0xc2573a,'operationType':_0x289726,'functionNode':_0x548f82};}async function promptSelect(_0x30e8c2,_0x18ed43){const _0xac117e=a26_0x4d352d;if(_0x18ed43['length']===0x1)return 0x0;for(const [_0x5ef957,_0x5d31f6]of _0x18ed43[_0xac117e(0x14c)]()){process['stderr']['write']('\x20\x20'+(_0x5ef957+0x1)+'.\x20'+_0x5d31f6+'\x0a');}const _0x3ab974=createInterface({'input':process[_0xac117e(0x16d)],'output':process[_0xac117e(0x192)]});while(!![]){const _0x5b74f4=await new Promise(_0x452482=>{const _0x2e26fe=_0xac117e;_0x3ab974[_0x2e26fe(0x150)](_0x30e8c2+'\x20',_0x452482);}),_0x4b6721=Number['parseInt'](_0x5b74f4[_0xac117e(0x18c)](),0xa);if(Number[_0xac117e(0x198)](_0x4b6721)&&_0x4b6721>=0x1&&_0x4b6721<=_0x18ed43['length'])return _0x3ab974[_0xac117e(0x151)](),_0x4b6721-0x1;process['stderr'][_0xac117e(0x145)](_0xac117e(0x14e)+_0x18ed43[_0xac117e(0x170)]+'.\x0a');}}function buildFilePath(_0x12e689,_0x4aa1d2,_0x355797,_0x874a27){const _0x35d665=a26_0x4d352d;if(_0x4aa1d2===_0x35d665(0x147)){if(!_0x874a27)throw CliErrors['validation'](_0x35d665(0x18b));const _0x22b268=_0x874a27[_0x35d665(0x18a)]??_0x874a27[_0x35d665(0x173)];return join(_0x12e689[_0x35d665(0x167)],_0x35d665(0x147),_0x22b268,_0x874a27[_0x35d665(0x15e)],_0x874a27[_0x35d665(0x140)],_0x355797+_0x35d665(0x194));}return join(_0x12e689[_0x35d665(0x167)],_0x4aa1d2,_0x355797+_0x35d665(0x194));}export function generateTemplate(_0x10aad9,_0x20a57e,_0xc3ce06,_0x333d78,_0x4f77ba){const _0x28d4b2=a26_0x4d352d,_0x2aa37a=_0x333d78?.[_0x28d4b2(0x18c)]()||_0x28d4b2(0x152);if(_0x10aad9===_0x28d4b2(0x183))return _0x28d4b2(0x161)+_0x2aa37a+_0x28d4b2(0x197)+_0x20a57e+_0x28d4b2(0x144)+_0x20a57e+_0x28d4b2(0x187)+_0x20a57e+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x10aad9===_0x28d4b2(0x176))return _0x28d4b2(0x13e)+_0x2aa37a+_0x28d4b2(0x146)+_0xc3ce06+'/'+_0x20a57e+_0x28d4b2(0x16a)+_0x20a57e+_0x28d4b2(0x181);if(!_0x4f77ba)throw CliErrors[_0x28d4b2(0x16b)](_0x28d4b2(0x15c));return _0x28d4b2(0x180)+_0x2aa37a+_0x28d4b2(0x18e)+_0xc3ce06+'/'+_0x4f77ba[_0x28d4b2(0x173)]+'/'+_0x4f77ba[_0x28d4b2(0x15e)]+_0x28d4b2(0x143)+_0x4f77ba[_0x28d4b2(0x140)]+'\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x20a57e+_0x28d4b2(0x181);}
1
+ const a26_0x4c0d37=a26_0x363a;(function(_0x5915a7,_0x2f2f7e){const _0x264921=a26_0x363a,_0x3d3ef9=_0x5915a7();while(!![]){try{const _0x2fbfc2=-parseInt(_0x264921(0x1d0))/0x1+parseInt(_0x264921(0x1dc))/0x2*(-parseInt(_0x264921(0x1f3))/0x3)+parseInt(_0x264921(0x1f9))/0x4*(-parseInt(_0x264921(0x1cd))/0x5)+parseInt(_0x264921(0x1c4))/0x6+parseInt(_0x264921(0x1bc))/0x7+parseInt(_0x264921(0x1f7))/0x8*(parseInt(_0x264921(0x1e6))/0x9)+parseInt(_0x264921(0x1d6))/0xa*(parseInt(_0x264921(0x200))/0xb);if(_0x2fbfc2===_0x2f2f7e)break;else _0x3d3ef9['push'](_0x3d3ef9['shift']());}catch(_0x40969c){_0x3d3ef9['push'](_0x3d3ef9['shift']());}}}(a26_0x4cbe,0x500af));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';function a26_0x363a(_0xf13671,_0x3f41df){_0xf13671=_0xf13671-0x1b0;const _0x4cbe02=a26_0x4cbe();let _0x363a05=_0x4cbe02[_0xf13671];return _0x363a05;}import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0x4c0d37(0x1b6),'command':a26_0x4c0d37(0x201),'description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':a26_0x4c0d37(0x1d3),'flags':[{'name':a26_0x4c0d37(0x1b3),'type':a26_0x4c0d37(0x1fc),'required':!![],'enum':[a26_0x4c0d37(0x1c2),a26_0x4c0d37(0x1f6),'HOOK'],'description':'Script\x20type'},{'name':'name','type':a26_0x4c0d37(0x1fc),'required':!![],'description':a26_0x4c0d37(0x1eb)},{'name':'description','type':a26_0x4c0d37(0x1fc),'description':'Script\x20description'},{'name':a26_0x4c0d37(0x1cc),'type':a26_0x4c0d37(0x1fc),'description':a26_0x4c0d37(0x1f0)},{'name':a26_0x4c0d37(0x1fa),'type':a26_0x4c0d37(0x1fc),'description':a26_0x4c0d37(0x1db)},{'name':'operation-type','type':a26_0x4c0d37(0x1fc),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':a26_0x4c0d37(0x203),'type':a26_0x4c0d37(0x1fc),'description':a26_0x4c0d37(0x1c8),'enum':[a26_0x4c0d37(0x1d4),a26_0x4c0d37(0x1ed)]}],async 'validate'(_0x49d3dd){const _0x1d323a=a26_0x4c0d37,_0x5e97a0=_0x49d3dd[_0x1d323a(0x1d7)]('name');if(!isValidBffFunctionName(_0x5e97a0))throw CliErrors[_0x1d323a(0x1ce)]('Invalid\x20function\x20name\x20\x22'+_0x5e97a0+_0x1d323a(0x208));},async 'execute'(_0x2ca929){const _0x3f0616=a26_0x4c0d37,_0x18b9fd=loadBffProjectConfig(_0x2ca929[_0x3f0616(0x1bf)]),_0xce0d0f=_0x2ca929[_0x3f0616(0x1d7)]('type'),_0x41871f=_0x2ca929[_0x3f0616(0x1d7)](_0x3f0616(0x207)),_0x1db3b2=_0x2ca929[_0x3f0616(0x1d7)](_0x3f0616(0x1ea))||undefined,_0xf0462d=_0xce0d0f===_0x3f0616(0x1ec)?await resolveHookOptions(_0x18b9fd,_0x2ca929):undefined,_0x2dd11d=buildFilePath(_0x18b9fd,_0xce0d0f,_0x41871f,_0xf0462d);if(await fileExists(_0x2dd11d))throw CliErrors[_0x3f0616(0x1ce)](_0x3f0616(0x1fe)+_0x2dd11d);await mkdir(dirname(_0x2dd11d),{'recursive':!![]});const _0x12d0af=generateTemplate(_0xce0d0f,_0x41871f,_0x2ca929[_0x3f0616(0x1bf)],_0x1db3b2,_0xf0462d);await writeFile(_0x2dd11d,_0x12d0af,_0x3f0616(0x1b5));const _0x3464e0={'type':_0xce0d0f,'name':_0x41871f,'path':_0x2dd11d};if(_0x1db3b2)_0x3464e0[_0x3f0616(0x1ea)]=_0x1db3b2;if(_0xf0462d){if(_0xf0462d['alias'])_0x3464e0[_0x3f0616(0x1cc)]=_0xf0462d['alias'];_0x3464e0[_0x3f0616(0x1ff)]=_0xf0462d['datasetCode'],_0x3464e0[_0x3f0616(0x1e3)]=_0xf0462d[_0x3f0616(0x1e3)],_0x3464e0[_0x3f0616(0x1e2)]=_0xf0462d[_0x3f0616(0x1e2)];}return{'ok':!![],'data':_0x3464e0,'message':'Created\x20'+_0xce0d0f+_0x3f0616(0x1dd)+_0x41871f};}};async function resolveHookOptions(_0x5e4567,_0x320a82){const _0xa61721=a26_0x4c0d37,_0x1c5b99=loadAliasMap(_0x320a82['apiDir'],undefined,resolveApiFilePath(_0x320a82['apiDir'],_0x320a82[_0xa61721(0x1bf)])),_0x1ed002=_0x1c5b99['length']>0x0;let _0x2f72de,_0x33e01b,_0x4ebe6c;const _0x11dddc=_0x320a82[_0xa61721(0x1d7)](_0xa61721(0x1cc)),_0x81b304=_0x320a82['str'](_0xa61721(0x1fa));if(_0x11dddc){const _0x374a8a=resolveAlias(_0x320a82[_0xa61721(0x1e0)],_0x11dddc,undefined,resolveApiFilePath(_0x320a82[_0xa61721(0x1e0)],_0x320a82[_0xa61721(0x1bf)]));if(!_0x374a8a){const _0x15d75d=_0x1ed002?_0xa61721(0x1ba)+_0x1c5b99[_0xa61721(0x1c9)](_0x370a98=>_0x370a98[_0xa61721(0x1cc)])[_0xa61721(0x1f2)](',\x20'):_0xa61721(0x209)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0xa61721(0x1ce)](_0xa61721(0x1fd)+_0x11dddc+_0xa61721(0x1ee)+_0x15d75d);}_0x2f72de=_0x11dddc,_0x33e01b=_0x374a8a;}else{if(_0x81b304){_0x33e01b=_0x81b304;const _0xdb619f=_0x1c5b99['find'](_0x29aae3=>_0x29aae3[_0xa61721(0x1ff)]===_0x81b304);_0x2f72de=_0xdb619f?.['alias'];}else{if(_0x320a82[_0xa61721(0x206)])throw CliErrors[_0xa61721(0x1ce)](_0xa61721(0x1d5));else{if(_0x1ed002){const _0xf297ab=_0x1c5b99[_0xa61721(0x1c9)](_0x9ea551=>_0x9ea551[_0xa61721(0x1cc)]+'\x20('+_0x9ea551[_0xa61721(0x1bd)]+')'),_0x5111ac=await promptSelect(_0xa61721(0x1be),_0xf297ab),_0x5cce8c=_0x1c5b99[_0x5111ac];if(!_0x5cce8c)throw CliErrors[_0xa61721(0x1ce)](_0xa61721(0x1e5));_0x2f72de=_0x5cce8c['alias'],_0x33e01b=_0x5cce8c[_0xa61721(0x1ff)];}else{const _0x5a395b=await listDatasets(_0x320a82[_0xa61721(0x1bf)]);if(_0x5a395b[_0xa61721(0x1c6)]===0x0)throw CliErrors[_0xa61721(0x1ce)](_0xa61721(0x1e8));const _0x48f48c=_0x5a395b['map'](_0x14d55f=>_0x14d55f[_0xa61721(0x207)]+'\x20['+(_0x14d55f['source']??'UNKNOWN')+']\x20('+_0x14d55f['code']+')'),_0x448e94=await promptSelect('Select\x20dataset:',_0x48f48c),_0x29915e=_0x5a395b[_0x448e94];if(!_0x29915e)throw CliErrors[_0xa61721(0x1ce)](_0xa61721(0x1e5));_0x33e01b=_0x29915e[_0xa61721(0x205)],_0x2f72de=undefined;}}}}const _0x45b83e=await listDatasets(_0x320a82[_0xa61721(0x1bf)]),_0x33e12d=_0x45b83e[_0xa61721(0x1c3)](_0x5ee282=>_0x5ee282[_0xa61721(0x205)]===_0x33e01b);if(!_0x33e12d)throw CliErrors[_0xa61721(0x1ce)](_0xa61721(0x1b4)+_0x33e01b+_0xa61721(0x1cf)+(_0x2f72de?_0xa61721(0x1ef)+CLI_BIN_NAME+_0xa61721(0x1ca):''));_0x4ebe6c=_0x33e12d['id'];const _0x4f0117=_0x2f72de??_0x33e01b,_0x2db3d4=await listBffDatasetOperations(_0x320a82[_0xa61721(0x1bf)],_0x4ebe6c),_0x5c479b=_0x2db3d4?Object[_0xa61721(0x1e7)](_0x2db3d4):[];if(_0x5c479b[_0xa61721(0x1c6)]===0x0)throw CliErrors['validation'](_0xa61721(0x1de)+_0x4f0117+'.');let _0x51bc38;const _0x3e9bd2=_0x320a82[_0xa61721(0x1d7)](_0xa61721(0x1da));if(_0x3e9bd2){if(!_0x5c479b[_0xa61721(0x1df)](_0x3e9bd2))throw CliErrors[_0xa61721(0x1ce)](_0xa61721(0x1b0)+_0x3e9bd2+_0xa61721(0x1d9)+_0x4f0117+'.\x20'+(_0xa61721(0x1f1)+_0x5c479b['join'](',\x20')));_0x51bc38=_0x3e9bd2;}else{if(_0x320a82[_0xa61721(0x206)])throw CliErrors[_0xa61721(0x1ce)](_0xa61721(0x1f5));const _0x38eae=await promptSelect(_0xa61721(0x20a),_0x5c479b);_0x51bc38=_0x5c479b[_0x38eae]??_0x5c479b[0x0];}let _0x5c9608=normalizeHookFunctionNode(_0x320a82[_0xa61721(0x1d7)](_0xa61721(0x203)));if(!_0x5c9608){if(_0x320a82[_0xa61721(0x1d7)](_0xa61721(0x203)))throw CliErrors[_0xa61721(0x1ce)](_0xa61721(0x1c0));if(_0x320a82[_0xa61721(0x206)])throw CliErrors[_0xa61721(0x1ce)]('--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x172976=await promptSelect(_0xa61721(0x1d2),[_0xa61721(0x1d4),_0xa61721(0x1ed)]);_0x5c9608=[_0xa61721(0x1d4),_0xa61721(0x1ed)][_0x172976]??'before';}return{'alias':_0x2f72de,'datasetCode':_0x33e01b,'datasetId':_0x4ebe6c,'operationType':_0x51bc38,'functionNode':_0x5c9608};}async function promptSelect(_0x3c2f00,_0x77dec7){const _0x263998=a26_0x4c0d37;if(_0x77dec7['length']===0x1)return 0x0;for(const [_0x58afcf,_0x127510]of _0x77dec7[_0x263998(0x1b8)]()){process[_0x263998(0x20b)][_0x263998(0x1d3)]('\x20\x20'+(_0x58afcf+0x1)+'.\x20'+_0x127510+'\x0a');}const _0x2b14dc=createInterface({'input':process[_0x263998(0x1c5)],'output':process['stderr']});while(!![]){const _0x1c4f0f=await new Promise(_0x5c77bb=>{const _0x4621a2=_0x263998;_0x2b14dc[_0x4621a2(0x1cb)](_0x3c2f00+'\x20',_0x5c77bb);}),_0x2c64e1=Number[_0x263998(0x204)](_0x1c4f0f['trim'](),0xa);if(Number[_0x263998(0x1d1)](_0x2c64e1)&&_0x2c64e1>=0x1&&_0x2c64e1<=_0x77dec7[_0x263998(0x1c6)])return _0x2b14dc['close'](),_0x2c64e1-0x1;process[_0x263998(0x20b)][_0x263998(0x1d3)](_0x263998(0x1f8)+_0x77dec7[_0x263998(0x1c6)]+'.\x0a');}}function a26_0x4cbe(){const _0x1b2b8f=['datasetCode','1798511VAyDHh','create','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','function-node','parseInt','code','nonInteractive','name','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','No\x20api.ts\x20found.\x20Run\x20`','Select\x20operation\x20type:','stderr','Operation\x20type\x20\x22','trim','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','type','Dataset\x20not\x20found\x20for\x20code\x20\x22','utf8','bff','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','entries','TODO:\x20add\x20script\x20description','Available\x20aliases:\x20','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','3091907CWlPON','tableName','Select\x20dataset:','appCode','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','HOOK\x20requires\x20alias/operation/node\x20options.','COMMON','find','1998246BgbYnJ','stdin','length','.js','Trigger\x20node\x20(HOOK\x20only)','map','\x20api\x20pull`\x20to\x20refresh.','question','alias','2506865SBryQV','validation','\x22.\x20','60598TsXmjo','isInteger','Select\x20trigger\x20node:','write','before','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','10PPMSCa','str','scriptsRootDir','\x22\x20not\x20found\x20for\x20dataset\x20','operation-type','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','21286DhVumy','\x20function:\x20','No\x20operation\x20types\x20found\x20for\x20dataset\x20','includes','apiDir','\x0a\x20*\x20[脚本名称]\x20','functionNode','operationType','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Invalid\x20dataset\x20selection.','809478SKqezw','keys','No\x20datasets\x20found\x20for\x20this\x20app.','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','description','Function\x20name\x20(valid\x20JS\x20identifier)','HOOK','after','\x22\x20not\x20found.\x20','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','Available:\x20','join','39oDWKLO','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','ENDPOINT','8OZacrl','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','4poMdxU','datasetcode','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','string','Alias\x20\x22','File\x20already\x20exists:\x20'];a26_0x4cbe=function(){return _0x1b2b8f;};return a26_0x4cbe();}function buildFilePath(_0x3c9c2d,_0xf3f377,_0x2fc848,_0x43a066){const _0x25ef12=a26_0x4c0d37;if(_0xf3f377==='HOOK'){if(!_0x43a066)throw CliErrors[_0x25ef12(0x1ce)](_0x25ef12(0x1c1));const _0x2d4a65=_0x43a066[_0x25ef12(0x1cc)]??_0x43a066[_0x25ef12(0x1ff)];return join(_0x3c9c2d[_0x25ef12(0x1d8)],'HOOK',_0x2d4a65,_0x43a066[_0x25ef12(0x1e3)],_0x43a066[_0x25ef12(0x1e2)],_0x2fc848+_0x25ef12(0x1c7));}return join(_0x3c9c2d[_0x25ef12(0x1d8)],_0xf3f377,_0x2fc848+_0x25ef12(0x1c7));}export function generateTemplate(_0x5ee87c,_0x52dc5a,_0x5e82d3,_0x1980eb,_0x2fcd13){const _0x3ba30e=a26_0x4c0d37,_0xb1e32a=_0x1980eb?.[_0x3ba30e(0x1b1)]()||_0x3ba30e(0x1b9);if(_0x5ee87c===_0x3ba30e(0x1c2))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0xb1e32a+_0x3ba30e(0x1e1)+_0x52dc5a+_0x3ba30e(0x1e9)+_0x52dc5a+_0x3ba30e(0x1f4)+_0x52dc5a+_0x3ba30e(0x1b2);if(_0x5ee87c===_0x3ba30e(0x1f6))return _0x3ba30e(0x1e4)+_0xb1e32a+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/'+_0x5e82d3+'/'+_0x52dc5a+_0x3ba30e(0x1b7)+_0x52dc5a+_0x3ba30e(0x1b2);if(!_0x2fcd13)throw CliErrors['validation'](_0x3ba30e(0x1fb));return _0x3ba30e(0x1bb)+_0xb1e32a+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0x5e82d3+'/'+_0x2fcd13[_0x3ba30e(0x1ff)]+'/'+_0x2fcd13[_0x3ba30e(0x1e3)]+'\x0a\x20*\x20[触发节点]\x20'+_0x2fcd13[_0x3ba30e(0x1e2)]+_0x3ba30e(0x202)+_0x52dc5a+_0x3ba30e(0x1b2);}
@@ -1 +1 @@
1
- const a27_0x59ecb8=a27_0x1da1;(function(_0x391a0e,_0x2c6e49){const _0x37208f=a27_0x1da1,_0x41e891=_0x391a0e();while(!![]){try{const _0x56df5c=-parseInt(_0x37208f(0xa9))/0x1+-parseInt(_0x37208f(0xc0))/0x2*(parseInt(_0x37208f(0xb1))/0x3)+parseInt(_0x37208f(0x9b))/0x4+parseInt(_0x37208f(0xba))/0x5*(-parseInt(_0x37208f(0xae))/0x6)+parseInt(_0x37208f(0x95))/0x7*(parseInt(_0x37208f(0x9a))/0x8)+-parseInt(_0x37208f(0xbb))/0x9*(-parseInt(_0x37208f(0xc4))/0xa)+parseInt(_0x37208f(0xa7))/0xb;if(_0x56df5c===_0x2c6e49)break;else _0x41e891['push'](_0x41e891['shift']());}catch(_0x3e0c7f){_0x41e891['push'](_0x41e891['shift']());}}}(a27_0x3880,0xb0de7));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';function a27_0x1da1(_0x196f93,_0x42ed3a){_0x196f93=_0x196f93-0x90;const _0x3880ad=a27_0x3880();let _0x1da1ab=_0x3880ad[_0x196f93];return _0x1da1ab;}import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';function a27_0x3880(){const _0x1f02dd=['validation','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','2163kzBExQ','str','find','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','lockFilePath','19512RWdvDT','4131424HeoTxp','replace','\x22\x20not\x20found\x20after\x20ensureLockScope.','apps','keys','includes','scriptsRoot','functions','No\x20lock\x20entry\x20found\x20for\x20\x22','high-risk-write','lastSync','projectRoot','22408496lvRTRZ','BFF\x20lock\x20file\x20not\x20found.','852264aMhXFX','Deleted\x20','target','trashDir','Multiple\x20functions\x20match\x20\x22','1014942ImKnjz','length','Would\x20delete\x20','5667ZxsYQX','\x20\x20-\x20','filter','stringify','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','startsWith','bff','<timestamp>','delete','35sYtLmS','1601163BUlqjE','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','remoteId','appCode','map','1502dGGMkj','Function\x20not\x20found:\x20','POST','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','20xshNfU','toISOString','scriptsRootDir','trashedTo','split'];a27_0x3880=function(){return _0x1f02dd;};return a27_0x3880();}import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x59ecb8(0xb7),'command':a27_0x59ecb8(0xb9),'description':a27_0x59ecb8(0xbc),'risk':a27_0x59ecb8(0xa4),'flags':[{'name':a27_0x59ecb8(0xab),'type':'string','required':!![],'description':a27_0x59ecb8(0x98)}],async 'validate'(_0xd5906d){const _0x2aaf56=a27_0x59ecb8,_0x5b1aae=loadBffProjectConfig(_0xd5906d['appCode']),_0x221f9b=await readBffLockFile(_0x5b1aae[_0x2aaf56(0x99)]);if(!_0x221f9b)throw CliErrors[_0x2aaf56(0x93)](_0x2aaf56(0xb5));},async 'dryRun'(_0x157481){const _0x2332eb=a27_0x59ecb8,_0x55ed23=loadBffProjectConfig(_0x157481[_0x2332eb(0xbe)]),_0xcfe9c1=await readBffLockFile(_0x55ed23[_0x2332eb(0x99)]);if(!_0xcfe9c1)throw CliErrors[_0x2332eb(0x93)](_0x2332eb(0xa8));const {appLock:_0x6d66d6}=ensureLockScope(_0xcfe9c1,_0x157481[_0x2332eb(0xbe)],_0x55ed23[_0x2332eb(0xa1)],_0x2332eb(0xb9)),_0x367960=_0x157481[_0x2332eb(0x96)]('target'),_0x206d24=Object[_0x2332eb(0x9f)](_0x6d66d6['functions']),_0x4b4cb4=resolveDeleteTarget(_0x367960,_0x206d24),_0x36b0a6=_0x6d66d6[_0x2332eb(0xa2)][_0x4b4cb4];if(!_0x36b0a6)throw CliErrors[_0x2332eb(0x93)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x4b4cb4+'\x22.');const _0x176c2c=resolveLocalFilePathFromLockKey(_0x55ed23,_0x4b4cb4),_0x5d80ac=relative(_0x55ed23['projectRoot'],_0x176c2c),_0x3b7089=join(_0x55ed23['trashDir'],_0x2332eb(0xb8),_0x5d80ac);return{'method':_0x2332eb(0xc2),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x157481[_0x2332eb(0xbe)],'target':_0x4b4cb4,'remoteId':_0x36b0a6[_0x2332eb(0xbd)],'localFilePath':_0x176c2c,'trashedPath':_0x3b7089},'description':_0x2332eb(0xb0)+_0x4b4cb4+_0x2332eb(0xc3)};},async 'execute'(_0x6a1862){const _0x9a9d=a27_0x59ecb8,_0x3848d0=loadBffProjectConfig(_0x6a1862['appCode']),_0x5990b4=await readBffLockFile(_0x3848d0[_0x9a9d(0x99)]);if(!_0x5990b4)throw CliErrors[_0x9a9d(0x93)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x1ca026,appLock:_0x30e7a3}=ensureLockScope(_0x5990b4,_0x6a1862[_0x9a9d(0xbe)],_0x3848d0[_0x9a9d(0xa1)],_0x9a9d(0xb9)),_0xd42f48=JSON['parse'](JSON[_0x9a9d(0xb4)](_0x1ca026)),_0xec9186=_0xd42f48[_0x9a9d(0x9e)][_0x6a1862[_0x9a9d(0xbe)]];if(!_0xec9186)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x6a1862[_0x9a9d(0xbe)]+_0x9a9d(0x9d));const _0x5c6557=_0x6a1862[_0x9a9d(0x96)](_0x9a9d(0xab)),_0x155905=Object[_0x9a9d(0x9f)](_0xec9186[_0x9a9d(0xa2)]),_0x542eee=resolveDeleteTarget(_0x5c6557,_0x155905),_0x50bf9f=_0xec9186[_0x9a9d(0xa2)][_0x542eee];if(!_0x50bf9f)throw CliErrors[_0x9a9d(0x93)](_0x9a9d(0xa3)+_0x542eee+'\x22.');await deleteBffScript(_0x50bf9f[_0x9a9d(0xbd)]),delete _0xec9186[_0x9a9d(0xa2)][_0x542eee],_0xec9186[_0x9a9d(0xa5)]=new Date()[_0x9a9d(0xc5)](),await writeBffLockFile(_0x3848d0['lockFilePath'],_0xd42f48);const _0x20737b=resolveLocalFilePathFromLockKey(_0x3848d0,_0x542eee);let _0x33c0c0;await fileExists(_0x20737b)&&(_0x33c0c0=await moveToTrash(_0x3848d0[_0x9a9d(0xa6)],_0x3848d0[_0x9a9d(0xac)],_0x20737b),await cleanupEmptyDirectories(dirname(_0x20737b),_0x3848d0[_0x9a9d(0x90)]));await waitForDeleteSettlement(_0x3848d0['lockFilePath'],_0x6a1862[_0x9a9d(0xbe)],_0x542eee,_0x20737b),await sleep(0x96);const _0x2ed76c={'deleted':_0x542eee,'remoteId':_0x50bf9f[_0x9a9d(0xbd)]};if(_0x33c0c0)_0x2ed76c[_0x9a9d(0x91)]=_0x33c0c0;return{'ok':!![],'data':_0x2ed76c,'message':_0x9a9d(0xaa)+_0x542eee+(_0x33c0c0?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function resolveDeleteTarget(_0x24ba68,_0x57cc6a){const _0x3482b1=a27_0x59ecb8;if(_0x24ba68[_0x3482b1(0xa0)]('/')){const _0x32ffe9=_0x57cc6a[_0x3482b1(0x97)](_0x112950=>_0x112950===_0x24ba68);if(!_0x32ffe9)throw CliErrors[_0x3482b1(0x93)](_0x3482b1(0xc1)+_0x24ba68);return _0x32ffe9;}const _0x435d45=_0x57cc6a[_0x3482b1(0xb3)](_0x1edeaa=>_0x1edeaa[_0x3482b1(0x92)]('/')['at'](-0x1)===_0x24ba68);if(_0x435d45[_0x3482b1(0xaf)]===0x0)throw CliErrors['validation'](_0x3482b1(0xc1)+_0x24ba68);if(_0x435d45[_0x3482b1(0xaf)]>0x1)throw CliErrors[_0x3482b1(0x93)](_0x3482b1(0xad)+_0x24ba68+_0x3482b1(0x94)+_0x435d45[_0x3482b1(0xbf)](_0x216cc7=>_0x3482b1(0xb2)+_0x216cc7)['join']('\x0a'));return _0x435d45[0x0];}async function moveToTrash(_0xa90859,_0x461941,_0x162ca2){const _0xd64d26=a27_0x59ecb8,_0x4c8512=new Date()[_0xd64d26(0xc5)]()[_0xd64d26(0x9c)](/[:.]/g,'-'),_0x51c92d=relative(_0xa90859,_0x162ca2),_0x2f4749=join(_0x461941,_0x4c8512,_0x51c92d);return await mkdir(dirname(_0x2f4749),{'recursive':!![]}),await rename(_0x162ca2,_0x2f4749),_0x2f4749;}async function cleanupEmptyDirectories(_0x6315f4,_0x171c17){const _0x76bfb6=a27_0x59ecb8;let _0x38a874=resolve(_0x6315f4);const _0x4c011d=resolve(_0x171c17);while(_0x38a874[_0x76bfb6(0xb6)](''+_0x4c011d+sep)||_0x38a874===_0x4c011d){if(_0x38a874===_0x4c011d)return;try{const _0x1cec08=await readdir(_0x38a874);if(_0x1cec08[_0x76bfb6(0xaf)]>0x0)return;await rmdir(_0x38a874);}catch{return;}_0x38a874=dirname(_0x38a874);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x3986b5,_0x4e0ffa,_0x162663,_0x433eeb){const _0xe77ff2=a27_0x59ecb8;for(let _0x2b1b93=0x0;_0x2b1b93<DELETE_SETTLE_RETRY_COUNT;_0x2b1b93+=0x1){const _0x359193=await readBffLockFile(_0x3986b5),_0x44600c=!!_0x359193?.[_0xe77ff2(0x9e)]?.[_0x4e0ffa]?.[_0xe77ff2(0xa2)]?.[_0x162663],_0x5afc25=await fileExists(_0x433eeb);if(!_0x44600c&&!_0x5afc25)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error('Local\x20delete\x20not\x20settled\x20for\x20'+_0x162663+'.');}
1
+ const a27_0x7cb1b7=a27_0x23f7;(function(_0x13e5a4,_0x8bce95){const _0x48985d=a27_0x23f7,_0x11d3e7=_0x13e5a4();while(!![]){try{const _0x566f4a=parseInt(_0x48985d(0x115))/0x1*(parseInt(_0x48985d(0x102))/0x2)+-parseInt(_0x48985d(0x129))/0x3+-parseInt(_0x48985d(0x113))/0x4+-parseInt(_0x48985d(0x135))/0x5*(-parseInt(_0x48985d(0x116))/0x6)+-parseInt(_0x48985d(0x11d))/0x7+-parseInt(_0x48985d(0x112))/0x8+parseInt(_0x48985d(0x12e))/0x9;if(_0x566f4a===_0x8bce95)break;else _0x11d3e7['push'](_0x11d3e7['shift']());}catch(_0x3e18a2){_0x11d3e7['push'](_0x11d3e7['shift']());}}}(a27_0x36df,0xdf5f7));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';function a27_0x36df(){const _0x326083=['delete','apps','parse','validation','3990999EmaJnR','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','high-risk-write','remoteId','trashDir','32648508xTBEHG','No\x20lock\x20entry\x20found\x20for\x20\x22','join','startsWith','\x22\x20not\x20found\x20after\x20ensureLockScope.','length','bff','655LuybqT','str','<timestamp>','794zBnkta','BFF\x20lock\x20file\x20not\x20found.','includes','string','functions','\x20(local\x20file\x20moved\x20to\x20trash)','scriptsRoot','toISOString','Would\x20delete\x20','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','Local\x20delete\x20not\x20settled\x20for\x20','stringify','map','replace','lastSync','target','11553720ucYbPc','4391144oFTnYr','lockFilePath','3989PRYxaU','16638NDfoJG','appCode','\x20\x20-\x20','split','keys','Lock\x20scope\x20for\x20app\x20\x22','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','5510673QUUSwG','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','Function\x20not\x20found:\x20','POST','Deleted\x20','scriptsRootDir','projectRoot','find'];a27_0x36df=function(){return _0x326083;};return a27_0x36df();}function a27_0x23f7(_0x5489bb,_0x2ec79a){_0x5489bb=_0x5489bb-0x102;const _0x36dff6=a27_0x36df();let _0x23f749=_0x36dff6[_0x5489bb];return _0x23f749;}import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x7cb1b7(0x134),'command':a27_0x7cb1b7(0x125),'description':a27_0x7cb1b7(0x11c),'risk':a27_0x7cb1b7(0x12b),'flags':[{'name':a27_0x7cb1b7(0x111),'type':a27_0x7cb1b7(0x105),'required':!![],'description':a27_0x7cb1b7(0x10b)}],async 'validate'(_0x3fe2b2){const _0x41c6c1=a27_0x7cb1b7,_0xadf84c=loadBffProjectConfig(_0x3fe2b2[_0x41c6c1(0x117)]),_0x134845=await readBffLockFile(_0xadf84c[_0x41c6c1(0x114)]);if(!_0x134845)throw CliErrors['validation'](_0x41c6c1(0x11e));},async 'dryRun'(_0x5c1708){const _0x4f925a=a27_0x7cb1b7,_0x7f6323=loadBffProjectConfig(_0x5c1708[_0x4f925a(0x117)]),_0x2784ab=await readBffLockFile(_0x7f6323[_0x4f925a(0x114)]);if(!_0x2784ab)throw CliErrors[_0x4f925a(0x128)](_0x4f925a(0x103));const {appLock:_0x180fcf}=ensureLockScope(_0x2784ab,_0x5c1708[_0x4f925a(0x117)],_0x7f6323['scriptsRoot'],'delete'),_0x5a187c=_0x5c1708[_0x4f925a(0x136)](_0x4f925a(0x111)),_0x231ed4=Object[_0x4f925a(0x11a)](_0x180fcf[_0x4f925a(0x106)]),_0xe3a202=resolveDeleteTarget(_0x5a187c,_0x231ed4),_0x3af258=_0x180fcf[_0x4f925a(0x106)][_0xe3a202];if(!_0x3af258)throw CliErrors[_0x4f925a(0x128)](_0x4f925a(0x12f)+_0xe3a202+'\x22.');const _0x3bb44d=resolveLocalFilePathFromLockKey(_0x7f6323,_0xe3a202),_0x5d4779=relative(_0x7f6323[_0x4f925a(0x123)],_0x3bb44d),_0x1e03a8=join(_0x7f6323['trashDir'],_0x4f925a(0x137),_0x5d4779);return{'method':_0x4f925a(0x120),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x5c1708['appCode'],'target':_0xe3a202,'remoteId':_0x3af258[_0x4f925a(0x12c)],'localFilePath':_0x3bb44d,'trashedPath':_0x1e03a8},'description':_0x4f925a(0x10a)+_0xe3a202+_0x4f925a(0x12a)};},async 'execute'(_0x4d2f89){const _0x2b9ef4=a27_0x7cb1b7,_0x1696cb=loadBffProjectConfig(_0x4d2f89['appCode']),_0x180400=await readBffLockFile(_0x1696cb['lockFilePath']);if(!_0x180400)throw CliErrors['validation'](_0x2b9ef4(0x103));const {lockData:_0x25666c,appLock:_0x1f6a65}=ensureLockScope(_0x180400,_0x4d2f89[_0x2b9ef4(0x117)],_0x1696cb[_0x2b9ef4(0x108)],_0x2b9ef4(0x125)),_0x5368ba=JSON[_0x2b9ef4(0x127)](JSON[_0x2b9ef4(0x10d)](_0x25666c)),_0x26961b=_0x5368ba[_0x2b9ef4(0x126)][_0x4d2f89['appCode']];if(!_0x26961b)throw new Error(_0x2b9ef4(0x11b)+_0x4d2f89[_0x2b9ef4(0x117)]+_0x2b9ef4(0x132));const _0x306659=_0x4d2f89['str'](_0x2b9ef4(0x111)),_0x461f4b=Object[_0x2b9ef4(0x11a)](_0x26961b[_0x2b9ef4(0x106)]),_0x734b03=resolveDeleteTarget(_0x306659,_0x461f4b),_0x6b0c7d=_0x26961b[_0x2b9ef4(0x106)][_0x734b03];if(!_0x6b0c7d)throw CliErrors[_0x2b9ef4(0x128)](_0x2b9ef4(0x12f)+_0x734b03+'\x22.');await deleteBffScript(_0x6b0c7d['remoteId']),delete _0x26961b[_0x2b9ef4(0x106)][_0x734b03],_0x26961b[_0x2b9ef4(0x110)]=new Date()[_0x2b9ef4(0x109)](),await writeBffLockFile(_0x1696cb[_0x2b9ef4(0x114)],_0x5368ba);const _0x5d61d1=resolveLocalFilePathFromLockKey(_0x1696cb,_0x734b03);let _0xdab91a;await fileExists(_0x5d61d1)&&(_0xdab91a=await moveToTrash(_0x1696cb[_0x2b9ef4(0x123)],_0x1696cb[_0x2b9ef4(0x12d)],_0x5d61d1),await cleanupEmptyDirectories(dirname(_0x5d61d1),_0x1696cb[_0x2b9ef4(0x122)]));await waitForDeleteSettlement(_0x1696cb[_0x2b9ef4(0x114)],_0x4d2f89[_0x2b9ef4(0x117)],_0x734b03,_0x5d61d1),await sleep(0x96);const _0x29b9d9={'deleted':_0x734b03,'remoteId':_0x6b0c7d[_0x2b9ef4(0x12c)]};if(_0xdab91a)_0x29b9d9['trashedTo']=_0xdab91a;return{'ok':!![],'data':_0x29b9d9,'message':_0x2b9ef4(0x121)+_0x734b03+(_0xdab91a?_0x2b9ef4(0x107):'')};}};function resolveDeleteTarget(_0xc075b1,_0x17890e){const _0x1780de=a27_0x7cb1b7;if(_0xc075b1[_0x1780de(0x104)]('/')){const _0x5aa062=_0x17890e[_0x1780de(0x124)](_0x37ed0b=>_0x37ed0b===_0xc075b1);if(!_0x5aa062)throw CliErrors[_0x1780de(0x128)](_0x1780de(0x11f)+_0xc075b1);return _0x5aa062;}const _0x1f7033=_0x17890e['filter'](_0x10d157=>_0x10d157[_0x1780de(0x119)]('/')['at'](-0x1)===_0xc075b1);if(_0x1f7033[_0x1780de(0x133)]===0x0)throw CliErrors['validation'](_0x1780de(0x11f)+_0xc075b1);if(_0x1f7033['length']>0x1)throw CliErrors[_0x1780de(0x128)]('Multiple\x20functions\x20match\x20\x22'+_0xc075b1+'\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'+_0x1f7033[_0x1780de(0x10e)](_0x1f5665=>_0x1780de(0x118)+_0x1f5665)[_0x1780de(0x130)]('\x0a'));return _0x1f7033[0x0];}async function moveToTrash(_0x112d8e,_0x10b185,_0x1b77da){const _0x157f52=a27_0x7cb1b7,_0x395708=new Date()[_0x157f52(0x109)]()[_0x157f52(0x10f)](/[:.]/g,'-'),_0x4243cd=relative(_0x112d8e,_0x1b77da),_0xe3b4d7=join(_0x10b185,_0x395708,_0x4243cd);return await mkdir(dirname(_0xe3b4d7),{'recursive':!![]}),await rename(_0x1b77da,_0xe3b4d7),_0xe3b4d7;}async function cleanupEmptyDirectories(_0x968829,_0x2da471){const _0x279d65=a27_0x7cb1b7;let _0x20daa8=resolve(_0x968829);const _0x5577b1=resolve(_0x2da471);while(_0x20daa8[_0x279d65(0x131)](''+_0x5577b1+sep)||_0x20daa8===_0x5577b1){if(_0x20daa8===_0x5577b1)return;try{const _0x262d5c=await readdir(_0x20daa8);if(_0x262d5c[_0x279d65(0x133)]>0x0)return;await rmdir(_0x20daa8);}catch{return;}_0x20daa8=dirname(_0x20daa8);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x5d0c96,_0x217113,_0x38cc6b,_0x34bf6d){const _0x24b7c8=a27_0x7cb1b7;for(let _0x893f86=0x0;_0x893f86<DELETE_SETTLE_RETRY_COUNT;_0x893f86+=0x1){const _0x36989b=await readBffLockFile(_0x5d0c96),_0x5b75cf=!!_0x36989b?.[_0x24b7c8(0x126)]?.[_0x217113]?.[_0x24b7c8(0x106)]?.[_0x38cc6b],_0x4d556a=await fileExists(_0x34bf6d);if(!_0x5b75cf&&!_0x4d556a)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x24b7c8(0x10c)+_0x38cc6b+'.');}
@@ -1 +1 @@
1
- const a28_0x252288=a28_0x4cca;function a28_0x4cca(_0x1f0cfa,_0x3a46d9){_0x1f0cfa=_0x1f0cfa-0x10f;const _0x57bb1c=a28_0x57bb();let _0x4ccab1=_0x57bb1c[_0x1f0cfa];return _0x4ccab1;}function a28_0x57bb(){const _0x34def7=['182120goCKsl','bool','read','Return\x20full\x20raw\x20script\x20object','scriptType','detail','57QmWzNj','156lxoCxx','description','2279774MsjRPO','number','Script\x20ID','1370HBRlyF','appCode','88iiGkNR','253521ZcfbGK','(none)','9582LtsIfd','437870KhDINs','updatedTime','num','44oRUjPY','verbose','Get\x20BFF\x20script\x20details\x20by\x20ID','2101770IiEDav'];a28_0x57bb=function(){return _0x34def7;};return a28_0x57bb();}(function(_0x2acbd1,_0xae5ae9){const _0x38fd8c=a28_0x4cca,_0x388dcb=_0x2acbd1();while(!![]){try{const _0x514ddc=parseInt(_0x38fd8c(0x127))/0x1*(-parseInt(_0x38fd8c(0x114))/0x2)+parseInt(_0x38fd8c(0x119))/0x3*(-parseInt(_0x38fd8c(0x10f))/0x4)+parseInt(_0x38fd8c(0x11a))/0x5+parseInt(_0x38fd8c(0x120))/0x6+-parseInt(_0x38fd8c(0x111))/0x7+-parseInt(_0x38fd8c(0x116))/0x8*(-parseInt(_0x38fd8c(0x117))/0x9)+-parseInt(_0x38fd8c(0x121))/0xa*(parseInt(_0x38fd8c(0x11d))/0xb);if(_0x514ddc===_0xae5ae9)break;else _0x388dcb['push'](_0x388dcb['shift']());}catch(_0xfab078){_0x388dcb['push'](_0x388dcb['shift']());}}}(a28_0x57bb,0x2d4f3));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':'bff','command':a28_0x252288(0x126),'description':a28_0x252288(0x11f),'risk':a28_0x252288(0x123),'flags':[{'name':'id','type':a28_0x252288(0x112),'required':!![],'description':a28_0x252288(0x113)},{'name':'verbose','type':'boolean','description':a28_0x252288(0x124)}],async 'execute'(_0x486c9b){const _0x1d4966=a28_0x252288,_0x2bedc4=await getBffScriptInfo(_0x486c9b[_0x1d4966(0x11c)]('id')),_0xb3ab75=_0x486c9b[_0x1d4966(0x122)](_0x1d4966(0x11e));if(_0xb3ab75)return{'ok':!![],'data':_0x2bedc4};return{'ok':!![],'data':{'id':_0x2bedc4['id'],'appCode':_0x2bedc4[_0x1d4966(0x115)],'scriptType':_0x2bedc4[_0x1d4966(0x125)],'description':_0x2bedc4[_0x1d4966(0x110)]||_0x1d4966(0x118),'createdTime':_0x2bedc4['createdTime']??'','updatedTime':_0x2bedc4[_0x1d4966(0x11b)]??'','scriptContent':_0x2bedc4['scriptContent']??''}};}};
1
+ const a28_0xfc128f=a28_0x4a8e;(function(_0x5034d0,_0x532aef){const _0x5c0757=a28_0x4a8e,_0x15253e=_0x5034d0();while(!![]){try{const _0x2fd1c4=parseInt(_0x5c0757(0x132))/0x1+parseInt(_0x5c0757(0x136))/0x2+-parseInt(_0x5c0757(0x128))/0x3+-parseInt(_0x5c0757(0x12c))/0x4*(parseInt(_0x5c0757(0x138))/0x5)+-parseInt(_0x5c0757(0x139))/0x6+parseInt(_0x5c0757(0x13c))/0x7*(-parseInt(_0x5c0757(0x127))/0x8)+parseInt(_0x5c0757(0x135))/0x9;if(_0x2fd1c4===_0x532aef)break;else _0x15253e['push'](_0x15253e['shift']());}catch(_0x3cfbe3){_0x15253e['push'](_0x15253e['shift']());}}}(a28_0x4e84,0x66d20));function a28_0x4a8e(_0xca2a0a,_0x5813ae){_0xca2a0a=_0xca2a0a-0x127;const _0x4e84a3=a28_0x4e84();let _0x4a8ea0=_0x4e84a3[_0xca2a0a];return _0x4a8ea0;}import{getBffScriptInfo}from'../../core/api-client.js';function a28_0x4e84(){const _0x347d3e=['431370MQXdyL','detail','createdTime','7571313iUFhuB','1648790WbLKZU','Script\x20ID','115VFppOd','3098694kQjLuT','Get\x20BFF\x20script\x20details\x20by\x20ID','scriptType','28QCdXIm','1331720QOEnTM','636054KNeYmK','(none)','num','verbose','48964mzSrVN','number','bff','Return\x20full\x20raw\x20script\x20object','read','bool'];a28_0x4e84=function(){return _0x347d3e;};return a28_0x4e84();}export const bffDetail={'service':a28_0xfc128f(0x12e),'command':a28_0xfc128f(0x133),'description':a28_0xfc128f(0x13a),'risk':a28_0xfc128f(0x130),'flags':[{'name':'id','type':a28_0xfc128f(0x12d),'required':!![],'description':a28_0xfc128f(0x137)},{'name':a28_0xfc128f(0x12b),'type':'boolean','description':a28_0xfc128f(0x12f)}],async 'execute'(_0x29dad7){const _0x4ffb61=a28_0xfc128f,_0x547432=await getBffScriptInfo(_0x29dad7[_0x4ffb61(0x12a)]('id')),_0x5b3da=_0x29dad7[_0x4ffb61(0x131)](_0x4ffb61(0x12b));if(_0x5b3da)return{'ok':!![],'data':_0x547432};return{'ok':!![],'data':{'id':_0x547432['id'],'appCode':_0x547432['appCode'],'scriptType':_0x547432[_0x4ffb61(0x13b)],'description':_0x547432['description']||_0x4ffb61(0x129),'createdTime':_0x547432[_0x4ffb61(0x134)]??'','updatedTime':_0x547432['updatedTime']??'','scriptContent':_0x547432['scriptContent']??''}};}};
@@ -1 +1 @@
1
- (function(_0x5086a5,_0x2e5387){const _0x3e926f=a29_0x4ef3,_0x3b6a45=_0x5086a5();while(!![]){try{const _0x4e56d3=-parseInt(_0x3e926f(0xdb))/0x1*(-parseInt(_0x3e926f(0xdf))/0x2)+parseInt(_0x3e926f(0xe0))/0x3*(-parseInt(_0x3e926f(0xe1))/0x4)+parseInt(_0x3e926f(0xd6))/0x5+parseInt(_0x3e926f(0xd8))/0x6*(parseInt(_0x3e926f(0xdc))/0x7)+-parseInt(_0x3e926f(0xdd))/0x8*(parseInt(_0x3e926f(0xd7))/0x9)+-parseInt(_0x3e926f(0xda))/0xa*(-parseInt(_0x3e926f(0xd9))/0xb)+-parseInt(_0x3e926f(0xde))/0xc;if(_0x4e56d3===_0x2e5387)break;else _0x3b6a45['push'](_0x3b6a45['shift']());}catch(_0x30b1fd){_0x3b6a45['push'](_0x3b6a45['shift']());}}}(a29_0x36ce,0xf0d61));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';function a29_0x36ce(){const _0x2915f6=['8349350yPvGdo','1242mcERfW','6cHKpXr','136939WZEFmb','140sXJYbx','344eadoUe','10008439SaMxxo','41504ZyZIPx','1497396BnALkO','652Zfrflv','6729EpooSb','2780YZGXOT'];a29_0x36ce=function(){return _0x2915f6;};return a29_0x36ce();}import{bffCreate}from'../../commands/bff/create.js';function a29_0x4ef3(_0x4cf078,_0x56566f){_0x4cf078=_0x4cf078-0xd6;const _0x36cea6=a29_0x36ce();let _0x4ef308=_0x36cea6[_0x4cf078];return _0x4ef308;}import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x5618f7,_0x56ad12){const _0xc5456d=a29_0x17ec,_0x47e177=_0x5618f7();while(!![]){try{const _0x38e9e6=parseInt(_0xc5456d(0xed))/0x1+-parseInt(_0xc5456d(0xea))/0x2*(parseInt(_0xc5456d(0xf0))/0x3)+parseInt(_0xc5456d(0xec))/0x4*(-parseInt(_0xc5456d(0xeb))/0x5)+parseInt(_0xc5456d(0xf2))/0x6*(-parseInt(_0xc5456d(0xf1))/0x7)+-parseInt(_0xc5456d(0xee))/0x8*(parseInt(_0xc5456d(0xe8))/0x9)+parseInt(_0xc5456d(0xe7))/0xa+-parseInt(_0xc5456d(0xef))/0xb*(parseInt(_0xc5456d(0xe9))/0xc);if(_0x38e9e6===_0x56ad12)break;else _0x47e177['push'](_0x47e177['shift']());}catch(_0x310bc0){_0x47e177['push'](_0x47e177['shift']());}}}(a29_0x25aa,0xe256d));function a29_0x25aa(){const _0x41621d=['105669ewmyLe','12cSDptB','2SFrTyy','8415yAjraG','132UjaQGy','1793566FxUIVL','32Tqujgg','10766569JnitdX','1610556RgimfX','4438QohGYt','7662akhTYE','15612710gVXxjc'];a29_0x25aa=function(){return _0x41621d;};return a29_0x25aa();}import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';function a29_0x17ec(_0x172a02,_0x2d75e7){_0x172a02=_0x172a02-0xe7;const _0x25aadf=a29_0x25aa();let _0x17ecba=_0x25aadf[_0x172a02];return _0x17ecba;}import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- const a30_0x307bfa=a30_0x3016;(function(_0x2973dc,_0x2474a6){const _0x5ee64b=a30_0x3016,_0x2dae25=_0x2973dc();while(!![]){try{const _0x3f8cbe=-parseInt(_0x5ee64b(0x15c))/0x1+-parseInt(_0x5ee64b(0x169))/0x2*(-parseInt(_0x5ee64b(0x158))/0x3)+-parseInt(_0x5ee64b(0x16c))/0x4+parseInt(_0x5ee64b(0x170))/0x5+parseInt(_0x5ee64b(0x168))/0x6+-parseInt(_0x5ee64b(0x166))/0x7+parseInt(_0x5ee64b(0x16a))/0x8;if(_0x3f8cbe===_0x2474a6)break;else _0x2dae25['push'](_0x2dae25['shift']());}catch(_0x492559){_0x2dae25['push'](_0x2dae25['shift']());}}}(a30_0x2716,0xdb926));import{listBffScripts}from'../../core/api-client.js';function a30_0x2716(){const _0x1a44d7=['verbose','4081230etcZHK','length','read','No\x20BFF\x20scripts\x20found.','3393573YvjSpJ','name','functionName','bool','824089EvfcAb','type','list','boolean','description','str','ENDPOINT','appCode','Return\x20full\x20script\x20objects','map','8150975VWgTKv','bff','9649380EYRwTR','2AjqgcC','3282960pyitOZ','string','4312628SBEGQn','COMMON','(unnamed)'];a30_0x2716=function(){return _0x1a44d7;};return a30_0x2716();}function a30_0x3016(_0x4c886f,_0x17ad4c){_0x4c886f=_0x4c886f-0x155;const _0x271690=a30_0x2716();let _0x30161b=_0x271690[_0x4c886f];return _0x30161b;}export const bffList={'service':a30_0x307bfa(0x167),'command':a30_0x307bfa(0x15e),'description':'List\x20BFF\x20scripts','risk':a30_0x307bfa(0x156),'flags':[{'name':a30_0x307bfa(0x15d),'type':a30_0x307bfa(0x16b),'description':'Script\x20type\x20filter','default':a30_0x307bfa(0x162),'enum':['ENDPOINT',a30_0x307bfa(0x16d)]},{'name':a30_0x307bfa(0x159),'type':a30_0x307bfa(0x16b),'description':'Filter\x20by\x20script\x20name'},{'name':'verbose','type':a30_0x307bfa(0x15f),'description':a30_0x307bfa(0x164)}],async 'execute'(_0x224d8c){const _0x20f3b3=a30_0x307bfa,_0x160a70=await listBffScripts(_0x224d8c[_0x20f3b3(0x163)],_0x224d8c[_0x20f3b3(0x161)](_0x20f3b3(0x15d)),{'scriptName':_0x224d8c[_0x20f3b3(0x161)](_0x20f3b3(0x159))||undefined}),_0x33a739=_0x224d8c[_0x20f3b3(0x15b)](_0x20f3b3(0x16f));return{'ok':!![],'data':_0x33a739?_0x160a70:_0x160a70[_0x20f3b3(0x165)](_0x11dc7f=>({'id':_0x11dc7f['id'],'functionName':_0x11dc7f[_0x20f3b3(0x15a)]??'','description':_0x11dc7f[_0x20f3b3(0x160)]||_0x20f3b3(0x16e),'scriptType':_0x11dc7f['scriptType']})),'message':_0x160a70[_0x20f3b3(0x155)]===0x0?_0x20f3b3(0x157):undefined};}};
1
+ const a30_0x14bd30=a30_0x2207;(function(_0x392cb5,_0x526f5a){const _0x50b168=a30_0x2207,_0x359562=_0x392cb5();while(!![]){try{const _0xaa895b=-parseInt(_0x50b168(0x12c))/0x1*(parseInt(_0x50b168(0x130))/0x2)+parseInt(_0x50b168(0x13e))/0x3+-parseInt(_0x50b168(0x143))/0x4*(-parseInt(_0x50b168(0x142))/0x5)+-parseInt(_0x50b168(0x140))/0x6+-parseInt(_0x50b168(0x12d))/0x7*(-parseInt(_0x50b168(0x136))/0x8)+-parseInt(_0x50b168(0x129))/0x9+-parseInt(_0x50b168(0x127))/0xa*(-parseInt(_0x50b168(0x135))/0xb);if(_0xaa895b===_0x526f5a)break;else _0x359562['push'](_0x359562['shift']());}catch(_0x2424c0){_0x359562['push'](_0x359562['shift']());}}}(a30_0x408d,0x35b5a));import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x14bd30(0x13b),'command':a30_0x14bd30(0x141),'description':a30_0x14bd30(0x128),'risk':a30_0x14bd30(0x134),'flags':[{'name':'type','type':a30_0x14bd30(0x13a),'description':a30_0x14bd30(0x12a),'default':a30_0x14bd30(0x12b),'enum':[a30_0x14bd30(0x12b),a30_0x14bd30(0x13f)]},{'name':a30_0x14bd30(0x12e),'type':a30_0x14bd30(0x13a),'description':a30_0x14bd30(0x126)},{'name':a30_0x14bd30(0x13d),'type':a30_0x14bd30(0x144),'description':a30_0x14bd30(0x132)}],async 'execute'(_0x54b7a1){const _0x3ebb9b=a30_0x14bd30,_0x46e293=await listBffScripts(_0x54b7a1[_0x3ebb9b(0x133)],_0x54b7a1[_0x3ebb9b(0x138)]('type'),{'scriptName':_0x54b7a1[_0x3ebb9b(0x138)](_0x3ebb9b(0x12e))||undefined}),_0x3a8ac4=_0x54b7a1[_0x3ebb9b(0x139)](_0x3ebb9b(0x13d));return{'ok':!![],'data':_0x3a8ac4?_0x46e293:_0x46e293['map'](_0x8873c2=>({'id':_0x8873c2['id'],'functionName':_0x8873c2[_0x3ebb9b(0x131)]??'','description':_0x8873c2['description']||_0x3ebb9b(0x12f),'scriptType':_0x8873c2[_0x3ebb9b(0x145)]})),'message':_0x46e293[_0x3ebb9b(0x13c)]===0x0?_0x3ebb9b(0x137):undefined};}};function a30_0x2207(_0x4c4da4,_0xbdff8e){_0x4c4da4=_0x4c4da4-0x126;const _0x408d87=a30_0x408d();let _0x2207d4=_0x408d87[_0x4c4da4];return _0x2207d4;}function a30_0x408d(){const _0x5aa761=['bool','string','bff','length','verbose','277824EEQMQx','COMMON','1210368WWlyzf','list','1580uNKaYO','3820Hcxlnj','boolean','scriptType','Filter\x20by\x20script\x20name','35540OerKYM','List\x20BFF\x20scripts','928251okzivl','Script\x20type\x20filter','ENDPOINT','1sYRUVq','14BZiwpv','name','(unnamed)','193582ycrIsR','functionName','Return\x20full\x20script\x20objects','appCode','read','286dbDmiW','539440gsLoWZ','No\x20BFF\x20scripts\x20found.','str'];a30_0x408d=function(){return _0x5aa761;};return a30_0x408d();}
@@ -1 +1 @@
1
- const a31_0xab518=a31_0x4163;function a31_0x4163(_0x440c26,_0xceae91){_0x440c26=_0x440c26-0x14e;const _0x3c4875=a31_0x3c48();let _0x4163f3=_0x3c4875[_0x440c26];return _0x4163f3;}(function(_0x3f5ea5,_0x3d9377){const _0x392097=a31_0x4163,_0x1163fe=_0x3f5ea5();while(!![]){try{const _0x3a578a=-parseInt(_0x392097(0x175))/0x1*(-parseInt(_0x392097(0x197))/0x2)+-parseInt(_0x392097(0x199))/0x3*(parseInt(_0x392097(0x191))/0x4)+parseInt(_0x392097(0x160))/0x5+parseInt(_0x392097(0x159))/0x6*(-parseInt(_0x392097(0x16d))/0x7)+parseInt(_0x392097(0x19a))/0x8*(parseInt(_0x392097(0x18f))/0x9)+parseInt(_0x392097(0x14f))/0xa+-parseInt(_0x392097(0x15c))/0xb*(parseInt(_0x392097(0x173))/0xc);if(_0x3a578a===_0x3d9377)break;else _0x1163fe['push'](_0x1163fe['shift']());}catch(_0x3d8d6c){_0x1163fe['push'](_0x1163fe['shift']());}}}(a31_0x3c48,0x1b340));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':a31_0xab518(0x174),'command':a31_0xab518(0x18d),'description':a31_0xab518(0x16c),'risk':a31_0xab518(0x19d),'flags':[{'name':'type','type':a31_0xab518(0x156),'description':a31_0xab518(0x186),'enum':[a31_0xab518(0x18e),a31_0xab518(0x164),a31_0xab518(0x168)]},{'name':a31_0xab518(0x188),'type':'boolean','description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x112867){const _0x66b52a=a31_0xab518,_0x5143a3=loadBffProjectConfig(_0x112867[_0x66b52a(0x192)]),_0x482fee=await readBffLockFile(_0x5143a3[_0x66b52a(0x157)]),{appLock:_0x5d12c8}=ensureLockScope(_0x482fee??createEmptyBffLock(),_0x112867['appCode'],_0x5143a3[_0x66b52a(0x183)],'pull'),_0x1e9715=normalizeBffType(_0x112867[_0x66b52a(0x154)](_0x66b52a(0x158)))??undefined,_0x1e3446=buildDatasetCodeToAliasMap(_0x112867[_0x66b52a(0x176)],_0x112867[_0x66b52a(0x192)]),[_0x4215ae,_0x805952]=await Promise[_0x66b52a(0x172)]([listBffScripts(_0x112867[_0x66b52a(0x192)],_0x1e9715),getBffScriptStatistics(_0x112867[_0x66b52a(0x192)])]),_0x2e2e69=createHookLocationMap(_0x805952),_0x47d79a=[];for(const _0x2c8d4a of _0x4215ae){const _0x39b2a7=resolveRemoteScriptTarget(_0x5143a3,_0x2c8d4a,_0x2e2e69,_0x5d12c8[_0x66b52a(0x17d)],_0x1e3446);if(!_0x39b2a7){_0x47d79a[_0x66b52a(0x155)]({'scriptType':_0x2c8d4a[_0x66b52a(0x14e)],'functionName':_0x2c8d4a[_0x66b52a(0x194)]??'','status':_0x66b52a(0x181),'reason':_0x66b52a(0x198)});continue;}const _0x1fd0a1=_0x5d12c8['functions'][_0x39b2a7[_0x66b52a(0x178)]],_0x56cdd5=_0x2c8d4a['scriptContent']!=null?computeContentHash(_0x2c8d4a[_0x66b52a(0x15f)]):undefined,_0xf3d41=await hasUnsyncedLocalChanges(_0x39b2a7[_0x66b52a(0x15b)],_0x1fd0a1,_0x56cdd5);_0x47d79a[_0x66b52a(0x155)]({'lockKey':_0x39b2a7[_0x66b52a(0x178)],'filePath':_0x39b2a7[_0x66b52a(0x15b)],'remoteId':_0x2c8d4a['id']??null,'status':_0xf3d41?_0x66b52a(0x15a):_0x66b52a(0x182)});}return{'method':_0x66b52a(0x15d),'url':_0x66b52a(0x167)+_0x112867[_0x66b52a(0x192)]+(_0x1e9715?_0x66b52a(0x17c)+_0x1e9715:''),'body':{'appCode':_0x112867[_0x66b52a(0x192)],'filterType':_0x1e9715??null,'files':_0x47d79a},'description':_0x66b52a(0x19b)+_0x47d79a[_0x66b52a(0x17e)]+_0x66b52a(0x18c)};},async 'execute'(_0xff9536){const _0x5443c5=a31_0xab518,_0x5725a9=loadBffProjectConfig(_0xff9536[_0x5443c5(0x192)]),_0xd5dee=await readBffLockFile(_0x5725a9['lockFilePath']),{lockData:_0x348911,appLock:_0x5af6c7}=ensureLockScope(_0xd5dee??createEmptyBffLock(),_0xff9536[_0x5443c5(0x192)],_0x5725a9[_0x5443c5(0x183)],_0x5443c5(0x18d)),_0x2c4459=normalizeBffType(_0xff9536['str'](_0x5443c5(0x158)))??undefined;if(_0xff9536[_0x5443c5(0x154)](_0x5443c5(0x158))&&!_0x2c4459)throw CliErrors['validation'](_0x5443c5(0x161));const [_0x1d3eb5,_0x2f55d6]=await Promise[_0x5443c5(0x172)]([listBffScripts(_0xff9536[_0x5443c5(0x192)],_0x2c4459),getBffScriptStatistics(_0xff9536[_0x5443c5(0x192)])]);if(_0x1d3eb5['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x5443c5(0x179)};const _0x149fe5=_0xff9536[_0x5443c5(0x17b)](_0x5443c5(0x188));if(_0x149fe5&&!_0xff9536[_0x5443c5(0x18a)]){const _0x59292d=await confirmForce();if(!_0x59292d)throw CliErrors[_0x5443c5(0x171)]('Force\x20pull\x20cancelled.');}if(_0x149fe5&&_0xff9536['nonInteractive']){}const _0x2f4ab2=buildDatasetCodeToAliasMap(_0xff9536['apiDir'],_0xff9536[_0x5443c5(0x192)]),_0x5b4317=createHookLocationMap(_0x2f55d6),_0x4d71c1=JSON[_0x5443c5(0x193)](JSON[_0x5443c5(0x16e)](_0x348911)),_0x14b60f=_0xff9536[_0x5443c5(0x192)],_0x460b51=_0x4d71c1[_0x5443c5(0x151)][_0x14b60f];if(!_0x460b51)throw new Error(_0x5443c5(0x180)+_0x14b60f+_0x5443c5(0x153));const _0x19656d=[],_0x493442=[],_0x2acb20=[];for(const _0x5e184a of _0x1d3eb5){const _0x2601bb=resolveRemoteScriptTarget(_0x5725a9,_0x5e184a,_0x5b4317,_0x5af6c7['functions'],_0x2f4ab2);if(!_0x2601bb){_0x493442['push']({'lockKey':_0x5e184a[_0x5443c5(0x14e)]+'/'+_0x5e184a[_0x5443c5(0x194)],'reason':_0x5443c5(0x198)});continue;}const _0xe7cae0=_0x5af6c7[_0x5443c5(0x17d)][_0x2601bb[_0x5443c5(0x178)]];try{if(!_0x5e184a['id'])throw new Error(_0x5443c5(0x170));if(_0x5e184a['scriptContent']==null)throw new Error(_0x5443c5(0x15e));const _0xbdffd1=_0x5e184a[_0x5443c5(0x15f)],_0x19b3ab=computeContentHash(_0xbdffd1);if(!_0x149fe5){const _0x48136e=await hasUnsyncedLocalChanges(_0x2601bb[_0x5443c5(0x15b)],_0xe7cae0,_0x19b3ab);if(_0x48136e){_0x493442[_0x5443c5(0x155)]({'lockKey':_0x2601bb['lockKey'],'reason':_0x5443c5(0x184)});continue;}}await ensureParentDirectory(_0x2601bb[_0x5443c5(0x15b)]),await writeFile(_0x2601bb['filePath'],_0xbdffd1,_0x5443c5(0x16b));const _0x50eb27={'hash':_0x19b3ab,'remoteId':_0x5e184a['id'],'version':_0x5e184a['version']};_0x2601bb[_0x5443c5(0x158)]===_0x5443c5(0x168)&&_0x2601bb[_0x5443c5(0x152)]&&(_0x50eb27[_0x5443c5(0x169)]=_0x2601bb[_0x5443c5(0x152)][_0x5443c5(0x169)],_0x50eb27[_0x5443c5(0x16f)]=_0x2601bb[_0x5443c5(0x152)][_0x5443c5(0x16f)],_0x50eb27[_0x5443c5(0x190)]=_0x2601bb[_0x5443c5(0x152)]['operationType'],_0x50eb27[_0x5443c5(0x185)]=_0x2601bb['hookLocation'][_0x5443c5(0x185)]),_0x460b51['functions'][_0x2601bb[_0x5443c5(0x178)]]=_0x50eb27,_0x19656d[_0x5443c5(0x155)]({'lockKey':_0x2601bb[_0x5443c5(0x178)],'remoteId':_0x5e184a['id']});}catch(_0x9e466e){_0x2acb20['push']({'lockKey':_0x2601bb[_0x5443c5(0x178)],'error':_0x9e466e instanceof Error?_0x9e466e[_0x5443c5(0x162)]:String(_0x9e466e)});}}return _0x460b51[_0x5443c5(0x187)]=new Date()[_0x5443c5(0x19c)](),await writeBffLockFile(_0x5725a9[_0x5443c5(0x157)],_0x4d71c1),{'ok':_0x2acb20[_0x5443c5(0x17e)]===0x0,'data':{'pulled':_0x19656d,'skipped':_0x493442,'failed':_0x2acb20},'message':'Pull\x20complete:\x20'+_0x19656d['length']+_0x5443c5(0x166)+_0x493442[_0x5443c5(0x17e)]+_0x5443c5(0x165)+_0x2acb20[_0x5443c5(0x17e)]+_0x5443c5(0x16a)};}};async function hasUnsyncedLocalChanges(_0x2e3809,_0x54acf4,_0x18b8ee){const _0x2ca5ea=a31_0xab518;if(!await fileExists(_0x2e3809))return![];const _0x30d30a=await computeFileHash(_0x2e3809);if(!_0x54acf4)return _0x18b8ee?_0x30d30a!==_0x18b8ee:!![];return _0x30d30a!==_0x54acf4[_0x2ca5ea(0x196)];}function a31_0x3c48(){const _0x47f7de=['\x20skipped,\x20','\x20pulled,\x20','/api/management/library/scripts/list?appCode=','HOOK','alias','\x20failed','utf8','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','51331elAGJO','stringify','datasetCode','Remote\x20script\x20missing\x20id.','cancelled','all','2616984OzjDYt','bff','4lfmQhv','apiDir','question','lockKey','No\x20remote\x20BFF\x20scripts\x20found.','includes','bool','&type=','functions','length','toLowerCase','Lock\x20scope\x20for\x20app\x20\x22','skipped','would_pull','scriptsRoot','local\x20unsynced\x20changes','functionNode','Pull\x20only\x20this\x20script\x20type','lastSync','force','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','nonInteractive','trim','\x20remote\x20BFF\x20script(s)\x20for\x20pull','pull','COMMON','630tqEmKx','operationType','233224SGwSRF','appCode','parse','functionName','stderr','hash','84358DaoVNf','unresolvable\x20target\x20path','3XUzpgh','14264qyEKiw','Would\x20inspect\x20','toISOString','write','scriptType','2035850lINMjv','map','apps','hookLocation','\x22\x20not\x20found\x20after\x20ensureLockScope.','str','push','string','lockFilePath','type','132USVPzB','conflict','filePath','11DYoxAL','GET','Remote\x20script\x20missing\x20content.','scriptContent','260135YUmtMJ','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','message','stdin','ENDPOINT'];a31_0x3c48=function(){return _0x47f7de;};return a31_0x3c48();}function buildDatasetCodeToAliasMap(_0x35c086,_0x3c82d5){const _0x20d71b=a31_0xab518,_0x2dfed7=loadAliasMap(_0x35c086,undefined,resolveApiFilePath(_0x35c086,_0x3c82d5));return new Map(_0x2dfed7[_0x20d71b(0x150)](_0x29456b=>[_0x29456b['datasetCode'],_0x29456b['alias']]));}async function confirmForce(){const _0x3a5570=a31_0xab518,_0x193378=createInterface({'input':process[_0x3a5570(0x163)],'output':process[_0x3a5570(0x195)]}),_0x3a9664=await new Promise(_0x174a0d=>{const _0x2232e3=_0x3a5570;_0x193378[_0x2232e3(0x177)](_0x2232e3(0x189),_0x174a0d);});return _0x193378['close'](),['y','yes'][_0x3a5570(0x17a)](_0x3a9664[_0x3a5570(0x18b)]()[_0x3a5570(0x17f)]());}
1
+ const a31_0x19a960=a31_0xe0ed;(function(_0x3bc545,_0x236185){const _0x424635=a31_0xe0ed,_0xea501f=_0x3bc545();while(!![]){try{const _0xf4e7a5=-parseInt(_0x424635(0x17f))/0x1*(parseInt(_0x424635(0x19b))/0x2)+parseInt(_0x424635(0x17e))/0x3+-parseInt(_0x424635(0x192))/0x4+-parseInt(_0x424635(0x189))/0x5*(-parseInt(_0x424635(0x184))/0x6)+-parseInt(_0x424635(0x177))/0x7*(-parseInt(_0x424635(0x1a0))/0x8)+parseInt(_0x424635(0x176))/0x9+-parseInt(_0x424635(0x199))/0xa*(parseInt(_0x424635(0x183))/0xb);if(_0xf4e7a5===_0x236185)break;else _0xea501f['push'](_0xea501f['shift']());}catch(_0xf368bf){_0xea501f['push'](_0xea501f['shift']());}}}(a31_0x2e56,0x69597));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';function a31_0x2e56(){const _0x274ca5=['ENDPOINT','push','operationType','includes','toISOString','appCode','Pull\x20only\x20this\x20script\x20type','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','bool','toLowerCase','Pull\x20complete:\x20','\x22\x20not\x20found\x20after\x20ensureLockScope.','Would\x20inspect\x20','close','alias','COMMON','conflict','Force\x20overwrite\x20local\x20unsynced\x20changes','GET','scriptType','nonInteractive','pull','Force\x20pull\x20cancelled.','5537673DxBDtS','21iSlbyc','boolean','stderr','scriptsRoot','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','Remote\x20script\x20missing\x20content.','No\x20remote\x20BFF\x20scripts\x20found.','1325841SeVLVe','1UXJBLH','length','hookLocation','datasetCode','33erqqMH','9066xYUmYr','lockKey','string','functionNode','map','1255truPSC','stdin','skipped','&type=','\x20failed','force','functions','local\x20unsynced\x20changes','bff','207644idOjhP','apiDir','type','apps','Lock\x20scope\x20for\x20app\x20\x22','scriptContent','functionName','911080xBiggl','str','1531484MfxNVI','HOOK','Remote\x20script\x20missing\x20id.','\x20skipped,\x20','parse','229288tuycJf','lastSync','filePath','lockFilePath'];a31_0x2e56=function(){return _0x274ca5;};return a31_0x2e56();}import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';function a31_0xe0ed(_0x4fa9dd,_0x4715d4){_0x4fa9dd=_0x4fa9dd-0x176;const _0x2e56fe=a31_0x2e56();let _0xe0ed40=_0x2e56fe[_0x4fa9dd];return _0xe0ed40;}import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0x19a960(0x191),'command':a31_0x19a960(0x1b9),'description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':'write','flags':[{'name':'type','type':a31_0x19a960(0x186),'description':a31_0x19a960(0x1aa),'enum':[a31_0x19a960(0x1b3),a31_0x19a960(0x1a4),a31_0x19a960(0x19c)]},{'name':a31_0x19a960(0x18e),'type':a31_0x19a960(0x178),'description':a31_0x19a960(0x1b5)}],async 'dryRun'(_0x37487c){const _0x332443=a31_0x19a960,_0x37becc=loadBffProjectConfig(_0x37487c[_0x332443(0x1a9)]),_0x2b8c3a=await readBffLockFile(_0x37becc[_0x332443(0x1a3)]),{appLock:_0x57c9bc}=ensureLockScope(_0x2b8c3a??createEmptyBffLock(),_0x37487c[_0x332443(0x1a9)],_0x37becc[_0x332443(0x17a)],_0x332443(0x1b9)),_0x3cd05d=normalizeBffType(_0x37487c[_0x332443(0x19a)]('type'))??undefined,_0x5d9bdd=buildDatasetCodeToAliasMap(_0x37487c[_0x332443(0x193)],_0x37487c[_0x332443(0x1a9)]),[_0xf6d562,_0x20dfd6]=await Promise['all']([listBffScripts(_0x37487c[_0x332443(0x1a9)],_0x3cd05d),getBffScriptStatistics(_0x37487c[_0x332443(0x1a9)])]),_0x279c69=createHookLocationMap(_0x20dfd6),_0x50caab=[];for(const _0x1a09d1 of _0xf6d562){const _0x17dca8=resolveRemoteScriptTarget(_0x37becc,_0x1a09d1,_0x279c69,_0x57c9bc[_0x332443(0x18f)],_0x5d9bdd);if(!_0x17dca8){_0x50caab[_0x332443(0x1a5)]({'scriptType':_0x1a09d1[_0x332443(0x1b7)],'functionName':_0x1a09d1[_0x332443(0x198)]??'','status':_0x332443(0x18b),'reason':'unresolvable\x20target\x20path'});continue;}const _0x311b94=_0x57c9bc['functions'][_0x17dca8['lockKey']],_0x2930ad=_0x1a09d1[_0x332443(0x197)]!=null?computeContentHash(_0x1a09d1[_0x332443(0x197)]):undefined,_0x2de632=await hasUnsyncedLocalChanges(_0x17dca8[_0x332443(0x1a2)],_0x311b94,_0x2930ad);_0x50caab['push']({'lockKey':_0x17dca8['lockKey'],'filePath':_0x17dca8[_0x332443(0x1a2)],'remoteId':_0x1a09d1['id']??null,'status':_0x2de632?_0x332443(0x1b4):'would_pull'});}return{'method':_0x332443(0x1b6),'url':'/api/management/library/scripts/list?appCode='+_0x37487c[_0x332443(0x1a9)]+(_0x3cd05d?_0x332443(0x18c)+_0x3cd05d:''),'body':{'appCode':_0x37487c[_0x332443(0x1a9)],'filterType':_0x3cd05d??null,'files':_0x50caab},'description':_0x332443(0x1b0)+_0x50caab['length']+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x3d8729){const _0x3631a2=a31_0x19a960,_0x464bfc=loadBffProjectConfig(_0x3d8729[_0x3631a2(0x1a9)]),_0x54fdbd=await readBffLockFile(_0x464bfc['lockFilePath']),{lockData:_0x1ef7c9,appLock:_0x512ac0}=ensureLockScope(_0x54fdbd??createEmptyBffLock(),_0x3d8729['appCode'],_0x464bfc[_0x3631a2(0x17a)],_0x3631a2(0x1b9)),_0xeb4214=normalizeBffType(_0x3d8729[_0x3631a2(0x19a)](_0x3631a2(0x194)))??undefined;if(_0x3d8729[_0x3631a2(0x19a)](_0x3631a2(0x194))&&!_0xeb4214)throw CliErrors['validation'](_0x3631a2(0x1ab));const [_0x2a2f75,_0x414bb2]=await Promise['all']([listBffScripts(_0x3d8729[_0x3631a2(0x1a9)],_0xeb4214),getBffScriptStatistics(_0x3d8729['appCode'])]);if(_0x2a2f75[_0x3631a2(0x180)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x3631a2(0x17d)};const _0x42d79c=_0x3d8729[_0x3631a2(0x1ac)](_0x3631a2(0x18e));if(_0x42d79c&&!_0x3d8729[_0x3631a2(0x1b8)]){const _0xe85ee7=await confirmForce();if(!_0xe85ee7)throw CliErrors['cancelled'](_0x3631a2(0x1ba));}if(_0x42d79c&&_0x3d8729[_0x3631a2(0x1b8)]){}const _0x590f3a=buildDatasetCodeToAliasMap(_0x3d8729[_0x3631a2(0x193)],_0x3d8729[_0x3631a2(0x1a9)]),_0x3064de=createHookLocationMap(_0x414bb2),_0x4f2022=JSON[_0x3631a2(0x19f)](JSON['stringify'](_0x1ef7c9)),_0x218be7=_0x3d8729[_0x3631a2(0x1a9)],_0x42c326=_0x4f2022[_0x3631a2(0x195)][_0x218be7];if(!_0x42c326)throw new Error(_0x3631a2(0x196)+_0x218be7+_0x3631a2(0x1af));const _0x2aacae=[],_0x939e11=[],_0x5a43dd=[];for(const _0x2d4389 of _0x2a2f75){const _0x8d188a=resolveRemoteScriptTarget(_0x464bfc,_0x2d4389,_0x3064de,_0x512ac0[_0x3631a2(0x18f)],_0x590f3a);if(!_0x8d188a){_0x939e11['push']({'lockKey':_0x2d4389[_0x3631a2(0x1b7)]+'/'+_0x2d4389['functionName'],'reason':'unresolvable\x20target\x20path'});continue;}const _0x200bcd=_0x512ac0[_0x3631a2(0x18f)][_0x8d188a[_0x3631a2(0x185)]];try{if(!_0x2d4389['id'])throw new Error(_0x3631a2(0x19d));if(_0x2d4389['scriptContent']==null)throw new Error(_0x3631a2(0x17c));const _0x1415a3=_0x2d4389['scriptContent'],_0x47c18a=computeContentHash(_0x1415a3);if(!_0x42d79c){const _0x11f7a2=await hasUnsyncedLocalChanges(_0x8d188a['filePath'],_0x200bcd,_0x47c18a);if(_0x11f7a2){_0x939e11[_0x3631a2(0x1a5)]({'lockKey':_0x8d188a[_0x3631a2(0x185)],'reason':_0x3631a2(0x190)});continue;}}await ensureParentDirectory(_0x8d188a[_0x3631a2(0x1a2)]),await writeFile(_0x8d188a['filePath'],_0x1415a3,'utf8');const _0x456e7f={'hash':_0x47c18a,'remoteId':_0x2d4389['id'],'version':_0x2d4389['version']};_0x8d188a[_0x3631a2(0x194)]==='HOOK'&&_0x8d188a['hookLocation']&&(_0x456e7f[_0x3631a2(0x1b2)]=_0x8d188a[_0x3631a2(0x181)][_0x3631a2(0x1b2)],_0x456e7f['datasetCode']=_0x8d188a[_0x3631a2(0x181)][_0x3631a2(0x182)],_0x456e7f['operationType']=_0x8d188a[_0x3631a2(0x181)][_0x3631a2(0x1a6)],_0x456e7f[_0x3631a2(0x187)]=_0x8d188a[_0x3631a2(0x181)][_0x3631a2(0x187)]),_0x42c326['functions'][_0x8d188a[_0x3631a2(0x185)]]=_0x456e7f,_0x2aacae[_0x3631a2(0x1a5)]({'lockKey':_0x8d188a[_0x3631a2(0x185)],'remoteId':_0x2d4389['id']});}catch(_0x5594e0){_0x5a43dd[_0x3631a2(0x1a5)]({'lockKey':_0x8d188a['lockKey'],'error':_0x5594e0 instanceof Error?_0x5594e0['message']:String(_0x5594e0)});}}return _0x42c326[_0x3631a2(0x1a1)]=new Date()[_0x3631a2(0x1a8)](),await writeBffLockFile(_0x464bfc[_0x3631a2(0x1a3)],_0x4f2022),{'ok':_0x5a43dd[_0x3631a2(0x180)]===0x0,'data':{'pulled':_0x2aacae,'skipped':_0x939e11,'failed':_0x5a43dd},'message':_0x3631a2(0x1ae)+_0x2aacae[_0x3631a2(0x180)]+'\x20pulled,\x20'+_0x939e11[_0x3631a2(0x180)]+_0x3631a2(0x19e)+_0x5a43dd[_0x3631a2(0x180)]+_0x3631a2(0x18d)};}};async function hasUnsyncedLocalChanges(_0x2f856b,_0x556e33,_0x268862){if(!await fileExists(_0x2f856b))return![];const _0x320fec=await computeFileHash(_0x2f856b);if(!_0x556e33)return _0x268862?_0x320fec!==_0x268862:!![];return _0x320fec!==_0x556e33['hash'];}function buildDatasetCodeToAliasMap(_0x130804,_0x8bac11){const _0x23efbe=a31_0x19a960,_0x37afca=loadAliasMap(_0x130804,undefined,resolveApiFilePath(_0x130804,_0x8bac11));return new Map(_0x37afca[_0x23efbe(0x188)](_0x1f70c2=>[_0x1f70c2[_0x23efbe(0x182)],_0x1f70c2[_0x23efbe(0x1b2)]]));}async function confirmForce(){const _0x14b177=a31_0x19a960,_0x5674da=createInterface({'input':process[_0x14b177(0x18a)],'output':process[_0x14b177(0x179)]}),_0x4beed1=await new Promise(_0x4bb957=>{const _0x2fbf7c=_0x14b177;_0x5674da['question'](_0x2fbf7c(0x17b),_0x4bb957);});return _0x5674da[_0x14b177(0x1b1)](),['y','yes'][_0x14b177(0x1a7)](_0x4beed1['trim']()[_0x14b177(0x1ad)]());}