@lovrabet/rabetbase-cli 2.1.12-beta.2 → 2.1.12-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) 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/field-update.js +1 -1
  55. package/lib/commands/dataset/index.js +1 -1
  56. package/lib/commands/dataset/link-create.js +1 -1
  57. package/lib/commands/dataset/link-delete.js +1 -1
  58. package/lib/commands/dataset/link-shared.js +1 -1
  59. package/lib/commands/dataset/link-update.js +1 -1
  60. package/lib/commands/dataset/links.js +1 -1
  61. package/lib/commands/dataset/list.js +1 -1
  62. package/lib/commands/dataset/operations.js +1 -1
  63. package/lib/commands/db/analyze-cancel.js +1 -1
  64. package/lib/commands/db/analyze-start.js +1 -1
  65. package/lib/commands/db/analyze-status.js +1 -1
  66. package/lib/commands/db/create.js +1 -1
  67. package/lib/commands/db/delete.js +1 -1
  68. package/lib/commands/db/detail.js +1 -1
  69. package/lib/commands/db/diff.js +1 -1
  70. package/lib/commands/db/index.js +1 -1
  71. package/lib/commands/db/list.js +1 -1
  72. package/lib/commands/db/shared.js +1 -1
  73. package/lib/commands/db/tables.js +1 -1
  74. package/lib/commands/db/test.js +1 -1
  75. package/lib/commands/db/update.js +1 -1
  76. package/lib/commands/doctor.js +1 -1
  77. package/lib/commands/init/index.js +1 -1
  78. package/lib/commands/issue/index.js +1 -1
  79. package/lib/commands/issue/nudge.js +1 -1
  80. package/lib/commands/issue/report.js +1 -1
  81. package/lib/commands/issue/shared.js +1 -1
  82. package/lib/commands/logs/index.js +1 -1
  83. package/lib/commands/menu/index.js +1 -1
  84. package/lib/commands/menu/shared/compare-table.js +1 -1
  85. package/lib/commands/menu/shared/index.js +1 -1
  86. package/lib/commands/menu/shared/inquirer.js +1 -1
  87. package/lib/commands/menu/shared/local-pages.js +1 -1
  88. package/lib/commands/menu/shared/logic.js +1 -1
  89. package/lib/commands/menu/shared/service.js +1 -1
  90. package/lib/commands/menu/shared/sync-core.js +1 -1
  91. package/lib/commands/menu/shared/update-core.js +1 -1
  92. package/lib/commands/menu/shared/valid-url.js +1 -1
  93. package/lib/commands/menu/sync.js +1 -1
  94. package/lib/commands/menu/update.js +1 -1
  95. package/lib/commands/page/generate-start.js +1 -1
  96. package/lib/commands/page/generate-status.js +1 -1
  97. package/lib/commands/page/index.js +1 -1
  98. package/lib/commands/page/pull.js +1 -1
  99. package/lib/commands/page/push.js +1 -1
  100. package/lib/commands/page/shared.js +1 -1
  101. package/lib/commands/page/standard-page-status.js +1 -1
  102. package/lib/commands/page/sync.js +1 -1
  103. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  104. package/lib/commands/project/create/format-elapsed.js +1 -1
  105. package/lib/commands/project/create/main.js +1 -1
  106. package/lib/commands/project/create/non-interactive.js +1 -1
  107. package/lib/commands/project/create/project-template-path.js +1 -1
  108. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  109. package/lib/commands/project/create/use-format-code.js +1 -1
  110. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  111. package/lib/commands/project/index.js +1 -1
  112. package/lib/commands/project/init.js +1 -1
  113. package/lib/commands/project/upgrade.js +1 -1
  114. package/lib/commands/registry.js +1 -1
  115. package/lib/commands/run/index.js +1 -1
  116. package/lib/commands/schema.js +1 -1
  117. package/lib/commands/skill/index.js +1 -1
  118. package/lib/commands/sql/create.js +1 -1
  119. package/lib/commands/sql/delete.js +1 -1
  120. package/lib/commands/sql/detail.js +1 -1
  121. package/lib/commands/sql/exec.js +1 -1
  122. package/lib/commands/sql/index.js +1 -1
  123. package/lib/commands/sql/list.js +1 -1
  124. package/lib/commands/sql/pull.js +1 -1
  125. package/lib/commands/sql/push.js +1 -1
  126. package/lib/commands/sql/save.js +1 -1
  127. package/lib/commands/sql/shared.js +1 -1
  128. package/lib/commands/sql/status.js +1 -1
  129. package/lib/commands/sql/validate.js +1 -1
  130. package/lib/config/schema.js +1 -1
  131. package/lib/constant/cdn.js +1 -1
  132. package/lib/constant/cli.js +1 -1
  133. package/lib/constant/defaults.js +1 -1
  134. package/lib/constant/domain.js +1 -1
  135. package/lib/constant/env.js +1 -1
  136. package/lib/constant/output.js +1 -1
  137. package/lib/constant/paths.js +1 -1
  138. package/lib/constant/risk.js +1 -1
  139. package/lib/context.js +1 -1
  140. package/lib/core/alias-resolver.js +1 -1
  141. package/lib/core/api-client.js +1 -1
  142. package/lib/core/bff/config.js +1 -1
  143. package/lib/core/bff/file-system.js +1 -1
  144. package/lib/core/bff/hash.js +1 -1
  145. package/lib/core/bff/lock.js +1 -1
  146. package/lib/core/bff/utils.js +1 -1
  147. package/lib/core/db-resolver.js +1 -1
  148. package/lib/core/page/file-system.js +1 -1
  149. package/lib/core/page/hash.js +1 -1
  150. package/lib/core/page/lock.js +1 -1
  151. package/lib/core/sql-sync/config.js +1 -1
  152. package/lib/core/sql-sync/file-system.js +1 -1
  153. package/lib/core/sql-sync/hash.js +1 -1
  154. package/lib/core/sql-sync/lock.js +1 -1
  155. package/lib/core/sql-sync/utils.js +1 -1
  156. package/lib/core/sql-validator.js +1 -1
  157. package/lib/errors.js +1 -1
  158. package/lib/framework/build-all-flags.js +1 -1
  159. package/lib/framework/flags.js +1 -1
  160. package/lib/framework/help.js +1 -1
  161. package/lib/framework/index.js +1 -1
  162. package/lib/framework/output.js +1 -1
  163. package/lib/framework/response.js +1 -1
  164. package/lib/framework/runner-alias.js +1 -1
  165. package/lib/framework/runner.js +1 -1
  166. package/lib/framework/schema-export.js +1 -1
  167. package/lib/framework/types.js +1 -1
  168. package/lib/generated/build-info.js +1 -1
  169. package/lib/help.js +1 -1
  170. package/lib/skills/main.js +1 -1
  171. package/lib/skills/npx-skills-add.js +1 -1
  172. package/lib/telemetry/cli-command-trace.js +1 -1
  173. package/lib/telemetry/cli-help-trace.js +1 -1
  174. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  175. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  176. package/lib/telemetry/send-cli-trace-log.js +1 -1
  177. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  178. package/lib/utils/ai_config.js +1 -1
  179. package/lib/utils/apply-jq-filter.js +1 -1
  180. package/lib/utils/cdn-config.js +1 -1
  181. package/lib/utils/check-sdk-version.js +1 -1
  182. package/lib/utils/cli-version-check.js +1 -1
  183. package/lib/utils/cli-version-policy.js +1 -1
  184. package/lib/utils/config.js +1 -1
  185. package/lib/utils/copy-directory.js +1 -1
  186. package/lib/utils/entity-with-id.js +1 -1
  187. package/lib/utils/file-utils.js +1 -1
  188. package/lib/utils/guides-cdn.js +1 -1
  189. package/lib/utils/http-client.js +1 -1
  190. package/lib/utils/is-non-interactive.js +1 -1
  191. package/lib/utils/logger.js +1 -1
  192. package/lib/utils/params.js +1 -1
  193. package/lib/utils/platform.js +1 -1
  194. package/lib/utils/rules-cdn.js +1 -1
  195. package/lib/utils/sleep.js +1 -1
  196. package/lib/utils/template-replacer.js +1 -1
  197. package/lib/utils/version.js +1 -1
  198. package/lib/utils/with-active-cookie.js +1 -1
  199. package/lib/utils/write-cli-side-channel.js +1 -1
  200. package/package.json +1 -1
@@ -1 +1 @@
1
- const a18_0x14a624=a18_0x468c;(function(_0x49245f,_0x46da1f){const _0x5dec0c=a18_0x468c,_0x5352ac=_0x49245f();while(!![]){try{const _0x521574=-parseInt(_0x5dec0c(0xd3))/0x1*(parseInt(_0x5dec0c(0xc0))/0x2)+parseInt(_0x5dec0c(0xd2))/0x3+parseInt(_0x5dec0c(0xd4))/0x4*(parseInt(_0x5dec0c(0xb8))/0x5)+-parseInt(_0x5dec0c(0xcb))/0x6+parseInt(_0x5dec0c(0xbc))/0x7+-parseInt(_0x5dec0c(0xb6))/0x8*(parseInt(_0x5dec0c(0xce))/0x9)+-parseInt(_0x5dec0c(0xd0))/0xa*(-parseInt(_0x5dec0c(0xbd))/0xb);if(_0x521574===_0x46da1f)break;else _0x5352ac['push'](_0x5352ac['shift']());}catch(_0x344971){_0x5352ac['push'](_0x5352ac['shift']());}}}(a18_0x4669,0x551a0));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{collectAppProfileOverrides,getAppProfileFlagDefs}from'../../config/schema.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x3b15e8){const _0x53a329=a18_0x468c,_0x3828de=_0x3b15e8[_0x53a329(0xcd)][0x0]?.[_0x53a329(0xd1)]();if(!_0x3828de)throw CliErrors[_0x53a329(0xd6)](_0x53a329(0xc3),'Usage:\x20'+CLI_BIN_NAME+_0x53a329(0xd5));}async function execute(_0x57b4f2){const _0x4380eb=a18_0x468c,_0x5f4938=_0x57b4f2[_0x4380eb(0xcd)][0x0]?.[_0x4380eb(0xd1)]();if(!_0x5f4938)throw CliErrors[_0x4380eb(0xd6)](_0x4380eb(0xc3),_0x4380eb(0xc9)+CLI_BIN_NAME+_0x4380eb(0xd5));const _0x3ec971=_0x57b4f2['str'](_0x4380eb(0xcf));if(!_0x3ec971)throw CliErrors['flagMissing'](_0x4380eb(0xcf),_0x4380eb(0xc9)+CLI_BIN_NAME+_0x4380eb(0xd5));const _0x5900a9={'global':_0x57b4f2[_0x4380eb(0xcc)]('global')},_0x217f5a=readConfig(_0x5900a9);if(!_0x217f5a['apps'])_0x217f5a['apps']={};const _0x1a2509={'appcode':_0x3ec971,...collectAppProfileOverrides(_0x49bc12=>_0x57b4f2[_0x4380eb(0xc5)](_0x49bc12))},_0x4a9e3a=_0x217f5a[_0x4380eb(0xbe)],_0x4f064c=!!_0x4a9e3a[_0x5f4938];_0x4a9e3a[_0x5f4938]=_0x1a2509;if(!_0x217f5a[_0x4380eb(0xc1)])_0x217f5a[_0x4380eb(0xc1)]=_0x5f4938;writeConfig(_0x217f5a,_0x5900a9);const _0x4a2f6a=!_0x4f064c&&_0x217f5a[_0x4380eb(0xc1)]===_0x5f4938?_0x4380eb(0xb5):'',_0x7807c8=(_0x4f064c?_0x4380eb(0xbf):_0x4380eb(0xb9))+'\x20app\x20\x22'+_0x5f4938+_0x4380eb(0xbb)+_0x3ec971+')'+scopeLabel(_0x5900a9)+'.'+_0x4a2f6a;return{'ok':!![],'message':_0x7807c8};}function a18_0x468c(_0x244c50,_0x9a314f){_0x244c50=_0x244c50-0xb5;const _0x466934=a18_0x4669();let _0x468c91=_0x466934[_0x244c50];return _0x468c91;}function a18_0x4669(){const _0x3a401b=['22976nfPcCi','Add\x20or\x20update\x20an\x20app\x20in\x20config','136810ShPOWs','Added','App\x20profile\x20name','\x22\x20(appcode:\x20','4851735HlWrVF','6259iWyLqd','apps','Updated','298glburJ','defaultApp','global','Missing\x20app\x20name.','App\x20code','str','Use\x20global\x20config\x20scope','name','string','Usage:\x20','app','2407866ntdwpL','bool','args','1440vizeft','appcode','2630LfRDBZ','trim','1741203tRuvaz','2720feQRiu','28Xensar','\x20app\x20add\x20<name>\x20--appcode\x20<code>','validation','\x20Set\x20as\x20default\x20app.'];a18_0x4669=function(){return _0x3a401b;};return a18_0x4669();}export const appAddDefinition={'service':a18_0x14a624(0xca),'command':'add','description':a18_0x14a624(0xb7),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a18_0x14a624(0xc7),'description':a18_0x14a624(0xba),'required':!![]}],'flags':[{'name':a18_0x14a624(0xcf),'type':a18_0x14a624(0xc8),'description':a18_0x14a624(0xc4),'required':!![]},{'name':a18_0x14a624(0xc2),'type':'boolean','description':a18_0x14a624(0xc6),'default':![]},...getAppProfileFlagDefs()],'validate':validateArgs,'execute':execute};
1
+ const a18_0x22281f=a18_0x3842;function a18_0x2551(){const _0x87baa6=['8SKlQPg','Use\x20global\x20config\x20scope','global','string','boolean','1345502URVVkB','14klKhXQ','apps','\x20app\x20\x22','App\x20profile\x20name','\x22\x20(appcode:\x20','write','App\x20code','2881320MbLNLI','add','appcode','Added','bool','args','2354550mFmjBp','name','trim','validation','3953416HvkHbw','\x20app\x20add\x20<name>\x20--appcode\x20<code>','1357812zxJiTS','21746592LpmjOj','str','Usage:\x20','88764FbsZqT','\x20Set\x20as\x20default\x20app.','defaultApp'];a18_0x2551=function(){return _0x87baa6;};return a18_0x2551();}(function(_0x29e349,_0x13df59){const _0x5e3271=a18_0x3842,_0x264a27=_0x29e349();while(!![]){try{const _0x4262c0=-parseInt(_0x5e3271(0x10c))/0x1+-parseInt(_0x5e3271(0xfa))/0x2+parseInt(_0x5e3271(0x100))/0x3*(parseInt(_0x5e3271(0x107))/0x4)+-parseInt(_0x5e3271(0x114))/0x5+-parseInt(_0x5e3271(0x104))/0x6*(parseInt(_0x5e3271(0x10d))/0x7)+parseInt(_0x5e3271(0xfe))/0x8+parseInt(_0x5e3271(0x101))/0x9;if(_0x4262c0===_0x13df59)break;else _0x264a27['push'](_0x264a27['shift']());}catch(_0x3c7352){_0x264a27['push'](_0x264a27['shift']());}}}(a18_0x2551,0xa7bc4));import{CliErrors}from'../../errors.js';function a18_0x3842(_0x115837,_0x12e39d){_0x115837=_0x115837-0xf8;const _0x2551df=a18_0x2551();let _0x3842d1=_0x2551df[_0x115837];return _0x3842d1;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{collectAppProfileOverrides,getAppProfileFlagDefs}from'../../config/schema.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x5de190){const _0x3b9c14=a18_0x3842,_0x461217=_0x5de190['args'][0x0]?.[_0x3b9c14(0xfc)]();if(!_0x461217)throw CliErrors[_0x3b9c14(0xfd)]('Missing\x20app\x20name.',_0x3b9c14(0x103)+CLI_BIN_NAME+_0x3b9c14(0xff));}async function execute(_0x346a4c){const _0x1c2ff6=a18_0x3842,_0x1c228d=_0x346a4c[_0x1c2ff6(0xf9)][0x0]?.[_0x1c2ff6(0xfc)]();if(!_0x1c228d)throw CliErrors['validation']('Missing\x20app\x20name.',_0x1c2ff6(0x103)+CLI_BIN_NAME+_0x1c2ff6(0xff));const _0x5d93db=_0x346a4c['str']('appcode');if(!_0x5d93db)throw CliErrors['flagMissing'](_0x1c2ff6(0x116),'Usage:\x20'+CLI_BIN_NAME+_0x1c2ff6(0xff));const _0x105d0f={'global':_0x346a4c[_0x1c2ff6(0xf8)](_0x1c2ff6(0x109))},_0x5f0ba5=readConfig(_0x105d0f);if(!_0x5f0ba5[_0x1c2ff6(0x10e)])_0x5f0ba5['apps']={};const _0x265cb7={'appcode':_0x5d93db,...collectAppProfileOverrides(_0x204367=>_0x346a4c[_0x1c2ff6(0x102)](_0x204367))},_0x2068e4=_0x5f0ba5[_0x1c2ff6(0x10e)],_0x285fb2=!!_0x2068e4[_0x1c228d];_0x2068e4[_0x1c228d]=_0x265cb7;if(!_0x5f0ba5[_0x1c2ff6(0x106)])_0x5f0ba5['defaultApp']=_0x1c228d;writeConfig(_0x5f0ba5,_0x105d0f);const _0x2ffd44=!_0x285fb2&&_0x5f0ba5[_0x1c2ff6(0x106)]===_0x1c228d?_0x1c2ff6(0x105):'',_0xc4a9b7=(_0x285fb2?'Updated':_0x1c2ff6(0x117))+_0x1c2ff6(0x10f)+_0x1c228d+_0x1c2ff6(0x111)+_0x5d93db+')'+scopeLabel(_0x105d0f)+'.'+_0x2ffd44;return{'ok':!![],'message':_0xc4a9b7};}export const appAddDefinition={'service':'app','command':a18_0x22281f(0x115),'description':'Add\x20or\x20update\x20an\x20app\x20in\x20config','risk':a18_0x22281f(0x112),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a18_0x22281f(0xfb),'description':a18_0x22281f(0x110),'required':!![]}],'flags':[{'name':a18_0x22281f(0x116),'type':a18_0x22281f(0x10a),'description':a18_0x22281f(0x113),'required':!![]},{'name':a18_0x22281f(0x109),'type':a18_0x22281f(0x10b),'description':a18_0x22281f(0x108),'default':![]},...getAppProfileFlagDefs()],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- function a19_0x2788(_0x26da06,_0x37cf29){_0x26da06=_0x26da06-0x74;const _0x5ec530=a19_0x5ec5();let _0x27885b=_0x5ec530[_0x26da06];return _0x27885b;}const a19_0x303745=a19_0x2788;(function(_0x25993b,_0xb94d02){const _0x20cdc4=a19_0x2788,_0x4a556d=_0x25993b();while(!![]){try{const _0x2cc5b9=-parseInt(_0x20cdc4(0x82))/0x1*(parseInt(_0x20cdc4(0x7f))/0x2)+-parseInt(_0x20cdc4(0x76))/0x3+-parseInt(_0x20cdc4(0x7c))/0x4*(-parseInt(_0x20cdc4(0x84))/0x5)+parseInt(_0x20cdc4(0x79))/0x6*(parseInt(_0x20cdc4(0x7e))/0x7)+-parseInt(_0x20cdc4(0x80))/0x8+-parseInt(_0x20cdc4(0x74))/0x9*(parseInt(_0x20cdc4(0x78))/0xa)+parseInt(_0x20cdc4(0x77))/0xb;if(_0x2cc5b9===_0xb94d02)break;else _0x4a556d['push'](_0x4a556d['shift']());}catch(_0x19320d){_0x4a556d['push'](_0x4a556d['shift']());}}}(a19_0x5ec5,0xbe1c8));import{listRemoteApps}from'../../core/api-client.js';function a19_0x5ec5(){const _0x4be997=['35tijfTt','9AycJIv','app','3610170ZIKXuw','21567040UvDiDN','5713960cTeyjn','30EpsrlG','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','map','745372zMvhUH','remote','666568BkdtuO','1348OMLIdn','5915752CMSGdB','appCode','665rBOhIg','appDesc'];a19_0x5ec5=function(){return _0x4be997;};return a19_0x5ec5();}async function execute(_0x3232b2){const _0x114be0=a19_0x2788,{setActiveCookie:_0x2d80cd}=await import('../../core/api-client.js');_0x2d80cd(_0x3232b2['cookie']);const _0x181813=await listRemoteApps();return{'ok':!![],'data':{'items':_0x181813[_0x114be0(0x7b)](_0x59ab99=>({..._0x59ab99['id']!=null?{'id':_0x59ab99['id']}:{},'appCode':_0x59ab99[_0x114be0(0x81)],'appName':_0x59ab99['appName'],..._0x59ab99[_0x114be0(0x83)]!=null?{'appDesc':_0x59ab99[_0x114be0(0x83)]}:{}})),'meta':{'source':'platform'}}};}export const appRemoteDefinition={'service':a19_0x303745(0x75),'command':a19_0x303745(0x7d),'description':a19_0x303745(0x7a),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ const a19_0x47e4a7=a19_0x2b57;(function(_0x9c9d3c,_0xa30312){const _0x1ae49c=a19_0x2b57,_0x4723d3=_0x9c9d3c();while(!![]){try{const _0x50b7c8=-parseInt(_0x1ae49c(0x13b))/0x1+parseInt(_0x1ae49c(0x13d))/0x2+-parseInt(_0x1ae49c(0x13f))/0x3+parseInt(_0x1ae49c(0x136))/0x4*(parseInt(_0x1ae49c(0x140))/0x5)+parseInt(_0x1ae49c(0x146))/0x6*(parseInt(_0x1ae49c(0x139))/0x7)+-parseInt(_0x1ae49c(0x13e))/0x8+-parseInt(_0x1ae49c(0x13a))/0x9*(parseInt(_0x1ae49c(0x147))/0xa);if(_0x50b7c8===_0xa30312)break;else _0x4723d3['push'](_0x4723d3['shift']());}catch(_0x4ac9ec){_0x4723d3['push'](_0x4723d3['shift']());}}}(a19_0x1efe,0x9e725));import{listRemoteApps}from'../../core/api-client.js';function a19_0x1efe(){const _0x49b4dd=['appName','app','../../core/api-client.js','appCode','read','6RqHWfo','440740LkyhFX','map','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','5014052wPUeHF','remote','appDesc','8646239untviN','261FMsAdu','539156wgXCPP','platform','2074506krWlTx','222560Owqyny','3095472pTWmGU','5KnrpWf'];a19_0x1efe=function(){return _0x49b4dd;};return a19_0x1efe();}function a19_0x2b57(_0x593d12,_0x36569c){_0x593d12=_0x593d12-0x136;const _0x1efe98=a19_0x1efe();let _0x2b57d3=_0x1efe98[_0x593d12];return _0x2b57d3;}async function execute(_0x10b638){const _0xeab3a6=a19_0x2b57,{setActiveCookie:_0x223c5d}=await import(_0xeab3a6(0x143));_0x223c5d(_0x10b638['cookie']);const _0x5be676=await listRemoteApps();return{'ok':!![],'data':{'items':_0x5be676[_0xeab3a6(0x148)](_0x57d48d=>({..._0x57d48d['id']!=null?{'id':_0x57d48d['id']}:{},'appCode':_0x57d48d[_0xeab3a6(0x144)],'appName':_0x57d48d[_0xeab3a6(0x141)],..._0x57d48d[_0xeab3a6(0x138)]!=null?{'appDesc':_0x57d48d['appDesc']}:{}})),'meta':{'source':_0xeab3a6(0x13c)}}};}export const appRemoteDefinition={'service':a19_0x47e4a7(0x142),'command':a19_0x47e4a7(0x137),'description':a19_0x47e4a7(0x149),'risk':a19_0x47e4a7(0x145),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -1 +1 @@
1
- (function(_0x3e4d2a,_0x4ab701){const _0x3893f4=a20_0x48d0,_0x6ff084=_0x3e4d2a();while(!![]){try{const _0x3820e7=parseInt(_0x3893f4(0x1ae))/0x1*(-parseInt(_0x3893f4(0x1af))/0x2)+-parseInt(_0x3893f4(0x1b1))/0x3*(-parseInt(_0x3893f4(0x1b6))/0x4)+parseInt(_0x3893f4(0x1b4))/0x5+parseInt(_0x3893f4(0x1b2))/0x6*(-parseInt(_0x3893f4(0x1b7))/0x7)+parseInt(_0x3893f4(0x1b5))/0x8*(parseInt(_0x3893f4(0x1ad))/0x9)+parseInt(_0x3893f4(0x1b3))/0xa+parseInt(_0x3893f4(0x1b0))/0xb*(-parseInt(_0x3893f4(0x1b8))/0xc);if(_0x3820e7===_0x4ab701)break;else _0x6ff084['push'](_0x6ff084['shift']());}catch(_0x4bf7b4){_0x6ff084['push'](_0x6ff084['shift']());}}}(a20_0x16a1,0x3638a));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';function a20_0x48d0(_0x3aa1cc,_0x595728){_0x3aa1cc=_0x3aa1cc-0x1ad;const _0x16a1a2=a20_0x16a1();let _0x48d0fb=_0x16a1a2[_0x3aa1cc];return _0x48d0fb;}import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];function a20_0x16a1(){const _0xf0286e=['9bRhahQ','1PGZAif','619196vEHkGR','1598377NPNkfD','9NFwzAA','762YIUPzU','188210pMLhhC','1238605FkAxiD','2952672xEgrJq','578568cyXRxb','21637Ojwpfu','12Jvcgms'];a20_0x16a1=function(){return _0xf0286e;};return a20_0x16a1();}
1
+ (function(_0x37a4c5,_0x52d3b9){const _0x4e24ec=a20_0x2dc2,_0x318d9b=_0x37a4c5();while(!![]){try{const _0x54a212=-parseInt(_0x4e24ec(0x141))/0x1*(parseInt(_0x4e24ec(0x139))/0x2)+-parseInt(_0x4e24ec(0x138))/0x3*(-parseInt(_0x4e24ec(0x13c))/0x4)+parseInt(_0x4e24ec(0x13d))/0x5*(-parseInt(_0x4e24ec(0x140))/0x6)+-parseInt(_0x4e24ec(0x13e))/0x7+parseInt(_0x4e24ec(0x13a))/0x8+parseInt(_0x4e24ec(0x13b))/0x9+parseInt(_0x4e24ec(0x13f))/0xa;if(_0x54a212===_0x52d3b9)break;else _0x318d9b['push'](_0x318d9b['shift']());}catch(_0x167740){_0x318d9b['push'](_0x318d9b['shift']());}}}(a20_0x3075,0xab0fd));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';function a20_0x2dc2(_0x113a36,_0x2702f9){_0x113a36=_0x113a36-0x138;const _0x3075be=a20_0x3075();let _0x2dc249=_0x3075be[_0x113a36];return _0x2dc249;}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];function a20_0x3075(){const _0x21225f=['10608kCyAJk','5giwLLw','7994532VWbkwK','18090790yjFaYC','3042750wkRPed','62VSJIUZ','333uoanXY','33362rjiBkL','577752CmIsDo','10875798ybqfWz'];a20_0x3075=function(){return _0x21225f;};return a20_0x3075();}
@@ -1 +1 @@
1
- const a21_0x362935=a21_0x1fac;(function(_0x3d4e7c,_0x127a08){const _0x16e2cd=a21_0x1fac,_0x4d987e=_0x3d4e7c();while(!![]){try{const _0x1d6da7=parseInt(_0x16e2cd(0xb0))/0x1+parseInt(_0x16e2cd(0xa6))/0x2+-parseInt(_0x16e2cd(0xbd))/0x3+-parseInt(_0x16e2cd(0xbf))/0x4*(-parseInt(_0x16e2cd(0xa2))/0x5)+parseInt(_0x16e2cd(0xa1))/0x6*(parseInt(_0x16e2cd(0xb8))/0x7)+-parseInt(_0x16e2cd(0xbc))/0x8*(-parseInt(_0x16e2cd(0xaf))/0x9)+-parseInt(_0x16e2cd(0xaa))/0xa;if(_0x1d6da7===_0x127a08)break;else _0x4d987e['push'](_0x4d987e['shift']());}catch(_0x3c95d2){_0x4d987e['push'](_0x4d987e['shift']());}}}(a21_0x4587,0xefb94));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(_0x48734f,_0x2422ba){const _0x18683a=a21_0x1fac,_0x2df3e6=[],_0xa4c17e=_0x48734f[_0x18683a(0xba)]&&typeof _0x48734f[_0x18683a(0xba)]===_0x18683a(0xc0)?_0x48734f[_0x18683a(0xba)]:{},_0x48cb12=_0x48734f[_0x18683a(0xac)]||undefined;for(const [_0x5e689c,_0x5a666c]of Object[_0x18683a(0xa8)](_0xa4c17e)){if(!_0x5a666c||typeof _0x5a666c!==_0x18683a(0xc0)||!_0x5a666c[_0x18683a(0xc5)])continue;_0x2df3e6[_0x18683a(0xc3)]({'name':_0x5e689c,'appcode':_0x5a666c[_0x18683a(0xc5)],'named':!![],'definedIn':_0x2422ba,'isDefault':_0x5e689c===_0x48cb12,...buildAppProfileListFields(_0x5a666c)});}return _0x2df3e6;}function a21_0x1fac(_0x5f1479,_0xeac933){_0x5f1479=_0x5f1479-0xa0;const _0x458712=a21_0x4587();let _0x1fac7e=_0x458712[_0x5f1479];return _0x1fac7e;}function buildMergedItems(_0x2fd22e,_0x46b90b){const _0x4b709c=a21_0x1fac,{apps:apps={},defaultApp:_0x589a7b}=_0x2fd22e,_0x15f450=_0x46b90b[_0x4b709c(0xc4)][_0x4b709c(0xba)]&&typeof _0x46b90b[_0x4b709c(0xc4)][_0x4b709c(0xba)]===_0x4b709c(0xc0)?_0x46b90b[_0x4b709c(0xc4)][_0x4b709c(0xba)]:{},_0x417a10=_0x46b90b[_0x4b709c(0xad)][_0x4b709c(0xba)]&&typeof _0x46b90b[_0x4b709c(0xad)][_0x4b709c(0xba)]===_0x4b709c(0xc0)?_0x46b90b[_0x4b709c(0xad)][_0x4b709c(0xba)]:{},_0x466809=_0x46b90b[_0x4b709c(0xad)][_0x4b709c(0xa3)]===![],_0x4fbe55=Object[_0x4b709c(0xa8)](apps),_0x59672d=_0x4fbe55[_0x4b709c(0xc2)](([_0x57c7a0,_0x3697ea])=>({'name':_0x57c7a0,'appcode':_0x3697ea[_0x4b709c(0xc5)],'named':!![],'definedIn':appDefinedIn(_0x57c7a0,_0x15f450,_0x417a10,_0x466809),'isDefault':_0x57c7a0===_0x589a7b,...buildAppProfileListFields(_0x3697ea)}));return _0x59672d;}async function execute(_0x1764a9){const _0x59662c=a21_0x1fac,_0x285ad0=_0x1764a9[_0x59662c(0xa4)](_0x59662c(0xa7)),_0x148311=_0x1764a9[_0x59662c(0xa4)](_0x59662c(0xbe)),_0x189ba8=_0x285ad0?_0x59662c(0xa7):_0x148311?'project':_0x59662c(0xb3),{config:_0x25bdab,layers:_0x4f8583}=readRawConfigWithLayers(),_0x570bcf=resolveDefaultAppSource(_0x4f8583),{defaultApp:_0x1ddc29}=_0x25bdab;let _0xa2d93d,_0x362133;switch(_0x189ba8){case _0x59662c(0xa7):_0xa2d93d=buildItemsFromLayer(_0x4f8583[_0x59662c(0xc4)],'global'),_0x362133=_0x4f8583[_0x59662c(0xb4)];break;case _0x59662c(0xbe):_0xa2d93d=buildItemsFromLayer(_0x4f8583['projectConfig'],_0x59662c(0xbe)),_0x362133=_0x4f8583[_0x59662c(0xb9)];break;default:_0xa2d93d=buildMergedItems(_0x25bdab,_0x4f8583);break;}enrichAppListItemsWithMergedSelection(_0xa2d93d,_0x1764a9[_0x59662c(0xbb)]);if(_0xa2d93d[_0x59662c(0xa5)]===0x0){const _0x5a9722=_0x189ba8===_0x59662c(0xb3)?'':_0x59662c(0xb1)+_0x189ba8+_0x59662c(0xab);return{'ok':!![],'data':[],'message':_0x59662c(0xb6)+_0x5a9722+_0x59662c(0xc1)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x533687=_0xa2d93d[_0x59662c(0xb7)](_0xbd1f4d=>_0xbd1f4d['isCurrent']===!![]),_0x1f13b7=_0x1ddc29??_0x533687?.[_0x59662c(0xc5)]??null,_0x3ae665=_0x189ba8===_0x59662c(0xb3)?{'globalPath':_0x4f8583[_0x59662c(0xb4)]??null,'projectPath':_0x4f8583['projectPath']??null,'defaultApp':_0x1f13b7,'defaultAppSource':_0x1ddc29!=null?_0x570bcf:null}:{'scope':_0x189ba8,'configPath':_0x362133??null};return{'ok':!![],'data':{'items':_0xa2d93d,'meta':_0x3ae665}};}export const appListDefinition={'service':a21_0x362935(0xb2),'command':a21_0x362935(0xb5),'description':a21_0x362935(0xae),'risk':a21_0x362935(0xc6),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':'global','type':'boolean','description':a21_0x362935(0xa9),'default':![]},{'name':a21_0x362935(0xbe),'type':a21_0x362935(0xa0),'description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};function a21_0x4587(){const _0x403cc2=['\x20in\x20','app','merged','globalPath','list','No\x20apps\x20configured','find','382501DyaesB','projectPath','apps','mergedCli','136THigrA','2859273hMTsfP','project','116OAgddm','object','.\x20Use\x20`','map','push','globalConfig','appcode','read','boolean','168vOIHYa','4765blvBsi','inherit','bool','length','2606566ffXvLq','global','entries','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','36343690yYZXmY','\x20config','defaultApp','projectConfig','List\x20all\x20configured\x20apps','1009593MRfiPO','801435BtsDAH'];a21_0x4587=function(){return _0x403cc2;};return a21_0x4587();}
1
+ const a21_0x55ee47=a21_0x2564;(function(_0x7a1055,_0x276248){const _0x4c74d5=a21_0x2564,_0x5adb1f=_0x7a1055();while(!![]){try{const _0x1a8fea=parseInt(_0x4c74d5(0x192))/0x1*(parseInt(_0x4c74d5(0x17f))/0x2)+-parseInt(_0x4c74d5(0x170))/0x3*(parseInt(_0x4c74d5(0x18d))/0x4)+-parseInt(_0x4c74d5(0x179))/0x5*(-parseInt(_0x4c74d5(0x177))/0x6)+-parseInt(_0x4c74d5(0x17d))/0x7+-parseInt(_0x4c74d5(0x181))/0x8*(-parseInt(_0x4c74d5(0x17c))/0x9)+-parseInt(_0x4c74d5(0x187))/0xa+-parseInt(_0x4c74d5(0x189))/0xb*(parseInt(_0x4c74d5(0x195))/0xc);if(_0x1a8fea===_0x276248)break;else _0x5adb1f['push'](_0x5adb1f['shift']());}catch(_0x513297){_0x5adb1f['push'](_0x5adb1f['shift']());}}}(a21_0x4717,0x27e81));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';function a21_0x4717(){const _0x13a9af=['globalPath','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','isCurrent','53csXUIx','projectPath','map','12XdMaTD','\x20config','inherit','No\x20apps\x20configured','27vZLvjg','entries','appcode','find','project','\x20in\x20','length','1158OtNMon','boolean','2395MsCZgR','object','app','873SRyqaE','363832MTJyiG','read','11012KorfFN','defaultApp','19984pxOThF','mergedCli','globalConfig','global','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','projectConfig','315290pXXIfp','List\x20all\x20configured\x20apps','2833556qAHqoF','bool','merged','list','54228aBCHrm','apps'];a21_0x4717=function(){return _0x13a9af;};return a21_0x4717();}function a21_0x2564(_0x3f09db,_0x2cd8f1){_0x3f09db=_0x3f09db-0x16e;const _0x47178a=a21_0x4717();let _0x256441=_0x47178a[_0x3f09db];return _0x256441;}import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x52c947,_0x476263){const _0x35a57e=a21_0x2564,_0x405400=[],_0x46c5a0=_0x52c947[_0x35a57e(0x18e)]&&typeof _0x52c947[_0x35a57e(0x18e)]==='object'?_0x52c947[_0x35a57e(0x18e)]:{},_0x4b77b8=_0x52c947[_0x35a57e(0x180)]||undefined;for(const [_0x11c6f1,_0x395dab]of Object[_0x35a57e(0x171)](_0x46c5a0)){if(!_0x395dab||typeof _0x395dab!==_0x35a57e(0x17a)||!_0x395dab[_0x35a57e(0x172)])continue;_0x405400['push']({'name':_0x11c6f1,'appcode':_0x395dab['appcode'],'named':!![],'definedIn':_0x476263,'isDefault':_0x11c6f1===_0x4b77b8,...buildAppProfileListFields(_0x395dab)});}return _0x405400;}function buildMergedItems(_0x245a0d,_0x15af90){const _0x437daa=a21_0x2564,{apps:apps={},defaultApp:_0x3f2329}=_0x245a0d,_0x28ee71=_0x15af90[_0x437daa(0x183)]['apps']&&typeof _0x15af90[_0x437daa(0x183)][_0x437daa(0x18e)]===_0x437daa(0x17a)?_0x15af90[_0x437daa(0x183)][_0x437daa(0x18e)]:{},_0x428c8f=_0x15af90[_0x437daa(0x186)][_0x437daa(0x18e)]&&typeof _0x15af90['projectConfig'][_0x437daa(0x18e)]===_0x437daa(0x17a)?_0x15af90['projectConfig']['apps']:{},_0x59efeb=_0x15af90[_0x437daa(0x186)][_0x437daa(0x16e)]===![],_0x5be377=Object[_0x437daa(0x171)](apps),_0x4f1fe3=_0x5be377[_0x437daa(0x194)](([_0xd1d0ae,_0x5e4bc7])=>({'name':_0xd1d0ae,'appcode':_0x5e4bc7[_0x437daa(0x172)],'named':!![],'definedIn':appDefinedIn(_0xd1d0ae,_0x28ee71,_0x428c8f,_0x59efeb),'isDefault':_0xd1d0ae===_0x3f2329,...buildAppProfileListFields(_0x5e4bc7)}));return _0x4f1fe3;}async function execute(_0x28ef63){const _0x117937=a21_0x2564,_0x145671=_0x28ef63[_0x117937(0x18a)](_0x117937(0x184)),_0x151de2=_0x28ef63[_0x117937(0x18a)](_0x117937(0x174)),_0x2f0044=_0x145671?'global':_0x151de2?'project':_0x117937(0x18b),{config:_0x419b55,layers:_0x53f230}=readRawConfigWithLayers(),_0x5a7706=resolveDefaultAppSource(_0x53f230),{defaultApp:_0x1424dc}=_0x419b55;let _0x48ead3,_0x23688b;switch(_0x2f0044){case _0x117937(0x184):_0x48ead3=buildItemsFromLayer(_0x53f230['globalConfig'],'global'),_0x23688b=_0x53f230[_0x117937(0x18f)];break;case _0x117937(0x174):_0x48ead3=buildItemsFromLayer(_0x53f230[_0x117937(0x186)],_0x117937(0x174)),_0x23688b=_0x53f230[_0x117937(0x193)];break;default:_0x48ead3=buildMergedItems(_0x419b55,_0x53f230);break;}enrichAppListItemsWithMergedSelection(_0x48ead3,_0x28ef63[_0x117937(0x182)]);if(_0x48ead3[_0x117937(0x176)]===0x0){const _0xd4c41=_0x2f0044===_0x117937(0x18b)?'':_0x117937(0x175)+_0x2f0044+_0x117937(0x196);return{'ok':!![],'data':[],'message':_0x117937(0x16f)+_0xd4c41+'.\x20Use\x20`'+CLI_BIN_NAME+_0x117937(0x190)};}const _0x367f3a=_0x48ead3[_0x117937(0x173)](_0x382e37=>_0x382e37[_0x117937(0x191)]===!![]),_0x58dfd3=_0x1424dc??_0x367f3a?.[_0x117937(0x172)]??null,_0x2516b8=_0x2f0044===_0x117937(0x18b)?{'globalPath':_0x53f230[_0x117937(0x18f)]??null,'projectPath':_0x53f230[_0x117937(0x193)]??null,'defaultApp':_0x58dfd3,'defaultAppSource':_0x1424dc!=null?_0x5a7706:null}:{'scope':_0x2f0044,'configPath':_0x23688b??null};return{'ok':!![],'data':{'items':_0x48ead3,'meta':_0x2516b8}};}export const appListDefinition={'service':a21_0x55ee47(0x17b),'command':a21_0x55ee47(0x18c),'description':a21_0x55ee47(0x188),'risk':a21_0x55ee47(0x17e),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x55ee47(0x184),'type':a21_0x55ee47(0x178),'description':a21_0x55ee47(0x185),'default':![]},{'name':a21_0x55ee47(0x174),'type':a21_0x55ee47(0x178),'description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0x5df506=a22_0x4bd7;function a22_0x5ca9(){const _0x49a476=['globalConfig','Removed\x20app\x20\x22','\x22\x20not\x20found.','1177351xdwudZ','225972vsGnFN','96305YvxUQt','length','projectConfig','283544qAkZwp','object','\x20app\x20remove\x20<name>\x20[--global]','\x20config.','project','Usage:\x20','apps','defaultApp','validation','App\x20\x22','trim','\x20Default\x20app\x20changed\x20to\x20\x22','Remove\x20an\x20app\x20from\x20config','184352dZftUo','keys','both','\x22\x20still\x20defined\x20in\x20','bool','477447pCFkCB','\x20Note:\x20app\x20\x22','args','185304gbvFfq','global','Use\x20global\x20config\x20scope'];a22_0x5ca9=function(){return _0x49a476;};return a22_0x5ca9();}(function(_0x161cc8,_0x5ecbc1){const _0x3f3d6c=a22_0x4bd7,_0x554ee0=_0x161cc8();while(!![]){try{const _0x52d357=parseInt(_0x3f3d6c(0x87))/0x1+-parseInt(_0x3f3d6c(0x96))/0x2+-parseInt(_0x3f3d6c(0x8c))/0x3+parseInt(_0x3f3d6c(0x9a))/0x4+-parseInt(_0x3f3d6c(0x97))/0x5+-parseInt(_0x3f3d6c(0x8f))/0x6+parseInt(_0x3f3d6c(0x95))/0x7;if(_0x52d357===_0x5ecbc1)break;else _0x554ee0['push'](_0x554ee0['shift']());}catch(_0x4d5ba0){_0x554ee0['push'](_0x554ee0['shift']());}}}(a22_0x5ca9,0x18b1f));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';async function validateArgs(_0x378757){const _0x2ee639=a22_0x4bd7,_0x505aef=_0x378757[_0x2ee639(0x8e)][0x0]?.['trim']();if(!_0x505aef)throw CliErrors[_0x2ee639(0xa2)]('Missing\x20app\x20name.',_0x2ee639(0x9f)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}async function execute(_0x3d30e3){const _0xbc745c=a22_0x4bd7,_0x263e7a=_0x3d30e3[_0xbc745c(0x8e)][0x0]?.[_0xbc745c(0xa4)]();if(!_0x263e7a)throw CliErrors[_0xbc745c(0xa2)]('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+_0xbc745c(0x9c));const _0x4bc0b5=_0x3d30e3[_0xbc745c(0x8b)](_0xbc745c(0x90)),{config:_0x191001,layers:_0x304d6d}=readRawConfigWithLayers(),_0xeb61c6=_0x191001[_0xbc745c(0xa0)]??{};if(!_0xeb61c6[_0x263e7a])throw CliErrors[_0xbc745c(0xa2)](_0xbc745c(0xa3)+_0x263e7a+'\x22\x20not\x20found.');const _0x4a0503=_0x304d6d[_0xbc745c(0x92)][_0xbc745c(0xa0)]&&typeof _0x304d6d[_0xbc745c(0x92)][_0xbc745c(0xa0)]===_0xbc745c(0x9b)?_0x304d6d[_0xbc745c(0x92)][_0xbc745c(0xa0)]:{},_0x124661=_0x304d6d[_0xbc745c(0x99)]['apps']&&typeof _0x304d6d[_0xbc745c(0x99)][_0xbc745c(0xa0)]===_0xbc745c(0x9b)?_0x304d6d[_0xbc745c(0x99)][_0xbc745c(0xa0)]:{},_0xae03a=appDefinedIn(_0x263e7a,_0x4a0503,_0x124661,_0x304d6d['projectConfig']['inherit']===![]),_0x23c484=resolveAppScopeForWrite(_0x263e7a,_0x4bc0b5,_0x304d6d),_0x1361fe={'global':_0x23c484===_0xbc745c(0x90)},_0x4f1867=readConfig(_0x1361fe),_0x2cdfb1=_0x4f1867[_0xbc745c(0xa0)];if(!_0x2cdfb1||!_0x2cdfb1[_0x263e7a])throw CliErrors[_0xbc745c(0xa2)](_0xbc745c(0xa3)+_0x263e7a+_0xbc745c(0x94));delete _0x2cdfb1[_0x263e7a];let _0x5d94d5='';if(_0x4f1867[_0xbc745c(0xa1)]===_0x263e7a){const _0x58d4f5=Object[_0xbc745c(0x88)](_0x2cdfb1);_0x4f1867['defaultApp']=_0x58d4f5[_0xbc745c(0x98)]>0x0?_0x58d4f5[0x0]:undefined,_0x4f1867[_0xbc745c(0xa1)]?_0x5d94d5=_0xbc745c(0x85)+_0x4f1867[_0xbc745c(0xa1)]+'\x22.':delete _0x4f1867[_0xbc745c(0xa1)];}Object[_0xbc745c(0x88)](_0x2cdfb1)['length']===0x0&&(delete _0x4f1867[_0xbc745c(0xa0)],delete _0x4f1867[_0xbc745c(0xa1)]);writeConfig(_0x4f1867,_0x1361fe);const _0x3523d2=_0xae03a===_0xbc745c(0x89)?_0xbc745c(0x8d)+_0x263e7a+_0xbc745c(0x8a)+(_0x23c484===_0xbc745c(0x9e)?_0xbc745c(0x90):'project')+_0xbc745c(0x9d):'';return{'ok':!![],'message':_0xbc745c(0x93)+_0x263e7a+'\x22'+scopeLabel(_0x1361fe)+'.'+_0x5d94d5+_0x3523d2};}function a22_0x4bd7(_0x309a58,_0x52507e){_0x309a58=_0x309a58-0x85;const _0x5ca916=a22_0x5ca9();let _0x4bd73b=_0x5ca916[_0x309a58];return _0x4bd73b;}export const appRemoveDefinition={'service':'app','command':'remove','description':a22_0x5df506(0x86),'risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':[{'name':a22_0x5df506(0x90),'type':'boolean','description':a22_0x5df506(0x91),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x3f3c0b=a22_0x578c;(function(_0xb4bd5,_0x1b21ef){const _0x18d208=a22_0x578c,_0x3bbbbf=_0xb4bd5();while(!![]){try{const _0x4df1d3=parseInt(_0x18d208(0x144))/0x1+parseInt(_0x18d208(0x140))/0x2+-parseInt(_0x18d208(0x14f))/0x3+-parseInt(_0x18d208(0x15a))/0x4*(parseInt(_0x18d208(0x159))/0x5)+parseInt(_0x18d208(0x155))/0x6*(-parseInt(_0x18d208(0x158))/0x7)+parseInt(_0x18d208(0x146))/0x8*(-parseInt(_0x18d208(0x14a))/0x9)+-parseInt(_0x18d208(0x14c))/0xa*(-parseInt(_0x18d208(0x14d))/0xb);if(_0x4df1d3===_0x1b21ef)break;else _0x3bbbbf['push'](_0x3bbbbf['shift']());}catch(_0x418dc8){_0x3bbbbf['push'](_0x3bbbbf['shift']());}}}(a22_0x172a,0x50138));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';async function validateArgs(_0xece671){const _0x114e83=a22_0x578c,_0x383938=_0xece671[_0x114e83(0x15b)][0x0]?.[_0x114e83(0x13e)]();if(!_0x383938)throw CliErrors[_0x114e83(0x14b)](_0x114e83(0x157),'Usage:\x20'+CLI_BIN_NAME+_0x114e83(0x13b));}function a22_0x578c(_0x138069,_0x438cfb){_0x138069=_0x138069-0x134;const _0x172a4c=a22_0x172a();let _0x578c64=_0x172a4c[_0x138069];return _0x578c64;}async function execute(_0x261878){const _0x5884fa=a22_0x578c,_0x4fffb0=_0x261878[_0x5884fa(0x15b)][0x0]?.[_0x5884fa(0x13e)]();if(!_0x4fffb0)throw CliErrors[_0x5884fa(0x14b)]('Missing\x20app\x20name.',_0x5884fa(0x152)+CLI_BIN_NAME+_0x5884fa(0x13b));const _0x32ae94=_0x261878[_0x5884fa(0x145)](_0x5884fa(0x136)),{config:_0x5c38dc,layers:_0x2d8218}=readRawConfigWithLayers(),_0x5d3f4c=_0x5c38dc[_0x5884fa(0x148)]??{};if(!_0x5d3f4c[_0x4fffb0])throw CliErrors[_0x5884fa(0x14b)](_0x5884fa(0x138)+_0x4fffb0+_0x5884fa(0x137));const _0x457e50=_0x2d8218[_0x5884fa(0x156)]['apps']&&typeof _0x2d8218[_0x5884fa(0x156)][_0x5884fa(0x148)]===_0x5884fa(0x139)?_0x2d8218['globalConfig'][_0x5884fa(0x148)]:{},_0x32f768=_0x2d8218['projectConfig'][_0x5884fa(0x148)]&&typeof _0x2d8218[_0x5884fa(0x13d)][_0x5884fa(0x148)]===_0x5884fa(0x139)?_0x2d8218[_0x5884fa(0x13d)][_0x5884fa(0x148)]:{},_0x377097=appDefinedIn(_0x4fffb0,_0x457e50,_0x32f768,_0x2d8218[_0x5884fa(0x13d)][_0x5884fa(0x13a)]===![]),_0xee9837=resolveAppScopeForWrite(_0x4fffb0,_0x32ae94,_0x2d8218),_0x16c058={'global':_0xee9837===_0x5884fa(0x136)},_0x44f453=readConfig(_0x16c058),_0x370089=_0x44f453[_0x5884fa(0x148)];if(!_0x370089||!_0x370089[_0x4fffb0])throw CliErrors['validation'](_0x5884fa(0x138)+_0x4fffb0+_0x5884fa(0x137));delete _0x370089[_0x4fffb0];let _0x51304d='';if(_0x44f453[_0x5884fa(0x153)]===_0x4fffb0){const _0x39d377=Object[_0x5884fa(0x141)](_0x370089);_0x44f453[_0x5884fa(0x153)]=_0x39d377[_0x5884fa(0x15c)]>0x0?_0x39d377[0x0]:undefined,_0x44f453[_0x5884fa(0x153)]?_0x51304d=_0x5884fa(0x14e)+_0x44f453[_0x5884fa(0x153)]+'\x22.':delete _0x44f453['defaultApp'];}Object[_0x5884fa(0x141)](_0x370089)[_0x5884fa(0x15c)]===0x0&&(delete _0x44f453['apps'],delete _0x44f453[_0x5884fa(0x153)]);writeConfig(_0x44f453,_0x16c058);const _0x113cef=_0x377097===_0x5884fa(0x147)?_0x5884fa(0x13c)+_0x4fffb0+'\x22\x20still\x20defined\x20in\x20'+(_0xee9837===_0x5884fa(0x135)?_0x5884fa(0x136):_0x5884fa(0x135))+_0x5884fa(0x154):'';return{'ok':!![],'message':_0x5884fa(0x151)+_0x4fffb0+'\x22'+scopeLabel(_0x16c058)+'.'+_0x51304d+_0x113cef};}export const appRemoveDefinition={'service':'app','command':a22_0x3f3c0b(0x150),'description':a22_0x3f3c0b(0x142),'risk':a22_0x3f3c0b(0x149),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x3f3c0b(0x143),'description':a22_0x3f3c0b(0x13f),'required':!![]}],'flags':[{'name':'global','type':'boolean','description':a22_0x3f3c0b(0x134),'default':![]}],'validate':validateArgs,'execute':execute};function a22_0x172a(){const _0x1f196e=['510758fatzNW','keys','Remove\x20an\x20app\x20from\x20config','name','260477vEATef','bool','13488xHvPyI','both','apps','high-risk-write','2043wYuMQh','validation','1839550tLAUQI','44vjpxwh','\x20Default\x20app\x20changed\x20to\x20\x22','301713YnOBIz','remove','Removed\x20app\x20\x22','Usage:\x20','defaultApp','\x20config.','18dBxzOf','globalConfig','Missing\x20app\x20name.','960337fMShdg','72045KKarVZ','8KxfUgf','args','length','Use\x20global\x20config\x20scope','project','global','\x22\x20not\x20found.','App\x20\x22','object','inherit','\x20app\x20remove\x20<name>\x20[--global]','\x20Note:\x20app\x20\x22','projectConfig','trim','App\x20profile\x20name\x20to\x20remove'];a22_0x172a=function(){return _0x1f196e;};return a22_0x172a();}
@@ -1 +1 @@
1
- (function(_0x269027,_0x150a86){const _0x44d038=a23_0x3daf,_0x4ac9fc=_0x269027();while(!![]){try{const _0x270ff3=-parseInt(_0x44d038(0x181))/0x1*(-parseInt(_0x44d038(0x18f))/0x2)+parseInt(_0x44d038(0x190))/0x3*(-parseInt(_0x44d038(0x183))/0x4)+parseInt(_0x44d038(0x19f))/0x5+parseInt(_0x44d038(0x198))/0x6*(parseInt(_0x44d038(0x18e))/0x7)+-parseInt(_0x44d038(0x197))/0x8*(parseInt(_0x44d038(0x18c))/0x9)+-parseInt(_0x44d038(0x184))/0xa*(parseInt(_0x44d038(0x191))/0xb)+-parseInt(_0x44d038(0x195))/0xc*(-parseInt(_0x44d038(0x19b))/0xd);if(_0x270ff3===_0x150a86)break;else _0x4ac9fc['push'](_0x4ac9fc['shift']());}catch(_0x53389a){_0x4ac9fc['push'](_0x4ac9fc['shift']());}}}(a23_0x19b9,0x9d418));function a23_0x19b9(){const _0x507e5f=['52VEFvvj','85130qECLnt','prototype','project','isCurrent','appCode','hasOwnProperty','defaultApp','trim','27LuGbvZ','keys','3962aiLTCA','318MMsHVx','273789yqizsS','1067otIYqY','currentApp','global','name','360NiEwap','call','1523600jJobAV','7068rSFxfU','appcode','length','632957SBHCGT','\x20(global)','apps','projectConfig','2635980bFAFfx','globalConfig','inherit','3604HZdfAw','object'];a23_0x19b9=function(){return _0x507e5f;};return a23_0x19b9();}import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0xeb35c5,_0x13d5eb){const _0x4fac64=a23_0x3daf;if(!_0x13d5eb)return;const _0x1c8041=_0x13d5eb['apps']&&typeof _0x13d5eb['apps']===_0x4fac64(0x182)?_0x13d5eb[_0x4fac64(0x19d)]:{},_0x41f507=Object[_0x4fac64(0x18d)](_0x1c8041)[_0x4fac64(0x19a)]>0x0;for(const _0x3a2cba of _0xeb35c5){_0x3a2cba[_0x4fac64(0x187)]=![];}const _0x57e28b=_0x13d5eb[_0x4fac64(0x188)]!=null?String(_0x13d5eb[_0x4fac64(0x188)])[_0x4fac64(0x18b)]():'';if(_0x41f507){const _0x5424af=_0x13d5eb[_0x4fac64(0x192)]??_0x13d5eb[_0x4fac64(0x18a)];if(_0x5424af)for(const _0x1bf9bc of _0xeb35c5){_0x1bf9bc['named']===!![]&&_0x1bf9bc[_0x4fac64(0x194)]===_0x5424af&&(_0x1bf9bc[_0x4fac64(0x187)]=!![]);}for(const _0x2a5f80 of _0xeb35c5){if(_0x2a5f80['named']!==![])continue;if(_0x13d5eb['defaultApp'])continue;_0x57e28b&&String(_0x2a5f80[_0x4fac64(0x199)]??'')[_0x4fac64(0x18b)]()===_0x57e28b&&(_0x2a5f80[_0x4fac64(0x187)]=!![]);}return;}if(!_0x57e28b)return;for(const _0x516c6b of _0xeb35c5){String(_0x516c6b[_0x4fac64(0x199)]??'')[_0x4fac64(0x18b)]()===_0x57e28b&&(_0x516c6b[_0x4fac64(0x187)]=!![]);}}export function resolveAppScopeForWrite(_0x8e9c0c,_0x1d210b,_0x7c0aa8){const _0x38910e=a23_0x3daf;if(_0x1d210b)return _0x38910e(0x193);const _0x1daa29=_0x7c0aa8['projectConfig'][_0x38910e(0x19d)]&&typeof _0x7c0aa8[_0x38910e(0x19e)][_0x38910e(0x19d)]===_0x38910e(0x182)?_0x7c0aa8[_0x38910e(0x19e)]['apps']:{},_0x5d155b=_0x7c0aa8[_0x38910e(0x1a0)][_0x38910e(0x19d)]&&typeof _0x7c0aa8['globalConfig']['apps']===_0x38910e(0x182)?_0x7c0aa8[_0x38910e(0x1a0)][_0x38910e(0x19d)]:{};if(Object[_0x38910e(0x185)]['hasOwnProperty'][_0x38910e(0x196)](_0x1daa29,_0x8e9c0c))return _0x38910e(0x186);if(Object['prototype'][_0x38910e(0x189)]['call'](_0x5d155b,_0x8e9c0c))return _0x38910e(0x193);return _0x38910e(0x186);}export function appDefinedIn(_0x5cbe0f,_0x51a562,_0xd1ccac,_0x3c4c9f){const _0x1d9452=a23_0x3daf;if(_0x3c4c9f)return Object[_0x1d9452(0x185)][_0x1d9452(0x189)]['call'](_0xd1ccac,_0x5cbe0f)?_0x1d9452(0x186):_0x1d9452(0x193);const _0x57139f=Object[_0x1d9452(0x185)]['hasOwnProperty'][_0x1d9452(0x196)](_0x51a562,_0x5cbe0f),_0xd5dd97=Object['prototype'][_0x1d9452(0x189)][_0x1d9452(0x196)](_0xd1ccac,_0x5cbe0f);if(_0x57139f&&_0xd5dd97)return'both';if(_0xd5dd97)return _0x1d9452(0x186);return _0x1d9452(0x193);}export function resolveDefaultAppSource(_0xd2ac29){const _0x3ab9db=a23_0x3daf,_0x31f2ed=_0xd2ac29[_0x3ab9db(0x19e)][_0x3ab9db(0x19d)]&&typeof _0xd2ac29[_0x3ab9db(0x19e)][_0x3ab9db(0x19d)]===_0x3ab9db(0x182)?_0xd2ac29['projectConfig'][_0x3ab9db(0x19d)]:{};if(_0x3ab9db(0x18a)in _0xd2ac29[_0x3ab9db(0x19e)])return _0x3ab9db(0x186);if(Object[_0x3ab9db(0x18d)](_0x31f2ed)['length']>0x0)return _0x3ab9db(0x186);if(_0xd2ac29[_0x3ab9db(0x19e)][_0x3ab9db(0x180)]===![])return null;if(_0xd2ac29[_0x3ab9db(0x1a0)][_0x3ab9db(0x18a)])return _0x3ab9db(0x193);return null;}function a23_0x3daf(_0x4af2ea,_0x3fbba6){_0x4af2ea=_0x4af2ea-0x180;const _0x19b9e9=a23_0x19b9();let _0x3daf41=_0x19b9e9[_0x4af2ea];return _0x3daf41;}export function getConfigPath(_0x5e1a65={}){const _0x426032=a23_0x3daf,_0x1b978d=_0x5e1a65['global']?_0x426032(0x193):_0x426032(0x186);return resolveWriteConfigPath(_0x1b978d);}export function readConfig(_0x12efc6={}){return readConfigFile(getConfigPath(_0x12efc6));}export function writeConfig(_0x1795e3,_0x5b5f71={}){writeConfigFile(getConfigPath(_0x5b5f71),_0x1795e3);}export function scopeLabel(_0x4ee514){const _0x30a241=a23_0x3daf;return _0x4ee514[_0x30a241(0x193)]?_0x30a241(0x19c):'';}
1
+ (function(_0x2c26b2,_0x24782e){const _0x137d9c=a23_0x40f4,_0x47b87d=_0x2c26b2();while(!![]){try{const _0x1bd701=parseInt(_0x137d9c(0xd7))/0x1*(parseInt(_0x137d9c(0xd2))/0x2)+-parseInt(_0x137d9c(0xec))/0x3*(parseInt(_0x137d9c(0xda))/0x4)+parseInt(_0x137d9c(0xdf))/0x5+-parseInt(_0x137d9c(0xe4))/0x6*(parseInt(_0x137d9c(0xd0))/0x7)+-parseInt(_0x137d9c(0xe5))/0x8*(parseInt(_0x137d9c(0xe8))/0x9)+-parseInt(_0x137d9c(0xd5))/0xa+-parseInt(_0x137d9c(0xdb))/0xb*(-parseInt(_0x137d9c(0xde))/0xc);if(_0x1bd701===_0x24782e)break;else _0x47b87d['push'](_0x47b87d['shift']());}catch(_0x4d9aa9){_0x47b87d['push'](_0x47b87d['shift']());}}}(a23_0x2c20,0x4c921));function a23_0x2c20(){const _0x3a6b35=['isCurrent','globalConfig','60UuNgHR','657240vqNKpW','inherit','both','length','project','236694TCnqzd','8VlxQnf','named','trim','4838229Xilytj','global','appcode','prototype','78Smeove','object','keys','appCode','call','7EgFuFP','defaultApp','46574tAXAUg','apps','projectConfig','4636470hmNWGC','name','22LYiQnl','hasOwnProperty','currentApp','18128iRpbTN','1822436YLPjaI'];a23_0x2c20=function(){return _0x3a6b35;};return a23_0x2c20();}import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x87c12b,_0x4008c1){const _0x1af410=a23_0x40f4;if(!_0x4008c1)return;const _0xd4b232=_0x4008c1[_0x1af410(0xd3)]&&typeof _0x4008c1[_0x1af410(0xd3)]===_0x1af410(0xed)?_0x4008c1[_0x1af410(0xd3)]:{},_0x552021=Object['keys'](_0xd4b232)[_0x1af410(0xe2)]>0x0;for(const _0x2cf4de of _0x87c12b){_0x2cf4de[_0x1af410(0xdc)]=![];}const _0x110513=_0x4008c1['appCode']!=null?String(_0x4008c1[_0x1af410(0xce)])['trim']():'';if(_0x552021){const _0x549adf=_0x4008c1[_0x1af410(0xd9)]??_0x4008c1[_0x1af410(0xd1)];if(_0x549adf)for(const _0x4af755 of _0x87c12b){_0x4af755[_0x1af410(0xe6)]===!![]&&_0x4af755[_0x1af410(0xd6)]===_0x549adf&&(_0x4af755[_0x1af410(0xdc)]=!![]);}for(const _0x46427c of _0x87c12b){if(_0x46427c[_0x1af410(0xe6)]!==![])continue;if(_0x4008c1[_0x1af410(0xd1)])continue;_0x110513&&String(_0x46427c[_0x1af410(0xea)]??'')[_0x1af410(0xe7)]()===_0x110513&&(_0x46427c[_0x1af410(0xdc)]=!![]);}return;}if(!_0x110513)return;for(const _0x3fecd4 of _0x87c12b){String(_0x3fecd4[_0x1af410(0xea)]??'')[_0x1af410(0xe7)]()===_0x110513&&(_0x3fecd4[_0x1af410(0xdc)]=!![]);}}export function resolveAppScopeForWrite(_0x59cfe3,_0x5885f9,_0x492c17){const _0x45ad11=a23_0x40f4;if(_0x5885f9)return _0x45ad11(0xe9);const _0x132e29=_0x492c17[_0x45ad11(0xd4)]['apps']&&typeof _0x492c17['projectConfig'][_0x45ad11(0xd3)]===_0x45ad11(0xed)?_0x492c17[_0x45ad11(0xd4)]['apps']:{},_0x39b618=_0x492c17[_0x45ad11(0xdd)][_0x45ad11(0xd3)]&&typeof _0x492c17[_0x45ad11(0xdd)][_0x45ad11(0xd3)]===_0x45ad11(0xed)?_0x492c17['globalConfig'][_0x45ad11(0xd3)]:{};if(Object[_0x45ad11(0xeb)][_0x45ad11(0xd8)][_0x45ad11(0xcf)](_0x132e29,_0x59cfe3))return _0x45ad11(0xe3);if(Object[_0x45ad11(0xeb)][_0x45ad11(0xd8)][_0x45ad11(0xcf)](_0x39b618,_0x59cfe3))return _0x45ad11(0xe9);return _0x45ad11(0xe3);}export function appDefinedIn(_0xd9ef21,_0x2c1328,_0x43e482,_0x25d424){const _0x458d28=a23_0x40f4;if(_0x25d424)return Object['prototype'][_0x458d28(0xd8)][_0x458d28(0xcf)](_0x43e482,_0xd9ef21)?_0x458d28(0xe3):_0x458d28(0xe9);const _0x2a0b0a=Object['prototype'][_0x458d28(0xd8)][_0x458d28(0xcf)](_0x2c1328,_0xd9ef21),_0xe889fe=Object['prototype'][_0x458d28(0xd8)][_0x458d28(0xcf)](_0x43e482,_0xd9ef21);if(_0x2a0b0a&&_0xe889fe)return _0x458d28(0xe1);if(_0xe889fe)return'project';return _0x458d28(0xe9);}export function resolveDefaultAppSource(_0x18b4ff){const _0x40bc27=a23_0x40f4,_0x35c6bb=_0x18b4ff[_0x40bc27(0xd4)][_0x40bc27(0xd3)]&&typeof _0x18b4ff[_0x40bc27(0xd4)][_0x40bc27(0xd3)]===_0x40bc27(0xed)?_0x18b4ff['projectConfig'][_0x40bc27(0xd3)]:{};if(_0x40bc27(0xd1)in _0x18b4ff[_0x40bc27(0xd4)])return _0x40bc27(0xe3);if(Object[_0x40bc27(0xcd)](_0x35c6bb)['length']>0x0)return _0x40bc27(0xe3);if(_0x18b4ff[_0x40bc27(0xd4)][_0x40bc27(0xe0)]===![])return null;if(_0x18b4ff[_0x40bc27(0xdd)][_0x40bc27(0xd1)])return _0x40bc27(0xe9);return null;}export function getConfigPath(_0x36fd95={}){const _0x30a07a=a23_0x40f4,_0x3b2fde=_0x36fd95[_0x30a07a(0xe9)]?'global':_0x30a07a(0xe3);return resolveWriteConfigPath(_0x3b2fde);}export function readConfig(_0x437031={}){return readConfigFile(getConfigPath(_0x437031));}function a23_0x40f4(_0x2ce814,_0x48bc25){_0x2ce814=_0x2ce814-0xcd;const _0x2c2055=a23_0x2c20();let _0x40f443=_0x2c2055[_0x2ce814];return _0x40f443;}export function writeConfig(_0x2934c1,_0x483cf0={}){writeConfigFile(getConfigPath(_0x483cf0),_0x2934c1);}export function scopeLabel(_0x44fda4){const _0x281b7a=a23_0x40f4;return _0x44fda4[_0x281b7a(0xe9)]?'\x20(global)':'';}
@@ -1 +1 @@
1
- const a24_0x59d02a=a24_0x4526;function a24_0x3a5b(){const _0x108530=['\x22\x20(appcode:\x20','136343rGmSPw','object','251001ociqOJ','defaultApp','Use\x20`','2361388susgqR','Available:\x20','projectConfig','name','appcode','length','Use\x20global\x20config\x20scope','App\x20\x22','\x20app\x20add\x20','trim','1443585dhMFLR','bool','global','Usage:\x20','validation','call','App\x20profile\x20name\x20to\x20activate','7vmZfDe','\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.','hasOwnProperty','projectPath','Missing\x20app\x20name.','prototype','boolean','app','Default\x20app\x20set\x20to\x20\x22','619504jKcORw','14875839szBAnG','5Oysiow','150FpXVlN','write','2970600rDcLYr','join','use','apps','6tVdQTA','\x20app\x20use\x20<name>\x20[--global]'];a24_0x3a5b=function(){return _0x108530;};return a24_0x3a5b();}(function(_0x41af52,_0x542574){const _0x3cdcea=a24_0x4526,_0x50ebf2=_0x41af52();while(!![]){try{const _0x4e6d7a=parseInt(_0x3cdcea(0x10c))/0x1*(-parseInt(_0x3cdcea(0x109))/0x2)+parseInt(_0x3cdcea(0x11b))/0x3+parseInt(_0x3cdcea(0x111))/0x4*(parseInt(_0x3cdcea(0x102))/0x5)+parseInt(_0x3cdcea(0x105))/0x6+parseInt(_0x3cdcea(0x122))/0x7*(parseInt(_0x3cdcea(0x100))/0x8)+-parseInt(_0x3cdcea(0x10e))/0x9*(-parseInt(_0x3cdcea(0x103))/0xa)+-parseInt(_0x3cdcea(0x101))/0xb;if(_0x4e6d7a===_0x542574)break;else _0x50ebf2['push'](_0x50ebf2['shift']());}catch(_0x5805e3){_0x50ebf2['push'](_0x50ebf2['shift']());}}}(a24_0x3a5b,0x497ed));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';function a24_0x4526(_0x1f3772,_0x4d0f12){_0x1f3772=_0x1f3772-0xf8;const _0x3a5b73=a24_0x3a5b();let _0x4526e3=_0x3a5b73[_0x1f3772];return _0x4526e3;}import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x1e0dcd){const _0x4ee2ae=a24_0x4526,_0x368485=_0x1e0dcd['args'][0x0]?.[_0x4ee2ae(0x11a)]();if(!_0x368485)throw CliErrors[_0x4ee2ae(0x11f)](_0x4ee2ae(0xfb),_0x4ee2ae(0x11e)+CLI_BIN_NAME+_0x4ee2ae(0x10a));}async function execute(_0xe914ca){const _0x537a29=a24_0x4526,_0x58d042=_0xe914ca['args'][0x0]?.[_0x537a29(0x11a)]();if(!_0x58d042)throw CliErrors[_0x537a29(0x11f)](_0x537a29(0xfb),_0x537a29(0x11e)+CLI_BIN_NAME+_0x537a29(0x10a));const _0x20c383=_0xe914ca[_0x537a29(0x11c)](_0x537a29(0x11d)),{config:_0x23e2b1,layers:_0x3cd6d5}=readRawConfigWithLayers(),_0x48d37d=_0x23e2b1[_0x537a29(0x108)]??{};if(!_0x48d37d[_0x58d042]){const _0x2b779a=Object['keys'](_0x48d37d),_0x4f2201=_0x2b779a[_0x537a29(0x116)]===0x0?_0x537a29(0x110)+CLI_BIN_NAME+_0x537a29(0x119)+_0x58d042+'\x20--appcode\x20<code>`\x20first.':_0x537a29(0x112)+_0x2b779a[_0x537a29(0x106)](',\x20');throw CliErrors[_0x537a29(0x11f)](_0x537a29(0x118)+_0x58d042+'\x22\x20not\x20found.',_0x4f2201);}let _0x173c37,_0x30303d='';if(_0x20c383)_0x173c37={'global':!![]};else{const _0x290303=isInProject()&&!!_0x3cd6d5[_0x537a29(0xfa)];_0x173c37={'global':!_0x290303};if(_0x290303){const _0x517e23=_0x3cd6d5[_0x537a29(0x113)][_0x537a29(0x108)]&&typeof _0x3cd6d5['projectConfig'][_0x537a29(0x108)]===_0x537a29(0x10d)?_0x3cd6d5[_0x537a29(0x113)][_0x537a29(0x108)]:{};!Object[_0x537a29(0xfc)][_0x537a29(0xf9)][_0x537a29(0x120)](_0x517e23,_0x58d042)&&(_0x30303d='\x0aNote:\x20\x22'+_0x58d042+_0x537a29(0xf8));}}const _0x522be3=readConfig(_0x173c37);return _0x522be3[_0x537a29(0x10f)]=_0x58d042,writeConfig(_0x522be3,_0x173c37),{'ok':!![],'message':_0x537a29(0xff)+_0x58d042+_0x537a29(0x10b)+_0x48d37d[_0x58d042][_0x537a29(0x115)]+')'+scopeLabel(_0x173c37)+_0x30303d};}export const appUseDefinition={'service':a24_0x59d02a(0xfe),'command':a24_0x59d02a(0x107),'description':'Switch\x20the\x20default\x20app','risk':a24_0x59d02a(0x104),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x59d02a(0x114),'description':a24_0x59d02a(0x121),'required':!![]}],'flags':[{'name':'global','type':a24_0x59d02a(0xfd),'description':a24_0x59d02a(0x117),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ function a24_0x28ca(_0x566778,_0x53e8ff){_0x566778=_0x566778-0x97;const _0x356020=a24_0x3560();let _0x28ca2e=_0x356020[_0x566778];return _0x28ca2e;}const a24_0x3981fd=a24_0x28ca;(function(_0x24653d,_0x5b319c){const _0x504dba=a24_0x28ca,_0x13fed3=_0x24653d();while(!![]){try{const _0x19ad4b=parseInt(_0x504dba(0xb4))/0x1*(parseInt(_0x504dba(0xb7))/0x2)+parseInt(_0x504dba(0xa0))/0x3*(parseInt(_0x504dba(0xac))/0x4)+parseInt(_0x504dba(0xae))/0x5+parseInt(_0x504dba(0xbd))/0x6*(parseInt(_0x504dba(0xb9))/0x7)+-parseInt(_0x504dba(0xad))/0x8*(-parseInt(_0x504dba(0xaa))/0x9)+parseInt(_0x504dba(0xb8))/0xa+-parseInt(_0x504dba(0x9a))/0xb;if(_0x19ad4b===_0x5b319c)break;else _0x13fed3['push'](_0x13fed3['shift']());}catch(_0x5f2eb3){_0x13fed3['push'](_0x13fed3['shift']());}}}(a24_0x3560,0x9fd8c));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x2d8a6d){const _0x5270e4=a24_0x28ca,_0x34ca2d=_0x2d8a6d[_0x5270e4(0x9d)][0x0]?.[_0x5270e4(0xbc)]();if(!_0x34ca2d)throw CliErrors[_0x5270e4(0xbe)](_0x5270e4(0xab),_0x5270e4(0xb0)+CLI_BIN_NAME+_0x5270e4(0xa2));}function a24_0x3560(){const _0x3301a1=['App\x20\x22','defaultApp','args','bool','apps','9qeZWAt','Use\x20global\x20config\x20scope','\x20app\x20use\x20<name>\x20[--global]','object','global','\x22\x20not\x20found.','app','projectPath','appcode','globalConfig','27KCMtvN','Missing\x20app\x20name.','256516JPPsbw','3318968VzggvJ','383245Mmcikv','length','Usage:\x20','write','Default\x20app\x20set\x20to\x20\x22','call','2447tdWXEm','prototype','join','896EerJYG','12211960ZUSLLs','196BlZHJK','Switch\x20the\x20default\x20app','Available:\x20','trim','73506FeTlDo','validation','boolean','\x20app\x20add\x20','\x20--appcode\x20<code>`\x20first.','38713367pdCvgM'];a24_0x3560=function(){return _0x3301a1;};return a24_0x3560();}async function execute(_0x2c0ee2){const _0x577ed2=a24_0x28ca,_0xc2b6d6=_0x2c0ee2[_0x577ed2(0x9d)][0x0]?.[_0x577ed2(0xbc)]();if(!_0xc2b6d6)throw CliErrors[_0x577ed2(0xbe)](_0x577ed2(0xab),_0x577ed2(0xb0)+CLI_BIN_NAME+_0x577ed2(0xa2));const _0x84fbb1=_0x2c0ee2[_0x577ed2(0x9e)](_0x577ed2(0xa4)),{config:_0x2cd00d,layers:_0x3ed1af}=readRawConfigWithLayers(),_0x166cb2=_0x2cd00d[_0x577ed2(0x9f)]??{},_0x54cf19=_0x3ed1af[_0x577ed2(0xa9)][_0x577ed2(0x9f)]&&typeof _0x3ed1af[_0x577ed2(0xa9)][_0x577ed2(0x9f)]===_0x577ed2(0xa3)?_0x3ed1af['globalConfig'][_0x577ed2(0x9f)]:{},_0x272efc={..._0x54cf19,..._0x166cb2};if(!_0x272efc[_0xc2b6d6]){const _0x42d619=Object['keys'](_0x272efc),_0x1fcaa0=_0x42d619[_0x577ed2(0xaf)]===0x0?'Use\x20`'+CLI_BIN_NAME+_0x577ed2(0x98)+_0xc2b6d6+_0x577ed2(0x99):_0x577ed2(0xbb)+_0x42d619[_0x577ed2(0xb6)](',\x20');throw CliErrors[_0x577ed2(0xbe)](_0x577ed2(0x9b)+_0xc2b6d6+_0x577ed2(0xa5),_0x1fcaa0);}let _0x3cf746,_0x27a2f6='';if(_0x84fbb1)_0x3cf746={'global':!![]};else{const _0x3fcd24=isInProject()&&!!_0x3ed1af[_0x577ed2(0xa7)];_0x3cf746={'global':!_0x3fcd24};}const _0xeedbc6=readConfig(_0x3cf746);_0xeedbc6[_0x577ed2(0x9c)]=_0xc2b6d6;if(!_0x3cf746[_0x577ed2(0xa4)]){const _0x100403=_0xeedbc6['apps']&&typeof _0xeedbc6[_0x577ed2(0x9f)]===_0x577ed2(0xa3)?_0xeedbc6[_0x577ed2(0x9f)]:{};!Object[_0x577ed2(0xb5)]['hasOwnProperty'][_0x577ed2(0xb3)](_0x100403,_0xc2b6d6)&&(_0xeedbc6[_0x577ed2(0x9f)]={..._0x100403,[_0xc2b6d6]:_0x272efc[_0xc2b6d6]},_0x27a2f6='\x0aNote:\x20\x22'+_0xc2b6d6+'\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.');}return writeConfig(_0xeedbc6,_0x3cf746),{'ok':!![],'message':_0x577ed2(0xb2)+_0xc2b6d6+'\x22\x20(appcode:\x20'+_0x272efc[_0xc2b6d6][_0x577ed2(0xa8)]+')'+scopeLabel(_0x3cf746)+_0x27a2f6};}export const appUseDefinition={'service':a24_0x3981fd(0xa6),'command':'use','description':a24_0x3981fd(0xba),'risk':a24_0x3981fd(0xb1),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':'global','type':a24_0x3981fd(0x97),'description':a24_0x3981fd(0xa1),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- function a25_0x26a2(_0x199cb7,_0x3acdf2){_0x199cb7=_0x199cb7-0x11d;const _0x519921=a25_0x5199();let _0x26a2de=_0x519921[_0x199cb7];return _0x26a2de;}function a25_0x5199(){const _0x10684b=['16msjmEh','7440840OjamsL','Clear\x20login\x20session','bool','../../auth/auth-server-ui.js','960543eaaFUQ','nonInteractive','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','35aarBAq','log','auth','204588uxTspA','130JjIoHz','80aIsoRY','login','5703753RMdRkT','yes','19446jYpyiK','Login\x20via\x20browser','boolean','264296ejAqoI','write','853458mDWntc'];a25_0x5199=function(){return _0x10684b;};return a25_0x5199();}const a25_0xf77454=a25_0x26a2;(function(_0x59eca2,_0x36e83e){const _0x28c683=a25_0x26a2,_0x2f1060=_0x59eca2();while(!![]){try{const _0x345407=parseInt(_0x28c683(0x131))/0x1*(parseInt(_0x28c683(0x120))/0x2)+parseInt(_0x28c683(0x125))/0x3+-parseInt(_0x28c683(0x11d))/0x4*(-parseInt(_0x28c683(0x12d))/0x5)+-parseInt(_0x28c683(0x11f))/0x6*(parseInt(_0x28c683(0x128))/0x7)+-parseInt(_0x28c683(0x121))/0x8+-parseInt(_0x28c683(0x12b))/0x9*(-parseInt(_0x28c683(0x12c))/0xa)+parseInt(_0x28c683(0x12f))/0xb;if(_0x345407===_0x36e83e)break;else _0x2f1060['push'](_0x2f1060['shift']());}catch(_0x2bb45a){_0x2f1060['push'](_0x2f1060['shift']());}}}(a25_0x5199,0xac474));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0xf77454(0x12a),'command':a25_0xf77454(0x12e),'description':a25_0xf77454(0x132),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'yes','type':a25_0xf77454(0x133),'description':a25_0xf77454(0x127),'default':![]}],async 'execute'(_0x25bf47){const _0x381b88=a25_0xf77454,{runAuthServer:_0x4e1a50}=await import(_0x381b88(0x124));return await _0x4e1a50({'autoYes':_0x25bf47[_0x381b88(0x123)](_0x381b88(0x130)),'nonInteractive':_0x25bf47[_0x381b88(0x126)]}),{'ok':!![]};}},{'service':a25_0xf77454(0x12a),'command':'logout','description':a25_0xf77454(0x122),'risk':a25_0xf77454(0x11e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x8c7754){const _0x24727f=a25_0xf77454;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x24727f(0x129)]('✓\x20Logged\x20out')):console['log']('!\x20Not\x20logged\x20in'),{'ok':!![]};}}];
1
+ const a25_0x47634d=a25_0x561f;(function(_0x4d07fb,_0x367e60){const _0x4e070e=a25_0x561f,_0x2be09d=_0x4d07fb();while(!![]){try{const _0x33acc0=parseInt(_0x4e070e(0x144))/0x1+parseInt(_0x4e070e(0x152))/0x2*(-parseInt(_0x4e070e(0x157))/0x3)+-parseInt(_0x4e070e(0x14b))/0x4*(parseInt(_0x4e070e(0x143))/0x5)+-parseInt(_0x4e070e(0x159))/0x6*(-parseInt(_0x4e070e(0x147))/0x7)+parseInt(_0x4e070e(0x142))/0x8*(-parseInt(_0x4e070e(0x153))/0x9)+-parseInt(_0x4e070e(0x158))/0xa*(parseInt(_0x4e070e(0x150))/0xb)+-parseInt(_0x4e070e(0x156))/0xc*(-parseInt(_0x4e070e(0x14d))/0xd);if(_0x33acc0===_0x367e60)break;else _0x2be09d['push'](_0x2be09d['shift']());}catch(_0x3b0533){_0x2be09d['push'](_0x2be09d['shift']());}}}(a25_0x4b48,0xa06f9));function a25_0x561f(_0x1a7a54,_0x2e42b5){_0x1a7a54=_0x1a7a54-0x142;const _0x4b4858=a25_0x4b48();let _0x561ffe=_0x4b4858[_0x1a7a54];return _0x561ffe;}import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';function a25_0x4b48(){const _0x1d8e5d=['../../auth/auth-server-ui.js','write','12nwzUDg','38931cBhwGU','4635100kzhxtW','258FaqFMQ','Clear\x20login\x20session','boolean','yes','16XgMZbq','15TCSnsO','1159442OrlBfD','login','nonInteractive','74963cDMohh','auth','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','log','1369028MVVzmz','!\x20Not\x20logged\x20in','25535341SRoqQC','bool','Login\x20via\x20browser','22hyBtSJ','✓\x20Logged\x20out','80krFalX','2043765vvXOEo'];a25_0x4b48=function(){return _0x1d8e5d;};return a25_0x4b48();}export const authDefinitions=[{'service':a25_0x47634d(0x148),'command':a25_0x47634d(0x145),'description':a25_0x47634d(0x14f),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x47634d(0x15c),'type':a25_0x47634d(0x15b),'description':a25_0x47634d(0x149),'default':![]}],async 'execute'(_0x45e9f3){const _0x102835=a25_0x47634d,{runAuthServer:_0x471c74}=await import(_0x102835(0x154));return await _0x471c74({'autoYes':_0x45e9f3[_0x102835(0x14e)](_0x102835(0x15c)),'nonInteractive':_0x45e9f3[_0x102835(0x146)]}),{'ok':!![]};}},{'service':a25_0x47634d(0x148),'command':'logout','description':a25_0x47634d(0x15a),'risk':a25_0x47634d(0x155),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x332073){const _0x20525e=a25_0x47634d;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x20525e(0x14a)](_0x20525e(0x151))):console[_0x20525e(0x14a)](_0x20525e(0x14c)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- function a26_0x4ecf(){const _0x3e7316=['Select\x20trigger\x20node:','\x20api\x20pull`\x20to\x20refresh.','scriptsRootDir','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','nonInteractive','utf8','Script\x20type','Alias\x20\x22','functionNode','189586sFWUWN','code','\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','appCode','Operation\x20type\x20(HOOK\x20only)','function-node','operation-type','Function\x20name\x20(valid\x20JS\x20identifier)','Trigger\x20node\x20(HOOK\x20only)','length','31996MysbZH','apiDir','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Script\x20description','HOOK','trim','datasetcode','after','Select\x20dataset:','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','find','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','\x22.\x20','ENDPOINT','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','Available:\x20','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','alias','No\x20operation\x20types\x20found\x20for\x20dataset\x20','47802UAVOYu','stderr','\x0a\x20*\x20[脚本名称]\x20','create','operationType','Select\x20operation\x20type:','8847dJeBOh','3688oxrQZT','write','8927040zzTAQy','string','tableName','description','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','entries','TODO:\x20add\x20script\x20description','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','COMMON','\x22\x20not\x20found\x20for\x20dataset\x20','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','.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','isInteger','map','\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','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','join','bff','.js','type','includes','name','471724TtyDhr','Operation\x20type\x20\x22','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','\x0a\x20*\x20[触发节点]\x20','before','50ixPQLh','str','Invalid\x20dataset\x20selection.','\x20function:\x20','630UdiSYO','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','\x22\x20not\x20found.\x20','204KKHvUc','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Dataset\x20not\x20found\x20for\x20code\x20\x22','validation','datasetCode','17569464cBLtKn','HOOK\x20requires\x20alias/operation/node\x20options.','parseInt'];a26_0x4ecf=function(){return _0x3e7316;};return a26_0x4ecf();}const a26_0x263f76=a26_0x3322;(function(_0x234c00,_0x404c12){const _0x33eb7c=a26_0x3322,_0x3138f9=_0x234c00();while(!![]){try{const _0x2c3975=parseInt(_0x33eb7c(0x1fb))/0x1+-parseInt(_0x33eb7c(0x1aa))/0x2*(parseInt(_0x33eb7c(0x1ea))/0x3)+parseInt(_0x33eb7c(0x1dd))/0x4*(parseInt(_0x33eb7c(0x1e2))/0x5)+parseInt(_0x33eb7c(0x1bd))/0x6*(-parseInt(_0x33eb7c(0x1e6))/0x7)+parseInt(_0x33eb7c(0x1c4))/0x8*(parseInt(_0x33eb7c(0x1c3))/0x9)+-parseInt(_0x33eb7c(0x1c6))/0xa+parseInt(_0x33eb7c(0x1ef))/0xb;if(_0x2c3975===_0x404c12)break;else _0x3138f9['push'](_0x3138f9['shift']());}catch(_0x102711){_0x3138f9['push'](_0x3138f9['shift']());}}}(a26_0x4ecf,0xb0315));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';function a26_0x3322(_0x3137b4,_0xda20e0){_0x3137b4=_0x3137b4-0x1a2;const _0x4ecf0f=a26_0x4ecf();let _0x33221c=_0x4ecf0f[_0x3137b4];return _0x33221c;}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{assertDatasetSupportsLocalDevelopment,filterDbBackedDatasets}from'../../commands/dataset/capability.js';export const bffCreate={'service':a26_0x263f76(0x1d8),'command':a26_0x263f76(0x1c0),'description':a26_0x263f76(0x1d1),'risk':a26_0x263f76(0x1c5),'flags':[{'name':a26_0x263f76(0x1da),'type':a26_0x263f76(0x1c7),'required':!![],'enum':[a26_0x263f76(0x1ce),a26_0x263f76(0x1b7),'HOOK'],'description':a26_0x263f76(0x1f8)},{'name':a26_0x263f76(0x1dc),'type':a26_0x263f76(0x1c7),'required':!![],'description':a26_0x263f76(0x1a7)},{'name':a26_0x263f76(0x1c9),'type':a26_0x263f76(0x1c7),'description':a26_0x263f76(0x1ad)},{'name':a26_0x263f76(0x1bb),'type':'string','description':a26_0x263f76(0x1b8)},{'name':a26_0x263f76(0x1b0),'type':a26_0x263f76(0x1c7),'description':a26_0x263f76(0x1e8)},{'name':a26_0x263f76(0x1a6),'type':a26_0x263f76(0x1c7),'description':a26_0x263f76(0x1a4)},{'name':a26_0x263f76(0x1a5),'type':a26_0x263f76(0x1c7),'description':a26_0x263f76(0x1a8),'enum':['before','after']}],async 'validate'(_0x513122){const _0x3403e6=a26_0x263f76,_0x1781f0=_0x513122[_0x3403e6(0x1e3)](_0x3403e6(0x1dc));if(!isValidBffFunctionName(_0x1781f0))throw CliErrors[_0x3403e6(0x1ed)]('Invalid\x20function\x20name\x20\x22'+_0x1781f0+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0xe6fb72){const _0x444a5c=a26_0x263f76,_0x188036=loadBffProjectConfig(_0xe6fb72['appCode']),_0x28c74b=_0xe6fb72['str'](_0x444a5c(0x1da)),_0x57b1ef=_0xe6fb72[_0x444a5c(0x1e3)](_0x444a5c(0x1dc)),_0x4e85ad=_0xe6fb72[_0x444a5c(0x1e3)](_0x444a5c(0x1c9))||undefined,_0x2dd4cd=_0x28c74b===_0x444a5c(0x1ae)?await resolveHookOptions(_0x188036,_0xe6fb72):undefined,_0x26ccdf=buildFilePath(_0x188036,_0x28c74b,_0x57b1ef,_0x2dd4cd);if(await fileExists(_0x26ccdf))throw CliErrors['validation']('File\x20already\x20exists:\x20'+_0x26ccdf);await mkdir(dirname(_0x26ccdf),{'recursive':!![]});const _0x12ec26=generateTemplate(_0x28c74b,_0x57b1ef,_0xe6fb72[_0x444a5c(0x1a3)],_0x4e85ad,_0x2dd4cd);await writeFile(_0x26ccdf,_0x12ec26,_0x444a5c(0x1f7));const _0xdff92b={'type':_0x28c74b,'name':_0x57b1ef,'path':_0x26ccdf};if(_0x4e85ad)_0xdff92b[_0x444a5c(0x1c9)]=_0x4e85ad;if(_0x2dd4cd){if(_0x2dd4cd['alias'])_0xdff92b[_0x444a5c(0x1bb)]=_0x2dd4cd[_0x444a5c(0x1bb)];_0xdff92b[_0x444a5c(0x1ee)]=_0x2dd4cd[_0x444a5c(0x1ee)],_0xdff92b[_0x444a5c(0x1c1)]=_0x2dd4cd[_0x444a5c(0x1c1)],_0xdff92b[_0x444a5c(0x1fa)]=_0x2dd4cd[_0x444a5c(0x1fa)];}return{'ok':!![],'data':_0xdff92b,'message':'Created\x20'+_0x28c74b+_0x444a5c(0x1e5)+_0x57b1ef};}};async function resolveHookOptions(_0xe59d85,_0x2e3bf7){const _0x1377b4=a26_0x263f76,_0x2b7467=loadAliasMap(_0x2e3bf7[_0x1377b4(0x1ab)],undefined,resolveApiFilePath(_0x2e3bf7[_0x1377b4(0x1ab)],_0x2e3bf7['appCode'])),_0x274690=_0x2b7467[_0x1377b4(0x1a9)]>0x0;let _0x5caa39,_0x157dde,_0x101efc;const _0x2424fd=_0x2e3bf7[_0x1377b4(0x1e3)]('alias'),_0x1ad28c=_0x2e3bf7[_0x1377b4(0x1e3)]('datasetcode');if(_0x2424fd){const _0x318f6b=resolveAlias(_0x2e3bf7[_0x1377b4(0x1ab)],_0x2424fd,undefined,resolveApiFilePath(_0x2e3bf7[_0x1377b4(0x1ab)],_0x2e3bf7[_0x1377b4(0x1a3)]));if(!_0x318f6b){const _0x3a01ca=_0x274690?'Available\x20aliases:\x20'+_0x2b7467[_0x1377b4(0x1d4)](_0xcc7d5e=>_0xcc7d5e[_0x1377b4(0x1bb)])[_0x1377b4(0x1d7)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors['validation'](_0x1377b4(0x1f9)+_0x2424fd+_0x1377b4(0x1e9)+_0x3a01ca);}_0x5caa39=_0x2424fd,_0x157dde=_0x318f6b;}else{if(_0x1ad28c){_0x157dde=_0x1ad28c;const _0x29a7db=_0x2b7467[_0x1377b4(0x1b4)](_0x51f496=>_0x51f496['datasetCode']===_0x1ad28c);_0x5caa39=_0x29a7db?.[_0x1377b4(0x1bb)];}else{if(_0x2e3bf7[_0x1377b4(0x1f6)])throw CliErrors[_0x1377b4(0x1ed)](_0x1377b4(0x1ba));else{if(_0x274690){const _0x46d8cc=_0x2b7467[_0x1377b4(0x1d4)](_0x5769e5=>_0x5769e5[_0x1377b4(0x1bb)]+'\x20('+_0x5769e5[_0x1377b4(0x1c8)]+')'),_0x2202e9=await promptSelect(_0x1377b4(0x1b2),_0x46d8cc),_0x4b8553=_0x2b7467[_0x2202e9];if(!_0x4b8553)throw CliErrors[_0x1377b4(0x1ed)](_0x1377b4(0x1e4));_0x5caa39=_0x4b8553[_0x1377b4(0x1bb)],_0x157dde=_0x4b8553[_0x1377b4(0x1ee)];}else{const _0x538c01=await listDatasets(_0x2e3bf7[_0x1377b4(0x1a3)]),_0x4475fe=filterDbBackedDatasets(_0x538c01);if(_0x4475fe[_0x1377b4(0x1a9)]===0x0)throw CliErrors[_0x1377b4(0x1ed)](_0x538c01[_0x1377b4(0x1a9)]===0x0?'No\x20datasets\x20found\x20for\x20this\x20app.':'No\x20DB\x20table\x20datasets\x20found\x20for\x20this\x20app.\x20METADATA\x20datasets\x20cannot\x20be\x20used\x20for\x20BFF\x20HOOK\x20development\x20because\x20the\x20workflow\x20depends\x20on\x20SQL\x20execution.');const _0x188c1e=_0x4475fe['map'](_0x45767f=>_0x45767f[_0x1377b4(0x1dc)]+'\x20('+_0x45767f[_0x1377b4(0x1fc)]+')'),_0x49d3bf=await promptSelect(_0x1377b4(0x1b2),_0x188c1e),_0x4e1f8a=_0x4475fe[_0x49d3bf];if(!_0x4e1f8a)throw CliErrors['validation'](_0x1377b4(0x1e4));_0x157dde=_0x4e1f8a['code'],_0x5caa39=undefined;}}}}const _0xcf2025=await listDatasets(_0x2e3bf7[_0x1377b4(0x1a3)]),_0x45af02=_0xcf2025[_0x1377b4(0x1b4)](_0x52bb17=>_0x52bb17[_0x1377b4(0x1fc)]===_0x157dde);if(!_0x45af02)throw CliErrors['validation'](_0x1377b4(0x1ec)+_0x157dde+_0x1377b4(0x1b6)+(_0x5caa39?_0x1377b4(0x1b5)+CLI_BIN_NAME+_0x1377b4(0x1f3):''));assertDatasetSupportsLocalDevelopment(_0x45af02,'BFF\x20HOOK'),_0x101efc=_0x45af02['id'];const _0x60bc71=_0x5caa39??_0x157dde,_0x46fbc4=await listBffDatasetOperations(_0x2e3bf7[_0x1377b4(0x1a3)],_0x101efc),_0xa8e11b=_0x46fbc4?Object['keys'](_0x46fbc4):[];if(_0xa8e11b[_0x1377b4(0x1a9)]===0x0)throw CliErrors['validation'](_0x1377b4(0x1bc)+_0x60bc71+'.');let _0x112fba;const _0x5bc225=_0x2e3bf7[_0x1377b4(0x1e3)](_0x1377b4(0x1a6));if(_0x5bc225){if(!_0xa8e11b[_0x1377b4(0x1db)](_0x5bc225))throw CliErrors['validation'](_0x1377b4(0x1de)+_0x5bc225+_0x1377b4(0x1cf)+_0x60bc71+'.\x20'+(_0x1377b4(0x1b9)+_0xa8e11b[_0x1377b4(0x1d7)](',\x20')));_0x112fba=_0x5bc225;}else{if(_0x2e3bf7[_0x1377b4(0x1f6)])throw CliErrors[_0x1377b4(0x1ed)]('--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x27205f=await promptSelect(_0x1377b4(0x1c2),_0xa8e11b);_0x112fba=_0xa8e11b[_0x27205f]??_0xa8e11b[0x0];}let _0xcca02b=normalizeHookFunctionNode(_0x2e3bf7['str']('function-node'));if(!_0xcca02b){if(_0x2e3bf7[_0x1377b4(0x1e3)]('function-node'))throw CliErrors['validation'](_0x1377b4(0x1e7));if(_0x2e3bf7['nonInteractive'])throw CliErrors[_0x1377b4(0x1ed)](_0x1377b4(0x1ca));const _0x300b5a=await promptSelect(_0x1377b4(0x1f2),[_0x1377b4(0x1e1),_0x1377b4(0x1b1)]);_0xcca02b=[_0x1377b4(0x1e1),_0x1377b4(0x1b1)][_0x300b5a]??'before';}return{'alias':_0x5caa39,'datasetCode':_0x157dde,'datasetId':_0x101efc,'operationType':_0x112fba,'functionNode':_0xcca02b};}async function promptSelect(_0x4566fd,_0x17310a){const _0xf0060c=a26_0x263f76;if(_0x17310a[_0xf0060c(0x1a9)]===0x1)return 0x0;for(const [_0x1827fe,_0x2c0da0]of _0x17310a[_0xf0060c(0x1cb)]()){process[_0xf0060c(0x1be)][_0xf0060c(0x1c5)]('\x20\x20'+(_0x1827fe+0x1)+'.\x20'+_0x2c0da0+'\x0a');}const _0x2835d5=createInterface({'input':process['stdin'],'output':process[_0xf0060c(0x1be)]});while(!![]){const _0x68755=await new Promise(_0x23e49c=>{_0x2835d5['question'](_0x4566fd+'\x20',_0x23e49c);}),_0x1cc191=Number[_0xf0060c(0x1f1)](_0x68755[_0xf0060c(0x1af)](),0xa);if(Number[_0xf0060c(0x1d3)](_0x1cc191)&&_0x1cc191>=0x1&&_0x1cc191<=_0x17310a[_0xf0060c(0x1a9)])return _0x2835d5['close'](),_0x1cc191-0x1;process[_0xf0060c(0x1be)]['write'](_0xf0060c(0x1df)+_0x17310a['length']+'.\x0a');}}function buildFilePath(_0x4542d3,_0x5cfde1,_0x4d7be8,_0x41c2eb){const _0x591748=a26_0x263f76;if(_0x5cfde1===_0x591748(0x1ae)){if(!_0x41c2eb)throw CliErrors[_0x591748(0x1ed)](_0x591748(0x1f0));const _0xd8f7b7=_0x41c2eb[_0x591748(0x1bb)]??_0x41c2eb[_0x591748(0x1ee)];return join(_0x4542d3[_0x591748(0x1f4)],_0x591748(0x1ae),_0xd8f7b7,_0x41c2eb[_0x591748(0x1c1)],_0x41c2eb['functionNode'],_0x4d7be8+_0x591748(0x1d9));}return join(_0x4542d3[_0x591748(0x1f4)],_0x5cfde1,_0x4d7be8+_0x591748(0x1d9));}export function generateTemplate(_0x325133,_0x2e49e8,_0x1f6ed4,_0x44a38e,_0x1d105f){const _0x5e2e2d=a26_0x263f76,_0x43e1a7=_0x44a38e?.['trim']()||_0x5e2e2d(0x1cc);if(_0x325133===_0x5e2e2d(0x1ce))return _0x5e2e2d(0x1eb)+_0x43e1a7+_0x5e2e2d(0x1bf)+_0x2e49e8+_0x5e2e2d(0x1d0)+_0x2e49e8+_0x5e2e2d(0x1d2)+_0x2e49e8+_0x5e2e2d(0x1ac);if(_0x325133===_0x5e2e2d(0x1b7))return'/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x43e1a7+_0x5e2e2d(0x1cd)+_0x1f6ed4+'/'+_0x2e49e8+_0x5e2e2d(0x1d5)+_0x2e49e8+_0x5e2e2d(0x1ac);if(!_0x1d105f)throw CliErrors[_0x5e2e2d(0x1ed)](_0x5e2e2d(0x1d6));return _0x5e2e2d(0x1f5)+_0x43e1a7+_0x5e2e2d(0x1b3)+_0x1f6ed4+'/'+_0x1d105f[_0x5e2e2d(0x1ee)]+'/'+_0x1d105f['operationType']+_0x5e2e2d(0x1e0)+_0x1d105f[_0x5e2e2d(0x1fa)]+_0x5e2e2d(0x1a2)+_0x2e49e8+_0x5e2e2d(0x1ac);}
1
+ const a26_0x2ef79e=a26_0x4f9c;(function(_0x252a5f,_0x5212ab){const _0x11f73f=a26_0x4f9c,_0x3d05e2=_0x252a5f();while(!![]){try{const _0x20ddb9=-parseInt(_0x11f73f(0x208))/0x1+parseInt(_0x11f73f(0x220))/0x2*(-parseInt(_0x11f73f(0x221))/0x3)+-parseInt(_0x11f73f(0x1ec))/0x4+parseInt(_0x11f73f(0x1e6))/0x5+-parseInt(_0x11f73f(0x1e7))/0x6*(-parseInt(_0x11f73f(0x1ea))/0x7)+parseInt(_0x11f73f(0x1e4))/0x8*(parseInt(_0x11f73f(0x219))/0x9)+-parseInt(_0x11f73f(0x1f3))/0xa*(parseInt(_0x11f73f(0x1eb))/0xb);if(_0x20ddb9===_0x5212ab)break;else _0x3d05e2['push'](_0x3d05e2['shift']());}catch(_0x43c6f5){_0x3d05e2['push'](_0x3d05e2['shift']());}}}(a26_0x8df2,0x9fbed));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';function a26_0x4f9c(_0x57d53e,_0x10a4c1){_0x57d53e=_0x57d53e-0x1c3;const _0x8df262=a26_0x8df2();let _0x4f9cee=_0x8df262[_0x57d53e];return _0x4f9cee;}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';import{assertDatasetSupportsLocalDevelopment,filterDbBackedDatasets}from'../../commands/dataset/capability.js';export const bffCreate={'service':a26_0x2ef79e(0x222),'command':a26_0x2ef79e(0x1d1),'description':a26_0x2ef79e(0x201),'risk':'write','flags':[{'name':'type','type':a26_0x2ef79e(0x1e0),'required':!![],'enum':['COMMON',a26_0x2ef79e(0x200),a26_0x2ef79e(0x207)],'description':a26_0x2ef79e(0x21e)},{'name':a26_0x2ef79e(0x209),'type':a26_0x2ef79e(0x1e0),'required':!![],'description':a26_0x2ef79e(0x1ff)},{'name':a26_0x2ef79e(0x1c7),'type':a26_0x2ef79e(0x1e0),'description':a26_0x2ef79e(0x20f)},{'name':a26_0x2ef79e(0x1fa),'type':a26_0x2ef79e(0x1e0),'description':a26_0x2ef79e(0x1d8)},{'name':'datasetcode','type':a26_0x2ef79e(0x1e0),'description':a26_0x2ef79e(0x1ed)},{'name':a26_0x2ef79e(0x1e8),'type':'string','description':a26_0x2ef79e(0x215)},{'name':a26_0x2ef79e(0x1fd),'type':'string','description':a26_0x2ef79e(0x1e5),'enum':[a26_0x2ef79e(0x1f4),a26_0x2ef79e(0x216)]}],async 'validate'(_0x3aa0d3){const _0x4b82ec=a26_0x2ef79e,_0x3164aa=_0x3aa0d3[_0x4b82ec(0x1df)]('name');if(!isValidBffFunctionName(_0x3164aa))throw CliErrors[_0x4b82ec(0x1f9)](_0x4b82ec(0x1c4)+_0x3164aa+_0x4b82ec(0x1c8));},async 'execute'(_0x489552){const _0x5b74dd=a26_0x2ef79e,_0x33c4ee=loadBffProjectConfig(_0x489552[_0x5b74dd(0x218)]),_0x521b4c=_0x489552['str'](_0x5b74dd(0x1f0)),_0x3305fe=_0x489552['str'](_0x5b74dd(0x209)),_0x395432=_0x489552[_0x5b74dd(0x1df)](_0x5b74dd(0x1c7))||undefined,_0x1c2b66=_0x521b4c===_0x5b74dd(0x207)?await resolveHookOptions(_0x33c4ee,_0x489552):undefined,_0x1180c0=buildFilePath(_0x33c4ee,_0x521b4c,_0x3305fe,_0x1c2b66);if(await fileExists(_0x1180c0))throw CliErrors[_0x5b74dd(0x1f9)](_0x5b74dd(0x205)+_0x1180c0);await mkdir(dirname(_0x1180c0),{'recursive':!![]});const _0x4f1721=generateTemplate(_0x521b4c,_0x3305fe,_0x489552['appCode'],_0x395432,_0x1c2b66);await writeFile(_0x1180c0,_0x4f1721,_0x5b74dd(0x1ef));const _0x464d44={'type':_0x521b4c,'name':_0x3305fe,'path':_0x1180c0};if(_0x395432)_0x464d44['description']=_0x395432;if(_0x1c2b66){if(_0x1c2b66[_0x5b74dd(0x1fa)])_0x464d44[_0x5b74dd(0x1fa)]=_0x1c2b66[_0x5b74dd(0x1fa)];_0x464d44[_0x5b74dd(0x211)]=_0x1c2b66[_0x5b74dd(0x211)],_0x464d44[_0x5b74dd(0x1d3)]=_0x1c2b66['operationType'],_0x464d44[_0x5b74dd(0x21d)]=_0x1c2b66[_0x5b74dd(0x21d)];}return{'ok':!![],'data':_0x464d44,'message':_0x5b74dd(0x1d6)+_0x521b4c+_0x5b74dd(0x1da)+_0x3305fe};}};function a26_0x8df2(){const _0x4a6d8e=['48jDXplI','Trigger\x20node\x20(HOOK\x20only)','3563455GDVCzy','6GXCNta','operation-type','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','8792833uRkvwe','1712381wNVXcn','1000200wHRcQt','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','utf8','type','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Select\x20operation\x20type:','40HZwJzW','before','TODO:\x20add\x20script\x20description','Select\x20dataset:','stdin','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','validation','alias','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','Operation\x20type\x20\x22','function-node','HOOK\x20requires\x20alias/operation/node\x20options.','Function\x20name\x20(valid\x20JS\x20identifier)','ENDPOINT','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','code','Available:\x20','No\x20api.ts\x20found.\x20Run\x20`','File\x20already\x20exists:\x20','Alias\x20\x22','HOOK','675428eGJsjR','name','write','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','No\x20operation\x20types\x20found\x20for\x20dataset\x20','\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','isInteger','Script\x20description','Select\x20trigger\x20node:','datasetCode','No\x20datasets\x20found\x20for\x20this\x20app.','apiDir','join','Operation\x20type\x20(HOOK\x20only)','after','stderr','appCode','668601JKCBHp','includes','close','find','functionNode','Script\x20type','Invalid\x20dataset\x20selection.','12118RLbAmR','105YcfTRL','bff','Available\x20aliases:\x20','Invalid\x20function\x20name\x20\x22','COMMON','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','description','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','\x22.\x20','\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','scriptsRootDir','nonInteractive','trim','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','length','create','No\x20DB\x20table\x20datasets\x20found\x20for\x20this\x20app.\x20METADATA\x20datasets\x20cannot\x20be\x20used\x20for\x20BFF\x20HOOK\x20development\x20because\x20the\x20workflow\x20depends\x20on\x20SQL\x20execution.','operationType','map','question','Created\x20','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','\x0a\x20*\x20[脚本名称]\x20','\x20function:\x20','parseInt','entries','Dataset\x20not\x20found\x20for\x20code\x20\x22','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','str','string','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','keys','tableName'];a26_0x8df2=function(){return _0x4a6d8e;};return a26_0x8df2();}async function resolveHookOptions(_0xea83b5,_0x55225b){const _0x5505f3=a26_0x2ef79e,_0x1a4286=loadAliasMap(_0x55225b['apiDir'],undefined,resolveApiFilePath(_0x55225b['apiDir'],_0x55225b['appCode'])),_0x1184b7=_0x1a4286[_0x5505f3(0x1d0)]>0x0;let _0x516f88,_0x33a3b8,_0x4d68c9;const _0x3a1c02=_0x55225b[_0x5505f3(0x1df)](_0x5505f3(0x1fa)),_0x417c21=_0x55225b[_0x5505f3(0x1df)]('datasetcode');if(_0x3a1c02){const _0x64db2e=resolveAlias(_0x55225b['apiDir'],_0x3a1c02,undefined,resolveApiFilePath(_0x55225b[_0x5505f3(0x213)],_0x55225b[_0x5505f3(0x218)]));if(!_0x64db2e){const _0x59474c=_0x1184b7?_0x5505f3(0x1c3)+_0x1a4286[_0x5505f3(0x1d4)](_0x4abd5d=>_0x4abd5d[_0x5505f3(0x1fa)])['join'](',\x20'):_0x5505f3(0x204)+CLI_BIN_NAME+_0x5505f3(0x1e9);throw CliErrors['validation'](_0x5505f3(0x206)+_0x3a1c02+'\x22\x20not\x20found.\x20'+_0x59474c);}_0x516f88=_0x3a1c02,_0x33a3b8=_0x64db2e;}else{if(_0x417c21){_0x33a3b8=_0x417c21;const _0x27220e=_0x1a4286[_0x5505f3(0x21c)](_0x7d5197=>_0x7d5197[_0x5505f3(0x211)]===_0x417c21);_0x516f88=_0x27220e?.[_0x5505f3(0x1fa)];}else{if(_0x55225b[_0x5505f3(0x1cc)])throw CliErrors[_0x5505f3(0x1f9)](_0x5505f3(0x1e1));else{if(_0x1184b7){const _0x25406e=_0x1a4286[_0x5505f3(0x1d4)](_0x28b59b=>_0x28b59b['alias']+'\x20('+_0x28b59b[_0x5505f3(0x1e3)]+')'),_0xc01860=await promptSelect(_0x5505f3(0x1f6),_0x25406e),_0x4f151f=_0x1a4286[_0xc01860];if(!_0x4f151f)throw CliErrors[_0x5505f3(0x1f9)](_0x5505f3(0x21f));_0x516f88=_0x4f151f[_0x5505f3(0x1fa)],_0x33a3b8=_0x4f151f['datasetCode'];}else{const _0x4a1377=await listDatasets(_0x55225b[_0x5505f3(0x218)]),_0xebab6e=filterDbBackedDatasets(_0x4a1377);if(_0xebab6e[_0x5505f3(0x1d0)]===0x0)throw CliErrors[_0x5505f3(0x1f9)](_0x4a1377[_0x5505f3(0x1d0)]===0x0?_0x5505f3(0x212):_0x5505f3(0x1d2));const _0x18f900=_0xebab6e[_0x5505f3(0x1d4)](_0x454cd3=>_0x454cd3['name']+'\x20('+_0x454cd3[_0x5505f3(0x202)]+')'),_0x225e11=await promptSelect(_0x5505f3(0x1f6),_0x18f900),_0x270c48=_0xebab6e[_0x225e11];if(!_0x270c48)throw CliErrors[_0x5505f3(0x1f9)](_0x5505f3(0x21f));_0x33a3b8=_0x270c48[_0x5505f3(0x202)],_0x516f88=undefined;}}}}const _0x424702=await listDatasets(_0x55225b[_0x5505f3(0x218)]),_0x59122c=_0x424702[_0x5505f3(0x21c)](_0xd46a0=>_0xd46a0[_0x5505f3(0x202)]===_0x33a3b8);if(!_0x59122c)throw CliErrors[_0x5505f3(0x1f9)](_0x5505f3(0x1dd)+_0x33a3b8+_0x5505f3(0x1c9)+(_0x516f88?'The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));assertDatasetSupportsLocalDevelopment(_0x59122c,'BFF\x20HOOK'),_0x4d68c9=_0x59122c['id'];const _0xef0443=_0x516f88??_0x33a3b8,_0x5596f0=await listBffDatasetOperations(_0x55225b[_0x5505f3(0x218)],_0x4d68c9),_0x149789=_0x5596f0?Object[_0x5505f3(0x1e2)](_0x5596f0):[];if(_0x149789[_0x5505f3(0x1d0)]===0x0)throw CliErrors[_0x5505f3(0x1f9)](_0x5505f3(0x20c)+_0xef0443+'.');let _0x117490;const _0x34ca8e=_0x55225b[_0x5505f3(0x1df)]('operation-type');if(_0x34ca8e){if(!_0x149789[_0x5505f3(0x21a)](_0x34ca8e))throw CliErrors[_0x5505f3(0x1f9)](_0x5505f3(0x1fc)+_0x34ca8e+'\x22\x20not\x20found\x20for\x20dataset\x20'+_0xef0443+'.\x20'+(_0x5505f3(0x203)+_0x149789[_0x5505f3(0x214)](',\x20')));_0x117490=_0x34ca8e;}else{if(_0x55225b['nonInteractive'])throw CliErrors[_0x5505f3(0x1f9)](_0x5505f3(0x1d7));const _0x87e456=await promptSelect(_0x5505f3(0x1f2),_0x149789);_0x117490=_0x149789[_0x87e456]??_0x149789[0x0];}let _0x528417=normalizeHookFunctionNode(_0x55225b[_0x5505f3(0x1df)](_0x5505f3(0x1fd)));if(!_0x528417){if(_0x55225b[_0x5505f3(0x1df)](_0x5505f3(0x1fd)))throw CliErrors[_0x5505f3(0x1f9)](_0x5505f3(0x1f8));if(_0x55225b[_0x5505f3(0x1cc)])throw CliErrors[_0x5505f3(0x1f9)](_0x5505f3(0x1cf));const _0x2650e3=await promptSelect(_0x5505f3(0x210),[_0x5505f3(0x1f4),_0x5505f3(0x216)]);_0x528417=[_0x5505f3(0x1f4),_0x5505f3(0x216)][_0x2650e3]??'before';}return{'alias':_0x516f88,'datasetCode':_0x33a3b8,'datasetId':_0x4d68c9,'operationType':_0x117490,'functionNode':_0x528417};}async function promptSelect(_0x5b698b,_0x803bb1){const _0xe06174=a26_0x2ef79e;if(_0x803bb1[_0xe06174(0x1d0)]===0x1)return 0x0;for(const [_0x2b27ac,_0x1c78b4]of _0x803bb1[_0xe06174(0x1dc)]()){process['stderr'][_0xe06174(0x20a)]('\x20\x20'+(_0x2b27ac+0x1)+'.\x20'+_0x1c78b4+'\x0a');}const _0x481521=createInterface({'input':process[_0xe06174(0x1f7)],'output':process[_0xe06174(0x217)]});while(!![]){const _0x34b9ea=await new Promise(_0x5ac7c4=>{const _0x2c719c=_0xe06174;_0x481521[_0x2c719c(0x1d5)](_0x5b698b+'\x20',_0x5ac7c4);}),_0xbaf0eb=Number[_0xe06174(0x1db)](_0x34b9ea['trim'](),0xa);if(Number[_0xe06174(0x20e)](_0xbaf0eb)&&_0xbaf0eb>=0x1&&_0xbaf0eb<=_0x803bb1[_0xe06174(0x1d0)])return _0x481521[_0xe06174(0x21b)](),_0xbaf0eb-0x1;process[_0xe06174(0x217)][_0xe06174(0x20a)](_0xe06174(0x1ce)+_0x803bb1[_0xe06174(0x1d0)]+'.\x0a');}}function buildFilePath(_0x35542e,_0x170491,_0x3983fd,_0x50dfde){const _0x5c6bf6=a26_0x2ef79e;if(_0x170491===_0x5c6bf6(0x207)){if(!_0x50dfde)throw CliErrors['validation'](_0x5c6bf6(0x1fe));const _0x464acd=_0x50dfde[_0x5c6bf6(0x1fa)]??_0x50dfde[_0x5c6bf6(0x211)];return join(_0x35542e[_0x5c6bf6(0x1cb)],'HOOK',_0x464acd,_0x50dfde[_0x5c6bf6(0x1d3)],_0x50dfde[_0x5c6bf6(0x21d)],_0x3983fd+'.js');}return join(_0x35542e[_0x5c6bf6(0x1cb)],_0x170491,_0x3983fd+'.js');}export function generateTemplate(_0xc76b33,_0x40ef28,_0x4ae00c,_0x44c374,_0x26c838){const _0x32099a=a26_0x2ef79e,_0xf1fd8c=_0x44c374?.[_0x32099a(0x1cd)]()||_0x32099a(0x1f5);if(_0xc76b33===_0x32099a(0x1c5))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0xf1fd8c+_0x32099a(0x1d9)+_0x40ef28+_0x32099a(0x1fb)+_0x40ef28+'.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'+_0x40ef28+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0xc76b33==='ENDPOINT')return _0x32099a(0x1f1)+_0xf1fd8c+_0x32099a(0x20b)+_0x4ae00c+'/'+_0x40ef28+_0x32099a(0x20d)+_0x40ef28+_0x32099a(0x1c6);if(!_0x26c838)throw CliErrors[_0x32099a(0x1f9)](_0x32099a(0x1ee));return _0x32099a(0x1de)+_0xf1fd8c+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0x4ae00c+'/'+_0x26c838['datasetCode']+'/'+_0x26c838[_0x32099a(0x1d3)]+'\x0a\x20*\x20[触发节点]\x20'+_0x26c838[_0x32099a(0x21d)]+_0x32099a(0x1ca)+_0x40ef28+_0x32099a(0x1c6);}
@@ -1 +1 @@
1
- function a27_0x4587(_0x1215e5,_0x2f721c){_0x1215e5=_0x1215e5-0x1aa;const _0x37b19b=a27_0x37b1();let _0x458758=_0x37b19b[_0x1215e5];return _0x458758;}const a27_0x2329ad=a27_0x4587;function a27_0x37b1(){const _0x1b7133=['5960244XMcNCB','882501jSUXYM','target','scriptsRoot','trashedTo','projectRoot','keys','1210TXEuCk','\x20\x20-\x20','431890EkmtSl','Would\x20delete\x20','57438CGqubs','toISOString','scriptsRootDir','filter','Local\x20delete\x20not\x20settled\x20for\x20','No\x20lock\x20entry\x20found\x20for\x20\x22','6291171LqUlMV','lockFilePath','4faQCju','Lock\x20scope\x20for\x20app\x20\x22','split','Function\x20not\x20found:\x20','lastSync','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','length','appCode','34842mgHgxa','133AgnXGy','map','join','find','apps','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','\x20(local\x20file\x20moved\x20to\x20trash)','POST','startsWith','high-risk-write','remoteId','13QcGBcU','functions','string','delete','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','209WTuToR','includes','str','123104dGZJMV','<timestamp>','replace','trashDir','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','parse','39dnxSJJ','validation'];a27_0x37b1=function(){return _0x1b7133;};return a27_0x37b1();}(function(_0x498e21,_0x324b8b){const _0x3c7678=a27_0x4587,_0xbe8c2b=_0x498e21();while(!![]){try{const _0x4953d9=-parseInt(_0x3c7678(0x1c5))/0x1*(-parseInt(_0x3c7678(0x1e0))/0x2)+-parseInt(_0x3c7678(0x1d6))/0x3*(-parseInt(_0x3c7678(0x1b1))/0x4)+-parseInt(_0x3c7678(0x1dc))/0x5*(-parseInt(_0x3c7678(0x1b9))/0x6)+parseInt(_0x3c7678(0x1ba))/0x7*(parseInt(_0x3c7678(0x1cd))/0x8)+-parseInt(_0x3c7678(0x1af))/0x9+-parseInt(_0x3c7678(0x1de))/0xa*(-parseInt(_0x3c7678(0x1ca))/0xb)+parseInt(_0x3c7678(0x1d5))/0xc*(-parseInt(_0x3c7678(0x1d3))/0xd);if(_0x4953d9===_0x324b8b)break;else _0xbe8c2b['push'](_0xbe8c2b['shift']());}catch(_0x368193){_0xbe8c2b['push'](_0xbe8c2b['shift']());}}}(a27_0x37b1,0xf3553));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':'delete','description':a27_0x2329ad(0x1d1),'risk':a27_0x2329ad(0x1c3),'flags':[{'name':a27_0x2329ad(0x1d7),'type':a27_0x2329ad(0x1c7),'required':!![],'description':a27_0x2329ad(0x1bf)}],async 'validate'(_0x18e96f){const _0x4ae933=a27_0x2329ad,_0x207bd8=loadBffProjectConfig(_0x18e96f[_0x4ae933(0x1b8)]),_0x2bc975=await readBffLockFile(_0x207bd8[_0x4ae933(0x1b0)]);if(!_0x2bc975)throw CliErrors[_0x4ae933(0x1d4)](_0x4ae933(0x1b6));},async 'dryRun'(_0x1c83bc){const _0x436699=a27_0x2329ad,_0xb40721=loadBffProjectConfig(_0x1c83bc[_0x436699(0x1b8)]),_0x32c637=await readBffLockFile(_0xb40721[_0x436699(0x1b0)]);if(!_0x32c637)throw CliErrors[_0x436699(0x1d4)]('BFF\x20lock\x20file\x20not\x20found.');const {appLock:_0x340f1a}=ensureLockScope(_0x32c637,_0x1c83bc[_0x436699(0x1b8)],_0xb40721['scriptsRoot'],_0x436699(0x1c8)),_0x1ef70a=_0x1c83bc[_0x436699(0x1cc)](_0x436699(0x1d7)),_0x195d66=Object[_0x436699(0x1db)](_0x340f1a[_0x436699(0x1c6)]),_0x5c2910=resolveDeleteTarget(_0x1ef70a,_0x195d66),_0x503169=_0x340f1a['functions'][_0x5c2910];if(!_0x503169)throw CliErrors[_0x436699(0x1d4)](_0x436699(0x1ae)+_0x5c2910+'\x22.');const _0x38a04c=resolveLocalFilePathFromLockKey(_0xb40721,_0x5c2910),_0x2b4216=relative(_0xb40721['projectRoot'],_0x38a04c),_0xbf5f03=join(_0xb40721[_0x436699(0x1d0)],_0x436699(0x1ce),_0x2b4216);return{'method':_0x436699(0x1c1),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x1c83bc[_0x436699(0x1b8)],'target':_0x5c2910,'remoteId':_0x503169[_0x436699(0x1c4)],'localFilePath':_0x38a04c,'trashedPath':_0xbf5f03},'description':_0x436699(0x1df)+_0x5c2910+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'};},async 'execute'(_0x54a1b9){const _0x20ab08=a27_0x2329ad,_0x54f00e=loadBffProjectConfig(_0x54a1b9[_0x20ab08(0x1b8)]),_0x399400=await readBffLockFile(_0x54f00e[_0x20ab08(0x1b0)]);if(!_0x399400)throw CliErrors[_0x20ab08(0x1d4)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x307451,appLock:_0x2a049a}=ensureLockScope(_0x399400,_0x54a1b9['appCode'],_0x54f00e[_0x20ab08(0x1d8)],'delete'),_0x1bdf0b=JSON[_0x20ab08(0x1d2)](JSON['stringify'](_0x307451)),_0x4c1999=_0x1bdf0b[_0x20ab08(0x1be)][_0x54a1b9[_0x20ab08(0x1b8)]];if(!_0x4c1999)throw new Error(_0x20ab08(0x1b2)+_0x54a1b9[_0x20ab08(0x1b8)]+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x1e8b59=_0x54a1b9[_0x20ab08(0x1cc)]('target'),_0x1838eb=Object['keys'](_0x4c1999[_0x20ab08(0x1c6)]),_0x3ef7ae=resolveDeleteTarget(_0x1e8b59,_0x1838eb),_0x4edb01=_0x4c1999[_0x20ab08(0x1c6)][_0x3ef7ae];if(!_0x4edb01)throw CliErrors[_0x20ab08(0x1d4)](_0x20ab08(0x1ae)+_0x3ef7ae+'\x22.');await deleteBffScript(_0x4edb01[_0x20ab08(0x1c4)]),delete _0x4c1999[_0x20ab08(0x1c6)][_0x3ef7ae],_0x4c1999[_0x20ab08(0x1b5)]=new Date()[_0x20ab08(0x1aa)](),await writeBffLockFile(_0x54f00e['lockFilePath'],_0x1bdf0b);const _0x245621=resolveLocalFilePathFromLockKey(_0x54f00e,_0x3ef7ae);let _0x148665;await fileExists(_0x245621)&&(_0x148665=await moveToTrash(_0x54f00e[_0x20ab08(0x1da)],_0x54f00e['trashDir'],_0x245621),await cleanupEmptyDirectories(dirname(_0x245621),_0x54f00e[_0x20ab08(0x1ab)]));await waitForDeleteSettlement(_0x54f00e[_0x20ab08(0x1b0)],_0x54a1b9[_0x20ab08(0x1b8)],_0x3ef7ae,_0x245621),await sleep(0x96);const _0x9bce66={'deleted':_0x3ef7ae,'remoteId':_0x4edb01[_0x20ab08(0x1c4)]};if(_0x148665)_0x9bce66[_0x20ab08(0x1d9)]=_0x148665;return{'ok':!![],'data':_0x9bce66,'message':'Deleted\x20'+_0x3ef7ae+(_0x148665?_0x20ab08(0x1c0):'')};}};function resolveDeleteTarget(_0x204ee3,_0x62bd4a){const _0x5396ee=a27_0x2329ad;if(_0x204ee3[_0x5396ee(0x1cb)]('/')){const _0x6605db=_0x62bd4a[_0x5396ee(0x1bd)](_0x2b3677=>_0x2b3677===_0x204ee3);if(!_0x6605db)throw CliErrors[_0x5396ee(0x1d4)]('Function\x20not\x20found:\x20'+_0x204ee3);return _0x6605db;}const _0x45e878=_0x62bd4a[_0x5396ee(0x1ac)](_0x210645=>_0x210645[_0x5396ee(0x1b3)]('/')['at'](-0x1)===_0x204ee3);if(_0x45e878[_0x5396ee(0x1b7)]===0x0)throw CliErrors[_0x5396ee(0x1d4)](_0x5396ee(0x1b4)+_0x204ee3);if(_0x45e878[_0x5396ee(0x1b7)]>0x1)throw CliErrors[_0x5396ee(0x1d4)]('Multiple\x20functions\x20match\x20\x22'+_0x204ee3+_0x5396ee(0x1c9)+_0x45e878[_0x5396ee(0x1bb)](_0xb96e10=>_0x5396ee(0x1dd)+_0xb96e10)[_0x5396ee(0x1bc)]('\x0a'));return _0x45e878[0x0];}async function moveToTrash(_0x3937e4,_0x3b590d,_0x48625d){const _0x5f3db4=a27_0x2329ad,_0x3f0971=new Date()[_0x5f3db4(0x1aa)]()[_0x5f3db4(0x1cf)](/[:.]/g,'-'),_0x14bce5=relative(_0x3937e4,_0x48625d),_0x283c96=join(_0x3b590d,_0x3f0971,_0x14bce5);return await mkdir(dirname(_0x283c96),{'recursive':!![]}),await rename(_0x48625d,_0x283c96),_0x283c96;}async function cleanupEmptyDirectories(_0x389136,_0x402754){const _0x24b636=a27_0x2329ad;let _0x26d7d0=resolve(_0x389136);const _0x50c0eb=resolve(_0x402754);while(_0x26d7d0[_0x24b636(0x1c2)](''+_0x50c0eb+sep)||_0x26d7d0===_0x50c0eb){if(_0x26d7d0===_0x50c0eb)return;try{const _0x405f00=await readdir(_0x26d7d0);if(_0x405f00['length']>0x0)return;await rmdir(_0x26d7d0);}catch{return;}_0x26d7d0=dirname(_0x26d7d0);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x581a85,_0xaeeb6f,_0x413cb3,_0x56eef6){const _0x3e7b30=a27_0x2329ad;for(let _0x340c06=0x0;_0x340c06<DELETE_SETTLE_RETRY_COUNT;_0x340c06+=0x1){const _0x21e382=await readBffLockFile(_0x581a85),_0x36b22d=!!_0x21e382?.[_0x3e7b30(0x1be)]?.[_0xaeeb6f]?.[_0x3e7b30(0x1c6)]?.[_0x413cb3],_0x4df89b=await fileExists(_0x56eef6);if(!_0x36b22d&&!_0x4df89b)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x3e7b30(0x1ad)+_0x413cb3+'.');}
1
+ const a27_0x7d313b=a27_0x267d;(function(_0x5c1ca9,_0x456644){const _0x3706c0=a27_0x267d,_0x5c9160=_0x5c1ca9();while(!![]){try{const _0x2d7acc=parseInt(_0x3706c0(0x171))/0x1*(-parseInt(_0x3706c0(0x18a))/0x2)+parseInt(_0x3706c0(0x189))/0x3+-parseInt(_0x3706c0(0x188))/0x4*(parseInt(_0x3706c0(0x174))/0x5)+-parseInt(_0x3706c0(0x169))/0x6+-parseInt(_0x3706c0(0x167))/0x7*(parseInt(_0x3706c0(0x182))/0x8)+-parseInt(_0x3706c0(0x17c))/0x9+parseInt(_0x3706c0(0x184))/0xa*(parseInt(_0x3706c0(0x17a))/0xb);if(_0x2d7acc===_0x456644)break;else _0x5c9160['push'](_0x5c9160['shift']());}catch(_0xc8eca0){_0x5c9160['push'](_0x5c9160['shift']());}}}(a27_0x327c,0xd6b45));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';function a27_0x267d(_0x48a43b,_0x6b5012){_0x48a43b=_0x48a43b-0x160;const _0x327cc7=a27_0x327c();let _0x267d30=_0x327cc7[_0x48a43b];return _0x267d30;}import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x7d313b(0x18f),'command':'delete','description':a27_0x7d313b(0x179),'risk':a27_0x7d313b(0x176),'flags':[{'name':a27_0x7d313b(0x181),'type':a27_0x7d313b(0x16d),'required':!![],'description':'Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name'}],async 'validate'(_0x4801a2){const _0x2424d4=a27_0x7d313b,_0x2e5493=loadBffProjectConfig(_0x4801a2[_0x2424d4(0x185)]),_0x330b0e=await readBffLockFile(_0x2e5493['lockFilePath']);if(!_0x330b0e)throw CliErrors['validation'](_0x2424d4(0x191));},async 'dryRun'(_0x53a206){const _0x347e7b=a27_0x7d313b,_0x2bc312=loadBffProjectConfig(_0x53a206[_0x347e7b(0x185)]),_0x51db95=await readBffLockFile(_0x2bc312[_0x347e7b(0x161)]);if(!_0x51db95)throw CliErrors[_0x347e7b(0x16e)](_0x347e7b(0x16f));const {appLock:_0x5d4dbb}=ensureLockScope(_0x51db95,_0x53a206['appCode'],_0x2bc312[_0x347e7b(0x183)],'delete'),_0x2f05bc=_0x53a206[_0x347e7b(0x17e)]('target'),_0x4d7b78=Object['keys'](_0x5d4dbb[_0x347e7b(0x168)]),_0x123540=resolveDeleteTarget(_0x2f05bc,_0x4d7b78),_0x508048=_0x5d4dbb[_0x347e7b(0x168)][_0x123540];if(!_0x508048)throw CliErrors['validation'](_0x347e7b(0x18b)+_0x123540+'\x22.');const _0x441194=resolveLocalFilePathFromLockKey(_0x2bc312,_0x123540),_0x200d03=relative(_0x2bc312[_0x347e7b(0x160)],_0x441194),_0x133396=join(_0x2bc312[_0x347e7b(0x164)],_0x347e7b(0x180),_0x200d03);return{'method':'POST','url':_0x347e7b(0x193),'body':{'appCode':_0x53a206[_0x347e7b(0x185)],'target':_0x123540,'remoteId':_0x508048['remoteId'],'localFilePath':_0x441194,'trashedPath':_0x133396},'description':_0x347e7b(0x190)+_0x123540+_0x347e7b(0x170)};},async 'execute'(_0x1881ad){const _0x4e0531=a27_0x7d313b,_0x3988c4=loadBffProjectConfig(_0x1881ad[_0x4e0531(0x185)]),_0x26c22c=await readBffLockFile(_0x3988c4['lockFilePath']);if(!_0x26c22c)throw CliErrors['validation'](_0x4e0531(0x16f));const {lockData:_0xfa6fe1,appLock:_0x161ee0}=ensureLockScope(_0x26c22c,_0x1881ad[_0x4e0531(0x185)],_0x3988c4[_0x4e0531(0x183)],_0x4e0531(0x194)),_0xae2e8b=JSON['parse'](JSON[_0x4e0531(0x172)](_0xfa6fe1)),_0x556e23=_0xae2e8b[_0x4e0531(0x177)][_0x1881ad[_0x4e0531(0x185)]];if(!_0x556e23)throw new Error(_0x4e0531(0x16c)+_0x1881ad[_0x4e0531(0x185)]+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x1aa52e=_0x1881ad[_0x4e0531(0x17e)](_0x4e0531(0x181)),_0x568e20=Object[_0x4e0531(0x186)](_0x556e23[_0x4e0531(0x168)]),_0x2828d1=resolveDeleteTarget(_0x1aa52e,_0x568e20),_0x437e55=_0x556e23['functions'][_0x2828d1];if(!_0x437e55)throw CliErrors[_0x4e0531(0x16e)](_0x4e0531(0x18b)+_0x2828d1+'\x22.');await deleteBffScript(_0x437e55[_0x4e0531(0x18d)]),delete _0x556e23[_0x4e0531(0x168)][_0x2828d1],_0x556e23[_0x4e0531(0x16a)]=new Date()[_0x4e0531(0x195)](),await writeBffLockFile(_0x3988c4[_0x4e0531(0x161)],_0xae2e8b);const _0x35ed75=resolveLocalFilePathFromLockKey(_0x3988c4,_0x2828d1);let _0x2cf557;await fileExists(_0x35ed75)&&(_0x2cf557=await moveToTrash(_0x3988c4[_0x4e0531(0x160)],_0x3988c4['trashDir'],_0x35ed75),await cleanupEmptyDirectories(dirname(_0x35ed75),_0x3988c4[_0x4e0531(0x16b)]));await waitForDeleteSettlement(_0x3988c4['lockFilePath'],_0x1881ad['appCode'],_0x2828d1,_0x35ed75),await sleep(0x96);const _0x65d135={'deleted':_0x2828d1,'remoteId':_0x437e55[_0x4e0531(0x18d)]};if(_0x2cf557)_0x65d135[_0x4e0531(0x18e)]=_0x2cf557;return{'ok':!![],'data':_0x65d135,'message':_0x4e0531(0x17b)+_0x2828d1+(_0x2cf557?_0x4e0531(0x187):'')};}};function resolveDeleteTarget(_0x4385f2,_0x44a85d){const _0x319e3a=a27_0x7d313b;if(_0x4385f2[_0x319e3a(0x17f)]('/')){const _0xb62b91=_0x44a85d[_0x319e3a(0x178)](_0x38eed6=>_0x38eed6===_0x4385f2);if(!_0xb62b91)throw CliErrors['validation']('Function\x20not\x20found:\x20'+_0x4385f2);return _0xb62b91;}const _0x479748=_0x44a85d['filter'](_0x1eca5e=>_0x1eca5e[_0x319e3a(0x165)]('/')['at'](-0x1)===_0x4385f2);if(_0x479748[_0x319e3a(0x162)]===0x0)throw CliErrors['validation'](_0x319e3a(0x166)+_0x4385f2);if(_0x479748[_0x319e3a(0x162)]>0x1)throw CliErrors[_0x319e3a(0x16e)](_0x319e3a(0x192)+_0x4385f2+'\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'+_0x479748[_0x319e3a(0x175)](_0x2a5a64=>_0x319e3a(0x18c)+_0x2a5a64)['join']('\x0a'));return _0x479748[0x0];}async function moveToTrash(_0xc44d92,_0x31f4cb,_0x1630d5){const _0x176976=a27_0x7d313b,_0x507fa=new Date()[_0x176976(0x195)]()[_0x176976(0x163)](/[:.]/g,'-'),_0x3e30cf=relative(_0xc44d92,_0x1630d5),_0x247da3=join(_0x31f4cb,_0x507fa,_0x3e30cf);return await mkdir(dirname(_0x247da3),{'recursive':!![]}),await rename(_0x1630d5,_0x247da3),_0x247da3;}async function cleanupEmptyDirectories(_0x2a1902,_0x55c004){const _0x24fb19=a27_0x7d313b;let _0x93f402=resolve(_0x2a1902);const _0x1b7260=resolve(_0x55c004);while(_0x93f402[_0x24fb19(0x17d)](''+_0x1b7260+sep)||_0x93f402===_0x1b7260){if(_0x93f402===_0x1b7260)return;try{const _0x2f98c8=await readdir(_0x93f402);if(_0x2f98c8['length']>0x0)return;await rmdir(_0x93f402);}catch{return;}_0x93f402=dirname(_0x93f402);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;function a27_0x327c(){const _0x1095ae=['bff','Would\x20delete\x20','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','Multiple\x20functions\x20match\x20\x22','/api/management/library/scripts/delete','delete','toISOString','projectRoot','lockFilePath','length','replace','trashDir','split','Function\x20not\x20found:\x20','175JrHmFw','functions','3374766TZqZZs','lastSync','scriptsRootDir','Lock\x20scope\x20for\x20app\x20\x22','string','validation','BFF\x20lock\x20file\x20not\x20found.','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','3pTuaia','stringify','Local\x20delete\x20not\x20settled\x20for\x20','206765msEoYP','map','high-risk-write','apps','find','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','2453dorGNY','Deleted\x20','6183279lDFqVG','startsWith','str','includes','<timestamp>','target','293392lfdRDU','scriptsRoot','155510FMKgHf','appCode','keys','\x20(local\x20file\x20moved\x20to\x20trash)','4deqxuE','4012152uzpuXr','1145422OKvQsp','No\x20lock\x20entry\x20found\x20for\x20\x22','\x20\x20-\x20','remoteId','trashedTo'];a27_0x327c=function(){return _0x1095ae;};return a27_0x327c();}async function waitForDeleteSettlement(_0x5ed7d8,_0x346c75,_0x368067,_0x4a028d){const _0x420c05=a27_0x7d313b;for(let _0x5b9016=0x0;_0x5b9016<DELETE_SETTLE_RETRY_COUNT;_0x5b9016+=0x1){const _0x29d870=await readBffLockFile(_0x5ed7d8),_0x15c22b=!!_0x29d870?.[_0x420c05(0x177)]?.[_0x346c75]?.['functions']?.[_0x368067],_0x425c9b=await fileExists(_0x4a028d);if(!_0x15c22b&&!_0x425c9b)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x420c05(0x173)+_0x368067+'.');}
@@ -1 +1 @@
1
- const a28_0x645181=a28_0x1a04;function a28_0x1a04(_0xc09a7a,_0x4188d6){_0xc09a7a=_0xc09a7a-0x136;const _0x4ff30b=a28_0x4ff3();let _0x1a0444=_0x4ff30b[_0xc09a7a];return _0x1a0444;}(function(_0x1132cb,_0x430451){const _0x5870ab=a28_0x1a04,_0x26f3e3=_0x1132cb();while(!![]){try{const _0x2d25d6=parseInt(_0x5870ab(0x13d))/0x1+parseInt(_0x5870ab(0x13a))/0x2*(-parseInt(_0x5870ab(0x13e))/0x3)+parseInt(_0x5870ab(0x13f))/0x4*(-parseInt(_0x5870ab(0x13c))/0x5)+parseInt(_0x5870ab(0x145))/0x6+parseInt(_0x5870ab(0x14c))/0x7+parseInt(_0x5870ab(0x138))/0x8*(parseInt(_0x5870ab(0x13b))/0x9)+parseInt(_0x5870ab(0x150))/0xa*(-parseInt(_0x5870ab(0x149))/0xb);if(_0x2d25d6===_0x430451)break;else _0x26f3e3['push'](_0x26f3e3['shift']());}catch(_0x426c8b){_0x26f3e3['push'](_0x26f3e3['shift']());}}}(a28_0x4ff3,0x22785));import{getBffScriptInfo}from'../../core/api-client.js';function a28_0x4ff3(){const _0x2c4047=['num','scriptType','1087282IObvYX','Get\x20BFF\x20script\x20details\x20by\x20ID','detail','createdTime','55610UHXLGe','scriptContent','appCode','2232EzFgEc','Script\x20ID','90526uKuSIx','2043tnznDF','175IdDRLb','99438MtUOfs','3oLpVHM','21548CIwlIj','bff','Return\x20full\x20raw\x20script\x20object','description','verbose','updatedTime','1108818BVQPLi','bool','(none)','read','253hOEixH'];a28_0x4ff3=function(){return _0x2c4047;};return a28_0x4ff3();}export const bffDetail={'service':a28_0x645181(0x140),'command':a28_0x645181(0x14e),'description':a28_0x645181(0x14d),'risk':a28_0x645181(0x148),'flags':[{'name':'id','type':'number','required':!![],'description':a28_0x645181(0x139)},{'name':a28_0x645181(0x143),'type':'boolean','description':a28_0x645181(0x141)}],async 'execute'(_0x28d0ab){const _0x24ed57=a28_0x645181,_0x9d21d6=await getBffScriptInfo(_0x28d0ab[_0x24ed57(0x14a)]('id')),_0x1e1b58=_0x28d0ab[_0x24ed57(0x146)](_0x24ed57(0x143));if(_0x1e1b58)return{'ok':!![],'data':_0x9d21d6};return{'ok':!![],'data':{'id':_0x9d21d6['id'],'appCode':_0x9d21d6[_0x24ed57(0x137)],'scriptType':_0x9d21d6[_0x24ed57(0x14b)],'description':_0x9d21d6[_0x24ed57(0x142)]||_0x24ed57(0x147),'createdTime':_0x9d21d6[_0x24ed57(0x14f)]??'','updatedTime':_0x9d21d6[_0x24ed57(0x144)]??'','scriptContent':_0x9d21d6[_0x24ed57(0x136)]??''}};}};
1
+ const a28_0x2a80f3=a28_0x2f6c;(function(_0x4fe5fe,_0x3a5f4a){const _0x41f895=a28_0x2f6c,_0x582ef6=_0x4fe5fe();while(!![]){try{const _0x29ff68=parseInt(_0x41f895(0x1ad))/0x1*(-parseInt(_0x41f895(0x1aa))/0x2)+-parseInt(_0x41f895(0x1a2))/0x3*(parseInt(_0x41f895(0x19e))/0x4)+-parseInt(_0x41f895(0x19f))/0x5+parseInt(_0x41f895(0x1a5))/0x6*(parseInt(_0x41f895(0x1b3))/0x7)+parseInt(_0x41f895(0x1a0))/0x8*(parseInt(_0x41f895(0x1b2))/0x9)+-parseInt(_0x41f895(0x1ab))/0xa+parseInt(_0x41f895(0x1b6))/0xb;if(_0x29ff68===_0x3a5f4a)break;else _0x582ef6['push'](_0x582ef6['shift']());}catch(_0x50214d){_0x582ef6['push'](_0x582ef6['shift']());}}}(a28_0x1c04,0xa1af7));function a28_0x2f6c(_0xa5ba9f,_0x268bf0){_0xa5ba9f=_0xa5ba9f-0x19e;const _0x1c0427=a28_0x1c04();let _0x2f6c0b=_0x1c0427[_0xa5ba9f];return _0x2f6c0b;}import{getBffScriptInfo}from'../../core/api-client.js';function a28_0x1c04(){const _0x2a068e=['Get\x20BFF\x20script\x20details\x20by\x20ID','appCode','8UwwnDS','6067470cUkddo','boolean','205837znjWDd','createdTime','Script\x20ID','updatedTime','bool','18225wecsRX','7xgABdx','read','verbose','14996080guTPyt','scriptType','scriptContent','32924uYwfuI','388210xfDCXO','5224OOKhsQ','detail','342EJlyQK','description','Return\x20full\x20raw\x20script\x20object','2536374ptqtoG','number','(none)'];a28_0x1c04=function(){return _0x2a068e;};return a28_0x1c04();}export const bffDetail={'service':'bff','command':a28_0x2a80f3(0x1a1),'description':a28_0x2a80f3(0x1a8),'risk':a28_0x2a80f3(0x1b4),'flags':[{'name':'id','type':a28_0x2a80f3(0x1a6),'required':!![],'description':a28_0x2a80f3(0x1af)},{'name':'verbose','type':a28_0x2a80f3(0x1ac),'description':a28_0x2a80f3(0x1a4)}],async 'execute'(_0x89d9f9){const _0x42939e=a28_0x2a80f3,_0x55958d=await getBffScriptInfo(_0x89d9f9['num']('id')),_0x5cd24f=_0x89d9f9[_0x42939e(0x1b1)](_0x42939e(0x1b5));if(_0x5cd24f)return{'ok':!![],'data':_0x55958d};return{'ok':!![],'data':{'id':_0x55958d['id'],'appCode':_0x55958d[_0x42939e(0x1a9)],'scriptType':_0x55958d[_0x42939e(0x1b7)],'description':_0x55958d[_0x42939e(0x1a3)]||_0x42939e(0x1a7),'createdTime':_0x55958d[_0x42939e(0x1ae)]??'','updatedTime':_0x55958d[_0x42939e(0x1b0)]??'','scriptContent':_0x55958d[_0x42939e(0x1b8)]??''}};}};
@@ -1 +1 @@
1
- (function(_0x1cae1e,_0x30c1d5){const _0xcf8300=a29_0x1bbf,_0x23ff9a=_0x1cae1e();while(!![]){try{const _0x44d0e9=-parseInt(_0xcf8300(0x1d8))/0x1+-parseInt(_0xcf8300(0x1d4))/0x2*(-parseInt(_0xcf8300(0x1dc))/0x3)+parseInt(_0xcf8300(0x1db))/0x4+parseInt(_0xcf8300(0x1d9))/0x5*(parseInt(_0xcf8300(0x1dd))/0x6)+-parseInt(_0xcf8300(0x1da))/0x7*(parseInt(_0xcf8300(0x1d3))/0x8)+-parseInt(_0xcf8300(0x1d5))/0x9*(-parseInt(_0xcf8300(0x1d7))/0xa)+parseInt(_0xcf8300(0x1d6))/0xb;if(_0x44d0e9===_0x30c1d5)break;else _0x23ff9a['push'](_0x23ff9a['shift']());}catch(_0x28df07){_0x23ff9a['push'](_0x23ff9a['shift']());}}}(a29_0x4ac0,0xe9e1d));import{bffList}from'../../commands/bff/list.js';function a29_0x1bbf(_0x155888,_0x1e7372){_0x155888=_0x155888-0x1d3;const _0x4ac0de=a29_0x4ac0();let _0x1bbfbf=_0x4ac0de[_0x155888];return _0x1bbfbf;}import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';function a29_0x4ac0(){const _0xa32851=['5517474sHuiYH','2152smTsDF','5342HqoHLY','2851731DbiyGh','8551345yzPDuu','10ssCnbl','986194DXvYbl','5NmweFx','26404RqyEKD','1493664vBiNCc','642zqmqjF'];a29_0x4ac0=function(){return _0xa32851;};return a29_0x4ac0();}import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x24cd81,_0x2eca0f){const _0x497926=a29_0x242e,_0x2615d5=_0x24cd81();while(!![]){try{const _0x361112=parseInt(_0x497926(0x94))/0x1+parseInt(_0x497926(0x95))/0x2+-parseInt(_0x497926(0x90))/0x3+-parseInt(_0x497926(0x8f))/0x4*(parseInt(_0x497926(0x8e))/0x5)+-parseInt(_0x497926(0x91))/0x6*(parseInt(_0x497926(0x92))/0x7)+parseInt(_0x497926(0x93))/0x8*(parseInt(_0x497926(0x8d))/0x9)+parseInt(_0x497926(0x96))/0xa;if(_0x361112===_0x2eca0f)break;else _0x2615d5['push'](_0x2615d5['shift']());}catch(_0x5e7922){_0x2615d5['push'](_0x2615d5['shift']());}}}(a29_0x991b,0x88ec0));import{bffList}from'../../commands/bff/list.js';function a29_0x242e(_0x1eb871,_0x35d12a){_0x1eb871=_0x1eb871-0x8d;const _0x991b43=a29_0x991b();let _0x242e74=_0x991b43[_0x1eb871];return _0x242e74;}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';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];function a29_0x991b(){const _0xbeab60=['42SXpNiv','79289OuoRyn','2560GOAuXh','1078878BWhWmY','666154cuhkmP','1397690cJHOXN','1179snplmK','31145GwLlLW','164wWdHrN','2094402KYbOxA'];a29_0x991b=function(){return _0xbeab60;};return a29_0x991b();}
@@ -1 +1 @@
1
- const a30_0x3c154b=a30_0x2af7;(function(_0x157691,_0x5557f3){const _0x1ca998=a30_0x2af7,_0x38567c=_0x157691();while(!![]){try{const _0x314b77=parseInt(_0x1ca998(0x16d))/0x1*(-parseInt(_0x1ca998(0x167))/0x2)+parseInt(_0x1ca998(0x172))/0x3*(-parseInt(_0x1ca998(0x180))/0x4)+-parseInt(_0x1ca998(0x165))/0x5*(parseInt(_0x1ca998(0x170))/0x6)+-parseInt(_0x1ca998(0x16e))/0x7*(-parseInt(_0x1ca998(0x17a))/0x8)+parseInt(_0x1ca998(0x17d))/0x9*(-parseInt(_0x1ca998(0x177))/0xa)+-parseInt(_0x1ca998(0x17f))/0xb+-parseInt(_0x1ca998(0x16c))/0xc*(-parseInt(_0x1ca998(0x17b))/0xd);if(_0x314b77===_0x5557f3)break;else _0x38567c['push'](_0x38567c['shift']());}catch(_0x548790){_0x38567c['push'](_0x38567c['shift']());}}}(a30_0x40ba,0xc1f8b));function a30_0x2af7(_0x2315eb,_0x2d7a50){_0x2315eb=_0x2315eb-0x165;const _0x40ba74=a30_0x40ba();let _0x2af7c4=_0x40ba74[_0x2315eb];return _0x2af7c4;}import{listBffScripts}from'../../core/api-client.js';function a30_0x40ba(){const _0x414a30=['name','length','read','10TmYjXI','functionName','verbose','328Rqhepx','122486XzNvpf','ENDPOINT','12896649ofRDTh','str','7034907giiOwP','61324yUzXRk','COMMON','4695445fkDkPe','string','6jvVsyr','Return\x20full\x20script\x20objects','Script\x20type\x20filter','type','List\x20BFF\x20scripts','7812HCNbFz','520651LESzme','83909JreErW','map','6HfUsHE','appCode','246OAQeIG','boolean'];a30_0x40ba=function(){return _0x414a30;};return a30_0x40ba();}export const bffList={'service':'bff','command':'list','description':a30_0x3c154b(0x16b),'risk':a30_0x3c154b(0x176),'flags':[{'name':'type','type':a30_0x3c154b(0x166),'description':a30_0x3c154b(0x169),'default':a30_0x3c154b(0x17c),'enum':[a30_0x3c154b(0x17c),a30_0x3c154b(0x181)]},{'name':a30_0x3c154b(0x174),'type':a30_0x3c154b(0x166),'description':'Filter\x20by\x20script\x20name'},{'name':a30_0x3c154b(0x179),'type':a30_0x3c154b(0x173),'description':a30_0x3c154b(0x168)}],async 'execute'(_0x4c8784){const _0x1262e4=a30_0x3c154b,_0x3be556=await listBffScripts(_0x4c8784[_0x1262e4(0x171)],_0x4c8784[_0x1262e4(0x17e)](_0x1262e4(0x16a)),{'scriptName':_0x4c8784[_0x1262e4(0x17e)]('name')||undefined}),_0xdd31f5=_0x4c8784['bool'](_0x1262e4(0x179));return{'ok':!![],'data':_0xdd31f5?_0x3be556:_0x3be556[_0x1262e4(0x16f)](_0x1e288b=>({'id':_0x1e288b['id'],'functionName':_0x1e288b[_0x1262e4(0x178)]??'','description':_0x1e288b['description']||'(unnamed)','scriptType':_0x1e288b['scriptType']})),'message':_0x3be556[_0x1262e4(0x175)]===0x0?'No\x20BFF\x20scripts\x20found.':undefined};}};
1
+ const a30_0x1f3460=a30_0x5e40;(function(_0x4627af,_0xc6151e){const _0x2fecaa=a30_0x5e40,_0x5532a2=_0x4627af();while(!![]){try{const _0x14c132=-parseInt(_0x2fecaa(0x16a))/0x1+parseInt(_0x2fecaa(0x15a))/0x2+parseInt(_0x2fecaa(0x168))/0x3*(-parseInt(_0x2fecaa(0x157))/0x4)+parseInt(_0x2fecaa(0x156))/0x5+-parseInt(_0x2fecaa(0x15f))/0x6+-parseInt(_0x2fecaa(0x154))/0x7+parseInt(_0x2fecaa(0x161))/0x8*(parseInt(_0x2fecaa(0x164))/0x9);if(_0x14c132===_0xc6151e)break;else _0x5532a2['push'](_0x5532a2['shift']());}catch(_0x2dc4a6){_0x5532a2['push'](_0x5532a2['shift']());}}}(a30_0x1841,0x615d0));import{listBffScripts}from'../../core/api-client.js';function a30_0x5e40(_0x33f449,_0x2db475){_0x33f449=_0x33f449-0x14f;const _0x18411e=a30_0x1841();let _0x5e407d=_0x18411e[_0x33f449];return _0x5e407d;}export const bffList={'service':a30_0x1f3460(0x152),'command':a30_0x1f3460(0x162),'description':'List\x20BFF\x20scripts','risk':a30_0x1f3460(0x151),'flags':[{'name':a30_0x1f3460(0x155),'type':'string','description':a30_0x1f3460(0x150),'default':a30_0x1f3460(0x14f),'enum':[a30_0x1f3460(0x14f),a30_0x1f3460(0x166)]},{'name':'name','type':a30_0x1f3460(0x160),'description':'Filter\x20by\x20script\x20name'},{'name':a30_0x1f3460(0x15e),'type':a30_0x1f3460(0x15d),'description':a30_0x1f3460(0x165)}],async 'execute'(_0x354785){const _0x3881f8=a30_0x1f3460,_0x47c9df=await listBffScripts(_0x354785[_0x3881f8(0x153)],_0x354785[_0x3881f8(0x169)](_0x3881f8(0x155)),{'scriptName':_0x354785[_0x3881f8(0x169)](_0x3881f8(0x167))||undefined}),_0x11714e=_0x354785[_0x3881f8(0x158)]('verbose');return{'ok':!![],'data':_0x11714e?_0x47c9df:_0x47c9df[_0x3881f8(0x163)](_0x57cbc7=>({'id':_0x57cbc7['id'],'functionName':_0x57cbc7['functionName']??'','description':_0x57cbc7[_0x3881f8(0x15b)]||_0x3881f8(0x159),'scriptType':_0x57cbc7['scriptType']})),'message':_0x47c9df['length']===0x0?_0x3881f8(0x15c):undefined};}};function a30_0x1841(){const _0x192a68=['read','bff','appCode','4309025uDtFAE','type','2571280IJVaut','132bdSFWH','bool','(unnamed)','1110120lMwONU','description','No\x20BFF\x20scripts\x20found.','boolean','verbose','1509810BDbEBd','string','6114592FcKYGO','list','map','9QrTgoi','Return\x20full\x20script\x20objects','COMMON','name','31422tkQujY','str','221988nNumhb','ENDPOINT','Script\x20type\x20filter'];a30_0x1841=function(){return _0x192a68;};return a30_0x1841();}
@@ -1 +1 @@
1
- const a31_0x29dda4=a31_0x2f00;(function(_0x2cbeb2,_0x21f65d){const _0xdb2878=a31_0x2f00,_0x50e311=_0x2cbeb2();while(!![]){try{const _0x24714e=-parseInt(_0xdb2878(0xb8))/0x1*(-parseInt(_0xdb2878(0xe7))/0x2)+parseInt(_0xdb2878(0xec))/0x3+parseInt(_0xdb2878(0xf6))/0x4*(-parseInt(_0xdb2878(0xd3))/0x5)+parseInt(_0xdb2878(0xc9))/0x6*(-parseInt(_0xdb2878(0xf4))/0x7)+-parseInt(_0xdb2878(0xc6))/0x8*(parseInt(_0xdb2878(0xcf))/0x9)+-parseInt(_0xdb2878(0xae))/0xa*(parseInt(_0xdb2878(0xeb))/0xb)+parseInt(_0xdb2878(0xde))/0xc;if(_0x24714e===_0x21f65d)break;else _0x50e311['push'](_0x50e311['shift']());}catch(_0x45b99b){_0x50e311['push'](_0x50e311['shift']());}}}(a31_0xccff,0x9f937));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_0x29dda4(0xbd),'command':a31_0x29dda4(0xea),'description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a31_0x29dda4(0xe5),'flags':[{'name':a31_0x29dda4(0xd9),'type':a31_0x29dda4(0xf5),'description':a31_0x29dda4(0xdb),'enum':[a31_0x29dda4(0xdc),'ENDPOINT',a31_0x29dda4(0xcc)]},{'name':a31_0x29dda4(0xdf),'type':a31_0x29dda4(0xac),'description':a31_0x29dda4(0xd5)}],async 'dryRun'(_0x1605e2){const _0x624403=a31_0x29dda4,_0x1abe93=loadBffProjectConfig(_0x1605e2[_0x624403(0xd2)]),_0x1501b8=await readBffLockFile(_0x1abe93[_0x624403(0xca)]),{appLock:_0x1c04f7}=ensureLockScope(_0x1501b8??createEmptyBffLock(),_0x1605e2[_0x624403(0xd2)],_0x1abe93['scriptsRoot'],_0x624403(0xea)),_0x5a54d8=normalizeBffType(_0x1605e2[_0x624403(0xdd)](_0x624403(0xd9)))??undefined,_0x4908d4=buildDatasetCodeToAliasMap(_0x1605e2[_0x624403(0xd1)],_0x1605e2[_0x624403(0xd2)]),[_0x1e8e7b,_0x444588]=await Promise[_0x624403(0xab)]([listBffScripts(_0x1605e2[_0x624403(0xd2)],_0x5a54d8),getBffScriptStatistics(_0x1605e2['appCode'])]),_0x503894=createHookLocationMap(_0x444588),_0xcd5ced=[];for(const _0x24d1f8 of _0x1e8e7b){const _0x20abcb=resolveRemoteScriptTarget(_0x1abe93,_0x24d1f8,_0x503894,_0x1c04f7[_0x624403(0xe2)],_0x4908d4);if(!_0x20abcb){_0xcd5ced['push']({'scriptType':_0x24d1f8['scriptType'],'functionName':_0x24d1f8[_0x624403(0xf3)]??'','status':_0x624403(0xe8),'reason':_0x624403(0xd7)});continue;}const _0x4526bd=_0x1c04f7[_0x624403(0xe2)][_0x20abcb[_0x624403(0xb9)]],_0x1573be=_0x24d1f8[_0x624403(0xb5)]!=null?computeContentHash(_0x24d1f8[_0x624403(0xb5)]):undefined,_0x1e9149=await hasUnsyncedLocalChanges(_0x20abcb[_0x624403(0xc2)],_0x4526bd,_0x1573be);_0xcd5ced[_0x624403(0xce)]({'lockKey':_0x20abcb[_0x624403(0xb9)],'filePath':_0x20abcb[_0x624403(0xc2)],'remoteId':_0x24d1f8['id']??null,'status':_0x1e9149?_0x624403(0xf0):_0x624403(0xaf)});}return{'method':_0x624403(0xb2),'url':'/api/management/library/scripts/list?appCode='+_0x1605e2[_0x624403(0xd2)]+(_0x5a54d8?_0x624403(0xbe)+_0x5a54d8:''),'body':{'appCode':_0x1605e2[_0x624403(0xd2)],'filterType':_0x5a54d8??null,'files':_0xcd5ced},'description':_0x624403(0xe1)+_0xcd5ced[_0x624403(0xbf)]+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x1791a3){const _0x3847b2=a31_0x29dda4,_0x4d2a8e=loadBffProjectConfig(_0x1791a3['appCode']),_0x59a411=await readBffLockFile(_0x4d2a8e[_0x3847b2(0xca)]),{lockData:_0x22af15,appLock:_0x78c098}=ensureLockScope(_0x59a411??createEmptyBffLock(),_0x1791a3[_0x3847b2(0xd2)],_0x4d2a8e[_0x3847b2(0xda)],'pull'),_0x2f8712=normalizeBffType(_0x1791a3[_0x3847b2(0xdd)](_0x3847b2(0xd9)))??undefined;if(_0x1791a3[_0x3847b2(0xdd)]('type')&&!_0x2f8712)throw CliErrors[_0x3847b2(0xcb)](_0x3847b2(0xc8));const [_0x56eafb,_0x4d5001]=await Promise[_0x3847b2(0xab)]([listBffScripts(_0x1791a3[_0x3847b2(0xd2)],_0x2f8712),getBffScriptStatistics(_0x1791a3['appCode'])]);if(_0x56eafb[_0x3847b2(0xbf)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x3847b2(0xc0)};const _0x55e41b=_0x1791a3[_0x3847b2(0xad)](_0x3847b2(0xdf));if(_0x55e41b&&!_0x1791a3[_0x3847b2(0xcd)]){const _0x4fbc65=await confirmForce();if(!_0x4fbc65)throw CliErrors[_0x3847b2(0xe9)](_0x3847b2(0xd6));}if(_0x55e41b&&_0x1791a3[_0x3847b2(0xcd)]){}const _0x285cfa=buildDatasetCodeToAliasMap(_0x1791a3[_0x3847b2(0xd1)],_0x1791a3['appCode']),_0x5699e6=createHookLocationMap(_0x4d5001),_0x4cf101=JSON['parse'](JSON[_0x3847b2(0xe3)](_0x22af15)),_0x1ad035=_0x1791a3['appCode'],_0x1f7088=_0x4cf101[_0x3847b2(0xb3)][_0x1ad035];if(!_0x1f7088)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x1ad035+_0x3847b2(0xc4));const _0x302c6e=[],_0x10e72a=[],_0x472b9a=[];for(const _0x57867c of _0x56eafb){const _0x657a1f=resolveRemoteScriptTarget(_0x4d2a8e,_0x57867c,_0x5699e6,_0x78c098[_0x3847b2(0xe2)],_0x285cfa);if(!_0x657a1f){_0x10e72a[_0x3847b2(0xce)]({'lockKey':_0x57867c[_0x3847b2(0xef)]+'/'+_0x57867c['functionName'],'reason':_0x3847b2(0xd7)});continue;}const _0x17413c=_0x78c098['functions'][_0x657a1f['lockKey']];try{if(!_0x57867c['id'])throw new Error('Remote\x20script\x20missing\x20id.');if(_0x57867c[_0x3847b2(0xb5)]==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0xf9bb81=_0x57867c[_0x3847b2(0xb5)],_0x310828=computeContentHash(_0xf9bb81);if(!_0x55e41b){const _0x288a19=await hasUnsyncedLocalChanges(_0x657a1f[_0x3847b2(0xc2)],_0x17413c,_0x310828);if(_0x288a19){_0x10e72a[_0x3847b2(0xce)]({'lockKey':_0x657a1f[_0x3847b2(0xb9)],'reason':_0x3847b2(0xf1)});continue;}}await ensureParentDirectory(_0x657a1f['filePath']),await writeFile(_0x657a1f[_0x3847b2(0xc2)],_0xf9bb81,_0x3847b2(0xf2));const _0x42f83c={'hash':_0x310828,'remoteId':_0x57867c['id'],'version':_0x57867c[_0x3847b2(0xc7)]};_0x657a1f[_0x3847b2(0xd9)]==='HOOK'&&_0x657a1f[_0x3847b2(0xc3)]&&(_0x42f83c[_0x3847b2(0xe4)]=_0x657a1f[_0x3847b2(0xc3)]['alias'],_0x42f83c[_0x3847b2(0xe0)]=_0x657a1f['hookLocation'][_0x3847b2(0xe0)],_0x42f83c[_0x3847b2(0xb0)]=_0x657a1f[_0x3847b2(0xc3)][_0x3847b2(0xb0)],_0x42f83c[_0x3847b2(0xd0)]=_0x657a1f[_0x3847b2(0xc3)][_0x3847b2(0xd0)]),_0x1f7088['functions'][_0x657a1f[_0x3847b2(0xb9)]]=_0x42f83c,_0x302c6e[_0x3847b2(0xce)]({'lockKey':_0x657a1f['lockKey'],'remoteId':_0x57867c['id']});}catch(_0x151350){_0x472b9a[_0x3847b2(0xce)]({'lockKey':_0x657a1f['lockKey'],'error':_0x151350 instanceof Error?_0x151350[_0x3847b2(0xf7)]:String(_0x151350)});}}return _0x1f7088[_0x3847b2(0xb6)]=new Date()['toISOString'](),await writeBffLockFile(_0x4d2a8e[_0x3847b2(0xca)],_0x4cf101),{'ok':_0x472b9a[_0x3847b2(0xbf)]===0x0,'data':{'pulled':_0x302c6e,'skipped':_0x10e72a,'failed':_0x472b9a},'message':_0x3847b2(0xc1)+_0x302c6e[_0x3847b2(0xbf)]+_0x3847b2(0xbc)+_0x10e72a[_0x3847b2(0xbf)]+_0x3847b2(0xee)+_0x472b9a[_0x3847b2(0xbf)]+_0x3847b2(0xe6)};}};function a31_0xccff(){const _0x1b254b=['2176336XddmAR','message','all','boolean','bool','2996530HLjLsy','would_pull','operationType','close','GET','apps','yes','scriptContent','lastSync','stderr','59ybOpRo','lockKey','map','includes','\x20pulled,\x20','bff','&type=','length','No\x20remote\x20BFF\x20scripts\x20found.','Pull\x20complete:\x20','filePath','hookLocation','\x22\x20not\x20found\x20after\x20ensureLockScope.','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','10744EXQXOZ','version','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','6Iskykj','lockFilePath','validation','HOOK','nonInteractive','push','7983eOzatl','functionNode','apiDir','appCode','10VwEHxP','hash','Force\x20overwrite\x20local\x20unsynced\x20changes','Force\x20pull\x20cancelled.','unresolvable\x20target\x20path','stdin','type','scriptsRoot','Pull\x20only\x20this\x20script\x20type','COMMON','str','30712944FCgXCT','force','datasetCode','Would\x20inspect\x20','functions','stringify','alias','write','\x20failed','15430GoMFhV','skipped','cancelled','pull','11TpjcxY','1905729tMDYxi','trim','\x20skipped,\x20','scriptType','conflict','local\x20unsynced\x20changes','utf8','functionName','2920085lWbzaw','string'];a31_0xccff=function(){return _0x1b254b;};return a31_0xccff();}async function hasUnsyncedLocalChanges(_0x171cdf,_0x1cb56f,_0x1670b5){const _0x12ac1f=a31_0x29dda4;if(!await fileExists(_0x171cdf))return![];const _0x2ab042=await computeFileHash(_0x171cdf);if(!_0x1cb56f)return _0x1670b5?_0x2ab042!==_0x1670b5:!![];return _0x2ab042!==_0x1cb56f[_0x12ac1f(0xd4)];}function buildDatasetCodeToAliasMap(_0x108828,_0x4c2d36){const _0x2c21ef=a31_0x29dda4,_0x14daf2=loadAliasMap(_0x108828,undefined,resolveApiFilePath(_0x108828,_0x4c2d36));return new Map(_0x14daf2[_0x2c21ef(0xba)](_0x558066=>[_0x558066[_0x2c21ef(0xe0)],_0x558066[_0x2c21ef(0xe4)]]));}function a31_0x2f00(_0x11a642,_0x3573d1){_0x11a642=_0x11a642-0xab;const _0xccffc1=a31_0xccff();let _0x2f0053=_0xccffc1[_0x11a642];return _0x2f0053;}async function confirmForce(){const _0x22e858=a31_0x29dda4,_0x2bec86=createInterface({'input':process[_0x22e858(0xd8)],'output':process[_0x22e858(0xb7)]}),_0x24bf08=await new Promise(_0x279143=>{const _0x3aed22=_0x22e858;_0x2bec86['question'](_0x3aed22(0xc5),_0x279143);});return _0x2bec86[_0x22e858(0xb1)](),['y',_0x22e858(0xb4)][_0x22e858(0xbb)](_0x24bf08[_0x22e858(0xed)]()['toLowerCase']());}
1
+ const a31_0x4649ce=a31_0x5dfc;(function(_0x3a0b87,_0x30bda1){const _0x3c375d=a31_0x5dfc,_0xad1b55=_0x3a0b87();while(!![]){try{const _0x13e9b9=-parseInt(_0x3c375d(0xf0))/0x1+-parseInt(_0x3c375d(0xfc))/0x2+parseInt(_0x3c375d(0xd1))/0x3*(parseInt(_0x3c375d(0xcf))/0x4)+-parseInt(_0x3c375d(0xf3))/0x5*(-parseInt(_0x3c375d(0xe7))/0x6)+-parseInt(_0x3c375d(0xf1))/0x7*(parseInt(_0x3c375d(0x10d))/0x8)+-parseInt(_0x3c375d(0xe1))/0x9+parseInt(_0x3c375d(0x109))/0xa;if(_0x13e9b9===_0x30bda1)break;else _0xad1b55['push'](_0xad1b55['shift']());}catch(_0x38e407){_0xad1b55['push'](_0xad1b55['shift']());}}}(a31_0x5474,0xf00f1));import{createInterface}from'node:readline';function a31_0x5dfc(_0x219f94,_0x1fb08a){_0x219f94=_0x219f94-0xc7;const _0x547451=a31_0x5474();let _0x5dfc6e=_0x547451[_0x219f94];return _0x5dfc6e;}function a31_0x5474(){const _0x3981ca=['Pull\x20only\x20this\x20script\x20type','30rxHKVm','lockKey','pull','would_pull','Force\x20overwrite\x20local\x20unsynced\x20changes','type','COMMON','parse','push','3171060ERacBB','cancelled','apps','\x20failed','filePath','Remote\x20script\x20missing\x20content.','\x22\x20not\x20found\x20after\x20ensureLockScope.','lockFilePath','Remote\x20script\x20missing\x20id.','Would\x20inspect\x20','includes','Force\x20pull\x20cancelled.','validation','23419290okcnoP','length','conflict','scriptType','40UdCEky','stdin','lastSync','operationType','Lock\x20scope\x20for\x20app\x20\x22','HOOK','question','ENDPOINT','GET','scriptContent','appCode','\x20skipped,\x20','28NrdCVv','force','47052QxLFBT','functionName','write','\x20remote\x20BFF\x20script(s)\x20for\x20pull','stderr','skipped','datasetCode','str','local\x20unsynced\x20changes','nonInteractive','No\x20remote\x20BFF\x20scripts\x20found.','hookLocation','unresolvable\x20target\x20path','version','\x20pulled,\x20','bool','771327SKNOxF','functions','all','toISOString','functionNode','alias','1708242bZPgax','/api/management/library/scripts/list?appCode=','trim','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','toLowerCase','scriptsRoot','apiDir','stringify','message','1299220hGZNZw','288715EptDHp'];a31_0x5474=function(){return _0x3981ca;};return a31_0x5474();}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':'bff','command':a31_0x4649ce(0xf5),'description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a31_0x4649ce(0xd3),'flags':[{'name':a31_0x4649ce(0xf8),'type':'string','description':a31_0x4649ce(0xf2),'enum':[a31_0x4649ce(0xf9),a31_0x4649ce(0xca),a31_0x4649ce(0xc8)]},{'name':'force','type':'boolean','description':a31_0x4649ce(0xf7)}],async 'dryRun'(_0x2adc58){const _0x3951db=a31_0x4649ce,_0x436921=loadBffProjectConfig(_0x2adc58['appCode']),_0x18d813=await readBffLockFile(_0x436921[_0x3951db(0x103)]),{appLock:_0x1a7490}=ensureLockScope(_0x18d813??createEmptyBffLock(),_0x2adc58[_0x3951db(0xcd)],_0x436921['scriptsRoot'],_0x3951db(0xf5)),_0x4daf0f=normalizeBffType(_0x2adc58[_0x3951db(0xd8)](_0x3951db(0xf8)))??undefined,_0x44e2ea=buildDatasetCodeToAliasMap(_0x2adc58[_0x3951db(0xed)],_0x2adc58[_0x3951db(0xcd)]),[_0x368058,_0x3328cd]=await Promise[_0x3951db(0xe3)]([listBffScripts(_0x2adc58[_0x3951db(0xcd)],_0x4daf0f),getBffScriptStatistics(_0x2adc58[_0x3951db(0xcd)])]),_0x46ebe3=createHookLocationMap(_0x3328cd),_0x489249=[];for(const _0x42a585 of _0x368058){const _0x1c7bd8=resolveRemoteScriptTarget(_0x436921,_0x42a585,_0x46ebe3,_0x1a7490[_0x3951db(0xe2)],_0x44e2ea);if(!_0x1c7bd8){_0x489249['push']({'scriptType':_0x42a585['scriptType'],'functionName':_0x42a585[_0x3951db(0xd2)]??'','status':_0x3951db(0xd6),'reason':_0x3951db(0xdd)});continue;}const _0x259eca=_0x1a7490[_0x3951db(0xe2)][_0x1c7bd8['lockKey']],_0x395a0e=_0x42a585[_0x3951db(0xcc)]!=null?computeContentHash(_0x42a585[_0x3951db(0xcc)]):undefined,_0x8ad220=await hasUnsyncedLocalChanges(_0x1c7bd8['filePath'],_0x259eca,_0x395a0e);_0x489249[_0x3951db(0xfb)]({'lockKey':_0x1c7bd8[_0x3951db(0xf4)],'filePath':_0x1c7bd8[_0x3951db(0x100)],'remoteId':_0x42a585['id']??null,'status':_0x8ad220?_0x3951db(0x10b):_0x3951db(0xf6)});}return{'method':_0x3951db(0xcb),'url':_0x3951db(0xe8)+_0x2adc58[_0x3951db(0xcd)]+(_0x4daf0f?'&type='+_0x4daf0f:''),'body':{'appCode':_0x2adc58[_0x3951db(0xcd)],'filterType':_0x4daf0f??null,'files':_0x489249},'description':_0x3951db(0x105)+_0x489249[_0x3951db(0x10a)]+_0x3951db(0xd4)};},async 'execute'(_0x5d189a){const _0x39d6f5=a31_0x4649ce,_0x5d2b9b=loadBffProjectConfig(_0x5d189a[_0x39d6f5(0xcd)]),_0x504b9b=await readBffLockFile(_0x5d2b9b[_0x39d6f5(0x103)]),{lockData:_0x49e2ce,appLock:_0x4b0d1f}=ensureLockScope(_0x504b9b??createEmptyBffLock(),_0x5d189a[_0x39d6f5(0xcd)],_0x5d2b9b[_0x39d6f5(0xec)],_0x39d6f5(0xf5)),_0x60091e=normalizeBffType(_0x5d189a[_0x39d6f5(0xd8)](_0x39d6f5(0xf8)))??undefined;if(_0x5d189a[_0x39d6f5(0xd8)](_0x39d6f5(0xf8))&&!_0x60091e)throw CliErrors[_0x39d6f5(0x108)](_0x39d6f5(0xea));const [_0x5f2200,_0x5cbf19]=await Promise['all']([listBffScripts(_0x5d189a[_0x39d6f5(0xcd)],_0x60091e),getBffScriptStatistics(_0x5d189a['appCode'])]);if(_0x5f2200['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x39d6f5(0xdb)};const _0x5204fe=_0x5d189a[_0x39d6f5(0xe0)](_0x39d6f5(0xd0));if(_0x5204fe&&!_0x5d189a['nonInteractive']){const _0x1a7e9c=await confirmForce();if(!_0x1a7e9c)throw CliErrors[_0x39d6f5(0xfd)](_0x39d6f5(0x107));}if(_0x5204fe&&_0x5d189a[_0x39d6f5(0xda)]){}const _0xcef0c6=buildDatasetCodeToAliasMap(_0x5d189a[_0x39d6f5(0xed)],_0x5d189a[_0x39d6f5(0xcd)]),_0x5893db=createHookLocationMap(_0x5cbf19),_0xba76d=JSON[_0x39d6f5(0xfa)](JSON[_0x39d6f5(0xee)](_0x49e2ce)),_0x4695cf=_0x5d189a[_0x39d6f5(0xcd)],_0x3c6ae5=_0xba76d[_0x39d6f5(0xfe)][_0x4695cf];if(!_0x3c6ae5)throw new Error(_0x39d6f5(0xc7)+_0x4695cf+_0x39d6f5(0x102));const _0x6fc367=[],_0x6cb944=[],_0x147897=[];for(const _0x4445f0 of _0x5f2200){const _0x9fbc1c=resolveRemoteScriptTarget(_0x5d2b9b,_0x4445f0,_0x5893db,_0x4b0d1f[_0x39d6f5(0xe2)],_0xcef0c6);if(!_0x9fbc1c){_0x6cb944[_0x39d6f5(0xfb)]({'lockKey':_0x4445f0[_0x39d6f5(0x10c)]+'/'+_0x4445f0[_0x39d6f5(0xd2)],'reason':_0x39d6f5(0xdd)});continue;}const _0x1e1b7b=_0x4b0d1f['functions'][_0x9fbc1c['lockKey']];try{if(!_0x4445f0['id'])throw new Error(_0x39d6f5(0x104));if(_0x4445f0[_0x39d6f5(0xcc)]==null)throw new Error(_0x39d6f5(0x101));const _0x29e5a8=_0x4445f0[_0x39d6f5(0xcc)],_0x39409b=computeContentHash(_0x29e5a8);if(!_0x5204fe){const _0x206d9c=await hasUnsyncedLocalChanges(_0x9fbc1c[_0x39d6f5(0x100)],_0x1e1b7b,_0x39409b);if(_0x206d9c){_0x6cb944[_0x39d6f5(0xfb)]({'lockKey':_0x9fbc1c[_0x39d6f5(0xf4)],'reason':_0x39d6f5(0xd9)});continue;}}await ensureParentDirectory(_0x9fbc1c[_0x39d6f5(0x100)]),await writeFile(_0x9fbc1c[_0x39d6f5(0x100)],_0x29e5a8,'utf8');const _0x2bf111={'hash':_0x39409b,'remoteId':_0x4445f0['id'],'version':_0x4445f0[_0x39d6f5(0xde)]};_0x9fbc1c[_0x39d6f5(0xf8)]===_0x39d6f5(0xc8)&&_0x9fbc1c['hookLocation']&&(_0x2bf111[_0x39d6f5(0xe6)]=_0x9fbc1c['hookLocation']['alias'],_0x2bf111['datasetCode']=_0x9fbc1c[_0x39d6f5(0xdc)][_0x39d6f5(0xd7)],_0x2bf111['operationType']=_0x9fbc1c[_0x39d6f5(0xdc)][_0x39d6f5(0x110)],_0x2bf111[_0x39d6f5(0xe5)]=_0x9fbc1c[_0x39d6f5(0xdc)]['functionNode']),_0x3c6ae5[_0x39d6f5(0xe2)][_0x9fbc1c[_0x39d6f5(0xf4)]]=_0x2bf111,_0x6fc367[_0x39d6f5(0xfb)]({'lockKey':_0x9fbc1c['lockKey'],'remoteId':_0x4445f0['id']});}catch(_0x5ac893){_0x147897['push']({'lockKey':_0x9fbc1c[_0x39d6f5(0xf4)],'error':_0x5ac893 instanceof Error?_0x5ac893[_0x39d6f5(0xef)]:String(_0x5ac893)});}}return _0x3c6ae5[_0x39d6f5(0x10f)]=new Date()[_0x39d6f5(0xe4)](),await writeBffLockFile(_0x5d2b9b[_0x39d6f5(0x103)],_0xba76d),{'ok':_0x147897[_0x39d6f5(0x10a)]===0x0,'data':{'pulled':_0x6fc367,'skipped':_0x6cb944,'failed':_0x147897},'message':'Pull\x20complete:\x20'+_0x6fc367[_0x39d6f5(0x10a)]+_0x39d6f5(0xdf)+_0x6cb944['length']+_0x39d6f5(0xce)+_0x147897['length']+_0x39d6f5(0xff)};}};async function hasUnsyncedLocalChanges(_0x4345b4,_0x270746,_0x5e7827){if(!await fileExists(_0x4345b4))return![];const _0x16d58a=await computeFileHash(_0x4345b4);if(!_0x270746)return _0x5e7827?_0x16d58a!==_0x5e7827:!![];return _0x16d58a!==_0x270746['hash'];}function buildDatasetCodeToAliasMap(_0x35b13b,_0x5b7d83){const _0x32c826=a31_0x4649ce,_0x576993=loadAliasMap(_0x35b13b,undefined,resolveApiFilePath(_0x35b13b,_0x5b7d83));return new Map(_0x576993['map'](_0x1e7805=>[_0x1e7805['datasetCode'],_0x1e7805[_0x32c826(0xe6)]]));}async function confirmForce(){const _0x366f4b=a31_0x4649ce,_0x53d9ff=createInterface({'input':process[_0x366f4b(0x10e)],'output':process[_0x366f4b(0xd5)]}),_0x443fcc=await new Promise(_0x1a1686=>{const _0x5963ca=_0x366f4b;_0x53d9ff[_0x5963ca(0xc9)]('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0x1a1686);});return _0x53d9ff['close'](),['y','yes'][_0x366f4b(0x106)](_0x443fcc[_0x366f4b(0xe9)]()[_0x366f4b(0xeb)]());}