@lovrabet/rabetbase-cli 2.2.3-beta.2 → 2.2.3

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 (205) 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/config/schema.js +1 -1
  135. package/lib/constant/cdn.js +1 -1
  136. package/lib/constant/cli.js +1 -1
  137. package/lib/constant/defaults.js +1 -1
  138. package/lib/constant/domain.js +1 -1
  139. package/lib/constant/env.js +1 -1
  140. package/lib/constant/output.js +1 -1
  141. package/lib/constant/paths.js +1 -1
  142. package/lib/constant/risk.js +1 -1
  143. package/lib/context.js +1 -1
  144. package/lib/core/alias-resolver.js +1 -1
  145. package/lib/core/api-client.js +1 -1
  146. package/lib/core/bff/config.js +1 -1
  147. package/lib/core/bff/file-system.js +1 -1
  148. package/lib/core/bff/hash.js +1 -1
  149. package/lib/core/bff/lock.js +1 -1
  150. package/lib/core/bff/utils.js +1 -1
  151. package/lib/core/db-resolver.js +1 -1
  152. package/lib/core/page/file-system.js +1 -1
  153. package/lib/core/page/hash.js +1 -1
  154. package/lib/core/page/lock.js +1 -1
  155. package/lib/core/sql-sync/config.js +1 -1
  156. package/lib/core/sql-sync/file-system.js +1 -1
  157. package/lib/core/sql-sync/hash.js +1 -1
  158. package/lib/core/sql-sync/lock.js +1 -1
  159. package/lib/core/sql-sync/utils.js +1 -1
  160. package/lib/core/sql-validator.js +1 -1
  161. package/lib/errors.js +1 -1
  162. package/lib/framework/build-all-flags.js +1 -1
  163. package/lib/framework/flags.js +1 -1
  164. package/lib/framework/help.js +1 -1
  165. package/lib/framework/index.js +1 -1
  166. package/lib/framework/output.js +1 -1
  167. package/lib/framework/response.js +1 -1
  168. package/lib/framework/runner-alias.js +1 -1
  169. package/lib/framework/runner.js +1 -1
  170. package/lib/framework/schema-export.js +1 -1
  171. package/lib/framework/types.js +1 -1
  172. package/lib/generated/build-info.js +1 -1
  173. package/lib/help.js +1 -1
  174. package/lib/skills/main.js +1 -1
  175. package/lib/skills/npx-skills-add.js +1 -1
  176. package/lib/telemetry/cli-command-trace.js +1 -1
  177. package/lib/telemetry/cli-help-trace.js +1 -1
  178. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  179. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  180. package/lib/telemetry/send-cli-trace-log.js +1 -1
  181. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  182. package/lib/utils/ai_config.js +1 -1
  183. package/lib/utils/apply-jq-filter.js +1 -1
  184. package/lib/utils/cdn-config.js +1 -1
  185. package/lib/utils/check-sdk-version.js +1 -1
  186. package/lib/utils/cli-version-check.js +1 -1
  187. package/lib/utils/cli-version-policy.js +1 -1
  188. package/lib/utils/config.js +1 -1
  189. package/lib/utils/copy-directory.js +1 -1
  190. package/lib/utils/entity-with-id.js +1 -1
  191. package/lib/utils/file-utils.js +1 -1
  192. package/lib/utils/guides-cdn.js +1 -1
  193. package/lib/utils/http-client.js +1 -1
  194. package/lib/utils/is-non-interactive.js +1 -1
  195. package/lib/utils/logger.js +1 -1
  196. package/lib/utils/params.js +1 -1
  197. package/lib/utils/platform.js +1 -1
  198. package/lib/utils/rules-cdn.js +1 -1
  199. package/lib/utils/sleep.js +1 -1
  200. package/lib/utils/template-replacer.js +1 -1
  201. package/lib/utils/update-notice.js +1 -1
  202. package/lib/utils/version.js +1 -1
  203. package/lib/utils/with-active-cookie.js +1 -1
  204. package/lib/utils/write-cli-side-channel.js +1 -1
  205. package/package.json +1 -1
@@ -1 +1 @@
1
- const a19_0x5017cb=a19_0x2b58;function a19_0x1c3d(){const _0xf697a6=['2MWepbP','945280GGLmrM','6106800gUQpGA','3574878FbcKyq','appDesc','appCode','cookie','1335280jrByTr','remote','799556MAnCjL','appName','3062529OpWcoZ','map','413652DgwPnJ','../../core/api-client.js','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','70RxMrhK'];a19_0x1c3d=function(){return _0xf697a6;};return a19_0x1c3d();}(function(_0x438946,_0x9c23b9){const _0x285a52=a19_0x2b58,_0x511519=_0x438946();while(!![]){try{const _0x1c01f8=parseInt(_0x285a52(0x171))/0x1*(parseInt(_0x285a52(0x178))/0x2)+parseInt(_0x285a52(0x174))/0x3+-parseInt(_0x285a52(0x17a))/0x4+parseInt(_0x285a52(0x172))/0x5+-parseInt(_0x285a52(0x16d))/0x6*(parseInt(_0x285a52(0x170))/0x7)+-parseInt(_0x285a52(0x173))/0x8+-parseInt(_0x285a52(0x16b))/0x9;if(_0x1c01f8===_0x9c23b9)break;else _0x511519['push'](_0x511519['shift']());}catch(_0x44c6f1){_0x511519['push'](_0x511519['shift']());}}}(a19_0x1c3d,0xb084e));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x4ec4b5){const _0x235f14=a19_0x2b58,{setActiveCookie:_0x133fe9}=await import(_0x235f14(0x16e));_0x133fe9(_0x4ec4b5[_0x235f14(0x177)]);const _0x4c285e=await listRemoteApps();return{'ok':!![],'data':{'items':_0x4c285e[_0x235f14(0x16c)](_0x1f929d=>({..._0x1f929d['id']!=null?{'id':_0x1f929d['id']}:{},'appCode':_0x1f929d[_0x235f14(0x176)],'appName':_0x1f929d[_0x235f14(0x16a)],..._0x1f929d[_0x235f14(0x175)]!=null?{'appDesc':_0x1f929d[_0x235f14(0x175)]}:{}})),'meta':{'source':'platform'}}};}function a19_0x2b58(_0x2cebd8,_0x4616b0){_0x2cebd8=_0x2cebd8-0x16a;const _0x1c3d15=a19_0x1c3d();let _0x2b58c1=_0x1c3d15[_0x2cebd8];return _0x2b58c1;}export const appRemoteDefinition={'service':'app','command':a19_0x5017cb(0x179),'description':a19_0x5017cb(0x16f),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ const a19_0x985d39=a19_0x451e;(function(_0x117ae6,_0xaa1539){const _0x10f8cb=a19_0x451e,_0x5777ef=_0x117ae6();while(!![]){try{const _0x3f472a=parseInt(_0x10f8cb(0xf2))/0x1+-parseInt(_0x10f8cb(0xf7))/0x2*(-parseInt(_0x10f8cb(0xfe))/0x3)+parseInt(_0x10f8cb(0xf6))/0x4*(-parseInt(_0x10f8cb(0xfc))/0x5)+parseInt(_0x10f8cb(0xf3))/0x6*(-parseInt(_0x10f8cb(0xfd))/0x7)+-parseInt(_0x10f8cb(0xf5))/0x8+-parseInt(_0x10f8cb(0xf9))/0x9+parseInt(_0x10f8cb(0xef))/0xa;if(_0x3f472a===_0xaa1539)break;else _0x5777ef['push'](_0x5777ef['shift']());}catch(_0x2adfed){_0x5777ef['push'](_0x5777ef['shift']());}}}(a19_0x3a7a,0x62051));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x2536d4){const _0x5dfa7f=a19_0x451e,{setActiveCookie:_0x23150b}=await import('../../core/api-client.js');_0x23150b(_0x2536d4[_0x5dfa7f(0xf1)]);const _0xd526b4=await listRemoteApps();return{'ok':!![],'data':{'items':_0xd526b4[_0x5dfa7f(0x100)](_0x301f34=>({..._0x301f34['id']!=null?{'id':_0x301f34['id']}:{},'appCode':_0x301f34[_0x5dfa7f(0xf8)],'appName':_0x301f34[_0x5dfa7f(0xee)],..._0x301f34[_0x5dfa7f(0xff)]!=null?{'appDesc':_0x301f34[_0x5dfa7f(0xff)]}:{}})),'meta':{'source':'platform'}}};}function a19_0x451e(_0x22b9c5,_0x4bca1d){_0x22b9c5=_0x22b9c5-0xee;const _0x3a7a57=a19_0x3a7a();let _0x451e09=_0x3a7a57[_0x22b9c5];return _0x451e09;}export const appRemoteDefinition={'service':a19_0x985d39(0xfa),'command':a19_0x985d39(0xf0),'description':a19_0x985d39(0xfb),'risk':a19_0x985d39(0xf4),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};function a19_0x3a7a(){const _0x1dca17=['3241794dMjoaj','read','1506080LBIsfF','200hxjPns','1438snMjFV','appCode','6571611WqhkSk','app','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','78920JmzRvI','7HPDnBG','2991RDZyUn','appDesc','map','appName','18242770mGtuiF','remote','cookie','108307YJUYnK'];a19_0x3a7a=function(){return _0x1dca17;};return a19_0x3a7a();}
@@ -1 +1 @@
1
- (function(_0x32b38f,_0x3d5935){const _0x3f3fca=a20_0x20fa,_0x4183a0=_0x32b38f();while(!![]){try{const _0x410736=parseInt(_0x3f3fca(0xc9))/0x1*(-parseInt(_0x3f3fca(0xc8))/0x2)+-parseInt(_0x3f3fca(0xc7))/0x3*(-parseInt(_0x3f3fca(0xc4))/0x4)+parseInt(_0x3f3fca(0xc1))/0x5+-parseInt(_0x3f3fca(0xc3))/0x6+-parseInt(_0x3f3fca(0xca))/0x7+parseInt(_0x3f3fca(0xc0))/0x8*(parseInt(_0x3f3fca(0xc5))/0x9)+-parseInt(_0x3f3fca(0xc2))/0xa*(-parseInt(_0x3f3fca(0xc6))/0xb);if(_0x410736===_0x3d5935)break;else _0x4183a0['push'](_0x4183a0['shift']());}catch(_0x1e9816){_0x4183a0['push'](_0x4183a0['shift']());}}}(a20_0xce6c,0x8d95c));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';function a20_0x20fa(_0x35230b,_0x58cfb5){_0x35230b=_0x35230b-0xc0;const _0xce6cfb=a20_0xce6c();let _0x20faa1=_0xce6cfb[_0x35230b];return _0x20faa1;}function a20_0xce6c(){const _0x16037f=['16bgERav','4295075ftUQWC','6535800QmMJoD','3664440WQoFiQ','128812eERWSu','1924623OjFsNw','11ISVyPM','9uxVUKf','865370sTdWgT','1RTGEhJ','2894787syETFr'];a20_0xce6c=function(){return _0x16037f;};return a20_0xce6c();}import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ function a20_0x6891(_0xd9d99b,_0x3a3e38){_0xd9d99b=_0xd9d99b-0xb2;const _0x224357=a20_0x2243();let _0x68913=_0x224357[_0xd9d99b];return _0x68913;}(function(_0x43407a,_0x582705){const _0x54738f=a20_0x6891,_0x198423=_0x43407a();while(!![]){try{const _0x52f8f3=parseInt(_0x54738f(0xb4))/0x1+parseInt(_0x54738f(0xb2))/0x2*(parseInt(_0x54738f(0xb5))/0x3)+parseInt(_0x54738f(0xb7))/0x4+parseInt(_0x54738f(0xb8))/0x5*(-parseInt(_0x54738f(0xb3))/0x6)+parseInt(_0x54738f(0xb6))/0x7+-parseInt(_0x54738f(0xb9))/0x8+-parseInt(_0x54738f(0xba))/0x9;if(_0x52f8f3===_0x582705)break;else _0x198423['push'](_0x198423['shift']());}catch(_0x6695a5){_0x198423['push'](_0x198423['shift']());}}}(a20_0x2243,0x3acfa));function a20_0x2243(){const _0x5dc682=['1390384RghSoY','6205635mJsxYJ','2RjYgjN','522BTDCGZ','161975FzsiDQ','1019661GpnDSl','2971528aOyMoN','1777272JcKwxv','15315ZJoYCP'];a20_0x2243=function(){return _0x5dc682;};return a20_0x2243();}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';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- function a21_0xbcbe(_0x3cca1d,_0x1ecda6){_0x3cca1d=_0x3cca1d-0xc2;const _0x2b4b3f=a21_0x2b4b();let _0xbcbe48=_0x2b4b3f[_0x3cca1d];return _0xbcbe48;}const a21_0x35b180=a21_0xbcbe;(function(_0x16e9cd,_0x2f99f4){const _0x4f9c1f=a21_0xbcbe,_0x112174=_0x16e9cd();while(!![]){try{const _0x47224c=parseInt(_0x4f9c1f(0xd8))/0x1+-parseInt(_0x4f9c1f(0xce))/0x2+parseInt(_0x4f9c1f(0xc5))/0x3*(parseInt(_0x4f9c1f(0xd7))/0x4)+parseInt(_0x4f9c1f(0xda))/0x5+parseInt(_0x4f9c1f(0xd6))/0x6+-parseInt(_0x4f9c1f(0xe3))/0x7*(-parseInt(_0x4f9c1f(0xd4))/0x8)+parseInt(_0x4f9c1f(0xe5))/0x9*(-parseInt(_0x4f9c1f(0xe2))/0xa);if(_0x47224c===_0x2f99f4)break;else _0x112174['push'](_0x112174['shift']());}catch(_0x469c50){_0x112174['push'](_0x112174['shift']());}}}(a21_0x2b4b,0x9b880));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x1c79c4,_0x389209){const _0x2b7e0b=a21_0xbcbe,_0x26045f=[],_0x9944bb=_0x1c79c4[_0x2b7e0b(0xe1)]&&typeof _0x1c79c4['apps']===_0x2b7e0b(0xcc)?_0x1c79c4[_0x2b7e0b(0xe1)]:{},_0x16c315=_0x1c79c4['defaultApp']||undefined;for(const [_0x26e44a,_0x360bc7]of Object[_0x2b7e0b(0xd3)](_0x9944bb)){if(!_0x360bc7||typeof _0x360bc7!==_0x2b7e0b(0xcc)||!_0x360bc7[_0x2b7e0b(0xe0)])continue;_0x26045f[_0x2b7e0b(0xdd)]({'name':_0x26e44a,'appcode':_0x360bc7[_0x2b7e0b(0xe0)],'named':!![],'definedIn':_0x389209,'isDefault':_0x26e44a===_0x16c315,...buildAppProfileListFields(_0x360bc7)});}return _0x26045f;}function buildMergedItems(_0x2d7c76,_0x5a5f2b){const _0xee0e33=a21_0xbcbe,{apps:apps={},defaultApp:_0x33944f}=_0x2d7c76,_0x1c7777=_0x5a5f2b[_0xee0e33(0xcb)]['apps']&&typeof _0x5a5f2b['globalConfig'][_0xee0e33(0xe1)]===_0xee0e33(0xcc)?_0x5a5f2b['globalConfig'][_0xee0e33(0xe1)]:{},_0x51a859=_0x5a5f2b[_0xee0e33(0xc9)][_0xee0e33(0xe1)]&&typeof _0x5a5f2b[_0xee0e33(0xc9)][_0xee0e33(0xe1)]==='object'?_0x5a5f2b[_0xee0e33(0xc9)]['apps']:{},_0x5b0f67=_0x5a5f2b[_0xee0e33(0xc9)][_0xee0e33(0xd5)]===![],_0x4cf0e1=Object['entries'](apps),_0x2ad387=_0x4cf0e1[_0xee0e33(0xdc)](([_0x4eee5d,_0x36d4ca])=>({'name':_0x4eee5d,'appcode':_0x36d4ca[_0xee0e33(0xe0)],'named':!![],'definedIn':appDefinedIn(_0x4eee5d,_0x1c7777,_0x51a859,_0x5b0f67),'isDefault':_0x4eee5d===_0x33944f,...buildAppProfileListFields(_0x36d4ca)}));return _0x2ad387;}async function execute(_0x34930a){const _0x23e469=a21_0xbcbe,_0x3f5365=_0x34930a['bool'](_0x23e469(0xc3)),_0x36814c=_0x34930a['bool'](_0x23e469(0xcd)),_0x554332=_0x3f5365?'global':_0x36814c?_0x23e469(0xcd):_0x23e469(0xc6),{config:_0x78e12a,layers:_0x97e29c}=readRawConfigWithLayers(),_0x58f8bc=resolveDefaultAppSource(_0x97e29c),{defaultApp:_0x309360}=_0x78e12a;let _0x523a46,_0x3aab44;switch(_0x554332){case _0x23e469(0xc3):_0x523a46=buildItemsFromLayer(_0x97e29c[_0x23e469(0xcb)],_0x23e469(0xc3)),_0x3aab44=_0x97e29c[_0x23e469(0xe6)];break;case'project':_0x523a46=buildItemsFromLayer(_0x97e29c[_0x23e469(0xc9)],_0x23e469(0xcd)),_0x3aab44=_0x97e29c[_0x23e469(0xcf)];break;default:_0x523a46=buildMergedItems(_0x78e12a,_0x97e29c);break;}enrichAppListItemsWithMergedSelection(_0x523a46,_0x34930a[_0x23e469(0xde)]);if(_0x523a46[_0x23e469(0xc4)]===0x0){const _0x1953e5=_0x554332===_0x23e469(0xc6)?'':'\x20in\x20'+_0x554332+_0x23e469(0xc2);return{'ok':!![],'data':[],'message':_0x23e469(0xc7)+_0x1953e5+_0x23e469(0xd2)+CLI_BIN_NAME+_0x23e469(0xd1)};}const _0x2b3d6e=_0x523a46[_0x23e469(0xdb)](_0x553319=>_0x553319[_0x23e469(0xd0)]===!![]),_0xace444=_0x309360??_0x2b3d6e?.[_0x23e469(0xe0)]??null,_0x3d96dd=_0x554332===_0x23e469(0xc6)?{'globalPath':_0x97e29c[_0x23e469(0xe6)]??null,'projectPath':_0x97e29c[_0x23e469(0xcf)]??null,'defaultApp':_0xace444,'defaultAppSource':_0x309360!=null?_0x58f8bc:null}:{'scope':_0x554332,'configPath':_0x3aab44??null};return{'ok':!![],'data':{'items':_0x523a46,'meta':_0x3d96dd}};}export const appListDefinition={'service':a21_0x35b180(0xc8),'command':a21_0x35b180(0xca),'description':'List\x20all\x20configured\x20apps','risk':a21_0x35b180(0xd9),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x35b180(0xc3),'type':a21_0x35b180(0xdf),'description':'Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','default':![]},{'name':a21_0x35b180(0xcd),'type':a21_0x35b180(0xdf),'description':a21_0x35b180(0xe4),'default':![]}],'execute':execute};function a21_0x2b4b(){const _0x28575d=['20699FUObwM','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','41634WrUpzj','globalPath','\x20config','global','length','3aTfmru','merged','No\x20apps\x20configured','app','projectConfig','list','globalConfig','object','project','848270wDxNkC','projectPath','isCurrent','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','.\x20Use\x20`','entries','296QqmrHY','inherit','2048862vZiUxK','306716nXywyi','706235SdAzoZ','read','3832345PaCLQK','find','map','push','mergedCli','boolean','appcode','apps','2030VeGVtv'];a21_0x2b4b=function(){return _0x28575d;};return a21_0x2b4b();}
1
+ const a21_0x120dee=a21_0x27ff;(function(_0x4238d6,_0x567000){const _0x21bde4=a21_0x27ff,_0x2139a0=_0x4238d6();while(!![]){try{const _0x3a13de=parseInt(_0x21bde4(0x1a9))/0x1*(parseInt(_0x21bde4(0x1ba))/0x2)+parseInt(_0x21bde4(0x1a2))/0x3+parseInt(_0x21bde4(0x1af))/0x4+parseInt(_0x21bde4(0x1ac))/0x5*(parseInt(_0x21bde4(0x1a6))/0x6)+-parseInt(_0x21bde4(0x1a0))/0x7*(-parseInt(_0x21bde4(0x1b1))/0x8)+parseInt(_0x21bde4(0x19e))/0x9+-parseInt(_0x21bde4(0x1ad))/0xa*(parseInt(_0x21bde4(0x1b3))/0xb);if(_0x3a13de===_0x567000)break;else _0x2139a0['push'](_0x2139a0['shift']());}catch(_0x4581f1){_0x2139a0['push'](_0x2139a0['shift']());}}}(a21_0x16bb,0xad372));function a21_0x27ff(_0x4d6066,_0x2d9b96){_0x4d6066=_0x4d6066-0x199;const _0x16bbb7=a21_0x16bb();let _0x27ff70=_0x16bbb7[_0x4d6066];return _0x27ff70;}import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x3afd3c,_0x41b565){const _0xdbb0a5=a21_0x27ff,_0x215738=[],_0x3b04ad=_0x3afd3c[_0xdbb0a5(0x1ab)]&&typeof _0x3afd3c[_0xdbb0a5(0x1ab)]===_0xdbb0a5(0x1a4)?_0x3afd3c[_0xdbb0a5(0x1ab)]:{},_0x58b18c=_0x3afd3c['defaultApp']||undefined;for(const [_0x40ea44,_0x531662]of Object[_0xdbb0a5(0x1b5)](_0x3b04ad)){if(!_0x531662||typeof _0x531662!=='object'||!_0x531662['appcode'])continue;_0x215738[_0xdbb0a5(0x1b7)]({'name':_0x40ea44,'appcode':_0x531662['appcode'],'named':!![],'definedIn':_0x41b565,'isDefault':_0x40ea44===_0x58b18c,...buildAppProfileListFields(_0x531662)});}return _0x215738;}function a21_0x16bb(){const _0x4d0be7=['bool','3720741TnOcIQ','boolean','object','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','5247258wGpyCH','appcode','list','232234VCRWfs','global','apps','5jAeRhg','44143370KdxJXn','\x20in\x20','1962376HeXYnq','app','152KItbUc','project','11OpXPLF','inherit','entries','globalConfig','push','find','List\x20all\x20configured\x20apps','10GUsmhC','globalPath','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','isCurrent','mergedCli','merged','map','projectConfig','4239675nRZVcx','.\x20Use\x20`','326494pDUJiJ'];a21_0x16bb=function(){return _0x4d0be7;};return a21_0x16bb();}function buildMergedItems(_0x52ea49,_0x30ff32){const _0x2c3bbf=a21_0x27ff,{apps:apps={},defaultApp:_0x4748ff}=_0x52ea49,_0x5348f4=_0x30ff32[_0x2c3bbf(0x1b6)][_0x2c3bbf(0x1ab)]&&typeof _0x30ff32[_0x2c3bbf(0x1b6)][_0x2c3bbf(0x1ab)]===_0x2c3bbf(0x1a4)?_0x30ff32[_0x2c3bbf(0x1b6)][_0x2c3bbf(0x1ab)]:{},_0x4e27d3=_0x30ff32['projectConfig']['apps']&&typeof _0x30ff32[_0x2c3bbf(0x19d)][_0x2c3bbf(0x1ab)]===_0x2c3bbf(0x1a4)?_0x30ff32[_0x2c3bbf(0x19d)][_0x2c3bbf(0x1ab)]:{},_0x2bec40=_0x30ff32[_0x2c3bbf(0x19d)][_0x2c3bbf(0x1b4)]===![],_0x1562ca=Object[_0x2c3bbf(0x1b5)](apps),_0x3b8e6b=_0x1562ca[_0x2c3bbf(0x19c)](([_0x1dabf9,_0xbb7e15])=>({'name':_0x1dabf9,'appcode':_0xbb7e15['appcode'],'named':!![],'definedIn':appDefinedIn(_0x1dabf9,_0x5348f4,_0x4e27d3,_0x2bec40),'isDefault':_0x1dabf9===_0x4748ff,...buildAppProfileListFields(_0xbb7e15)}));return _0x3b8e6b;}async function execute(_0x15b939){const _0x19df54=a21_0x27ff,_0xd89cd2=_0x15b939[_0x19df54(0x1a1)](_0x19df54(0x1aa)),_0x1e0546=_0x15b939[_0x19df54(0x1a1)](_0x19df54(0x1b2)),_0x4051be=_0xd89cd2?_0x19df54(0x1aa):_0x1e0546?_0x19df54(0x1b2):'merged',{config:_0x4f5c8c,layers:_0x505a07}=readRawConfigWithLayers(),_0x5c8290=resolveDefaultAppSource(_0x505a07),{defaultApp:_0x39ce89}=_0x4f5c8c;let _0x4c4930,_0x290063;switch(_0x4051be){case _0x19df54(0x1aa):_0x4c4930=buildItemsFromLayer(_0x505a07[_0x19df54(0x1b6)],'global'),_0x290063=_0x505a07[_0x19df54(0x1bb)];break;case _0x19df54(0x1b2):_0x4c4930=buildItemsFromLayer(_0x505a07['projectConfig'],_0x19df54(0x1b2)),_0x290063=_0x505a07['projectPath'];break;default:_0x4c4930=buildMergedItems(_0x4f5c8c,_0x505a07);break;}enrichAppListItemsWithMergedSelection(_0x4c4930,_0x15b939[_0x19df54(0x19a)]);if(_0x4c4930['length']===0x0){const _0x17753f=_0x4051be===_0x19df54(0x19b)?'':_0x19df54(0x1ae)+_0x4051be+'\x20config';return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x17753f+_0x19df54(0x19f)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x591f0b=_0x4c4930[_0x19df54(0x1b8)](_0x5f0cb6=>_0x5f0cb6[_0x19df54(0x199)]===!![]),_0xf48b13=_0x39ce89??_0x591f0b?.[_0x19df54(0x1a7)]??null,_0x58f8b1=_0x4051be===_0x19df54(0x19b)?{'globalPath':_0x505a07['globalPath']??null,'projectPath':_0x505a07['projectPath']??null,'defaultApp':_0xf48b13,'defaultAppSource':_0x39ce89!=null?_0x5c8290:null}:{'scope':_0x4051be,'configPath':_0x290063??null};return{'ok':!![],'data':{'items':_0x4c4930,'meta':_0x58f8b1}};}export const appListDefinition={'service':a21_0x120dee(0x1b0),'command':a21_0x120dee(0x1a8),'description':a21_0x120dee(0x1b9),'risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x120dee(0x1aa),'type':a21_0x120dee(0x1a3),'description':a21_0x120dee(0x1a5),'default':![]},{'name':'project','type':'boolean','description':a21_0x120dee(0x1bc),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- function a22_0x33bc(){const _0x134835=['high-risk-write','apps','remove','object','1663xMUYdw','4501365nHoDAy','app','49776zvSDpB','inherit','global','\x22\x20not\x20found.','projectConfig','176115IQekmf','\x20Default\x20app\x20changed\x20to\x20\x22','both','length','Use\x20global\x20config\x20scope','Usage:\x20','3490JwhtoO','trim','Removed\x20app\x20\x22','\x20config.','\x20app\x20remove\x20<name>\x20[--global]','name','keys','Missing\x20app\x20name.','16OUCLQP','1466087KoNpoG','validation','project','defaultApp','63fxtyQx','160mTOALp','Remove\x20an\x20app\x20from\x20config','\x22\x20still\x20defined\x20in\x20','532CaBGQS','boolean','args','742348UONuAj','App\x20\x22','globalConfig'];a22_0x33bc=function(){return _0x134835;};return a22_0x33bc();}const a22_0x33725e=a22_0x404b;(function(_0x126e80,_0x327fce){const _0x113fc7=a22_0x404b,_0xfe9e97=_0x126e80();while(!![]){try{const _0x219e56=-parseInt(_0x113fc7(0x1eb))/0x1*(parseInt(_0x113fc7(0x1e1))/0x2)+-parseInt(_0x113fc7(0x1ca))/0x3+parseInt(_0x113fc7(0x1e4))/0x4+parseInt(_0x113fc7(0x1de))/0x5*(-parseInt(_0x113fc7(0x1ee))/0x6)+-parseInt(_0x113fc7(0x1d9))/0x7*(-parseInt(_0x113fc7(0x1d8))/0x8)+-parseInt(_0x113fc7(0x1dd))/0x9*(-parseInt(_0x113fc7(0x1d0))/0xa)+parseInt(_0x113fc7(0x1ec))/0xb;if(_0x219e56===_0x327fce)break;else _0xfe9e97['push'](_0xfe9e97['shift']());}catch(_0x311418){_0xfe9e97['push'](_0xfe9e97['shift']());}}}(a22_0x33bc,0x3cef8));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a22_0x404b(_0x5ed9e1,_0x34329a){_0x5ed9e1=_0x5ed9e1-0x1c9;const _0x33bcb7=a22_0x33bc();let _0x404be6=_0x33bcb7[_0x5ed9e1];return _0x404be6;}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x4e6008){const _0x2c8831=a22_0x404b,_0x6d9576=_0x4e6008[_0x2c8831(0x1e3)][0x0]?.['trim']();if(!_0x6d9576)throw CliErrors['validation']('Missing\x20app\x20name.',_0x2c8831(0x1cf)+CLI_BIN_NAME+_0x2c8831(0x1d4));}async function execute(_0x414a91){const _0x368832=a22_0x404b,_0x3b010b=_0x414a91[_0x368832(0x1e3)][0x0]?.[_0x368832(0x1d1)]();if(!_0x3b010b)throw CliErrors['validation'](_0x368832(0x1d7),_0x368832(0x1cf)+CLI_BIN_NAME+_0x368832(0x1d4));const _0x49e2e5=_0x414a91['bool'](_0x368832(0x1f0)),{config:_0x573c06,layers:_0x2ef4ee}=readRawConfigWithLayers(),_0x585f93=_0x573c06[_0x368832(0x1e8)]??{};if(!_0x585f93[_0x3b010b])throw CliErrors['validation'](_0x368832(0x1e5)+_0x3b010b+_0x368832(0x1f1));const _0x8e9ad7=_0x2ef4ee[_0x368832(0x1e6)][_0x368832(0x1e8)]&&typeof _0x2ef4ee[_0x368832(0x1e6)]['apps']===_0x368832(0x1ea)?_0x2ef4ee[_0x368832(0x1e6)]['apps']:{},_0x44f64a=_0x2ef4ee[_0x368832(0x1c9)][_0x368832(0x1e8)]&&typeof _0x2ef4ee[_0x368832(0x1c9)]['apps']===_0x368832(0x1ea)?_0x2ef4ee['projectConfig']['apps']:{},_0x379096=appDefinedIn(_0x3b010b,_0x8e9ad7,_0x44f64a,_0x2ef4ee[_0x368832(0x1c9)][_0x368832(0x1ef)]===![]),_0x3a5837=resolveAppScopeForWrite(_0x3b010b,_0x49e2e5,_0x2ef4ee),_0x5df08f={'global':_0x3a5837===_0x368832(0x1f0)},_0x359d3c=readConfig(_0x5df08f),_0x2b6409=_0x359d3c[_0x368832(0x1e8)];if(!_0x2b6409||!_0x2b6409[_0x3b010b])throw CliErrors[_0x368832(0x1da)](_0x368832(0x1e5)+_0x3b010b+_0x368832(0x1f1));delete _0x2b6409[_0x3b010b];let _0xdf53df='';if(_0x359d3c[_0x368832(0x1dc)]===_0x3b010b){const _0x34b569=Object[_0x368832(0x1d6)](_0x2b6409);_0x359d3c[_0x368832(0x1dc)]=_0x34b569[_0x368832(0x1cd)]>0x0?_0x34b569[0x0]:undefined,_0x359d3c[_0x368832(0x1dc)]?_0xdf53df=_0x368832(0x1cb)+_0x359d3c[_0x368832(0x1dc)]+'\x22.':delete _0x359d3c['defaultApp'];}Object[_0x368832(0x1d6)](_0x2b6409)[_0x368832(0x1cd)]===0x0&&(delete _0x359d3c[_0x368832(0x1e8)],delete _0x359d3c[_0x368832(0x1dc)]);writeConfig(_0x359d3c,_0x5df08f);const _0x2fe6b5=_0x379096===_0x368832(0x1cc)?'\x20Note:\x20app\x20\x22'+_0x3b010b+_0x368832(0x1e0)+(_0x3a5837===_0x368832(0x1db)?'global':_0x368832(0x1db))+_0x368832(0x1d3):'';return{'ok':!![],'message':_0x368832(0x1d2)+_0x3b010b+'\x22'+scopeLabel(_0x5df08f)+'.'+_0xdf53df+_0x2fe6b5};}export const appRemoveDefinition={'service':a22_0x33725e(0x1ed),'command':a22_0x33725e(0x1e9),'description':a22_0x33725e(0x1df),'risk':a22_0x33725e(0x1e7),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x33725e(0x1d5),'description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':[{'name':a22_0x33725e(0x1f0),'type':a22_0x33725e(0x1e2),'description':a22_0x33725e(0x1ce),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x525daf=a22_0x4238;(function(_0x175ada,_0x434341){const _0x48e046=a22_0x4238,_0x5bfd5b=_0x175ada();while(!![]){try{const _0x54b126=-parseInt(_0x48e046(0x81))/0x1*(-parseInt(_0x48e046(0x75))/0x2)+-parseInt(_0x48e046(0x91))/0x3*(parseInt(_0x48e046(0x7f))/0x4)+parseInt(_0x48e046(0x80))/0x5+-parseInt(_0x48e046(0x78))/0x6*(parseInt(_0x48e046(0x95))/0x7)+-parseInt(_0x48e046(0x72))/0x8*(-parseInt(_0x48e046(0x83))/0x9)+parseInt(_0x48e046(0x97))/0xa*(-parseInt(_0x48e046(0x77))/0xb)+parseInt(_0x48e046(0x89))/0xc;if(_0x54b126===_0x434341)break;else _0x5bfd5b['push'](_0x5bfd5b['shift']());}catch(_0x47fe1f){_0x5bfd5b['push'](_0x5bfd5b['shift']());}}}(a22_0x2434,0xaee2c));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_0x4238(_0xbc09e2,_0x25116d){_0xbc09e2=_0xbc09e2-0x70;const _0x2434ad=a22_0x2434();let _0x42384d=_0x2434ad[_0xbc09e2];return _0x42384d;}async function validateArgs(_0x52132f){const _0x2126d3=a22_0x4238,_0x1aeb2a=_0x52132f[_0x2126d3(0x84)][0x0]?.[_0x2126d3(0x82)]();if(!_0x1aeb2a)throw CliErrors[_0x2126d3(0x7a)](_0x2126d3(0x70),_0x2126d3(0x8f)+CLI_BIN_NAME+_0x2126d3(0x7e));}async function execute(_0x8cd9f8){const _0x5135e1=a22_0x4238,_0x485b9c=_0x8cd9f8['args'][0x0]?.[_0x5135e1(0x82)]();if(!_0x485b9c)throw CliErrors[_0x5135e1(0x7a)]('Missing\x20app\x20name.',_0x5135e1(0x8f)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');const _0x1c15d9=_0x8cd9f8[_0x5135e1(0x7b)](_0x5135e1(0x93)),{config:_0x3e9cae,layers:_0x3b5178}=readRawConfigWithLayers(),_0x213226=_0x3e9cae['apps']??{};if(!_0x213226[_0x485b9c])throw CliErrors[_0x5135e1(0x7a)](_0x5135e1(0x86)+_0x485b9c+_0x5135e1(0x8a));const _0x2750f6=_0x3b5178[_0x5135e1(0x8c)][_0x5135e1(0x73)]&&typeof _0x3b5178[_0x5135e1(0x8c)]['apps']==='object'?_0x3b5178[_0x5135e1(0x8c)]['apps']:{},_0x50299d=_0x3b5178['projectConfig'][_0x5135e1(0x73)]&&typeof _0x3b5178['projectConfig'][_0x5135e1(0x73)]===_0x5135e1(0x96)?_0x3b5178[_0x5135e1(0x7d)][_0x5135e1(0x73)]:{},_0x115696=appDefinedIn(_0x485b9c,_0x2750f6,_0x50299d,_0x3b5178[_0x5135e1(0x7d)]['inherit']===![]),_0xbf9598=resolveAppScopeForWrite(_0x485b9c,_0x1c15d9,_0x3b5178),_0x3d3271={'global':_0xbf9598===_0x5135e1(0x93)},_0x28a40c=readConfig(_0x3d3271),_0x375814=_0x28a40c['apps'];if(!_0x375814||!_0x375814[_0x485b9c])throw CliErrors[_0x5135e1(0x7a)](_0x5135e1(0x86)+_0x485b9c+_0x5135e1(0x8a));delete _0x375814[_0x485b9c];let _0x260a84='';if(_0x28a40c[_0x5135e1(0x8e)]===_0x485b9c){const _0x386f1c=Object[_0x5135e1(0x88)](_0x375814);_0x28a40c[_0x5135e1(0x8e)]=_0x386f1c[_0x5135e1(0x79)]>0x0?_0x386f1c[0x0]:undefined,_0x28a40c[_0x5135e1(0x8e)]?_0x260a84='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x28a40c[_0x5135e1(0x8e)]+'\x22.':delete _0x28a40c[_0x5135e1(0x8e)];}Object[_0x5135e1(0x88)](_0x375814)[_0x5135e1(0x79)]===0x0&&(delete _0x28a40c['apps'],delete _0x28a40c[_0x5135e1(0x8e)]);writeConfig(_0x28a40c,_0x3d3271);const _0x3f2ba9=_0x115696===_0x5135e1(0x8d)?_0x5135e1(0x8b)+_0x485b9c+_0x5135e1(0x76)+(_0xbf9598==='project'?_0x5135e1(0x93):_0x5135e1(0x74))+_0x5135e1(0x7c):'';return{'ok':!![],'message':_0x5135e1(0x94)+_0x485b9c+'\x22'+scopeLabel(_0x3d3271)+'.'+_0x260a84+_0x3f2ba9};}function a22_0x2434(){const _0xd1470c=['App\x20profile\x20name\x20to\x20remove','global','Removed\x20app\x20\x22','2262631wvGTjX','object','580extbui','Missing\x20app\x20name.','app','9010280EnOWLd','apps','project','43062OOsLqS','\x22\x20still\x20defined\x20in\x20','213114cmJHon','6WwGhbK','length','validation','bool','\x20config.','projectConfig','\x20app\x20remove\x20<name>\x20[--global]','81028JfcFtc','2054880htzgnf','27Ojffxr','trim','9fqRzna','args','Use\x20global\x20config\x20scope','App\x20\x22','name','keys','4425252frZHwh','\x22\x20not\x20found.','\x20Note:\x20app\x20\x22','globalConfig','both','defaultApp','Usage:\x20','boolean','48qXkuyR'];a22_0x2434=function(){return _0xd1470c;};return a22_0x2434();}export const appRemoveDefinition={'service':a22_0x525daf(0x71),'command':'remove','description':'Remove\x20an\x20app\x20from\x20config','risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x525daf(0x87),'description':a22_0x525daf(0x92),'required':!![]}],'flags':[{'name':a22_0x525daf(0x93),'type':a22_0x525daf(0x90),'description':a22_0x525daf(0x85),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x4fce64,_0x504abe){const _0x508427=a23_0x2582,_0xc874f7=_0x4fce64();while(!![]){try{const _0x17c215=parseInt(_0x508427(0x16f))/0x1*(-parseInt(_0x508427(0x165))/0x2)+parseInt(_0x508427(0x157))/0x3+parseInt(_0x508427(0x168))/0x4*(-parseInt(_0x508427(0x160))/0x5)+parseInt(_0x508427(0x166))/0x6*(-parseInt(_0x508427(0x172))/0x7)+parseInt(_0x508427(0x163))/0x8+parseInt(_0x508427(0x16e))/0x9*(-parseInt(_0x508427(0x15b))/0xa)+-parseInt(_0x508427(0x16b))/0xb*(-parseInt(_0x508427(0x15c))/0xc);if(_0x17c215===_0x504abe)break;else _0xc874f7['push'](_0xc874f7['shift']());}catch(_0x2045d7){_0xc874f7['push'](_0xc874f7['shift']());}}}(a23_0x35e5,0xa5520));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x3b9f9d,_0x2ca009){const _0xe8823=a23_0x2582;if(!_0x2ca009)return;const _0x383778=_0x2ca009[_0xe8823(0x154)]&&typeof _0x2ca009['apps']===_0xe8823(0x16d)?_0x2ca009[_0xe8823(0x154)]:{},_0x1f473b=Object[_0xe8823(0x155)](_0x383778)[_0xe8823(0x152)]>0x0;for(const _0x285e41 of _0x3b9f9d){_0x285e41['isCurrent']=![];}const _0x4286bc=_0x2ca009['appCode']!=null?String(_0x2ca009[_0xe8823(0x15f)])[_0xe8823(0x153)]():'';if(_0x1f473b){const _0x697ca2=_0x2ca009[_0xe8823(0x15e)]??_0x2ca009[_0xe8823(0x167)];if(_0x697ca2)for(const _0x348a46 of _0x3b9f9d){_0x348a46[_0xe8823(0x15a)]===!![]&&_0x348a46[_0xe8823(0x171)]===_0x697ca2&&(_0x348a46[_0xe8823(0x16a)]=!![]);}for(const _0xa84c25 of _0x3b9f9d){if(_0xa84c25[_0xe8823(0x15a)]!==![])continue;if(_0x2ca009[_0xe8823(0x167)])continue;_0x4286bc&&String(_0xa84c25[_0xe8823(0x156)]??'')[_0xe8823(0x153)]()===_0x4286bc&&(_0xa84c25[_0xe8823(0x16a)]=!![]);}return;}if(!_0x4286bc)return;for(const _0x18c99d of _0x3b9f9d){String(_0x18c99d['appcode']??'')['trim']()===_0x4286bc&&(_0x18c99d[_0xe8823(0x16a)]=!![]);}}export function resolveAppScopeForWrite(_0x4db8d0,_0x271114,_0x5301ce){const _0x4f7548=a23_0x2582;if(_0x271114)return _0x4f7548(0x162);const _0x3dedc9=_0x5301ce[_0x4f7548(0x159)][_0x4f7548(0x154)]&&typeof _0x5301ce['projectConfig'][_0x4f7548(0x154)]==='object'?_0x5301ce['projectConfig']['apps']:{},_0x4f782b=_0x5301ce[_0x4f7548(0x164)][_0x4f7548(0x154)]&&typeof _0x5301ce[_0x4f7548(0x164)]['apps']===_0x4f7548(0x16d)?_0x5301ce[_0x4f7548(0x164)]['apps']:{};if(Object[_0x4f7548(0x169)]['hasOwnProperty']['call'](_0x3dedc9,_0x4db8d0))return'project';if(Object['prototype'][_0x4f7548(0x158)][_0x4f7548(0x16c)](_0x4f782b,_0x4db8d0))return'global';return _0x4f7548(0x170);}export function appDefinedIn(_0x228e4a,_0x35b4d7,_0x58918b,_0x12fbd9){const _0x448a94=a23_0x2582;if(_0x12fbd9)return Object[_0x448a94(0x169)][_0x448a94(0x158)][_0x448a94(0x16c)](_0x58918b,_0x228e4a)?'project':_0x448a94(0x162);const _0x112cb0=Object[_0x448a94(0x169)][_0x448a94(0x158)][_0x448a94(0x16c)](_0x35b4d7,_0x228e4a),_0xe2022d=Object[_0x448a94(0x169)][_0x448a94(0x158)][_0x448a94(0x16c)](_0x58918b,_0x228e4a);if(_0x112cb0&&_0xe2022d)return _0x448a94(0x15d);if(_0xe2022d)return _0x448a94(0x170);return _0x448a94(0x162);}export function resolveDefaultAppSource(_0x452c9f){const _0x18898d=a23_0x2582,_0x4a2df5=_0x452c9f[_0x18898d(0x159)]['apps']&&typeof _0x452c9f[_0x18898d(0x159)]['apps']===_0x18898d(0x16d)?_0x452c9f[_0x18898d(0x159)][_0x18898d(0x154)]:{};if(_0x18898d(0x167)in _0x452c9f['projectConfig'])return _0x18898d(0x170);if(Object['keys'](_0x4a2df5)['length']>0x0)return _0x18898d(0x170);if(_0x452c9f[_0x18898d(0x159)]['inherit']===![])return null;if(_0x452c9f[_0x18898d(0x164)][_0x18898d(0x167)])return'global';return null;}export function getConfigPath(_0x1d9df3={}){const _0x1d9e35=a23_0x2582,_0x40476b=_0x1d9df3[_0x1d9e35(0x162)]?'global':'project';return resolveWriteConfigPath(_0x40476b);}function a23_0x2582(_0x410245,_0x2ee31d){_0x410245=_0x410245-0x152;const _0x35e5de=a23_0x35e5();let _0x258258=_0x35e5de[_0x410245];return _0x258258;}export function readConfig(_0x323df7={}){return readConfigFile(getConfigPath(_0x323df7));}function a23_0x35e5(){const _0x2015ee=['isCurrent','10468986ejiWMN','call','object','49050lBwnUx','2oNgtGI','project','name','7dsDZxa','length','trim','apps','keys','appcode','2483397pgcZhV','hasOwnProperty','projectConfig','named','1630OtRUez','24XLPKrV','both','currentApp','appCode','5mQsIcy','\x20(global)','global','9648768iqmBwO','globalConfig','909774BwEeBv','3204852XGwRBm','defaultApp','3711716lDsFSX','prototype'];a23_0x35e5=function(){return _0x2015ee;};return a23_0x35e5();}export function writeConfig(_0x32ee69,_0x2e4184={}){writeConfigFile(getConfigPath(_0x2e4184),_0x32ee69);}export function scopeLabel(_0x4c560d){const _0x22f4a1=a23_0x2582;return _0x4c560d['global']?_0x22f4a1(0x161):'';}
1
+ (function(_0x235e93,_0x40e559){const _0x199515=a23_0x1823,_0x2c50f3=_0x235e93();while(!![]){try{const _0xb94132=-parseInt(_0x199515(0x1a9))/0x1*(parseInt(_0x199515(0x1b5))/0x2)+parseInt(_0x199515(0x1bb))/0x3+parseInt(_0x199515(0x1a2))/0x4*(parseInt(_0x199515(0x1bd))/0x5)+parseInt(_0x199515(0x1ae))/0x6+parseInt(_0x199515(0x1a8))/0x7*(parseInt(_0x199515(0x1b1))/0x8)+parseInt(_0x199515(0x1c0))/0x9*(parseInt(_0x199515(0x1b7))/0xa)+-parseInt(_0x199515(0x1b4))/0xb;if(_0xb94132===_0x40e559)break;else _0x2c50f3['push'](_0x2c50f3['shift']());}catch(_0x598e0c){_0x2c50f3['push'](_0x2c50f3['shift']());}}}(a23_0x4dd1,0x63eed));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x1d5d28,_0xfbc214){const _0x5f3153=a23_0x1823;if(!_0xfbc214)return;const _0x3f4691=_0xfbc214[_0x5f3153(0x1a4)]&&typeof _0xfbc214[_0x5f3153(0x1a4)]===_0x5f3153(0x1bf)?_0xfbc214['apps']:{},_0x5c9567=Object[_0x5f3153(0x1bc)](_0x3f4691)[_0x5f3153(0x1ac)]>0x0;for(const _0x57e53c of _0x1d5d28){_0x57e53c[_0x5f3153(0x1b6)]=![];}const _0x1c7650=_0xfbc214[_0x5f3153(0x1aa)]!=null?String(_0xfbc214['appCode'])['trim']():'';if(_0x5c9567){const _0x5db9d8=_0xfbc214[_0x5f3153(0x1ab)]??_0xfbc214[_0x5f3153(0x1b3)];if(_0x5db9d8)for(const _0x5aa768 of _0x1d5d28){_0x5aa768['named']===!![]&&_0x5aa768['name']===_0x5db9d8&&(_0x5aa768[_0x5f3153(0x1b6)]=!![]);}for(const _0x59b51e of _0x1d5d28){if(_0x59b51e[_0x5f3153(0x1c1)]!==![])continue;if(_0xfbc214['defaultApp'])continue;_0x1c7650&&String(_0x59b51e[_0x5f3153(0x1a3)]??'')['trim']()===_0x1c7650&&(_0x59b51e['isCurrent']=!![]);}return;}if(!_0x1c7650)return;for(const _0x39d713 of _0x1d5d28){String(_0x39d713[_0x5f3153(0x1a3)]??'')[_0x5f3153(0x1b9)]()===_0x1c7650&&(_0x39d713[_0x5f3153(0x1b6)]=!![]);}}export function resolveAppScopeForWrite(_0x2650ab,_0x16c809,_0x39c353){const _0x1ddf75=a23_0x1823;if(_0x16c809)return'global';const _0x392371=_0x39c353[_0x1ddf75(0x1a7)][_0x1ddf75(0x1a4)]&&typeof _0x39c353[_0x1ddf75(0x1a7)][_0x1ddf75(0x1a4)]===_0x1ddf75(0x1bf)?_0x39c353[_0x1ddf75(0x1a7)][_0x1ddf75(0x1a4)]:{},_0x5921d4=_0x39c353[_0x1ddf75(0x1b0)][_0x1ddf75(0x1a4)]&&typeof _0x39c353[_0x1ddf75(0x1b0)][_0x1ddf75(0x1a4)]===_0x1ddf75(0x1bf)?_0x39c353[_0x1ddf75(0x1b0)][_0x1ddf75(0x1a4)]:{};if(Object[_0x1ddf75(0x1a6)][_0x1ddf75(0x1af)][_0x1ddf75(0x1a5)](_0x392371,_0x2650ab))return _0x1ddf75(0x1ba);if(Object[_0x1ddf75(0x1a6)][_0x1ddf75(0x1af)]['call'](_0x5921d4,_0x2650ab))return _0x1ddf75(0x1be);return _0x1ddf75(0x1ba);}export function appDefinedIn(_0xf45baa,_0x2e4963,_0x201440,_0x819980){const _0x5ed58b=a23_0x1823;if(_0x819980)return Object[_0x5ed58b(0x1a6)][_0x5ed58b(0x1af)][_0x5ed58b(0x1a5)](_0x201440,_0xf45baa)?_0x5ed58b(0x1ba):'global';const _0x200009=Object[_0x5ed58b(0x1a6)][_0x5ed58b(0x1af)][_0x5ed58b(0x1a5)](_0x2e4963,_0xf45baa),_0x12a8db=Object['prototype'][_0x5ed58b(0x1af)][_0x5ed58b(0x1a5)](_0x201440,_0xf45baa);if(_0x200009&&_0x12a8db)return _0x5ed58b(0x1b8);if(_0x12a8db)return _0x5ed58b(0x1ba);return _0x5ed58b(0x1be);}export function resolveDefaultAppSource(_0x4e0e5d){const _0x29ad26=a23_0x1823,_0x4be740=_0x4e0e5d['projectConfig'][_0x29ad26(0x1a4)]&&typeof _0x4e0e5d['projectConfig'][_0x29ad26(0x1a4)]==='object'?_0x4e0e5d[_0x29ad26(0x1a7)][_0x29ad26(0x1a4)]:{};if(_0x29ad26(0x1b3)in _0x4e0e5d[_0x29ad26(0x1a7)])return'project';if(Object[_0x29ad26(0x1bc)](_0x4be740)[_0x29ad26(0x1ac)]>0x0)return _0x29ad26(0x1ba);if(_0x4e0e5d[_0x29ad26(0x1a7)][_0x29ad26(0x1ad)]===![])return null;if(_0x4e0e5d[_0x29ad26(0x1b0)]['defaultApp'])return _0x29ad26(0x1be);return null;}export function getConfigPath(_0x3f2207={}){const _0x3f04ad=_0x3f2207['global']?'global':'project';return resolveWriteConfigPath(_0x3f04ad);}function a23_0x1823(_0x3a756b,_0x5acd8b){_0x3a756b=_0x3a756b-0x1a2;const _0x4dd151=a23_0x4dd1();let _0x182377=_0x4dd151[_0x3a756b];return _0x182377;}function a23_0x4dd1(){const _0x7d723b=['projectConfig','654766cRvMjw','1707SpyNUb','appCode','currentApp','length','inherit','3507684bhlVAM','hasOwnProperty','globalConfig','8ZQrLXJ','\x20(global)','defaultApp','8057720zLAjLH','834NewjYA','isCurrent','4490JULlRR','both','trim','project','1055913ZVuMFJ','keys','3837080MKCqIE','global','object','1125WOYPyA','named','4pVlJSR','appcode','apps','call','prototype'];a23_0x4dd1=function(){return _0x7d723b;};return a23_0x4dd1();}export function readConfig(_0x6a8b00={}){return readConfigFile(getConfigPath(_0x6a8b00));}export function writeConfig(_0x55512a,_0x56f0f8={}){writeConfigFile(getConfigPath(_0x56f0f8),_0x55512a);}export function scopeLabel(_0x105838){const _0x19a91b=a23_0x1823;return _0x105838[_0x19a91b(0x1be)]?_0x19a91b(0x1b2):'';}
@@ -1 +1 @@
1
- const a24_0x1ce4a5=a24_0x428e;(function(_0xdd5aa1,_0x5b1273){const _0x2a7893=a24_0x428e,_0x137d90=_0xdd5aa1();while(!![]){try{const _0x43a245=-parseInt(_0x2a7893(0xef))/0x1*(-parseInt(_0x2a7893(0xf7))/0x2)+parseInt(_0x2a7893(0xec))/0x3*(-parseInt(_0x2a7893(0x107))/0x4)+-parseInt(_0x2a7893(0x111))/0x5+parseInt(_0x2a7893(0x105))/0x6+-parseInt(_0x2a7893(0x10d))/0x7*(parseInt(_0x2a7893(0xff))/0x8)+-parseInt(_0x2a7893(0x10c))/0x9*(parseInt(_0x2a7893(0x101))/0xa)+-parseInt(_0x2a7893(0x109))/0xb*(-parseInt(_0x2a7893(0x10b))/0xc);if(_0x43a245===_0x5b1273)break;else _0x137d90['push'](_0x137d90['shift']());}catch(_0x5083e8){_0x137d90['push'](_0x137d90['shift']());}}}(a24_0x3b5e,0x95a94));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a24_0x3b5e(){const _0x113112=['\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','name','app','6402492yZHXHS','\x22\x20not\x20found.','1230708OqNUTs','appcode','4258562fJCdiC','object','12OQniGL','8587224pAhwiD','1617phdRGE','keys','Missing\x20app\x20name.','defaultApp','195060zKUWGO','apps','projectPath','args','global','boolean','6eJODBQ','Usage:\x20','prototype','871933IwMHLz','App\x20\x22','bool','\x22\x20(appcode:\x20','Use\x20global\x20config\x20scope','\x0aNote:\x20\x22','Default\x20app\x20set\x20to\x20\x22','trim','2bLWWsQ','\x20--appcode\x20<code>`\x20first.','Use\x20`','globalConfig','validation','use','\x20app\x20use\x20<name>\x20[--global]','Available:\x20','3624WMiDxx','call','10FqyeJI'];a24_0x3b5e=function(){return _0x113112;};return a24_0x3b5e();}import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x5d0a02){const _0x532c12=a24_0x428e,_0x3edd04=_0x5d0a02[_0x532c12(0x114)][0x0]?.[_0x532c12(0xf6)]();if(!_0x3edd04)throw CliErrors['validation'](_0x532c12(0x10f),_0x532c12(0xed)+CLI_BIN_NAME+_0x532c12(0xfd));}function a24_0x428e(_0x313970,_0x1fa779){_0x313970=_0x313970-0xec;const _0x3b5ef0=a24_0x3b5e();let _0x428e03=_0x3b5ef0[_0x313970];return _0x428e03;}async function execute(_0x42533b){const _0x38103c=a24_0x428e,_0x5078c3=_0x42533b['args'][0x0]?.[_0x38103c(0xf6)]();if(!_0x5078c3)throw CliErrors[_0x38103c(0xfb)](_0x38103c(0x10f),_0x38103c(0xed)+CLI_BIN_NAME+_0x38103c(0xfd));const _0x395e66=_0x42533b[_0x38103c(0xf1)](_0x38103c(0x115)),{config:_0x564ead,layers:_0x3f189f}=readRawConfigWithLayers(),_0x523a06=_0x564ead[_0x38103c(0x112)]??{},_0x4098d5=_0x3f189f[_0x38103c(0xfa)][_0x38103c(0x112)]&&typeof _0x3f189f[_0x38103c(0xfa)]['apps']===_0x38103c(0x10a)?_0x3f189f[_0x38103c(0xfa)][_0x38103c(0x112)]:{},_0xef1498={..._0x4098d5,..._0x523a06};if(!_0xef1498[_0x5078c3]){const _0x106374=Object[_0x38103c(0x10e)](_0xef1498),_0x8604de=_0x106374['length']===0x0?_0x38103c(0xf9)+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x5078c3+_0x38103c(0xf8):_0x38103c(0xfe)+_0x106374['join'](',\x20');throw CliErrors[_0x38103c(0xfb)](_0x38103c(0xf0)+_0x5078c3+_0x38103c(0x106),_0x8604de);}let _0x419735,_0x1e423a='';if(_0x395e66)_0x419735={'global':!![]};else{const _0x209504=isInProject()&&!!_0x3f189f[_0x38103c(0x113)];_0x419735={'global':!_0x209504};}const _0x5c4948=readConfig(_0x419735);_0x5c4948[_0x38103c(0x110)]=_0x5078c3;if(!_0x419735['global']){const _0x5a3a81=_0x5c4948['apps']&&typeof _0x5c4948[_0x38103c(0x112)]===_0x38103c(0x10a)?_0x5c4948[_0x38103c(0x112)]:{};!Object[_0x38103c(0xee)]['hasOwnProperty'][_0x38103c(0x100)](_0x5a3a81,_0x5078c3)&&(_0x5c4948[_0x38103c(0x112)]={..._0x5a3a81,[_0x5078c3]:_0xef1498[_0x5078c3]},_0x1e423a=_0x38103c(0xf4)+_0x5078c3+_0x38103c(0x102));}return writeConfig(_0x5c4948,_0x419735),{'ok':!![],'message':_0x38103c(0xf5)+_0x5078c3+_0x38103c(0xf2)+_0xef1498[_0x5078c3][_0x38103c(0x108)]+')'+scopeLabel(_0x419735)+_0x1e423a};}export const appUseDefinition={'service':a24_0x1ce4a5(0x104),'command':a24_0x1ce4a5(0xfc),'description':'Switch\x20the\x20default\x20app','risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x1ce4a5(0x103),'description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':a24_0x1ce4a5(0x115),'type':a24_0x1ce4a5(0x116),'description':a24_0x1ce4a5(0xf3),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x1f4cfb=a24_0x4024;(function(_0x298e11,_0x571020){const _0x3827e6=a24_0x4024,_0x2fda7a=_0x298e11();while(!![]){try{const _0x5b8bd1=-parseInt(_0x3827e6(0xd0))/0x1+parseInt(_0x3827e6(0xd1))/0x2+-parseInt(_0x3827e6(0xee))/0x3+parseInt(_0x3827e6(0xf0))/0x4*(parseInt(_0x3827e6(0xe4))/0x5)+parseInt(_0x3827e6(0xca))/0x6+parseInt(_0x3827e6(0xf3))/0x7*(parseInt(_0x3827e6(0xd6))/0x8)+-parseInt(_0x3827e6(0xe6))/0x9*(parseInt(_0x3827e6(0xdc))/0xa);if(_0x5b8bd1===_0x571020)break;else _0x2fda7a['push'](_0x2fda7a['shift']());}catch(_0x9f0745){_0x2fda7a['push'](_0x2fda7a['shift']());}}}(a24_0x2dc2,0x65990));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a24_0x2dc2(){const _0x2f300e=['Usage:\x20','1192Lmhmdj','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','globalConfig','prototype','call','appcode','60hmaWlE','hasOwnProperty','args','Use\x20`','App\x20profile\x20name\x20to\x20activate','\x22\x20not\x20found.','\x0aNote:\x20\x22','app','5vMlEoU','validation','288729YZiZuJ','keys','projectPath','defaultApp','Available:\x20','global','\x22\x20(appcode:\x20','\x20app\x20use\x20<name>\x20[--global]','1230966CkcZUE','boolean','2263732mXwDkA','apps','bool','11151sUpvkB','3248058ZdQwCZ','Default\x20app\x20set\x20to\x20\x22','trim','object','Use\x20global\x20config\x20scope','join','651085ToPjLg','650808xxxPXO','length','Missing\x20app\x20name.','use'];a24_0x2dc2=function(){return _0x2f300e;};return a24_0x2dc2();}import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x2f67e7){const _0x33504b=a24_0x4024,_0x312931=_0x2f67e7[_0x33504b(0xde)][0x0]?.[_0x33504b(0xcc)]();if(!_0x312931)throw CliErrors[_0x33504b(0xe5)](_0x33504b(0xd3),'Usage:\x20'+CLI_BIN_NAME+_0x33504b(0xed));}async function execute(_0x4cb2b1){const _0x36f65f=a24_0x4024,_0x20e207=_0x4cb2b1[_0x36f65f(0xde)][0x0]?.['trim']();if(!_0x20e207)throw CliErrors[_0x36f65f(0xe5)]('Missing\x20app\x20name.',_0x36f65f(0xd5)+CLI_BIN_NAME+_0x36f65f(0xed));const _0x4b1857=_0x4cb2b1[_0x36f65f(0xf2)](_0x36f65f(0xeb)),{config:_0x17e06c,layers:_0x2abcfc}=readRawConfigWithLayers(),_0x28cd0a=_0x17e06c[_0x36f65f(0xf1)]??{},_0x2d8691=_0x2abcfc['globalConfig'][_0x36f65f(0xf1)]&&typeof _0x2abcfc['globalConfig'][_0x36f65f(0xf1)]==='object'?_0x2abcfc[_0x36f65f(0xd8)][_0x36f65f(0xf1)]:{},_0xcce455={..._0x2d8691,..._0x28cd0a};if(!_0xcce455[_0x20e207]){const _0x242328=Object[_0x36f65f(0xe7)](_0xcce455),_0x3fa380=_0x242328[_0x36f65f(0xd2)]===0x0?_0x36f65f(0xdf)+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x20e207+'\x20--appcode\x20<code>`\x20first.':_0x36f65f(0xea)+_0x242328[_0x36f65f(0xcf)](',\x20');throw CliErrors[_0x36f65f(0xe5)]('App\x20\x22'+_0x20e207+_0x36f65f(0xe1),_0x3fa380);}let _0x1eb116,_0x18a140='';if(_0x4b1857)_0x1eb116={'global':!![]};else{const _0x1caa90=isInProject()&&!!_0x2abcfc[_0x36f65f(0xe8)];_0x1eb116={'global':!_0x1caa90};}const _0xc0e282=readConfig(_0x1eb116);_0xc0e282[_0x36f65f(0xe9)]=_0x20e207;if(!_0x1eb116[_0x36f65f(0xeb)]){const _0x2a29af=_0xc0e282[_0x36f65f(0xf1)]&&typeof _0xc0e282[_0x36f65f(0xf1)]===_0x36f65f(0xcd)?_0xc0e282['apps']:{};!Object[_0x36f65f(0xd9)][_0x36f65f(0xdd)][_0x36f65f(0xda)](_0x2a29af,_0x20e207)&&(_0xc0e282[_0x36f65f(0xf1)]={..._0x2a29af,[_0x20e207]:_0xcce455[_0x20e207]},_0x18a140=_0x36f65f(0xe2)+_0x20e207+_0x36f65f(0xd7));}return writeConfig(_0xc0e282,_0x1eb116),{'ok':!![],'message':_0x36f65f(0xcb)+_0x20e207+_0x36f65f(0xec)+_0xcce455[_0x20e207][_0x36f65f(0xdb)]+')'+scopeLabel(_0x1eb116)+_0x18a140};}function a24_0x4024(_0x56e10d,_0x58ae73){_0x56e10d=_0x56e10d-0xca;const _0x2dc22c=a24_0x2dc2();let _0x40241e=_0x2dc22c[_0x56e10d];return _0x40241e;}export const appUseDefinition={'service':a24_0x1f4cfb(0xe3),'command':a24_0x1f4cfb(0xd4),'description':'Switch\x20the\x20default\x20app','risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a24_0x1f4cfb(0xe0),'required':!![]}],'flags':[{'name':a24_0x1f4cfb(0xeb),'type':a24_0x1f4cfb(0xef),'description':a24_0x1f4cfb(0xce),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- function a25_0x3db2(){const _0x28621b=['../../auth/auth-server-ui.js','logout','5066235OzboFX','auth','31938zEdcOm','nonInteractive','438496JkGnlS','yes','20UMEigs','Clear\x20login\x20session','3EGcTxO','login','boolean','log','1180265EoMtNY','301oxJIuI','4zZmALA','Login\x20via\x20browser','262534xBuJcf','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','write','6506621DoZjEs','1253840aiPsAp'];a25_0x3db2=function(){return _0x28621b;};return a25_0x3db2();}const a25_0x1e4a51=a25_0x4204;(function(_0x40cd3b,_0x596d7e){const _0x2ed1d6=a25_0x4204,_0x22dc9e=_0x40cd3b();while(!![]){try{const _0x583090=parseInt(_0x2ed1d6(0x101))/0x1+-parseInt(_0x2ed1d6(0xf6))/0x2*(parseInt(_0x2ed1d6(0x105))/0x3)+parseInt(_0x2ed1d6(0x10b))/0x4*(-parseInt(_0x2ed1d6(0x109))/0x5)+-parseInt(_0x2ed1d6(0xff))/0x6*(parseInt(_0x2ed1d6(0x10a))/0x7)+-parseInt(_0x2ed1d6(0xfa))/0x8+-parseInt(_0x2ed1d6(0xfd))/0x9+-parseInt(_0x2ed1d6(0x103))/0xa*(-parseInt(_0x2ed1d6(0xf9))/0xb);if(_0x583090===_0x596d7e)break;else _0x22dc9e['push'](_0x22dc9e['shift']());}catch(_0x310fa9){_0x22dc9e['push'](_0x22dc9e['shift']());}}}(a25_0x3db2,0x4aa00));import{unlinkSync,existsSync}from'node:fs';function a25_0x4204(_0x20bbe0,_0x4d037b){_0x20bbe0=_0x20bbe0-0xf5;const _0x3db2cc=a25_0x3db2();let _0x4204c7=_0x3db2cc[_0x20bbe0];return _0x4204c7;}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x1e4a51(0xfe),'command':a25_0x1e4a51(0x106),'description':a25_0x1e4a51(0xf5),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'yes','type':a25_0x1e4a51(0x107),'description':a25_0x1e4a51(0xf7),'default':![]}],async 'execute'(_0x1b8063){const _0x2d17eb=a25_0x1e4a51,{runAuthServer:_0x1e2c9f}=await import(_0x2d17eb(0xfb));return await _0x1e2c9f({'autoYes':_0x1b8063['bool'](_0x2d17eb(0x102)),'nonInteractive':_0x1b8063[_0x2d17eb(0x100)]}),{'ok':!![]};}},{'service':'auth','command':a25_0x1e4a51(0xfc),'description':a25_0x1e4a51(0x104),'risk':a25_0x1e4a51(0xf8),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0xcf47e4){const _0x2ea3d6=a25_0x1e4a51;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x2ea3d6(0x108)]('✓\x20Logged\x20out')):console[_0x2ea3d6(0x108)]('!\x20Not\x20logged\x20in'),{'ok':!![]};}}];
1
+ const a25_0x3c0070=a25_0x3106;function a25_0x4579(){const _0x57fd06=['!\x20Not\x20logged\x20in','../../auth/auth-server-ui.js','6VbPmwz','10KMtehX','nonInteractive','bool','7222327XKXNgR','yes','7606379iugpRz','21maZXWX','215734zYGusJ','auth','436YEDMGI','✓\x20Logged\x20out','4333428rrNWph','write','787309KfZRXo','6405960twMmSa','40445xbeedp','login','logout','Login\x20via\x20browser'];a25_0x4579=function(){return _0x57fd06;};return a25_0x4579();}(function(_0x342355,_0x2b99fe){const _0x494f84=a25_0x3106,_0x4fd444=_0x342355();while(!![]){try{const _0x9ee131=parseInt(_0x494f84(0x1be))/0x1+parseInt(_0x494f84(0x1b8))/0x2*(-parseInt(_0x494f84(0x1b7))/0x3)+-parseInt(_0x494f84(0x1ba))/0x4*(parseInt(_0x494f84(0x1c0))/0x5)+parseInt(_0x494f84(0x1c6))/0x6*(parseInt(_0x494f84(0x1b4))/0x7)+-parseInt(_0x494f84(0x1bf))/0x8+parseInt(_0x494f84(0x1bc))/0x9+parseInt(_0x494f84(0x1c7))/0xa*(parseInt(_0x494f84(0x1b6))/0xb);if(_0x9ee131===_0x2b99fe)break;else _0x4fd444['push'](_0x4fd444['shift']());}catch(_0x3ddcc7){_0x4fd444['push'](_0x4fd444['shift']());}}}(a25_0x4579,0x87628));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';function a25_0x3106(_0x32b0d9,_0x547888){_0x32b0d9=_0x32b0d9-0x1b4;const _0x457971=a25_0x4579();let _0x310678=_0x457971[_0x32b0d9];return _0x310678;}export const authDefinitions=[{'service':a25_0x3c0070(0x1b9),'command':a25_0x3c0070(0x1c1),'description':a25_0x3c0070(0x1c3),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'yes','type':'boolean','description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0xb2d98d){const _0x55ce77=a25_0x3c0070,{runAuthServer:_0x43c583}=await import(_0x55ce77(0x1c5));return await _0x43c583({'autoYes':_0xb2d98d[_0x55ce77(0x1c9)](_0x55ce77(0x1b5)),'nonInteractive':_0xb2d98d[_0x55ce77(0x1c8)]}),{'ok':!![]};}},{'service':a25_0x3c0070(0x1b9),'command':a25_0x3c0070(0x1c2),'description':'Clear\x20login\x20session','risk':a25_0x3c0070(0x1bd),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x512611){const _0x59baa3=a25_0x3c0070;return existsSync(cookieFile)?(unlinkSync(cookieFile),console['log'](_0x59baa3(0x1bb))):console['log'](_0x59baa3(0x1c4)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- function a26_0x30f0(){const _0x4b7e7e=['HOOK','Created\x20','apiDir','functionNode','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','Select\x20operation\x20type:','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','type','validation','File\x20already\x20exists:\x20','Available\x20aliases:\x20','UNKNOWN','write','code','Select\x20dataset:','TODO:\x20add\x20script\x20description','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','No\x20operation\x20types\x20found\x20for\x20dataset\x20','Alias\x20\x22','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','before','nonInteractive','after','Script\x20type','388983wgWVcq','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','4837oWMRXm','utf8','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Invalid\x20function\x20name\x20\x22','12JPNygC','Operation\x20type\x20(HOOK\x20only)','string','1196424YpwRiR','trim','name','\x22\x20not\x20found\x20for\x20dataset\x20','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','635162dKzqFV','\x0a\x20*\x20[触发节点]\x20','join','Script\x20description','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','COMMON','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','length','includes','function-node','datasetcode','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','scriptsRootDir','No\x20datasets\x20found\x20for\x20this\x20app.','119038LSqJrh','keys','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','.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','\x22\x20not\x20found.\x20','operation-type','\x20api\x20pull`\x20to\x20refresh.','tableName','map','ENDPOINT','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','alias','stderr','1303010RdmfaN','description','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','\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','1986pEVLXj','\x22.\x20','.js','stdin','operationType','HOOK\x20requires\x20alias/operation/node\x20options.','find','Operation\x20type\x20\x22','Available:\x20','appCode','1178487iHxAkK','datasetCode','create','str','Trigger\x20node\x20(HOOK\x20only)'];a26_0x30f0=function(){return _0x4b7e7e;};return a26_0x30f0();}const a26_0x40bf71=a26_0xac7f;(function(_0x283678,_0x1cdb28){const _0xf7166d=a26_0xac7f,_0x1244d1=_0x283678();while(!![]){try{const _0x36f87b=-parseInt(_0xf7166d(0xd2))/0x1+parseInt(_0xf7166d(0x11a))/0x2+parseInt(_0xf7166d(0x10b))/0x3*(parseInt(_0xf7166d(0x112))/0x4)+-parseInt(_0xf7166d(0xdf))/0x5+parseInt(_0xf7166d(0xe3))/0x6*(parseInt(_0xf7166d(0x10e))/0x7)+-parseInt(_0xf7166d(0x115))/0x8+-parseInt(_0xf7166d(0xed))/0x9;if(_0x36f87b===_0x1cdb28)break;else _0x1244d1['push'](_0x1244d1['shift']());}catch(_0x2a1e06){_0x1244d1['push'](_0x1244d1['shift']());}}}(a26_0x30f0,0x432cd));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';function a26_0xac7f(_0x36887e,_0x2a6e70){_0x36887e=_0x36887e-0xce;const _0x30f039=a26_0x30f0();let _0xac7fa9=_0x30f039[_0x36887e];return _0xac7fa9;}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':'bff','command':a26_0x40bf71(0xef),'description':a26_0x40bf71(0xdc),'risk':a26_0x40bf71(0xfe),'flags':[{'name':a26_0x40bf71(0xf9),'type':a26_0x40bf71(0x114),'required':!![],'enum':[a26_0x40bf71(0x121),a26_0x40bf71(0xdb),a26_0x40bf71(0xf2)],'description':a26_0x40bf71(0x10a)},{'name':a26_0x40bf71(0x117),'type':a26_0x40bf71(0x114),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':a26_0x40bf71(0xe0),'type':a26_0x40bf71(0x114),'description':a26_0x40bf71(0x11d)},{'name':a26_0x40bf71(0xdd),'type':a26_0x40bf71(0x114),'description':a26_0x40bf71(0xf6)},{'name':a26_0x40bf71(0xce),'type':a26_0x40bf71(0x114),'description':a26_0x40bf71(0x11f)},{'name':a26_0x40bf71(0xd7),'type':a26_0x40bf71(0x114),'description':a26_0x40bf71(0x113)},{'name':a26_0x40bf71(0x125),'type':a26_0x40bf71(0x114),'description':a26_0x40bf71(0xf1),'enum':[a26_0x40bf71(0x107),a26_0x40bf71(0x109)]}],async 'validate'(_0xa039eb){const _0x2f14d3=a26_0x40bf71,_0x1afba1=_0xa039eb['str'](_0x2f14d3(0x117));if(!isValidBffFunctionName(_0x1afba1))throw CliErrors[_0x2f14d3(0xfa)](_0x2f14d3(0x111)+_0x1afba1+_0x2f14d3(0x105));},async 'execute'(_0x15bd77){const _0x153858=a26_0x40bf71,_0x2d68da=loadBffProjectConfig(_0x15bd77[_0x153858(0xec)]),_0x50df8c=_0x15bd77['str'](_0x153858(0xf9)),_0x3e89c9=_0x15bd77[_0x153858(0xf0)](_0x153858(0x117)),_0x351565=_0x15bd77[_0x153858(0xf0)](_0x153858(0xe0))||undefined,_0x1d7620=_0x50df8c==='HOOK'?await resolveHookOptions(_0x2d68da,_0x15bd77):undefined,_0x1c5cc8=buildFilePath(_0x2d68da,_0x50df8c,_0x3e89c9,_0x1d7620);if(await fileExists(_0x1c5cc8))throw CliErrors[_0x153858(0xfa)](_0x153858(0xfb)+_0x1c5cc8);await mkdir(dirname(_0x1c5cc8),{'recursive':!![]});const _0x4f540b=generateTemplate(_0x50df8c,_0x3e89c9,_0x15bd77[_0x153858(0xec)],_0x351565,_0x1d7620);await writeFile(_0x1c5cc8,_0x4f540b,_0x153858(0x10f));const _0x4b6133={'type':_0x50df8c,'name':_0x3e89c9,'path':_0x1c5cc8};if(_0x351565)_0x4b6133[_0x153858(0xe0)]=_0x351565;if(_0x1d7620){if(_0x1d7620['alias'])_0x4b6133['alias']=_0x1d7620[_0x153858(0xdd)];_0x4b6133[_0x153858(0xee)]=_0x1d7620[_0x153858(0xee)],_0x4b6133[_0x153858(0xe7)]=_0x1d7620[_0x153858(0xe7)],_0x4b6133[_0x153858(0xf5)]=_0x1d7620['functionNode'];}return{'ok':!![],'data':_0x4b6133,'message':_0x153858(0xf3)+_0x50df8c+'\x20function:\x20'+_0x3e89c9};}};async function resolveHookOptions(_0x3a3673,_0x9ceda8){const _0x471a9d=a26_0x40bf71,_0x453a2c=loadAliasMap(_0x9ceda8[_0x471a9d(0xf4)],undefined,resolveApiFilePath(_0x9ceda8[_0x471a9d(0xf4)],_0x9ceda8[_0x471a9d(0xec)])),_0x4457c4=_0x453a2c['length']>0x0;let _0xdd4784,_0x51979a,_0xf52bfd;const _0x5cfd24=_0x9ceda8[_0x471a9d(0xf0)](_0x471a9d(0xdd)),_0x594e62=_0x9ceda8['str'](_0x471a9d(0xce));if(_0x5cfd24){const _0x45ce1a=resolveAlias(_0x9ceda8[_0x471a9d(0xf4)],_0x5cfd24,undefined,resolveApiFilePath(_0x9ceda8[_0x471a9d(0xf4)],_0x9ceda8[_0x471a9d(0xec)]));if(!_0x45ce1a){const _0x4c63a9=_0x4457c4?_0x471a9d(0xfc)+_0x453a2c[_0x471a9d(0xda)](_0x233d10=>_0x233d10[_0x471a9d(0xdd)])[_0x471a9d(0x11c)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+_0x471a9d(0xe1);throw CliErrors[_0x471a9d(0xfa)](_0x471a9d(0x104)+_0x5cfd24+_0x471a9d(0xd6)+_0x4c63a9);}_0xdd4784=_0x5cfd24,_0x51979a=_0x45ce1a;}else{if(_0x594e62){_0x51979a=_0x594e62;const _0x48093e=_0x453a2c[_0x471a9d(0xe9)](_0x4da425=>_0x4da425[_0x471a9d(0xee)]===_0x594e62);_0xdd4784=_0x48093e?.[_0x471a9d(0xdd)];}else{if(_0x9ceda8[_0x471a9d(0x108)])throw CliErrors['validation'](_0x471a9d(0xd4));else{if(_0x4457c4){const _0x276bb6=_0x453a2c[_0x471a9d(0xda)](_0x1b8014=>_0x1b8014['alias']+'\x20('+_0x1b8014[_0x471a9d(0xd9)]+')'),_0x3b6467=await promptSelect(_0x471a9d(0x100),_0x276bb6),_0x2463ba=_0x453a2c[_0x3b6467];if(!_0x2463ba)throw CliErrors[_0x471a9d(0xfa)]('Invalid\x20dataset\x20selection.');_0xdd4784=_0x2463ba[_0x471a9d(0xdd)],_0x51979a=_0x2463ba[_0x471a9d(0xee)];}else{const _0x1394b4=await listDatasets(_0x9ceda8['appCode']);if(_0x1394b4[_0x471a9d(0x123)]===0x0)throw CliErrors[_0x471a9d(0xfa)](_0x471a9d(0xd1));const _0x5956e1=_0x1394b4[_0x471a9d(0xda)](_0x235c86=>_0x235c86['name']+'\x20['+(_0x235c86['source']??_0x471a9d(0xfd))+']\x20('+_0x235c86['code']+')'),_0x198a24=await promptSelect('Select\x20dataset:',_0x5956e1),_0x57686a=_0x1394b4[_0x198a24];if(!_0x57686a)throw CliErrors['validation']('Invalid\x20dataset\x20selection.');_0x51979a=_0x57686a[_0x471a9d(0xff)],_0xdd4784=undefined;}}}}const _0x4fb94b=await listDatasets(_0x9ceda8[_0x471a9d(0xec)]),_0x17a01f=_0x4fb94b[_0x471a9d(0xe9)](_0x34d149=>_0x34d149[_0x471a9d(0xff)]===_0x51979a);if(!_0x17a01f)throw CliErrors[_0x471a9d(0xfa)]('Dataset\x20not\x20found\x20for\x20code\x20\x22'+_0x51979a+_0x471a9d(0xe4)+(_0xdd4784?_0x471a9d(0x10d)+CLI_BIN_NAME+_0x471a9d(0xd8):''));_0xf52bfd=_0x17a01f['id'];const _0x523c68=_0xdd4784??_0x51979a,_0x1cdcc8=await listBffDatasetOperations(_0x9ceda8[_0x471a9d(0xec)],_0xf52bfd),_0x25d592=_0x1cdcc8?Object[_0x471a9d(0xd3)](_0x1cdcc8):[];if(_0x25d592[_0x471a9d(0x123)]===0x0)throw CliErrors[_0x471a9d(0xfa)](_0x471a9d(0x103)+_0x523c68+'.');let _0x54a091;const _0x395582=_0x9ceda8[_0x471a9d(0xf0)]('operation-type');if(_0x395582){if(!_0x25d592[_0x471a9d(0x124)](_0x395582))throw CliErrors[_0x471a9d(0xfa)](_0x471a9d(0xea)+_0x395582+_0x471a9d(0x118)+_0x523c68+'.\x20'+(_0x471a9d(0xeb)+_0x25d592['join'](',\x20')));_0x54a091=_0x395582;}else{if(_0x9ceda8['nonInteractive'])throw CliErrors[_0x471a9d(0xfa)](_0x471a9d(0x120));const _0x13ec89=await promptSelect(_0x471a9d(0xf7),_0x25d592);_0x54a091=_0x25d592[_0x13ec89]??_0x25d592[0x0];}let _0x1fa9e9=normalizeHookFunctionNode(_0x9ceda8[_0x471a9d(0xf0)](_0x471a9d(0x125)));if(!_0x1fa9e9){if(_0x9ceda8[_0x471a9d(0xf0)](_0x471a9d(0x125)))throw CliErrors[_0x471a9d(0xfa)](_0x471a9d(0x119));if(_0x9ceda8['nonInteractive'])throw CliErrors[_0x471a9d(0xfa)](_0x471a9d(0x11e));const _0x36d8d3=await promptSelect('Select\x20trigger\x20node:',[_0x471a9d(0x107),_0x471a9d(0x109)]);_0x1fa9e9=['before',_0x471a9d(0x109)][_0x36d8d3]??_0x471a9d(0x107);}return{'alias':_0xdd4784,'datasetCode':_0x51979a,'datasetId':_0xf52bfd,'operationType':_0x54a091,'functionNode':_0x1fa9e9};}async function promptSelect(_0xd8fcef,_0x430fd7){const _0x9be82f=a26_0x40bf71;if(_0x430fd7[_0x9be82f(0x123)]===0x1)return 0x0;for(const [_0x7a094d,_0x233faa]of _0x430fd7['entries']()){process[_0x9be82f(0xde)][_0x9be82f(0xfe)]('\x20\x20'+(_0x7a094d+0x1)+'.\x20'+_0x233faa+'\x0a');}const _0x61b46=createInterface({'input':process[_0x9be82f(0xe6)],'output':process[_0x9be82f(0xde)]});while(!![]){const _0x30d85c=await new Promise(_0x424804=>{_0x61b46['question'](_0xd8fcef+'\x20',_0x424804);}),_0xc6cea7=Number['parseInt'](_0x30d85c[_0x9be82f(0x116)](),0xa);if(Number['isInteger'](_0xc6cea7)&&_0xc6cea7>=0x1&&_0xc6cea7<=_0x430fd7['length'])return _0x61b46['close'](),_0xc6cea7-0x1;process[_0x9be82f(0xde)][_0x9be82f(0xfe)](_0x9be82f(0xf8)+_0x430fd7[_0x9be82f(0x123)]+'.\x0a');}}function buildFilePath(_0x260b97,_0x16d164,_0x5a5c3e,_0x52df46){const _0xdbd7b2=a26_0x40bf71;if(_0x16d164===_0xdbd7b2(0xf2)){if(!_0x52df46)throw CliErrors[_0xdbd7b2(0xfa)](_0xdbd7b2(0xe8));const _0x53dad5=_0x52df46['alias']??_0x52df46[_0xdbd7b2(0xee)];return join(_0x260b97[_0xdbd7b2(0xd0)],_0xdbd7b2(0xf2),_0x53dad5,_0x52df46[_0xdbd7b2(0xe7)],_0x52df46[_0xdbd7b2(0xf5)],_0x5a5c3e+_0xdbd7b2(0xe5));}return join(_0x260b97[_0xdbd7b2(0xd0)],_0x16d164,_0x5a5c3e+_0xdbd7b2(0xe5));}export function generateTemplate(_0x3b8313,_0xf22f64,_0x264876,_0x40d9bf,_0x9155a2){const _0x21f8a6=a26_0x40bf71,_0x3a04e4=_0x40d9bf?.[_0x21f8a6(0x116)]()||_0x21f8a6(0x101);if(_0x3b8313===_0x21f8a6(0x121))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x3a04e4+'\x0a\x20*\x20[脚本名称]\x20'+_0xf22f64+_0x21f8a6(0x10c)+_0xf22f64+_0x21f8a6(0xd5)+_0xf22f64+_0x21f8a6(0x110);if(_0x3b8313===_0x21f8a6(0xdb))return _0x21f8a6(0x122)+_0x3a04e4+_0x21f8a6(0x102)+_0x264876+'/'+_0xf22f64+'\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'+_0xf22f64+_0x21f8a6(0x110);if(!_0x9155a2)throw CliErrors['validation'](_0x21f8a6(0x106));return _0x21f8a6(0xcf)+_0x3a04e4+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0x264876+'/'+_0x9155a2[_0x21f8a6(0xee)]+'/'+_0x9155a2[_0x21f8a6(0xe7)]+_0x21f8a6(0x11b)+_0x9155a2['functionNode']+_0x21f8a6(0xe2)+_0xf22f64+_0x21f8a6(0x110);}
1
+ const a26_0xe87d87=a26_0x2961;(function(_0x17479d,_0x4b2bb2){const _0x5428ea=a26_0x2961,_0x226ffc=_0x17479d();while(!![]){try{const _0x4a1c0e=-parseInt(_0x5428ea(0x11f))/0x1*(parseInt(_0x5428ea(0x142))/0x2)+parseInt(_0x5428ea(0x12e))/0x3*(parseInt(_0x5428ea(0x149))/0x4)+parseInt(_0x5428ea(0x13e))/0x5*(parseInt(_0x5428ea(0x14e))/0x6)+-parseInt(_0x5428ea(0x116))/0x7*(-parseInt(_0x5428ea(0xff))/0x8)+-parseInt(_0x5428ea(0x12c))/0x9*(-parseInt(_0x5428ea(0x135))/0xa)+-parseInt(_0x5428ea(0x144))/0xb+parseInt(_0x5428ea(0x12b))/0xc*(parseInt(_0x5428ea(0x115))/0xd);if(_0x4a1c0e===_0x4b2bb2)break;else _0x226ffc['push'](_0x226ffc['shift']());}catch(_0x4da2ca){_0x226ffc['push'](_0x226ffc['shift']());}}}(a26_0x324d,0xf066b));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_0x2961(_0x22d7e7,_0x4a0a27){_0x22d7e7=_0x22d7e7-0xf8;const _0x324dbb=a26_0x324d();let _0x296132=_0x324dbb[_0x22d7e7];return _0x296132;}import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0xe87d87(0x150),'command':'create','description':a26_0xe87d87(0x134),'risk':a26_0xe87d87(0x113),'flags':[{'name':'type','type':a26_0xe87d87(0x119),'required':!![],'enum':['COMMON','ENDPOINT',a26_0xe87d87(0x132)],'description':'Script\x20type'},{'name':a26_0xe87d87(0x145),'type':a26_0xe87d87(0x119),'required':!![],'description':a26_0xe87d87(0x10a)},{'name':a26_0xe87d87(0x12d),'type':'string','description':a26_0xe87d87(0x117)},{'name':a26_0xe87d87(0x151),'type':a26_0xe87d87(0x119),'description':a26_0xe87d87(0xf9)},{'name':a26_0xe87d87(0x129),'type':a26_0xe87d87(0x119),'description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':a26_0xe87d87(0x14a),'type':a26_0xe87d87(0x119),'description':a26_0xe87d87(0x12f)},{'name':a26_0xe87d87(0x130),'type':a26_0xe87d87(0x119),'description':a26_0xe87d87(0x139),'enum':['before','after']}],async 'validate'(_0x1de17a){const _0x43b3a9=a26_0xe87d87,_0x1b4f32=_0x1de17a['str']('name');if(!isValidBffFunctionName(_0x1b4f32))throw CliErrors['validation'](_0x43b3a9(0x112)+_0x1b4f32+_0x43b3a9(0xfd));},async 'execute'(_0x137ef0){const _0x3f04a2=a26_0xe87d87,_0x1e39cb=loadBffProjectConfig(_0x137ef0[_0x3f04a2(0x110)]),_0x3441b7=_0x137ef0['str']('type'),_0x217cd1=_0x137ef0[_0x3f04a2(0x14c)](_0x3f04a2(0x145)),_0x52f48d=_0x137ef0[_0x3f04a2(0x14c)]('description')||undefined,_0x13e27f=_0x3441b7===_0x3f04a2(0x132)?await resolveHookOptions(_0x1e39cb,_0x137ef0):undefined,_0x1b9f49=buildFilePath(_0x1e39cb,_0x3441b7,_0x217cd1,_0x13e27f);if(await fileExists(_0x1b9f49))throw CliErrors['validation'](_0x3f04a2(0x147)+_0x1b9f49);await mkdir(dirname(_0x1b9f49),{'recursive':!![]});const _0x2cee49=generateTemplate(_0x3441b7,_0x217cd1,_0x137ef0[_0x3f04a2(0x110)],_0x52f48d,_0x13e27f);await writeFile(_0x1b9f49,_0x2cee49,_0x3f04a2(0x121));const _0xcc7c05={'type':_0x3441b7,'name':_0x217cd1,'path':_0x1b9f49};if(_0x52f48d)_0xcc7c05[_0x3f04a2(0x12d)]=_0x52f48d;if(_0x13e27f){if(_0x13e27f[_0x3f04a2(0x151)])_0xcc7c05[_0x3f04a2(0x151)]=_0x13e27f['alias'];_0xcc7c05['datasetCode']=_0x13e27f[_0x3f04a2(0x11a)],_0xcc7c05[_0x3f04a2(0x141)]=_0x13e27f[_0x3f04a2(0x141)],_0xcc7c05[_0x3f04a2(0x143)]=_0x13e27f[_0x3f04a2(0x143)];}return{'ok':!![],'data':_0xcc7c05,'message':_0x3f04a2(0x122)+_0x3441b7+_0x3f04a2(0x137)+_0x217cd1};}};async function resolveHookOptions(_0x4586bc,_0xeec87d){const _0x319f0d=a26_0xe87d87,_0x34fd77=loadAliasMap(_0xeec87d['apiDir'],undefined,resolveApiFilePath(_0xeec87d[_0x319f0d(0x123)],_0xeec87d[_0x319f0d(0x110)])),_0x3bf20b=_0x34fd77[_0x319f0d(0x105)]>0x0;let _0x3b8f55,_0x2e0518,_0x4d88c4;const _0x2f4118=_0xeec87d[_0x319f0d(0x14c)](_0x319f0d(0x151)),_0x360a64=_0xeec87d['str']('datasetcode');if(_0x2f4118){const _0x1b2ed9=resolveAlias(_0xeec87d[_0x319f0d(0x123)],_0x2f4118,undefined,resolveApiFilePath(_0xeec87d['apiDir'],_0xeec87d[_0x319f0d(0x110)]));if(!_0x1b2ed9){const _0x5e87f1=_0x3bf20b?_0x319f0d(0x13b)+_0x34fd77[_0x319f0d(0xfc)](_0x2b0b10=>_0x2b0b10[_0x319f0d(0x151)])[_0x319f0d(0x120)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x114)+_0x2f4118+_0x319f0d(0x11b)+_0x5e87f1);}_0x3b8f55=_0x2f4118,_0x2e0518=_0x1b2ed9;}else{if(_0x360a64){_0x2e0518=_0x360a64;const _0x304eb6=_0x34fd77[_0x319f0d(0xfa)](_0x373346=>_0x373346['datasetCode']===_0x360a64);_0x3b8f55=_0x304eb6?.[_0x319f0d(0x151)];}else{if(_0xeec87d['nonInteractive'])throw CliErrors['validation'](_0x319f0d(0x10b));else{if(_0x3bf20b){const _0x2ef215=_0x34fd77['map'](_0x58dfde=>_0x58dfde[_0x319f0d(0x151)]+'\x20('+_0x58dfde['tableName']+')'),_0x10e51e=await promptSelect(_0x319f0d(0x128),_0x2ef215),_0x5ae015=_0x34fd77[_0x10e51e];if(!_0x5ae015)throw CliErrors['validation'](_0x319f0d(0x118));_0x3b8f55=_0x5ae015[_0x319f0d(0x151)],_0x2e0518=_0x5ae015[_0x319f0d(0x11a)];}else{const _0x27fdbb=await listDatasets(_0xeec87d[_0x319f0d(0x110)]);if(_0x27fdbb[_0x319f0d(0x105)]===0x0)throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x10e));const _0x3215a6=_0x27fdbb[_0x319f0d(0xfc)](_0x4ba85d=>_0x4ba85d[_0x319f0d(0x145)]+'\x20['+(_0x4ba85d[_0x319f0d(0x126)]??_0x319f0d(0x13c))+_0x319f0d(0x14f)+_0x4ba85d[_0x319f0d(0x10d)]+')'),_0x2434ca=await promptSelect(_0x319f0d(0x128),_0x3215a6),_0x185795=_0x27fdbb[_0x2434ca];if(!_0x185795)throw CliErrors[_0x319f0d(0x13d)]('Invalid\x20dataset\x20selection.');_0x2e0518=_0x185795[_0x319f0d(0x10d)],_0x3b8f55=undefined;}}}}const _0x302285=await listDatasets(_0xeec87d[_0x319f0d(0x110)]),_0x4fb166=_0x302285['find'](_0x426550=>_0x426550[_0x319f0d(0x10d)]===_0x2e0518);if(!_0x4fb166)throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x133)+_0x2e0518+_0x319f0d(0x14b)+(_0x3b8f55?'The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x4d88c4=_0x4fb166['id'];const _0x1ba28c=_0x3b8f55??_0x2e0518,_0x31da89=await listBffDatasetOperations(_0xeec87d[_0x319f0d(0x110)],_0x4d88c4),_0x521c72=_0x31da89?Object['keys'](_0x31da89):[];if(_0x521c72[_0x319f0d(0x105)]===0x0)throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x12a)+_0x1ba28c+'.');let _0x5741b7;const _0x32f858=_0xeec87d[_0x319f0d(0x14c)](_0x319f0d(0x14a));if(_0x32f858){if(!_0x521c72[_0x319f0d(0x10f)](_0x32f858))throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x108)+_0x32f858+_0x319f0d(0x124)+_0x1ba28c+'.\x20'+(_0x319f0d(0x146)+_0x521c72['join'](',\x20')));_0x5741b7=_0x32f858;}else{if(_0xeec87d[_0x319f0d(0x153)])throw CliErrors['validation'](_0x319f0d(0xf8));const _0x787527=await promptSelect(_0x319f0d(0x102),_0x521c72);_0x5741b7=_0x521c72[_0x787527]??_0x521c72[0x0];}let _0x1658eb=normalizeHookFunctionNode(_0xeec87d['str'](_0x319f0d(0x130)));if(!_0x1658eb){if(_0xeec87d[_0x319f0d(0x14c)](_0x319f0d(0x130)))throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0xfe));if(_0xeec87d[_0x319f0d(0x153)])throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x11d));const _0x179a2b=await promptSelect(_0x319f0d(0x138),[_0x319f0d(0x101),_0x319f0d(0x152)]);_0x1658eb=[_0x319f0d(0x101),_0x319f0d(0x152)][_0x179a2b]??_0x319f0d(0x101);}return{'alias':_0x3b8f55,'datasetCode':_0x2e0518,'datasetId':_0x4d88c4,'operationType':_0x5741b7,'functionNode':_0x1658eb};}async function promptSelect(_0x44814e,_0x310992){const _0x5d9fb1=a26_0xe87d87;if(_0x310992[_0x5d9fb1(0x105)]===0x1)return 0x0;for(const [_0x23fd2f,_0x26a985]of _0x310992[_0x5d9fb1(0x100)]()){process[_0x5d9fb1(0x140)]['write']('\x20\x20'+(_0x23fd2f+0x1)+'.\x20'+_0x26a985+'\x0a');}const _0x33f12b=createInterface({'input':process[_0x5d9fb1(0x103)],'output':process['stderr']});while(!![]){const _0x4e361e=await new Promise(_0x4145d1=>{const _0x3c2613=_0x5d9fb1;_0x33f12b[_0x3c2613(0x14d)](_0x44814e+'\x20',_0x4145d1);}),_0x380c03=Number[_0x5d9fb1(0x13f)](_0x4e361e[_0x5d9fb1(0x107)](),0xa);if(Number[_0x5d9fb1(0x111)](_0x380c03)&&_0x380c03>=0x1&&_0x380c03<=_0x310992[_0x5d9fb1(0x105)])return _0x33f12b[_0x5d9fb1(0x136)](),_0x380c03-0x1;process[_0x5d9fb1(0x140)][_0x5d9fb1(0x113)](_0x5d9fb1(0x109)+_0x310992[_0x5d9fb1(0x105)]+'.\x0a');}}function a26_0x324d(){const _0x57290a=['code','No\x20datasets\x20found\x20for\x20this\x20app.','includes','appCode','isInteger','Invalid\x20function\x20name\x20\x22','write','Alias\x20\x22','2345447XLynfB','83167TbjYYJ','Script\x20description','Invalid\x20dataset\x20selection.','string','datasetCode','\x22\x20not\x20found.\x20','TODO:\x20add\x20script\x20description','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','50dOtZQF','join','utf8','Created\x20','apiDir','\x22\x20not\x20found\x20for\x20dataset\x20','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','source','\x0a\x20*\x20[触发节点]\x20','Select\x20dataset:','datasetcode','No\x20operation\x20types\x20found\x20for\x20dataset\x20','60xclCGB','144oGGWBg','description','3YGSiQm','Operation\x20type\x20(HOOK\x20only)','function-node','scriptsRootDir','HOOK','Dataset\x20not\x20found\x20for\x20code\x20\x22','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','199170qAvJYW','close','\x20function:\x20','Select\x20trigger\x20node:','Trigger\x20node\x20(HOOK\x20only)','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Available\x20aliases:\x20','UNKNOWN','validation','19890zHgjZr','parseInt','stderr','operationType','60930lMwHxz','functionNode','15264546giYLOZ','name','Available:\x20','File\x20already\x20exists:\x20','\x0a\x20*\x20[脚本名称]\x20','4786716nqBYxK','operation-type','\x22.\x20','str','question','1674AtsBTI',']\x20(','bff','alias','after','nonInteractive','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','find','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','map','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','248tBkZav','entries','before','Select\x20operation\x20type:','stdin','ENDPOINT','length','HOOK\x20requires\x20alias/operation/node\x20options.','trim','Operation\x20type\x20\x22','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','Function\x20name\x20(valid\x20JS\x20identifier)','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','COMMON'];a26_0x324d=function(){return _0x57290a;};return a26_0x324d();}function buildFilePath(_0x46b832,_0x46a6b7,_0x225f15,_0x3890ed){const _0x540e10=a26_0xe87d87;if(_0x46a6b7==='HOOK'){if(!_0x3890ed)throw CliErrors['validation'](_0x540e10(0x106));const _0x4ed97b=_0x3890ed['alias']??_0x3890ed[_0x540e10(0x11a)];return join(_0x46b832[_0x540e10(0x131)],_0x540e10(0x132),_0x4ed97b,_0x3890ed[_0x540e10(0x141)],_0x3890ed[_0x540e10(0x143)],_0x225f15+'.js');}return join(_0x46b832['scriptsRootDir'],_0x46a6b7,_0x225f15+'.js');}export function generateTemplate(_0x2f0cfb,_0x17d732,_0x23fa73,_0x4e3bff,_0x38a39e){const _0x5469b2=a26_0xe87d87,_0x5c8cc3=_0x4e3bff?.[_0x5469b2(0x107)]()||_0x5469b2(0x11c);if(_0x2f0cfb===_0x5469b2(0x10c))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x5c8cc3+_0x5469b2(0x148)+_0x17d732+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x17d732+'.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'+_0x17d732+_0x5469b2(0x13a);if(_0x2f0cfb===_0x5469b2(0x104))return _0x5469b2(0x125)+_0x5c8cc3+_0x5469b2(0xfb)+_0x23fa73+'/'+_0x17d732+'\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'+_0x17d732+_0x5469b2(0x13a);if(!_0x38a39e)throw CliErrors['validation']('HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.');return _0x5469b2(0x11e)+_0x5c8cc3+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0x23fa73+'/'+_0x38a39e[_0x5469b2(0x11a)]+'/'+_0x38a39e['operationType']+_0x5469b2(0x127)+_0x38a39e[_0x5469b2(0x143)]+'\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'+_0x17d732+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
@@ -1 +1 @@
1
- const a27_0x212cec=a27_0xe8ea;(function(_0x155cc7,_0x27c68d){const _0x422657=a27_0xe8ea,_0x3e5caf=_0x155cc7();while(!![]){try{const _0x401a15=parseInt(_0x422657(0x186))/0x1+-parseInt(_0x422657(0x181))/0x2+parseInt(_0x422657(0x177))/0x3+-parseInt(_0x422657(0x184))/0x4*(parseInt(_0x422657(0x17d))/0x5)+parseInt(_0x422657(0x16c))/0x6*(parseInt(_0x422657(0x161))/0x7)+parseInt(_0x422657(0x155))/0x8*(-parseInt(_0x422657(0x165))/0x9)+-parseInt(_0x422657(0x15b))/0xa*(-parseInt(_0x422657(0x158))/0xb);if(_0x401a15===_0x27c68d)break;else _0x3e5caf['push'](_0x3e5caf['shift']());}catch(_0x277129){_0x3e5caf['push'](_0x3e5caf['shift']());}}}(a27_0x23e7,0xe0bcf));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';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':'bff','command':a27_0x212cec(0x187),'description':'Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','risk':a27_0x212cec(0x173),'flags':[{'name':a27_0x212cec(0x164),'type':a27_0x212cec(0x156),'required':!![],'description':a27_0x212cec(0x17a)}],async 'validate'(_0x3b8b78){const _0x1557c7=a27_0x212cec,_0x120648=loadBffProjectConfig(_0x3b8b78['appCode']),_0x15179d=await readBffLockFile(_0x120648[_0x1557c7(0x15a)]);if(!_0x15179d)throw CliErrors[_0x1557c7(0x183)](_0x1557c7(0x174));},async 'dryRun'(_0x4b4404){const _0xe51ca6=a27_0x212cec,_0x4099d5=loadBffProjectConfig(_0x4b4404[_0xe51ca6(0x17e)]),_0x12ae84=await readBffLockFile(_0x4099d5[_0xe51ca6(0x15a)]);if(!_0x12ae84)throw CliErrors[_0xe51ca6(0x183)](_0xe51ca6(0x16d));const {appLock:_0x11538c}=ensureLockScope(_0x12ae84,_0x4b4404[_0xe51ca6(0x17e)],_0x4099d5[_0xe51ca6(0x175)],_0xe51ca6(0x187)),_0x75de31=_0x4b4404['str'](_0xe51ca6(0x164)),_0x52c028=Object[_0xe51ca6(0x179)](_0x11538c['functions']),_0x39b917=resolveDeleteTarget(_0x75de31,_0x52c028),_0x5b5d47=_0x11538c[_0xe51ca6(0x15f)][_0x39b917];if(!_0x5b5d47)throw CliErrors[_0xe51ca6(0x183)](_0xe51ca6(0x180)+_0x39b917+'\x22.');const _0x1acb73=resolveLocalFilePathFromLockKey(_0x4099d5,_0x39b917),_0x4b425d=relative(_0x4099d5['projectRoot'],_0x1acb73),_0x515aec=join(_0x4099d5[_0xe51ca6(0x17c)],'<timestamp>',_0x4b425d);return{'method':_0xe51ca6(0x172),'url':_0xe51ca6(0x16e),'body':{'appCode':_0x4b4404[_0xe51ca6(0x17e)],'target':_0x39b917,'remoteId':_0x5b5d47[_0xe51ca6(0x17f)],'localFilePath':_0x1acb73,'trashedPath':_0x515aec},'description':_0xe51ca6(0x170)+_0x39b917+_0xe51ca6(0x16f)};},async 'execute'(_0x6a4037){const _0x20013c=a27_0x212cec,_0x54fade=loadBffProjectConfig(_0x6a4037[_0x20013c(0x17e)]),_0x3b2ea2=await readBffLockFile(_0x54fade[_0x20013c(0x15a)]);if(!_0x3b2ea2)throw CliErrors[_0x20013c(0x183)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x3a6fe9,appLock:_0x5b1173}=ensureLockScope(_0x3b2ea2,_0x6a4037['appCode'],_0x54fade[_0x20013c(0x175)],_0x20013c(0x187)),_0x157689=JSON['parse'](JSON['stringify'](_0x3a6fe9)),_0x40c9f4=_0x157689['apps'][_0x6a4037[_0x20013c(0x17e)]];if(!_0x40c9f4)throw new Error(_0x20013c(0x15d)+_0x6a4037[_0x20013c(0x17e)]+_0x20013c(0x17b));const _0x3f9e43=_0x6a4037['str'](_0x20013c(0x164)),_0x553e05=Object[_0x20013c(0x179)](_0x40c9f4[_0x20013c(0x15f)]),_0x52da09=resolveDeleteTarget(_0x3f9e43,_0x553e05),_0x25f6b9=_0x40c9f4[_0x20013c(0x15f)][_0x52da09];if(!_0x25f6b9)throw CliErrors[_0x20013c(0x183)](_0x20013c(0x180)+_0x52da09+'\x22.');await deleteBffScript(_0x25f6b9['remoteId']),delete _0x40c9f4[_0x20013c(0x15f)][_0x52da09],_0x40c9f4[_0x20013c(0x15c)]=new Date()[_0x20013c(0x162)](),await writeBffLockFile(_0x54fade[_0x20013c(0x15a)],_0x157689);const _0x43d8da=resolveLocalFilePathFromLockKey(_0x54fade,_0x52da09);let _0x421718;await fileExists(_0x43d8da)&&(_0x421718=await moveToTrash(_0x54fade[_0x20013c(0x182)],_0x54fade[_0x20013c(0x17c)],_0x43d8da),await cleanupEmptyDirectories(dirname(_0x43d8da),_0x54fade[_0x20013c(0x160)]));await waitForDeleteSettlement(_0x54fade[_0x20013c(0x15a)],_0x6a4037[_0x20013c(0x17e)],_0x52da09,_0x43d8da),await sleep(0x96);const _0x14cb06={'deleted':_0x52da09,'remoteId':_0x25f6b9[_0x20013c(0x17f)]};if(_0x421718)_0x14cb06[_0x20013c(0x176)]=_0x421718;return{'ok':!![],'data':_0x14cb06,'message':_0x20013c(0x169)+_0x52da09+(_0x421718?_0x20013c(0x16b):'')};}};function resolveDeleteTarget(_0x3c5e81,_0x116d1f){const _0x5cd27a=a27_0x212cec;if(_0x3c5e81[_0x5cd27a(0x171)]('/')){const _0x468994=_0x116d1f[_0x5cd27a(0x178)](_0x2308ec=>_0x2308ec===_0x3c5e81);if(!_0x468994)throw CliErrors[_0x5cd27a(0x183)](_0x5cd27a(0x167)+_0x3c5e81);return _0x468994;}const _0x564e98=_0x116d1f[_0x5cd27a(0x159)](_0xf719e0=>_0xf719e0['split']('/')['at'](-0x1)===_0x3c5e81);if(_0x564e98[_0x5cd27a(0x16a)]===0x0)throw CliErrors[_0x5cd27a(0x183)](_0x5cd27a(0x167)+_0x3c5e81);if(_0x564e98[_0x5cd27a(0x16a)]>0x1)throw CliErrors[_0x5cd27a(0x183)](_0x5cd27a(0x185)+_0x3c5e81+_0x5cd27a(0x163)+_0x564e98[_0x5cd27a(0x168)](_0x2576de=>'\x20\x20-\x20'+_0x2576de)[_0x5cd27a(0x157)]('\x0a'));return _0x564e98[0x0];}async function moveToTrash(_0x13c5ab,_0x1f64a5,_0xa6accb){const _0x22d7e3=a27_0x212cec,_0x37eda2=new Date()[_0x22d7e3(0x162)]()['replace'](/[:.]/g,'-'),_0xda5e42=relative(_0x13c5ab,_0xa6accb),_0x59c5a5=join(_0x1f64a5,_0x37eda2,_0xda5e42);return await mkdir(dirname(_0x59c5a5),{'recursive':!![]}),await rename(_0xa6accb,_0x59c5a5),_0x59c5a5;}async function cleanupEmptyDirectories(_0x2cf896,_0x2356c4){const _0x21d562=a27_0x212cec;let _0x3a03a3=resolve(_0x2cf896);const _0x45c342=resolve(_0x2356c4);while(_0x3a03a3[_0x21d562(0x166)](''+_0x45c342+sep)||_0x3a03a3===_0x45c342){if(_0x3a03a3===_0x45c342)return;try{const _0x333d59=await readdir(_0x3a03a3);if(_0x333d59[_0x21d562(0x16a)]>0x0)return;await rmdir(_0x3a03a3);}catch{return;}_0x3a03a3=dirname(_0x3a03a3);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;function a27_0xe8ea(_0x16f5d1,_0x1c2e23){_0x16f5d1=_0x16f5d1-0x155;const _0x23e7ea=a27_0x23e7();let _0xe8eaa1=_0x23e7ea[_0x16f5d1];return _0xe8eaa1;}function a27_0x23e7(){const _0x294a10=['length','\x20(local\x20file\x20moved\x20to\x20trash)','3066tgwiGK','BFF\x20lock\x20file\x20not\x20found.','/api/management/library/scripts/delete','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','Would\x20delete\x20','includes','POST','high-risk-write','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','scriptsRoot','trashedTo','3077946qVIqMJ','find','keys','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','\x22\x20not\x20found\x20after\x20ensureLockScope.','trashDir','131745KDOVjV','appCode','remoteId','No\x20lock\x20entry\x20found\x20for\x20\x22','3094340INZSxN','projectRoot','validation','148IhBEWX','Multiple\x20functions\x20match\x20\x22','1370457wHWUCC','delete','13112sfMNuA','string','join','21378214EfgXmL','filter','lockFilePath','10GaDQkv','lastSync','Lock\x20scope\x20for\x20app\x20\x22','Local\x20delete\x20not\x20settled\x20for\x20','functions','scriptsRootDir','8162XKexis','toISOString','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','target','8199ReKlhK','startsWith','Function\x20not\x20found:\x20','map','Deleted\x20'];a27_0x23e7=function(){return _0x294a10;};return a27_0x23e7();}async function waitForDeleteSettlement(_0x3d18ae,_0xf1749a,_0x29af10,_0x2379a6){const _0x15c43f=a27_0x212cec;for(let _0x4140de=0x0;_0x4140de<DELETE_SETTLE_RETRY_COUNT;_0x4140de+=0x1){const _0x43460d=await readBffLockFile(_0x3d18ae),_0x320fbc=!!_0x43460d?.['apps']?.[_0xf1749a]?.['functions']?.[_0x29af10],_0x24702c=await fileExists(_0x2379a6);if(!_0x320fbc&&!_0x24702c)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x15c43f(0x15e)+_0x29af10+'.');}
1
+ function a27_0x3aaa(_0x4ecfe6,_0x1b36a1){_0x4ecfe6=_0x4ecfe6-0x9f;const _0x21e85b=a27_0x21e8();let _0x3aaa3d=_0x21e85b[_0x4ecfe6];return _0x3aaa3d;}const a27_0x3f8816=a27_0x3aaa;(function(_0x2cfac9,_0x537153){const _0xf5b62f=a27_0x3aaa,_0x1c558f=_0x2cfac9();while(!![]){try{const _0x539b75=parseInt(_0xf5b62f(0xd2))/0x1*(-parseInt(_0xf5b62f(0xce))/0x2)+parseInt(_0xf5b62f(0x9f))/0x3+-parseInt(_0xf5b62f(0xb3))/0x4*(parseInt(_0xf5b62f(0xc7))/0x5)+parseInt(_0xf5b62f(0xbf))/0x6*(-parseInt(_0xf5b62f(0xbd))/0x7)+parseInt(_0xf5b62f(0xa1))/0x8*(parseInt(_0xf5b62f(0xb2))/0x9)+parseInt(_0xf5b62f(0xc9))/0xa*(-parseInt(_0xf5b62f(0xc3))/0xb)+parseInt(_0xf5b62f(0xa2))/0xc;if(_0x539b75===_0x537153)break;else _0x1c558f['push'](_0x1c558f['shift']());}catch(_0x5c086a){_0x1c558f['push'](_0x1c558f['shift']());}}}(a27_0x21e8,0x4434b));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';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_0x21e8(){const _0x5782f5=['Would\x20delete\x20','filter','3106746aSHyRX','12jjEcct','high-risk-write','find','validation','functions','Multiple\x20functions\x20match\x20\x22','Local\x20delete\x20not\x20settled\x20for\x20','startsWith','length','str','888783kuigrc','trashedTo','24LeRhLq','lastSync','\x20\x20-\x20','scriptsRoot','825638VPuRiL','POST','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','replace','304915rpDjqw','parse','40yIkhhA','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','No\x20lock\x20entry\x20found\x20for\x20\x22','lockFilePath','Function\x20not\x20found:\x20','5602lsfQwl','\x22\x20not\x20found\x20after\x20ensureLockScope.','delete','appCode','133Oglnlp','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','733200rFpESy','BFF\x20lock\x20file\x20not\x20found.','8enpLwl','12640404hJTKOm','map','apps','toISOString','remoteId','<timestamp>','trashDir','string','projectRoot','scriptsRootDir','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','Lock\x20scope\x20for\x20app\x20\x22','bff','target'];a27_0x21e8=function(){return _0x5782f5;};return a27_0x21e8();}import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x3f8816(0xae),'command':'delete','description':a27_0x3f8816(0xac),'risk':a27_0x3f8816(0xb4),'flags':[{'name':'target','type':a27_0x3f8816(0xa9),'required':!![],'description':a27_0x3f8816(0xc5)}],async 'validate'(_0x25f0f7){const _0x4a736c=a27_0x3f8816,_0xf29b70=loadBffProjectConfig(_0x25f0f7['appCode']),_0x11c1d8=await readBffLockFile(_0xf29b70[_0x4a736c(0xcc)]);if(!_0x11c1d8)throw CliErrors[_0x4a736c(0xb6)](_0x4a736c(0xd3));},async 'dryRun'(_0x18ddd3){const _0x5506a0=a27_0x3f8816,_0x191dc7=loadBffProjectConfig(_0x18ddd3[_0x5506a0(0xd1)]),_0x7a879c=await readBffLockFile(_0x191dc7[_0x5506a0(0xcc)]);if(!_0x7a879c)throw CliErrors[_0x5506a0(0xb6)](_0x5506a0(0xa0));const {appLock:_0x2030fa}=ensureLockScope(_0x7a879c,_0x18ddd3[_0x5506a0(0xd1)],_0x191dc7['scriptsRoot'],_0x5506a0(0xd0)),_0x1deecf=_0x18ddd3[_0x5506a0(0xbc)](_0x5506a0(0xaf)),_0x2d7e21=Object['keys'](_0x2030fa[_0x5506a0(0xb7)]),_0x19f7bd=resolveDeleteTarget(_0x1deecf,_0x2d7e21),_0xc41315=_0x2030fa[_0x5506a0(0xb7)][_0x19f7bd];if(!_0xc41315)throw CliErrors['validation'](_0x5506a0(0xcb)+_0x19f7bd+'\x22.');const _0x2e1f74=resolveLocalFilePathFromLockKey(_0x191dc7,_0x19f7bd),_0x35069c=relative(_0x191dc7[_0x5506a0(0xaa)],_0x2e1f74),_0x182b9d=join(_0x191dc7[_0x5506a0(0xa8)],_0x5506a0(0xa7),_0x35069c);return{'method':_0x5506a0(0xc4),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x18ddd3['appCode'],'target':_0x19f7bd,'remoteId':_0xc41315[_0x5506a0(0xa6)],'localFilePath':_0x2e1f74,'trashedPath':_0x182b9d},'description':_0x5506a0(0xb0)+_0x19f7bd+_0x5506a0(0xca)};},async 'execute'(_0x2a11c8){const _0x39a90=a27_0x3f8816,_0x50c0a2=loadBffProjectConfig(_0x2a11c8[_0x39a90(0xd1)]),_0x577ca5=await readBffLockFile(_0x50c0a2[_0x39a90(0xcc)]);if(!_0x577ca5)throw CliErrors[_0x39a90(0xb6)](_0x39a90(0xa0));const {lockData:_0x2b6539,appLock:_0x365b74}=ensureLockScope(_0x577ca5,_0x2a11c8[_0x39a90(0xd1)],_0x50c0a2[_0x39a90(0xc2)],_0x39a90(0xd0)),_0x4530fd=JSON[_0x39a90(0xc8)](JSON['stringify'](_0x2b6539)),_0x5488b6=_0x4530fd[_0x39a90(0xa4)][_0x2a11c8['appCode']];if(!_0x5488b6)throw new Error(_0x39a90(0xad)+_0x2a11c8[_0x39a90(0xd1)]+_0x39a90(0xcf));const _0x43ed62=_0x2a11c8[_0x39a90(0xbc)](_0x39a90(0xaf)),_0x4fbe74=Object['keys'](_0x5488b6[_0x39a90(0xb7)]),_0x427ea7=resolveDeleteTarget(_0x43ed62,_0x4fbe74),_0x1317c1=_0x5488b6[_0x39a90(0xb7)][_0x427ea7];if(!_0x1317c1)throw CliErrors['validation']('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x427ea7+'\x22.');await deleteBffScript(_0x1317c1[_0x39a90(0xa6)]),delete _0x5488b6[_0x39a90(0xb7)][_0x427ea7],_0x5488b6[_0x39a90(0xc0)]=new Date()[_0x39a90(0xa5)](),await writeBffLockFile(_0x50c0a2['lockFilePath'],_0x4530fd);const _0x5dee0d=resolveLocalFilePathFromLockKey(_0x50c0a2,_0x427ea7);let _0xf62623;await fileExists(_0x5dee0d)&&(_0xf62623=await moveToTrash(_0x50c0a2[_0x39a90(0xaa)],_0x50c0a2[_0x39a90(0xa8)],_0x5dee0d),await cleanupEmptyDirectories(dirname(_0x5dee0d),_0x50c0a2[_0x39a90(0xab)]));await waitForDeleteSettlement(_0x50c0a2[_0x39a90(0xcc)],_0x2a11c8[_0x39a90(0xd1)],_0x427ea7,_0x5dee0d),await sleep(0x96);const _0xd6c9ce={'deleted':_0x427ea7,'remoteId':_0x1317c1[_0x39a90(0xa6)]};if(_0xf62623)_0xd6c9ce[_0x39a90(0xbe)]=_0xf62623;return{'ok':!![],'data':_0xd6c9ce,'message':'Deleted\x20'+_0x427ea7+(_0xf62623?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function resolveDeleteTarget(_0x3ac1be,_0x506274){const _0x3c1283=a27_0x3f8816;if(_0x3ac1be['includes']('/')){const _0x26cd51=_0x506274[_0x3c1283(0xb5)](_0x2bd5ae=>_0x2bd5ae===_0x3ac1be);if(!_0x26cd51)throw CliErrors[_0x3c1283(0xb6)]('Function\x20not\x20found:\x20'+_0x3ac1be);return _0x26cd51;}const _0x5b0586=_0x506274[_0x3c1283(0xb1)](_0x367caf=>_0x367caf['split']('/')['at'](-0x1)===_0x3ac1be);if(_0x5b0586['length']===0x0)throw CliErrors[_0x3c1283(0xb6)](_0x3c1283(0xcd)+_0x3ac1be);if(_0x5b0586[_0x3c1283(0xbb)]>0x1)throw CliErrors[_0x3c1283(0xb6)](_0x3c1283(0xb8)+_0x3ac1be+'\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'+_0x5b0586[_0x3c1283(0xa3)](_0x29ab33=>_0x3c1283(0xc1)+_0x29ab33)['join']('\x0a'));return _0x5b0586[0x0];}async function moveToTrash(_0x1143c0,_0x3e1f01,_0x3d3395){const _0x3e2d5d=a27_0x3f8816,_0x523d2b=new Date()[_0x3e2d5d(0xa5)]()[_0x3e2d5d(0xc6)](/[:.]/g,'-'),_0xdff2a3=relative(_0x1143c0,_0x3d3395),_0x5af87a=join(_0x3e1f01,_0x523d2b,_0xdff2a3);return await mkdir(dirname(_0x5af87a),{'recursive':!![]}),await rename(_0x3d3395,_0x5af87a),_0x5af87a;}async function cleanupEmptyDirectories(_0x230e80,_0x3945ba){const _0x978638=a27_0x3f8816;let _0x2b6973=resolve(_0x230e80);const _0x482096=resolve(_0x3945ba);while(_0x2b6973[_0x978638(0xba)](''+_0x482096+sep)||_0x2b6973===_0x482096){if(_0x2b6973===_0x482096)return;try{const _0x547b39=await readdir(_0x2b6973);if(_0x547b39[_0x978638(0xbb)]>0x0)return;await rmdir(_0x2b6973);}catch{return;}_0x2b6973=dirname(_0x2b6973);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x11ff00,_0x55f693,_0x50631f,_0x5a6ffb){const _0x25f1ef=a27_0x3f8816;for(let _0xd5b3f4=0x0;_0xd5b3f4<DELETE_SETTLE_RETRY_COUNT;_0xd5b3f4+=0x1){const _0x17908d=await readBffLockFile(_0x11ff00),_0x2c96a3=!!_0x17908d?.[_0x25f1ef(0xa4)]?.[_0x55f693]?.[_0x25f1ef(0xb7)]?.[_0x50631f],_0x1e4920=await fileExists(_0x5a6ffb);if(!_0x2c96a3&&!_0x1e4920)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x25f1ef(0xb9)+_0x50631f+'.');}
@@ -1 +1 @@
1
- function a28_0x2984(_0x321a45,_0x522949){_0x321a45=_0x321a45-0x113;const _0x44eb90=a28_0x44eb();let _0x298432=_0x44eb90[_0x321a45];return _0x298432;}function a28_0x44eb(){const _0x13a5d9=['9zHwLZO','description','createdTime','read','12804wSYGAa','119991cvbPRR','1221822odNFDy','178444mJszVM','updatedTime','number','360297ZXuHOy','249160JwPzjW','5rPuxBd','69tiuVgo','detail','3040NeBtXe','Return\x20full\x20raw\x20script\x20object','18984aOUmCf'];a28_0x44eb=function(){return _0x13a5d9;};return a28_0x44eb();}const a28_0x96c9f6=a28_0x2984;(function(_0x505a33,_0x26ee10){const _0x4c228e=a28_0x2984,_0x467840=_0x505a33();while(!![]){try{const _0x2e0e0d=-parseInt(_0x4c228e(0x11f))/0x1+-parseInt(_0x4c228e(0x119))/0x2*(-parseInt(_0x4c228e(0x115))/0x3)+-parseInt(_0x4c228e(0x121))/0x4*(parseInt(_0x4c228e(0x114))/0x5)+-parseInt(_0x4c228e(0x120))/0x6+-parseInt(_0x4c228e(0x124))/0x7+-parseInt(_0x4c228e(0x113))/0x8*(parseInt(_0x4c228e(0x11a))/0x9)+parseInt(_0x4c228e(0x117))/0xa*(parseInt(_0x4c228e(0x11e))/0xb);if(_0x2e0e0d===_0x26ee10)break;else _0x467840['push'](_0x467840['shift']());}catch(_0xb2f7ee){_0x467840['push'](_0x467840['shift']());}}}(a28_0x44eb,0x1d9e5));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':'bff','command':a28_0x96c9f6(0x116),'description':'Get\x20BFF\x20script\x20details\x20by\x20ID','risk':a28_0x96c9f6(0x11d),'flags':[{'name':'id','type':a28_0x96c9f6(0x123),'required':!![],'description':'Script\x20ID'},{'name':'verbose','type':'boolean','description':a28_0x96c9f6(0x118)}],async 'execute'(_0x509366){const _0xcccc65=a28_0x96c9f6,_0x28a709=await getBffScriptInfo(_0x509366['num']('id')),_0x2d8df6=_0x509366['bool']('verbose');if(_0x2d8df6)return{'ok':!![],'data':_0x28a709};return{'ok':!![],'data':{'id':_0x28a709['id'],'appCode':_0x28a709['appCode'],'scriptType':_0x28a709['scriptType'],'description':_0x28a709[_0xcccc65(0x11b)]||'(none)','createdTime':_0x28a709[_0xcccc65(0x11c)]??'','updatedTime':_0x28a709[_0xcccc65(0x122)]??'','scriptContent':_0x28a709['scriptContent']??''}};}};
1
+ function a28_0x3024(){const _0x15d2aa=['55wrhxmA','appCode','bff','boolean','verbose','(none)','1948512yxBspJ','Return\x20full\x20raw\x20script\x20object','scriptType','scriptContent','read','detail','38826ozhvnd','424540hBWOim','updatedTime','bool','27GFDyiZ','16998GeosSG','10290258BguCTy','22ZzcQZi','414135kRNwSy','11318750BTqoQk','2506tXgEkC','createdTime'];a28_0x3024=function(){return _0x15d2aa;};return a28_0x3024();}const a28_0x572b66=a28_0x56ac;(function(_0xc7026a,_0x1a120a){const _0x5b6dc3=a28_0x56ac,_0x8c1eff=_0xc7026a();while(!![]){try{const _0x2f582f=parseInt(_0x5b6dc3(0x142))/0x1*(-parseInt(_0x5b6dc3(0x13e))/0x2)+-parseInt(_0x5b6dc3(0x146))/0x3+-parseInt(_0x5b6dc3(0x13f))/0x4*(parseInt(_0x5b6dc3(0x14a))/0x5)+parseInt(_0x5b6dc3(0x143))/0x6*(-parseInt(_0x5b6dc3(0x148))/0x7)+parseInt(_0x5b6dc3(0x138))/0x8+parseInt(_0x5b6dc3(0x144))/0x9+parseInt(_0x5b6dc3(0x147))/0xa*(parseInt(_0x5b6dc3(0x145))/0xb);if(_0x2f582f===_0x1a120a)break;else _0x8c1eff['push'](_0x8c1eff['shift']());}catch(_0x3abdf9){_0x8c1eff['push'](_0x8c1eff['shift']());}}}(a28_0x3024,0xc4f7d));function a28_0x56ac(_0x279e4a,_0x354f74){_0x279e4a=_0x279e4a-0x133;const _0x3024f1=a28_0x3024();let _0x56ac69=_0x3024f1[_0x279e4a];return _0x56ac69;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x572b66(0x134),'command':a28_0x572b66(0x13d),'description':'Get\x20BFF\x20script\x20details\x20by\x20ID','risk':a28_0x572b66(0x13c),'flags':[{'name':'id','type':'number','required':!![],'description':'Script\x20ID'},{'name':a28_0x572b66(0x136),'type':a28_0x572b66(0x135),'description':a28_0x572b66(0x139)}],async 'execute'(_0x12ace3){const _0x583e21=a28_0x572b66,_0x504c26=await getBffScriptInfo(_0x12ace3['num']('id')),_0x576e77=_0x12ace3[_0x583e21(0x141)](_0x583e21(0x136));if(_0x576e77)return{'ok':!![],'data':_0x504c26};return{'ok':!![],'data':{'id':_0x504c26['id'],'appCode':_0x504c26[_0x583e21(0x133)],'scriptType':_0x504c26[_0x583e21(0x13a)],'description':_0x504c26['description']||_0x583e21(0x137),'createdTime':_0x504c26[_0x583e21(0x149)]??'','updatedTime':_0x504c26[_0x583e21(0x140)]??'','scriptContent':_0x504c26[_0x583e21(0x13b)]??''}};}};
@@ -1 +1 @@
1
- function a29_0x4a3e(){const _0x3f4c03=['1150934tgzgED','28025112yEzzVC','340NkxysS','5381012uOjXch','1894154nWOQNJ','5500038miheAZ','2838qKSRsT','5302365tLpkst'];a29_0x4a3e=function(){return _0x3f4c03;};return a29_0x4a3e();}(function(_0xa5c88b,_0x4cb440){const _0x12ea61=a29_0xee8d,_0x3ed171=_0xa5c88b();while(!![]){try{const _0x60fdec=-parseInt(_0x12ea61(0x1a9))/0x1+-parseInt(_0x12ea61(0x1ad))/0x2+-parseInt(_0x12ea61(0x1a7))/0x3*(-parseInt(_0x12ea61(0x1ab))/0x4)+parseInt(_0x12ea61(0x1a8))/0x5+-parseInt(_0x12ea61(0x1a6))/0x6+-parseInt(_0x12ea61(0x1ac))/0x7+parseInt(_0x12ea61(0x1aa))/0x8;if(_0x60fdec===_0x4cb440)break;else _0x3ed171['push'](_0x3ed171['shift']());}catch(_0x4575c6){_0x3ed171['push'](_0x3ed171['shift']());}}}(a29_0x4a3e,0xd21ce));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';import{bffPull}from'../../commands/bff/pull.js';function a29_0xee8d(_0x148bbc,_0x42b715){_0x148bbc=_0x148bbc-0x1a6;const _0x4a3e0c=a29_0x4a3e();let _0xee8d26=_0x4a3e0c[_0x148bbc];return _0xee8d26;}import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x2a9b39,_0x4a7aaf){const _0x4a033a=a29_0x5ea8,_0xa3ab16=_0x2a9b39();while(!![]){try{const _0x30ee2c=parseInt(_0x4a033a(0x1ba))/0x1+parseInt(_0x4a033a(0x1c3))/0x2+-parseInt(_0x4a033a(0x1bc))/0x3*(-parseInt(_0x4a033a(0x1c2))/0x4)+-parseInt(_0x4a033a(0x1be))/0x5*(-parseInt(_0x4a033a(0x1bd))/0x6)+-parseInt(_0x4a033a(0x1c1))/0x7+parseInt(_0x4a033a(0x1bb))/0x8*(-parseInt(_0x4a033a(0x1bf))/0x9)+parseInt(_0x4a033a(0x1c4))/0xa*(-parseInt(_0x4a033a(0x1c0))/0xb);if(_0x30ee2c===_0x4a7aaf)break;else _0xa3ab16['push'](_0xa3ab16['shift']());}catch(_0xe7ff6c){_0xa3ab16['push'](_0xa3ab16['shift']());}}}(a29_0x4384,0xbe1a7));function a29_0x4384(){const _0x3baede=['869791YoRxkN','929560XtKVCt','1266VvgPei','4878162XCltwa','5wwSbGz','36IDvkfH','12802724oxVmKl','3658333zrXHCj','2148QVCUkm','2041028NxQMpx','10BWlvoe'];a29_0x4384=function(){return _0x3baede;};return a29_0x4384();}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';function a29_0x5ea8(_0x3f0252,_0x18b906){_0x3f0252=_0x3f0252-0x1ba;const _0x4384a1=a29_0x4384();let _0x5ea88d=_0x4384a1[_0x3f0252];return _0x5ea88d;}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 +1 @@
1
- const a30_0x3ec48f=a30_0xf339;(function(_0x468603,_0x596ad9){const _0x1b3c22=a30_0xf339,_0x1467a0=_0x468603();while(!![]){try{const _0x5b26f0=parseInt(_0x1b3c22(0xe4))/0x1+-parseInt(_0x1b3c22(0xea))/0x2*(parseInt(_0x1b3c22(0xec))/0x3)+parseInt(_0x1b3c22(0xdf))/0x4+-parseInt(_0x1b3c22(0xed))/0x5+parseInt(_0x1b3c22(0xe1))/0x6*(-parseInt(_0x1b3c22(0xe7))/0x7)+parseInt(_0x1b3c22(0xdd))/0x8+parseInt(_0x1b3c22(0xe8))/0x9;if(_0x5b26f0===_0x596ad9)break;else _0x1467a0['push'](_0x1467a0['shift']());}catch(_0x707926){_0x1467a0['push'](_0x1467a0['shift']());}}}(a30_0x462e,0xa65be));import{listBffScripts}from'../../core/api-client.js';function a30_0x462e(){const _0x46b23b=['bool','appCode','COMMON','Return\x20full\x20script\x20objects','type','verbose','string','bff','No\x20BFF\x20scripts\x20found.','Script\x20type\x20filter','length','List\x20BFF\x20scripts','5513232mPQbAM','Filter\x20by\x20script\x20name','1906368eqJExh','str','7369284DdPqYo','boolean','ENDPOINT','1352604FUuEMW','scriptType','(unnamed)','7AzdzjT','15329070BNkMJt','map','21578MhPSZv','list','357SKTxWs','5140345OqtkHs'];a30_0x462e=function(){return _0x46b23b;};return a30_0x462e();}function a30_0xf339(_0x405f6d,_0x37ab29){_0x405f6d=_0x405f6d-0xd8;const _0x462e6d=a30_0x462e();let _0xf3399c=_0x462e6d[_0x405f6d];return _0xf3399c;}export const bffList={'service':a30_0x3ec48f(0xd8),'command':a30_0x3ec48f(0xeb),'description':a30_0x3ec48f(0xdc),'risk':'read','flags':[{'name':'type','type':a30_0x3ec48f(0xf4),'description':a30_0x3ec48f(0xda),'default':a30_0x3ec48f(0xe3),'enum':[a30_0x3ec48f(0xe3),a30_0x3ec48f(0xf0)]},{'name':'name','type':a30_0x3ec48f(0xf4),'description':a30_0x3ec48f(0xde)},{'name':a30_0x3ec48f(0xf3),'type':a30_0x3ec48f(0xe2),'description':a30_0x3ec48f(0xf1)}],async 'execute'(_0x99e4e6){const _0x304d14=a30_0x3ec48f,_0x33e064=await listBffScripts(_0x99e4e6[_0x304d14(0xef)],_0x99e4e6[_0x304d14(0xe0)](_0x304d14(0xf2)),{'scriptName':_0x99e4e6[_0x304d14(0xe0)]('name')||undefined}),_0x4b5fa9=_0x99e4e6[_0x304d14(0xee)](_0x304d14(0xf3));return{'ok':!![],'data':_0x4b5fa9?_0x33e064:_0x33e064[_0x304d14(0xe9)](_0x42cae5=>({'id':_0x42cae5['id'],'functionName':_0x42cae5['functionName']??'','description':_0x42cae5['description']||_0x304d14(0xe6),'scriptType':_0x42cae5[_0x304d14(0xe5)]})),'message':_0x33e064[_0x304d14(0xdb)]===0x0?_0x304d14(0xd9):undefined};}};
1
+ const a30_0x3a2a9e=a30_0x272e;function a30_0x272e(_0x3d5042,_0x27546e){_0x3d5042=_0x3d5042-0x14f;const _0x3cc136=a30_0x3cc1();let _0x272e6d=_0x3cc136[_0x3d5042];return _0x272e6d;}(function(_0x3db453,_0x5a18f3){const _0x570efa=a30_0x272e,_0x3f4c9d=_0x3db453();while(!![]){try{const _0x2ec507=-parseInt(_0x570efa(0x156))/0x1*(parseInt(_0x570efa(0x15b))/0x2)+-parseInt(_0x570efa(0x163))/0x3+-parseInt(_0x570efa(0x15e))/0x4+parseInt(_0x570efa(0x159))/0x5+-parseInt(_0x570efa(0x165))/0x6*(parseInt(_0x570efa(0x15f))/0x7)+-parseInt(_0x570efa(0x161))/0x8*(parseInt(_0x570efa(0x155))/0x9)+parseInt(_0x570efa(0x151))/0xa;if(_0x2ec507===_0x5a18f3)break;else _0x3f4c9d['push'](_0x3f4c9d['shift']());}catch(_0xa32092){_0x3f4c9d['push'](_0x3f4c9d['shift']());}}}(a30_0x3cc1,0x301d3));import{listBffScripts}from'../../core/api-client.js';function a30_0x3cc1(){const _0x5d39c3=['bool','971292BXEOIE','171507aBImgz','list','264pKfbEm','boolean','192408UxlJGm','read','90gSxidV','List\x20BFF\x20scripts','verbose','No\x20BFF\x20scripts\x20found.','name','8958850EvYdBQ','type','string','str','33651uHgWhz','67777CYaYQJ','bff','(unnamed)','834140tmVzqp','map','2KrXFfF','Script\x20type\x20filter'];a30_0x3cc1=function(){return _0x5d39c3;};return a30_0x3cc1();}export const bffList={'service':a30_0x3a2a9e(0x157),'command':a30_0x3a2a9e(0x160),'description':a30_0x3a2a9e(0x166),'risk':a30_0x3a2a9e(0x164),'flags':[{'name':a30_0x3a2a9e(0x152),'type':a30_0x3a2a9e(0x153),'description':a30_0x3a2a9e(0x15c),'default':'ENDPOINT','enum':['ENDPOINT','COMMON']},{'name':a30_0x3a2a9e(0x150),'type':a30_0x3a2a9e(0x153),'description':'Filter\x20by\x20script\x20name'},{'name':a30_0x3a2a9e(0x167),'type':a30_0x3a2a9e(0x162),'description':'Return\x20full\x20script\x20objects'}],async 'execute'(_0x2f851b){const _0x1c9460=a30_0x3a2a9e,_0x5ac4c8=await listBffScripts(_0x2f851b['appCode'],_0x2f851b['str'](_0x1c9460(0x152)),{'scriptName':_0x2f851b[_0x1c9460(0x154)]('name')||undefined}),_0x29990b=_0x2f851b[_0x1c9460(0x15d)]('verbose');return{'ok':!![],'data':_0x29990b?_0x5ac4c8:_0x5ac4c8[_0x1c9460(0x15a)](_0x4f1384=>({'id':_0x4f1384['id'],'functionName':_0x4f1384['functionName']??'','description':_0x4f1384['description']||_0x1c9460(0x158),'scriptType':_0x4f1384['scriptType']})),'message':_0x5ac4c8['length']===0x0?_0x1c9460(0x14f):undefined};}};
@@ -1 +1 @@
1
- function a31_0x2862(){const _0x46f933=['functionNode','appCode','includes','&type=','bool','9MCBnah','HOOK','parse','type','Pull\x20only\x20this\x20script\x20type','Remote\x20script\x20missing\x20content.','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','160098QtQQps','\x20remote\x20BFF\x20script(s)\x20for\x20pull','lockFilePath','alias','287267thngAR','ENDPOINT','/api/management/library/scripts/list?appCode=','filePath','lastSync','\x20failed','conflict','toISOString','nonInteractive','scriptsRoot','boolean','Pull\x20complete:\x20','toLowerCase','functions','stderr','927006bFxMit','\x20pulled,\x20','bff','validation','hookLocation','Force\x20overwrite\x20local\x20unsynced\x20changes','push','COMMON','would_pull','852400FapZhk','all','functionName','Would\x20inspect\x20','datasetCode','operationType','Lock\x20scope\x20for\x20app\x20\x22','scriptContent','\x20skipped,\x20','No\x20remote\x20BFF\x20scripts\x20found.','write','stdin','str','hash','9gmtqqY','skipped','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','utf8','GET','apps','4023082qzOIUM','1682815PnanDI','unresolvable\x20target\x20path','apiDir','pull','map','lockKey','Remote\x20script\x20missing\x20id.','length','yes','1200056DXCEIK','string','scriptType'];a31_0x2862=function(){return _0x46f933;};return a31_0x2862();}const a31_0x16f27b=a31_0x1f26;(function(_0x106216,_0x460fc8){const _0x32f52e=a31_0x1f26,_0x4c5c5f=_0x106216();while(!![]){try{const _0xa9256c=-parseInt(_0x32f52e(0x194))/0x1+-parseInt(_0x32f52e(0x1d9))/0x2*(-parseInt(_0x32f52e(0x1d2))/0x3)+-parseInt(_0x32f52e(0x1ca))/0x4+parseInt(_0x32f52e(0x1c1))/0x5+-parseInt(_0x32f52e(0x1a3))/0x6+parseInt(_0x32f52e(0x1c0))/0x7+-parseInt(_0x32f52e(0x1ac))/0x8*(parseInt(_0x32f52e(0x1ba))/0x9);if(_0xa9256c===_0x460fc8)break;else _0x4c5c5f['push'](_0x4c5c5f['shift']());}catch(_0x2e81e7){_0x4c5c5f['push'](_0x4c5c5f['shift']());}}}(a31_0x2862,0x4a000));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_0x16f27b(0x1a5),'command':a31_0x16f27b(0x1c4),'description':a31_0x16f27b(0x1d8),'risk':a31_0x16f27b(0x1b6),'flags':[{'name':'type','type':a31_0x16f27b(0x1cb),'description':a31_0x16f27b(0x1d6),'enum':[a31_0x16f27b(0x1aa),a31_0x16f27b(0x195),'HOOK']},{'name':'force','type':a31_0x16f27b(0x19e),'description':a31_0x16f27b(0x1a8)}],async 'dryRun'(_0x1e5da7){const _0xa5b286=a31_0x16f27b,_0x23f259=loadBffProjectConfig(_0x1e5da7[_0xa5b286(0x1ce)]),_0x2e8814=await readBffLockFile(_0x23f259[_0xa5b286(0x192)]),{appLock:_0x233076}=ensureLockScope(_0x2e8814??createEmptyBffLock(),_0x1e5da7[_0xa5b286(0x1ce)],_0x23f259[_0xa5b286(0x19d)],_0xa5b286(0x1c4)),_0xb11ec1=normalizeBffType(_0x1e5da7[_0xa5b286(0x1b8)](_0xa5b286(0x1d5)))??undefined,_0x95fde1=buildDatasetCodeToAliasMap(_0x1e5da7['apiDir'],_0x1e5da7[_0xa5b286(0x1ce)]),[_0x168f9f,_0x4a832e]=await Promise[_0xa5b286(0x1ad)]([listBffScripts(_0x1e5da7[_0xa5b286(0x1ce)],_0xb11ec1),getBffScriptStatistics(_0x1e5da7[_0xa5b286(0x1ce)])]),_0x2d9cfa=createHookLocationMap(_0x4a832e),_0x5dc438=[];for(const _0x2057ab of _0x168f9f){const _0x59f801=resolveRemoteScriptTarget(_0x23f259,_0x2057ab,_0x2d9cfa,_0x233076[_0xa5b286(0x1a1)],_0x95fde1);if(!_0x59f801){_0x5dc438[_0xa5b286(0x1a9)]({'scriptType':_0x2057ab['scriptType'],'functionName':_0x2057ab[_0xa5b286(0x1ae)]??'','status':_0xa5b286(0x1bb),'reason':'unresolvable\x20target\x20path'});continue;}const _0x2f95bd=_0x233076[_0xa5b286(0x1a1)][_0x59f801['lockKey']],_0x467108=_0x2057ab[_0xa5b286(0x1b3)]!=null?computeContentHash(_0x2057ab[_0xa5b286(0x1b3)]):undefined,_0x48f71d=await hasUnsyncedLocalChanges(_0x59f801[_0xa5b286(0x197)],_0x2f95bd,_0x467108);_0x5dc438[_0xa5b286(0x1a9)]({'lockKey':_0x59f801[_0xa5b286(0x1c6)],'filePath':_0x59f801[_0xa5b286(0x197)],'remoteId':_0x2057ab['id']??null,'status':_0x48f71d?_0xa5b286(0x19a):_0xa5b286(0x1ab)});}return{'method':_0xa5b286(0x1be),'url':_0xa5b286(0x196)+_0x1e5da7[_0xa5b286(0x1ce)]+(_0xb11ec1?_0xa5b286(0x1d0)+_0xb11ec1:''),'body':{'appCode':_0x1e5da7['appCode'],'filterType':_0xb11ec1??null,'files':_0x5dc438},'description':_0xa5b286(0x1af)+_0x5dc438[_0xa5b286(0x1c8)]+_0xa5b286(0x1da)};},async 'execute'(_0x2f501e){const _0x540e9e=a31_0x16f27b,_0x436770=loadBffProjectConfig(_0x2f501e[_0x540e9e(0x1ce)]),_0x70b3dd=await readBffLockFile(_0x436770[_0x540e9e(0x192)]),{lockData:_0x26dba8,appLock:_0x26370c}=ensureLockScope(_0x70b3dd??createEmptyBffLock(),_0x2f501e[_0x540e9e(0x1ce)],_0x436770[_0x540e9e(0x19d)],_0x540e9e(0x1c4)),_0x2878fc=normalizeBffType(_0x2f501e[_0x540e9e(0x1b8)](_0x540e9e(0x1d5)))??undefined;if(_0x2f501e[_0x540e9e(0x1b8)](_0x540e9e(0x1d5))&&!_0x2878fc)throw CliErrors[_0x540e9e(0x1a6)](_0x540e9e(0x1bc));const [_0x4ec08c,_0x546e95]=await Promise['all']([listBffScripts(_0x2f501e['appCode'],_0x2878fc),getBffScriptStatistics(_0x2f501e['appCode'])]);if(_0x4ec08c[_0x540e9e(0x1c8)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x540e9e(0x1b5)};const _0x1576fc=_0x2f501e[_0x540e9e(0x1d1)]('force');if(_0x1576fc&&!_0x2f501e[_0x540e9e(0x19c)]){const _0x273369=await confirmForce();if(!_0x273369)throw CliErrors['cancelled']('Force\x20pull\x20cancelled.');}if(_0x1576fc&&_0x2f501e[_0x540e9e(0x19c)]){}const _0x5e295c=buildDatasetCodeToAliasMap(_0x2f501e[_0x540e9e(0x1c3)],_0x2f501e['appCode']),_0x163b18=createHookLocationMap(_0x546e95),_0x32aece=JSON[_0x540e9e(0x1d4)](JSON['stringify'](_0x26dba8)),_0x4da0da=_0x2f501e['appCode'],_0x527ec5=_0x32aece[_0x540e9e(0x1bf)][_0x4da0da];if(!_0x527ec5)throw new Error(_0x540e9e(0x1b2)+_0x4da0da+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x52dce3=[],_0x7de733=[],_0x487e87=[];for(const _0x54e3ca of _0x4ec08c){const _0x489e69=resolveRemoteScriptTarget(_0x436770,_0x54e3ca,_0x163b18,_0x26370c[_0x540e9e(0x1a1)],_0x5e295c);if(!_0x489e69){_0x7de733[_0x540e9e(0x1a9)]({'lockKey':_0x54e3ca[_0x540e9e(0x1cc)]+'/'+_0x54e3ca['functionName'],'reason':_0x540e9e(0x1c2)});continue;}const _0x28f707=_0x26370c[_0x540e9e(0x1a1)][_0x489e69[_0x540e9e(0x1c6)]];try{if(!_0x54e3ca['id'])throw new Error(_0x540e9e(0x1c7));if(_0x54e3ca[_0x540e9e(0x1b3)]==null)throw new Error(_0x540e9e(0x1d7));const _0x3e4ca1=_0x54e3ca[_0x540e9e(0x1b3)],_0x5d61cb=computeContentHash(_0x3e4ca1);if(!_0x1576fc){const _0xffeb8=await hasUnsyncedLocalChanges(_0x489e69[_0x540e9e(0x197)],_0x28f707,_0x5d61cb);if(_0xffeb8){_0x7de733[_0x540e9e(0x1a9)]({'lockKey':_0x489e69[_0x540e9e(0x1c6)],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x489e69[_0x540e9e(0x197)]),await writeFile(_0x489e69[_0x540e9e(0x197)],_0x3e4ca1,_0x540e9e(0x1bd));const _0x499ada={'hash':_0x5d61cb,'remoteId':_0x54e3ca['id'],'version':_0x54e3ca['version']};_0x489e69[_0x540e9e(0x1d5)]===_0x540e9e(0x1d3)&&_0x489e69[_0x540e9e(0x1a7)]&&(_0x499ada[_0x540e9e(0x193)]=_0x489e69[_0x540e9e(0x1a7)][_0x540e9e(0x193)],_0x499ada['datasetCode']=_0x489e69[_0x540e9e(0x1a7)]['datasetCode'],_0x499ada[_0x540e9e(0x1b1)]=_0x489e69['hookLocation'][_0x540e9e(0x1b1)],_0x499ada[_0x540e9e(0x1cd)]=_0x489e69[_0x540e9e(0x1a7)][_0x540e9e(0x1cd)]),_0x527ec5['functions'][_0x489e69[_0x540e9e(0x1c6)]]=_0x499ada,_0x52dce3[_0x540e9e(0x1a9)]({'lockKey':_0x489e69[_0x540e9e(0x1c6)],'remoteId':_0x54e3ca['id']});}catch(_0x4e20bb){_0x487e87[_0x540e9e(0x1a9)]({'lockKey':_0x489e69[_0x540e9e(0x1c6)],'error':_0x4e20bb instanceof Error?_0x4e20bb['message']:String(_0x4e20bb)});}}return _0x527ec5[_0x540e9e(0x198)]=new Date()[_0x540e9e(0x19b)](),await writeBffLockFile(_0x436770[_0x540e9e(0x192)],_0x32aece),{'ok':_0x487e87[_0x540e9e(0x1c8)]===0x0,'data':{'pulled':_0x52dce3,'skipped':_0x7de733,'failed':_0x487e87},'message':_0x540e9e(0x19f)+_0x52dce3[_0x540e9e(0x1c8)]+_0x540e9e(0x1a4)+_0x7de733['length']+_0x540e9e(0x1b4)+_0x487e87[_0x540e9e(0x1c8)]+_0x540e9e(0x199)};}};async function hasUnsyncedLocalChanges(_0x857172,_0x243f03,_0x10b541){const _0x33ad80=a31_0x16f27b;if(!await fileExists(_0x857172))return![];const _0x1f436b=await computeFileHash(_0x857172);if(!_0x243f03)return _0x10b541?_0x1f436b!==_0x10b541:!![];return _0x1f436b!==_0x243f03[_0x33ad80(0x1b9)];}function a31_0x1f26(_0x3d06eb,_0x10c193){_0x3d06eb=_0x3d06eb-0x192;const _0x2862a3=a31_0x2862();let _0x1f2681=_0x2862a3[_0x3d06eb];return _0x1f2681;}function buildDatasetCodeToAliasMap(_0x37554f,_0x315849){const _0x335719=a31_0x16f27b,_0x3df11a=loadAliasMap(_0x37554f,undefined,resolveApiFilePath(_0x37554f,_0x315849));return new Map(_0x3df11a[_0x335719(0x1c5)](_0x116929=>[_0x116929[_0x335719(0x1b0)],_0x116929['alias']]));}async function confirmForce(){const _0x95735e=a31_0x16f27b,_0x93c583=createInterface({'input':process[_0x95735e(0x1b7)],'output':process[_0x95735e(0x1a2)]}),_0x1a8a7b=await new Promise(_0x519b9a=>{_0x93c583['question']('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0x519b9a);});return _0x93c583['close'](),['y',_0x95735e(0x1c9)][_0x95735e(0x1cf)](_0x1a8a7b['trim']()[_0x95735e(0x1a0)]());}
1
+ const a31_0x2ef08d=a31_0x43ee;(function(_0x4214a5,_0x31315e){const _0x387e73=a31_0x43ee,_0x1e6258=_0x4214a5();while(!![]){try{const _0x499888=parseInt(_0x387e73(0x1fd))/0x1*(-parseInt(_0x387e73(0x1ef))/0x2)+-parseInt(_0x387e73(0x1e9))/0x3*(parseInt(_0x387e73(0x1f9))/0x4)+-parseInt(_0x387e73(0x207))/0x5*(parseInt(_0x387e73(0x208))/0x6)+parseInt(_0x387e73(0x212))/0x7+parseInt(_0x387e73(0x1f7))/0x8+parseInt(_0x387e73(0x201))/0x9+-parseInt(_0x387e73(0x21e))/0xa*(parseInt(_0x387e73(0x20f))/0xb);if(_0x499888===_0x31315e)break;else _0x1e6258['push'](_0x1e6258['shift']());}catch(_0x3d0aa){_0x1e6258['push'](_0x1e6258['shift']());}}}(a31_0x9095,0xd6381));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';function a31_0x9095(){const _0x34afa5=['Lock\x20scope\x20for\x20app\x20\x22','HOOK','functionNode','toISOString','No\x20remote\x20BFF\x20scripts\x20found.','trim','boolean','hookLocation','close','nonInteractive','unresolvable\x20target\x20path','670WbHSSp','filePath','question','Pull\x20only\x20this\x20script\x20type','all','ENDPOINT','stringify','parse','local\x20unsynced\x20changes','datasetCode','apiDir','\x20pulled,\x20','scriptsRoot','lockKey','operationType','write','str','351993CcDios','length','Force\x20pull\x20cancelled.','message','GET','functionName','18sWlFjy','bool','\x20failed','stdin','functions','would_pull','COMMON','map','12824736XTqGne','&type=','4fdjjMh','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','lockFilePath','lastSync','157303JCZRYs','bff','\x22\x20not\x20found\x20after\x20ensureLockScope.','type','10732410lxpnIv','scriptType','pull','Would\x20inspect\x20','validation','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','5PLnnWs','2035722sbofdD','appCode','Force\x20overwrite\x20local\x20unsynced\x20changes','stderr','string','force','apps','208868mrozMD','scriptContent','push','8584800qZkJJk'];a31_0x9095=function(){return _0x34afa5;};return a31_0x9095();}import{resolveApiFilePath}from'../../context.js';function a31_0x43ee(_0x36dde8,_0x479043){_0x36dde8=_0x36dde8-0x1df;const _0x909563=a31_0x9095();let _0x43ee5b=_0x909563[_0x36dde8];return _0x43ee5b;}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_0x2ef08d(0x1fe),'command':a31_0x2ef08d(0x203),'description':a31_0x2ef08d(0x206),'risk':a31_0x2ef08d(0x1e7),'flags':[{'name':a31_0x2ef08d(0x200),'type':a31_0x2ef08d(0x20c),'description':a31_0x2ef08d(0x221),'enum':[a31_0x2ef08d(0x1f5),a31_0x2ef08d(0x223),a31_0x2ef08d(0x214)]},{'name':a31_0x2ef08d(0x20d),'type':a31_0x2ef08d(0x219),'description':a31_0x2ef08d(0x20a)}],async 'dryRun'(_0x57a08a){const _0x152b21=a31_0x2ef08d,_0x4452b9=loadBffProjectConfig(_0x57a08a[_0x152b21(0x209)]),_0x5b18f8=await readBffLockFile(_0x4452b9[_0x152b21(0x1fb)]),{appLock:_0x3daa2a}=ensureLockScope(_0x5b18f8??createEmptyBffLock(),_0x57a08a[_0x152b21(0x209)],_0x4452b9['scriptsRoot'],_0x152b21(0x203)),_0x46a6ac=normalizeBffType(_0x57a08a[_0x152b21(0x1e8)]('type'))??undefined,_0x1484ba=buildDatasetCodeToAliasMap(_0x57a08a[_0x152b21(0x1e2)],_0x57a08a['appCode']),[_0x3f98a7,_0x2f2918]=await Promise[_0x152b21(0x222)]([listBffScripts(_0x57a08a[_0x152b21(0x209)],_0x46a6ac),getBffScriptStatistics(_0x57a08a['appCode'])]),_0x5a27bf=createHookLocationMap(_0x2f2918),_0x289da6=[];for(const _0x1b0bcd of _0x3f98a7){const _0x453bee=resolveRemoteScriptTarget(_0x4452b9,_0x1b0bcd,_0x5a27bf,_0x3daa2a[_0x152b21(0x1f3)],_0x1484ba);if(!_0x453bee){_0x289da6[_0x152b21(0x211)]({'scriptType':_0x1b0bcd[_0x152b21(0x202)],'functionName':_0x1b0bcd[_0x152b21(0x1ee)]??'','status':'skipped','reason':'unresolvable\x20target\x20path'});continue;}const _0x7d0d48=_0x3daa2a[_0x152b21(0x1f3)][_0x453bee[_0x152b21(0x1e5)]],_0x1b6c34=_0x1b0bcd[_0x152b21(0x210)]!=null?computeContentHash(_0x1b0bcd[_0x152b21(0x210)]):undefined,_0x2eb2ee=await hasUnsyncedLocalChanges(_0x453bee[_0x152b21(0x21f)],_0x7d0d48,_0x1b6c34);_0x289da6[_0x152b21(0x211)]({'lockKey':_0x453bee[_0x152b21(0x1e5)],'filePath':_0x453bee[_0x152b21(0x21f)],'remoteId':_0x1b0bcd['id']??null,'status':_0x2eb2ee?'conflict':_0x152b21(0x1f4)});}return{'method':_0x152b21(0x1ed),'url':'/api/management/library/scripts/list?appCode='+_0x57a08a[_0x152b21(0x209)]+(_0x46a6ac?_0x152b21(0x1f8)+_0x46a6ac:''),'body':{'appCode':_0x57a08a['appCode'],'filterType':_0x46a6ac??null,'files':_0x289da6},'description':_0x152b21(0x204)+_0x289da6['length']+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x3040cd){const _0x317559=a31_0x2ef08d,_0x46b134=loadBffProjectConfig(_0x3040cd['appCode']),_0x1c8073=await readBffLockFile(_0x46b134['lockFilePath']),{lockData:_0xbccfbe,appLock:_0x36687d}=ensureLockScope(_0x1c8073??createEmptyBffLock(),_0x3040cd[_0x317559(0x209)],_0x46b134[_0x317559(0x1e4)],_0x317559(0x203)),_0x125246=normalizeBffType(_0x3040cd['str']('type'))??undefined;if(_0x3040cd[_0x317559(0x1e8)](_0x317559(0x200))&&!_0x125246)throw CliErrors[_0x317559(0x205)]('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0x5d1ebd,_0x4f60e3]=await Promise[_0x317559(0x222)]([listBffScripts(_0x3040cd[_0x317559(0x209)],_0x125246),getBffScriptStatistics(_0x3040cd['appCode'])]);if(_0x5d1ebd['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x317559(0x217)};const _0x49fb2b=_0x3040cd[_0x317559(0x1f0)](_0x317559(0x20d));if(_0x49fb2b&&!_0x3040cd['nonInteractive']){const _0x4c61ca=await confirmForce();if(!_0x4c61ca)throw CliErrors['cancelled'](_0x317559(0x1eb));}if(_0x49fb2b&&_0x3040cd[_0x317559(0x21c)]){}const _0x24e777=buildDatasetCodeToAliasMap(_0x3040cd[_0x317559(0x1e2)],_0x3040cd[_0x317559(0x209)]),_0x3dd312=createHookLocationMap(_0x4f60e3),_0x1595c1=JSON[_0x317559(0x1df)](JSON[_0x317559(0x224)](_0xbccfbe)),_0x4af2d7=_0x3040cd[_0x317559(0x209)],_0x23832c=_0x1595c1[_0x317559(0x20e)][_0x4af2d7];if(!_0x23832c)throw new Error(_0x317559(0x213)+_0x4af2d7+_0x317559(0x1ff));const _0x43ed9b=[],_0x3b9733=[],_0x16af98=[];for(const _0x4e464e of _0x5d1ebd){const _0x16b6ab=resolveRemoteScriptTarget(_0x46b134,_0x4e464e,_0x3dd312,_0x36687d[_0x317559(0x1f3)],_0x24e777);if(!_0x16b6ab){_0x3b9733['push']({'lockKey':_0x4e464e[_0x317559(0x202)]+'/'+_0x4e464e[_0x317559(0x1ee)],'reason':_0x317559(0x21d)});continue;}const _0x57fa5c=_0x36687d[_0x317559(0x1f3)][_0x16b6ab[_0x317559(0x1e5)]];try{if(!_0x4e464e['id'])throw new Error('Remote\x20script\x20missing\x20id.');if(_0x4e464e['scriptContent']==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x5f551f=_0x4e464e[_0x317559(0x210)],_0x3f80c0=computeContentHash(_0x5f551f);if(!_0x49fb2b){const _0x3fee53=await hasUnsyncedLocalChanges(_0x16b6ab[_0x317559(0x21f)],_0x57fa5c,_0x3f80c0);if(_0x3fee53){_0x3b9733[_0x317559(0x211)]({'lockKey':_0x16b6ab[_0x317559(0x1e5)],'reason':_0x317559(0x1e0)});continue;}}await ensureParentDirectory(_0x16b6ab['filePath']),await writeFile(_0x16b6ab[_0x317559(0x21f)],_0x5f551f,'utf8');const _0x4a700b={'hash':_0x3f80c0,'remoteId':_0x4e464e['id'],'version':_0x4e464e['version']};_0x16b6ab['type']===_0x317559(0x214)&&_0x16b6ab[_0x317559(0x21a)]&&(_0x4a700b['alias']=_0x16b6ab[_0x317559(0x21a)]['alias'],_0x4a700b[_0x317559(0x1e1)]=_0x16b6ab[_0x317559(0x21a)][_0x317559(0x1e1)],_0x4a700b[_0x317559(0x1e6)]=_0x16b6ab[_0x317559(0x21a)][_0x317559(0x1e6)],_0x4a700b['functionNode']=_0x16b6ab['hookLocation'][_0x317559(0x215)]),_0x23832c[_0x317559(0x1f3)][_0x16b6ab[_0x317559(0x1e5)]]=_0x4a700b,_0x43ed9b['push']({'lockKey':_0x16b6ab['lockKey'],'remoteId':_0x4e464e['id']});}catch(_0x12f326){_0x16af98[_0x317559(0x211)]({'lockKey':_0x16b6ab[_0x317559(0x1e5)],'error':_0x12f326 instanceof Error?_0x12f326[_0x317559(0x1ec)]:String(_0x12f326)});}}return _0x23832c[_0x317559(0x1fc)]=new Date()[_0x317559(0x216)](),await writeBffLockFile(_0x46b134[_0x317559(0x1fb)],_0x1595c1),{'ok':_0x16af98[_0x317559(0x1ea)]===0x0,'data':{'pulled':_0x43ed9b,'skipped':_0x3b9733,'failed':_0x16af98},'message':'Pull\x20complete:\x20'+_0x43ed9b[_0x317559(0x1ea)]+_0x317559(0x1e3)+_0x3b9733[_0x317559(0x1ea)]+'\x20skipped,\x20'+_0x16af98['length']+_0x317559(0x1f1)};}};async function hasUnsyncedLocalChanges(_0x550722,_0xf84009,_0x2077a2){if(!await fileExists(_0x550722))return![];const _0x40fc62=await computeFileHash(_0x550722);if(!_0xf84009)return _0x2077a2?_0x40fc62!==_0x2077a2:!![];return _0x40fc62!==_0xf84009['hash'];}function buildDatasetCodeToAliasMap(_0x445e8d,_0x3ab0d0){const _0x462ae1=a31_0x2ef08d,_0x347187=loadAliasMap(_0x445e8d,undefined,resolveApiFilePath(_0x445e8d,_0x3ab0d0));return new Map(_0x347187[_0x462ae1(0x1f6)](_0x5e16c0=>[_0x5e16c0[_0x462ae1(0x1e1)],_0x5e16c0['alias']]));}async function confirmForce(){const _0x9048e6=a31_0x2ef08d,_0x31b868=createInterface({'input':process[_0x9048e6(0x1f2)],'output':process[_0x9048e6(0x20b)]}),_0x3abaf6=await new Promise(_0x13dd58=>{const _0x1ca22b=_0x9048e6;_0x31b868[_0x1ca22b(0x220)](_0x1ca22b(0x1fa),_0x13dd58);});return _0x31b868[_0x9048e6(0x21b)](),['y','yes']['includes'](_0x3abaf6[_0x9048e6(0x218)]()['toLowerCase']());}