@lovrabet/rabetbase-cli 2.1.10-beta.3 → 2.1.10-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) 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/report.js +1 -1
  80. package/lib/commands/logs/index.js +1 -1
  81. package/lib/commands/menu/index.js +1 -1
  82. package/lib/commands/menu/shared/compare-table.js +1 -1
  83. package/lib/commands/menu/shared/index.js +1 -1
  84. package/lib/commands/menu/shared/inquirer.js +1 -1
  85. package/lib/commands/menu/shared/local-pages.js +1 -1
  86. package/lib/commands/menu/shared/logic.js +1 -1
  87. package/lib/commands/menu/shared/service.js +1 -1
  88. package/lib/commands/menu/shared/sync-core.js +1 -1
  89. package/lib/commands/menu/shared/update-core.js +1 -1
  90. package/lib/commands/menu/shared/valid-url.js +1 -1
  91. package/lib/commands/menu/sync.js +1 -1
  92. package/lib/commands/menu/update.js +1 -1
  93. package/lib/commands/page/generate-start.js +1 -1
  94. package/lib/commands/page/generate-status.js +1 -1
  95. package/lib/commands/page/index.js +1 -1
  96. package/lib/commands/page/pull.js +1 -1
  97. package/lib/commands/page/push.js +1 -1
  98. package/lib/commands/page/shared.js +1 -1
  99. package/lib/commands/page/standard-page-status.js +1 -1
  100. package/lib/commands/page/sync.js +1 -1
  101. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  102. package/lib/commands/project/create/format-elapsed.js +1 -1
  103. package/lib/commands/project/create/main.js +1 -1
  104. package/lib/commands/project/create/non-interactive.js +1 -1
  105. package/lib/commands/project/create/project-template-path.js +1 -1
  106. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  107. package/lib/commands/project/create/use-format-code.js +1 -1
  108. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  109. package/lib/commands/project/index.js +1 -1
  110. package/lib/commands/project/init.js +1 -1
  111. package/lib/commands/project/upgrade.js +1 -1
  112. package/lib/commands/registry.js +1 -1
  113. package/lib/commands/run/index.js +1 -1
  114. package/lib/commands/schema.js +1 -1
  115. package/lib/commands/skill/index.js +1 -1
  116. package/lib/commands/sql/create.js +1 -1
  117. package/lib/commands/sql/delete.js +1 -1
  118. package/lib/commands/sql/detail.js +1 -1
  119. package/lib/commands/sql/exec.js +1 -1
  120. package/lib/commands/sql/index.js +1 -1
  121. package/lib/commands/sql/list.js +1 -1
  122. package/lib/commands/sql/pull.js +1 -1
  123. package/lib/commands/sql/push.js +1 -1
  124. package/lib/commands/sql/save.js +1 -1
  125. package/lib/commands/sql/shared.js +1 -1
  126. package/lib/commands/sql/status.js +1 -1
  127. package/lib/commands/sql/validate.js +1 -1
  128. package/lib/config/schema.js +1 -1
  129. package/lib/constant/cdn.js +1 -1
  130. package/lib/constant/cli.js +1 -1
  131. package/lib/constant/defaults.js +1 -1
  132. package/lib/constant/domain.js +1 -1
  133. package/lib/constant/env.js +1 -1
  134. package/lib/constant/output.js +1 -1
  135. package/lib/constant/paths.js +1 -1
  136. package/lib/constant/risk.js +1 -1
  137. package/lib/context.js +1 -1
  138. package/lib/core/alias-resolver.js +1 -1
  139. package/lib/core/api-client.js +1 -1
  140. package/lib/core/bff/config.js +1 -1
  141. package/lib/core/bff/file-system.js +1 -1
  142. package/lib/core/bff/hash.js +1 -1
  143. package/lib/core/bff/lock.js +1 -1
  144. package/lib/core/bff/utils.js +1 -1
  145. package/lib/core/db-resolver.js +1 -1
  146. package/lib/core/page/file-system.js +1 -1
  147. package/lib/core/page/hash.js +1 -1
  148. package/lib/core/page/lock.js +1 -1
  149. package/lib/core/sql-sync/config.js +1 -1
  150. package/lib/core/sql-sync/file-system.js +1 -1
  151. package/lib/core/sql-sync/hash.js +1 -1
  152. package/lib/core/sql-sync/lock.js +1 -1
  153. package/lib/core/sql-sync/utils.js +1 -1
  154. package/lib/core/sql-validator.js +1 -1
  155. package/lib/errors.js +1 -1
  156. package/lib/framework/build-all-flags.js +1 -1
  157. package/lib/framework/flags.js +1 -1
  158. package/lib/framework/help.js +1 -1
  159. package/lib/framework/index.js +1 -1
  160. package/lib/framework/output.js +1 -1
  161. package/lib/framework/response.js +1 -1
  162. package/lib/framework/runner-alias.js +1 -1
  163. package/lib/framework/runner.js +1 -1
  164. package/lib/framework/schema-export.js +1 -1
  165. package/lib/framework/types.js +1 -1
  166. package/lib/generated/build-info.js +1 -1
  167. package/lib/help.js +1 -1
  168. package/lib/skills/main.js +1 -1
  169. package/lib/skills/npx-skills-add.js +1 -1
  170. package/lib/telemetry/cli-command-trace.js +1 -1
  171. package/lib/telemetry/cli-help-trace.js +1 -1
  172. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  173. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  174. package/lib/telemetry/send-cli-trace-log.js +1 -1
  175. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  176. package/lib/utils/ai_config.js +1 -1
  177. package/lib/utils/apply-jq-filter.js +1 -1
  178. package/lib/utils/cdn-config.js +1 -1
  179. package/lib/utils/check-sdk-version.js +1 -1
  180. package/lib/utils/cli-version-check.js +1 -1
  181. package/lib/utils/cli-version-policy.js +1 -1
  182. package/lib/utils/config.js +1 -1
  183. package/lib/utils/copy-directory.js +1 -1
  184. package/lib/utils/entity-with-id.js +1 -1
  185. package/lib/utils/file-utils.js +1 -1
  186. package/lib/utils/guides-cdn.js +1 -1
  187. package/lib/utils/http-client.js +1 -1
  188. package/lib/utils/is-non-interactive.js +1 -1
  189. package/lib/utils/logger.js +1 -1
  190. package/lib/utils/params.js +1 -1
  191. package/lib/utils/platform.js +1 -1
  192. package/lib/utils/rules-cdn.js +1 -1
  193. package/lib/utils/sleep.js +1 -1
  194. package/lib/utils/template-replacer.js +1 -1
  195. package/lib/utils/version.js +1 -1
  196. package/lib/utils/with-active-cookie.js +1 -1
  197. package/lib/utils/write-cli-side-channel.js +1 -1
  198. package/package.json +1 -2
@@ -1 +1 @@
1
- const a19_0x33318d=a19_0x422b;function a19_0x422b(_0x238c36,_0x4b5cc7){_0x238c36=_0x238c36-0x17a;const _0x305779=a19_0x3057();let _0x422b56=_0x305779[_0x238c36];return _0x422b56;}(function(_0x1a528e,_0x17410e){const _0x916791=a19_0x422b,_0x54f7b6=_0x1a528e();while(!![]){try{const _0xa13fc2=parseInt(_0x916791(0x184))/0x1*(-parseInt(_0x916791(0x18a))/0x2)+-parseInt(_0x916791(0x185))/0x3+parseInt(_0x916791(0x17f))/0x4*(parseInt(_0x916791(0x17d))/0x5)+parseInt(_0x916791(0x17a))/0x6+parseInt(_0x916791(0x188))/0x7+parseInt(_0x916791(0x17b))/0x8*(-parseInt(_0x916791(0x187))/0x9)+parseInt(_0x916791(0x181))/0xa*(-parseInt(_0x916791(0x18c))/0xb);if(_0xa13fc2===_0x17410e)break;else _0x54f7b6['push'](_0x54f7b6['shift']());}catch(_0xef2308){_0x54f7b6['push'](_0x54f7b6['shift']());}}}(a19_0x3057,0xa410e));function a19_0x3057(){const _0x233687=['5481378qwIYpB','260488gqDfrQ','read','841520lvJkrX','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','28BbUnLC','../../core/api-client.js','10KEQxNL','appDesc','map','2732TjdVqv','1106304SYDEIj','appName','45EPzKls','582246AlwRuE','appCode','626AyrsBy','app','1277826XsPnYn'];a19_0x3057=function(){return _0x233687;};return a19_0x3057();}import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x34167d){const _0x20273c=a19_0x422b,{setActiveCookie:_0x5dd025}=await import(_0x20273c(0x180));_0x5dd025(_0x34167d['cookie']);const _0x12b09c=await listRemoteApps();return{'ok':!![],'data':{'items':_0x12b09c[_0x20273c(0x183)](_0x407af1=>({..._0x407af1['id']!=null?{'id':_0x407af1['id']}:{},'appCode':_0x407af1[_0x20273c(0x189)],'appName':_0x407af1[_0x20273c(0x186)],..._0x407af1[_0x20273c(0x182)]!=null?{'appDesc':_0x407af1[_0x20273c(0x182)]}:{}})),'meta':{'source':'platform'}}};}export const appRemoteDefinition={'service':a19_0x33318d(0x18b),'command':'remote','description':a19_0x33318d(0x17e),'risk':a19_0x33318d(0x17c),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ const a19_0x184157=a19_0x2de9;(function(_0x47f30d,_0x324834){const _0x2d1a07=a19_0x2de9,_0x4387a7=_0x47f30d();while(!![]){try{const _0x3132fa=-parseInt(_0x2d1a07(0x158))/0x1*(-parseInt(_0x2d1a07(0x15f))/0x2)+parseInt(_0x2d1a07(0x161))/0x3+parseInt(_0x2d1a07(0x15d))/0x4*(-parseInt(_0x2d1a07(0x15b))/0x5)+-parseInt(_0x2d1a07(0x156))/0x6*(-parseInt(_0x2d1a07(0x153))/0x7)+-parseInt(_0x2d1a07(0x150))/0x8+-parseInt(_0x2d1a07(0x152))/0x9*(-parseInt(_0x2d1a07(0x159))/0xa)+-parseInt(_0x2d1a07(0x15e))/0xb;if(_0x3132fa===_0x324834)break;else _0x4387a7['push'](_0x4387a7['shift']());}catch(_0x3ee486){_0x4387a7['push'](_0x4387a7['shift']());}}}(a19_0xecb6,0x99804));function a19_0x2de9(_0x563df8,_0x5ce9c6){_0x563df8=_0x563df8-0x150;const _0xecb60f=a19_0xecb6();let _0x2de989=_0xecb60f[_0x563df8];return _0x2de989;}import{listRemoteApps}from'../../core/api-client.js';function a19_0xecb6(){const _0x3b0f4c=['32WFQmHh','983378IFlnjt','21116EnGFmR','cookie','2178870MdTiUn','read','9757176KUgmZb','app','2724057sAKQJC','1918154wjKEXH','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','remote','12dRGsJE','platform','8WDmJNH','30bpAJVn','../../core/api-client.js','205645pWBxLb','map'];a19_0xecb6=function(){return _0x3b0f4c;};return a19_0xecb6();}async function execute(_0x472dc2){const _0x388ebf=a19_0x2de9,{setActiveCookie:_0xd62454}=await import(_0x388ebf(0x15a));_0xd62454(_0x472dc2[_0x388ebf(0x160)]);const _0x39d895=await listRemoteApps();return{'ok':!![],'data':{'items':_0x39d895[_0x388ebf(0x15c)](_0x273a16=>({..._0x273a16['id']!=null?{'id':_0x273a16['id']}:{},'appCode':_0x273a16['appCode'],'appName':_0x273a16['appName'],..._0x273a16['appDesc']!=null?{'appDesc':_0x273a16['appDesc']}:{}})),'meta':{'source':_0x388ebf(0x157)}}};}export const appRemoteDefinition={'service':a19_0x184157(0x151),'command':a19_0x184157(0x155),'description':a19_0x184157(0x154),'risk':a19_0x184157(0x162),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -1 +1 @@
1
- function a20_0x1049(){const _0x349d10=['110igupkm','90jZPmBz','1544598aeJbHy','1574424RcInHj','808396JEQzSU','7496aELgcy','526545YxSzot','43905BVEEmG','1688141jzVYsM'];a20_0x1049=function(){return _0x349d10;};return a20_0x1049();}(function(_0x21559b,_0x462a82){const _0x4bc03b=a20_0x49cc,_0x202473=_0x21559b();while(!![]){try{const _0x1d203d=parseInt(_0x4bc03b(0x14b))/0x1*(parseInt(_0x4bc03b(0x147))/0x2)+parseInt(_0x4bc03b(0x148))/0x3+-parseInt(_0x4bc03b(0x146))/0x4+-parseInt(_0x4bc03b(0x149))/0x5*(parseInt(_0x4bc03b(0x14c))/0x6)+-parseInt(_0x4bc03b(0x14a))/0x7+parseInt(_0x4bc03b(0x14e))/0x8+parseInt(_0x4bc03b(0x14d))/0x9;if(_0x1d203d===_0x462a82)break;else _0x202473['push'](_0x202473['shift']());}catch(_0x43ee9e){_0x202473['push'](_0x202473['shift']());}}}(a20_0x1049,0x5d13b));import{appListDefinition}from'../../commands/app/list.js';function a20_0x49cc(_0x5e2c02,_0x500fd3){_0x5e2c02=_0x5e2c02-0x146;const _0x1049a4=a20_0x1049();let _0x49ccf6=_0x1049a4[_0x5e2c02];return _0x49ccf6;}import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ (function(_0x31fc0b,_0x4e3224){const _0x2267d9=a20_0x2a70,_0x17bc17=_0x31fc0b();while(!![]){try{const _0x53d08c=parseInt(_0x2267d9(0x95))/0x1*(-parseInt(_0x2267d9(0x92))/0x2)+parseInt(_0x2267d9(0x90))/0x3+-parseInt(_0x2267d9(0x91))/0x4+parseInt(_0x2267d9(0x98))/0x5+parseInt(_0x2267d9(0x94))/0x6*(parseInt(_0x2267d9(0x97))/0x7)+parseInt(_0x2267d9(0x93))/0x8+-parseInt(_0x2267d9(0x96))/0x9;if(_0x53d08c===_0x4e3224)break;else _0x17bc17['push'](_0x17bc17['shift']());}catch(_0x14bd34){_0x17bc17['push'](_0x17bc17['shift']());}}}(a20_0x40a1,0xa4ea8));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';function a20_0x2a70(_0x8f1917,_0x2048f0){_0x8f1917=_0x8f1917-0x90;const _0x40a12b=a20_0x40a1();let _0x2a7036=_0x40a12b[_0x8f1917];return _0x2a7036;}function a20_0x40a1(){const _0x18de5d=['12775680UaVKis','7oabKVz','2825395QTNTWe','2367012bGPxIm','2496604qDmFlG','284WtXjEP','8822136lTSqDH','4038738Zypmkh','2893AuVBaX'];a20_0x40a1=function(){return _0x18de5d;};return a20_0x40a1();}import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- const a21_0x33f26e=a21_0x1631;(function(_0x50a148,_0x5480d9){const _0x407b06=a21_0x1631,_0x4ddcdc=_0x50a148();while(!![]){try{const _0x16d029=parseInt(_0x407b06(0x98))/0x1+parseInt(_0x407b06(0x90))/0x2+-parseInt(_0x407b06(0x92))/0x3+-parseInt(_0x407b06(0x99))/0x4+parseInt(_0x407b06(0x89))/0x5*(parseInt(_0x407b06(0x8f))/0x6)+parseInt(_0x407b06(0x8d))/0x7*(-parseInt(_0x407b06(0x9a))/0x8)+parseInt(_0x407b06(0x95))/0x9;if(_0x16d029===_0x5480d9)break;else _0x4ddcdc['push'](_0x4ddcdc['shift']());}catch(_0x1fe295){_0x4ddcdc['push'](_0x4ddcdc['shift']());}}}(a21_0x1e97,0xb5029));import{readRawConfigWithLayers}from'../../context.js';function a21_0x1e97(){const _0x5675f7=['entries','merged','apps','665hcRBPt','globalConfig','push','app','140gxzLcd','list','37860QkIBJz','1966404vcCOhQ','projectConfig','4055169BMoTiV','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','isCurrent','2574108CpZDcQ','globalPath','projectPath','1459421BEveha','3325380RLIKqD','257352PILlhZ','project','global','boolean','object','List\x20all\x20configured\x20apps','No\x20apps\x20configured','find','mergedCli','bool','\x20config','map','.\x20Use\x20`','appcode'];a21_0x1e97=function(){return _0x5675f7;};return a21_0x1e97();}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(_0x190423,_0x19785a){const _0x57e075=a21_0x1631,_0x554c60=[],_0x5beb15=_0x190423[_0x57e075(0x88)]&&typeof _0x190423['apps']===_0x57e075(0x9e)?_0x190423[_0x57e075(0x88)]:{},_0x41ad28=_0x190423['defaultApp']||undefined;for(const [_0x5cfd4c,_0x227905]of Object[_0x57e075(0x86)](_0x5beb15)){if(!_0x227905||typeof _0x227905!==_0x57e075(0x9e)||!_0x227905['appcode'])continue;_0x554c60[_0x57e075(0x8b)]({'name':_0x5cfd4c,'appcode':_0x227905['appcode'],'named':!![],'definedIn':_0x19785a,'isDefault':_0x5cfd4c===_0x41ad28,...buildAppProfileListFields(_0x227905)});}return _0x554c60;}function buildMergedItems(_0x4f35f1,_0x32ca1f){const _0x1d39f4=a21_0x1631,{apps:apps={},defaultApp:_0x56e269}=_0x4f35f1,_0x5aaebf=_0x32ca1f[_0x1d39f4(0x8a)][_0x1d39f4(0x88)]&&typeof _0x32ca1f[_0x1d39f4(0x8a)]['apps']===_0x1d39f4(0x9e)?_0x32ca1f['globalConfig'][_0x1d39f4(0x88)]:{},_0x243501=_0x32ca1f[_0x1d39f4(0x91)][_0x1d39f4(0x88)]&&typeof _0x32ca1f['projectConfig']['apps']===_0x1d39f4(0x9e)?_0x32ca1f[_0x1d39f4(0x91)][_0x1d39f4(0x88)]:{},_0x5b4f6d=_0x32ca1f['projectConfig']['inherit']===![],_0x3eed14=Object[_0x1d39f4(0x86)](apps),_0x357f90=_0x3eed14[_0x1d39f4(0x83)](([_0x30bb35,_0x113b32])=>({'name':_0x30bb35,'appcode':_0x113b32['appcode'],'named':!![],'definedIn':appDefinedIn(_0x30bb35,_0x5aaebf,_0x243501,_0x5b4f6d),'isDefault':_0x30bb35===_0x56e269,...buildAppProfileListFields(_0x113b32)}));return _0x357f90;}function a21_0x1631(_0x1ea794,_0x439a9b){_0x1ea794=_0x1ea794-0x7d;const _0x1e97b9=a21_0x1e97();let _0x1631ad=_0x1e97b9[_0x1ea794];return _0x1631ad;}async function execute(_0x433ffa){const _0x15b642=a21_0x1631,_0x16e9d0=_0x433ffa[_0x15b642(0x81)](_0x15b642(0x9c)),_0x379179=_0x433ffa[_0x15b642(0x81)](_0x15b642(0x9b)),_0x5b7030=_0x16e9d0?'global':_0x379179?_0x15b642(0x9b):_0x15b642(0x87),{config:_0x580737,layers:_0x282311}=readRawConfigWithLayers(),_0x5d1574=resolveDefaultAppSource(_0x282311),{defaultApp:_0x49c744}=_0x580737;let _0x2e5191,_0x47d4a1;switch(_0x5b7030){case'global':_0x2e5191=buildItemsFromLayer(_0x282311[_0x15b642(0x8a)],'global'),_0x47d4a1=_0x282311[_0x15b642(0x96)];break;case'project':_0x2e5191=buildItemsFromLayer(_0x282311['projectConfig'],'project'),_0x47d4a1=_0x282311[_0x15b642(0x97)];break;default:_0x2e5191=buildMergedItems(_0x580737,_0x282311);break;}enrichAppListItemsWithMergedSelection(_0x2e5191,_0x433ffa[_0x15b642(0x80)]);if(_0x2e5191['length']===0x0){const _0x368dd8=_0x5b7030==='merged'?'':'\x20in\x20'+_0x5b7030+_0x15b642(0x82);return{'ok':!![],'data':[],'message':_0x15b642(0x7e)+_0x368dd8+_0x15b642(0x84)+CLI_BIN_NAME+_0x15b642(0x93)};}const _0x446a7c=_0x2e5191[_0x15b642(0x7f)](_0x594672=>_0x594672[_0x15b642(0x94)]===!![]),_0x50860f=_0x49c744??_0x446a7c?.[_0x15b642(0x85)]??null,_0x4f18b0=_0x5b7030==='merged'?{'globalPath':_0x282311[_0x15b642(0x96)]??null,'projectPath':_0x282311[_0x15b642(0x97)]??null,'defaultApp':_0x50860f,'defaultAppSource':_0x49c744!=null?_0x5d1574:null}:{'scope':_0x5b7030,'configPath':_0x47d4a1??null};return{'ok':!![],'data':{'items':_0x2e5191,'meta':_0x4f18b0}};}export const appListDefinition={'service':a21_0x33f26e(0x8c),'command':a21_0x33f26e(0x8e),'description':a21_0x33f26e(0x7d),'risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x33f26e(0x9c),'type':'boolean','description':'Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','default':![]},{'name':a21_0x33f26e(0x9b),'type':a21_0x33f26e(0x9d),'description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};
1
+ const a21_0xaeae73=a21_0x19f2;(function(_0x3bf2e9,_0x2806dc){const _0x4072c2=a21_0x19f2,_0x2e621b=_0x3bf2e9();while(!![]){try{const _0x5ded16=parseInt(_0x4072c2(0x1e8))/0x1+-parseInt(_0x4072c2(0x202))/0x2+-parseInt(_0x4072c2(0x1f6))/0x3*(parseInt(_0x4072c2(0x1f0))/0x4)+-parseInt(_0x4072c2(0x1f9))/0x5*(parseInt(_0x4072c2(0x206))/0x6)+-parseInt(_0x4072c2(0x208))/0x7*(parseInt(_0x4072c2(0x1f1))/0x8)+-parseInt(_0x4072c2(0x1ed))/0x9+parseInt(_0x4072c2(0x205))/0xa;if(_0x5ded16===_0x2806dc)break;else _0x2e621b['push'](_0x2e621b['shift']());}catch(_0x282c56){_0x2e621b['push'](_0x2e621b['shift']());}}}(a21_0xff57,0x4d773));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a21_0xff57(){const _0x5a0c19=['mergedCli','apps','globalConfig','project','411165jcrTZj','List\x20all\x20configured\x20apps','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','2713195wbmZAC','map','merged','length','\x20config','.\x20Use\x20`','boolean','No\x20apps\x20configured','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','502272giDJOI','bool','global','19410760FdkBwa','6UEpEGI','globalPath','56630fzgwNn','projectConfig','projectPath','object','\x20in\x20','read','entries','324954sBYicE','push','appcode','find','isCurrent','3486204gUQIse','list','inherit','8ndPhag','488xSurzd'];a21_0xff57=function(){return _0x5a0c19;};return a21_0xff57();}import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0xf5ab02,_0x330ef3){const _0x19a803=a21_0x19f2,_0x5574f3=[],_0x3c562b=_0xf5ab02['apps']&&typeof _0xf5ab02['apps']===_0x19a803(0x20b)?_0xf5ab02[_0x19a803(0x1f3)]:{},_0xc06c03=_0xf5ab02['defaultApp']||undefined;for(const [_0x3bae8b,_0x5e58dd]of Object[_0x19a803(0x1e7)](_0x3c562b)){if(!_0x5e58dd||typeof _0x5e58dd!==_0x19a803(0x20b)||!_0x5e58dd['appcode'])continue;_0x5574f3[_0x19a803(0x1e9)]({'name':_0x3bae8b,'appcode':_0x5e58dd[_0x19a803(0x1ea)],'named':!![],'definedIn':_0x330ef3,'isDefault':_0x3bae8b===_0xc06c03,...buildAppProfileListFields(_0x5e58dd)});}return _0x5574f3;}function buildMergedItems(_0x5c5345,_0x5663ff){const _0x118f6d=a21_0x19f2,{apps:apps={},defaultApp:_0x5174cf}=_0x5c5345,_0x5b0691=_0x5663ff['globalConfig'][_0x118f6d(0x1f3)]&&typeof _0x5663ff[_0x118f6d(0x1f4)][_0x118f6d(0x1f3)]===_0x118f6d(0x20b)?_0x5663ff[_0x118f6d(0x1f4)][_0x118f6d(0x1f3)]:{},_0x2f809f=_0x5663ff[_0x118f6d(0x209)][_0x118f6d(0x1f3)]&&typeof _0x5663ff[_0x118f6d(0x209)][_0x118f6d(0x1f3)]===_0x118f6d(0x20b)?_0x5663ff[_0x118f6d(0x209)][_0x118f6d(0x1f3)]:{},_0x1a6262=_0x5663ff[_0x118f6d(0x209)][_0x118f6d(0x1ef)]===![],_0x70fa6e=Object[_0x118f6d(0x1e7)](apps),_0x283002=_0x70fa6e[_0x118f6d(0x1fa)](([_0x56c12a,_0x14f71f])=>({'name':_0x56c12a,'appcode':_0x14f71f[_0x118f6d(0x1ea)],'named':!![],'definedIn':appDefinedIn(_0x56c12a,_0x5b0691,_0x2f809f,_0x1a6262),'isDefault':_0x56c12a===_0x5174cf,...buildAppProfileListFields(_0x14f71f)}));return _0x283002;}function a21_0x19f2(_0x57fa62,_0x47df72){_0x57fa62=_0x57fa62-0x1e7;const _0xff57bf=a21_0xff57();let _0x19f277=_0xff57bf[_0x57fa62];return _0x19f277;}async function execute(_0x3981e2){const _0x5a8989=a21_0x19f2,_0x57ee18=_0x3981e2[_0x5a8989(0x203)](_0x5a8989(0x204)),_0x2c4698=_0x3981e2[_0x5a8989(0x203)](_0x5a8989(0x1f5)),_0x525dd1=_0x57ee18?_0x5a8989(0x204):_0x2c4698?_0x5a8989(0x1f5):_0x5a8989(0x1fb),{config:_0x100455,layers:_0x12e464}=readRawConfigWithLayers(),_0x1bad5f=resolveDefaultAppSource(_0x12e464),{defaultApp:_0x2105d3}=_0x100455;let _0x239961,_0x2da919;switch(_0x525dd1){case _0x5a8989(0x204):_0x239961=buildItemsFromLayer(_0x12e464['globalConfig'],_0x5a8989(0x204)),_0x2da919=_0x12e464[_0x5a8989(0x207)];break;case'project':_0x239961=buildItemsFromLayer(_0x12e464[_0x5a8989(0x209)],'project'),_0x2da919=_0x12e464[_0x5a8989(0x20a)];break;default:_0x239961=buildMergedItems(_0x100455,_0x12e464);break;}enrichAppListItemsWithMergedSelection(_0x239961,_0x3981e2[_0x5a8989(0x1f2)]);if(_0x239961[_0x5a8989(0x1fc)]===0x0){const _0x46ed3c=_0x525dd1===_0x5a8989(0x1fb)?'':_0x5a8989(0x20c)+_0x525dd1+_0x5a8989(0x1fd);return{'ok':!![],'data':[],'message':_0x5a8989(0x200)+_0x46ed3c+_0x5a8989(0x1fe)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x5c1371=_0x239961[_0x5a8989(0x1eb)](_0x23cb8e=>_0x23cb8e[_0x5a8989(0x1ec)]===!![]),_0x12b025=_0x2105d3??_0x5c1371?.[_0x5a8989(0x1ea)]??null,_0x3d8b34=_0x525dd1==='merged'?{'globalPath':_0x12e464[_0x5a8989(0x207)]??null,'projectPath':_0x12e464[_0x5a8989(0x20a)]??null,'defaultApp':_0x12b025,'defaultAppSource':_0x2105d3!=null?_0x1bad5f:null}:{'scope':_0x525dd1,'configPath':_0x2da919??null};return{'ok':!![],'data':{'items':_0x239961,'meta':_0x3d8b34}};}export const appListDefinition={'service':'app','command':a21_0xaeae73(0x1ee),'description':a21_0xaeae73(0x1f7),'risk':a21_0xaeae73(0x20d),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0xaeae73(0x204),'type':a21_0xaeae73(0x1ff),'description':a21_0xaeae73(0x201),'default':![]},{'name':'project','type':a21_0xaeae73(0x1ff),'description':a21_0xaeae73(0x1f8),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0x5d3bc5=a22_0x2e10;(function(_0x2a8af7,_0x4fc691){const _0x33d9a1=a22_0x2e10,_0x22b72d=_0x2a8af7();while(!![]){try{const _0x402cf3=parseInt(_0x33d9a1(0x1c4))/0x1*(parseInt(_0x33d9a1(0x1cc))/0x2)+parseInt(_0x33d9a1(0x1bd))/0x3+parseInt(_0x33d9a1(0x1d5))/0x4*(-parseInt(_0x33d9a1(0x1d9))/0x5)+parseInt(_0x33d9a1(0x1be))/0x6*(parseInt(_0x33d9a1(0x1d1))/0x7)+-parseInt(_0x33d9a1(0x1d8))/0x8+-parseInt(_0x33d9a1(0x1ba))/0x9+-parseInt(_0x33d9a1(0x1c7))/0xa*(-parseInt(_0x33d9a1(0x1d4))/0xb);if(_0x402cf3===_0x4fc691)break;else _0x22b72d['push'](_0x22b72d['shift']());}catch(_0x3d39f7){_0x22b72d['push'](_0x22b72d['shift']());}}}(a22_0x54f9,0x20219));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';function a22_0x54f9(){const _0x5a7fc8=['521068GUVnOo','name','Removed\x20app\x20\x22','1773776UFJqDT','10HZVolk','defaultApp','keys','global','bool','validation','2332800FaYVjn','length','high-risk-write','319923uWXLEZ','815862hAttuC','App\x20profile\x20name\x20to\x20remove','\x22\x20not\x20found.','args','Missing\x20app\x20name.','project','616qEWuUU','Remove\x20an\x20app\x20from\x20config','both','5294230CoRJwv','\x22\x20still\x20defined\x20in\x20','App\x20\x22','projectConfig','object','328pyPsSv','Usage:\x20','apps','remove','boolean','7MNsrGu','\x20app\x20remove\x20<name>\x20[--global]','\x20Default\x20app\x20changed\x20to\x20\x22','11KSLnVs'];a22_0x54f9=function(){return _0x5a7fc8;};return a22_0x54f9();}async function validateArgs(_0xdbf723){const _0x4bf93d=a22_0x2e10,_0x1c503e=_0xdbf723[_0x4bf93d(0x1c1)][0x0]?.['trim']();if(!_0x1c503e)throw CliErrors[_0x4bf93d(0x1b9)](_0x4bf93d(0x1c2),_0x4bf93d(0x1cd)+CLI_BIN_NAME+_0x4bf93d(0x1d2));}async function execute(_0xafc6c6){const _0x3b243a=a22_0x2e10,_0x29533c=_0xafc6c6['args'][0x0]?.['trim']();if(!_0x29533c)throw CliErrors[_0x3b243a(0x1b9)](_0x3b243a(0x1c2),_0x3b243a(0x1cd)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');const _0x565643=_0xafc6c6[_0x3b243a(0x1dd)](_0x3b243a(0x1dc)),{config:_0x2f77bf,layers:_0x300292}=readRawConfigWithLayers(),_0x40aefd=_0x2f77bf['apps']??{};if(!_0x40aefd[_0x29533c])throw CliErrors[_0x3b243a(0x1b9)](_0x3b243a(0x1c9)+_0x29533c+'\x22\x20not\x20found.');const _0x1f19c4=_0x300292['globalConfig'][_0x3b243a(0x1ce)]&&typeof _0x300292['globalConfig'][_0x3b243a(0x1ce)]===_0x3b243a(0x1cb)?_0x300292['globalConfig'][_0x3b243a(0x1ce)]:{},_0x173448=_0x300292[_0x3b243a(0x1ca)][_0x3b243a(0x1ce)]&&typeof _0x300292[_0x3b243a(0x1ca)][_0x3b243a(0x1ce)]===_0x3b243a(0x1cb)?_0x300292['projectConfig'][_0x3b243a(0x1ce)]:{},_0x184b90=appDefinedIn(_0x29533c,_0x1f19c4,_0x173448,_0x300292['projectConfig']['inherit']===![]),_0x20ed1a=resolveAppScopeForWrite(_0x29533c,_0x565643,_0x300292),_0x52391c={'global':_0x20ed1a===_0x3b243a(0x1dc)},_0x2bd369=readConfig(_0x52391c),_0x5c7529=_0x2bd369['apps'];if(!_0x5c7529||!_0x5c7529[_0x29533c])throw CliErrors[_0x3b243a(0x1b9)](_0x3b243a(0x1c9)+_0x29533c+_0x3b243a(0x1c0));delete _0x5c7529[_0x29533c];let _0x549499='';if(_0x2bd369[_0x3b243a(0x1da)]===_0x29533c){const _0x10da71=Object[_0x3b243a(0x1db)](_0x5c7529);_0x2bd369[_0x3b243a(0x1da)]=_0x10da71[_0x3b243a(0x1bb)]>0x0?_0x10da71[0x0]:undefined,_0x2bd369[_0x3b243a(0x1da)]?_0x549499=_0x3b243a(0x1d3)+_0x2bd369[_0x3b243a(0x1da)]+'\x22.':delete _0x2bd369[_0x3b243a(0x1da)];}Object[_0x3b243a(0x1db)](_0x5c7529)[_0x3b243a(0x1bb)]===0x0&&(delete _0x2bd369[_0x3b243a(0x1ce)],delete _0x2bd369[_0x3b243a(0x1da)]);writeConfig(_0x2bd369,_0x52391c);const _0x2e602d=_0x184b90===_0x3b243a(0x1c6)?'\x20Note:\x20app\x20\x22'+_0x29533c+_0x3b243a(0x1c8)+(_0x20ed1a===_0x3b243a(0x1c3)?_0x3b243a(0x1dc):'project')+'\x20config.':'';return{'ok':!![],'message':_0x3b243a(0x1d7)+_0x29533c+'\x22'+scopeLabel(_0x52391c)+'.'+_0x549499+_0x2e602d};}function a22_0x2e10(_0x2009f9,_0xf3c560){_0x2009f9=_0x2009f9-0x1b9;const _0x54f9f6=a22_0x54f9();let _0x2e10ca=_0x54f9f6[_0x2009f9];return _0x2e10ca;}export const appRemoveDefinition={'service':'app','command':a22_0x5d3bc5(0x1cf),'description':a22_0x5d3bc5(0x1c5),'risk':a22_0x5d3bc5(0x1bc),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x5d3bc5(0x1d6),'description':a22_0x5d3bc5(0x1bf),'required':!![]}],'flags':[{'name':a22_0x5d3bc5(0x1dc),'type':a22_0x5d3bc5(0x1d0),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x592021=a22_0x266a;function a22_0x266a(_0x14c2a9,_0x207654){_0x14c2a9=_0x14c2a9-0x153;const _0x5a2529=a22_0x5a25();let _0x266a56=_0x5a2529[_0x14c2a9];return _0x266a56;}(function(_0x4c7be0,_0x270830){const _0x496459=a22_0x266a,_0x5c56fd=_0x4c7be0();while(!![]){try{const _0x3dfb60=parseInt(_0x496459(0x170))/0x1+-parseInt(_0x496459(0x153))/0x2*(-parseInt(_0x496459(0x168))/0x3)+-parseInt(_0x496459(0x15d))/0x4+-parseInt(_0x496459(0x161))/0x5*(parseInt(_0x496459(0x15c))/0x6)+-parseInt(_0x496459(0x15b))/0x7+-parseInt(_0x496459(0x175))/0x8*(parseInt(_0x496459(0x16c))/0x9)+parseInt(_0x496459(0x171))/0xa;if(_0x3dfb60===_0x270830)break;else _0x5c56fd['push'](_0x5c56fd['shift']());}catch(_0x6fa7b5){_0x5c56fd['push'](_0x5c56fd['shift']());}}}(a22_0x5a25,0xa8728));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';function a22_0x5a25(){const _0x481220=['\x20app\x20remove\x20<name>\x20[--global]','keys','12gcHCXO','\x22\x20not\x20found.','app','global','11679669EuYdIW','projectConfig','Missing\x20app\x20name.','object','878208bGBPCU','14815410RyoEcp','Usage:\x20','high-risk-write','\x20Note:\x20app\x20\x22','8VwHEwV','trim','apps','Remove\x20an\x20app\x20from\x20config','\x22\x20still\x20defined\x20in\x20','length','113818vavJgE','\x20Default\x20app\x20changed\x20to\x20\x22','remove','\x20config.','bool','App\x20\x22','both','validation','265937HUHsgw','6cXuoTw','1184704cUorBr','args','project','boolean','1327585UxMJbR','defaultApp','globalConfig','App\x20profile\x20name\x20to\x20remove','inherit'];a22_0x5a25=function(){return _0x481220;};return a22_0x5a25();}async function validateArgs(_0x2f399a){const _0x4fea97=a22_0x266a,_0x4da192=_0x2f399a['args'][0x0]?.[_0x4fea97(0x176)]();if(!_0x4da192)throw CliErrors[_0x4fea97(0x15a)](_0x4fea97(0x16e),_0x4fea97(0x172)+CLI_BIN_NAME+_0x4fea97(0x166));}async function execute(_0x3545a4){const _0x480327=a22_0x266a,_0x4363a6=_0x3545a4[_0x480327(0x15e)][0x0]?.[_0x480327(0x176)]();if(!_0x4363a6)throw CliErrors[_0x480327(0x15a)]('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x480327(0x166));const _0xb3c7d0=_0x3545a4[_0x480327(0x157)](_0x480327(0x16b)),{config:_0x4c6479,layers:_0x2acd5c}=readRawConfigWithLayers(),_0x5bab61=_0x4c6479[_0x480327(0x177)]??{};if(!_0x5bab61[_0x4363a6])throw CliErrors['validation']('App\x20\x22'+_0x4363a6+_0x480327(0x169));const _0x4422a8=_0x2acd5c['globalConfig']['apps']&&typeof _0x2acd5c[_0x480327(0x163)][_0x480327(0x177)]===_0x480327(0x16f)?_0x2acd5c[_0x480327(0x163)]['apps']:{},_0x2020b1=_0x2acd5c['projectConfig'][_0x480327(0x177)]&&typeof _0x2acd5c[_0x480327(0x16d)][_0x480327(0x177)]===_0x480327(0x16f)?_0x2acd5c[_0x480327(0x16d)][_0x480327(0x177)]:{},_0x361305=appDefinedIn(_0x4363a6,_0x4422a8,_0x2020b1,_0x2acd5c[_0x480327(0x16d)][_0x480327(0x165)]===![]),_0x9dad18=resolveAppScopeForWrite(_0x4363a6,_0xb3c7d0,_0x2acd5c),_0x14e76f={'global':_0x9dad18===_0x480327(0x16b)},_0x834066=readConfig(_0x14e76f),_0x3edfae=_0x834066[_0x480327(0x177)];if(!_0x3edfae||!_0x3edfae[_0x4363a6])throw CliErrors[_0x480327(0x15a)](_0x480327(0x158)+_0x4363a6+'\x22\x20not\x20found.');delete _0x3edfae[_0x4363a6];let _0x332648='';if(_0x834066['defaultApp']===_0x4363a6){const _0x12b0a9=Object[_0x480327(0x167)](_0x3edfae);_0x834066['defaultApp']=_0x12b0a9[_0x480327(0x17a)]>0x0?_0x12b0a9[0x0]:undefined,_0x834066[_0x480327(0x162)]?_0x332648=_0x480327(0x154)+_0x834066['defaultApp']+'\x22.':delete _0x834066['defaultApp'];}Object[_0x480327(0x167)](_0x3edfae)[_0x480327(0x17a)]===0x0&&(delete _0x834066[_0x480327(0x177)],delete _0x834066[_0x480327(0x162)]);writeConfig(_0x834066,_0x14e76f);const _0x372417=_0x361305===_0x480327(0x159)?_0x480327(0x174)+_0x4363a6+_0x480327(0x179)+(_0x9dad18==='project'?_0x480327(0x16b):_0x480327(0x15f))+_0x480327(0x156):'';return{'ok':!![],'message':'Removed\x20app\x20\x22'+_0x4363a6+'\x22'+scopeLabel(_0x14e76f)+'.'+_0x332648+_0x372417};}export const appRemoveDefinition={'service':a22_0x592021(0x16a),'command':a22_0x592021(0x155),'description':a22_0x592021(0x178),'risk':a22_0x592021(0x173),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a22_0x592021(0x164),'required':!![]}],'flags':[{'name':a22_0x592021(0x16b),'type':a22_0x592021(0x160),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x9bf1f7,_0x1984cb){const _0x2cb44c=a23_0x3dfd,_0x2aad45=_0x9bf1f7();while(!![]){try{const _0xe69e39=-parseInt(_0x2cb44c(0x199))/0x1+parseInt(_0x2cb44c(0x1a2))/0x2*(-parseInt(_0x2cb44c(0x1b0))/0x3)+-parseInt(_0x2cb44c(0x19c))/0x4*(-parseInt(_0x2cb44c(0x1a0))/0x5)+parseInt(_0x2cb44c(0x1b5))/0x6+-parseInt(_0x2cb44c(0x19a))/0x7+parseInt(_0x2cb44c(0x19b))/0x8*(-parseInt(_0x2cb44c(0x1b8))/0x9)+parseInt(_0x2cb44c(0x1b4))/0xa;if(_0xe69e39===_0x1984cb)break;else _0x2aad45['push'](_0x2aad45['shift']());}catch(_0x4ad237){_0x2aad45['push'](_0x2aad45['shift']());}}}(a23_0x2449,0xa034b));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x453327,_0x54760b){const _0x57e160=a23_0x3dfd;if(!_0x54760b)return;const _0x348a41=_0x54760b['apps']&&typeof _0x54760b[_0x57e160(0x1af)]===_0x57e160(0x1b2)?_0x54760b['apps']:{},_0x3e21a3=Object[_0x57e160(0x1a6)](_0x348a41)[_0x57e160(0x1a9)]>0x0;for(const _0x2fc78d of _0x453327){_0x2fc78d['isCurrent']=![];}const _0xff174b=_0x54760b[_0x57e160(0x19f)]!=null?String(_0x54760b[_0x57e160(0x19f)])[_0x57e160(0x1ab)]():'';if(_0x3e21a3){const _0x23613c=_0x54760b[_0x57e160(0x1aa)]??_0x54760b[_0x57e160(0x1a5)];if(_0x23613c)for(const _0x32ad79 of _0x453327){_0x32ad79[_0x57e160(0x1ac)]===!![]&&_0x32ad79[_0x57e160(0x1ae)]===_0x23613c&&(_0x32ad79[_0x57e160(0x1b6)]=!![]);}for(const _0xf1985e of _0x453327){if(_0xf1985e[_0x57e160(0x1ac)]!==![])continue;if(_0x54760b[_0x57e160(0x1a5)])continue;_0xff174b&&String(_0xf1985e[_0x57e160(0x1a1)]??'')['trim']()===_0xff174b&&(_0xf1985e['isCurrent']=!![]);}return;}if(!_0xff174b)return;for(const _0x1c9dee of _0x453327){String(_0x1c9dee[_0x57e160(0x1a1)]??'')[_0x57e160(0x1ab)]()===_0xff174b&&(_0x1c9dee['isCurrent']=!![]);}}export function resolveAppScopeForWrite(_0x58d697,_0x4e92a1,_0x4ee6e3){const _0x4d9e87=a23_0x3dfd;if(_0x4e92a1)return _0x4d9e87(0x1a7);const _0x28214c=_0x4ee6e3['projectConfig']['apps']&&typeof _0x4ee6e3[_0x4d9e87(0x1b3)][_0x4d9e87(0x1af)]===_0x4d9e87(0x1b2)?_0x4ee6e3['projectConfig']['apps']:{},_0xfc1d78=_0x4ee6e3['globalConfig']['apps']&&typeof _0x4ee6e3[_0x4d9e87(0x1ad)]['apps']===_0x4d9e87(0x1b2)?_0x4ee6e3[_0x4d9e87(0x1ad)][_0x4d9e87(0x1af)]:{};if(Object[_0x4d9e87(0x19d)][_0x4d9e87(0x1a8)][_0x4d9e87(0x1a3)](_0x28214c,_0x58d697))return _0x4d9e87(0x19e);if(Object[_0x4d9e87(0x19d)]['hasOwnProperty'][_0x4d9e87(0x1a3)](_0xfc1d78,_0x58d697))return _0x4d9e87(0x1a7);return _0x4d9e87(0x19e);}export function appDefinedIn(_0x4af5c6,_0x1f501f,_0x205ff2,_0x387376){const _0x425add=a23_0x3dfd;if(_0x387376)return Object[_0x425add(0x19d)]['hasOwnProperty']['call'](_0x205ff2,_0x4af5c6)?_0x425add(0x19e):_0x425add(0x1a7);const _0x569054=Object[_0x425add(0x19d)][_0x425add(0x1a8)][_0x425add(0x1a3)](_0x1f501f,_0x4af5c6),_0x18609c=Object['prototype'][_0x425add(0x1a8)][_0x425add(0x1a3)](_0x205ff2,_0x4af5c6);if(_0x569054&&_0x18609c)return _0x425add(0x1b7);if(_0x18609c)return _0x425add(0x19e);return _0x425add(0x1a7);}export function resolveDefaultAppSource(_0x45e513){const _0x37210c=a23_0x3dfd,_0x57e9de=_0x45e513['projectConfig'][_0x37210c(0x1af)]&&typeof _0x45e513[_0x37210c(0x1b3)][_0x37210c(0x1af)]===_0x37210c(0x1b2)?_0x45e513[_0x37210c(0x1b3)][_0x37210c(0x1af)]:{};if(_0x37210c(0x1a5)in _0x45e513[_0x37210c(0x1b3)])return _0x37210c(0x19e);if(Object[_0x37210c(0x1a6)](_0x57e9de)[_0x37210c(0x1a9)]>0x0)return _0x37210c(0x19e);if(_0x45e513['projectConfig'][_0x37210c(0x1a4)]===![])return null;if(_0x45e513[_0x37210c(0x1ad)]['defaultApp'])return _0x37210c(0x1a7);return null;}function a23_0x3dfd(_0x1794b4,_0x2ae6b4){_0x1794b4=_0x1794b4-0x199;const _0x244943=a23_0x2449();let _0x3dfd5c=_0x244943[_0x1794b4];return _0x3dfd5c;}export function getConfigPath(_0x30b03e={}){const _0x1d7cfc=a23_0x3dfd,_0x2fef98=_0x30b03e[_0x1d7cfc(0x1a7)]?_0x1d7cfc(0x1a7):'project';return resolveWriteConfigPath(_0x2fef98);}export function readConfig(_0x5a6473={}){return readConfigFile(getConfigPath(_0x5a6473));}function a23_0x2449(){const _0x18a14f=['length','currentApp','trim','named','globalConfig','name','apps','3IyWtrF','\x20(global)','object','projectConfig','38332390UQXnlI','234624LbYVsl','isCurrent','both','3293640ZLWIxR','1109939PUuTiY','4858791ZEdYHd','8IrHuZe','38164RTMJTb','prototype','project','appCode','45tmqEkZ','appcode','2263994rDOmue','call','inherit','defaultApp','keys','global','hasOwnProperty'];a23_0x2449=function(){return _0x18a14f;};return a23_0x2449();}export function writeConfig(_0x25af05,_0x409862={}){writeConfigFile(getConfigPath(_0x409862),_0x25af05);}export function scopeLabel(_0x511216){const _0x12ac74=a23_0x3dfd;return _0x511216[_0x12ac74(0x1a7)]?_0x12ac74(0x1b1):'';}
1
+ function a23_0x1d8a(_0xdda164,_0x673fb6){_0xdda164=_0xdda164-0x101;const _0x57afaa=a23_0x57af();let _0x1d8a43=_0x57afaa[_0xdda164];return _0x1d8a43;}(function(_0x24f74f,_0x3cf258){const _0x4a0384=a23_0x1d8a,_0x5c3c93=_0x24f74f();while(!![]){try{const _0x153ea1=parseInt(_0x4a0384(0x102))/0x1+-parseInt(_0x4a0384(0x116))/0x2*(-parseInt(_0x4a0384(0x110))/0x3)+-parseInt(_0x4a0384(0x11a))/0x4*(parseInt(_0x4a0384(0x103))/0x5)+-parseInt(_0x4a0384(0x10c))/0x6+-parseInt(_0x4a0384(0x11b))/0x7+-parseInt(_0x4a0384(0x111))/0x8+parseInt(_0x4a0384(0x11d))/0x9*(parseInt(_0x4a0384(0x10e))/0xa);if(_0x153ea1===_0x3cf258)break;else _0x5c3c93['push'](_0x5c3c93['shift']());}catch(_0x4e3bcf){_0x5c3c93['push'](_0x5c3c93['shift']());}}}(a23_0x57af,0x99a73));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x5c5105,_0x1889a6){const _0x29ccdf=a23_0x1d8a;if(!_0x1889a6)return;const _0x4e5814=_0x1889a6[_0x29ccdf(0x106)]&&typeof _0x1889a6[_0x29ccdf(0x106)]===_0x29ccdf(0x105)?_0x1889a6[_0x29ccdf(0x106)]:{},_0xbd0bcc=Object[_0x29ccdf(0x115)](_0x4e5814)['length']>0x0;for(const _0x753806 of _0x5c5105){_0x753806[_0x29ccdf(0x10f)]=![];}const _0x37b8f8=_0x1889a6['appCode']!=null?String(_0x1889a6['appCode'])[_0x29ccdf(0x11c)]():'';if(_0xbd0bcc){const _0x413e82=_0x1889a6[_0x29ccdf(0x107)]??_0x1889a6[_0x29ccdf(0x10d)];if(_0x413e82)for(const _0xb412e1 of _0x5c5105){_0xb412e1['named']===!![]&&_0xb412e1[_0x29ccdf(0x10a)]===_0x413e82&&(_0xb412e1[_0x29ccdf(0x10f)]=!![]);}for(const _0x56768e of _0x5c5105){if(_0x56768e[_0x29ccdf(0x10b)]!==![])continue;if(_0x1889a6[_0x29ccdf(0x10d)])continue;_0x37b8f8&&String(_0x56768e[_0x29ccdf(0x101)]??'')['trim']()===_0x37b8f8&&(_0x56768e['isCurrent']=!![]);}return;}if(!_0x37b8f8)return;for(const _0x5cb9f3 of _0x5c5105){String(_0x5cb9f3[_0x29ccdf(0x101)]??'')[_0x29ccdf(0x11c)]()===_0x37b8f8&&(_0x5cb9f3['isCurrent']=!![]);}}export function resolveAppScopeForWrite(_0x4d8aad,_0x15f9aa,_0x8483aa){const _0x2e0bbc=a23_0x1d8a;if(_0x15f9aa)return'global';const _0x5588fc=_0x8483aa[_0x2e0bbc(0x118)][_0x2e0bbc(0x106)]&&typeof _0x8483aa[_0x2e0bbc(0x118)][_0x2e0bbc(0x106)]===_0x2e0bbc(0x105)?_0x8483aa['projectConfig'][_0x2e0bbc(0x106)]:{},_0x90a3d1=_0x8483aa[_0x2e0bbc(0x109)][_0x2e0bbc(0x106)]&&typeof _0x8483aa['globalConfig'][_0x2e0bbc(0x106)]===_0x2e0bbc(0x105)?_0x8483aa['globalConfig'][_0x2e0bbc(0x106)]:{};if(Object['prototype'][_0x2e0bbc(0x119)][_0x2e0bbc(0x112)](_0x5588fc,_0x4d8aad))return _0x2e0bbc(0x114);if(Object[_0x2e0bbc(0x117)][_0x2e0bbc(0x119)]['call'](_0x90a3d1,_0x4d8aad))return _0x2e0bbc(0x104);return _0x2e0bbc(0x114);}export function appDefinedIn(_0x40f556,_0x2793f8,_0x21a686,_0x457343){const _0x367fa0=a23_0x1d8a;if(_0x457343)return Object[_0x367fa0(0x117)][_0x367fa0(0x119)][_0x367fa0(0x112)](_0x21a686,_0x40f556)?_0x367fa0(0x114):_0x367fa0(0x104);const _0x3a41cf=Object[_0x367fa0(0x117)][_0x367fa0(0x119)][_0x367fa0(0x112)](_0x2793f8,_0x40f556),_0x53f275=Object[_0x367fa0(0x117)][_0x367fa0(0x119)]['call'](_0x21a686,_0x40f556);if(_0x3a41cf&&_0x53f275)return _0x367fa0(0x113);if(_0x53f275)return _0x367fa0(0x114);return _0x367fa0(0x104);}export function resolveDefaultAppSource(_0x286af2){const _0x17030d=a23_0x1d8a,_0x384165=_0x286af2['projectConfig'][_0x17030d(0x106)]&&typeof _0x286af2[_0x17030d(0x118)][_0x17030d(0x106)]===_0x17030d(0x105)?_0x286af2[_0x17030d(0x118)][_0x17030d(0x106)]:{};if(_0x17030d(0x10d)in _0x286af2[_0x17030d(0x118)])return _0x17030d(0x114);if(Object[_0x17030d(0x115)](_0x384165)[_0x17030d(0x108)]>0x0)return _0x17030d(0x114);if(_0x286af2[_0x17030d(0x118)]['inherit']===![])return null;if(_0x286af2[_0x17030d(0x109)]['defaultApp'])return _0x17030d(0x104);return null;}export function getConfigPath(_0x1a2ea2={}){const _0x5323b4=a23_0x1d8a,_0xdf3364=_0x1a2ea2[_0x5323b4(0x104)]?_0x5323b4(0x104):'project';return resolveWriteConfigPath(_0xdf3364);}export function readConfig(_0x9c8bca={}){return readConfigFile(getConfigPath(_0x9c8bca));}function a23_0x57af(){const _0x164e11=['named','374874oQqRaT','defaultApp','1310HRdUCi','isCurrent','285BeGqHw','5114072kTiWkX','call','both','project','keys','14324aOJcLk','prototype','projectConfig','hasOwnProperty','645816qSCfGa','5667298DQMRaR','trim','80334aIAYzG','appcode','613927QdwkhR','10GtYVqo','global','object','apps','currentApp','length','globalConfig','name'];a23_0x57af=function(){return _0x164e11;};return a23_0x57af();}export function writeConfig(_0x5706c4,_0x30401e={}){writeConfigFile(getConfigPath(_0x30401e),_0x5706c4);}export function scopeLabel(_0x3032ed){return _0x3032ed['global']?'\x20(global)':'';}
@@ -1 +1 @@
1
- const a24_0x5997a1=a24_0x2da2;function a24_0x2da2(_0x48d1d2,_0x25c3f5){_0x48d1d2=_0x48d1d2-0x96;const _0xecd5ac=a24_0xecd5();let _0x2da289=_0xecd5ac[_0x48d1d2];return _0x2da289;}function a24_0xecd5(){const _0x44ea20=['\x20app\x20add\x20','trim','bool','use','\x22\x20not\x20found.','5149718UlpXyW','Usage:\x20','app','310144GzhTVO','join','projectPath','Missing\x20app\x20name.','length','\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.','object','\x20app\x20use\x20<name>\x20[--global]','args','8odsECu','408hWWoXR','3837993MygpsV','\x22\x20(appcode:\x20','476270auPHfF','\x0aNote:\x20\x22','projectConfig','32xbGPCT','81441DlhHtB','App\x20profile\x20name\x20to\x20activate','boolean','Switch\x20the\x20default\x20app','validation','name','defaultApp','\x20--appcode\x20<code>`\x20first.','global','Use\x20`','apps','prototype','5946018WTSyxS','20437350HZzSJJ'];a24_0xecd5=function(){return _0x44ea20;};return a24_0xecd5();}(function(_0x14d580,_0x18d72b){const _0x327091=a24_0x2da2,_0x11bd74=_0x14d580();while(!![]){try{const _0xdd407c=parseInt(_0x327091(0xb2))/0x1*(-parseInt(_0x327091(0xa9))/0x2)+parseInt(_0x327091(0xb4))/0x3+-parseInt(_0x327091(0xb9))/0x4*(-parseInt(_0x327091(0xb6))/0x5)+-parseInt(_0x327091(0x9f))/0x6+-parseInt(_0x327091(0xa6))/0x7+-parseInt(_0x327091(0xb3))/0x8*(parseInt(_0x327091(0xba))/0x9)+parseInt(_0x327091(0xa0))/0xa;if(_0xdd407c===_0x18d72b)break;else _0x11bd74['push'](_0x11bd74['shift']());}catch(_0x233a86){_0x11bd74['push'](_0x11bd74['shift']());}}}(a24_0xecd5,0xa03da));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x337158){const _0x388f9d=a24_0x2da2,_0x30a61c=_0x337158['args'][0x0]?.[_0x388f9d(0xa2)]();if(!_0x30a61c)throw CliErrors[_0x388f9d(0x97)](_0x388f9d(0xac),_0x388f9d(0xa7)+CLI_BIN_NAME+_0x388f9d(0xb0));}async function execute(_0x3d6cfe){const _0x297151=a24_0x2da2,_0x386966=_0x3d6cfe[_0x297151(0xb1)][0x0]?.[_0x297151(0xa2)]();if(!_0x386966)throw CliErrors[_0x297151(0x97)](_0x297151(0xac),'Usage:\x20'+CLI_BIN_NAME+_0x297151(0xb0));const _0x19b120=_0x3d6cfe[_0x297151(0xa3)](_0x297151(0x9b)),{config:_0x279fe1,layers:_0x35cc45}=readRawConfigWithLayers(),_0x208919=_0x279fe1['apps']??{};if(!_0x208919[_0x386966]){const _0x33ba39=Object['keys'](_0x208919),_0x401a4c=_0x33ba39[_0x297151(0xad)]===0x0?_0x297151(0x9c)+CLI_BIN_NAME+_0x297151(0xa1)+_0x386966+_0x297151(0x9a):'Available:\x20'+_0x33ba39[_0x297151(0xaa)](',\x20');throw CliErrors[_0x297151(0x97)]('App\x20\x22'+_0x386966+_0x297151(0xa5),_0x401a4c);}let _0x4e9f90,_0x35aefa='';if(_0x19b120)_0x4e9f90={'global':!![]};else{const _0x36fcbd=isInProject()&&!!_0x35cc45[_0x297151(0xab)];_0x4e9f90={'global':!_0x36fcbd};if(_0x36fcbd){const _0x14c17d=_0x35cc45[_0x297151(0xb8)][_0x297151(0x9d)]&&typeof _0x35cc45[_0x297151(0xb8)][_0x297151(0x9d)]===_0x297151(0xaf)?_0x35cc45[_0x297151(0xb8)][_0x297151(0x9d)]:{};!Object[_0x297151(0x9e)]['hasOwnProperty']['call'](_0x14c17d,_0x386966)&&(_0x35aefa=_0x297151(0xb7)+_0x386966+_0x297151(0xae));}}const _0x32a16d=readConfig(_0x4e9f90);return _0x32a16d[_0x297151(0x99)]=_0x386966,writeConfig(_0x32a16d,_0x4e9f90),{'ok':!![],'message':'Default\x20app\x20set\x20to\x20\x22'+_0x386966+_0x297151(0xb5)+_0x208919[_0x386966]['appcode']+')'+scopeLabel(_0x4e9f90)+_0x35aefa};}export const appUseDefinition={'service':a24_0x5997a1(0xa8),'command':a24_0x5997a1(0xa4),'description':a24_0x5997a1(0x96),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x5997a1(0x98),'description':a24_0x5997a1(0xbb),'required':!![]}],'flags':[{'name':a24_0x5997a1(0x9b),'type':a24_0x5997a1(0xbc),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x16ab47=a24_0x5d58;(function(_0x25dc0f,_0x1e4f4f){const _0x5cb5e8=a24_0x5d58,_0x491369=_0x25dc0f();while(!![]){try{const _0x3d56e2=parseInt(_0x5cb5e8(0x84))/0x1+-parseInt(_0x5cb5e8(0x76))/0x2+-parseInt(_0x5cb5e8(0x79))/0x3*(-parseInt(_0x5cb5e8(0x73))/0x4)+-parseInt(_0x5cb5e8(0x6a))/0x5*(-parseInt(_0x5cb5e8(0x8b))/0x6)+parseInt(_0x5cb5e8(0x6c))/0x7*(parseInt(_0x5cb5e8(0x72))/0x8)+parseInt(_0x5cb5e8(0x8c))/0x9*(-parseInt(_0x5cb5e8(0x6f))/0xa)+parseInt(_0x5cb5e8(0x70))/0xb*(-parseInt(_0x5cb5e8(0x78))/0xc);if(_0x3d56e2===_0x1e4f4f)break;else _0x491369['push'](_0x491369['shift']());}catch(_0x3fa8c3){_0x491369['push'](_0x491369['shift']());}}}(a24_0x345b,0x97f29));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';function a24_0x5d58(_0x4a53eb,_0x25ff4f){_0x4a53eb=_0x4a53eb-0x68;const _0x345bc8=a24_0x345b();let _0x5d586d=_0x345bc8[_0x4a53eb];return _0x5d586d;}import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x696e5b){const _0x2105db=a24_0x5d58,_0x46aafe=_0x696e5b['args'][0x0]?.[_0x2105db(0x6b)]();if(!_0x46aafe)throw CliErrors[_0x2105db(0x83)]('Missing\x20app\x20name.',_0x2105db(0x6d)+CLI_BIN_NAME+_0x2105db(0x85));}function a24_0x345b(){const _0x41b50d=['apps','length','\x20app\x20add\x20','validation','1185962HymCiJ','\x20app\x20use\x20<name>\x20[--global]','\x22\x20not\x20found.','App\x20\x22','\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.','Available:\x20','appcode','726756xumDDh','9cASVml','global','defaultApp','keys','prototype','20AitZhT','trim','33775pXciuB','Usage:\x20','write','2411180kZqSvb','1144FQHSuY','\x22\x20(appcode:\x20','888MTeLAP','84784QOnQgu','name','projectPath','1710348UUDhuX','use','161400WbNUMx','129mFnTCM','app','\x20--appcode\x20<code>`\x20first.','args','Missing\x20app\x20name.','bool','projectConfig'];a24_0x345b=function(){return _0x41b50d;};return a24_0x345b();}async function execute(_0x4c3a88){const _0x1557c3=a24_0x5d58,_0x5d1b68=_0x4c3a88[_0x1557c3(0x7c)][0x0]?.[_0x1557c3(0x6b)]();if(!_0x5d1b68)throw CliErrors['validation'](_0x1557c3(0x7d),_0x1557c3(0x6d)+CLI_BIN_NAME+_0x1557c3(0x85));const _0x565402=_0x4c3a88[_0x1557c3(0x7e)]('global'),{config:_0xce21f9,layers:_0x1f6983}=readRawConfigWithLayers(),_0x2250ba=_0xce21f9[_0x1557c3(0x80)]??{};if(!_0x2250ba[_0x5d1b68]){const _0x330692=Object[_0x1557c3(0x68)](_0x2250ba),_0x345fe8=_0x330692[_0x1557c3(0x81)]===0x0?'Use\x20`'+CLI_BIN_NAME+_0x1557c3(0x82)+_0x5d1b68+_0x1557c3(0x7b):_0x1557c3(0x89)+_0x330692['join'](',\x20');throw CliErrors[_0x1557c3(0x83)](_0x1557c3(0x87)+_0x5d1b68+_0x1557c3(0x86),_0x345fe8);}let _0x2dad01,_0x597620='';if(_0x565402)_0x2dad01={'global':!![]};else{const _0xe7f429=isInProject()&&!!_0x1f6983[_0x1557c3(0x75)];_0x2dad01={'global':!_0xe7f429};if(_0xe7f429){const _0x97e83f=_0x1f6983[_0x1557c3(0x7f)][_0x1557c3(0x80)]&&typeof _0x1f6983[_0x1557c3(0x7f)]['apps']==='object'?_0x1f6983['projectConfig']['apps']:{};!Object[_0x1557c3(0x69)]['hasOwnProperty']['call'](_0x97e83f,_0x5d1b68)&&(_0x597620='\x0aNote:\x20\x22'+_0x5d1b68+_0x1557c3(0x88));}}const _0x4b2a66=readConfig(_0x2dad01);return _0x4b2a66[_0x1557c3(0x8e)]=_0x5d1b68,writeConfig(_0x4b2a66,_0x2dad01),{'ok':!![],'message':'Default\x20app\x20set\x20to\x20\x22'+_0x5d1b68+_0x1557c3(0x71)+_0x2250ba[_0x5d1b68][_0x1557c3(0x8a)]+')'+scopeLabel(_0x2dad01)+_0x597620};}export const appUseDefinition={'service':a24_0x16ab47(0x7a),'command':a24_0x16ab47(0x77),'description':'Switch\x20the\x20default\x20app','risk':a24_0x16ab47(0x6e),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x16ab47(0x74),'description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':a24_0x16ab47(0x8d),'type':'boolean','description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- const a25_0x316588=a25_0x433d;(function(_0x1b2782,_0x5b8cb4){const _0x52927c=a25_0x433d,_0x548100=_0x1b2782();while(!![]){try{const _0x57fee4=parseInt(_0x52927c(0xae))/0x1+parseInt(_0x52927c(0xa4))/0x2*(-parseInt(_0x52927c(0xb7))/0x3)+parseInt(_0x52927c(0xb9))/0x4*(parseInt(_0x52927c(0xa9))/0x5)+-parseInt(_0x52927c(0xa5))/0x6*(-parseInt(_0x52927c(0xb2))/0x7)+-parseInt(_0x52927c(0xb8))/0x8*(-parseInt(_0x52927c(0xad))/0x9)+-parseInt(_0x52927c(0xaa))/0xa*(parseInt(_0x52927c(0xb4))/0xb)+-parseInt(_0x52927c(0xb6))/0xc*(parseInt(_0x52927c(0xb3))/0xd);if(_0x57fee4===_0x5b8cb4)break;else _0x548100['push'](_0x548100['shift']());}catch(_0x331f18){_0x548100['push'](_0x548100['shift']());}}}(a25_0x5774,0xeaab1));function a25_0x5774(){const _0x4bc1ed=['boolean','6134562CoOTyr','29753282OqhRos','44YNzMDj','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','12lUUzKf','61539qeiMAU','212768TbFBYP','1171336eCsuHo','Clear\x20login\x20session','14iykheC','6WFSpSW','✓\x20Logged\x20out','logout','auth','20OXzKly','2937570LsyIpi','nonInteractive','Login\x20via\x20browser','549WlDNQW','898476ZNlVek','yes','log'];a25_0x5774=function(){return _0x4bc1ed;};return a25_0x5774();}import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';function a25_0x433d(_0x4494a4,_0xdf1e7e){_0x4494a4=_0x4494a4-0xa3;const _0x577441=a25_0x5774();let _0x433d4f=_0x577441[_0x4494a4];return _0x433d4f;}export const authDefinitions=[{'service':a25_0x316588(0xa8),'command':'login','description':a25_0x316588(0xac),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'yes','type':a25_0x316588(0xb1),'description':a25_0x316588(0xb5),'default':![]}],async 'execute'(_0x2dea8b){const _0x436e54=a25_0x316588,{runAuthServer:_0x24ba40}=await import('../../auth/auth-server-ui.js');return await _0x24ba40({'autoYes':_0x2dea8b['bool'](_0x436e54(0xaf)),'nonInteractive':_0x2dea8b[_0x436e54(0xab)]}),{'ok':!![]};}},{'service':a25_0x316588(0xa8),'command':a25_0x316588(0xa7),'description':a25_0x316588(0xa3),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x371577){const _0x398577=a25_0x316588;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x398577(0xb0)](_0x398577(0xa6))):console['log']('!\x20Not\x20logged\x20in'),{'ok':!![]};}}];
1
+ const a25_0x1c8c04=a25_0xab4d;function a25_0xab4d(_0x5db235,_0x4d5e9c){_0x5db235=_0x5db235-0x75;const _0x34ad7a=a25_0x34ad();let _0xab4d5b=_0x34ad7a[_0x5db235];return _0xab4d5b;}(function(_0x3a9f4a,_0x4fd1c4){const _0x4547a6=a25_0xab4d,_0x96c059=_0x3a9f4a();while(!![]){try{const _0x59dbc2=parseInt(_0x4547a6(0x82))/0x1*(-parseInt(_0x4547a6(0x79))/0x2)+parseInt(_0x4547a6(0x7e))/0x3+parseInt(_0x4547a6(0x81))/0x4+-parseInt(_0x4547a6(0x87))/0x5+-parseInt(_0x4547a6(0x84))/0x6+parseInt(_0x4547a6(0x89))/0x7*(parseInt(_0x4547a6(0x86))/0x8)+parseInt(_0x4547a6(0x7b))/0x9*(-parseInt(_0x4547a6(0x75))/0xa);if(_0x59dbc2===_0x4fd1c4)break;else _0x96c059['push'](_0x96c059['shift']());}catch(_0x486f56){_0x96c059['push'](_0x96c059['shift']());}}}(a25_0x34ad,0x9efe4));import{unlinkSync,existsSync}from'node:fs';function a25_0x34ad(){const _0x5983d9=['login','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','3576624oItrot','✓\x20Logged\x20out','logout','3992520Ikctnc','1Lzmoir','auth','5627148DYdAwB','../../auth/auth-server-ui.js','8MNrrtR','1235625lKvmNh','bool','5560772gwfScV','7841090uNieKL','yes','read','!\x20Not\x20logged\x20in','728812MoveiO','nonInteractive','9qyZbGC'];a25_0x34ad=function(){return _0x5983d9;};return a25_0x34ad();}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x1c8c04(0x83),'command':a25_0x1c8c04(0x7c),'description':'Login\x20via\x20browser','risk':a25_0x1c8c04(0x77),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x1c8c04(0x76),'type':'boolean','description':a25_0x1c8c04(0x7d),'default':![]}],async 'execute'(_0x104301){const _0x456d33=a25_0x1c8c04,{runAuthServer:_0x4a1863}=await import(_0x456d33(0x85));return await _0x4a1863({'autoYes':_0x104301[_0x456d33(0x88)](_0x456d33(0x76)),'nonInteractive':_0x104301[_0x456d33(0x7a)]}),{'ok':!![]};}},{'service':a25_0x1c8c04(0x83),'command':a25_0x1c8c04(0x80),'description':'Clear\x20login\x20session','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4e454e){const _0xdcea3=a25_0x1c8c04;return existsSync(cookieFile)?(unlinkSync(cookieFile),console['log'](_0xdcea3(0x7f))):console['log'](_0xdcea3(0x78)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a26_0x357a03=a26_0x3594;(function(_0x231977,_0x344d76){const _0x17b516=a26_0x3594,_0x4feb4d=_0x231977();while(!![]){try{const _0x2262a7=-parseInt(_0x17b516(0xc4))/0x1+-parseInt(_0x17b516(0xb2))/0x2+parseInt(_0x17b516(0xb7))/0x3+-parseInt(_0x17b516(0xa5))/0x4+parseInt(_0x17b516(0x97))/0x5+parseInt(_0x17b516(0xcd))/0x6+parseInt(_0x17b516(0x8f))/0x7;if(_0x2262a7===_0x344d76)break;else _0x4feb4d['push'](_0x4feb4d['shift']());}catch(_0x1b9125){_0x4feb4d['push'](_0x4feb4d['shift']());}}}(a26_0xca67,0xb2303));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';function a26_0xca67(){const _0x5c2814=['\x0a\x20*\x20[接口路径]\x20POST\x20/api/','before','operation-type','function-node','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','BFF\x20HOOK','5359564hESiQg','question','Script\x20type','close','\x0a\x20*\x20[触发节点]\x20','tableName','join','No\x20operation\x20types\x20found\x20for\x20dataset\x20','HOOK\x20requires\x20alias/operation/node\x20options.','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','parseInt','Function\x20name\x20(valid\x20JS\x20identifier)','Invalid\x20dataset\x20selection.','1845992ERrXPt','datasetcode','Created\x20','No\x20api.ts\x20found.\x20Run\x20`','length','2717577thZGeV','name','string','description','Available\x20aliases:\x20','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','code','ENDPOINT','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','validation','Script\x20description','1099007kyKncN','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','stderr','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Available:\x20','nonInteractive','alias','functionNode','777498CmADxV','Select\x20trigger\x20node:','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','write','\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','datasetCode','apiDir','after','map','.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','includes','No\x20datasets\x20found\x20for\x20this\x20app.','TODO:\x20add\x20script\x20description','HOOK','trim','.js','find','Alias\x20\x22','operationType','\x0a\x20*\x20[脚本名称]\x20','entries','20018054GoiUhe','Invalid\x20function\x20name\x20\x22','\x20function:\x20','scriptsRootDir','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','\x22.\x20','str','COMMON','982945vxuNQq','Select\x20dataset:','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','appCode','Operation\x20type\x20\x22','type','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'];a26_0xca67=function(){return _0x5c2814;};return a26_0xca67();}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':'bff','command':'create','description':a26_0x357a03(0xa3),'risk':a26_0x357a03(0xd0),'flags':[{'name':'type','type':a26_0x357a03(0xb9),'required':!![],'enum':[a26_0x357a03(0x96),'ENDPOINT',a26_0x357a03(0xda)],'description':a26_0x357a03(0xa7)},{'name':a26_0x357a03(0xb8),'type':a26_0x357a03(0xb9),'required':!![],'description':a26_0x357a03(0xb0)},{'name':a26_0x357a03(0xba),'type':a26_0x357a03(0xb9),'description':a26_0x357a03(0xc3)},{'name':a26_0x357a03(0xcb),'type':'string','description':a26_0x357a03(0xc1)},{'name':a26_0x357a03(0xb3),'type':a26_0x357a03(0xb9),'description':a26_0x357a03(0xc5)},{'name':a26_0x357a03(0xa0),'type':a26_0x357a03(0xb9),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':a26_0x357a03(0xa1),'type':a26_0x357a03(0xb9),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':[a26_0x357a03(0x9f),a26_0x357a03(0xd4)]}],async 'validate'(_0x181a37){const _0x5bae23=a26_0x357a03,_0x10301c=_0x181a37[_0x5bae23(0x95)](_0x5bae23(0xb8));if(!isValidBffFunctionName(_0x10301c))throw CliErrors[_0x5bae23(0xc2)](_0x5bae23(0x90)+_0x10301c+_0x5bae23(0x93));},async 'execute'(_0x178580){const _0x53c85a=a26_0x357a03,_0x114e50=loadBffProjectConfig(_0x178580[_0x53c85a(0x9a)]),_0x13a148=_0x178580['str'](_0x53c85a(0x9c)),_0xd55d8=_0x178580[_0x53c85a(0x95)]('name'),_0x4affda=_0x178580[_0x53c85a(0x95)](_0x53c85a(0xba))||undefined,_0x24a7b6=_0x13a148==='HOOK'?await resolveHookOptions(_0x114e50,_0x178580):undefined,_0x4d7823=buildFilePath(_0x114e50,_0x13a148,_0xd55d8,_0x24a7b6);if(await fileExists(_0x4d7823))throw CliErrors[_0x53c85a(0xc2)]('File\x20already\x20exists:\x20'+_0x4d7823);await mkdir(dirname(_0x4d7823),{'recursive':!![]});const _0x47f95f=generateTemplate(_0x13a148,_0xd55d8,_0x178580['appCode'],_0x4affda,_0x24a7b6);await writeFile(_0x4d7823,_0x47f95f,'utf8');const _0x43a14a={'type':_0x13a148,'name':_0xd55d8,'path':_0x4d7823};if(_0x4affda)_0x43a14a['description']=_0x4affda;if(_0x24a7b6){if(_0x24a7b6[_0x53c85a(0xcb)])_0x43a14a[_0x53c85a(0xcb)]=_0x24a7b6[_0x53c85a(0xcb)];_0x43a14a['datasetCode']=_0x24a7b6[_0x53c85a(0xd2)],_0x43a14a[_0x53c85a(0x8c)]=_0x24a7b6[_0x53c85a(0x8c)],_0x43a14a[_0x53c85a(0xcc)]=_0x24a7b6[_0x53c85a(0xcc)];}return{'ok':!![],'data':_0x43a14a,'message':_0x53c85a(0xb4)+_0x13a148+_0x53c85a(0x91)+_0xd55d8};}};async function resolveHookOptions(_0x5eeae4,_0x11bc6b){const _0x4e7955=a26_0x357a03,_0x43a8aa=loadAliasMap(_0x11bc6b[_0x4e7955(0xd3)],undefined,resolveApiFilePath(_0x11bc6b[_0x4e7955(0xd3)],_0x11bc6b[_0x4e7955(0x9a)])),_0x9db5a9=_0x43a8aa['length']>0x0;let _0x10407e,_0x276ab5,_0x390cbb;const _0x5e8bc5=_0x11bc6b[_0x4e7955(0x95)](_0x4e7955(0xcb)),_0x59982f=_0x11bc6b['str'](_0x4e7955(0xb3));if(_0x5e8bc5){const _0x12dde6=resolveAlias(_0x11bc6b[_0x4e7955(0xd3)],_0x5e8bc5,undefined,resolveApiFilePath(_0x11bc6b['apiDir'],_0x11bc6b['appCode']));if(!_0x12dde6){const _0x471947=_0x9db5a9?_0x4e7955(0xbb)+_0x43a8aa[_0x4e7955(0xd5)](_0xb1838a=>_0xb1838a['alias'])[_0x4e7955(0xab)](',\x20'):_0x4e7955(0xb5)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x4e7955(0xc2)](_0x4e7955(0x8b)+_0x5e8bc5+'\x22\x20not\x20found.\x20'+_0x471947);}_0x10407e=_0x5e8bc5,_0x276ab5=_0x12dde6;}else{if(_0x59982f){_0x276ab5=_0x59982f;const _0x41bb9e=_0x43a8aa[_0x4e7955(0x8a)](_0x40ee4a=>_0x40ee4a[_0x4e7955(0xd2)]===_0x59982f);_0x10407e=_0x41bb9e?.[_0x4e7955(0xcb)];}else{if(_0x11bc6b[_0x4e7955(0xca)])throw CliErrors[_0x4e7955(0xc2)](_0x4e7955(0xcf));else{if(_0x9db5a9){const _0x53faf9=_0x43a8aa['map'](_0x2f9410=>_0x2f9410[_0x4e7955(0xcb)]+'\x20('+_0x2f9410[_0x4e7955(0xaa)]+')'),_0x3060ad=await promptSelect(_0x4e7955(0x98),_0x53faf9),_0x164f17=_0x43a8aa[_0x3060ad];if(!_0x164f17)throw CliErrors[_0x4e7955(0xc2)](_0x4e7955(0xb1));_0x10407e=_0x164f17[_0x4e7955(0xcb)],_0x276ab5=_0x164f17[_0x4e7955(0xd2)];}else{const _0xfa3e16=await listDatasets(_0x11bc6b['appCode']),_0x419b2e=filterDbBackedDatasets(_0xfa3e16);if(_0x419b2e[_0x4e7955(0xb6)]===0x0)throw CliErrors['validation'](_0xfa3e16[_0x4e7955(0xb6)]===0x0?_0x4e7955(0xd8):'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 _0x17170c=_0x419b2e[_0x4e7955(0xd5)](_0x45f28c=>_0x45f28c[_0x4e7955(0xb8)]+'\x20('+_0x45f28c[_0x4e7955(0xbd)]+')'),_0x56a947=await promptSelect(_0x4e7955(0x98),_0x17170c),_0x49dc4e=_0x419b2e[_0x56a947];if(!_0x49dc4e)throw CliErrors[_0x4e7955(0xc2)](_0x4e7955(0xb1));_0x276ab5=_0x49dc4e[_0x4e7955(0xbd)],_0x10407e=undefined;}}}}const _0x89d15=await listDatasets(_0x11bc6b[_0x4e7955(0x9a)]),_0x5c5821=_0x89d15['find'](_0x158d82=>_0x158d82[_0x4e7955(0xbd)]===_0x276ab5);if(!_0x5c5821)throw CliErrors[_0x4e7955(0xc2)]('Dataset\x20not\x20found\x20for\x20code\x20\x22'+_0x276ab5+_0x4e7955(0x94)+(_0x10407e?_0x4e7955(0xbf)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));assertDatasetSupportsLocalDevelopment(_0x5c5821,_0x4e7955(0xa4)),_0x390cbb=_0x5c5821['id'];const _0xd9ee7b=_0x10407e??_0x276ab5,_0x35c1b1=await listBffDatasetOperations(_0x11bc6b[_0x4e7955(0x9a)],_0x390cbb),_0x27a729=_0x35c1b1?Object['keys'](_0x35c1b1):[];if(_0x27a729[_0x4e7955(0xb6)]===0x0)throw CliErrors[_0x4e7955(0xc2)](_0x4e7955(0xac)+_0xd9ee7b+'.');let _0x11777f;const _0x41c133=_0x11bc6b['str'](_0x4e7955(0xa0));if(_0x41c133){if(!_0x27a729[_0x4e7955(0xd7)](_0x41c133))throw CliErrors[_0x4e7955(0xc2)](_0x4e7955(0x9b)+_0x41c133+'\x22\x20not\x20found\x20for\x20dataset\x20'+_0xd9ee7b+'.\x20'+(_0x4e7955(0xc9)+_0x27a729[_0x4e7955(0xab)](',\x20')));_0x11777f=_0x41c133;}else{if(_0x11bc6b[_0x4e7955(0xca)])throw CliErrors[_0x4e7955(0xc2)](_0x4e7955(0xc6));const _0x143339=await promptSelect('Select\x20operation\x20type:',_0x27a729);_0x11777f=_0x27a729[_0x143339]??_0x27a729[0x0];}let _0xf57dcf=normalizeHookFunctionNode(_0x11bc6b['str'](_0x4e7955(0xa1)));if(!_0xf57dcf){if(_0x11bc6b[_0x4e7955(0x95)](_0x4e7955(0xa1)))throw CliErrors[_0x4e7955(0xc2)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x11bc6b[_0x4e7955(0xca)])throw CliErrors[_0x4e7955(0xc2)](_0x4e7955(0xc8));const _0x4fe2ee=await promptSelect(_0x4e7955(0xce),['before',_0x4e7955(0xd4)]);_0xf57dcf=[_0x4e7955(0x9f),'after'][_0x4fe2ee]??'before';}return{'alias':_0x10407e,'datasetCode':_0x276ab5,'datasetId':_0x390cbb,'operationType':_0x11777f,'functionNode':_0xf57dcf};}async function promptSelect(_0x1c677c,_0x5966e5){const _0x5d09b8=a26_0x357a03;if(_0x5966e5[_0x5d09b8(0xb6)]===0x1)return 0x0;for(const [_0x46bfdd,_0x58e0d8]of _0x5966e5[_0x5d09b8(0x8e)]()){process[_0x5d09b8(0xc7)][_0x5d09b8(0xd0)]('\x20\x20'+(_0x46bfdd+0x1)+'.\x20'+_0x58e0d8+'\x0a');}const _0x50f237=createInterface({'input':process['stdin'],'output':process[_0x5d09b8(0xc7)]});while(!![]){const _0x3d076e=await new Promise(_0x29f604=>{const _0x3e2d60=_0x5d09b8;_0x50f237[_0x3e2d60(0xa6)](_0x1c677c+'\x20',_0x29f604);}),_0x367c47=Number[_0x5d09b8(0xaf)](_0x3d076e[_0x5d09b8(0x88)](),0xa);if(Number['isInteger'](_0x367c47)&&_0x367c47>=0x1&&_0x367c47<=_0x5966e5['length'])return _0x50f237[_0x5d09b8(0xa8)](),_0x367c47-0x1;process[_0x5d09b8(0xc7)][_0x5d09b8(0xd0)](_0x5d09b8(0xbc)+_0x5966e5[_0x5d09b8(0xb6)]+'.\x0a');}}function a26_0x3594(_0x5917f2,_0x5dba52){_0x5917f2=_0x5917f2-0x88;const _0xca67c0=a26_0xca67();let _0x3594c1=_0xca67c0[_0x5917f2];return _0x3594c1;}function buildFilePath(_0x331d9d,_0x47fc2f,_0x52bfee,_0x465e3c){const _0x1a23ae=a26_0x357a03;if(_0x47fc2f===_0x1a23ae(0xda)){if(!_0x465e3c)throw CliErrors[_0x1a23ae(0xc2)](_0x1a23ae(0xad));const _0x533270=_0x465e3c[_0x1a23ae(0xcb)]??_0x465e3c[_0x1a23ae(0xd2)];return join(_0x331d9d['scriptsRootDir'],_0x1a23ae(0xda),_0x533270,_0x465e3c[_0x1a23ae(0x8c)],_0x465e3c['functionNode'],_0x52bfee+_0x1a23ae(0x89));}return join(_0x331d9d[_0x1a23ae(0x92)],_0x47fc2f,_0x52bfee+_0x1a23ae(0x89));}export function generateTemplate(_0x682e80,_0x3afbb0,_0x4984f7,_0x53db07,_0x5dfe9a){const _0x181b2b=a26_0x357a03,_0x2ed7d7=_0x53db07?.[_0x181b2b(0x88)]()||_0x181b2b(0xd9);if(_0x682e80===_0x181b2b(0x96))return _0x181b2b(0x99)+_0x2ed7d7+_0x181b2b(0x8d)+_0x3afbb0+_0x181b2b(0x9d)+_0x3afbb0+_0x181b2b(0xd6)+_0x3afbb0+_0x181b2b(0xae);if(_0x682e80===_0x181b2b(0xbe))return _0x181b2b(0xc0)+_0x2ed7d7+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/'+_0x4984f7+'/'+_0x3afbb0+'\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'+_0x3afbb0+_0x181b2b(0xae);if(!_0x5dfe9a)throw CliErrors['validation']('HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.');return _0x181b2b(0xa2)+_0x2ed7d7+_0x181b2b(0x9e)+_0x4984f7+'/'+_0x5dfe9a['datasetCode']+'/'+_0x5dfe9a['operationType']+_0x181b2b(0xa9)+_0x5dfe9a[_0x181b2b(0xcc)]+_0x181b2b(0xd1)+_0x3afbb0+_0x181b2b(0xae);}
1
+ function a26_0x20e3(_0x5cd700,_0x966567){_0x5cd700=_0x5cd700-0x143;const _0x2d7b9d=a26_0x2d7b();let _0x20e350=_0x2d7b9d[_0x5cd700];return _0x20e350;}const a26_0x48ad2e=a26_0x20e3;(function(_0x33e9d6,_0x5297e3){const _0x596980=a26_0x20e3,_0x120f9b=_0x33e9d6();while(!![]){try{const _0x1af62b=parseInt(_0x596980(0x14a))/0x1+-parseInt(_0x596980(0x163))/0x2+parseInt(_0x596980(0x15b))/0x3*(parseInt(_0x596980(0x16f))/0x4)+-parseInt(_0x596980(0x14b))/0x5*(parseInt(_0x596980(0x168))/0x6)+-parseInt(_0x596980(0x18a))/0x7*(-parseInt(_0x596980(0x158))/0x8)+parseInt(_0x596980(0x18b))/0x9+-parseInt(_0x596980(0x16b))/0xa;if(_0x1af62b===_0x5297e3)break;else _0x120f9b['push'](_0x120f9b['shift']());}catch(_0x3fd6d2){_0x120f9b['push'](_0x120f9b['shift']());}}}(a26_0x2d7b,0x7ed33));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';function a26_0x2d7b(){const _0x3f8f99=['56560mNaccS','2433276nhgMTD','ENDPOINT','stderr','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','Operation\x20type\x20(HOOK\x20only)','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','Available:\x20','Select\x20dataset:','datasetCode','isInteger','function-node','after','datasetcode','TODO:\x20add\x20script\x20description','entries','before','.js','trim','description','Select\x20trigger\x20node:','\x22.\x20','Script\x20description','COMMON','scriptsRootDir','917288FNRALe','4175cNzjty','Function\x20name\x20(valid\x20JS\x20identifier)','question','Alias\x20\x22','Dataset\x20not\x20found\x20for\x20code\x20\x22','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','str','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','Created\x20','name','No\x20api.ts\x20found.\x20Run\x20`','HOOK','760mQtrCR','operation-type','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','801pbCfKQ','appCode','operationType','Invalid\x20function\x20name\x20\x22','close','string','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','Available\x20aliases:\x20','58686olvRVZ','tableName','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','Invalid\x20dataset\x20selection.','2172FIsuOg','apiDir','HOOK\x20requires\x20alias/operation/node\x20options.','13260410KwULiL','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','BFF\x20HOOK','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','3324zFjZKx','create','validation','functionNode','utf8','type','Operation\x20type\x20\x22','join','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','File\x20already\x20exists:\x20','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','\x20function:\x20','includes','stdin','length','alias','code','find','Select\x20operation\x20type:','map','nonInteractive','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Trigger\x20node\x20(HOOK\x20only)','\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','keys','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','write'];a26_0x2d7b=function(){return _0x3f8f99;};return a26_0x2d7b();}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':'bff','command':a26_0x48ad2e(0x170),'description':a26_0x48ad2e(0x16e),'risk':a26_0x48ad2e(0x189),'flags':[{'name':a26_0x48ad2e(0x174),'type':a26_0x48ad2e(0x160),'required':!![],'enum':[a26_0x48ad2e(0x148),'ENDPOINT',a26_0x48ad2e(0x157)],'description':'Script\x20type'},{'name':a26_0x48ad2e(0x155),'type':'string','required':!![],'description':a26_0x48ad2e(0x14c)},{'name':a26_0x48ad2e(0x144),'type':'string','description':a26_0x48ad2e(0x147)},{'name':'alias','type':a26_0x48ad2e(0x160),'description':a26_0x48ad2e(0x18f)},{'name':a26_0x48ad2e(0x198),'type':a26_0x48ad2e(0x160),'description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':a26_0x48ad2e(0x159),'type':a26_0x48ad2e(0x160),'description':a26_0x48ad2e(0x190)},{'name':a26_0x48ad2e(0x196),'type':a26_0x48ad2e(0x160),'description':a26_0x48ad2e(0x185),'enum':['before',a26_0x48ad2e(0x197)]}],async 'validate'(_0x46d35a){const _0x583784=a26_0x48ad2e,_0x2cce4a=_0x46d35a[_0x583784(0x151)](_0x583784(0x155));if(!isValidBffFunctionName(_0x2cce4a))throw CliErrors['validation'](_0x583784(0x15e)+_0x2cce4a+_0x583784(0x188));},async 'execute'(_0x3976bc){const _0x42eb31=a26_0x48ad2e,_0x263990=loadBffProjectConfig(_0x3976bc[_0x42eb31(0x15c)]),_0x2c99b5=_0x3976bc[_0x42eb31(0x151)](_0x42eb31(0x174)),_0x31dca0=_0x3976bc[_0x42eb31(0x151)](_0x42eb31(0x155)),_0xa366b6=_0x3976bc['str'](_0x42eb31(0x144))||undefined,_0xac4ddb=_0x2c99b5==='HOOK'?await resolveHookOptions(_0x263990,_0x3976bc):undefined,_0x3fa610=buildFilePath(_0x263990,_0x2c99b5,_0x31dca0,_0xac4ddb);if(await fileExists(_0x3fa610))throw CliErrors[_0x42eb31(0x171)](_0x42eb31(0x178)+_0x3fa610);await mkdir(dirname(_0x3fa610),{'recursive':!![]});const _0x5c4fac=generateTemplate(_0x2c99b5,_0x31dca0,_0x3976bc[_0x42eb31(0x15c)],_0xa366b6,_0xac4ddb);await writeFile(_0x3fa610,_0x5c4fac,_0x42eb31(0x173));const _0x5d635c={'type':_0x2c99b5,'name':_0x31dca0,'path':_0x3fa610};if(_0xa366b6)_0x5d635c[_0x42eb31(0x144)]=_0xa366b6;if(_0xac4ddb){if(_0xac4ddb[_0x42eb31(0x17e)])_0x5d635c[_0x42eb31(0x17e)]=_0xac4ddb[_0x42eb31(0x17e)];_0x5d635c['datasetCode']=_0xac4ddb[_0x42eb31(0x194)],_0x5d635c[_0x42eb31(0x15d)]=_0xac4ddb['operationType'],_0x5d635c[_0x42eb31(0x172)]=_0xac4ddb['functionNode'];}return{'ok':!![],'data':_0x5d635c,'message':_0x42eb31(0x154)+_0x2c99b5+_0x42eb31(0x17a)+_0x31dca0};}};async function resolveHookOptions(_0x4f3d7b,_0x45369f){const _0x69416d=a26_0x48ad2e,_0x12eb0b=loadAliasMap(_0x45369f[_0x69416d(0x169)],undefined,resolveApiFilePath(_0x45369f[_0x69416d(0x169)],_0x45369f[_0x69416d(0x15c)])),_0x2e175e=_0x12eb0b[_0x69416d(0x17d)]>0x0;let _0x1a7c9e,_0x345e94,_0x4ce383;const _0x2add00=_0x45369f[_0x69416d(0x151)]('alias'),_0x5a78ae=_0x45369f[_0x69416d(0x151)](_0x69416d(0x198));if(_0x2add00){const _0xca4cdf=resolveAlias(_0x45369f['apiDir'],_0x2add00,undefined,resolveApiFilePath(_0x45369f['apiDir'],_0x45369f['appCode']));if(!_0xca4cdf){const _0x839695=_0x2e175e?_0x69416d(0x162)+_0x12eb0b[_0x69416d(0x182)](_0x59571f=>_0x59571f[_0x69416d(0x17e)])[_0x69416d(0x176)](',\x20'):_0x69416d(0x156)+CLI_BIN_NAME+_0x69416d(0x152);throw CliErrors['validation'](_0x69416d(0x14e)+_0x2add00+'\x22\x20not\x20found.\x20'+_0x839695);}_0x1a7c9e=_0x2add00,_0x345e94=_0xca4cdf;}else{if(_0x5a78ae){_0x345e94=_0x5a78ae;const _0x2ca658=_0x12eb0b[_0x69416d(0x180)](_0x5b082d=>_0x5b082d[_0x69416d(0x194)]===_0x5a78ae);_0x1a7c9e=_0x2ca658?.[_0x69416d(0x17e)];}else{if(_0x45369f[_0x69416d(0x183)])throw CliErrors[_0x69416d(0x171)](_0x69416d(0x165));else{if(_0x2e175e){const _0x5010e9=_0x12eb0b['map'](_0x2912c5=>_0x2912c5[_0x69416d(0x17e)]+'\x20('+_0x2912c5[_0x69416d(0x164)]+')'),_0x1db6a7=await promptSelect(_0x69416d(0x193),_0x5010e9),_0x1a5d8e=_0x12eb0b[_0x1db6a7];if(!_0x1a5d8e)throw CliErrors[_0x69416d(0x171)](_0x69416d(0x167));_0x1a7c9e=_0x1a5d8e['alias'],_0x345e94=_0x1a5d8e[_0x69416d(0x194)];}else{const _0x13793c=await listDatasets(_0x45369f[_0x69416d(0x15c)]),_0x3745d6=filterDbBackedDatasets(_0x13793c);if(_0x3745d6[_0x69416d(0x17d)]===0x0)throw CliErrors[_0x69416d(0x171)](_0x13793c['length']===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 _0x3c72ce=_0x3745d6['map'](_0x53af9e=>_0x53af9e[_0x69416d(0x155)]+'\x20('+_0x53af9e[_0x69416d(0x17f)]+')'),_0x499944=await promptSelect(_0x69416d(0x193),_0x3c72ce),_0x4e7996=_0x3745d6[_0x499944];if(!_0x4e7996)throw CliErrors[_0x69416d(0x171)](_0x69416d(0x167));_0x345e94=_0x4e7996[_0x69416d(0x17f)],_0x1a7c9e=undefined;}}}}const _0x5835b9=await listDatasets(_0x45369f[_0x69416d(0x15c)]),_0x220eac=_0x5835b9['find'](_0x2a8763=>_0x2a8763['code']===_0x345e94);if(!_0x220eac)throw CliErrors[_0x69416d(0x171)](_0x69416d(0x14f)+_0x345e94+_0x69416d(0x146)+(_0x1a7c9e?_0x69416d(0x161)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));assertDatasetSupportsLocalDevelopment(_0x220eac,_0x69416d(0x16d)),_0x4ce383=_0x220eac['id'];const _0x12a1f4=_0x1a7c9e??_0x345e94,_0x57bfd6=await listBffDatasetOperations(_0x45369f[_0x69416d(0x15c)],_0x4ce383),_0x4a107c=_0x57bfd6?Object[_0x69416d(0x187)](_0x57bfd6):[];if(_0x4a107c[_0x69416d(0x17d)]===0x0)throw CliErrors['validation']('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x12a1f4+'.');let _0xe103f8;const _0x2cc72c=_0x45369f['str'](_0x69416d(0x159));if(_0x2cc72c){if(!_0x4a107c[_0x69416d(0x17b)](_0x2cc72c))throw CliErrors[_0x69416d(0x171)](_0x69416d(0x175)+_0x2cc72c+'\x22\x20not\x20found\x20for\x20dataset\x20'+_0x12a1f4+'.\x20'+(_0x69416d(0x192)+_0x4a107c[_0x69416d(0x176)](',\x20')));_0xe103f8=_0x2cc72c;}else{if(_0x45369f['nonInteractive'])throw CliErrors[_0x69416d(0x171)](_0x69416d(0x184));const _0x5aebb9=await promptSelect(_0x69416d(0x181),_0x4a107c);_0xe103f8=_0x4a107c[_0x5aebb9]??_0x4a107c[0x0];}let _0x405c06=normalizeHookFunctionNode(_0x45369f['str'](_0x69416d(0x196)));if(!_0x405c06){if(_0x45369f[_0x69416d(0x151)](_0x69416d(0x196)))throw CliErrors['validation'](_0x69416d(0x16c));if(_0x45369f[_0x69416d(0x183)])throw CliErrors[_0x69416d(0x171)](_0x69416d(0x150));const _0x2bfe1a=await promptSelect(_0x69416d(0x145),[_0x69416d(0x19b),'after']);_0x405c06=[_0x69416d(0x19b),_0x69416d(0x197)][_0x2bfe1a]??_0x69416d(0x19b);}return{'alias':_0x1a7c9e,'datasetCode':_0x345e94,'datasetId':_0x4ce383,'operationType':_0xe103f8,'functionNode':_0x405c06};}async function promptSelect(_0x40444d,_0x29ebac){const _0x35f774=a26_0x48ad2e;if(_0x29ebac[_0x35f774(0x17d)]===0x1)return 0x0;for(const [_0x47b0bf,_0x420b22]of _0x29ebac[_0x35f774(0x19a)]()){process[_0x35f774(0x18d)]['write']('\x20\x20'+(_0x47b0bf+0x1)+'.\x20'+_0x420b22+'\x0a');}const _0x7e4bc0=createInterface({'input':process[_0x35f774(0x17c)],'output':process[_0x35f774(0x18d)]});while(!![]){const _0x3d886d=await new Promise(_0x41d6cf=>{const _0x1f3939=_0x35f774;_0x7e4bc0[_0x1f3939(0x14d)](_0x40444d+'\x20',_0x41d6cf);}),_0x457dc4=Number['parseInt'](_0x3d886d[_0x35f774(0x143)](),0xa);if(Number[_0x35f774(0x195)](_0x457dc4)&&_0x457dc4>=0x1&&_0x457dc4<=_0x29ebac[_0x35f774(0x17d)])return _0x7e4bc0[_0x35f774(0x15f)](),_0x457dc4-0x1;process[_0x35f774(0x18d)]['write'](_0x35f774(0x18e)+_0x29ebac[_0x35f774(0x17d)]+'.\x0a');}}function buildFilePath(_0x4e095d,_0x39a378,_0x362b83,_0x2f7dad){const _0x4c4f5f=a26_0x48ad2e;if(_0x39a378===_0x4c4f5f(0x157)){if(!_0x2f7dad)throw CliErrors[_0x4c4f5f(0x171)](_0x4c4f5f(0x16a));const _0x3928b6=_0x2f7dad[_0x4c4f5f(0x17e)]??_0x2f7dad[_0x4c4f5f(0x194)];return join(_0x4e095d[_0x4c4f5f(0x149)],_0x4c4f5f(0x157),_0x3928b6,_0x2f7dad[_0x4c4f5f(0x15d)],_0x2f7dad[_0x4c4f5f(0x172)],_0x362b83+_0x4c4f5f(0x19c));}return join(_0x4e095d['scriptsRootDir'],_0x39a378,_0x362b83+_0x4c4f5f(0x19c));}export function generateTemplate(_0x32f2e2,_0x1c4e4f,_0x561997,_0x37159a,_0x48276e){const _0x4250e0=a26_0x48ad2e,_0x5ea11b=_0x37159a?.['trim']()||_0x4250e0(0x199);if(_0x32f2e2===_0x4250e0(0x148))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x5ea11b+'\x0a\x20*\x20[脚本名称]\x20'+_0x1c4e4f+_0x4250e0(0x15a)+_0x1c4e4f+_0x4250e0(0x166)+_0x1c4e4f+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x32f2e2===_0x4250e0(0x18c))return'/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x5ea11b+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/'+_0x561997+'/'+_0x1c4e4f+_0x4250e0(0x186)+_0x1c4e4f+_0x4250e0(0x177);if(!_0x48276e)throw CliErrors[_0x4250e0(0x171)](_0x4250e0(0x191));return'/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x5ea11b+_0x4250e0(0x153)+_0x561997+'/'+_0x48276e[_0x4250e0(0x194)]+'/'+_0x48276e[_0x4250e0(0x15d)]+'\x0a\x20*\x20[触发节点]\x20'+_0x48276e[_0x4250e0(0x172)]+_0x4250e0(0x179)+_0x1c4e4f+_0x4250e0(0x177);}
@@ -1 +1 @@
1
- const a27_0x21dd21=a27_0x1729;(function(_0x573616,_0x1c5dce){const _0x2e6322=a27_0x1729,_0x347977=_0x573616();while(!![]){try{const _0x1b5327=-parseInt(_0x2e6322(0x112))/0x1*(parseInt(_0x2e6322(0x116))/0x2)+parseInt(_0x2e6322(0x123))/0x3*(-parseInt(_0x2e6322(0x12d))/0x4)+-parseInt(_0x2e6322(0x10f))/0x5+-parseInt(_0x2e6322(0x134))/0x6*(-parseInt(_0x2e6322(0x11b))/0x7)+parseInt(_0x2e6322(0x11d))/0x8*(-parseInt(_0x2e6322(0x121))/0x9)+parseInt(_0x2e6322(0x119))/0xa+-parseInt(_0x2e6322(0x12b))/0xb*(-parseInt(_0x2e6322(0x10a))/0xc);if(_0x1b5327===_0x1c5dce)break;else _0x347977['push'](_0x347977['shift']());}catch(_0xe72e88){_0x347977['push'](_0x347977['shift']());}}}(a27_0x139d,0xae579));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';function a27_0x1729(_0x160c96,_0x81e22c){_0x160c96=_0x160c96-0x101;const _0x139d34=a27_0x139d();let _0x172991=_0x139d34[_0x160c96];return _0x172991;}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_0x21dd21(0x101),'command':a27_0x21dd21(0x10c),'description':a27_0x21dd21(0x11e),'risk':'high-risk-write','flags':[{'name':a27_0x21dd21(0x126),'type':'string','required':!![],'description':a27_0x21dd21(0x11c)}],async 'validate'(_0x3c11dd){const _0x218a0e=a27_0x21dd21,_0x5590bd=loadBffProjectConfig(_0x3c11dd['appCode']),_0x310e31=await readBffLockFile(_0x5590bd[_0x218a0e(0x127)]);if(!_0x310e31)throw CliErrors[_0x218a0e(0x125)]('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x4fc63d){const _0xd339a5=a27_0x21dd21,_0x489aa5=loadBffProjectConfig(_0x4fc63d[_0xd339a5(0x124)]),_0x253e17=await readBffLockFile(_0x489aa5[_0xd339a5(0x127)]);if(!_0x253e17)throw CliErrors[_0xd339a5(0x125)](_0xd339a5(0x10b));const {appLock:_0x34b81a}=ensureLockScope(_0x253e17,_0x4fc63d[_0xd339a5(0x124)],_0x489aa5[_0xd339a5(0x130)],_0xd339a5(0x10c)),_0x90166c=_0x4fc63d[_0xd339a5(0x12f)](_0xd339a5(0x126)),_0xd5aeeb=Object[_0xd339a5(0x10d)](_0x34b81a['functions']),_0x38ebdb=resolveDeleteTarget(_0x90166c,_0xd5aeeb),_0x714b6b=_0x34b81a['functions'][_0x38ebdb];if(!_0x714b6b)throw CliErrors[_0xd339a5(0x125)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x38ebdb+'\x22.');const _0x2db9a7=resolveLocalFilePathFromLockKey(_0x489aa5,_0x38ebdb),_0x22e10=relative(_0x489aa5[_0xd339a5(0x115)],_0x2db9a7),_0x29a717=join(_0x489aa5[_0xd339a5(0x133)],'<timestamp>',_0x22e10);return{'method':_0xd339a5(0x128),'url':_0xd339a5(0x11a),'body':{'appCode':_0x4fc63d[_0xd339a5(0x124)],'target':_0x38ebdb,'remoteId':_0x714b6b[_0xd339a5(0x129)],'localFilePath':_0x2db9a7,'trashedPath':_0x29a717},'description':_0xd339a5(0x12e)+_0x38ebdb+_0xd339a5(0x12c)};},async 'execute'(_0x3e6cb5){const _0x5d18cb=a27_0x21dd21,_0x589c12=loadBffProjectConfig(_0x3e6cb5[_0x5d18cb(0x124)]),_0x583be0=await readBffLockFile(_0x589c12[_0x5d18cb(0x127)]);if(!_0x583be0)throw CliErrors[_0x5d18cb(0x125)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x480d58,appLock:_0x141375}=ensureLockScope(_0x583be0,_0x3e6cb5['appCode'],_0x589c12[_0x5d18cb(0x130)],_0x5d18cb(0x10c)),_0x28e868=JSON['parse'](JSON[_0x5d18cb(0x114)](_0x480d58)),_0x28f847=_0x28e868[_0x5d18cb(0x131)][_0x3e6cb5[_0x5d18cb(0x124)]];if(!_0x28f847)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x3e6cb5[_0x5d18cb(0x124)]+_0x5d18cb(0x111));const _0x26e360=_0x3e6cb5['str'](_0x5d18cb(0x126)),_0x21ca1a=Object['keys'](_0x28f847[_0x5d18cb(0x107)]),_0x2dc997=resolveDeleteTarget(_0x26e360,_0x21ca1a),_0x1aaa78=_0x28f847[_0x5d18cb(0x107)][_0x2dc997];if(!_0x1aaa78)throw CliErrors[_0x5d18cb(0x125)](_0x5d18cb(0x11f)+_0x2dc997+'\x22.');await deleteBffScript(_0x1aaa78['remoteId']),delete _0x28f847['functions'][_0x2dc997],_0x28f847[_0x5d18cb(0x117)]=new Date()[_0x5d18cb(0x110)](),await writeBffLockFile(_0x589c12['lockFilePath'],_0x28e868);const _0x35a5c0=resolveLocalFilePathFromLockKey(_0x589c12,_0x2dc997);let _0x101766;await fileExists(_0x35a5c0)&&(_0x101766=await moveToTrash(_0x589c12[_0x5d18cb(0x115)],_0x589c12['trashDir'],_0x35a5c0),await cleanupEmptyDirectories(dirname(_0x35a5c0),_0x589c12['scriptsRootDir']));await waitForDeleteSettlement(_0x589c12['lockFilePath'],_0x3e6cb5[_0x5d18cb(0x124)],_0x2dc997,_0x35a5c0),await sleep(0x96);const _0x3895de={'deleted':_0x2dc997,'remoteId':_0x1aaa78[_0x5d18cb(0x129)]};if(_0x101766)_0x3895de[_0x5d18cb(0x118)]=_0x101766;return{'ok':!![],'data':_0x3895de,'message':_0x5d18cb(0x12a)+_0x2dc997+(_0x101766?_0x5d18cb(0x109):'')};}};function resolveDeleteTarget(_0x228186,_0x413086){const _0x468206=a27_0x21dd21;if(_0x228186[_0x468206(0x113)]('/')){const _0x1a6b9b=_0x413086['find'](_0x3d8ea5=>_0x3d8ea5===_0x228186);if(!_0x1a6b9b)throw CliErrors[_0x468206(0x125)](_0x468206(0x132)+_0x228186);return _0x1a6b9b;}const _0x4b63d3=_0x413086[_0x468206(0x103)](_0x48a3bf=>_0x48a3bf[_0x468206(0x102)]('/')['at'](-0x1)===_0x228186);if(_0x4b63d3[_0x468206(0x122)]===0x0)throw CliErrors[_0x468206(0x125)]('Function\x20not\x20found:\x20'+_0x228186);if(_0x4b63d3[_0x468206(0x122)]>0x1)throw CliErrors[_0x468206(0x125)]('Multiple\x20functions\x20match\x20\x22'+_0x228186+_0x468206(0x108)+_0x4b63d3[_0x468206(0x104)](_0x5d0871=>_0x468206(0x10e)+_0x5d0871)[_0x468206(0x105)]('\x0a'));return _0x4b63d3[0x0];}async function moveToTrash(_0x2e69e8,_0xc59772,_0x197f78){const _0x291ade=a27_0x21dd21,_0x141512=new Date()[_0x291ade(0x110)]()['replace'](/[:.]/g,'-'),_0x5bfca6=relative(_0x2e69e8,_0x197f78),_0x3179d9=join(_0xc59772,_0x141512,_0x5bfca6);return await mkdir(dirname(_0x3179d9),{'recursive':!![]}),await rename(_0x197f78,_0x3179d9),_0x3179d9;}function a27_0x139d(){const _0x2874bc=['functions','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','\x20(local\x20file\x20moved\x20to\x20trash)','84ipyUKS','BFF\x20lock\x20file\x20not\x20found.','delete','keys','\x20\x20-\x20','2152440XNRLrW','toISOString','\x22\x20not\x20found\x20after\x20ensureLockScope.','1XhrUYV','includes','stringify','projectRoot','202312TWPzvc','lastSync','trashedTo','4918630upUSmJ','/api/management/library/scripts/delete','7gSbjgX','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','21032NaZsMe','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','No\x20lock\x20entry\x20found\x20for\x20\x22','Local\x20delete\x20not\x20settled\x20for\x20','3186qyZkWe','length','15PHIbmb','appCode','validation','target','lockFilePath','POST','remoteId','Deleted\x20','817025XjSHmp','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','171800ZSOJWx','Would\x20delete\x20','str','scriptsRoot','apps','Function\x20not\x20found:\x20','trashDir','8276262inOLCa','bff','split','filter','map','join','startsWith'];a27_0x139d=function(){return _0x2874bc;};return a27_0x139d();}async function cleanupEmptyDirectories(_0x50d2a4,_0x42088b){const _0x8a71d5=a27_0x21dd21;let _0x50dd4a=resolve(_0x50d2a4);const _0xccc07=resolve(_0x42088b);while(_0x50dd4a[_0x8a71d5(0x106)](''+_0xccc07+sep)||_0x50dd4a===_0xccc07){if(_0x50dd4a===_0xccc07)return;try{const _0x360e41=await readdir(_0x50dd4a);if(_0x360e41[_0x8a71d5(0x122)]>0x0)return;await rmdir(_0x50dd4a);}catch{return;}_0x50dd4a=dirname(_0x50dd4a);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x279c1b,_0x56984c,_0x2e2bb6,_0x292f25){const _0x24b42a=a27_0x21dd21;for(let _0x46f899=0x0;_0x46f899<DELETE_SETTLE_RETRY_COUNT;_0x46f899+=0x1){const _0xb5bb94=await readBffLockFile(_0x279c1b),_0x1fd001=!!_0xb5bb94?.['apps']?.[_0x56984c]?.[_0x24b42a(0x107)]?.[_0x2e2bb6],_0x11e144=await fileExists(_0x292f25);if(!_0x1fd001&&!_0x11e144)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x24b42a(0x120)+_0x2e2bb6+'.');}
1
+ const a27_0x58e73c=a27_0x2a2a;(function(_0x42017d,_0x2b1530){const _0x150f03=a27_0x2a2a,_0x25c615=_0x42017d();while(!![]){try{const _0xa2bcc5=-parseInt(_0x150f03(0x158))/0x1+-parseInt(_0x150f03(0x13f))/0x2*(-parseInt(_0x150f03(0x160))/0x3)+parseInt(_0x150f03(0x144))/0x4+-parseInt(_0x150f03(0x149))/0x5+-parseInt(_0x150f03(0x145))/0x6*(-parseInt(_0x150f03(0x157))/0x7)+parseInt(_0x150f03(0x150))/0x8*(parseInt(_0x150f03(0x13c))/0x9)+-parseInt(_0x150f03(0x143))/0xa*(parseInt(_0x150f03(0x15a))/0xb);if(_0xa2bcc5===_0x2b1530)break;else _0x25c615['push'](_0x25c615['shift']());}catch(_0x3fe87b){_0x25c615['push'](_0x25c615['shift']());}}}(a27_0x5a07,0x5efc4));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';function a27_0x2a2a(_0x55eff5,_0x33fa8b){_0x55eff5=_0x55eff5-0x137;const _0x5a0781=a27_0x5a07();let _0x2a2a8f=_0x5a0781[_0x55eff5];return _0x2a2a8f;}import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';function a27_0x5a07(){const _0x16741d=['remoteId','756065lddJmv','includes','str','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','find','functions','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','492824eZBVLN','keys','target','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','scriptsRoot','/api/management/library/scripts/delete','delete','14pfAHDY','511067aXlwMt','validation','7669255XhXWkG','\x22\x20not\x20found\x20after\x20ensureLockScope.','POST','map','Function\x20not\x20found:\x20','No\x20lock\x20entry\x20found\x20for\x20\x22','2060907ruwArY','lockFilePath','toISOString','trashDir','split','Lock\x20scope\x20for\x20app\x20\x22','BFF\x20lock\x20file\x20not\x20found.','apps','Multiple\x20functions\x20match\x20\x22','string','Deleted\x20','length','appCode','\x20\x20-\x20','72mHZgHZ','scriptsRootDir','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','2gZGvjd','high-risk-write','replace','join','20zEWECg','2630332YCvXne','1825122Gkgxck','projectRoot','parse'];a27_0x5a07=function(){return _0x16741d;};return a27_0x5a07();}export const bffDelete={'service':'bff','command':'delete','description':a27_0x58e73c(0x153),'risk':a27_0x58e73c(0x140),'flags':[{'name':a27_0x58e73c(0x152),'type':a27_0x58e73c(0x137),'required':!![],'description':'Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name'}],async 'validate'(_0x11e64){const _0x140e46=a27_0x58e73c,_0x197858=loadBffProjectConfig(_0x11e64[_0x140e46(0x13a)]),_0x188bb4=await readBffLockFile(_0x197858['lockFilePath']);if(!_0x188bb4)throw CliErrors[_0x140e46(0x159)](_0x140e46(0x14f));},async 'dryRun'(_0x2406e8){const _0x35311b=a27_0x58e73c,_0x1f945=loadBffProjectConfig(_0x2406e8[_0x35311b(0x13a)]),_0x17458a=await readBffLockFile(_0x1f945[_0x35311b(0x161)]);if(!_0x17458a)throw CliErrors[_0x35311b(0x159)](_0x35311b(0x166));const {appLock:_0x1f0f64}=ensureLockScope(_0x17458a,_0x2406e8[_0x35311b(0x13a)],_0x1f945[_0x35311b(0x154)],'delete'),_0x511ef5=_0x2406e8[_0x35311b(0x14b)](_0x35311b(0x152)),_0x2e9272=Object[_0x35311b(0x151)](_0x1f0f64[_0x35311b(0x14e)]),_0x1dfa2a=resolveDeleteTarget(_0x511ef5,_0x2e9272),_0x2ce5f3=_0x1f0f64['functions'][_0x1dfa2a];if(!_0x2ce5f3)throw CliErrors['validation'](_0x35311b(0x15f)+_0x1dfa2a+'\x22.');const _0x362d8e=resolveLocalFilePathFromLockKey(_0x1f945,_0x1dfa2a),_0x1c4ce4=relative(_0x1f945['projectRoot'],_0x362d8e),_0xca8a77=join(_0x1f945['trashDir'],'<timestamp>',_0x1c4ce4);return{'method':_0x35311b(0x15c),'url':_0x35311b(0x155),'body':{'appCode':_0x2406e8[_0x35311b(0x13a)],'target':_0x1dfa2a,'remoteId':_0x2ce5f3[_0x35311b(0x148)],'localFilePath':_0x362d8e,'trashedPath':_0xca8a77},'description':'Would\x20delete\x20'+_0x1dfa2a+_0x35311b(0x14c)};},async 'execute'(_0x7c8b19){const _0x25d659=a27_0x58e73c,_0x3e718f=loadBffProjectConfig(_0x7c8b19[_0x25d659(0x13a)]),_0x32e552=await readBffLockFile(_0x3e718f[_0x25d659(0x161)]);if(!_0x32e552)throw CliErrors[_0x25d659(0x159)](_0x25d659(0x166));const {lockData:_0x2b85a9,appLock:_0x3a1e43}=ensureLockScope(_0x32e552,_0x7c8b19[_0x25d659(0x13a)],_0x3e718f['scriptsRoot'],_0x25d659(0x156)),_0x2c8389=JSON[_0x25d659(0x147)](JSON['stringify'](_0x2b85a9)),_0x181abc=_0x2c8389[_0x25d659(0x167)][_0x7c8b19[_0x25d659(0x13a)]];if(!_0x181abc)throw new Error(_0x25d659(0x165)+_0x7c8b19[_0x25d659(0x13a)]+_0x25d659(0x15b));const _0x359370=_0x7c8b19[_0x25d659(0x14b)](_0x25d659(0x152)),_0x2cc4b1=Object[_0x25d659(0x151)](_0x181abc['functions']),_0x37d51d=resolveDeleteTarget(_0x359370,_0x2cc4b1),_0x42e992=_0x181abc['functions'][_0x37d51d];if(!_0x42e992)throw CliErrors[_0x25d659(0x159)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x37d51d+'\x22.');await deleteBffScript(_0x42e992[_0x25d659(0x148)]),delete _0x181abc['functions'][_0x37d51d],_0x181abc['lastSync']=new Date()[_0x25d659(0x162)](),await writeBffLockFile(_0x3e718f[_0x25d659(0x161)],_0x2c8389);const _0x15f9c4=resolveLocalFilePathFromLockKey(_0x3e718f,_0x37d51d);let _0x731980;await fileExists(_0x15f9c4)&&(_0x731980=await moveToTrash(_0x3e718f[_0x25d659(0x146)],_0x3e718f[_0x25d659(0x163)],_0x15f9c4),await cleanupEmptyDirectories(dirname(_0x15f9c4),_0x3e718f[_0x25d659(0x13d)]));await waitForDeleteSettlement(_0x3e718f[_0x25d659(0x161)],_0x7c8b19['appCode'],_0x37d51d,_0x15f9c4),await sleep(0x96);const _0x3d625c={'deleted':_0x37d51d,'remoteId':_0x42e992[_0x25d659(0x148)]};if(_0x731980)_0x3d625c['trashedTo']=_0x731980;return{'ok':!![],'data':_0x3d625c,'message':_0x25d659(0x138)+_0x37d51d+(_0x731980?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function resolveDeleteTarget(_0x2ee724,_0x5135d0){const _0x1e4a82=a27_0x58e73c;if(_0x2ee724[_0x1e4a82(0x14a)]('/')){const _0x4d3752=_0x5135d0[_0x1e4a82(0x14d)](_0x2a1d67=>_0x2a1d67===_0x2ee724);if(!_0x4d3752)throw CliErrors[_0x1e4a82(0x159)]('Function\x20not\x20found:\x20'+_0x2ee724);return _0x4d3752;}const _0x1049c1=_0x5135d0['filter'](_0x1caec6=>_0x1caec6[_0x1e4a82(0x164)]('/')['at'](-0x1)===_0x2ee724);if(_0x1049c1[_0x1e4a82(0x139)]===0x0)throw CliErrors[_0x1e4a82(0x159)](_0x1e4a82(0x15e)+_0x2ee724);if(_0x1049c1[_0x1e4a82(0x139)]>0x1)throw CliErrors[_0x1e4a82(0x159)](_0x1e4a82(0x168)+_0x2ee724+_0x1e4a82(0x13e)+_0x1049c1[_0x1e4a82(0x15d)](_0xf460a0=>_0x1e4a82(0x13b)+_0xf460a0)[_0x1e4a82(0x142)]('\x0a'));return _0x1049c1[0x0];}async function moveToTrash(_0x59c53f,_0x12dc89,_0x554460){const _0x55b3ba=a27_0x58e73c,_0xd73a01=new Date()[_0x55b3ba(0x162)]()[_0x55b3ba(0x141)](/[:.]/g,'-'),_0x1d1c51=relative(_0x59c53f,_0x554460),_0xbb1d00=join(_0x12dc89,_0xd73a01,_0x1d1c51);return await mkdir(dirname(_0xbb1d00),{'recursive':!![]}),await rename(_0x554460,_0xbb1d00),_0xbb1d00;}async function cleanupEmptyDirectories(_0x3afbac,_0x3d549b){let _0x4cc006=resolve(_0x3afbac);const _0x2d0f72=resolve(_0x3d549b);while(_0x4cc006['startsWith'](''+_0x2d0f72+sep)||_0x4cc006===_0x2d0f72){if(_0x4cc006===_0x2d0f72)return;try{const _0x270aac=await readdir(_0x4cc006);if(_0x270aac['length']>0x0)return;await rmdir(_0x4cc006);}catch{return;}_0x4cc006=dirname(_0x4cc006);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x3acc72,_0x41b184,_0x3dba31,_0x375044){const _0x3c3f21=a27_0x58e73c;for(let _0x3977b0=0x0;_0x3977b0<DELETE_SETTLE_RETRY_COUNT;_0x3977b0+=0x1){const _0x357b08=await readBffLockFile(_0x3acc72),_0x3fd982=!!_0x357b08?.[_0x3c3f21(0x167)]?.[_0x41b184]?.[_0x3c3f21(0x14e)]?.[_0x3dba31],_0x14ef6c=await fileExists(_0x375044);if(!_0x3fd982&&!_0x14ef6c)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error('Local\x20delete\x20not\x20settled\x20for\x20'+_0x3dba31+'.');}
@@ -1 +1 @@
1
- function a28_0x3e60(){const _0x52cc98=['907824KZIoie','(none)','bool','number','scriptType','description','read','updatedTime','verbose','appCode','bff','num','scriptContent','393ALlOds','2376765tflqOH','2562300OepcsA','detail','2758168rLaBRe','4269JAuSvo','522865Cyvtol','boolean','createdTime','Return\x20full\x20raw\x20script\x20object','386UfGKIE','148wIkbNp'];a28_0x3e60=function(){return _0x52cc98;};return a28_0x3e60();}const a28_0x1ee7cc=a28_0x3a94;(function(_0x291f91,_0x333974){const _0x4de9d3=a28_0x3a94,_0x4e9984=_0x291f91();while(!![]){try{const _0x2921fb=-parseInt(_0x4de9d3(0x1be))/0x1*(parseInt(_0x4de9d3(0x1c8))/0x2)+-parseInt(_0x4de9d3(0x1c3))/0x3*(-parseInt(_0x4de9d3(0x1c9))/0x4)+-parseInt(_0x4de9d3(0x1c4))/0x5+-parseInt(_0x4de9d3(0x1c0))/0x6+parseInt(_0x4de9d3(0x1c2))/0x7+parseInt(_0x4de9d3(0x1ca))/0x8+parseInt(_0x4de9d3(0x1bf))/0x9;if(_0x2921fb===_0x333974)break;else _0x4e9984['push'](_0x4e9984['shift']());}catch(_0x2929d5){_0x4e9984['push'](_0x4e9984['shift']());}}}(a28_0x3e60,0x34ebe));function a28_0x3a94(_0x21f85d,_0x4f4c99){_0x21f85d=_0x21f85d-0x1bc;const _0x3e6018=a28_0x3e60();let _0x3a94af=_0x3e6018[_0x21f85d];return _0x3a94af;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x1ee7cc(0x1d4),'command':a28_0x1ee7cc(0x1c1),'description':'Get\x20BFF\x20script\x20details\x20by\x20ID','risk':a28_0x1ee7cc(0x1d0),'flags':[{'name':'id','type':a28_0x1ee7cc(0x1cd),'required':!![],'description':'Script\x20ID'},{'name':a28_0x1ee7cc(0x1d2),'type':a28_0x1ee7cc(0x1c5),'description':a28_0x1ee7cc(0x1c7)}],async 'execute'(_0x27f752){const _0x2e038c=a28_0x1ee7cc,_0x33dae1=await getBffScriptInfo(_0x27f752[_0x2e038c(0x1bc)]('id')),_0x1608a5=_0x27f752[_0x2e038c(0x1cc)](_0x2e038c(0x1d2));if(_0x1608a5)return{'ok':!![],'data':_0x33dae1};return{'ok':!![],'data':{'id':_0x33dae1['id'],'appCode':_0x33dae1[_0x2e038c(0x1d3)],'scriptType':_0x33dae1[_0x2e038c(0x1ce)],'description':_0x33dae1[_0x2e038c(0x1cf)]||_0x2e038c(0x1cb),'createdTime':_0x33dae1[_0x2e038c(0x1c6)]??'','updatedTime':_0x33dae1[_0x2e038c(0x1d1)]??'','scriptContent':_0x33dae1[_0x2e038c(0x1bd)]??''}};}};
1
+ function a28_0x2d9c(_0x15fa40,_0x40e40b){_0x15fa40=_0x15fa40-0xd8;const _0x11e8c7=a28_0x11e8();let _0x2d9cd9=_0x11e8c7[_0x15fa40];return _0x2d9cd9;}function a28_0x11e8(){const _0x3f19ad=['num','145854uRnEXS','136GoEByH','20766QJWPoD','description','3022764AhkXiB','Get\x20BFF\x20script\x20details\x20by\x20ID','3976170FUNbRK','boolean','scriptContent','read','Return\x20full\x20raw\x20script\x20object','2wpiAOf','verbose','(none)','44XpsPDD','createdTime','scriptType','5cLVQxx','758439xrbqta','Script\x20ID','number','1547lsgMur','appCode','261347cSSTIC','1441336TrfVuV','bff'];a28_0x11e8=function(){return _0x3f19ad;};return a28_0x11e8();}const a28_0x178427=a28_0x2d9c;(function(_0x3a8e95,_0x41d7cf){const _0x1e2312=a28_0x2d9c,_0x29b47f=_0x3a8e95();while(!![]){try{const _0x42b9cd=parseInt(_0x1e2312(0xe9))/0x1*(parseInt(_0x1e2312(0xdd))/0x2)+parseInt(_0x1e2312(0xe4))/0x3+parseInt(_0x1e2312(0xea))/0x4*(parseInt(_0x1e2312(0xe3))/0x5)+parseInt(_0x1e2312(0xef))/0x6*(-parseInt(_0x1e2312(0xe7))/0x7)+parseInt(_0x1e2312(0xee))/0x8*(-parseInt(_0x1e2312(0xed))/0x9)+-parseInt(_0x1e2312(0xd8))/0xa+-parseInt(_0x1e2312(0xe0))/0xb*(-parseInt(_0x1e2312(0xf1))/0xc);if(_0x42b9cd===_0x41d7cf)break;else _0x29b47f['push'](_0x29b47f['shift']());}catch(_0x2e3981){_0x29b47f['push'](_0x29b47f['shift']());}}}(a28_0x11e8,0x6c6b2));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x178427(0xeb),'command':'detail','description':a28_0x178427(0xf2),'risk':a28_0x178427(0xdb),'flags':[{'name':'id','type':a28_0x178427(0xe6),'required':!![],'description':a28_0x178427(0xe5)},{'name':a28_0x178427(0xde),'type':a28_0x178427(0xd9),'description':a28_0x178427(0xdc)}],async 'execute'(_0x4e0d63){const _0x1bd056=a28_0x178427,_0x4dccce=await getBffScriptInfo(_0x4e0d63[_0x1bd056(0xec)]('id')),_0x59c9a0=_0x4e0d63['bool'](_0x1bd056(0xde));if(_0x59c9a0)return{'ok':!![],'data':_0x4dccce};return{'ok':!![],'data':{'id':_0x4dccce['id'],'appCode':_0x4dccce[_0x1bd056(0xe8)],'scriptType':_0x4dccce[_0x1bd056(0xe2)],'description':_0x4dccce[_0x1bd056(0xf0)]||_0x1bd056(0xdf),'createdTime':_0x4dccce[_0x1bd056(0xe1)]??'','updatedTime':_0x4dccce['updatedTime']??'','scriptContent':_0x4dccce[_0x1bd056(0xda)]??''}};}};
@@ -1 +1 @@
1
- (function(_0x296adf,_0x3f5f6a){const _0x54b862=a29_0x2d8e,_0x351693=_0x296adf();while(!![]){try{const _0x350f4c=-parseInt(_0x54b862(0x9b))/0x1*(parseInt(_0x54b862(0x9c))/0x2)+-parseInt(_0x54b862(0x9e))/0x3*(-parseInt(_0x54b862(0x98))/0x4)+-parseInt(_0x54b862(0x9d))/0x5+-parseInt(_0x54b862(0xa1))/0x6*(-parseInt(_0x54b862(0xa0))/0x7)+parseInt(_0x54b862(0x9a))/0x8+-parseInt(_0x54b862(0xa2))/0x9*(parseInt(_0x54b862(0x99))/0xa)+parseInt(_0x54b862(0x9f))/0xb;if(_0x350f4c===_0x3f5f6a)break;else _0x351693['push'](_0x351693['shift']());}catch(_0x3b7695){_0x351693['push'](_0x351693['shift']());}}}(a29_0x2e59,0x99fc1));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';function a29_0x2d8e(_0x25a5b6,_0x231daf){_0x25a5b6=_0x25a5b6-0x98;const _0x2e592e=a29_0x2e59();let _0x2d8e35=_0x2e592e[_0x25a5b6];return _0x2d8e35;}import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';function a29_0x2e59(){const _0x2e7055=['3rDoLYL','1931523fSBwjD','14DDpuJs','2922636TQfbyL','9ElySkp','654172msaMio','11934050jrvGBL','6794648bYswNo','2gyffqF','239182hdiZWJ','496855qPJKaQ'];a29_0x2e59=function(){return _0x2e7055;};return a29_0x2e59();}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(_0x293d08,_0xef05d){const _0xb8bc6f=a29_0x55c5,_0x13f0bf=_0x293d08();while(!![]){try{const _0x430f74=parseInt(_0xb8bc6f(0xe2))/0x1*(parseInt(_0xb8bc6f(0xdc))/0x2)+parseInt(_0xb8bc6f(0xe0))/0x3+parseInt(_0xb8bc6f(0xdd))/0x4+parseInt(_0xb8bc6f(0xe3))/0x5+parseInt(_0xb8bc6f(0xde))/0x6+parseInt(_0xb8bc6f(0xdf))/0x7+-parseInt(_0xb8bc6f(0xe1))/0x8;if(_0x430f74===_0xef05d)break;else _0x13f0bf['push'](_0x13f0bf['shift']());}catch(_0x4d7bae){_0x13f0bf['push'](_0x13f0bf['shift']());}}}(a29_0x253a,0xd6c99));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';function a29_0x55c5(_0x3d56be,_0x3b1ce7){_0x3d56be=_0x3d56be-0xdc;const _0x253aed=a29_0x253a();let _0x55c5ca=_0x253aed[_0x3d56be];return _0x55c5ca;}function a29_0x253a(){const _0x49e524=['5781332tOVLOi','5571138QJNrHL','3794497ercDFB','1429821kCCzlR','39471184yZEzUZ','2vNuIdQ','5049905SRahBS','1411152otJFCO'];a29_0x253a=function(){return _0x49e524;};return a29_0x253a();}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 +1 @@
1
- function a30_0x26bb(_0x14ac40,_0xa12146){_0x14ac40=_0x14ac40-0xba;const _0x36f039=a30_0x36f0();let _0x26bb90=_0x36f039[_0x14ac40];return _0x26bb90;}const a30_0x560a33=a30_0x26bb;(function(_0x9c1de3,_0x28b701){const _0x5c1d90=a30_0x26bb,_0x52ddc6=_0x9c1de3();while(!![]){try{const _0x173971=parseInt(_0x5c1d90(0xc6))/0x1+-parseInt(_0x5c1d90(0xc3))/0x2*(parseInt(_0x5c1d90(0xce))/0x3)+-parseInt(_0x5c1d90(0xc1))/0x4+-parseInt(_0x5c1d90(0xc0))/0x5*(-parseInt(_0x5c1d90(0xc8))/0x6)+parseInt(_0x5c1d90(0xbb))/0x7+parseInt(_0x5c1d90(0xc9))/0x8+-parseInt(_0x5c1d90(0xbf))/0x9;if(_0x173971===_0x28b701)break;else _0x52ddc6['push'](_0x52ddc6['shift']());}catch(_0x1cb653){_0x52ddc6['push'](_0x52ddc6['shift']());}}}(a30_0x36f0,0xbf32a));function a30_0x36f0(){const _0x38c868=['2776392PlThoA','No\x20BFF\x20scripts\x20found.','1392158cxCoOU','bool','verbose','516817jweEHq','map','42FNlWyC','6716520KeLlBl','Filter\x20by\x20script\x20name','appCode','description','ENDPOINT','6AXAkjx','string','List\x20BFF\x20scripts','name','boolean','(unnamed)','Script\x20type\x20filter','COMMON','7689493UXGVOK','type','str','list','3064113UOXwtN','539270soxAKt'];a30_0x36f0=function(){return _0x38c868;};return a30_0x36f0();}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':'bff','command':a30_0x560a33(0xbe),'description':a30_0x560a33(0xd0),'risk':'read','flags':[{'name':a30_0x560a33(0xbc),'type':a30_0x560a33(0xcf),'description':a30_0x560a33(0xd4),'default':'ENDPOINT','enum':[a30_0x560a33(0xcd),a30_0x560a33(0xba)]},{'name':a30_0x560a33(0xd1),'type':a30_0x560a33(0xcf),'description':a30_0x560a33(0xca)},{'name':a30_0x560a33(0xc5),'type':a30_0x560a33(0xd2),'description':'Return\x20full\x20script\x20objects'}],async 'execute'(_0x4ebf07){const _0x267ca8=a30_0x560a33,_0x10178a=await listBffScripts(_0x4ebf07[_0x267ca8(0xcb)],_0x4ebf07[_0x267ca8(0xbd)](_0x267ca8(0xbc)),{'scriptName':_0x4ebf07['str'](_0x267ca8(0xd1))||undefined}),_0x1eaec7=_0x4ebf07[_0x267ca8(0xc4)](_0x267ca8(0xc5));return{'ok':!![],'data':_0x1eaec7?_0x10178a:_0x10178a[_0x267ca8(0xc7)](_0x38f0f4=>({'id':_0x38f0f4['id'],'functionName':_0x38f0f4['functionName']??'','description':_0x38f0f4[_0x267ca8(0xcc)]||_0x267ca8(0xd3),'scriptType':_0x38f0f4['scriptType']})),'message':_0x10178a['length']===0x0?_0x267ca8(0xc2):undefined};}};
1
+ function a30_0x4ebe(){const _0x219b65=['4209499esvVUy','3948306CedXct','List\x20BFF\x20scripts','32333UYrUkZ','str','description','scriptType','name','COMMON','6229056VWzUuO','read','106QYcbDt','3447228LeuOWQ','length','(unnamed)','map','bff','verbose','string','16sscvTL','boolean','Return\x20full\x20script\x20objects','No\x20BFF\x20scripts\x20found.','Script\x20type\x20filter','7979949tiaQjU','type','ENDPOINT','functionName','2017755yzXgSp','appCode'];a30_0x4ebe=function(){return _0x219b65;};return a30_0x4ebe();}function a30_0x15b3(_0x421285,_0x3dea24){_0x421285=_0x421285-0x93;const _0x4ebe67=a30_0x4ebe();let _0x15b3a2=_0x4ebe67[_0x421285];return _0x15b3a2;}const a30_0x556576=a30_0x15b3;(function(_0x4f117d,_0x4e9a5b){const _0x1712ff=a30_0x15b3,_0x26e1ba=_0x4f117d();while(!![]){try{const _0x554c13=-parseInt(_0x1712ff(0xaa))/0x1*(parseInt(_0x1712ff(0x94))/0x2)+parseInt(_0x1712ff(0x95))/0x3+parseInt(_0x1712ff(0xb0))/0x4+-parseInt(_0x1712ff(0xa5))/0x5+parseInt(_0x1712ff(0xa8))/0x6+-parseInt(_0x1712ff(0xa7))/0x7*(parseInt(_0x1712ff(0x9c))/0x8)+parseInt(_0x1712ff(0xa1))/0x9;if(_0x554c13===_0x4e9a5b)break;else _0x26e1ba['push'](_0x26e1ba['shift']());}catch(_0x39eecd){_0x26e1ba['push'](_0x26e1ba['shift']());}}}(a30_0x4ebe,0xe3542));import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x556576(0x99),'command':'list','description':a30_0x556576(0xa9),'risk':a30_0x556576(0x93),'flags':[{'name':a30_0x556576(0xa2),'type':a30_0x556576(0x9b),'description':a30_0x556576(0xa0),'default':a30_0x556576(0xa3),'enum':[a30_0x556576(0xa3),a30_0x556576(0xaf)]},{'name':a30_0x556576(0xae),'type':a30_0x556576(0x9b),'description':'Filter\x20by\x20script\x20name'},{'name':a30_0x556576(0x9a),'type':a30_0x556576(0x9d),'description':a30_0x556576(0x9e)}],async 'execute'(_0xa12776){const _0x25bae1=a30_0x556576,_0x1bb164=await listBffScripts(_0xa12776[_0x25bae1(0xa6)],_0xa12776['str']('type'),{'scriptName':_0xa12776[_0x25bae1(0xab)](_0x25bae1(0xae))||undefined}),_0xd0337=_0xa12776['bool'](_0x25bae1(0x9a));return{'ok':!![],'data':_0xd0337?_0x1bb164:_0x1bb164[_0x25bae1(0x98)](_0x5c3958=>({'id':_0x5c3958['id'],'functionName':_0x5c3958[_0x25bae1(0xa4)]??'','description':_0x5c3958[_0x25bae1(0xac)]||_0x25bae1(0x97),'scriptType':_0x5c3958[_0x25bae1(0xad)]})),'message':_0x1bb164[_0x25bae1(0x96)]===0x0?_0x25bae1(0x9f):undefined};}};
@@ -1 +1 @@
1
- const a31_0x3324bb=a31_0x27f4;function a31_0x27f4(_0x272d3d,_0x576915){_0x272d3d=_0x272d3d-0xb2;const _0x33fe42=a31_0x33fe();let _0x27f4ae=_0x33fe42[_0x272d3d];return _0x27f4ae;}(function(_0x60a61,_0x53d3bc){const _0x98153c=a31_0x27f4,_0x972be8=_0x60a61();while(!![]){try{const _0x5e3be9=-parseInt(_0x98153c(0xb8))/0x1+-parseInt(_0x98153c(0xde))/0x2+-parseInt(_0x98153c(0xd3))/0x3*(parseInt(_0x98153c(0xcd))/0x4)+parseInt(_0x98153c(0xe0))/0x5*(parseInt(_0x98153c(0xdc))/0x6)+-parseInt(_0x98153c(0xcf))/0x7*(parseInt(_0x98153c(0xc8))/0x8)+-parseInt(_0x98153c(0xbb))/0x9*(parseInt(_0x98153c(0xf2))/0xa)+parseInt(_0x98153c(0xe6))/0xb;if(_0x5e3be9===_0x53d3bc)break;else _0x972be8['push'](_0x972be8['shift']());}catch(_0x1192f9){_0x972be8['push'](_0x972be8['shift']());}}}(a31_0x33fe,0xebe67));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';function a31_0x33fe(){const _0x35becf=['\x20remote\x20BFF\x20script(s)\x20for\x20pull','write','str','scriptsRoot','yes','functionName','scriptType','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','3857390pOvfTD','operationType','cancelled','Would\x20inspect\x20','appCode','Pull\x20complete:\x20','lockKey','version','conflict','push','trim','toISOString','length','bool','all','674437VVgDiS','Force\x20pull\x20cancelled.','lockFilePath','9PVkDbn','datasetCode','nonInteractive','validation','unresolvable\x20target\x20path','string','utf8','Pull\x20only\x20this\x20script\x20type','\x22\x20not\x20found\x20after\x20ensureLockScope.','hookLocation','toLowerCase','apiDir','force','8SFnGPm','would_pull','functions','bff','filePath','7543616oMBrFi','message','7336994eynJPq','lastSync','Remote\x20script\x20missing\x20content.','\x20skipped,\x20','3RSIhNx','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','skipped','boolean','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','No\x20remote\x20BFF\x20scripts\x20found.','pull','stdin','alias','1956pBTJMk','Remote\x20script\x20missing\x20id.','3739464GssJTi','scriptContent','25895MJsalD','hash','map','apps','type','\x20pulled,\x20','56560317xxDhqy','stderr','parse','HOOK'];a31_0x33fe=function(){return _0x35becf;};return a31_0x33fe();}import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0x3324bb(0xcb),'command':'pull','description':a31_0x3324bb(0xd7),'risk':a31_0x3324bb(0xeb),'flags':[{'name':a31_0x3324bb(0xe4),'type':a31_0x3324bb(0xc0),'description':a31_0x3324bb(0xc2),'enum':['COMMON','ENDPOINT',a31_0x3324bb(0xe9)]},{'name':a31_0x3324bb(0xc7),'type':a31_0x3324bb(0xd6),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x12fd5c){const _0x509b1c=a31_0x3324bb,_0x679bba=loadBffProjectConfig(_0x12fd5c[_0x509b1c(0xf6)]),_0x120a6d=await readBffLockFile(_0x679bba['lockFilePath']),{appLock:_0x2e3896}=ensureLockScope(_0x120a6d??createEmptyBffLock(),_0x12fd5c[_0x509b1c(0xf6)],_0x679bba[_0x509b1c(0xed)],_0x509b1c(0xd9)),_0x334764=normalizeBffType(_0x12fd5c[_0x509b1c(0xec)](_0x509b1c(0xe4)))??undefined,_0x33e44c=buildDatasetCodeToAliasMap(_0x12fd5c['apiDir'],_0x12fd5c[_0x509b1c(0xf6)]),[_0x1dfc1b,_0x2bc21c]=await Promise[_0x509b1c(0xb7)]([listBffScripts(_0x12fd5c[_0x509b1c(0xf6)],_0x334764),getBffScriptStatistics(_0x12fd5c[_0x509b1c(0xf6)])]),_0xf6a56b=createHookLocationMap(_0x2bc21c),_0xcdc416=[];for(const _0x5d2118 of _0x1dfc1b){const _0x5a678b=resolveRemoteScriptTarget(_0x679bba,_0x5d2118,_0xf6a56b,_0x2e3896[_0x509b1c(0xca)],_0x33e44c);if(!_0x5a678b){_0xcdc416[_0x509b1c(0xb2)]({'scriptType':_0x5d2118[_0x509b1c(0xf0)],'functionName':_0x5d2118[_0x509b1c(0xef)]??'','status':_0x509b1c(0xd5),'reason':_0x509b1c(0xbf)});continue;}const _0x46b963=_0x2e3896[_0x509b1c(0xca)][_0x5a678b[_0x509b1c(0xf8)]],_0x496295=_0x5d2118['scriptContent']!=null?computeContentHash(_0x5d2118['scriptContent']):undefined,_0x30f40b=await hasUnsyncedLocalChanges(_0x5a678b['filePath'],_0x46b963,_0x496295);_0xcdc416[_0x509b1c(0xb2)]({'lockKey':_0x5a678b[_0x509b1c(0xf8)],'filePath':_0x5a678b[_0x509b1c(0xcc)],'remoteId':_0x5d2118['id']??null,'status':_0x30f40b?_0x509b1c(0xfa):_0x509b1c(0xc9)});}return{'method':'GET','url':'/api/management/library/scripts/list?appCode='+_0x12fd5c[_0x509b1c(0xf6)]+(_0x334764?'&type='+_0x334764:''),'body':{'appCode':_0x12fd5c['appCode'],'filterType':_0x334764??null,'files':_0xcdc416},'description':_0x509b1c(0xf5)+_0xcdc416['length']+_0x509b1c(0xea)};},async 'execute'(_0x381b12){const _0x3f8442=a31_0x3324bb,_0x587567=loadBffProjectConfig(_0x381b12[_0x3f8442(0xf6)]),_0x3dd251=await readBffLockFile(_0x587567[_0x3f8442(0xba)]),{lockData:_0x18bae9,appLock:_0x3e3160}=ensureLockScope(_0x3dd251??createEmptyBffLock(),_0x381b12[_0x3f8442(0xf6)],_0x587567[_0x3f8442(0xed)],'pull'),_0x5aeb1c=normalizeBffType(_0x381b12['str'](_0x3f8442(0xe4)))??undefined;if(_0x381b12[_0x3f8442(0xec)]('type')&&!_0x5aeb1c)throw CliErrors[_0x3f8442(0xbe)](_0x3f8442(0xd4));const [_0x49d699,_0x4bc009]=await Promise[_0x3f8442(0xb7)]([listBffScripts(_0x381b12[_0x3f8442(0xf6)],_0x5aeb1c),getBffScriptStatistics(_0x381b12[_0x3f8442(0xf6)])]);if(_0x49d699[_0x3f8442(0xb5)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x3f8442(0xd8)};const _0x4c9412=_0x381b12[_0x3f8442(0xb6)](_0x3f8442(0xc7));if(_0x4c9412&&!_0x381b12[_0x3f8442(0xbd)]){const _0x340240=await confirmForce();if(!_0x340240)throw CliErrors[_0x3f8442(0xf4)](_0x3f8442(0xb9));}if(_0x4c9412&&_0x381b12[_0x3f8442(0xbd)]){}const _0x3d4c91=buildDatasetCodeToAliasMap(_0x381b12[_0x3f8442(0xc6)],_0x381b12[_0x3f8442(0xf6)]),_0x424c09=createHookLocationMap(_0x4bc009),_0x250598=JSON[_0x3f8442(0xe8)](JSON['stringify'](_0x18bae9)),_0x5956ea=_0x381b12[_0x3f8442(0xf6)],_0x368162=_0x250598[_0x3f8442(0xe3)][_0x5956ea];if(!_0x368162)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x5956ea+_0x3f8442(0xc3));const _0x3b4b23=[],_0x2e7fad=[],_0x4ea900=[];for(const _0x4abc67 of _0x49d699){const _0x4a148f=resolveRemoteScriptTarget(_0x587567,_0x4abc67,_0x424c09,_0x3e3160[_0x3f8442(0xca)],_0x3d4c91);if(!_0x4a148f){_0x2e7fad[_0x3f8442(0xb2)]({'lockKey':_0x4abc67[_0x3f8442(0xf0)]+'/'+_0x4abc67[_0x3f8442(0xef)],'reason':_0x3f8442(0xbf)});continue;}const _0x405d26=_0x3e3160[_0x3f8442(0xca)][_0x4a148f[_0x3f8442(0xf8)]];try{if(!_0x4abc67['id'])throw new Error(_0x3f8442(0xdd));if(_0x4abc67['scriptContent']==null)throw new Error(_0x3f8442(0xd1));const _0x3de13d=_0x4abc67[_0x3f8442(0xdf)],_0x1afd09=computeContentHash(_0x3de13d);if(!_0x4c9412){const _0x4728db=await hasUnsyncedLocalChanges(_0x4a148f[_0x3f8442(0xcc)],_0x405d26,_0x1afd09);if(_0x4728db){_0x2e7fad[_0x3f8442(0xb2)]({'lockKey':_0x4a148f[_0x3f8442(0xf8)],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x4a148f[_0x3f8442(0xcc)]),await writeFile(_0x4a148f[_0x3f8442(0xcc)],_0x3de13d,_0x3f8442(0xc1));const _0x54ff3d={'hash':_0x1afd09,'remoteId':_0x4abc67['id'],'version':_0x4abc67[_0x3f8442(0xf9)]};_0x4a148f[_0x3f8442(0xe4)]===_0x3f8442(0xe9)&&_0x4a148f['hookLocation']&&(_0x54ff3d['alias']=_0x4a148f['hookLocation'][_0x3f8442(0xdb)],_0x54ff3d[_0x3f8442(0xbc)]=_0x4a148f[_0x3f8442(0xc4)][_0x3f8442(0xbc)],_0x54ff3d[_0x3f8442(0xf3)]=_0x4a148f[_0x3f8442(0xc4)][_0x3f8442(0xf3)],_0x54ff3d['functionNode']=_0x4a148f[_0x3f8442(0xc4)]['functionNode']),_0x368162[_0x3f8442(0xca)][_0x4a148f[_0x3f8442(0xf8)]]=_0x54ff3d,_0x3b4b23[_0x3f8442(0xb2)]({'lockKey':_0x4a148f[_0x3f8442(0xf8)],'remoteId':_0x4abc67['id']});}catch(_0x5da1c7){_0x4ea900[_0x3f8442(0xb2)]({'lockKey':_0x4a148f[_0x3f8442(0xf8)],'error':_0x5da1c7 instanceof Error?_0x5da1c7[_0x3f8442(0xce)]:String(_0x5da1c7)});}}return _0x368162[_0x3f8442(0xd0)]=new Date()[_0x3f8442(0xb4)](),await writeBffLockFile(_0x587567[_0x3f8442(0xba)],_0x250598),{'ok':_0x4ea900['length']===0x0,'data':{'pulled':_0x3b4b23,'skipped':_0x2e7fad,'failed':_0x4ea900},'message':_0x3f8442(0xf7)+_0x3b4b23[_0x3f8442(0xb5)]+_0x3f8442(0xe5)+_0x2e7fad['length']+_0x3f8442(0xd2)+_0x4ea900[_0x3f8442(0xb5)]+'\x20failed'};}};async function hasUnsyncedLocalChanges(_0x29180d,_0x4a3f17,_0x267021){const _0x11ebdc=a31_0x3324bb;if(!await fileExists(_0x29180d))return![];const _0x5f0c59=await computeFileHash(_0x29180d);if(!_0x4a3f17)return _0x267021?_0x5f0c59!==_0x267021:!![];return _0x5f0c59!==_0x4a3f17[_0x11ebdc(0xe1)];}function buildDatasetCodeToAliasMap(_0xc04378,_0x2346d1){const _0x4dea17=a31_0x3324bb,_0x349e50=loadAliasMap(_0xc04378,undefined,resolveApiFilePath(_0xc04378,_0x2346d1));return new Map(_0x349e50[_0x4dea17(0xe2)](_0x3086bb=>[_0x3086bb[_0x4dea17(0xbc)],_0x3086bb['alias']]));}async function confirmForce(){const _0x5a4ab7=a31_0x3324bb,_0x3470b8=createInterface({'input':process[_0x5a4ab7(0xda)],'output':process[_0x5a4ab7(0xe7)]}),_0x3dc588=await new Promise(_0x1d27ed=>{const _0x2ebabb=_0x5a4ab7;_0x3470b8['question'](_0x2ebabb(0xf1),_0x1d27ed);});return _0x3470b8['close'](),['y',_0x5a4ab7(0xee)]['includes'](_0x3dc588[_0x5a4ab7(0xb3)]()[_0x5a4ab7(0xc5)]());}
1
+ const a31_0x3f9834=a31_0x33db;(function(_0x35bfeb,_0x470351){const _0x3eed0f=a31_0x33db,_0x3ab57d=_0x35bfeb();while(!![]){try{const _0x2a8c9c=parseInt(_0x3eed0f(0x181))/0x1+-parseInt(_0x3eed0f(0x13d))/0x2*(parseInt(_0x3eed0f(0x145))/0x3)+parseInt(_0x3eed0f(0x148))/0x4+parseInt(_0x3eed0f(0x17e))/0x5*(-parseInt(_0x3eed0f(0x157))/0x6)+-parseInt(_0x3eed0f(0x16d))/0x7*(-parseInt(_0x3eed0f(0x139))/0x8)+parseInt(_0x3eed0f(0x16b))/0x9+-parseInt(_0x3eed0f(0x179))/0xa*(parseInt(_0x3eed0f(0x15f))/0xb);if(_0x2a8c9c===_0x470351)break;else _0x3ab57d['push'](_0x3ab57d['shift']());}catch(_0x21df3c){_0x3ab57d['push'](_0x3ab57d['shift']());}}}(a31_0x57a4,0x9bd9b));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';function a31_0x33db(_0x3b1264,_0x2d6ae2){_0x3b1264=_0x3b1264-0x134;const _0x57a489=a31_0x57a4();let _0x33dbe2=_0x57a489[_0x3b1264];return _0x33dbe2;}import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':'bff','command':'pull','description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a31_0x3f9834(0x150),'flags':[{'name':a31_0x3f9834(0x137),'type':a31_0x3f9834(0x159),'description':'Pull\x20only\x20this\x20script\x20type','enum':[a31_0x3f9834(0x167),a31_0x3f9834(0x146),a31_0x3f9834(0x15a)]},{'name':'force','type':'boolean','description':a31_0x3f9834(0x142)}],async 'dryRun'(_0x5bf0f8){const _0xf27bda=a31_0x3f9834,_0x13c386=loadBffProjectConfig(_0x5bf0f8['appCode']),_0x197713=await readBffLockFile(_0x13c386[_0xf27bda(0x147)]),{appLock:_0x5babfd}=ensureLockScope(_0x197713??createEmptyBffLock(),_0x5bf0f8['appCode'],_0x13c386['scriptsRoot'],_0xf27bda(0x164)),_0x554bd0=normalizeBffType(_0x5bf0f8['str'](_0xf27bda(0x137)))??undefined,_0x19643c=buildDatasetCodeToAliasMap(_0x5bf0f8[_0xf27bda(0x171)],_0x5bf0f8[_0xf27bda(0x17f)]),[_0x507dab,_0x3b12c3]=await Promise['all']([listBffScripts(_0x5bf0f8[_0xf27bda(0x17f)],_0x554bd0),getBffScriptStatistics(_0x5bf0f8['appCode'])]),_0x8623a0=createHookLocationMap(_0x3b12c3),_0x251cdf=[];for(const _0x21fdee of _0x507dab){const _0x40a60f=resolveRemoteScriptTarget(_0x13c386,_0x21fdee,_0x8623a0,_0x5babfd['functions'],_0x19643c);if(!_0x40a60f){_0x251cdf['push']({'scriptType':_0x21fdee[_0xf27bda(0x14b)],'functionName':_0x21fdee[_0xf27bda(0x17a)]??'','status':_0xf27bda(0x13c),'reason':'unresolvable\x20target\x20path'});continue;}const _0x45fa7c=_0x5babfd[_0xf27bda(0x170)][_0x40a60f['lockKey']],_0x7be5b9=_0x21fdee[_0xf27bda(0x162)]!=null?computeContentHash(_0x21fdee[_0xf27bda(0x162)]):undefined,_0x470108=await hasUnsyncedLocalChanges(_0x40a60f[_0xf27bda(0x15c)],_0x45fa7c,_0x7be5b9);_0x251cdf[_0xf27bda(0x17b)]({'lockKey':_0x40a60f[_0xf27bda(0x134)],'filePath':_0x40a60f[_0xf27bda(0x15c)],'remoteId':_0x21fdee['id']??null,'status':_0x470108?_0xf27bda(0x16f):_0xf27bda(0x13f)});}return{'method':_0xf27bda(0x168),'url':_0xf27bda(0x14c)+_0x5bf0f8['appCode']+(_0x554bd0?_0xf27bda(0x17d)+_0x554bd0:''),'body':{'appCode':_0x5bf0f8[_0xf27bda(0x17f)],'filterType':_0x554bd0??null,'files':_0x251cdf},'description':_0xf27bda(0x158)+_0x251cdf[_0xf27bda(0x13b)]+_0xf27bda(0x173)};},async 'execute'(_0x4525e4){const _0x3eda5b=a31_0x3f9834,_0x4a3853=loadBffProjectConfig(_0x4525e4['appCode']),_0x357625=await readBffLockFile(_0x4a3853[_0x3eda5b(0x147)]),{lockData:_0xcccb36,appLock:_0x4b7da5}=ensureLockScope(_0x357625??createEmptyBffLock(),_0x4525e4[_0x3eda5b(0x17f)],_0x4a3853[_0x3eda5b(0x165)],'pull'),_0x124347=normalizeBffType(_0x4525e4[_0x3eda5b(0x15b)](_0x3eda5b(0x137)))??undefined;if(_0x4525e4[_0x3eda5b(0x15b)](_0x3eda5b(0x137))&&!_0x124347)throw CliErrors[_0x3eda5b(0x143)](_0x3eda5b(0x16e));const [_0x347fa6,_0x41f87a]=await Promise[_0x3eda5b(0x16a)]([listBffScripts(_0x4525e4['appCode'],_0x124347),getBffScriptStatistics(_0x4525e4[_0x3eda5b(0x17f)])]);if(_0x347fa6[_0x3eda5b(0x13b)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20BFF\x20scripts\x20found.'};const _0x159b7c=_0x4525e4[_0x3eda5b(0x151)](_0x3eda5b(0x155));if(_0x159b7c&&!_0x4525e4[_0x3eda5b(0x172)]){const _0x71756b=await confirmForce();if(!_0x71756b)throw CliErrors[_0x3eda5b(0x161)](_0x3eda5b(0x177));}if(_0x159b7c&&_0x4525e4[_0x3eda5b(0x172)]){}const _0x414bfc=buildDatasetCodeToAliasMap(_0x4525e4['apiDir'],_0x4525e4[_0x3eda5b(0x17f)]),_0x4cd5a7=createHookLocationMap(_0x41f87a),_0x1ef6d5=JSON[_0x3eda5b(0x14e)](JSON[_0x3eda5b(0x13a)](_0xcccb36)),_0x5a383a=_0x4525e4[_0x3eda5b(0x17f)],_0x521525=_0x1ef6d5[_0x3eda5b(0x140)][_0x5a383a];if(!_0x521525)throw new Error(_0x3eda5b(0x153)+_0x5a383a+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x3d35d6=[],_0x5ab454=[],_0x13a6f2=[];for(const _0x59fd0d of _0x347fa6){const _0x5ea61a=resolveRemoteScriptTarget(_0x4a3853,_0x59fd0d,_0x4cd5a7,_0x4b7da5[_0x3eda5b(0x170)],_0x414bfc);if(!_0x5ea61a){_0x5ab454[_0x3eda5b(0x17b)]({'lockKey':_0x59fd0d[_0x3eda5b(0x14b)]+'/'+_0x59fd0d[_0x3eda5b(0x17a)],'reason':_0x3eda5b(0x180)});continue;}const _0x1d8e70=_0x4b7da5[_0x3eda5b(0x170)][_0x5ea61a[_0x3eda5b(0x134)]];try{if(!_0x59fd0d['id'])throw new Error(_0x3eda5b(0x182));if(_0x59fd0d[_0x3eda5b(0x162)]==null)throw new Error(_0x3eda5b(0x138));const _0x12832c=_0x59fd0d[_0x3eda5b(0x162)],_0x1047bf=computeContentHash(_0x12832c);if(!_0x159b7c){const _0xf546b3=await hasUnsyncedLocalChanges(_0x5ea61a[_0x3eda5b(0x15c)],_0x1d8e70,_0x1047bf);if(_0xf546b3){_0x5ab454[_0x3eda5b(0x17b)]({'lockKey':_0x5ea61a[_0x3eda5b(0x134)],'reason':_0x3eda5b(0x15e)});continue;}}await ensureParentDirectory(_0x5ea61a['filePath']),await writeFile(_0x5ea61a[_0x3eda5b(0x15c)],_0x12832c,'utf8');const _0x3ce72d={'hash':_0x1047bf,'remoteId':_0x59fd0d['id'],'version':_0x59fd0d[_0x3eda5b(0x169)]};_0x5ea61a[_0x3eda5b(0x137)]==='HOOK'&&_0x5ea61a[_0x3eda5b(0x175)]&&(_0x3ce72d[_0x3eda5b(0x13e)]=_0x5ea61a[_0x3eda5b(0x175)][_0x3eda5b(0x13e)],_0x3ce72d['datasetCode']=_0x5ea61a[_0x3eda5b(0x175)][_0x3eda5b(0x152)],_0x3ce72d['operationType']=_0x5ea61a[_0x3eda5b(0x175)][_0x3eda5b(0x135)],_0x3ce72d[_0x3eda5b(0x14a)]=_0x5ea61a['hookLocation'][_0x3eda5b(0x14a)]),_0x521525[_0x3eda5b(0x170)][_0x5ea61a[_0x3eda5b(0x134)]]=_0x3ce72d,_0x3d35d6[_0x3eda5b(0x17b)]({'lockKey':_0x5ea61a[_0x3eda5b(0x134)],'remoteId':_0x59fd0d['id']});}catch(_0x59813a){_0x13a6f2[_0x3eda5b(0x17b)]({'lockKey':_0x5ea61a[_0x3eda5b(0x134)],'error':_0x59813a instanceof Error?_0x59813a[_0x3eda5b(0x17c)]:String(_0x59813a)});}}return _0x521525[_0x3eda5b(0x154)]=new Date()[_0x3eda5b(0x156)](),await writeBffLockFile(_0x4a3853[_0x3eda5b(0x147)],_0x1ef6d5),{'ok':_0x13a6f2[_0x3eda5b(0x13b)]===0x0,'data':{'pulled':_0x3d35d6,'skipped':_0x5ab454,'failed':_0x13a6f2},'message':_0x3eda5b(0x136)+_0x3d35d6['length']+_0x3eda5b(0x141)+_0x5ab454[_0x3eda5b(0x13b)]+_0x3eda5b(0x160)+_0x13a6f2[_0x3eda5b(0x13b)]+_0x3eda5b(0x149)};}};function a31_0x57a4(){const _0x372d4e=['parse','hash','write','bool','datasetCode','Lock\x20scope\x20for\x20app\x20\x22','lastSync','force','toISOString','6SYXwcL','Would\x20inspect\x20','string','HOOK','str','filePath','yes','local\x20unsynced\x20changes','3069hLoqhM','\x20skipped,\x20','cancelled','scriptContent','stderr','pull','scriptsRoot','close','COMMON','GET','version','all','11261907sPXyfb','stdin','47677gZnhaO','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','conflict','functions','apiDir','nonInteractive','\x20remote\x20BFF\x20script(s)\x20for\x20pull','map','hookLocation','includes','Force\x20pull\x20cancelled.','question','27760ehCUrE','functionName','push','message','&type=','4290635ebmtQs','appCode','unresolvable\x20target\x20path','851510UeIGbd','Remote\x20script\x20missing\x20id.','lockKey','operationType','Pull\x20complete:\x20','type','Remote\x20script\x20missing\x20content.','392HItGjG','stringify','length','skipped','2JxHIZG','alias','would_pull','apps','\x20pulled,\x20','Force\x20overwrite\x20local\x20unsynced\x20changes','validation','trim','2383164smxNHf','ENDPOINT','lockFilePath','2515240kenBrW','\x20failed','functionNode','scriptType','/api/management/library/scripts/list?appCode=','toLowerCase'];a31_0x57a4=function(){return _0x372d4e;};return a31_0x57a4();}async function hasUnsyncedLocalChanges(_0x99d758,_0x156fde,_0x3b8f75){const _0x47ccc4=a31_0x3f9834;if(!await fileExists(_0x99d758))return![];const _0x33804e=await computeFileHash(_0x99d758);if(!_0x156fde)return _0x3b8f75?_0x33804e!==_0x3b8f75:!![];return _0x33804e!==_0x156fde[_0x47ccc4(0x14f)];}function buildDatasetCodeToAliasMap(_0xd5f134,_0x532b70){const _0x50442d=a31_0x3f9834,_0x2055ab=loadAliasMap(_0xd5f134,undefined,resolveApiFilePath(_0xd5f134,_0x532b70));return new Map(_0x2055ab[_0x50442d(0x174)](_0x2f6e63=>[_0x2f6e63[_0x50442d(0x152)],_0x2f6e63[_0x50442d(0x13e)]]));}async function confirmForce(){const _0x1eb02c=a31_0x3f9834,_0x22c4d3=createInterface({'input':process[_0x1eb02c(0x16c)],'output':process[_0x1eb02c(0x163)]}),_0x24dedb=await new Promise(_0x4be210=>{const _0x230f25=_0x1eb02c;_0x22c4d3[_0x230f25(0x178)]('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0x4be210);});return _0x22c4d3[_0x1eb02c(0x166)](),['y',_0x1eb02c(0x15d)][_0x1eb02c(0x176)](_0x24dedb[_0x1eb02c(0x144)]()[_0x1eb02c(0x14d)]());}