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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 -0
  80. package/lib/commands/issue/report.js +1 -1
  81. package/lib/commands/issue/shared.js +1 -0
  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 +3 -2
@@ -1 +1 @@
1
- const a18_0x39187d=a18_0x4174;function a18_0x4174(_0x35a672,_0x4a5a52){_0x35a672=_0x35a672-0x116;const _0xd36bf9=a18_0xd36b();let _0x417496=_0xd36bf9[_0x35a672];return _0x417496;}(function(_0x386fc7,_0xb5a3c3){const _0x55923d=a18_0x4174,_0x5e06fe=_0x386fc7();while(!![]){try{const _0x39ec80=parseInt(_0x55923d(0x119))/0x1+parseInt(_0x55923d(0x13b))/0x2*(-parseInt(_0x55923d(0x129))/0x3)+-parseInt(_0x55923d(0x139))/0x4*(parseInt(_0x55923d(0x124))/0x5)+-parseInt(_0x55923d(0x121))/0x6*(parseInt(_0x55923d(0x13a))/0x7)+parseInt(_0x55923d(0x132))/0x8*(parseInt(_0x55923d(0x116))/0x9)+parseInt(_0x55923d(0x120))/0xa*(-parseInt(_0x55923d(0x127))/0xb)+parseInt(_0x55923d(0x11c))/0xc;if(_0x39ec80===_0xb5a3c3)break;else _0x5e06fe['push'](_0x5e06fe['shift']());}catch(_0x4296e5){_0x5e06fe['push'](_0x5e06fe['shift']());}}}(a18_0xd36b,0x9ef57));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(_0x532231){const _0x344a28=a18_0x4174,_0x1e5349=_0x532231[_0x344a28(0x131)][0x0]?.[_0x344a28(0x11b)]();if(!_0x1e5349)throw CliErrors['validation']('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x344a28(0x11e));}function a18_0xd36b(){const _0x502df4=['\x20app\x20\x22','trim','14960508jDrCdq','global','\x20app\x20add\x20<name>\x20--appcode\x20<code>','add','90sOzSND','937050BblyZp','Added','flagMissing','7365oaNVBS','appcode','Missing\x20app\x20name.','1361426aFwKXm','apps','12783iPqZnN','bool','Updated','\x20Set\x20as\x20default\x20app.','\x22\x20(appcode:\x20','str','App\x20code','boolean','args','48zeAZaM','write','defaultApp','string','name','App\x20profile\x20name','Add\x20or\x20update\x20an\x20app\x20in\x20config','1264MUinwx','35EJwQXH','6zHGJbX','1485189mhmpki','Usage:\x20','validation','787280EfEIoj'];a18_0xd36b=function(){return _0x502df4;};return a18_0xd36b();}async function execute(_0x255a7f){const _0x3f0879=a18_0x4174,_0x41f7d4=_0x255a7f[_0x3f0879(0x131)][0x0]?.[_0x3f0879(0x11b)]();if(!_0x41f7d4)throw CliErrors[_0x3f0879(0x118)](_0x3f0879(0x126),_0x3f0879(0x117)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>');const _0x35a0ec=_0x255a7f[_0x3f0879(0x12e)](_0x3f0879(0x125));if(!_0x35a0ec)throw CliErrors[_0x3f0879(0x123)]('appcode',_0x3f0879(0x117)+CLI_BIN_NAME+_0x3f0879(0x11e));const _0x32e118={'global':_0x255a7f[_0x3f0879(0x12a)]('global')},_0x596234=readConfig(_0x32e118);if(!_0x596234[_0x3f0879(0x128)])_0x596234['apps']={};const _0xbb8919={'appcode':_0x35a0ec,...collectAppProfileOverrides(_0x3f9dc7=>_0x255a7f['str'](_0x3f9dc7))},_0x4b0d7d=_0x596234[_0x3f0879(0x128)],_0x4e3a48=!!_0x4b0d7d[_0x41f7d4];_0x4b0d7d[_0x41f7d4]=_0xbb8919;if(!_0x596234[_0x3f0879(0x134)])_0x596234[_0x3f0879(0x134)]=_0x41f7d4;writeConfig(_0x596234,_0x32e118);const _0x148c36=!_0x4e3a48&&_0x596234['defaultApp']===_0x41f7d4?_0x3f0879(0x12c):'',_0x49f99c=(_0x4e3a48?_0x3f0879(0x12b):_0x3f0879(0x122))+_0x3f0879(0x11a)+_0x41f7d4+_0x3f0879(0x12d)+_0x35a0ec+')'+scopeLabel(_0x32e118)+'.'+_0x148c36;return{'ok':!![],'message':_0x49f99c};}export const appAddDefinition={'service':'app','command':a18_0x39187d(0x11f),'description':a18_0x39187d(0x138),'risk':a18_0x39187d(0x133),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a18_0x39187d(0x136),'description':a18_0x39187d(0x137),'required':!![]}],'flags':[{'name':'appcode','type':a18_0x39187d(0x135),'description':a18_0x39187d(0x12f),'required':!![]},{'name':a18_0x39187d(0x11d),'type':a18_0x39187d(0x130),'description':'Use\x20global\x20config\x20scope','default':![]},...getAppProfileFlagDefs()],'validate':validateArgs,'execute':execute};
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 +1 @@
1
- function a19_0x101f(){const _0x2705a4=['5118988zLyexh','remote','2022742uppkTh','1szZUbs','139260ayLQVC','110TEguXA','522EiNKrD','platform','10797270uIAGSR','app','appDesc','23724lzdTHK','cookie','3800520WduOxW','../../core/api-client.js','read','appCode','map','504xNClyb','112038aSuKbl'];a19_0x101f=function(){return _0x2705a4;};return a19_0x101f();}function a19_0x43b3(_0x454fba,_0x39e7de){_0x454fba=_0x454fba-0x1d1;const _0x101f0b=a19_0x101f();let _0x43b33a=_0x101f0b[_0x454fba];return _0x43b33a;}const a19_0x28933e=a19_0x43b3;(function(_0x10c887,_0xf27109){const _0x4d9c32=a19_0x43b3,_0x2f1fe2=_0x10c887();while(!![]){try{const _0x5b460b=parseInt(_0x4d9c32(0x1dd))/0x1*(parseInt(_0x4d9c32(0x1dc))/0x2)+-parseInt(_0x4d9c32(0x1d1))/0x3*(-parseInt(_0x4d9c32(0x1d8))/0x4)+-parseInt(_0x4d9c32(0x1df))/0x5*(parseInt(_0x4d9c32(0x1d9))/0x6)+-parseInt(_0x4d9c32(0x1da))/0x7+-parseInt(_0x4d9c32(0x1d3))/0x8+parseInt(_0x4d9c32(0x1e0))/0x9*(-parseInt(_0x4d9c32(0x1de))/0xa)+parseInt(_0x4d9c32(0x1e2))/0xb;if(_0x5b460b===_0xf27109)break;else _0x2f1fe2['push'](_0x2f1fe2['shift']());}catch(_0x42a605){_0x2f1fe2['push'](_0x2f1fe2['shift']());}}}(a19_0x101f,0x89d06));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x32ee02){const _0xd36e=a19_0x43b3,{setActiveCookie:_0x33205e}=await import(_0xd36e(0x1d4));_0x33205e(_0x32ee02[_0xd36e(0x1d2)]);const _0x276bc2=await listRemoteApps();return{'ok':!![],'data':{'items':_0x276bc2[_0xd36e(0x1d7)](_0x5941e6=>({..._0x5941e6['id']!=null?{'id':_0x5941e6['id']}:{},'appCode':_0x5941e6[_0xd36e(0x1d6)],'appName':_0x5941e6['appName'],..._0x5941e6[_0xd36e(0x1e4)]!=null?{'appDesc':_0x5941e6[_0xd36e(0x1e4)]}:{}})),'meta':{'source':_0xd36e(0x1e1)}}};}export const appRemoteDefinition={'service':a19_0x28933e(0x1e3),'command':a19_0x28933e(0x1db),'description':'List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','risk':a19_0x28933e(0x1d5),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
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 +1 @@
1
- (function(_0x4f3731,_0x187253){const _0x5ccf33=a20_0xfac3,_0x2060d2=_0x4f3731();while(!![]){try{const _0x1137a7=parseInt(_0x5ccf33(0x10a))/0x1*(parseInt(_0x5ccf33(0x109))/0x2)+parseInt(_0x5ccf33(0x10e))/0x3+-parseInt(_0x5ccf33(0x10f))/0x4*(-parseInt(_0x5ccf33(0x10b))/0x5)+parseInt(_0x5ccf33(0x10d))/0x6*(-parseInt(_0x5ccf33(0x112))/0x7)+parseInt(_0x5ccf33(0x10c))/0x8+parseInt(_0x5ccf33(0x111))/0x9*(parseInt(_0x5ccf33(0x108))/0xa)+-parseInt(_0x5ccf33(0x110))/0xb;if(_0x1137a7===_0x187253)break;else _0x2060d2['push'](_0x2060d2['shift']());}catch(_0x409c2e){_0x2060d2['push'](_0x2060d2['shift']());}}}(a20_0x5b4b,0xa40bd));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';function a20_0x5b4b(){const _0x461355=['7710392oEkuUI','369294hhoqdr','2755908KuNAyB','36pjPauM','21468161SLspvY','8437509nPzucL','77QtCwZv','10DmnkKC','102yGwBeV','1582dBSbWd','222225tTdxSy'];a20_0x5b4b=function(){return _0x461355;};return a20_0x5b4b();}function a20_0xfac3(_0x4c37fa,_0x16997d){_0x4c37fa=_0x4c37fa-0x108;const _0x5b4b54=a20_0x5b4b();let _0xfac3b1=_0x5b4b54[_0x4c37fa];return _0xfac3b1;}export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
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 +1 @@
1
- const a21_0x3b19e2=a21_0x2805;(function(_0x19b656,_0x237f1c){const _0x3ab80f=a21_0x2805,_0x198163=_0x19b656();while(!![]){try{const _0x55981b=parseInt(_0x3ab80f(0x8c))/0x1*(-parseInt(_0x3ab80f(0x9a))/0x2)+-parseInt(_0x3ab80f(0x94))/0x3+-parseInt(_0x3ab80f(0x9e))/0x4*(parseInt(_0x3ab80f(0x9d))/0x5)+parseInt(_0x3ab80f(0xa1))/0x6*(-parseInt(_0x3ab80f(0xb1))/0x7)+parseInt(_0x3ab80f(0x8f))/0x8*(parseInt(_0x3ab80f(0x8b))/0x9)+-parseInt(_0x3ab80f(0xa2))/0xa*(-parseInt(_0x3ab80f(0x93))/0xb)+parseInt(_0x3ab80f(0x9f))/0xc*(parseInt(_0x3ab80f(0xa6))/0xd);if(_0x55981b===_0x237f1c)break;else _0x198163['push'](_0x198163['shift']());}catch(_0x3d9ed7){_0x198163['push'](_0x198163['shift']());}}}(a21_0x3263,0x8f883));import{readRawConfigWithLayers}from'../../context.js';function a21_0x2805(_0x5dca8e,_0x49c414){_0x5dca8e=_0x5dca8e-0x8a;const _0x32635f=a21_0x3263();let _0x280541=_0x32635f[_0x5dca8e];return _0x280541;}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(_0x56f6a7,_0x54bab8){const _0x2c89c7=a21_0x2805,_0x44bd31=[],_0x1334fc=_0x56f6a7[_0x2c89c7(0x97)]&&typeof _0x56f6a7[_0x2c89c7(0x97)]===_0x2c89c7(0xaa)?_0x56f6a7[_0x2c89c7(0x97)]:{},_0x12d84c=_0x56f6a7[_0x2c89c7(0x99)]||undefined;for(const [_0x203c29,_0x175300]of Object[_0x2c89c7(0xa7)](_0x1334fc)){if(!_0x175300||typeof _0x175300!=='object'||!_0x175300[_0x2c89c7(0xa8)])continue;_0x44bd31[_0x2c89c7(0x8d)]({'name':_0x203c29,'appcode':_0x175300['appcode'],'named':!![],'definedIn':_0x54bab8,'isDefault':_0x203c29===_0x12d84c,...buildAppProfileListFields(_0x175300)});}return _0x44bd31;}function buildMergedItems(_0x4a5264,_0x50867f){const _0x42a8f1=a21_0x2805,{apps:apps={},defaultApp:_0x61f684}=_0x4a5264,_0x1ec46a=_0x50867f[_0x42a8f1(0xa9)]['apps']&&typeof _0x50867f[_0x42a8f1(0xa9)]['apps']===_0x42a8f1(0xaa)?_0x50867f[_0x42a8f1(0xa9)][_0x42a8f1(0x97)]:{},_0x5d2758=_0x50867f[_0x42a8f1(0xac)][_0x42a8f1(0x97)]&&typeof _0x50867f[_0x42a8f1(0xac)]['apps']===_0x42a8f1(0xaa)?_0x50867f[_0x42a8f1(0xac)][_0x42a8f1(0x97)]:{},_0x1f40b2=_0x50867f[_0x42a8f1(0xac)][_0x42a8f1(0x96)]===![],_0x3867b7=Object[_0x42a8f1(0xa7)](apps),_0x1c5764=_0x3867b7[_0x42a8f1(0xb0)](([_0x5900f4,_0x4f58bc])=>({'name':_0x5900f4,'appcode':_0x4f58bc[_0x42a8f1(0xa8)],'named':!![],'definedIn':appDefinedIn(_0x5900f4,_0x1ec46a,_0x5d2758,_0x1f40b2),'isDefault':_0x5900f4===_0x61f684,...buildAppProfileListFields(_0x4f58bc)}));return _0x1c5764;}async function execute(_0x3b67ad){const _0x38bab2=a21_0x2805,_0x4f7dc8=_0x3b67ad[_0x38bab2(0xa5)](_0x38bab2(0xab)),_0x1f309e=_0x3b67ad[_0x38bab2(0xa5)](_0x38bab2(0x9c)),_0xfda17f=_0x4f7dc8?'global':_0x1f309e?_0x38bab2(0x9c):_0x38bab2(0xa4),{config:_0x26ca77,layers:_0x435d6f}=readRawConfigWithLayers(),_0x17e660=resolveDefaultAppSource(_0x435d6f),{defaultApp:_0x25ec9b}=_0x26ca77;let _0x42d276,_0x4758d1;switch(_0xfda17f){case'global':_0x42d276=buildItemsFromLayer(_0x435d6f[_0x38bab2(0xa9)],'global'),_0x4758d1=_0x435d6f[_0x38bab2(0x90)];break;case _0x38bab2(0x9c):_0x42d276=buildItemsFromLayer(_0x435d6f[_0x38bab2(0xac)],_0x38bab2(0x9c)),_0x4758d1=_0x435d6f[_0x38bab2(0x95)];break;default:_0x42d276=buildMergedItems(_0x26ca77,_0x435d6f);break;}enrichAppListItemsWithMergedSelection(_0x42d276,_0x3b67ad['mergedCli']);if(_0x42d276['length']===0x0){const _0x5dd13b=_0xfda17f===_0x38bab2(0xa4)?'':_0x38bab2(0xae)+_0xfda17f+'\x20config';return{'ok':!![],'data':[],'message':_0x38bab2(0x8a)+_0x5dd13b+'.\x20Use\x20`'+CLI_BIN_NAME+_0x38bab2(0x9b)};}const _0x200539=_0x42d276[_0x38bab2(0x8e)](_0xcc7077=>_0xcc7077[_0x38bab2(0x92)]===!![]),_0x24651b=_0x25ec9b??_0x200539?.['appcode']??null,_0x190f01=_0xfda17f===_0x38bab2(0xa4)?{'globalPath':_0x435d6f['globalPath']??null,'projectPath':_0x435d6f[_0x38bab2(0x95)]??null,'defaultApp':_0x24651b,'defaultAppSource':_0x25ec9b!=null?_0x17e660:null}:{'scope':_0xfda17f,'configPath':_0x4758d1??null};return{'ok':!![],'data':{'items':_0x42d276,'meta':_0x190f01}};}function a21_0x3263(){const _0x54b9b4=['8sfSDPC','9732HCxuMX','app','1614PqJeZU','1868930mDzwMI','boolean','merged','bool','15197tTdozQ','entries','appcode','globalConfig','object','global','projectConfig','List\x20all\x20configured\x20apps','\x20in\x20','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','map','6041ptlVoG','No\x20apps\x20configured','315mbnUur','6KAlHVs','push','find','226288xGMjTM','globalPath','read','isCurrent','55vLEtGF','1264188slXZcx','projectPath','inherit','apps','list','defaultApp','338606rGTNVb','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','project','1538165hFZqTx'];a21_0x3263=function(){return _0x54b9b4;};return a21_0x3263();}export const appListDefinition={'service':a21_0x3b19e2(0xa0),'command':a21_0x3b19e2(0x98),'description':a21_0x3b19e2(0xad),'risk':a21_0x3b19e2(0x91),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':'global','type':a21_0x3b19e2(0xa3),'description':'Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','default':![]},{'name':'project','type':a21_0x3b19e2(0xa3),'description':a21_0x3b19e2(0xaf),'default':![]}],'execute':execute};
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 +1 @@
1
- const a22_0x4745b3=a22_0xa859;(function(_0x219306,_0x14a570){const _0x3191d2=a22_0xa859,_0xd71e99=_0x219306();while(!![]){try{const _0x441232=-parseInt(_0x3191d2(0x170))/0x1*(parseInt(_0x3191d2(0x17d))/0x2)+parseInt(_0x3191d2(0x189))/0x3+parseInt(_0x3191d2(0x175))/0x4*(parseInt(_0x3191d2(0x194))/0x5)+parseInt(_0x3191d2(0x17f))/0x6*(-parseInt(_0x3191d2(0x18d))/0x7)+parseInt(_0x3191d2(0x171))/0x8+-parseInt(_0x3191d2(0x18b))/0x9*(parseInt(_0x3191d2(0x183))/0xa)+parseInt(_0x3191d2(0x197))/0xb*(parseInt(_0x3191d2(0x179))/0xc);if(_0x441232===_0x14a570)break;else _0xd71e99['push'](_0xd71e99['shift']());}catch(_0x37a48f){_0xd71e99['push'](_0xd71e99['shift']());}}}(a22_0x5109,0x59259));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(_0x420d47){const _0x258b09=a22_0xa859,_0x4aa2e7=_0x420d47[_0x258b09(0x17c)][0x0]?.[_0x258b09(0x196)]();if(!_0x4aa2e7)throw CliErrors[_0x258b09(0x174)](_0x258b09(0x182),_0x258b09(0x192)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}function a22_0xa859(_0x15f90f,_0x129ab2){_0x15f90f=_0x15f90f-0x170;const _0x510944=a22_0x5109();let _0xa85998=_0x510944[_0x15f90f];return _0xa85998;}async function execute(_0x12b349){const _0x5e7b57=a22_0xa859,_0x125f64=_0x12b349[_0x5e7b57(0x17c)][0x0]?.[_0x5e7b57(0x196)]();if(!_0x125f64)throw CliErrors[_0x5e7b57(0x174)]('Missing\x20app\x20name.',_0x5e7b57(0x192)+CLI_BIN_NAME+_0x5e7b57(0x172));const _0x5bd28c=_0x12b349[_0x5e7b57(0x17e)](_0x5e7b57(0x181)),{config:_0x51c8e6,layers:_0x552107}=readRawConfigWithLayers(),_0x22abdf=_0x51c8e6[_0x5e7b57(0x187)]??{};if(!_0x22abdf[_0x125f64])throw CliErrors[_0x5e7b57(0x174)](_0x5e7b57(0x185)+_0x125f64+_0x5e7b57(0x188));const _0x588064=_0x552107[_0x5e7b57(0x177)][_0x5e7b57(0x187)]&&typeof _0x552107[_0x5e7b57(0x177)][_0x5e7b57(0x187)]==='object'?_0x552107['globalConfig'][_0x5e7b57(0x187)]:{},_0x842694=_0x552107[_0x5e7b57(0x18a)]['apps']&&typeof _0x552107[_0x5e7b57(0x18a)][_0x5e7b57(0x187)]==='object'?_0x552107[_0x5e7b57(0x18a)][_0x5e7b57(0x187)]:{},_0x30c16e=appDefinedIn(_0x125f64,_0x588064,_0x842694,_0x552107[_0x5e7b57(0x18a)][_0x5e7b57(0x176)]===![]),_0x1c3b63=resolveAppScopeForWrite(_0x125f64,_0x5bd28c,_0x552107),_0x15b4f9={'global':_0x1c3b63===_0x5e7b57(0x181)},_0x2799d4=readConfig(_0x15b4f9),_0x5036c8=_0x2799d4[_0x5e7b57(0x187)];if(!_0x5036c8||!_0x5036c8[_0x125f64])throw CliErrors[_0x5e7b57(0x174)](_0x5e7b57(0x185)+_0x125f64+_0x5e7b57(0x188));delete _0x5036c8[_0x125f64];let _0x38a448='';if(_0x2799d4[_0x5e7b57(0x17b)]===_0x125f64){const _0x53c5a3=Object[_0x5e7b57(0x17a)](_0x5036c8);_0x2799d4[_0x5e7b57(0x17b)]=_0x53c5a3[_0x5e7b57(0x195)]>0x0?_0x53c5a3[0x0]:undefined,_0x2799d4[_0x5e7b57(0x17b)]?_0x38a448=_0x5e7b57(0x18e)+_0x2799d4[_0x5e7b57(0x17b)]+'\x22.':delete _0x2799d4['defaultApp'];}Object[_0x5e7b57(0x17a)](_0x5036c8)['length']===0x0&&(delete _0x2799d4[_0x5e7b57(0x187)],delete _0x2799d4[_0x5e7b57(0x17b)]);writeConfig(_0x2799d4,_0x15b4f9);const _0x7bb56a=_0x30c16e==='both'?_0x5e7b57(0x193)+_0x125f64+'\x22\x20still\x20defined\x20in\x20'+(_0x1c3b63===_0x5e7b57(0x184)?_0x5e7b57(0x181):_0x5e7b57(0x184))+'\x20config.':'';return{'ok':!![],'message':_0x5e7b57(0x190)+_0x125f64+'\x22'+scopeLabel(_0x15b4f9)+'.'+_0x38a448+_0x7bb56a};}export const appRemoveDefinition={'service':a22_0x4745b3(0x18f),'command':a22_0x4745b3(0x186),'description':a22_0x4745b3(0x180),'risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x4745b3(0x173),'description':a22_0x4745b3(0x191),'required':!![]}],'flags':[{'name':'global','type':a22_0x4745b3(0x18c),'description':a22_0x4745b3(0x178),'default':![]}],'validate':validateArgs,'execute':execute};function a22_0x5109(){const _0x1cb3dd=['Usage:\x20','\x20Note:\x20app\x20\x22','34030EIrgof','length','trim','565807fAPNjw','9GWbNVa','826464pvoHvo','\x20app\x20remove\x20<name>\x20[--global]','name','validation','308wfDYsc','inherit','globalConfig','Use\x20global\x20config\x20scope','228eGmhyF','keys','defaultApp','args','125498CuHyIq','bool','12QnOKkZ','Remove\x20an\x20app\x20from\x20config','global','Missing\x20app\x20name.','3819910LJzZeC','project','App\x20\x22','remove','apps','\x22\x20not\x20found.','115368vfZdQL','projectConfig','9EFeqOb','boolean','1159382BFpLpP','\x20Default\x20app\x20changed\x20to\x20\x22','app','Removed\x20app\x20\x22','App\x20profile\x20name\x20to\x20remove'];a22_0x5109=function(){return _0x1cb3dd;};return a22_0x5109();}
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 +1 @@
1
- (function(_0x21e06c,_0x5ab618){const _0x498125=a23_0x450e,_0x28b786=_0x21e06c();while(!![]){try{const _0x47d143=-parseInt(_0x498125(0x105))/0x1+-parseInt(_0x498125(0xf1))/0x2*(-parseInt(_0x498125(0xef))/0x3)+-parseInt(_0x498125(0xf4))/0x4+parseInt(_0x498125(0xf9))/0x5+parseInt(_0x498125(0x102))/0x6*(parseInt(_0x498125(0x107))/0x7)+parseInt(_0x498125(0x104))/0x8*(parseInt(_0x498125(0xfe))/0x9)+parseInt(_0x498125(0xf3))/0xa*(-parseInt(_0x498125(0x103))/0xb);if(_0x47d143===_0x5ab618)break;else _0x28b786['push'](_0x28b786['shift']());}catch(_0xad4c5c){_0x28b786['push'](_0x28b786['shift']());}}}(a23_0xdcbb,0x39762));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x3645f1,_0x223009){const _0x5d3363=a23_0x450e;if(!_0x223009)return;const _0x374f84=_0x223009[_0x5d3363(0x10a)]&&typeof _0x223009['apps']===_0x5d3363(0x106)?_0x223009['apps']:{},_0x52fc72=Object[_0x5d3363(0xf0)](_0x374f84)[_0x5d3363(0x10c)]>0x0;for(const _0xff6df8 of _0x3645f1){_0xff6df8[_0x5d3363(0x101)]=![];}const _0x18e46a=_0x223009['appCode']!=null?String(_0x223009['appCode'])[_0x5d3363(0xfb)]():'';if(_0x52fc72){const _0x291faf=_0x223009[_0x5d3363(0xfc)]??_0x223009[_0x5d3363(0xfd)];if(_0x291faf)for(const _0x3ff7a2 of _0x3645f1){_0x3ff7a2[_0x5d3363(0x100)]===!![]&&_0x3ff7a2[_0x5d3363(0x108)]===_0x291faf&&(_0x3ff7a2[_0x5d3363(0x101)]=!![]);}for(const _0x8091b8 of _0x3645f1){if(_0x8091b8['named']!==![])continue;if(_0x223009[_0x5d3363(0xfd)])continue;_0x18e46a&&String(_0x8091b8[_0x5d3363(0x10b)]??'')[_0x5d3363(0xfb)]()===_0x18e46a&&(_0x8091b8[_0x5d3363(0x101)]=!![]);}return;}if(!_0x18e46a)return;for(const _0x205c85 of _0x3645f1){String(_0x205c85[_0x5d3363(0x10b)]??'')[_0x5d3363(0xfb)]()===_0x18e46a&&(_0x205c85['isCurrent']=!![]);}}export function resolveAppScopeForWrite(_0x424161,_0x55387d,_0x597024){const _0x4ae4b7=a23_0x450e;if(_0x55387d)return'global';const _0x2b2145=_0x597024[_0x4ae4b7(0xf2)][_0x4ae4b7(0x10a)]&&typeof _0x597024[_0x4ae4b7(0xf2)][_0x4ae4b7(0x10a)]===_0x4ae4b7(0x106)?_0x597024['projectConfig']['apps']:{},_0x506c7f=_0x597024[_0x4ae4b7(0xf8)][_0x4ae4b7(0x10a)]&&typeof _0x597024['globalConfig'][_0x4ae4b7(0x10a)]===_0x4ae4b7(0x106)?_0x597024[_0x4ae4b7(0xf8)][_0x4ae4b7(0x10a)]:{};if(Object[_0x4ae4b7(0xf5)]['hasOwnProperty'][_0x4ae4b7(0xfa)](_0x2b2145,_0x424161))return'project';if(Object[_0x4ae4b7(0xf5)][_0x4ae4b7(0x109)][_0x4ae4b7(0xfa)](_0x506c7f,_0x424161))return _0x4ae4b7(0xf7);return _0x4ae4b7(0xff);}export function appDefinedIn(_0x3c74ee,_0xb8bd4d,_0x38f4b5,_0xb3b68b){const _0x1e9835=a23_0x450e;if(_0xb3b68b)return Object['prototype']['hasOwnProperty'][_0x1e9835(0xfa)](_0x38f4b5,_0x3c74ee)?_0x1e9835(0xff):_0x1e9835(0xf7);const _0x246811=Object['prototype'][_0x1e9835(0x109)]['call'](_0xb8bd4d,_0x3c74ee),_0x291ca3=Object['prototype'][_0x1e9835(0x109)]['call'](_0x38f4b5,_0x3c74ee);if(_0x246811&&_0x291ca3)return'both';if(_0x291ca3)return _0x1e9835(0xff);return _0x1e9835(0xf7);}function a23_0x450e(_0x406505,_0x34e64b){_0x406505=_0x406505-0xef;const _0xdcbbf7=a23_0xdcbb();let _0x450ec6=_0xdcbbf7[_0x406505];return _0x450ec6;}export function resolveDefaultAppSource(_0x162431){const _0x2f7978=a23_0x450e,_0x3a691f=_0x162431[_0x2f7978(0xf2)][_0x2f7978(0x10a)]&&typeof _0x162431['projectConfig'][_0x2f7978(0x10a)]==='object'?_0x162431[_0x2f7978(0xf2)][_0x2f7978(0x10a)]:{};if(_0x2f7978(0xfd)in _0x162431['projectConfig'])return _0x2f7978(0xff);if(Object[_0x2f7978(0xf0)](_0x3a691f)[_0x2f7978(0x10c)]>0x0)return _0x2f7978(0xff);if(_0x162431[_0x2f7978(0xf2)]['inherit']===![])return null;if(_0x162431[_0x2f7978(0xf8)][_0x2f7978(0xfd)])return'global';return null;}export function getConfigPath(_0x428ce4={}){const _0x43bc8f=a23_0x450e,_0x5e39ef=_0x428ce4[_0x43bc8f(0xf7)]?'global':_0x43bc8f(0xff);return resolveWriteConfigPath(_0x5e39ef);}function a23_0xdcbb(){const _0x49a778=['appcode','length','237696tqieFc','keys','4BUVxqZ','projectConfig','10ikYadv','457676uYBylL','prototype','\x20(global)','global','globalConfig','2265910sIrMoD','call','trim','currentApp','defaultApp','18pVhCoU','project','named','isCurrent','65388QeHcNa','1428262nunwRp','600296PaFcnC','423771CqduHW','object','91sbzRTc','name','hasOwnProperty','apps'];a23_0xdcbb=function(){return _0x49a778;};return a23_0xdcbb();}export function readConfig(_0x1ba10c={}){return readConfigFile(getConfigPath(_0x1ba10c));}export function writeConfig(_0x35d4fa,_0x39c813={}){writeConfigFile(getConfigPath(_0x39c813),_0x35d4fa);}export function scopeLabel(_0x3f385d){const _0x47db18=a23_0x450e;return _0x3f385d['global']?_0x47db18(0xf6):'';}
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 +1 @@
1
- const a24_0x11df00=a24_0x4963;(function(_0x3b3dfd,_0x20be4a){const _0x3a1a7e=a24_0x4963,_0x26f77a=_0x3b3dfd();while(!![]){try{const _0x41a0e9=parseInt(_0x3a1a7e(0x1a4))/0x1*(-parseInt(_0x3a1a7e(0x1a7))/0x2)+-parseInt(_0x3a1a7e(0x1c0))/0x3+parseInt(_0x3a1a7e(0x1b0))/0x4*(-parseInt(_0x3a1a7e(0x1ca))/0x5)+-parseInt(_0x3a1a7e(0x1a6))/0x6*(-parseInt(_0x3a1a7e(0x1bf))/0x7)+-parseInt(_0x3a1a7e(0x1c1))/0x8+parseInt(_0x3a1a7e(0x1bc))/0x9+parseInt(_0x3a1a7e(0x1be))/0xa;if(_0x41a0e9===_0x20be4a)break;else _0x26f77a['push'](_0x26f77a['shift']());}catch(_0x6fcb2c){_0x26f77a['push'](_0x26f77a['shift']());}}}(a24_0x5d8e,0x5cb5e));function a24_0x5d8e(){const _0x19ae71=['keys','call','\x0aNote:\x20\x22','4761486ZGaSWJ','\x22\x20(appcode:\x20','3274720TwDTgr','637QItfdJ','279633ZIVEIA','1513016vnnVXI','name','boolean','\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.','Default\x20app\x20set\x20to\x20\x22','length','validation','apps','global','1315445NJqcGX','Available:\x20','Use\x20global\x20config\x20scope','Use\x20`','2089EHYGIB','object','38814jfyNko','246yIQNNp','join','hasOwnProperty','trim','Usage:\x20','projectPath','App\x20\x22','\x20app\x20use\x20<name>\x20[--global]','use','8oGJaAH','\x20--appcode\x20<code>`\x20first.','\x20app\x20add\x20','prototype','projectConfig','args','defaultApp','Missing\x20app\x20name.','App\x20profile\x20name\x20to\x20activate'];a24_0x5d8e=function(){return _0x19ae71;};return a24_0x5d8e();}import{CliErrors}from'../../errors.js';function a24_0x4963(_0x34bf47,_0x136d89){_0x34bf47=_0x34bf47-0x1a1;const _0x5d8e10=a24_0x5d8e();let _0x496352=_0x5d8e10[_0x34bf47];return _0x496352;}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(_0x255b77){const _0x5ed710=a24_0x4963,_0x2b5f04=_0x255b77['args'][0x0]?.['trim']();if(!_0x2b5f04)throw CliErrors[_0x5ed710(0x1c7)](_0x5ed710(0x1b7),'Usage:\x20'+CLI_BIN_NAME+_0x5ed710(0x1ae));}async function execute(_0x2511d3){const _0x51710a=a24_0x4963,_0x5666cd=_0x2511d3[_0x51710a(0x1b5)][0x0]?.[_0x51710a(0x1aa)]();if(!_0x5666cd)throw CliErrors[_0x51710a(0x1c7)]('Missing\x20app\x20name.',_0x51710a(0x1ab)+CLI_BIN_NAME+_0x51710a(0x1ae));const _0x5e3f54=_0x2511d3['bool']('global'),{config:_0x4e7642,layers:_0x10dd57}=readRawConfigWithLayers(),_0x30a3c8=_0x4e7642['apps']??{};if(!_0x30a3c8[_0x5666cd]){const _0x2bde60=Object[_0x51710a(0x1b9)](_0x30a3c8),_0x5e6dc1=_0x2bde60[_0x51710a(0x1c6)]===0x0?_0x51710a(0x1a3)+CLI_BIN_NAME+_0x51710a(0x1b2)+_0x5666cd+_0x51710a(0x1b1):_0x51710a(0x1a1)+_0x2bde60[_0x51710a(0x1a8)](',\x20');throw CliErrors[_0x51710a(0x1c7)](_0x51710a(0x1ad)+_0x5666cd+'\x22\x20not\x20found.',_0x5e6dc1);}let _0x55e9f3,_0x421bf7='';if(_0x5e3f54)_0x55e9f3={'global':!![]};else{const _0x4e7ed0=isInProject()&&!!_0x10dd57[_0x51710a(0x1ac)];_0x55e9f3={'global':!_0x4e7ed0};if(_0x4e7ed0){const _0x55760d=_0x10dd57[_0x51710a(0x1b4)]['apps']&&typeof _0x10dd57['projectConfig'][_0x51710a(0x1c8)]===_0x51710a(0x1a5)?_0x10dd57[_0x51710a(0x1b4)][_0x51710a(0x1c8)]:{};!Object[_0x51710a(0x1b3)][_0x51710a(0x1a9)][_0x51710a(0x1ba)](_0x55760d,_0x5666cd)&&(_0x421bf7=_0x51710a(0x1bb)+_0x5666cd+_0x51710a(0x1c4));}}const _0xbd07a5=readConfig(_0x55e9f3);return _0xbd07a5[_0x51710a(0x1b6)]=_0x5666cd,writeConfig(_0xbd07a5,_0x55e9f3),{'ok':!![],'message':_0x51710a(0x1c5)+_0x5666cd+_0x51710a(0x1bd)+_0x30a3c8[_0x5666cd]['appcode']+')'+scopeLabel(_0x55e9f3)+_0x421bf7};}export const appUseDefinition={'service':'app','command':a24_0x11df00(0x1af),'description':'Switch\x20the\x20default\x20app','risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x11df00(0x1c2),'description':a24_0x11df00(0x1b8),'required':!![]}],'flags':[{'name':a24_0x11df00(0x1c9),'type':a24_0x11df00(0x1c3),'description':a24_0x11df00(0x1a2),'default':![]}],'validate':validateArgs,'execute':execute};
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 +1 @@
1
- const a25_0x20852e=a25_0x26ee;(function(_0x334814,_0x44a376){const _0x2876e2=a25_0x26ee,_0x15243d=_0x334814();while(!![]){try{const _0x4e664e=parseInt(_0x2876e2(0xe5))/0x1+parseInt(_0x2876e2(0xde))/0x2*(parseInt(_0x2876e2(0xeb))/0x3)+-parseInt(_0x2876e2(0xd9))/0x4*(parseInt(_0x2876e2(0xe1))/0x5)+parseInt(_0x2876e2(0xe7))/0x6*(parseInt(_0x2876e2(0xdc))/0x7)+parseInt(_0x2876e2(0xf0))/0x8*(parseInt(_0x2876e2(0xef))/0x9)+-parseInt(_0x2876e2(0xe2))/0xa*(-parseInt(_0x2876e2(0xe9))/0xb)+parseInt(_0x2876e2(0xe0))/0xc*(-parseInt(_0x2876e2(0xee))/0xd);if(_0x4e664e===_0x44a376)break;else _0x15243d['push'](_0x15243d['shift']());}catch(_0x479fc1){_0x15243d['push'](_0x15243d['shift']());}}}(a25_0x4021,0x39f61));function a25_0x4021(){const _0xae6726=['4afifBJ','login','log','2534uFJPth','Clear\x20login\x20session','964gexKql','read','6553164KFcdaE','1947230MIrwdn','50guqMPY','../../auth/auth-server-ui.js','auth','342343GXUiWY','yes','1602uccFrZ','logout','79816dMmspp','✓\x20Logged\x20out','2298BxTiRK','boolean','bool','13yvSVEW','128529HhqUqI','184Krojjl','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','write','Login\x20via\x20browser','!\x20Not\x20logged\x20in'];a25_0x4021=function(){return _0xae6726;};return a25_0x4021();}import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';function a25_0x26ee(_0x278544,_0x55605a){_0x278544=_0x278544-0xd6;const _0x402104=a25_0x4021();let _0x26ee33=_0x402104[_0x278544];return _0x26ee33;}export const authDefinitions=[{'service':a25_0x20852e(0xe4),'command':a25_0x20852e(0xda),'description':a25_0x20852e(0xd7),'risk':a25_0x20852e(0xdf),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x20852e(0xe6),'type':a25_0x20852e(0xec),'description':a25_0x20852e(0xf1),'default':![]}],async 'execute'(_0x4651aa){const _0x1ba51c=a25_0x20852e,{runAuthServer:_0x5c74dd}=await import(_0x1ba51c(0xe3));return await _0x5c74dd({'autoYes':_0x4651aa[_0x1ba51c(0xed)](_0x1ba51c(0xe6)),'nonInteractive':_0x4651aa['nonInteractive']}),{'ok':!![]};}},{'service':a25_0x20852e(0xe4),'command':a25_0x20852e(0xe8),'description':a25_0x20852e(0xdd),'risk':a25_0x20852e(0xd6),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x267bdc){const _0xcee68e=a25_0x20852e;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0xcee68e(0xdb)](_0xcee68e(0xea))):console[_0xcee68e(0xdb)](_0xcee68e(0xd8)),{'ok':!![]};}}];
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 +1 @@
1
- const a26_0x3481d5=a26_0x3994;(function(_0x74e532,_0x233ffc){const _0x441184=a26_0x3994,_0x821d04=_0x74e532();while(!![]){try{const _0x243fa9=parseInt(_0x441184(0x1ac))/0x1+parseInt(_0x441184(0x195))/0x2+parseInt(_0x441184(0x198))/0x3+parseInt(_0x441184(0x1a3))/0x4+parseInt(_0x441184(0x1af))/0x5*(parseInt(_0x441184(0x1e6))/0x6)+parseInt(_0x441184(0x1c5))/0x7+-parseInt(_0x441184(0x1a7))/0x8*(parseInt(_0x441184(0x1bf))/0x9);if(_0x243fa9===_0x233ffc)break;else _0x821d04['push'](_0x821d04['shift']());}catch(_0x2bd525){_0x821d04['push'](_0x821d04['shift']());}}}(a26_0x4f75,0xd8812));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{assertDatasetSupportsLocalDevelopment,filterDbBackedDatasets}from'../../commands/dataset/capability.js';export const bffCreate={'service':a26_0x3481d5(0x1dd),'command':a26_0x3481d5(0x1b8),'description':a26_0x3481d5(0x1a8),'risk':a26_0x3481d5(0x193),'flags':[{'name':a26_0x3481d5(0x1df),'type':a26_0x3481d5(0x1ea),'required':!![],'enum':[a26_0x3481d5(0x1a0),a26_0x3481d5(0x1a5),a26_0x3481d5(0x1ba)],'description':'Script\x20type'},{'name':a26_0x3481d5(0x1ca),'type':a26_0x3481d5(0x1ea),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':a26_0x3481d5(0x1cc),'type':a26_0x3481d5(0x1ea),'description':'Script\x20description'},{'name':a26_0x3481d5(0x199),'type':a26_0x3481d5(0x1ea),'description':a26_0x3481d5(0x1c1)},{'name':a26_0x3481d5(0x1cf),'type':a26_0x3481d5(0x1ea),'description':a26_0x3481d5(0x196)},{'name':'operation-type','type':a26_0x3481d5(0x1ea),'description':a26_0x3481d5(0x1b0)},{'name':a26_0x3481d5(0x1e7),'type':a26_0x3481d5(0x1ea),'description':a26_0x3481d5(0x1e8),'enum':[a26_0x3481d5(0x1db),'after']}],async 'validate'(_0x2e9d9a){const _0x2ab25d=a26_0x3481d5,_0x2f3eb8=_0x2e9d9a[_0x2ab25d(0x1e5)](_0x2ab25d(0x1ca));if(!isValidBffFunctionName(_0x2f3eb8))throw CliErrors[_0x2ab25d(0x1ce)](_0x2ab25d(0x1de)+_0x2f3eb8+_0x2ab25d(0x1c8));},async 'execute'(_0x5770d2){const _0x55264f=a26_0x3481d5,_0x1f3e3d=loadBffProjectConfig(_0x5770d2[_0x55264f(0x1c2)]),_0x33651a=_0x5770d2['str']('type'),_0x111474=_0x5770d2[_0x55264f(0x1e5)](_0x55264f(0x1ca)),_0x59501a=_0x5770d2['str'](_0x55264f(0x1cc))||undefined,_0x355596=_0x33651a===_0x55264f(0x1ba)?await resolveHookOptions(_0x1f3e3d,_0x5770d2):undefined,_0x2a6060=buildFilePath(_0x1f3e3d,_0x33651a,_0x111474,_0x355596);if(await fileExists(_0x2a6060))throw CliErrors[_0x55264f(0x1ce)](_0x55264f(0x1a2)+_0x2a6060);await mkdir(dirname(_0x2a6060),{'recursive':!![]});const _0x1d22b2=generateTemplate(_0x33651a,_0x111474,_0x5770d2['appCode'],_0x59501a,_0x355596);await writeFile(_0x2a6060,_0x1d22b2,_0x55264f(0x19e));const _0x56c4a5={'type':_0x33651a,'name':_0x111474,'path':_0x2a6060};if(_0x59501a)_0x56c4a5[_0x55264f(0x1cc)]=_0x59501a;if(_0x355596){if(_0x355596[_0x55264f(0x199)])_0x56c4a5[_0x55264f(0x199)]=_0x355596['alias'];_0x56c4a5[_0x55264f(0x19d)]=_0x355596[_0x55264f(0x19d)],_0x56c4a5['operationType']=_0x355596[_0x55264f(0x1c7)],_0x56c4a5[_0x55264f(0x1bb)]=_0x355596['functionNode'];}return{'ok':!![],'data':_0x56c4a5,'message':'Created\x20'+_0x33651a+_0x55264f(0x1d3)+_0x111474};}};async function resolveHookOptions(_0x2b31eb,_0x5661be){const _0x178543=a26_0x3481d5,_0x146364=loadAliasMap(_0x5661be[_0x178543(0x1d0)],undefined,resolveApiFilePath(_0x5661be[_0x178543(0x1d0)],_0x5661be['appCode'])),_0x212c44=_0x146364[_0x178543(0x1e1)]>0x0;let _0x175c7c,_0x3b2821,_0x4bc940;const _0xfd4469=_0x5661be[_0x178543(0x1e5)](_0x178543(0x199)),_0x4be1ea=_0x5661be[_0x178543(0x1e5)](_0x178543(0x1cf));if(_0xfd4469){const _0x59db9d=resolveAlias(_0x5661be[_0x178543(0x1d0)],_0xfd4469,undefined,resolveApiFilePath(_0x5661be[_0x178543(0x1d0)],_0x5661be[_0x178543(0x1c2)]));if(!_0x59db9d){const _0x281f98=_0x212c44?'Available\x20aliases:\x20'+_0x146364[_0x178543(0x1cd)](_0x190944=>_0x190944[_0x178543(0x199)])[_0x178543(0x1ae)](',\x20'):_0x178543(0x1c9)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x178543(0x1ce)]('Alias\x20\x22'+_0xfd4469+'\x22\x20not\x20found.\x20'+_0x281f98);}_0x175c7c=_0xfd4469,_0x3b2821=_0x59db9d;}else{if(_0x4be1ea){_0x3b2821=_0x4be1ea;const _0x848b03=_0x146364['find'](_0x2d1f48=>_0x2d1f48[_0x178543(0x19d)]===_0x4be1ea);_0x175c7c=_0x848b03?.[_0x178543(0x199)];}else{if(_0x5661be[_0x178543(0x1e2)])throw CliErrors['validation'](_0x178543(0x1b6));else{if(_0x212c44){const _0x271daf=_0x146364[_0x178543(0x1cd)](_0x3fc31f=>_0x3fc31f[_0x178543(0x199)]+'\x20('+_0x3fc31f[_0x178543(0x19c)]+')'),_0x447b41=await promptSelect(_0x178543(0x1c3),_0x271daf),_0x5fd1f4=_0x146364[_0x447b41];if(!_0x5fd1f4)throw CliErrors[_0x178543(0x1ce)](_0x178543(0x1d2));_0x175c7c=_0x5fd1f4[_0x178543(0x199)],_0x3b2821=_0x5fd1f4[_0x178543(0x19d)];}else{const _0x545704=await listDatasets(_0x5661be['appCode']),_0x3a5703=filterDbBackedDatasets(_0x545704);if(_0x3a5703['length']===0x0)throw CliErrors[_0x178543(0x1ce)](_0x545704[_0x178543(0x1e1)]===0x0?_0x178543(0x1c0):_0x178543(0x1d6));const _0x1ba5e7=_0x3a5703['map'](_0x5cee2d=>_0x5cee2d[_0x178543(0x1ca)]+'\x20('+_0x5cee2d[_0x178543(0x1b1)]+')'),_0x3b706b=await promptSelect(_0x178543(0x1c3),_0x1ba5e7),_0x30446c=_0x3a5703[_0x3b706b];if(!_0x30446c)throw CliErrors[_0x178543(0x1ce)](_0x178543(0x1d2));_0x3b2821=_0x30446c[_0x178543(0x1b1)],_0x175c7c=undefined;}}}}const _0xb9c77d=await listDatasets(_0x5661be[_0x178543(0x1c2)]),_0x1a0f52=_0xb9c77d[_0x178543(0x1da)](_0x2d24df=>_0x2d24df[_0x178543(0x1b1)]===_0x3b2821);if(!_0x1a0f52)throw CliErrors[_0x178543(0x1ce)](_0x178543(0x1c6)+_0x3b2821+_0x178543(0x1bc)+(_0x175c7c?_0x178543(0x1aa)+CLI_BIN_NAME+_0x178543(0x1b5):''));assertDatasetSupportsLocalDevelopment(_0x1a0f52,_0x178543(0x1cb)),_0x4bc940=_0x1a0f52['id'];const _0x21209e=_0x175c7c??_0x3b2821,_0x5b4c9b=await listBffDatasetOperations(_0x5661be[_0x178543(0x1c2)],_0x4bc940),_0x2b8c2b=_0x5b4c9b?Object[_0x178543(0x194)](_0x5b4c9b):[];if(_0x2b8c2b[_0x178543(0x1e1)]===0x0)throw CliErrors['validation']('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x21209e+'.');let _0x3f3514;const _0x11dfd9=_0x5661be[_0x178543(0x1e5)](_0x178543(0x1c4));if(_0x11dfd9){if(!_0x2b8c2b['includes'](_0x11dfd9))throw CliErrors[_0x178543(0x1ce)](_0x178543(0x1a1)+_0x11dfd9+_0x178543(0x197)+_0x21209e+'.\x20'+(_0x178543(0x1b4)+_0x2b8c2b[_0x178543(0x1ae)](',\x20')));_0x3f3514=_0x11dfd9;}else{if(_0x5661be[_0x178543(0x1e2)])throw CliErrors[_0x178543(0x1ce)](_0x178543(0x1d9));const _0x56d7e4=await promptSelect(_0x178543(0x1ad),_0x2b8c2b);_0x3f3514=_0x2b8c2b[_0x56d7e4]??_0x2b8c2b[0x0];}let _0x104902=normalizeHookFunctionNode(_0x5661be[_0x178543(0x1e5)](_0x178543(0x1e7)));if(!_0x104902){if(_0x5661be['str'](_0x178543(0x1e7)))throw CliErrors[_0x178543(0x1ce)](_0x178543(0x1b2));if(_0x5661be[_0x178543(0x1e2)])throw CliErrors['validation'](_0x178543(0x192));const _0x2780d5=await promptSelect('Select\x20trigger\x20node:',['before',_0x178543(0x1e3)]);_0x104902=['before',_0x178543(0x1e3)][_0x2780d5]??_0x178543(0x1db);}return{'alias':_0x175c7c,'datasetCode':_0x3b2821,'datasetId':_0x4bc940,'operationType':_0x3f3514,'functionNode':_0x104902};}async function promptSelect(_0x1f8be1,_0x42c9c7){const _0x1a04a2=a26_0x3481d5;if(_0x42c9c7[_0x1a04a2(0x1e1)]===0x1)return 0x0;for(const [_0x46d302,_0x33d3dd]of _0x42c9c7[_0x1a04a2(0x1e9)]()){process[_0x1a04a2(0x1dc)][_0x1a04a2(0x193)]('\x20\x20'+(_0x46d302+0x1)+'.\x20'+_0x33d3dd+'\x0a');}const _0x531d0b=createInterface({'input':process[_0x1a04a2(0x1d8)],'output':process[_0x1a04a2(0x1dc)]});while(!![]){const _0x646752=await new Promise(_0x421153=>{const _0x1b2bdf=_0x1a04a2;_0x531d0b[_0x1b2bdf(0x1a9)](_0x1f8be1+'\x20',_0x421153);}),_0x28a3d5=Number[_0x1a04a2(0x1bd)](_0x646752[_0x1a04a2(0x1b3)](),0xa);if(Number['isInteger'](_0x28a3d5)&&_0x28a3d5>=0x1&&_0x28a3d5<=_0x42c9c7['length'])return _0x531d0b[_0x1a04a2(0x1b7)](),_0x28a3d5-0x1;process[_0x1a04a2(0x1dc)][_0x1a04a2(0x193)](_0x1a04a2(0x1e0)+_0x42c9c7['length']+'.\x0a');}}function buildFilePath(_0x900d88,_0x5ce0c8,_0x3eb4db,_0x530189){const _0x4899ad=a26_0x3481d5;if(_0x5ce0c8===_0x4899ad(0x1ba)){if(!_0x530189)throw CliErrors['validation'](_0x4899ad(0x1d5));const _0x365aeb=_0x530189[_0x4899ad(0x199)]??_0x530189['datasetCode'];return join(_0x900d88['scriptsRootDir'],_0x4899ad(0x1ba),_0x365aeb,_0x530189['operationType'],_0x530189['functionNode'],_0x3eb4db+'.js');}return join(_0x900d88['scriptsRootDir'],_0x5ce0c8,_0x3eb4db+_0x4899ad(0x1a6));}function a26_0x3994(_0x3efb50,_0x3876bb){_0x3efb50=_0x3efb50-0x192;const _0x4f75f5=a26_0x4f75();let _0x399401=_0x4f75f5[_0x3efb50];return _0x399401;}export function generateTemplate(_0xe51e4a,_0x37b3f6,_0x43ac03,_0x3cd130,_0x346b19){const _0x4d9970=a26_0x3481d5,_0x52882d=_0x3cd130?.['trim']()||'TODO:\x20add\x20script\x20description';if(_0xe51e4a===_0x4d9970(0x1a0))return _0x4d9970(0x1d4)+_0x52882d+'\x0a\x20*\x20[脚本名称]\x20'+_0x37b3f6+_0x4d9970(0x19a)+_0x37b3f6+'.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'+_0x37b3f6+_0x4d9970(0x1e4);if(_0xe51e4a===_0x4d9970(0x1a5))return _0x4d9970(0x19f)+_0x52882d+_0x4d9970(0x1d1)+_0x43ac03+'/'+_0x37b3f6+_0x4d9970(0x1a4)+_0x37b3f6+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(!_0x346b19)throw CliErrors['validation'](_0x4d9970(0x1ab));return _0x4d9970(0x19b)+_0x52882d+_0x4d9970(0x1be)+_0x43ac03+'/'+_0x346b19['datasetCode']+'/'+_0x346b19['operationType']+_0x4d9970(0x1b9)+_0x346b19[_0x4d9970(0x1bb)]+_0x4d9970(0x1d7)+_0x37b3f6+_0x4d9970(0x1e4);}function a26_0x4f75(){const _0x7850f5=['description','map','validation','datasetcode','apiDir','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','Invalid\x20dataset\x20selection.','\x20function:\x20','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','HOOK\x20requires\x20alias/operation/node\x20options.','No\x20DB\x20table\x20datasets\x20found\x20for\x20this\x20app.\x20METADATA\x20datasets\x20cannot\x20be\x20used\x20for\x20BFF\x20HOOK\x20development\x20because\x20the\x20workflow\x20depends\x20on\x20SQL\x20execution.','\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','stdin','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','find','before','stderr','bff','Invalid\x20function\x20name\x20\x22','type','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','length','nonInteractive','after','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','str','6GxSjez','function-node','Trigger\x20node\x20(HOOK\x20only)','entries','string','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','write','keys','1472176oPFqBD','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','\x22\x20not\x20found\x20for\x20dataset\x20','918291cGurkH','alias','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','tableName','datasetCode','utf8','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','COMMON','Operation\x20type\x20\x22','File\x20already\x20exists:\x20','5017864ltxjHq','\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','ENDPOINT','.js','8tSrpUK','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','question','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','1749757tzfvua','Select\x20operation\x20type:','join','1849385PYatpc','Operation\x20type\x20(HOOK\x20only)','code','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','trim','Available:\x20','\x20api\x20pull`\x20to\x20refresh.','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','close','create','\x0a\x20*\x20[触发节点]\x20','HOOK','functionNode','\x22.\x20','parseInt','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','35091747yYybwN','No\x20datasets\x20found\x20for\x20this\x20app.','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','appCode','Select\x20dataset:','operation-type','2587200aEQWMH','Dataset\x20not\x20found\x20for\x20code\x20\x22','operationType','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','No\x20api.ts\x20found.\x20Run\x20`','name','BFF\x20HOOK'];a26_0x4f75=function(){return _0x7850f5;};return a26_0x4f75();}
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 +1 @@
1
- const a27_0x293986=a27_0x2aa9;(function(_0x4d304b,_0x3dbacf){const _0x175a5c=a27_0x2aa9,_0x1775d5=_0x4d304b();while(!![]){try{const _0x3a7d62=-parseInt(_0x175a5c(0x148))/0x1+parseInt(_0x175a5c(0x137))/0x2+parseInt(_0x175a5c(0x149))/0x3+parseInt(_0x175a5c(0x12b))/0x4+parseInt(_0x175a5c(0x131))/0x5+parseInt(_0x175a5c(0x120))/0x6*(-parseInt(_0x175a5c(0x14b))/0x7)+-parseInt(_0x175a5c(0x124))/0x8*(parseInt(_0x175a5c(0x121))/0x9);if(_0x3a7d62===_0x3dbacf)break;else _0x1775d5['push'](_0x1775d5['shift']());}catch(_0x12919e){_0x1775d5['push'](_0x1775d5['shift']());}}}(a27_0x1092,0x3173f));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':a27_0x293986(0x147),'command':a27_0x293986(0x135),'description':a27_0x293986(0x12f),'risk':'high-risk-write','flags':[{'name':'target','type':'string','required':!![],'description':a27_0x293986(0x13e)}],async 'validate'(_0x3349e2){const _0x37ac2b=a27_0x293986,_0x53f104=loadBffProjectConfig(_0x3349e2[_0x37ac2b(0x145)]),_0x153210=await readBffLockFile(_0x53f104[_0x37ac2b(0x133)]);if(!_0x153210)throw CliErrors[_0x37ac2b(0x14d)]('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x35b88d){const _0x4f87d0=a27_0x293986,_0x349e02=loadBffProjectConfig(_0x35b88d['appCode']),_0x324ffd=await readBffLockFile(_0x349e02[_0x4f87d0(0x133)]);if(!_0x324ffd)throw CliErrors[_0x4f87d0(0x14d)](_0x4f87d0(0x129));const {appLock:_0x48e1c9}=ensureLockScope(_0x324ffd,_0x35b88d['appCode'],_0x349e02[_0x4f87d0(0x130)],_0x4f87d0(0x135)),_0x4bd39f=_0x35b88d['str']('target'),_0x4eb273=Object[_0x4f87d0(0x12c)](_0x48e1c9[_0x4f87d0(0x13c)]),_0x5b3541=resolveDeleteTarget(_0x4bd39f,_0x4eb273),_0x3ce1a9=_0x48e1c9[_0x4f87d0(0x13c)][_0x5b3541];if(!_0x3ce1a9)throw CliErrors[_0x4f87d0(0x14d)](_0x4f87d0(0x123)+_0x5b3541+'\x22.');const _0x4f781e=resolveLocalFilePathFromLockKey(_0x349e02,_0x5b3541),_0x3343a5=relative(_0x349e02[_0x4f87d0(0x11e)],_0x4f781e),_0x221fe3=join(_0x349e02[_0x4f87d0(0x12d)],_0x4f87d0(0x126),_0x3343a5);return{'method':_0x4f87d0(0x142),'url':_0x4f87d0(0x11d),'body':{'appCode':_0x35b88d[_0x4f87d0(0x145)],'target':_0x5b3541,'remoteId':_0x3ce1a9[_0x4f87d0(0x134)],'localFilePath':_0x4f781e,'trashedPath':_0x221fe3},'description':_0x4f87d0(0x13d)+_0x5b3541+_0x4f87d0(0x127)};},async 'execute'(_0x2a362d){const _0x365bcd=a27_0x293986,_0x259149=loadBffProjectConfig(_0x2a362d[_0x365bcd(0x145)]),_0xaef5c9=await readBffLockFile(_0x259149['lockFilePath']);if(!_0xaef5c9)throw CliErrors['validation'](_0x365bcd(0x129));const {lockData:_0x2d14d5,appLock:_0x29fe10}=ensureLockScope(_0xaef5c9,_0x2a362d[_0x365bcd(0x145)],_0x259149['scriptsRoot'],_0x365bcd(0x135)),_0x4d7874=JSON[_0x365bcd(0x138)](JSON[_0x365bcd(0x144)](_0x2d14d5)),_0x409c09=_0x4d7874['apps'][_0x2a362d['appCode']];if(!_0x409c09)throw new Error(_0x365bcd(0x136)+_0x2a362d['appCode']+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x3e2698=_0x2a362d['str'](_0x365bcd(0x11f)),_0x4e4d2b=Object[_0x365bcd(0x12c)](_0x409c09[_0x365bcd(0x13c)]),_0x30d12f=resolveDeleteTarget(_0x3e2698,_0x4e4d2b),_0x3c8f9a=_0x409c09[_0x365bcd(0x13c)][_0x30d12f];if(!_0x3c8f9a)throw CliErrors[_0x365bcd(0x14d)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x30d12f+'\x22.');await deleteBffScript(_0x3c8f9a[_0x365bcd(0x134)]),delete _0x409c09[_0x365bcd(0x13c)][_0x30d12f],_0x409c09['lastSync']=new Date()[_0x365bcd(0x12a)](),await writeBffLockFile(_0x259149['lockFilePath'],_0x4d7874);const _0x2bdf28=resolveLocalFilePathFromLockKey(_0x259149,_0x30d12f);let _0x2f3c93;await fileExists(_0x2bdf28)&&(_0x2f3c93=await moveToTrash(_0x259149[_0x365bcd(0x11e)],_0x259149[_0x365bcd(0x12d)],_0x2bdf28),await cleanupEmptyDirectories(dirname(_0x2bdf28),_0x259149[_0x365bcd(0x132)]));await waitForDeleteSettlement(_0x259149[_0x365bcd(0x133)],_0x2a362d[_0x365bcd(0x145)],_0x30d12f,_0x2bdf28),await sleep(0x96);const _0x365027={'deleted':_0x30d12f,'remoteId':_0x3c8f9a[_0x365bcd(0x134)]};if(_0x2f3c93)_0x365027['trashedTo']=_0x2f3c93;return{'ok':!![],'data':_0x365027,'message':_0x365bcd(0x13f)+_0x30d12f+(_0x2f3c93?_0x365bcd(0x139):'')};}};function a27_0x2aa9(_0x1ae035,_0x582f2c){_0x1ae035=_0x1ae035-0x11d;const _0x109242=a27_0x1092();let _0x2aa9ba=_0x109242[_0x1ae035];return _0x2aa9ba;}function resolveDeleteTarget(_0x5c26e9,_0x1e1913){const _0x154c05=a27_0x293986;if(_0x5c26e9[_0x154c05(0x14a)]('/')){const _0x689e1f=_0x1e1913['find'](_0x10f13a=>_0x10f13a===_0x5c26e9);if(!_0x689e1f)throw CliErrors['validation']('Function\x20not\x20found:\x20'+_0x5c26e9);return _0x689e1f;}const _0x5f3854=_0x1e1913[_0x154c05(0x146)](_0x32c2ce=>_0x32c2ce[_0x154c05(0x125)]('/')['at'](-0x1)===_0x5c26e9);if(_0x5f3854[_0x154c05(0x13a)]===0x0)throw CliErrors[_0x154c05(0x14d)]('Function\x20not\x20found:\x20'+_0x5c26e9);if(_0x5f3854[_0x154c05(0x13a)]>0x1)throw CliErrors['validation'](_0x154c05(0x122)+_0x5c26e9+_0x154c05(0x12e)+_0x5f3854[_0x154c05(0x141)](_0x354b00=>_0x154c05(0x13b)+_0x354b00)[_0x154c05(0x14c)]('\x0a'));return _0x5f3854[0x0];}function a27_0x1092(){const _0x111ed5=['parse','\x20(local\x20file\x20moved\x20to\x20trash)','length','\x20\x20-\x20','functions','Would\x20delete\x20','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','Deleted\x20','apps','map','POST','Local\x20delete\x20not\x20settled\x20for\x20','stringify','appCode','filter','bff','243682jQaXWX','937752ZlIqxg','includes','91cnnbTN','join','validation','/api/management/library/scripts/delete','projectRoot','target','67476iQGOpv','297dCRUBk','Multiple\x20functions\x20match\x20\x22','No\x20lock\x20entry\x20found\x20for\x20\x22','87776LCuBLl','split','<timestamp>','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','replace','BFF\x20lock\x20file\x20not\x20found.','toISOString','877872jWJZkI','keys','trashDir','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','scriptsRoot','838310nflDkM','scriptsRootDir','lockFilePath','remoteId','delete','Lock\x20scope\x20for\x20app\x20\x22','509602RBYCiv'];a27_0x1092=function(){return _0x111ed5;};return a27_0x1092();}async function moveToTrash(_0x1a5219,_0x25bcbc,_0x30e6c0){const _0x509c63=a27_0x293986,_0x4b08f3=new Date()[_0x509c63(0x12a)]()[_0x509c63(0x128)](/[:.]/g,'-'),_0x13af35=relative(_0x1a5219,_0x30e6c0),_0x217f62=join(_0x25bcbc,_0x4b08f3,_0x13af35);return await mkdir(dirname(_0x217f62),{'recursive':!![]}),await rename(_0x30e6c0,_0x217f62),_0x217f62;}async function cleanupEmptyDirectories(_0x4b4e46,_0x16903b){const _0x1f8a19=a27_0x293986;let _0xc9a6c5=resolve(_0x4b4e46);const _0x150890=resolve(_0x16903b);while(_0xc9a6c5['startsWith'](''+_0x150890+sep)||_0xc9a6c5===_0x150890){if(_0xc9a6c5===_0x150890)return;try{const _0x615a7d=await readdir(_0xc9a6c5);if(_0x615a7d[_0x1f8a19(0x13a)]>0x0)return;await rmdir(_0xc9a6c5);}catch{return;}_0xc9a6c5=dirname(_0xc9a6c5);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x3154bd,_0x5d2dd0,_0xe63714,_0xe558){const _0x3711a1=a27_0x293986;for(let _0x309f66=0x0;_0x309f66<DELETE_SETTLE_RETRY_COUNT;_0x309f66+=0x1){const _0x403e7a=await readBffLockFile(_0x3154bd),_0x13fe7c=!!_0x403e7a?.[_0x3711a1(0x140)]?.[_0x5d2dd0]?.['functions']?.[_0xe63714],_0x20ce6a=await fileExists(_0xe558);if(!_0x13fe7c&&!_0x20ce6a)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x3711a1(0x143)+_0xe63714+'.');}
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 +1 @@
1
- const a28_0x542d09=a28_0x3276;function a28_0x3276(_0x5d922d,_0x3b6682){_0x5d922d=_0x5d922d-0x197;const _0x5dc689=a28_0x5dc6();let _0x3276b9=_0x5dc689[_0x5d922d];return _0x3276b9;}(function(_0x425325,_0x355c26){const _0x63bbe7=a28_0x3276,_0x16fc13=_0x425325();while(!![]){try{const _0x2e1656=-parseInt(_0x63bbe7(0x19c))/0x1+-parseInt(_0x63bbe7(0x1a4))/0x2+-parseInt(_0x63bbe7(0x1ab))/0x3*(parseInt(_0x63bbe7(0x198))/0x4)+-parseInt(_0x63bbe7(0x1a6))/0x5*(-parseInt(_0x63bbe7(0x1a7))/0x6)+-parseInt(_0x63bbe7(0x1a0))/0x7+parseInt(_0x63bbe7(0x1a3))/0x8+parseInt(_0x63bbe7(0x19d))/0x9;if(_0x2e1656===_0x355c26)break;else _0x16fc13['push'](_0x16fc13['shift']());}catch(_0x2f0370){_0x16fc13['push'](_0x16fc13['shift']());}}}(a28_0x5dc6,0x30cff));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x542d09(0x197),'command':a28_0x542d09(0x19f),'description':a28_0x542d09(0x1a8),'risk':a28_0x542d09(0x1a2),'flags':[{'name':'id','type':'number','required':!![],'description':a28_0x542d09(0x1a9)},{'name':'verbose','type':a28_0x542d09(0x1a1),'description':a28_0x542d09(0x19b)}],async 'execute'(_0x738fa){const _0x3e87ed=a28_0x542d09,_0x1077a6=await getBffScriptInfo(_0x738fa[_0x3e87ed(0x19a)]('id')),_0x292f23=_0x738fa[_0x3e87ed(0x199)]('verbose');if(_0x292f23)return{'ok':!![],'data':_0x1077a6};return{'ok':!![],'data':{'id':_0x1077a6['id'],'appCode':_0x1077a6['appCode'],'scriptType':_0x1077a6['scriptType'],'description':_0x1077a6[_0x3e87ed(0x19e)]||'(none)','createdTime':_0x1077a6['createdTime']??'','updatedTime':_0x1077a6[_0x3e87ed(0x1a5)]??'','scriptContent':_0x1077a6[_0x3e87ed(0x1aa)]??''}};}};function a28_0x5dc6(){const _0x3d7e68=['bool','num','Return\x20full\x20raw\x20script\x20object','312032VdWQdN','5117652kcubQp','description','detail','2701293IBPdpX','boolean','read','3196840UwLvrs','266992dCWKVu','updatedTime','175hsgVxg','13242IAljdj','Get\x20BFF\x20script\x20details\x20by\x20ID','Script\x20ID','scriptContent','21174unXosO','bff','8fQVemh'];a28_0x5dc6=function(){return _0x3d7e68;};return a28_0x5dc6();}
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 +1 @@
1
- function a29_0xfd7e(){const _0x20841a=['105984dMIhQH','1009528ZVxhtC','1114002Ktsfwq','2216920lWTLpC','266plbYEi','1777604EMvYsU','15199ohHhXs','10OjXciX','1501428PBQpTH'];a29_0xfd7e=function(){return _0x20841a;};return a29_0xfd7e();}function a29_0xc25a(_0x4796f5,_0xd8edf2){_0x4796f5=_0x4796f5-0x14e;const _0xfd7ecf=a29_0xfd7e();let _0xc25a05=_0xfd7ecf[_0x4796f5];return _0xc25a05;}(function(_0x14d703,_0x2f9c86){const _0x1b4843=a29_0xc25a,_0x57e83e=_0x14d703();while(!![]){try{const _0x117ab6=parseInt(_0x1b4843(0x14f))/0x1*(-parseInt(_0x1b4843(0x150))/0x2)+parseInt(_0x1b4843(0x151))/0x3+parseInt(_0x1b4843(0x14e))/0x4+parseInt(_0x1b4843(0x155))/0x5+parseInt(_0x1b4843(0x152))/0x6*(-parseInt(_0x1b4843(0x156))/0x7)+-parseInt(_0x1b4843(0x153))/0x8+-parseInt(_0x1b4843(0x154))/0x9;if(_0x117ab6===_0x2f9c86)break;else _0x57e83e['push'](_0x57e83e['shift']());}catch(_0x38b31a){_0x57e83e['push'](_0x57e83e['shift']());}}}(a29_0xfd7e,0x5f799));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
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 +1 @@
1
- const a30_0xd61fd5=a30_0x138c;(function(_0x3b439d,_0x55a1c1){const _0x111fde=a30_0x138c,_0x53bf6c=_0x3b439d();while(!![]){try{const _0x5b3667=-parseInt(_0x111fde(0x1bc))/0x1*(parseInt(_0x111fde(0x1cf))/0x2)+parseInt(_0x111fde(0x1d3))/0x3+-parseInt(_0x111fde(0x1c4))/0x4+-parseInt(_0x111fde(0x1c1))/0x5+parseInt(_0x111fde(0x1c9))/0x6+-parseInt(_0x111fde(0x1c7))/0x7+parseInt(_0x111fde(0x1ce))/0x8;if(_0x5b3667===_0x55a1c1)break;else _0x53bf6c['push'](_0x53bf6c['shift']());}catch(_0x4bbfbb){_0x53bf6c['push'](_0x53bf6c['shift']());}}}(a30_0x5114,0xe4ba2));import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0xd61fd5(0x1d0),'command':a30_0xd61fd5(0x1d2),'description':a30_0xd61fd5(0x1c8),'risk':a30_0xd61fd5(0x1bf),'flags':[{'name':a30_0xd61fd5(0x1d1),'type':a30_0xd61fd5(0x1cc),'description':a30_0xd61fd5(0x1be),'default':a30_0xd61fd5(0x1d4),'enum':[a30_0xd61fd5(0x1d4),a30_0xd61fd5(0x1bd)]},{'name':a30_0xd61fd5(0x1c2),'type':'string','description':a30_0xd61fd5(0x1bb)},{'name':a30_0xd61fd5(0x1c3),'type':'boolean','description':a30_0xd61fd5(0x1cb)}],async 'execute'(_0x2c5fbb){const _0x120538=a30_0xd61fd5,_0x4920c3=await listBffScripts(_0x2c5fbb[_0x120538(0x1ba)],_0x2c5fbb[_0x120538(0x1cd)]('type'),{'scriptName':_0x2c5fbb[_0x120538(0x1cd)](_0x120538(0x1c2))||undefined}),_0x1aa0fe=_0x2c5fbb[_0x120538(0x1c6)](_0x120538(0x1c3));return{'ok':!![],'data':_0x1aa0fe?_0x4920c3:_0x4920c3['map'](_0x1ac06a=>({'id':_0x1ac06a['id'],'functionName':_0x1ac06a[_0x120538(0x1c0)]??'','description':_0x1ac06a['description']||'(unnamed)','scriptType':_0x1ac06a[_0x120538(0x1c5)]})),'message':_0x4920c3[_0x120538(0x1ca)]===0x0?'No\x20BFF\x20scripts\x20found.':undefined};}};function a30_0x138c(_0x2d1163,_0x4ae064){_0x2d1163=_0x2d1163-0x1ba;const _0x511466=a30_0x5114();let _0x138cc1=_0x511466[_0x2d1163];return _0x138cc1;}function a30_0x5114(){const _0x490da2=['3797185FyPhAG','name','verbose','5715384meDvgu','scriptType','bool','7545447ZtCGWa','List\x20BFF\x20scripts','7188270WlmKAd','length','Return\x20full\x20script\x20objects','string','str','24389296vTjJfm','1160164VNvTbj','bff','type','list','1609335BMGPhC','ENDPOINT','appCode','Filter\x20by\x20script\x20name','1lgnqIE','COMMON','Script\x20type\x20filter','read','functionName'];a30_0x5114=function(){return _0x490da2;};return a30_0x5114();}
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 +1 @@
1
- const a31_0x4af5c8=a31_0x1165;(function(_0x509c4b,_0x2e7581){const _0x484ac2=a31_0x1165,_0x532e42=_0x509c4b();while(!![]){try{const _0x4784dc=parseInt(_0x484ac2(0x10d))/0x1*(parseInt(_0x484ac2(0x127))/0x2)+-parseInt(_0x484ac2(0x115))/0x3+parseInt(_0x484ac2(0x14b))/0x4+parseInt(_0x484ac2(0x12d))/0x5*(-parseInt(_0x484ac2(0x128))/0x6)+-parseInt(_0x484ac2(0x138))/0x7+parseInt(_0x484ac2(0x122))/0x8+parseInt(_0x484ac2(0x14a))/0x9;if(_0x4784dc===_0x2e7581)break;else _0x532e42['push'](_0x532e42['shift']());}catch(_0x5a3084){_0x532e42['push'](_0x532e42['shift']());}}}(a31_0x3b28,0x3de56));import{createInterface}from'node:readline';function a31_0x1165(_0x307b7f,_0x295f8a){_0x307b7f=_0x307b7f-0x10a;const _0x3b2898=a31_0x3b28();let _0x116576=_0x3b2898[_0x307b7f];return _0x116576;}import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a31_0x3b28(){const _0x1c084d=['761432FyAsRJ','operationType','lockKey','functionNode','\x22\x20not\x20found\x20after\x20ensureLockScope.','Remote\x20script\x20missing\x20id.','No\x20remote\x20BFF\x20scripts\x20found.','apiDir','write','unresolvable\x20target\x20path','type','GET','1EKJxhD','str','appCode','stringify','yes','\x20skipped,\x20','force','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','785625oYXFOn','/api/management/library/scripts/list?appCode=','\x20remote\x20BFF\x20script(s)\x20for\x20pull','validation','Pull\x20only\x20this\x20script\x20type','would_pull','scriptContent','filePath','bff','functions','stderr','lockFilePath','hash','2843672VhcCWV','conflict','pull','Force\x20pull\x20cancelled.','nonInteractive','285218vrMiuq','18fqsXMC','message','question','parse','boolean','399995wWctSu','Would\x20inspect\x20','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','Remote\x20script\x20missing\x20content.','utf8','alias','push','all','toISOString','Pull\x20complete:\x20','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','3544198INMvUY','lastSync','COMMON','scriptType','functionName','string','length','\x20failed','skipped','ENDPOINT','apps','HOOK','includes','toLowerCase','version','cancelled','hookLocation','scriptsRoot','5159574uNjTmN'];a31_0x3b28=function(){return _0x1c084d;};return a31_0x3b28();}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_0x4af5c8(0x11d),'command':a31_0x4af5c8(0x124),'description':a31_0x4af5c8(0x114),'risk':a31_0x4af5c8(0x153),'flags':[{'name':a31_0x4af5c8(0x10b),'type':a31_0x4af5c8(0x13d),'description':a31_0x4af5c8(0x119),'enum':[a31_0x4af5c8(0x13a),a31_0x4af5c8(0x141),'HOOK']},{'name':a31_0x4af5c8(0x113),'type':a31_0x4af5c8(0x12c),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x5a01fb){const _0x243764=a31_0x4af5c8,_0x1bac40=loadBffProjectConfig(_0x5a01fb[_0x243764(0x10f)]),_0x430144=await readBffLockFile(_0x1bac40[_0x243764(0x120)]),{appLock:_0x536dd4}=ensureLockScope(_0x430144??createEmptyBffLock(),_0x5a01fb[_0x243764(0x10f)],_0x1bac40[_0x243764(0x149)],'pull'),_0x543fd5=normalizeBffType(_0x5a01fb[_0x243764(0x10e)](_0x243764(0x10b)))??undefined,_0x5a6d85=buildDatasetCodeToAliasMap(_0x5a01fb[_0x243764(0x152)],_0x5a01fb[_0x243764(0x10f)]),[_0x313716,_0x41bf54]=await Promise[_0x243764(0x134)]([listBffScripts(_0x5a01fb[_0x243764(0x10f)],_0x543fd5),getBffScriptStatistics(_0x5a01fb[_0x243764(0x10f)])]),_0x26614d=createHookLocationMap(_0x41bf54),_0x3654e7=[];for(const _0x1c63cc of _0x313716){const _0x31c8c1=resolveRemoteScriptTarget(_0x1bac40,_0x1c63cc,_0x26614d,_0x536dd4['functions'],_0x5a6d85);if(!_0x31c8c1){_0x3654e7[_0x243764(0x133)]({'scriptType':_0x1c63cc[_0x243764(0x13b)],'functionName':_0x1c63cc[_0x243764(0x13c)]??'','status':_0x243764(0x140),'reason':_0x243764(0x10a)});continue;}const _0x520159=_0x536dd4[_0x243764(0x11e)][_0x31c8c1[_0x243764(0x14d)]],_0x3996b3=_0x1c63cc[_0x243764(0x11b)]!=null?computeContentHash(_0x1c63cc['scriptContent']):undefined,_0xe033c2=await hasUnsyncedLocalChanges(_0x31c8c1[_0x243764(0x11c)],_0x520159,_0x3996b3);_0x3654e7[_0x243764(0x133)]({'lockKey':_0x31c8c1[_0x243764(0x14d)],'filePath':_0x31c8c1[_0x243764(0x11c)],'remoteId':_0x1c63cc['id']??null,'status':_0xe033c2?_0x243764(0x123):_0x243764(0x11a)});}return{'method':_0x243764(0x10c),'url':_0x243764(0x116)+_0x5a01fb['appCode']+(_0x543fd5?'&type='+_0x543fd5:''),'body':{'appCode':_0x5a01fb[_0x243764(0x10f)],'filterType':_0x543fd5??null,'files':_0x3654e7},'description':_0x243764(0x12e)+_0x3654e7[_0x243764(0x13e)]+_0x243764(0x117)};},async 'execute'(_0xd175b){const _0x28e2ff=a31_0x4af5c8,_0x5b14f7=loadBffProjectConfig(_0xd175b[_0x28e2ff(0x10f)]),_0x20a07b=await readBffLockFile(_0x5b14f7[_0x28e2ff(0x120)]),{lockData:_0x13a924,appLock:_0x4940b7}=ensureLockScope(_0x20a07b??createEmptyBffLock(),_0xd175b[_0x28e2ff(0x10f)],_0x5b14f7[_0x28e2ff(0x149)],'pull'),_0x1185f2=normalizeBffType(_0xd175b[_0x28e2ff(0x10e)](_0x28e2ff(0x10b)))??undefined;if(_0xd175b[_0x28e2ff(0x10e)]('type')&&!_0x1185f2)throw CliErrors[_0x28e2ff(0x118)](_0x28e2ff(0x137));const [_0x1cff8c,_0x437b42]=await Promise[_0x28e2ff(0x134)]([listBffScripts(_0xd175b[_0x28e2ff(0x10f)],_0x1185f2),getBffScriptStatistics(_0xd175b['appCode'])]);if(_0x1cff8c[_0x28e2ff(0x13e)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x28e2ff(0x151)};const _0x3825ad=_0xd175b['bool'](_0x28e2ff(0x113));if(_0x3825ad&&!_0xd175b[_0x28e2ff(0x126)]){const _0xd3ec93=await confirmForce();if(!_0xd3ec93)throw CliErrors[_0x28e2ff(0x147)](_0x28e2ff(0x125));}if(_0x3825ad&&_0xd175b[_0x28e2ff(0x126)]){}const _0x365945=buildDatasetCodeToAliasMap(_0xd175b[_0x28e2ff(0x152)],_0xd175b['appCode']),_0x365643=createHookLocationMap(_0x437b42),_0x12f3e6=JSON[_0x28e2ff(0x12b)](JSON[_0x28e2ff(0x110)](_0x13a924)),_0x5d3bae=_0xd175b[_0x28e2ff(0x10f)],_0x1d38f8=_0x12f3e6[_0x28e2ff(0x142)][_0x5d3bae];if(!_0x1d38f8)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x5d3bae+_0x28e2ff(0x14f));const _0x254f19=[],_0x3e4117=[],_0x162142=[];for(const _0x5b9952 of _0x1cff8c){const _0x31f835=resolveRemoteScriptTarget(_0x5b14f7,_0x5b9952,_0x365643,_0x4940b7[_0x28e2ff(0x11e)],_0x365945);if(!_0x31f835){_0x3e4117[_0x28e2ff(0x133)]({'lockKey':_0x5b9952[_0x28e2ff(0x13b)]+'/'+_0x5b9952[_0x28e2ff(0x13c)],'reason':_0x28e2ff(0x10a)});continue;}const _0x171faf=_0x4940b7[_0x28e2ff(0x11e)][_0x31f835[_0x28e2ff(0x14d)]];try{if(!_0x5b9952['id'])throw new Error(_0x28e2ff(0x150));if(_0x5b9952[_0x28e2ff(0x11b)]==null)throw new Error(_0x28e2ff(0x130));const _0x12a110=_0x5b9952[_0x28e2ff(0x11b)],_0x14605d=computeContentHash(_0x12a110);if(!_0x3825ad){const _0x3844a9=await hasUnsyncedLocalChanges(_0x31f835[_0x28e2ff(0x11c)],_0x171faf,_0x14605d);if(_0x3844a9){_0x3e4117[_0x28e2ff(0x133)]({'lockKey':_0x31f835[_0x28e2ff(0x14d)],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x31f835[_0x28e2ff(0x11c)]),await writeFile(_0x31f835['filePath'],_0x12a110,_0x28e2ff(0x131));const _0x376644={'hash':_0x14605d,'remoteId':_0x5b9952['id'],'version':_0x5b9952[_0x28e2ff(0x146)]};_0x31f835['type']===_0x28e2ff(0x143)&&_0x31f835['hookLocation']&&(_0x376644[_0x28e2ff(0x132)]=_0x31f835[_0x28e2ff(0x148)]['alias'],_0x376644['datasetCode']=_0x31f835[_0x28e2ff(0x148)]['datasetCode'],_0x376644[_0x28e2ff(0x14c)]=_0x31f835[_0x28e2ff(0x148)][_0x28e2ff(0x14c)],_0x376644['functionNode']=_0x31f835[_0x28e2ff(0x148)][_0x28e2ff(0x14e)]),_0x1d38f8['functions'][_0x31f835[_0x28e2ff(0x14d)]]=_0x376644,_0x254f19[_0x28e2ff(0x133)]({'lockKey':_0x31f835[_0x28e2ff(0x14d)],'remoteId':_0x5b9952['id']});}catch(_0x33b593){_0x162142[_0x28e2ff(0x133)]({'lockKey':_0x31f835[_0x28e2ff(0x14d)],'error':_0x33b593 instanceof Error?_0x33b593[_0x28e2ff(0x129)]:String(_0x33b593)});}}return _0x1d38f8[_0x28e2ff(0x139)]=new Date()[_0x28e2ff(0x135)](),await writeBffLockFile(_0x5b14f7[_0x28e2ff(0x120)],_0x12f3e6),{'ok':_0x162142[_0x28e2ff(0x13e)]===0x0,'data':{'pulled':_0x254f19,'skipped':_0x3e4117,'failed':_0x162142},'message':_0x28e2ff(0x136)+_0x254f19['length']+'\x20pulled,\x20'+_0x3e4117[_0x28e2ff(0x13e)]+_0x28e2ff(0x112)+_0x162142['length']+_0x28e2ff(0x13f)};}};async function hasUnsyncedLocalChanges(_0x2d416e,_0x5545ee,_0x3abb9c){const _0xd6493b=a31_0x4af5c8;if(!await fileExists(_0x2d416e))return![];const _0x294ffb=await computeFileHash(_0x2d416e);if(!_0x5545ee)return _0x3abb9c?_0x294ffb!==_0x3abb9c:!![];return _0x294ffb!==_0x5545ee[_0xd6493b(0x121)];}function buildDatasetCodeToAliasMap(_0xd1d02e,_0x5dcb33){const _0x27e4bf=loadAliasMap(_0xd1d02e,undefined,resolveApiFilePath(_0xd1d02e,_0x5dcb33));return new Map(_0x27e4bf['map'](_0x3b3e9f=>[_0x3b3e9f['datasetCode'],_0x3b3e9f['alias']]));}async function confirmForce(){const _0x261708=a31_0x4af5c8,_0x102036=createInterface({'input':process['stdin'],'output':process[_0x261708(0x11f)]}),_0x45ae98=await new Promise(_0x46973=>{const _0x4cf74f=_0x261708;_0x102036[_0x4cf74f(0x12a)](_0x4cf74f(0x12f),_0x46973);});return _0x102036['close'](),['y',_0x261708(0x111)][_0x261708(0x144)](_0x45ae98['trim']()[_0x261708(0x145)]());}
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']());}