@lovrabet/rabetbase-cli 2.2.4-beta.1 → 2.2.4-beta.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/create.js +1 -1
  28. package/lib/commands/bff/delete.js +1 -1
  29. package/lib/commands/bff/detail.js +1 -1
  30. package/lib/commands/bff/index.js +1 -1
  31. package/lib/commands/bff/list.js +1 -1
  32. package/lib/commands/bff/pull.js +1 -1
  33. package/lib/commands/bff/push.js +1 -1
  34. package/lib/commands/bff/status.js +1 -1
  35. package/lib/commands/cli-update.js +1 -1
  36. package/lib/commands/codegen/index.js +1 -1
  37. package/lib/commands/codegen/sdk.js +1 -1
  38. package/lib/commands/codegen/sql.js +1 -1
  39. package/lib/commands/common/app-selector.js +1 -1
  40. package/lib/commands/common/flags.js +1 -1
  41. package/lib/commands/common/validate.js +1 -1
  42. package/lib/commands/config/get.js +1 -1
  43. package/lib/commands/config/index.js +1 -1
  44. package/lib/commands/config/list.js +1 -1
  45. package/lib/commands/config/set.js +1 -1
  46. package/lib/commands/config/shared.js +1 -1
  47. package/lib/commands/data/filter.js +1 -1
  48. package/lib/commands/data/getOne.js +1 -1
  49. package/lib/commands/data/index.js +1 -1
  50. package/lib/commands/data/shared.js +1 -1
  51. package/lib/commands/dataset/capability.js +1 -1
  52. package/lib/commands/dataset/delete.js +1 -1
  53. package/lib/commands/dataset/detail.js +1 -1
  54. package/lib/commands/dataset/extend-update.js +1 -1
  55. package/lib/commands/dataset/field-update.js +1 -1
  56. package/lib/commands/dataset/index.js +1 -1
  57. package/lib/commands/dataset/list.js +1 -1
  58. package/lib/commands/dataset/operations.js +1 -1
  59. package/lib/commands/dataset/relation-create.js +1 -1
  60. package/lib/commands/dataset/relation-delete.js +1 -1
  61. package/lib/commands/dataset/relation-shared.js +1 -1
  62. package/lib/commands/dataset/relation-update.js +1 -1
  63. package/lib/commands/dataset/relations.js +1 -1
  64. package/lib/commands/dataset/rename.js +1 -1
  65. package/lib/commands/db/analyze-cancel.js +1 -1
  66. package/lib/commands/db/analyze-start.js +1 -1
  67. package/lib/commands/db/analyze-status.js +1 -1
  68. package/lib/commands/db/create.js +1 -1
  69. package/lib/commands/db/delete.js +1 -1
  70. package/lib/commands/db/detail.js +1 -1
  71. package/lib/commands/db/diff.js +1 -1
  72. package/lib/commands/db/index.js +1 -1
  73. package/lib/commands/db/list.js +1 -1
  74. package/lib/commands/db/shared.js +1 -1
  75. package/lib/commands/db/tables.js +1 -1
  76. package/lib/commands/db/test.js +1 -1
  77. package/lib/commands/db/update.js +1 -1
  78. package/lib/commands/doctor.js +1 -1
  79. package/lib/commands/init/index.js +1 -1
  80. package/lib/commands/issue/index.js +1 -1
  81. package/lib/commands/issue/nudge.js +1 -1
  82. package/lib/commands/issue/report.js +1 -1
  83. package/lib/commands/issue/shared.js +1 -1
  84. package/lib/commands/logs/index.js +1 -1
  85. package/lib/commands/menu/index.js +1 -1
  86. package/lib/commands/menu/list.js +1 -1
  87. package/lib/commands/menu/shared/compare-table.js +1 -1
  88. package/lib/commands/menu/shared/index.js +1 -1
  89. package/lib/commands/menu/shared/inquirer.js +1 -1
  90. package/lib/commands/menu/shared/local-pages.js +1 -1
  91. package/lib/commands/menu/shared/logic.js +1 -1
  92. package/lib/commands/menu/shared/service.js +1 -1
  93. package/lib/commands/menu/shared/sync-core.js +1 -1
  94. package/lib/commands/menu/shared/update-core.js +1 -1
  95. package/lib/commands/menu/shared/valid-url.js +1 -1
  96. package/lib/commands/menu/sync.js +1 -1
  97. package/lib/commands/menu/update.js +1 -1
  98. package/lib/commands/page/generate-start.js +1 -1
  99. package/lib/commands/page/generate-status.js +1 -1
  100. package/lib/commands/page/index.js +1 -1
  101. package/lib/commands/page/pull.js +1 -1
  102. package/lib/commands/page/push.js +1 -1
  103. package/lib/commands/page/relation-audit.js +1 -1
  104. package/lib/commands/page/shared.js +1 -1
  105. package/lib/commands/page/standard-page-status.js +1 -1
  106. package/lib/commands/page/sync.js +1 -1
  107. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  108. package/lib/commands/project/create/format-elapsed.js +1 -1
  109. package/lib/commands/project/create/main.js +1 -1
  110. package/lib/commands/project/create/non-interactive.js +1 -1
  111. package/lib/commands/project/create/project-template-path.js +1 -1
  112. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  113. package/lib/commands/project/create/use-format-code.js +1 -1
  114. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  115. package/lib/commands/project/index.js +1 -1
  116. package/lib/commands/project/init.js +1 -1
  117. package/lib/commands/project/upgrade.js +1 -1
  118. package/lib/commands/registry.js +1 -1
  119. package/lib/commands/run/index.js +1 -1
  120. package/lib/commands/schema.js +1 -1
  121. package/lib/commands/skill/index.js +1 -1
  122. package/lib/commands/sql/create.js +1 -1
  123. package/lib/commands/sql/delete.js +1 -1
  124. package/lib/commands/sql/detail.js +1 -1
  125. package/lib/commands/sql/exec.js +1 -1
  126. package/lib/commands/sql/index.js +1 -1
  127. package/lib/commands/sql/list.js +1 -1
  128. package/lib/commands/sql/pull.js +1 -1
  129. package/lib/commands/sql/push.js +1 -1
  130. package/lib/commands/sql/save.js +1 -1
  131. package/lib/commands/sql/shared.js +1 -1
  132. package/lib/commands/sql/status.js +1 -1
  133. package/lib/commands/sql/validate.js +1 -1
  134. package/lib/config/schema.js +1 -1
  135. package/lib/constant/cdn.js +1 -1
  136. package/lib/constant/cli.js +1 -1
  137. package/lib/constant/defaults.js +1 -1
  138. package/lib/constant/domain.js +1 -1
  139. package/lib/constant/env.js +1 -1
  140. package/lib/constant/output.js +1 -1
  141. package/lib/constant/paths.js +1 -1
  142. package/lib/constant/risk.js +1 -1
  143. package/lib/context.js +1 -1
  144. package/lib/core/alias-resolver.js +1 -1
  145. package/lib/core/api-client.js +1 -1
  146. package/lib/core/bff/config.js +1 -1
  147. package/lib/core/bff/file-system.js +1 -1
  148. package/lib/core/bff/hash.js +1 -1
  149. package/lib/core/bff/lock.js +1 -1
  150. package/lib/core/bff/utils.js +1 -1
  151. package/lib/core/db-resolver.js +1 -1
  152. package/lib/core/page/file-system.js +1 -1
  153. package/lib/core/page/hash.js +1 -1
  154. package/lib/core/page/lock.js +1 -1
  155. package/lib/core/sql-sync/config.js +1 -1
  156. package/lib/core/sql-sync/file-system.js +1 -1
  157. package/lib/core/sql-sync/hash.js +1 -1
  158. package/lib/core/sql-sync/lock.js +1 -1
  159. package/lib/core/sql-sync/utils.js +1 -1
  160. package/lib/core/sql-validator.js +1 -1
  161. package/lib/errors.js +1 -1
  162. package/lib/framework/build-all-flags.js +1 -1
  163. package/lib/framework/flags.js +1 -1
  164. package/lib/framework/help.js +1 -1
  165. package/lib/framework/index.js +1 -1
  166. package/lib/framework/output.js +1 -1
  167. package/lib/framework/response.js +1 -1
  168. package/lib/framework/runner-alias.js +1 -1
  169. package/lib/framework/runner.js +1 -1
  170. package/lib/framework/schema-export.js +1 -1
  171. package/lib/framework/types.js +1 -1
  172. package/lib/generated/build-info.js +1 -1
  173. package/lib/help.js +1 -1
  174. package/lib/skills/main.js +1 -1
  175. package/lib/skills/npx-skills-add.js +1 -1
  176. package/lib/telemetry/cli-command-trace.js +1 -1
  177. package/lib/telemetry/cli-help-trace.js +1 -1
  178. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  179. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  180. package/lib/telemetry/send-cli-trace-log.js +1 -1
  181. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  182. package/lib/utils/ai_config.js +1 -1
  183. package/lib/utils/apply-jq-filter.js +1 -1
  184. package/lib/utils/cdn-config.js +1 -1
  185. package/lib/utils/check-sdk-version.js +1 -1
  186. package/lib/utils/cli-version-check.js +1 -1
  187. package/lib/utils/cli-version-policy.js +1 -1
  188. package/lib/utils/config.js +1 -1
  189. package/lib/utils/copy-directory.js +1 -1
  190. package/lib/utils/entity-with-id.js +1 -1
  191. package/lib/utils/file-utils.js +1 -1
  192. package/lib/utils/guides-cdn.js +1 -1
  193. package/lib/utils/http-client.js +1 -1
  194. package/lib/utils/is-non-interactive.js +1 -1
  195. package/lib/utils/logger.js +1 -1
  196. package/lib/utils/params.js +1 -1
  197. package/lib/utils/platform.js +1 -1
  198. package/lib/utils/rules-cdn.js +1 -1
  199. package/lib/utils/sleep.js +1 -1
  200. package/lib/utils/template-replacer.js +1 -1
  201. package/lib/utils/update-notice.js +1 -1
  202. package/lib/utils/version.js +1 -1
  203. package/lib/utils/with-active-cookie.js +1 -1
  204. package/lib/utils/write-cli-side-channel.js +1 -1
  205. package/package.json +1 -1
@@ -1 +1 @@
1
- const a19_0x3edeb3=a19_0x5c43;(function(_0x26e502,_0x38d031){const _0x38a328=a19_0x5c43,_0x494072=_0x26e502();while(!![]){try{const _0x419833=-parseInt(_0x38a328(0x10d))/0x1*(parseInt(_0x38a328(0x115))/0x2)+-parseInt(_0x38a328(0x117))/0x3*(parseInt(_0x38a328(0x108))/0x4)+parseInt(_0x38a328(0x113))/0x5*(parseInt(_0x38a328(0x110))/0x6)+parseInt(_0x38a328(0x10f))/0x7*(parseInt(_0x38a328(0x106))/0x8)+parseInt(_0x38a328(0x112))/0x9*(-parseInt(_0x38a328(0x111))/0xa)+parseInt(_0x38a328(0x118))/0xb+-parseInt(_0x38a328(0x10e))/0xc*(-parseInt(_0x38a328(0x116))/0xd);if(_0x419833===_0x38d031)break;else _0x494072['push'](_0x494072['shift']());}catch(_0x549d3f){_0x494072['push'](_0x494072['shift']());}}}(a19_0x120b,0xe27e9));import{listRemoteApps}from'../../core/api-client.js';function a19_0x5c43(_0x364bfc,_0x1bdb35){_0x364bfc=_0x364bfc-0x106;const _0x120be6=a19_0x120b();let _0x5c435a=_0x120be6[_0x364bfc];return _0x5c435a;}async function execute(_0x544408){const _0x24e849=a19_0x5c43,{setActiveCookie:_0x590df0}=await import('../../core/api-client.js');_0x590df0(_0x544408[_0x24e849(0x107)]);const _0x3c4579=await listRemoteApps();return{'ok':!![],'data':{'items':_0x3c4579[_0x24e849(0x11b)](_0x3e054a=>({..._0x3e054a['id']!=null?{'id':_0x3e054a['id']}:{},'appCode':_0x3e054a['appCode'],'appName':_0x3e054a[_0x24e849(0x10a)],..._0x3e054a['appDesc']!=null?{'appDesc':_0x3e054a[_0x24e849(0x10c)]}:{}})),'meta':{'source':_0x24e849(0x10b)}}};}function a19_0x120b(){const _0x1b3e87=['120XagBym','cookie','964ZDYgnV','app','appName','platform','appDesc','805108MHFWPy','12GSbCZf','304955iyKHHq','18ZuoCaj','10JJzSPf','7923438jmwExC','2825545YfmtLR','remote','2rGLDXQ','4013269qlgsXW','3774ANDbsp','2847614LcVRTz','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','read','map'];a19_0x120b=function(){return _0x1b3e87;};return a19_0x120b();}export const appRemoteDefinition={'service':a19_0x3edeb3(0x109),'command':a19_0x3edeb3(0x114),'description':a19_0x3edeb3(0x119),'risk':a19_0x3edeb3(0x11a),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ function a19_0x34d9(_0x5dd76c,_0x24eb36){_0x5dd76c=_0x5dd76c-0x127;const _0x106066=a19_0x1060();let _0x34d936=_0x106066[_0x5dd76c];return _0x34d936;}const a19_0xd4530=a19_0x34d9;(function(_0x5e96e3,_0x5e1cc0){const _0x3e12bf=a19_0x34d9,_0x81c89c=_0x5e96e3();while(!![]){try{const _0x4c6aff=parseInt(_0x3e12bf(0x135))/0x1*(parseInt(_0x3e12bf(0x12d))/0x2)+-parseInt(_0x3e12bf(0x131))/0x3+-parseInt(_0x3e12bf(0x12e))/0x4+-parseInt(_0x3e12bf(0x13a))/0x5*(parseInt(_0x3e12bf(0x136))/0x6)+parseInt(_0x3e12bf(0x138))/0x7*(parseInt(_0x3e12bf(0x13b))/0x8)+-parseInt(_0x3e12bf(0x139))/0x9+-parseInt(_0x3e12bf(0x12a))/0xa*(-parseInt(_0x3e12bf(0x132))/0xb);if(_0x4c6aff===_0x5e1cc0)break;else _0x81c89c['push'](_0x81c89c['shift']());}catch(_0x2a7f5a){_0x81c89c['push'](_0x81c89c['shift']());}}}(a19_0x1060,0x9c3b6));function a19_0x1060(){const _0x2928c8=['../../core/api-client.js','2691825BdCKtv','3739527JdneQH','app','platform','267706QtjZfB','30ztuuxc','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','14kOaLzH','3218778UyjcCB','932275kfODEl','1699336FpgdBO','appDesc','read','remote','60NncFmV','appName','cookie','4LFDddh','691480bZKpTQ','map'];a19_0x1060=function(){return _0x2928c8;};return a19_0x1060();}import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x2830e2){const _0x39ab30=a19_0x34d9,{setActiveCookie:_0x624cb3}=await import(_0x39ab30(0x130));_0x624cb3(_0x2830e2[_0x39ab30(0x12c)]);const _0x405ad7=await listRemoteApps();return{'ok':!![],'data':{'items':_0x405ad7[_0x39ab30(0x12f)](_0x12284c=>({..._0x12284c['id']!=null?{'id':_0x12284c['id']}:{},'appCode':_0x12284c['appCode'],'appName':_0x12284c[_0x39ab30(0x12b)],..._0x12284c[_0x39ab30(0x127)]!=null?{'appDesc':_0x12284c[_0x39ab30(0x127)]}:{}})),'meta':{'source':_0x39ab30(0x134)}}};}export const appRemoteDefinition={'service':a19_0xd4530(0x133),'command':a19_0xd4530(0x129),'description':a19_0xd4530(0x137),'risk':a19_0xd4530(0x128),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -1 +1 @@
1
- (function(_0x3422c3,_0x14c432){const _0x181812=a20_0x3d4e,_0xb63b38=_0x3422c3();while(!![]){try{const _0x4f0931=parseInt(_0x181812(0x19a))/0x1*(-parseInt(_0x181812(0x193))/0x2)+parseInt(_0x181812(0x19b))/0x3+-parseInt(_0x181812(0x196))/0x4*(parseInt(_0x181812(0x198))/0x5)+-parseInt(_0x181812(0x199))/0x6*(parseInt(_0x181812(0x197))/0x7)+parseInt(_0x181812(0x191))/0x8+-parseInt(_0x181812(0x192))/0x9+-parseInt(_0x181812(0x194))/0xa*(-parseInt(_0x181812(0x195))/0xb);if(_0x4f0931===_0x14c432)break;else _0xb63b38['push'](_0xb63b38['shift']());}catch(_0x15f693){_0xb63b38['push'](_0xb63b38['shift']());}}}(a20_0x59d8,0x5e8e1));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';function a20_0x59d8(){const _0x5ccd33=['368ajJTvF','16345PfrZyi','23770unjEpW','1902EJgUpl','10RVlwad','1838535pppjEA','3803680jbtBUf','5228622jAZzgl','44512nAhgjx','30KPuHLq','4693601rFOXft'];a20_0x59d8=function(){return _0x5ccd33;};return a20_0x59d8();}import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';function a20_0x3d4e(_0xfae42c,_0x592dbe){_0xfae42c=_0xfae42c-0x191;const _0x59d87b=a20_0x59d8();let _0x3d4e57=_0x59d87b[_0xfae42c];return _0x3d4e57;}import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ (function(_0x16f007,_0x470b8b){const _0x27f1f0=a20_0x2e08,_0x1aea4d=_0x16f007();while(!![]){try{const _0x205a7e=parseInt(_0x27f1f0(0x142))/0x1*(-parseInt(_0x27f1f0(0x13d))/0x2)+parseInt(_0x27f1f0(0x13e))/0x3*(-parseInt(_0x27f1f0(0x13a))/0x4)+-parseInt(_0x27f1f0(0x141))/0x5*(parseInt(_0x27f1f0(0x140))/0x6)+-parseInt(_0x27f1f0(0x139))/0x7+parseInt(_0x27f1f0(0x13c))/0x8+parseInt(_0x27f1f0(0x138))/0x9*(-parseInt(_0x27f1f0(0x143))/0xa)+-parseInt(_0x27f1f0(0x13b))/0xb*(-parseInt(_0x27f1f0(0x13f))/0xc);if(_0x205a7e===_0x470b8b)break;else _0x1aea4d['push'](_0x1aea4d['shift']());}catch(_0x4b7da1){_0x1aea4d['push'](_0x1aea4d['shift']());}}}(a20_0x3dbf,0x3e87f));import{appListDefinition}from'../../commands/app/list.js';function a20_0x3dbf(){const _0xaa93f0=['125629RVPuKH','1386910ELrWWx','9UHzWCF','3408076WDPyfo','13836hUnEYv','209ghiyQY','1746520dPujOk','2dmhLzb','267toOUmz','898680pOofpl','786ZzElQv','12445pHhdwl'];a20_0x3dbf=function(){return _0xaa93f0;};return a20_0x3dbf();}import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';function a20_0x2e08(_0x51aea8,_0x2ba980){_0x51aea8=_0x51aea8-0x138;const _0x3dbf8b=a20_0x3dbf();let _0x2e08d6=_0x3dbf8b[_0x51aea8];return _0x2e08d6;}export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- const a21_0x32ab56=a21_0x3e0e;(function(_0x3727b4,_0x32b21f){const _0x573696=a21_0x3e0e,_0x35eb3c=_0x3727b4();while(!![]){try{const _0x108651=-parseInt(_0x573696(0x1bb))/0x1+-parseInt(_0x573696(0x1af))/0x2+-parseInt(_0x573696(0x1c3))/0x3+parseInt(_0x573696(0x1c8))/0x4*(parseInt(_0x573696(0x1cf))/0x5)+-parseInt(_0x573696(0x1d0))/0x6+parseInt(_0x573696(0x1cc))/0x7+parseInt(_0x573696(0x1ca))/0x8;if(_0x108651===_0x32b21f)break;else _0x35eb3c['push'](_0x35eb3c['shift']());}catch(_0x29ebc1){_0x35eb3c['push'](_0x35eb3c['shift']());}}}(a21_0x120f,0x4c8e9));import{readRawConfigWithLayers}from'../../context.js';function a21_0x3e0e(_0x845ce7,_0x1933fe){_0x845ce7=_0x845ce7-0x1ae;const _0x120f59=a21_0x120f();let _0x3e0ecc=_0x120f59[_0x845ce7];return _0x3e0ecc;}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(_0x434770,_0x597947){const _0x34395c=a21_0x3e0e,_0x457603=[],_0x576976=_0x434770['apps']&&typeof _0x434770['apps']===_0x34395c(0x1c6)?_0x434770[_0x34395c(0x1b8)]:{},_0x47a8e1=_0x434770[_0x34395c(0x1d3)]||undefined;for(const [_0x433fa0,_0x6b5b0]of Object[_0x34395c(0x1cd)](_0x576976)){if(!_0x6b5b0||typeof _0x6b5b0!=='object'||!_0x6b5b0['appcode'])continue;_0x457603[_0x34395c(0x1be)]({'name':_0x433fa0,'appcode':_0x6b5b0[_0x34395c(0x1ce)],'named':!![],'definedIn':_0x597947,'isDefault':_0x433fa0===_0x47a8e1,...buildAppProfileListFields(_0x6b5b0)});}return _0x457603;}function buildMergedItems(_0x353beb,_0x474cae){const _0x844d4a=a21_0x3e0e,{apps:apps={},defaultApp:_0x57560f}=_0x353beb,_0x46efae=_0x474cae[_0x844d4a(0x1c4)][_0x844d4a(0x1b8)]&&typeof _0x474cae[_0x844d4a(0x1c4)][_0x844d4a(0x1b8)]===_0x844d4a(0x1c6)?_0x474cae['globalConfig'][_0x844d4a(0x1b8)]:{},_0x39796a=_0x474cae[_0x844d4a(0x1b9)][_0x844d4a(0x1b8)]&&typeof _0x474cae[_0x844d4a(0x1b9)][_0x844d4a(0x1b8)]===_0x844d4a(0x1c6)?_0x474cae[_0x844d4a(0x1b9)][_0x844d4a(0x1b8)]:{},_0x490afd=_0x474cae[_0x844d4a(0x1b9)][_0x844d4a(0x1b7)]===![],_0x55cadb=Object[_0x844d4a(0x1cd)](apps),_0x226a8b=_0x55cadb[_0x844d4a(0x1c9)](([_0x2656ba,_0x59d310])=>({'name':_0x2656ba,'appcode':_0x59d310[_0x844d4a(0x1ce)],'named':!![],'definedIn':appDefinedIn(_0x2656ba,_0x46efae,_0x39796a,_0x490afd),'isDefault':_0x2656ba===_0x57560f,...buildAppProfileListFields(_0x59d310)}));return _0x226a8b;}async function execute(_0x309102){const _0x567305=a21_0x3e0e,_0x33e80e=_0x309102[_0x567305(0x1c2)](_0x567305(0x1c1)),_0x32b7e1=_0x309102[_0x567305(0x1c2)](_0x567305(0x1ba)),_0x4c0cf3=_0x33e80e?_0x567305(0x1c1):_0x32b7e1?_0x567305(0x1ba):_0x567305(0x1d2),{config:_0x59c3cb,layers:_0x5bbd74}=readRawConfigWithLayers(),_0x4e8175=resolveDefaultAppSource(_0x5bbd74),{defaultApp:_0x2d1bb2}=_0x59c3cb;let _0x217bea,_0x488f47;switch(_0x4c0cf3){case _0x567305(0x1c1):_0x217bea=buildItemsFromLayer(_0x5bbd74[_0x567305(0x1c4)],'global'),_0x488f47=_0x5bbd74[_0x567305(0x1c5)];break;case _0x567305(0x1ba):_0x217bea=buildItemsFromLayer(_0x5bbd74[_0x567305(0x1b9)],'project'),_0x488f47=_0x5bbd74['projectPath'];break;default:_0x217bea=buildMergedItems(_0x59c3cb,_0x5bbd74);break;}enrichAppListItemsWithMergedSelection(_0x217bea,_0x309102[_0x567305(0x1b3)]);if(_0x217bea[_0x567305(0x1c0)]===0x0){const _0x530c9e=_0x4c0cf3===_0x567305(0x1d2)?'':_0x567305(0x1c7)+_0x4c0cf3+_0x567305(0x1b1);return{'ok':!![],'data':[],'message':_0x567305(0x1b4)+_0x530c9e+_0x567305(0x1b6)+CLI_BIN_NAME+_0x567305(0x1b5)};}const _0x235278=_0x217bea[_0x567305(0x1bd)](_0x4ee6e9=>_0x4ee6e9[_0x567305(0x1bc)]===!![]),_0x4b054d=_0x2d1bb2??_0x235278?.[_0x567305(0x1ce)]??null,_0x2d21f6=_0x4c0cf3==='merged'?{'globalPath':_0x5bbd74[_0x567305(0x1c5)]??null,'projectPath':_0x5bbd74[_0x567305(0x1d1)]??null,'defaultApp':_0x4b054d,'defaultAppSource':_0x2d1bb2!=null?_0x4e8175:null}:{'scope':_0x4c0cf3,'configPath':_0x488f47??null};return{'ok':!![],'data':{'items':_0x217bea,'meta':_0x2d21f6}};}function a21_0x120f(){const _0xb079cf=['Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','length','global','bool','507957mMuGxy','globalConfig','globalPath','object','\x20in\x20','10116cUVmjW','map','7757320qUwFmm','boolean','746956GiKfXd','entries','appcode','970vPJjXS','1518828ttniHp','projectPath','merged','defaultApp','List\x20all\x20configured\x20apps','1233856ZJUkGQ','read','\x20config','app','mergedCli','No\x20apps\x20configured','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','.\x20Use\x20`','inherit','apps','projectConfig','project','214037PPTKaL','isCurrent','find','push'];a21_0x120f=function(){return _0xb079cf;};return a21_0x120f();}export const appListDefinition={'service':a21_0x32ab56(0x1b2),'command':'list','description':a21_0x32ab56(0x1ae),'risk':a21_0x32ab56(0x1b0),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x32ab56(0x1c1),'type':a21_0x32ab56(0x1cb),'description':'Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','default':![]},{'name':'project','type':a21_0x32ab56(0x1cb),'description':a21_0x32ab56(0x1bf),'default':![]}],'execute':execute};
1
+ const a21_0x734e03=a21_0x3adb;function a21_0x2bf5(){const _0x30d924=['1798234vWWjdn','1bBBYrd','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','bool','\x20config','apps','read','project','11283534tpOMVi','find','isCurrent','map','defaultApp','entries','mergedCli','5Lfrcch','12357280qsTclv','push','appcode','globalConfig','projectConfig','inherit','.\x20Use\x20`','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','5173FspmWA','\x20in\x20','global','9924WgZDSr','7056808UGmedb','projectPath','merged','List\x20all\x20configured\x20apps','boolean','2671671EqCdHP','12019800PRLgVh','length','object'];a21_0x2bf5=function(){return _0x30d924;};return a21_0x2bf5();}(function(_0x143b3a,_0x31560a){const _0x2eb8b1=a21_0x3adb,_0x457da2=_0x143b3a();while(!![]){try{const _0x2b9fcf=-parseInt(_0x2eb8b1(0x150))/0x1*(parseInt(_0x2eb8b1(0x14f))/0x2)+parseInt(_0x2eb8b1(0x14b))/0x3+-parseInt(_0x2eb8b1(0x16b))/0x4*(parseInt(_0x2eb8b1(0x15e))/0x5)+parseInt(_0x2eb8b1(0x16a))/0x6*(parseInt(_0x2eb8b1(0x167))/0x7)+parseInt(_0x2eb8b1(0x14c))/0x8+-parseInt(_0x2eb8b1(0x157))/0x9+parseInt(_0x2eb8b1(0x15f))/0xa;if(_0x2b9fcf===_0x31560a)break;else _0x457da2['push'](_0x457da2['shift']());}catch(_0x372637){_0x457da2['push'](_0x457da2['shift']());}}}(a21_0x2bf5,0xe4085));function a21_0x3adb(_0x51904e,_0x3561d4){_0x51904e=_0x51904e-0x149;const _0x2bf543=a21_0x2bf5();let _0x3adbc8=_0x2bf543[_0x51904e];return _0x3adbc8;}import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x38dbe6,_0x3f40ef){const _0x480030=a21_0x3adb,_0x5619f5=[],_0x4fe17b=_0x38dbe6[_0x480030(0x154)]&&typeof _0x38dbe6[_0x480030(0x154)]===_0x480030(0x14e)?_0x38dbe6[_0x480030(0x154)]:{},_0x2538ec=_0x38dbe6[_0x480030(0x15b)]||undefined;for(const [_0x447574,_0xca0719]of Object[_0x480030(0x15c)](_0x4fe17b)){if(!_0xca0719||typeof _0xca0719!==_0x480030(0x14e)||!_0xca0719['appcode'])continue;_0x5619f5[_0x480030(0x160)]({'name':_0x447574,'appcode':_0xca0719[_0x480030(0x161)],'named':!![],'definedIn':_0x3f40ef,'isDefault':_0x447574===_0x2538ec,...buildAppProfileListFields(_0xca0719)});}return _0x5619f5;}function buildMergedItems(_0x2b22ed,_0x11bfda){const _0x92cac7=a21_0x3adb,{apps:apps={},defaultApp:_0x99c17e}=_0x2b22ed,_0x38a9ea=_0x11bfda[_0x92cac7(0x162)][_0x92cac7(0x154)]&&typeof _0x11bfda[_0x92cac7(0x162)][_0x92cac7(0x154)]===_0x92cac7(0x14e)?_0x11bfda[_0x92cac7(0x162)][_0x92cac7(0x154)]:{},_0x2a3fff=_0x11bfda['projectConfig'][_0x92cac7(0x154)]&&typeof _0x11bfda[_0x92cac7(0x163)][_0x92cac7(0x154)]===_0x92cac7(0x14e)?_0x11bfda[_0x92cac7(0x163)][_0x92cac7(0x154)]:{},_0xbfd4b=_0x11bfda[_0x92cac7(0x163)][_0x92cac7(0x164)]===![],_0x247d82=Object[_0x92cac7(0x15c)](apps),_0x4aa43a=_0x247d82[_0x92cac7(0x15a)](([_0x44892a,_0x26c867])=>({'name':_0x44892a,'appcode':_0x26c867[_0x92cac7(0x161)],'named':!![],'definedIn':appDefinedIn(_0x44892a,_0x38a9ea,_0x2a3fff,_0xbfd4b),'isDefault':_0x44892a===_0x99c17e,...buildAppProfileListFields(_0x26c867)}));return _0x4aa43a;}async function execute(_0xd38e8a){const _0x59fac2=a21_0x3adb,_0x4f1bc4=_0xd38e8a[_0x59fac2(0x152)](_0x59fac2(0x169)),_0x5d35da=_0xd38e8a[_0x59fac2(0x152)](_0x59fac2(0x156)),_0x532e93=_0x4f1bc4?_0x59fac2(0x169):_0x5d35da?_0x59fac2(0x156):_0x59fac2(0x16d),{config:_0x3873fb,layers:_0xcb8265}=readRawConfigWithLayers(),_0x4dab41=resolveDefaultAppSource(_0xcb8265),{defaultApp:_0x20c32b}=_0x3873fb;let _0x4cdbf9,_0x48196d;switch(_0x532e93){case _0x59fac2(0x169):_0x4cdbf9=buildItemsFromLayer(_0xcb8265[_0x59fac2(0x162)],_0x59fac2(0x169)),_0x48196d=_0xcb8265['globalPath'];break;case _0x59fac2(0x156):_0x4cdbf9=buildItemsFromLayer(_0xcb8265[_0x59fac2(0x163)],_0x59fac2(0x156)),_0x48196d=_0xcb8265[_0x59fac2(0x16c)];break;default:_0x4cdbf9=buildMergedItems(_0x3873fb,_0xcb8265);break;}enrichAppListItemsWithMergedSelection(_0x4cdbf9,_0xd38e8a[_0x59fac2(0x15d)]);if(_0x4cdbf9[_0x59fac2(0x14d)]===0x0){const _0x424d96=_0x532e93===_0x59fac2(0x16d)?'':_0x59fac2(0x168)+_0x532e93+_0x59fac2(0x153);return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x424d96+_0x59fac2(0x165)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x3a9ad5=_0x4cdbf9[_0x59fac2(0x158)](_0x3e2276=>_0x3e2276[_0x59fac2(0x159)]===!![]),_0x580da0=_0x20c32b??_0x3a9ad5?.['appcode']??null,_0x250052=_0x532e93==='merged'?{'globalPath':_0xcb8265['globalPath']??null,'projectPath':_0xcb8265['projectPath']??null,'defaultApp':_0x580da0,'defaultAppSource':_0x20c32b!=null?_0x4dab41:null}:{'scope':_0x532e93,'configPath':_0x48196d??null};return{'ok':!![],'data':{'items':_0x4cdbf9,'meta':_0x250052}};}export const appListDefinition={'service':'app','command':'list','description':a21_0x734e03(0x149),'risk':a21_0x734e03(0x155),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x734e03(0x169),'type':a21_0x734e03(0x14a),'description':a21_0x734e03(0x166),'default':![]},{'name':a21_0x734e03(0x156),'type':a21_0x734e03(0x14a),'description':a21_0x734e03(0x151),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0x149399=a22_0x2e25;(function(_0x3341c0,_0x571e95){const _0x4b93f6=a22_0x2e25,_0x18fe56=_0x3341c0();while(!![]){try{const _0x3657cf=-parseInt(_0x4b93f6(0x133))/0x1+parseInt(_0x4b93f6(0x126))/0x2+-parseInt(_0x4b93f6(0x141))/0x3*(parseInt(_0x4b93f6(0x146))/0x4)+-parseInt(_0x4b93f6(0x144))/0x5*(parseInt(_0x4b93f6(0x127))/0x6)+parseInt(_0x4b93f6(0x13b))/0x7*(parseInt(_0x4b93f6(0x12a))/0x8)+-parseInt(_0x4b93f6(0x12d))/0x9*(-parseInt(_0x4b93f6(0x143))/0xa)+parseInt(_0x4b93f6(0x13a))/0xb;if(_0x3657cf===_0x571e95)break;else _0x18fe56['push'](_0x18fe56['shift']());}catch(_0x431ca2){_0x18fe56['push'](_0x18fe56['shift']());}}}(a22_0x1028,0xc4d1c));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_0x1028(){const _0x4f1bca=['1308490iDOLYi','66ONkBRL','Remove\x20an\x20app\x20from\x20config','global','777016wzpEur','bool','App\x20\x22','9LqGfLD','remove','apps','object','\x22\x20still\x20defined\x20in\x20','validation','1603534lQmfuu','Missing\x20app\x20name.','both','inherit','\x20Default\x20app\x20changed\x20to\x20\x22','App\x20profile\x20name\x20to\x20remove','project','22686708sPNaYd','42vfPvFM','\x20Note:\x20app\x20\x22','args','keys','boolean','defaultApp','1491798YkfcOk','\x20app\x20remove\x20<name>\x20[--global]','15487180PGMVlf','656325PAUwit','Use\x20global\x20config\x20scope','8SDrMmY','Usage:\x20','Removed\x20app\x20\x22','\x22\x20not\x20found.','globalConfig','projectConfig'];a22_0x1028=function(){return _0x4f1bca;};return a22_0x1028();}async function validateArgs(_0x5f151a){const _0x41c8e0=a22_0x2e25,_0x25c775=_0x5f151a['args'][0x0]?.['trim']();if(!_0x25c775)throw CliErrors[_0x41c8e0(0x132)]('Missing\x20app\x20name.',_0x41c8e0(0x121)+CLI_BIN_NAME+_0x41c8e0(0x142));}function a22_0x2e25(_0x16fde0,_0x113931){_0x16fde0=_0x16fde0-0x121;const _0x1028f9=a22_0x1028();let _0x2e25f2=_0x1028f9[_0x16fde0];return _0x2e25f2;}async function execute(_0x23f7e6){const _0x1b5aff=a22_0x2e25,_0x44224e=_0x23f7e6[_0x1b5aff(0x13d)][0x0]?.['trim']();if(!_0x44224e)throw CliErrors[_0x1b5aff(0x132)](_0x1b5aff(0x134),_0x1b5aff(0x121)+CLI_BIN_NAME+_0x1b5aff(0x142));const _0x287f6c=_0x23f7e6[_0x1b5aff(0x12b)](_0x1b5aff(0x129)),{config:_0x55cc46,layers:_0x57d2ea}=readRawConfigWithLayers(),_0x8a74b9=_0x55cc46[_0x1b5aff(0x12f)]??{};if(!_0x8a74b9[_0x44224e])throw CliErrors[_0x1b5aff(0x132)](_0x1b5aff(0x12c)+_0x44224e+_0x1b5aff(0x123));const _0x5d39a6=_0x57d2ea[_0x1b5aff(0x124)][_0x1b5aff(0x12f)]&&typeof _0x57d2ea['globalConfig'][_0x1b5aff(0x12f)]===_0x1b5aff(0x130)?_0x57d2ea[_0x1b5aff(0x124)][_0x1b5aff(0x12f)]:{},_0x5bb0a2=_0x57d2ea[_0x1b5aff(0x125)][_0x1b5aff(0x12f)]&&typeof _0x57d2ea[_0x1b5aff(0x125)][_0x1b5aff(0x12f)]==='object'?_0x57d2ea[_0x1b5aff(0x125)][_0x1b5aff(0x12f)]:{},_0x2ac7b0=appDefinedIn(_0x44224e,_0x5d39a6,_0x5bb0a2,_0x57d2ea[_0x1b5aff(0x125)][_0x1b5aff(0x136)]===![]),_0x1a354d=resolveAppScopeForWrite(_0x44224e,_0x287f6c,_0x57d2ea),_0x5842de={'global':_0x1a354d===_0x1b5aff(0x129)},_0x20b0e7=readConfig(_0x5842de),_0x53fc59=_0x20b0e7[_0x1b5aff(0x12f)];if(!_0x53fc59||!_0x53fc59[_0x44224e])throw CliErrors[_0x1b5aff(0x132)](_0x1b5aff(0x12c)+_0x44224e+_0x1b5aff(0x123));delete _0x53fc59[_0x44224e];let _0x135a77='';if(_0x20b0e7[_0x1b5aff(0x140)]===_0x44224e){const _0x52bc6e=Object[_0x1b5aff(0x13e)](_0x53fc59);_0x20b0e7[_0x1b5aff(0x140)]=_0x52bc6e['length']>0x0?_0x52bc6e[0x0]:undefined,_0x20b0e7[_0x1b5aff(0x140)]?_0x135a77=_0x1b5aff(0x137)+_0x20b0e7['defaultApp']+'\x22.':delete _0x20b0e7[_0x1b5aff(0x140)];}Object['keys'](_0x53fc59)['length']===0x0&&(delete _0x20b0e7[_0x1b5aff(0x12f)],delete _0x20b0e7['defaultApp']);writeConfig(_0x20b0e7,_0x5842de);const _0x3bd813=_0x2ac7b0===_0x1b5aff(0x135)?_0x1b5aff(0x13c)+_0x44224e+_0x1b5aff(0x131)+(_0x1a354d===_0x1b5aff(0x139)?'global':_0x1b5aff(0x139))+'\x20config.':'';return{'ok':!![],'message':_0x1b5aff(0x122)+_0x44224e+'\x22'+scopeLabel(_0x5842de)+'.'+_0x135a77+_0x3bd813};}export const appRemoveDefinition={'service':'app','command':a22_0x149399(0x12e),'description':a22_0x149399(0x128),'risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a22_0x149399(0x138),'required':!![]}],'flags':[{'name':a22_0x149399(0x129),'type':a22_0x149399(0x13f),'description':a22_0x149399(0x145),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x220fec=a22_0x34eb;(function(_0x3e7ea9,_0x20755a){const _0x2fb9c5=a22_0x34eb,_0x46a3d6=_0x3e7ea9();while(!![]){try{const _0x230de4=parseInt(_0x2fb9c5(0x89))/0x1*(parseInt(_0x2fb9c5(0x6c))/0x2)+-parseInt(_0x2fb9c5(0x6e))/0x3*(parseInt(_0x2fb9c5(0x77))/0x4)+parseInt(_0x2fb9c5(0x78))/0x5*(-parseInt(_0x2fb9c5(0x6b))/0x6)+-parseInt(_0x2fb9c5(0x86))/0x7*(parseInt(_0x2fb9c5(0x66))/0x8)+parseInt(_0x2fb9c5(0x71))/0x9+parseInt(_0x2fb9c5(0x68))/0xa*(-parseInt(_0x2fb9c5(0x79))/0xb)+-parseInt(_0x2fb9c5(0x84))/0xc*(-parseInt(_0x2fb9c5(0x70))/0xd);if(_0x230de4===_0x20755a)break;else _0x46a3d6['push'](_0x46a3d6['shift']());}catch(_0x2a9ffb){_0x46a3d6['push'](_0x46a3d6['shift']());}}}(a22_0x5cd5,0xab32d));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0xebf8b9){const _0x14e50e=a22_0x34eb,_0x8dfda6=_0xebf8b9[_0x14e50e(0x6a)][0x0]?.['trim']();if(!_0x8dfda6)throw CliErrors[_0x14e50e(0x69)](_0x14e50e(0x72),_0x14e50e(0x76)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}async function execute(_0x1daf31){const _0x204e3c=a22_0x34eb,_0x14ed8f=_0x1daf31[_0x204e3c(0x6a)][0x0]?.['trim']();if(!_0x14ed8f)throw CliErrors[_0x204e3c(0x69)](_0x204e3c(0x72),'Usage:\x20'+CLI_BIN_NAME+_0x204e3c(0x7d));const _0x57de70=_0x1daf31['bool']('global'),{config:_0x45ab0d,layers:_0x1d44ca}=readRawConfigWithLayers(),_0x69c439=_0x45ab0d[_0x204e3c(0x6d)]??{};if(!_0x69c439[_0x14ed8f])throw CliErrors[_0x204e3c(0x69)](_0x204e3c(0x6f)+_0x14ed8f+_0x204e3c(0x67));const _0x118d5a=_0x1d44ca[_0x204e3c(0x85)][_0x204e3c(0x6d)]&&typeof _0x1d44ca[_0x204e3c(0x85)][_0x204e3c(0x6d)]===_0x204e3c(0x73)?_0x1d44ca['globalConfig'][_0x204e3c(0x6d)]:{},_0x444f9f=_0x1d44ca[_0x204e3c(0x88)]['apps']&&typeof _0x1d44ca[_0x204e3c(0x88)]['apps']===_0x204e3c(0x73)?_0x1d44ca[_0x204e3c(0x88)][_0x204e3c(0x6d)]:{},_0x178d3e=appDefinedIn(_0x14ed8f,_0x118d5a,_0x444f9f,_0x1d44ca[_0x204e3c(0x88)]['inherit']===![]),_0x15ab58=resolveAppScopeForWrite(_0x14ed8f,_0x57de70,_0x1d44ca),_0x188442={'global':_0x15ab58===_0x204e3c(0x7a)},_0x471c35=readConfig(_0x188442),_0xabff75=_0x471c35[_0x204e3c(0x6d)];if(!_0xabff75||!_0xabff75[_0x14ed8f])throw CliErrors[_0x204e3c(0x69)]('App\x20\x22'+_0x14ed8f+'\x22\x20not\x20found.');delete _0xabff75[_0x14ed8f];let _0x29edf2='';if(_0x471c35[_0x204e3c(0x7b)]===_0x14ed8f){const _0x53571b=Object[_0x204e3c(0x80)](_0xabff75);_0x471c35[_0x204e3c(0x7b)]=_0x53571b[_0x204e3c(0x7f)]>0x0?_0x53571b[0x0]:undefined,_0x471c35[_0x204e3c(0x7b)]?_0x29edf2=_0x204e3c(0x7c)+_0x471c35[_0x204e3c(0x7b)]+'\x22.':delete _0x471c35[_0x204e3c(0x7b)];}Object[_0x204e3c(0x80)](_0xabff75)[_0x204e3c(0x7f)]===0x0&&(delete _0x471c35[_0x204e3c(0x6d)],delete _0x471c35[_0x204e3c(0x7b)]);writeConfig(_0x471c35,_0x188442);const _0x1ea421=_0x178d3e==='both'?'\x20Note:\x20app\x20\x22'+_0x14ed8f+_0x204e3c(0x87)+(_0x15ab58===_0x204e3c(0x74)?_0x204e3c(0x7a):'project')+'\x20config.':'';return{'ok':!![],'message':'Removed\x20app\x20\x22'+_0x14ed8f+'\x22'+scopeLabel(_0x188442)+'.'+_0x29edf2+_0x1ea421};}export const appRemoveDefinition={'service':a22_0x220fec(0x82),'command':a22_0x220fec(0x81),'description':a22_0x220fec(0x83),'risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x220fec(0x7e),'description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':[{'name':a22_0x220fec(0x7a),'type':'boolean','description':a22_0x220fec(0x75),'default':![]}],'validate':validateArgs,'execute':execute};function a22_0x34eb(_0x3e48da,_0x54ea91){_0x3e48da=_0x3e48da-0x66;const _0x5cd590=a22_0x5cd5();let _0x34eb05=_0x5cd590[_0x3e48da];return _0x34eb05;}function a22_0x5cd5(){const _0xe05232=['\x20app\x20remove\x20<name>\x20[--global]','name','length','keys','remove','app','Remove\x20an\x20app\x20from\x20config','470040OnBVAC','globalConfig','7zhvsDE','\x22\x20still\x20defined\x20in\x20','projectConfig','2234cgevBK','1616312djEzYx','\x22\x20not\x20found.','110fQffIR','validation','args','35244fKyOPg','102aNmxfM','apps','21QGwzXH','App\x20\x22','481YIFCgl','2181312DhBsJW','Missing\x20app\x20name.','object','project','Use\x20global\x20config\x20scope','Usage:\x20','111040KUBnYf','95jJtCPG','596398rDkpIQ','global','defaultApp','\x20Default\x20app\x20changed\x20to\x20\x22'];a22_0x5cd5=function(){return _0xe05232;};return a22_0x5cd5();}
@@ -1 +1 @@
1
- function a23_0x173b(){const _0x7fa0ac=['1017480wtbrwh','2yoEXvk','235yRMeJG','call','prototype','isCurrent','appCode','both','defaultApp','trim','5749YTUyDM','globalConfig','apps','380828olmfti','6957OWJwQV','keys','named','inherit','710ghoiRT','currentApp','hasOwnProperty','length','215988pnYhlc','project','993456Bdjzkx','18980uNsvBr','object','appcode','projectConfig','global','\x20(global)'];a23_0x173b=function(){return _0x7fa0ac;};return a23_0x173b();}(function(_0x2c65cc,_0x2301e7){const _0xb88ea8=a23_0x3d1a,_0x7673ec=_0x2c65cc();while(!![]){try{const _0x18c824=-parseInt(_0xb88ea8(0x1f8))/0x1*(parseInt(_0xb88ea8(0x1ef))/0x2)+parseInt(_0xb88ea8(0x1e5))/0x3+parseInt(_0xb88ea8(0x1e8))/0x4*(parseInt(_0xb88ea8(0x1f0))/0x5)+-parseInt(_0xb88ea8(0x1e7))/0x6+-parseInt(_0xb88ea8(0x1fb))/0x7+parseInt(_0xb88ea8(0x1ee))/0x8+parseInt(_0xb88ea8(0x1fc))/0x9*(-parseInt(_0xb88ea8(0x1e1))/0xa);if(_0x18c824===_0x2301e7)break;else _0x7673ec['push'](_0x7673ec['shift']());}catch(_0x377edd){_0x7673ec['push'](_0x7673ec['shift']());}}}(a23_0x173b,0x22910));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x492ff7,_0x418358){const _0x55c206=a23_0x3d1a;if(!_0x418358)return;const _0x23072c=_0x418358[_0x55c206(0x1fa)]&&typeof _0x418358[_0x55c206(0x1fa)]==='object'?_0x418358[_0x55c206(0x1fa)]:{},_0x2c4bf7=Object[_0x55c206(0x1de)](_0x23072c)[_0x55c206(0x1e4)]>0x0;for(const _0x8c3177 of _0x492ff7){_0x8c3177[_0x55c206(0x1f3)]=![];}const _0x4fc1f1=_0x418358[_0x55c206(0x1f4)]!=null?String(_0x418358[_0x55c206(0x1f4)])['trim']():'';if(_0x2c4bf7){const _0xafc07c=_0x418358[_0x55c206(0x1e2)]??_0x418358[_0x55c206(0x1f6)];if(_0xafc07c)for(const _0xf8e379 of _0x492ff7){_0xf8e379[_0x55c206(0x1df)]===!![]&&_0xf8e379['name']===_0xafc07c&&(_0xf8e379[_0x55c206(0x1f3)]=!![]);}for(const _0x4d1e20 of _0x492ff7){if(_0x4d1e20['named']!==![])continue;if(_0x418358[_0x55c206(0x1f6)])continue;_0x4fc1f1&&String(_0x4d1e20[_0x55c206(0x1ea)]??'')[_0x55c206(0x1f7)]()===_0x4fc1f1&&(_0x4d1e20[_0x55c206(0x1f3)]=!![]);}return;}if(!_0x4fc1f1)return;for(const _0x2df549 of _0x492ff7){String(_0x2df549[_0x55c206(0x1ea)]??'')['trim']()===_0x4fc1f1&&(_0x2df549[_0x55c206(0x1f3)]=!![]);}}export function resolveAppScopeForWrite(_0x2f4e44,_0x1c6779,_0xcf161f){const _0x334e05=a23_0x3d1a;if(_0x1c6779)return'global';const _0x583f30=_0xcf161f[_0x334e05(0x1eb)]['apps']&&typeof _0xcf161f['projectConfig']['apps']===_0x334e05(0x1e9)?_0xcf161f[_0x334e05(0x1eb)]['apps']:{},_0x4d9d5b=_0xcf161f[_0x334e05(0x1f9)]['apps']&&typeof _0xcf161f[_0x334e05(0x1f9)]['apps']==='object'?_0xcf161f[_0x334e05(0x1f9)][_0x334e05(0x1fa)]:{};if(Object[_0x334e05(0x1f2)]['hasOwnProperty'][_0x334e05(0x1f1)](_0x583f30,_0x2f4e44))return _0x334e05(0x1e6);if(Object[_0x334e05(0x1f2)][_0x334e05(0x1e3)]['call'](_0x4d9d5b,_0x2f4e44))return _0x334e05(0x1ec);return'project';}export function appDefinedIn(_0x419ce8,_0x4cce56,_0x3912b,_0x586ca1){const _0x370c87=a23_0x3d1a;if(_0x586ca1)return Object['prototype'][_0x370c87(0x1e3)][_0x370c87(0x1f1)](_0x3912b,_0x419ce8)?_0x370c87(0x1e6):_0x370c87(0x1ec);const _0x33c30d=Object['prototype'][_0x370c87(0x1e3)][_0x370c87(0x1f1)](_0x4cce56,_0x419ce8),_0x46e07b=Object[_0x370c87(0x1f2)]['hasOwnProperty'][_0x370c87(0x1f1)](_0x3912b,_0x419ce8);if(_0x33c30d&&_0x46e07b)return _0x370c87(0x1f5);if(_0x46e07b)return'project';return _0x370c87(0x1ec);}function a23_0x3d1a(_0x461974,_0xa57dc5){_0x461974=_0x461974-0x1de;const _0x173be0=a23_0x173b();let _0x3d1a50=_0x173be0[_0x461974];return _0x3d1a50;}export function resolveDefaultAppSource(_0x38f82d){const _0x4ea59b=a23_0x3d1a,_0x17a0bd=_0x38f82d[_0x4ea59b(0x1eb)][_0x4ea59b(0x1fa)]&&typeof _0x38f82d[_0x4ea59b(0x1eb)][_0x4ea59b(0x1fa)]==='object'?_0x38f82d['projectConfig'][_0x4ea59b(0x1fa)]:{};if(_0x4ea59b(0x1f6)in _0x38f82d[_0x4ea59b(0x1eb)])return _0x4ea59b(0x1e6);if(Object[_0x4ea59b(0x1de)](_0x17a0bd)[_0x4ea59b(0x1e4)]>0x0)return _0x4ea59b(0x1e6);if(_0x38f82d['projectConfig'][_0x4ea59b(0x1e0)]===![])return null;if(_0x38f82d[_0x4ea59b(0x1f9)][_0x4ea59b(0x1f6)])return'global';return null;}export function getConfigPath(_0xbb702d={}){const _0x2af96e=a23_0x3d1a,_0x1a3e18=_0xbb702d['global']?_0x2af96e(0x1ec):_0x2af96e(0x1e6);return resolveWriteConfigPath(_0x1a3e18);}export function readConfig(_0x5485f4={}){return readConfigFile(getConfigPath(_0x5485f4));}export function writeConfig(_0x24aac7,_0x910e0a={}){writeConfigFile(getConfigPath(_0x910e0a),_0x24aac7);}export function scopeLabel(_0x4b1991){const _0x3b4bdd=a23_0x3d1a;return _0x4b1991[_0x3b4bdd(0x1ec)]?_0x3b4bdd(0x1ed):'';}
1
+ (function(_0x4c9909,_0x5f0a29){const _0xa10250=a23_0x5e86,_0x24082f=_0x4c9909();while(!![]){try{const _0xf02996=parseInt(_0xa10250(0x193))/0x1*(parseInt(_0xa10250(0x184))/0x2)+-parseInt(_0xa10250(0x194))/0x3+-parseInt(_0xa10250(0x18c))/0x4+-parseInt(_0xa10250(0x188))/0x5*(-parseInt(_0xa10250(0x189))/0x6)+-parseInt(_0xa10250(0x18f))/0x7+parseInt(_0xa10250(0x192))/0x8*(parseInt(_0xa10250(0x190))/0x9)+-parseInt(_0xa10250(0x18e))/0xa*(-parseInt(_0xa10250(0x17c))/0xb);if(_0xf02996===_0x5f0a29)break;else _0x24082f['push'](_0x24082f['shift']());}catch(_0x47efc8){_0x24082f['push'](_0x24082f['shift']());}}}(a23_0x3c43,0xae9af));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x5d834d,_0x3cc2a1){const _0x306f00=a23_0x5e86;if(!_0x3cc2a1)return;const _0x48d94e=_0x3cc2a1[_0x306f00(0x181)]&&typeof _0x3cc2a1['apps']===_0x306f00(0x198)?_0x3cc2a1[_0x306f00(0x181)]:{},_0xc5609f=Object[_0x306f00(0x185)](_0x48d94e)['length']>0x0;for(const _0xccb2e1 of _0x5d834d){_0xccb2e1['isCurrent']=![];}const _0x4bf87b=_0x3cc2a1['appCode']!=null?String(_0x3cc2a1[_0x306f00(0x191)])['trim']():'';if(_0xc5609f){const _0x2191f7=_0x3cc2a1[_0x306f00(0x186)]??_0x3cc2a1[_0x306f00(0x199)];if(_0x2191f7)for(const _0x1eb9fa of _0x5d834d){_0x1eb9fa[_0x306f00(0x182)]===!![]&&_0x1eb9fa['name']===_0x2191f7&&(_0x1eb9fa[_0x306f00(0x19a)]=!![]);}for(const _0x87443d of _0x5d834d){if(_0x87443d[_0x306f00(0x182)]!==![])continue;if(_0x3cc2a1[_0x306f00(0x199)])continue;_0x4bf87b&&String(_0x87443d[_0x306f00(0x180)]??'')[_0x306f00(0x18a)]()===_0x4bf87b&&(_0x87443d[_0x306f00(0x19a)]=!![]);}return;}if(!_0x4bf87b)return;for(const _0x4132a8 of _0x5d834d){String(_0x4132a8['appcode']??'')[_0x306f00(0x18a)]()===_0x4bf87b&&(_0x4132a8[_0x306f00(0x19a)]=!![]);}}function a23_0x5e86(_0x41e7ea,_0x427ee4){_0x41e7ea=_0x41e7ea-0x17b;const _0x3c43b3=a23_0x3c43();let _0x5e8626=_0x3c43b3[_0x41e7ea];return _0x5e8626;}export function resolveAppScopeForWrite(_0x1a71f2,_0x101e28,_0x38dd7d){const _0x3d615e=a23_0x5e86;if(_0x101e28)return'global';const _0x564774=_0x38dd7d[_0x3d615e(0x17e)][_0x3d615e(0x181)]&&typeof _0x38dd7d[_0x3d615e(0x17e)][_0x3d615e(0x181)]===_0x3d615e(0x198)?_0x38dd7d[_0x3d615e(0x17e)]['apps']:{},_0x424871=_0x38dd7d[_0x3d615e(0x183)]['apps']&&typeof _0x38dd7d[_0x3d615e(0x183)][_0x3d615e(0x181)]===_0x3d615e(0x198)?_0x38dd7d[_0x3d615e(0x183)]['apps']:{};if(Object[_0x3d615e(0x17b)][_0x3d615e(0x196)][_0x3d615e(0x18d)](_0x564774,_0x1a71f2))return _0x3d615e(0x18b);if(Object[_0x3d615e(0x17b)][_0x3d615e(0x196)][_0x3d615e(0x18d)](_0x424871,_0x1a71f2))return _0x3d615e(0x195);return'project';}export function appDefinedIn(_0x1dd420,_0x3fc49f,_0x4f4d36,_0x274110){const _0x5b59a1=a23_0x5e86;if(_0x274110)return Object[_0x5b59a1(0x17b)]['hasOwnProperty'][_0x5b59a1(0x18d)](_0x4f4d36,_0x1dd420)?_0x5b59a1(0x18b):'global';const _0x2ea4f2=Object[_0x5b59a1(0x17b)][_0x5b59a1(0x196)][_0x5b59a1(0x18d)](_0x3fc49f,_0x1dd420),_0x3b4414=Object['prototype'][_0x5b59a1(0x196)][_0x5b59a1(0x18d)](_0x4f4d36,_0x1dd420);if(_0x2ea4f2&&_0x3b4414)return _0x5b59a1(0x17f);if(_0x3b4414)return _0x5b59a1(0x18b);return _0x5b59a1(0x195);}export function resolveDefaultAppSource(_0x519fd8){const _0xaba23a=a23_0x5e86,_0x5313fe=_0x519fd8[_0xaba23a(0x17e)][_0xaba23a(0x181)]&&typeof _0x519fd8[_0xaba23a(0x17e)][_0xaba23a(0x181)]===_0xaba23a(0x198)?_0x519fd8[_0xaba23a(0x17e)][_0xaba23a(0x181)]:{};if(_0xaba23a(0x199)in _0x519fd8[_0xaba23a(0x17e)])return _0xaba23a(0x18b);if(Object[_0xaba23a(0x185)](_0x5313fe)[_0xaba23a(0x197)]>0x0)return _0xaba23a(0x18b);if(_0x519fd8[_0xaba23a(0x17e)][_0xaba23a(0x17d)]===![])return null;if(_0x519fd8[_0xaba23a(0x183)][_0xaba23a(0x199)])return _0xaba23a(0x195);return null;}export function getConfigPath(_0x2a73a0={}){const _0x17147a=a23_0x5e86,_0x43bfb2=_0x2a73a0[_0x17147a(0x195)]?_0x17147a(0x195):_0x17147a(0x18b);return resolveWriteConfigPath(_0x43bfb2);}export function readConfig(_0x2e04ca={}){return readConfigFile(getConfigPath(_0x2e04ca));}export function writeConfig(_0x3e395d,_0x345cb4={}){writeConfigFile(getConfigPath(_0x345cb4),_0x3e395d);}export function scopeLabel(_0x3a1b1e){const _0x2f41ec=a23_0x5e86;return _0x3a1b1e[_0x2f41ec(0x195)]?_0x2f41ec(0x187):'';}function a23_0x3c43(){const _0x240778=['global','hasOwnProperty','length','object','defaultApp','isCurrent','prototype','5165479pvrXbQ','inherit','projectConfig','both','appcode','apps','named','globalConfig','215048HmMEzw','keys','currentApp','\x20(global)','4459105oQGlww','6OiaEtB','trim','project','3840484mgONtM','call','10oMaDfW','7027608TZVlod','9708606oQOzVY','appCode','8Irjpor','9kzMSGB','2185836VzXBcU'];a23_0x3c43=function(){return _0x240778;};return a23_0x3c43();}
@@ -1 +1 @@
1
- const a24_0x53ca26=a24_0x2de8;(function(_0x5cd8f5,_0x5b3c64){const _0x44b42e=a24_0x2de8,_0x4e02d0=_0x5cd8f5();while(!![]){try{const _0x67d80=-parseInt(_0x44b42e(0x17b))/0x1*(-parseInt(_0x44b42e(0x158))/0x2)+parseInt(_0x44b42e(0x165))/0x3+-parseInt(_0x44b42e(0x17f))/0x4+parseInt(_0x44b42e(0x16a))/0x5*(-parseInt(_0x44b42e(0x180))/0x6)+-parseInt(_0x44b42e(0x172))/0x7*(-parseInt(_0x44b42e(0x177))/0x8)+parseInt(_0x44b42e(0x179))/0x9*(parseInt(_0x44b42e(0x162))/0xa)+-parseInt(_0x44b42e(0x166))/0xb;if(_0x67d80===_0x5b3c64)break;else _0x4e02d0['push'](_0x4e02d0['shift']());}catch(_0x59aea8){_0x4e02d0['push'](_0x4e02d0['shift']());}}}(a24_0x1c0b,0xee00d));import{CliErrors}from'../../errors.js';function a24_0x2de8(_0x47bfa8,_0x101707){_0x47bfa8=_0x47bfa8-0x158;const _0x1c0b7f=a24_0x1c0b();let _0x2de8e5=_0x1c0b7f[_0x47bfa8];return _0x2de8e5;}import{CLI_BIN_NAME}from'../../constant/cli.js';function a24_0x1c0b(){const _0x5383f6=['924517VcGHgf','\x0aNote:\x20\x22','join','call','5gItKaB','global','bool','\x22\x20not\x20found.','Missing\x20app\x20name.','Usage:\x20','Available:\x20','Use\x20`','1584226DzsqwH','Use\x20global\x20config\x20scope','globalConfig','hasOwnProperty','defaultApp','32mXMBja','Default\x20app\x20set\x20to\x20\x22','21555xapbaN','use','3UnTKTk','boolean','args','\x20app\x20add\x20','3309740oWFOwT','7860378qlafpw','apps','trim','462998iilmpY','projectPath','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','name','appcode','App\x20profile\x20name\x20to\x20activate','\x22\x20(appcode:\x20','prototype','length','\x20--appcode\x20<code>`\x20first.','6020taKWlx','write','\x20app\x20use\x20<name>\x20[--global]','464541zrHzSP'];a24_0x1c0b=function(){return _0x5383f6;};return a24_0x1c0b();}import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x16bf9d){const _0x3b027a=a24_0x2de8,_0x1d128e=_0x16bf9d[_0x3b027a(0x17d)][0x0]?.[_0x3b027a(0x182)]();if(!_0x1d128e)throw CliErrors['validation'](_0x3b027a(0x16e),_0x3b027a(0x16f)+CLI_BIN_NAME+_0x3b027a(0x164));}async function execute(_0x32d95b){const _0x21b583=a24_0x2de8,_0x1b4c27=_0x32d95b['args'][0x0]?.[_0x21b583(0x182)]();if(!_0x1b4c27)throw CliErrors['validation'](_0x21b583(0x16e),_0x21b583(0x16f)+CLI_BIN_NAME+_0x21b583(0x164));const _0x48a9b9=_0x32d95b[_0x21b583(0x16c)]('global'),{config:_0x56dc57,layers:_0x6769aa}=readRawConfigWithLayers(),_0x196d80=_0x56dc57[_0x21b583(0x181)]??{},_0x4c42d4=_0x6769aa[_0x21b583(0x174)]['apps']&&typeof _0x6769aa[_0x21b583(0x174)]['apps']==='object'?_0x6769aa['globalConfig'][_0x21b583(0x181)]:{},_0x2e9feb={..._0x4c42d4,..._0x196d80};if(!_0x2e9feb[_0x1b4c27]){const _0x35d56f=Object['keys'](_0x2e9feb),_0x1f3dd6=_0x35d56f[_0x21b583(0x160)]===0x0?_0x21b583(0x171)+CLI_BIN_NAME+_0x21b583(0x17e)+_0x1b4c27+_0x21b583(0x161):_0x21b583(0x170)+_0x35d56f[_0x21b583(0x168)](',\x20');throw CliErrors['validation']('App\x20\x22'+_0x1b4c27+_0x21b583(0x16d),_0x1f3dd6);}let _0xac19c7,_0xc673aa='';if(_0x48a9b9)_0xac19c7={'global':!![]};else{const _0x44186b=isInProject()&&!!_0x6769aa[_0x21b583(0x159)];_0xac19c7={'global':!_0x44186b};}const _0x2a84a0=readConfig(_0xac19c7);_0x2a84a0[_0x21b583(0x176)]=_0x1b4c27;if(!_0xac19c7['global']){const _0x15c2ce=_0x2a84a0['apps']&&typeof _0x2a84a0[_0x21b583(0x181)]==='object'?_0x2a84a0['apps']:{};!Object[_0x21b583(0x15f)][_0x21b583(0x175)][_0x21b583(0x169)](_0x15c2ce,_0x1b4c27)&&(_0x2a84a0[_0x21b583(0x181)]={..._0x15c2ce,[_0x1b4c27]:_0x2e9feb[_0x1b4c27]},_0xc673aa=_0x21b583(0x167)+_0x1b4c27+_0x21b583(0x15a));}return writeConfig(_0x2a84a0,_0xac19c7),{'ok':!![],'message':_0x21b583(0x178)+_0x1b4c27+_0x21b583(0x15e)+_0x2e9feb[_0x1b4c27][_0x21b583(0x15c)]+')'+scopeLabel(_0xac19c7)+_0xc673aa};}export const appUseDefinition={'service':'app','command':a24_0x53ca26(0x17a),'description':'Switch\x20the\x20default\x20app','risk':a24_0x53ca26(0x163),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x53ca26(0x15b),'description':a24_0x53ca26(0x15d),'required':!![]}],'flags':[{'name':a24_0x53ca26(0x16b),'type':a24_0x53ca26(0x17c),'description':a24_0x53ca26(0x173),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x13083e=a24_0x9a95;(function(_0x146e1e,_0x280a17){const _0x50ca2b=a24_0x9a95,_0x446cb5=_0x146e1e();while(!![]){try{const _0x2863f2=parseInt(_0x50ca2b(0x18f))/0x1+-parseInt(_0x50ca2b(0x18a))/0x2+-parseInt(_0x50ca2b(0x185))/0x3*(parseInt(_0x50ca2b(0x19b))/0x4)+-parseInt(_0x50ca2b(0x189))/0x5+parseInt(_0x50ca2b(0x193))/0x6+parseInt(_0x50ca2b(0x192))/0x7*(parseInt(_0x50ca2b(0x1a0))/0x8)+parseInt(_0x50ca2b(0x18e))/0x9*(parseInt(_0x50ca2b(0x187))/0xa);if(_0x2863f2===_0x280a17)break;else _0x446cb5['push'](_0x446cb5['shift']());}catch(_0x18a078){_0x446cb5['push'](_0x446cb5['shift']());}}}(a24_0x2fa7,0xcf4c9));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a24_0x9a95(_0x14d2a5,_0x463935){_0x14d2a5=_0x14d2a5-0x183;const _0x2fa757=a24_0x2fa7();let _0x9a953a=_0x2fa757[_0x14d2a5];return _0x9a953a;}import{readRawConfigWithLayers,isInProject}from'../../context.js';function a24_0x2fa7(){const _0x2f3902=['join','\x20app\x20use\x20<name>\x20[--global]','\x20--appcode\x20<code>`\x20first.','app','Missing\x20app\x20name.','keys','projectPath','globalConfig','4384875INBOpK','Available:\x20','10iGyLCM','Use\x20`','7844995JJjfem','30980ZNgxxv','\x20app\x20add\x20','\x22\x20not\x20found.','Switch\x20the\x20default\x20app','8549901EnGOyy','681903IYnpkN','\x0aNote:\x20\x22','boolean','14EmkPFk','5381826PuYsOb','Use\x20global\x20config\x20scope','trim','\x22\x20(appcode:\x20','validation','App\x20profile\x20name\x20to\x20activate','object','prototype','4LeQGHB','use','defaultApp','global','name','5465392sDGKSG','Usage:\x20','hasOwnProperty','write','apps'];a24_0x2fa7=function(){return _0x2f3902;};return a24_0x2fa7();}import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x4827fe){const _0x5a1cdb=a24_0x9a95,_0x4eb9c9=_0x4827fe['args'][0x0]?.[_0x5a1cdb(0x195)]();if(!_0x4eb9c9)throw CliErrors['validation'](_0x5a1cdb(0x1a9),_0x5a1cdb(0x1a1)+CLI_BIN_NAME+_0x5a1cdb(0x1a6));}async function execute(_0x392ecc){const _0x29a704=a24_0x9a95,_0x405d93=_0x392ecc['args'][0x0]?.['trim']();if(!_0x405d93)throw CliErrors[_0x29a704(0x197)](_0x29a704(0x1a9),_0x29a704(0x1a1)+CLI_BIN_NAME+_0x29a704(0x1a6));const _0x25a0c9=_0x392ecc['bool'](_0x29a704(0x19e)),{config:_0x1b7574,layers:_0x1e8774}=readRawConfigWithLayers(),_0x558321=_0x1b7574[_0x29a704(0x1a4)]??{},_0x5de7a2=_0x1e8774['globalConfig'][_0x29a704(0x1a4)]&&typeof _0x1e8774['globalConfig'][_0x29a704(0x1a4)]===_0x29a704(0x199)?_0x1e8774[_0x29a704(0x184)]['apps']:{},_0x189368={..._0x5de7a2,..._0x558321};if(!_0x189368[_0x405d93]){const _0x5617fc=Object[_0x29a704(0x1aa)](_0x189368),_0x3113d0=_0x5617fc['length']===0x0?_0x29a704(0x188)+CLI_BIN_NAME+_0x29a704(0x18b)+_0x405d93+_0x29a704(0x1a7):_0x29a704(0x186)+_0x5617fc[_0x29a704(0x1a5)](',\x20');throw CliErrors[_0x29a704(0x197)]('App\x20\x22'+_0x405d93+_0x29a704(0x18c),_0x3113d0);}let _0x4abe3d,_0x3eccc2='';if(_0x25a0c9)_0x4abe3d={'global':!![]};else{const _0x4ea5da=isInProject()&&!!_0x1e8774[_0x29a704(0x183)];_0x4abe3d={'global':!_0x4ea5da};}const _0x419602=readConfig(_0x4abe3d);_0x419602[_0x29a704(0x19d)]=_0x405d93;if(!_0x4abe3d[_0x29a704(0x19e)]){const _0x2b5d0a=_0x419602[_0x29a704(0x1a4)]&&typeof _0x419602[_0x29a704(0x1a4)]===_0x29a704(0x199)?_0x419602['apps']:{};!Object[_0x29a704(0x19a)][_0x29a704(0x1a2)]['call'](_0x2b5d0a,_0x405d93)&&(_0x419602[_0x29a704(0x1a4)]={..._0x2b5d0a,[_0x405d93]:_0x189368[_0x405d93]},_0x3eccc2=_0x29a704(0x190)+_0x405d93+'\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.');}return writeConfig(_0x419602,_0x4abe3d),{'ok':!![],'message':'Default\x20app\x20set\x20to\x20\x22'+_0x405d93+_0x29a704(0x196)+_0x189368[_0x405d93]['appcode']+')'+scopeLabel(_0x4abe3d)+_0x3eccc2};}export const appUseDefinition={'service':a24_0x13083e(0x1a8),'command':a24_0x13083e(0x19c),'description':a24_0x13083e(0x18d),'risk':a24_0x13083e(0x1a3),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x13083e(0x19f),'description':a24_0x13083e(0x198),'required':!![]}],'flags':[{'name':'global','type':a24_0x13083e(0x191),'description':a24_0x13083e(0x194),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- const a25_0x3caa2d=a25_0x199a;(function(_0x4e07ea,_0x2c10ee){const _0x126f14=a25_0x199a,_0x9ccdb8=_0x4e07ea();while(!![]){try{const _0x3af85d=-parseInt(_0x126f14(0xf8))/0x1+parseInt(_0x126f14(0xf5))/0x2*(-parseInt(_0x126f14(0xe7))/0x3)+-parseInt(_0x126f14(0xe9))/0x4+parseInt(_0x126f14(0xfb))/0x5+parseInt(_0x126f14(0xf7))/0x6*(parseInt(_0x126f14(0xe8))/0x7)+-parseInt(_0x126f14(0xea))/0x8*(-parseInt(_0x126f14(0xf9))/0x9)+parseInt(_0x126f14(0xfc))/0xa;if(_0x3af85d===_0x2c10ee)break;else _0x9ccdb8['push'](_0x9ccdb8['shift']());}catch(_0x2ac2b5){_0x9ccdb8['push'](_0x9ccdb8['shift']());}}}(a25_0x1032,0xe7b87));import{unlinkSync,existsSync}from'node:fs';function a25_0x199a(_0x437e1b,_0x275ec2){_0x437e1b=_0x437e1b-0xe7;const _0x1032e1=a25_0x1032();let _0x199a35=_0x1032e1[_0x437e1b];return _0x199a35;}import{cookieFile}from'../../auth/constant.js';function a25_0x1032(){const _0x5b6867=['logout','2060750WDZmXe','1567120QjWCxH','../../auth/auth-server-ui.js','18wwTYto','7OhHmIu','1211188iLdzos','79040CrXKmU','bool','auth','nonInteractive','read','Clear\x20login\x20session','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','log','boolean','yes','✓\x20Logged\x20out','87726PusjfW','!\x20Not\x20logged\x20in','8815548MhhMmE','888578FFtBav','333oyLgQd'];a25_0x1032=function(){return _0x5b6867;};return a25_0x1032();}export const authDefinitions=[{'service':a25_0x3caa2d(0xec),'command':'login','description':'Login\x20via\x20browser','risk':a25_0x3caa2d(0xee),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x3caa2d(0xf3),'type':a25_0x3caa2d(0xf2),'description':a25_0x3caa2d(0xf0),'default':![]}],async 'execute'(_0x34c016){const _0x2d2521=a25_0x3caa2d,{runAuthServer:_0x3fc865}=await import(_0x2d2521(0xfd));return await _0x3fc865({'autoYes':_0x34c016[_0x2d2521(0xeb)](_0x2d2521(0xf3)),'nonInteractive':_0x34c016[_0x2d2521(0xed)]}),{'ok':!![]};}},{'service':a25_0x3caa2d(0xec),'command':a25_0x3caa2d(0xfa),'description':a25_0x3caa2d(0xef),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x44bb6b){const _0x497784=a25_0x3caa2d;return existsSync(cookieFile)?(unlinkSync(cookieFile),console['log'](_0x497784(0xf4))):console[_0x497784(0xf1)](_0x497784(0xf6)),{'ok':!![]};}}];
1
+ const a25_0x1459d5=a25_0x39ab;function a25_0x39ab(_0x3babd1,_0x566d62){_0x3babd1=_0x3babd1-0x183;const _0x150825=a25_0x1508();let _0x39abf2=_0x150825[_0x3babd1];return _0x39abf2;}function a25_0x1508(){const _0x311eac=['1993824JstTOL','yes','write','300868nUBpiP','✓\x20Logged\x20out','57297IvAWPX','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','Clear\x20login\x20session','auth','1340cixjNm','nonInteractive','4545aWvByJ','log','logout','913829MnVvNe','12kZpbbu','1153995gQEDOQ','../../auth/auth-server-ui.js','3117LHLVbp','!\x20Not\x20logged\x20in','boolean','read','login','500tjrFmM','bool'];a25_0x1508=function(){return _0x311eac;};return a25_0x1508();}(function(_0x1e10b3,_0x200708){const _0x22a9d1=a25_0x39ab,_0x20ac88=_0x1e10b3();while(!![]){try{const _0x101d82=-parseInt(_0x22a9d1(0x18f))/0x1+parseInt(_0x22a9d1(0x18d))/0x2+-parseInt(_0x22a9d1(0x183))/0x3*(parseInt(_0x22a9d1(0x188))/0x4)+parseInt(_0x22a9d1(0x19a))/0x5+parseInt(_0x22a9d1(0x199))/0x6*(parseInt(_0x22a9d1(0x198))/0x7)+-parseInt(_0x22a9d1(0x18a))/0x8+-parseInt(_0x22a9d1(0x195))/0x9*(parseInt(_0x22a9d1(0x193))/0xa);if(_0x101d82===_0x200708)break;else _0x20ac88['push'](_0x20ac88['shift']());}catch(_0x127fff){_0x20ac88['push'](_0x20ac88['shift']());}}}(a25_0x1508,0x21c11));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x1459d5(0x192),'command':a25_0x1459d5(0x187),'description':'Login\x20via\x20browser','risk':a25_0x1459d5(0x186),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'yes','type':a25_0x1459d5(0x185),'description':a25_0x1459d5(0x190),'default':![]}],async 'execute'(_0x1374ea){const _0x245b6b=a25_0x1459d5,{runAuthServer:_0x54caa9}=await import(_0x245b6b(0x19b));return await _0x54caa9({'autoYes':_0x1374ea[_0x245b6b(0x189)](_0x245b6b(0x18b)),'nonInteractive':_0x1374ea[_0x245b6b(0x194)]}),{'ok':!![]};}},{'service':a25_0x1459d5(0x192),'command':a25_0x1459d5(0x197),'description':a25_0x1459d5(0x191),'risk':a25_0x1459d5(0x18c),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0xbd6fa){const _0x49ec23=a25_0x1459d5;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x49ec23(0x196)](_0x49ec23(0x18e))):console['log'](_0x49ec23(0x184)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a26_0x252dd9=a26_0x20dc;(function(_0x517abb,_0x13570d){const _0x4c84ad=a26_0x20dc,_0x9feb02=_0x517abb();while(!![]){try{const _0x1f3349=-parseInt(_0x4c84ad(0x165))/0x1+-parseInt(_0x4c84ad(0x18b))/0x2+-parseInt(_0x4c84ad(0x1b9))/0x3+-parseInt(_0x4c84ad(0x188))/0x4+parseInt(_0x4c84ad(0x184))/0x5+-parseInt(_0x4c84ad(0x1aa))/0x6*(parseInt(_0x4c84ad(0x168))/0x7)+parseInt(_0x4c84ad(0x1b3))/0x8*(parseInt(_0x4c84ad(0x177))/0x9);if(_0x1f3349===_0x13570d)break;else _0x9feb02['push'](_0x9feb02['shift']());}catch(_0x40777e){_0x9feb02['push'](_0x9feb02['shift']());}}}(a26_0xbe9f,0x5c0f1));function a26_0x20dc(_0x1c2569,_0x38b1f2){_0x1c2569=_0x1c2569-0x165;const _0xbe9f86=a26_0xbe9f();let _0x20dc80=_0xbe9f86[_0x1c2569];return _0x20dc80;}import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0x252dd9(0x1ab),'command':a26_0x252dd9(0x19f),'description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':a26_0x252dd9(0x1af),'flags':[{'name':'type','type':a26_0x252dd9(0x1ae),'required':!![],'enum':['COMMON','ENDPOINT',a26_0x252dd9(0x191)],'description':a26_0x252dd9(0x186)},{'name':a26_0x252dd9(0x1a7),'type':a26_0x252dd9(0x1ae),'required':!![],'description':a26_0x252dd9(0x17d)},{'name':a26_0x252dd9(0x196),'type':a26_0x252dd9(0x1ae),'description':a26_0x252dd9(0x185)},{'name':a26_0x252dd9(0x189),'type':a26_0x252dd9(0x1ae),'description':a26_0x252dd9(0x16b)},{'name':a26_0x252dd9(0x1b5),'type':'string','description':a26_0x252dd9(0x180)},{'name':a26_0x252dd9(0x179),'type':a26_0x252dd9(0x1ae),'description':a26_0x252dd9(0x172)},{'name':a26_0x252dd9(0x16e),'type':'string','description':a26_0x252dd9(0x18a),'enum':[a26_0x252dd9(0x1b4),a26_0x252dd9(0x1a2)]}],async 'validate'(_0x2ee0a4){const _0x30e180=a26_0x252dd9,_0x12a3c7=_0x2ee0a4[_0x30e180(0x171)]('name');if(!isValidBffFunctionName(_0x12a3c7))throw CliErrors[_0x30e180(0x17a)]('Invalid\x20function\x20name\x20\x22'+_0x12a3c7+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0x28fce3){const _0xb95658=a26_0x252dd9,_0x6cbbcc=loadBffProjectConfig(_0x28fce3[_0xb95658(0x1a5)]),_0x25e99e=_0x28fce3[_0xb95658(0x171)](_0xb95658(0x198)),_0x2e3a8e=_0x28fce3['str']('name'),_0x32ea18=_0x28fce3[_0xb95658(0x171)]('description')||undefined,_0x8f3215=_0x25e99e===_0xb95658(0x191)?await resolveHookOptions(_0x6cbbcc,_0x28fce3):undefined,_0x3b8f04=buildFilePath(_0x6cbbcc,_0x25e99e,_0x2e3a8e,_0x8f3215);if(await fileExists(_0x3b8f04))throw CliErrors[_0xb95658(0x17a)](_0xb95658(0x17e)+_0x3b8f04);await mkdir(dirname(_0x3b8f04),{'recursive':!![]});const _0x5e1a24=generateTemplate(_0x25e99e,_0x2e3a8e,_0x28fce3[_0xb95658(0x1a5)],_0x32ea18,_0x8f3215);await writeFile(_0x3b8f04,_0x5e1a24,'utf8');const _0x5c9f62={'type':_0x25e99e,'name':_0x2e3a8e,'path':_0x3b8f04};if(_0x32ea18)_0x5c9f62[_0xb95658(0x196)]=_0x32ea18;if(_0x8f3215){if(_0x8f3215[_0xb95658(0x189)])_0x5c9f62[_0xb95658(0x189)]=_0x8f3215[_0xb95658(0x189)];_0x5c9f62[_0xb95658(0x1b0)]=_0x8f3215[_0xb95658(0x1b0)],_0x5c9f62[_0xb95658(0x18c)]=_0x8f3215[_0xb95658(0x18c)],_0x5c9f62[_0xb95658(0x178)]=_0x8f3215[_0xb95658(0x178)];}return{'ok':!![],'data':_0x5c9f62,'message':_0xb95658(0x19b)+_0x25e99e+'\x20function:\x20'+_0x2e3a8e};}};async function resolveHookOptions(_0x4417c0,_0x19f3a9){const _0x29a44c=a26_0x252dd9,_0x5c9d16=loadAliasMap(_0x19f3a9[_0x29a44c(0x1ac)],undefined,resolveApiFilePath(_0x19f3a9[_0x29a44c(0x1ac)],_0x19f3a9[_0x29a44c(0x1a5)])),_0x344f35=_0x5c9d16[_0x29a44c(0x173)]>0x0;let _0x2b22d8,_0x31dc4b,_0x545730;const _0x78e9f4=_0x19f3a9[_0x29a44c(0x171)](_0x29a44c(0x189)),_0x539db9=_0x19f3a9['str'](_0x29a44c(0x1b5));if(_0x78e9f4){const _0x374e77=resolveAlias(_0x19f3a9[_0x29a44c(0x1ac)],_0x78e9f4,undefined,resolveApiFilePath(_0x19f3a9[_0x29a44c(0x1ac)],_0x19f3a9['appCode']));if(!_0x374e77){const _0x33315d=_0x344f35?'Available\x20aliases:\x20'+_0x5c9d16[_0x29a44c(0x190)](_0x1626de=>_0x1626de[_0x29a44c(0x189)])[_0x29a44c(0x174)](',\x20'):_0x29a44c(0x193)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x29a44c(0x17a)](_0x29a44c(0x16a)+_0x78e9f4+'\x22\x20not\x20found.\x20'+_0x33315d);}_0x2b22d8=_0x78e9f4,_0x31dc4b=_0x374e77;}else{if(_0x539db9){_0x31dc4b=_0x539db9;const _0x196bb0=_0x5c9d16[_0x29a44c(0x1b6)](_0x10bc93=>_0x10bc93[_0x29a44c(0x1b0)]===_0x539db9);_0x2b22d8=_0x196bb0?.[_0x29a44c(0x189)];}else{if(_0x19f3a9[_0x29a44c(0x195)])throw CliErrors[_0x29a44c(0x17a)](_0x29a44c(0x175));else{if(_0x344f35){const _0x25b532=_0x5c9d16['map'](_0x164a65=>_0x164a65['alias']+'\x20('+_0x164a65[_0x29a44c(0x1b7)]+')'),_0x2d06b2=await promptSelect('Select\x20dataset:',_0x25b532),_0x30e6f5=_0x5c9d16[_0x2d06b2];if(!_0x30e6f5)throw CliErrors[_0x29a44c(0x17a)](_0x29a44c(0x1b8));_0x2b22d8=_0x30e6f5[_0x29a44c(0x189)],_0x31dc4b=_0x30e6f5['datasetCode'];}else{const _0xc4eba=await listDatasets(_0x19f3a9[_0x29a44c(0x1a5)]);if(_0xc4eba[_0x29a44c(0x173)]===0x0)throw CliErrors[_0x29a44c(0x17a)](_0x29a44c(0x1bb));const _0x1b3200=_0xc4eba[_0x29a44c(0x190)](_0x1b1e64=>_0x1b1e64[_0x29a44c(0x1a7)]+'\x20['+(_0x1b1e64[_0x29a44c(0x183)]??'UNKNOWN')+_0x29a44c(0x187)+_0x1b1e64['code']+')'),_0x20b570=await promptSelect(_0x29a44c(0x192),_0x1b3200),_0x32bb84=_0xc4eba[_0x20b570];if(!_0x32bb84)throw CliErrors[_0x29a44c(0x17a)](_0x29a44c(0x1b8));_0x31dc4b=_0x32bb84[_0x29a44c(0x18e)],_0x2b22d8=undefined;}}}}const _0x230e43=await listDatasets(_0x19f3a9[_0x29a44c(0x1a5)]),_0x38bcd7=_0x230e43[_0x29a44c(0x1b6)](_0x4cbb68=>_0x4cbb68[_0x29a44c(0x18e)]===_0x31dc4b);if(!_0x38bcd7)throw CliErrors[_0x29a44c(0x17a)]('Dataset\x20not\x20found\x20for\x20code\x20\x22'+_0x31dc4b+'\x22.\x20'+(_0x2b22d8?'The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'+CLI_BIN_NAME+_0x29a44c(0x18f):''));_0x545730=_0x38bcd7['id'];const _0x215217=_0x2b22d8??_0x31dc4b,_0x778572=await listBffDatasetOperations(_0x19f3a9[_0x29a44c(0x1a5)],_0x545730),_0x3a98d3=_0x778572?Object[_0x29a44c(0x182)](_0x778572):[];if(_0x3a98d3[_0x29a44c(0x173)]===0x0)throw CliErrors[_0x29a44c(0x17a)](_0x29a44c(0x16f)+_0x215217+'.');let _0x171b09;const _0x554969=_0x19f3a9[_0x29a44c(0x171)]('operation-type');if(_0x554969){if(!_0x3a98d3['includes'](_0x554969))throw CliErrors[_0x29a44c(0x17a)]('Operation\x20type\x20\x22'+_0x554969+_0x29a44c(0x1b2)+_0x215217+'.\x20'+(_0x29a44c(0x170)+_0x3a98d3['join'](',\x20')));_0x171b09=_0x554969;}else{if(_0x19f3a9[_0x29a44c(0x195)])throw CliErrors['validation'](_0x29a44c(0x199));const _0x4c2a38=await promptSelect(_0x29a44c(0x166),_0x3a98d3);_0x171b09=_0x3a98d3[_0x4c2a38]??_0x3a98d3[0x0];}let _0x160927=normalizeHookFunctionNode(_0x19f3a9[_0x29a44c(0x171)]('function-node'));if(!_0x160927){if(_0x19f3a9[_0x29a44c(0x171)]('function-node'))throw CliErrors['validation'](_0x29a44c(0x1ad));if(_0x19f3a9[_0x29a44c(0x195)])throw CliErrors['validation'](_0x29a44c(0x1a8));const _0x56ae7b=await promptSelect(_0x29a44c(0x1b1),[_0x29a44c(0x1b4),'after']);_0x160927=[_0x29a44c(0x1b4),_0x29a44c(0x1a2)][_0x56ae7b]??_0x29a44c(0x1b4);}return{'alias':_0x2b22d8,'datasetCode':_0x31dc4b,'datasetId':_0x545730,'operationType':_0x171b09,'functionNode':_0x160927};}async function promptSelect(_0x58e24e,_0x39ec13){const _0x1b7f83=a26_0x252dd9;if(_0x39ec13[_0x1b7f83(0x173)]===0x1)return 0x0;for(const [_0x5d62d1,_0x1449e3]of _0x39ec13[_0x1b7f83(0x19c)]()){process['stderr'][_0x1b7f83(0x1af)]('\x20\x20'+(_0x5d62d1+0x1)+'.\x20'+_0x1449e3+'\x0a');}const _0x29ec90=createInterface({'input':process['stdin'],'output':process[_0x1b7f83(0x16d)]});while(!![]){const _0x5c8be7=await new Promise(_0x16472b=>{const _0x4582e5=_0x1b7f83;_0x29ec90[_0x4582e5(0x194)](_0x58e24e+'\x20',_0x16472b);}),_0x3c2d2c=Number[_0x1b7f83(0x1a0)](_0x5c8be7['trim'](),0xa);if(Number[_0x1b7f83(0x1ba)](_0x3c2d2c)&&_0x3c2d2c>=0x1&&_0x3c2d2c<=_0x39ec13[_0x1b7f83(0x173)])return _0x29ec90[_0x1b7f83(0x1a9)](),_0x3c2d2c-0x1;process['stderr']['write'](_0x1b7f83(0x167)+_0x39ec13[_0x1b7f83(0x173)]+'.\x0a');}}function buildFilePath(_0x3c3fc6,_0x5e2097,_0x5139f4,_0x257f8a){const _0x4bc43d=a26_0x252dd9;if(_0x5e2097==='HOOK'){if(!_0x257f8a)throw CliErrors[_0x4bc43d(0x17a)](_0x4bc43d(0x18d));const _0x54ef43=_0x257f8a['alias']??_0x257f8a['datasetCode'];return join(_0x3c3fc6[_0x4bc43d(0x19a)],_0x4bc43d(0x191),_0x54ef43,_0x257f8a[_0x4bc43d(0x18c)],_0x257f8a[_0x4bc43d(0x178)],_0x5139f4+_0x4bc43d(0x17c));}return join(_0x3c3fc6[_0x4bc43d(0x19a)],_0x5e2097,_0x5139f4+_0x4bc43d(0x17c));}export function generateTemplate(_0x52c916,_0x192a9a,_0x2349e5,_0x825e99,_0xc3345b){const _0x1ec7fe=a26_0x252dd9,_0x85a7b7=_0x825e99?.[_0x1ec7fe(0x19d)]()||_0x1ec7fe(0x1a1);if(_0x52c916===_0x1ec7fe(0x17b))return _0x1ec7fe(0x1bc)+_0x85a7b7+_0x1ec7fe(0x1a6)+_0x192a9a+_0x1ec7fe(0x197)+_0x192a9a+'.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'+_0x192a9a+_0x1ec7fe(0x181);if(_0x52c916===_0x1ec7fe(0x1a3))return'/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x85a7b7+_0x1ec7fe(0x169)+_0x2349e5+'/'+_0x192a9a+_0x1ec7fe(0x176)+_0x192a9a+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(!_0xc3345b)throw CliErrors[_0x1ec7fe(0x17a)](_0x1ec7fe(0x19e));return'/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x85a7b7+_0x1ec7fe(0x17f)+_0x2349e5+'/'+_0xc3345b[_0x1ec7fe(0x1b0)]+'/'+_0xc3345b[_0x1ec7fe(0x18c)]+_0x1ec7fe(0x16c)+_0xc3345b[_0x1ec7fe(0x178)]+_0x1ec7fe(0x1a4)+_0x192a9a+_0x1ec7fe(0x181);}function a26_0xbe9f(){const _0x2f8ba7=['--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','\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','9QEUMgN','functionNode','operation-type','validation','COMMON','.js','Function\x20name\x20(valid\x20JS\x20identifier)','File\x20already\x20exists:\x20','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','keys','source','2496525wXzVvq','Script\x20description','Script\x20type',']\x20(','2160328uYOabm','alias','Trigger\x20node\x20(HOOK\x20only)','123592xZCMMY','operationType','HOOK\x20requires\x20alias/operation/node\x20options.','code','\x20api\x20pull`\x20to\x20refresh.','map','HOOK','Select\x20dataset:','No\x20api.ts\x20found.\x20Run\x20`','question','nonInteractive','description','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','type','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','scriptsRootDir','Created\x20','entries','trim','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','create','parseInt','TODO:\x20add\x20script\x20description','after','ENDPOINT','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','appCode','\x0a\x20*\x20[脚本名称]\x20','name','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','close','1818YShyAz','bff','apiDir','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','string','write','datasetCode','Select\x20trigger\x20node:','\x22\x20not\x20found\x20for\x20dataset\x20','8746280lZlDod','before','datasetcode','find','tableName','Invalid\x20dataset\x20selection.','834729ezXEsd','isInteger','No\x20datasets\x20found\x20for\x20this\x20app.','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','86633IkxCmj','Select\x20operation\x20type:','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','5747VrOcNB','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','Alias\x20\x22','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','\x0a\x20*\x20[触发节点]\x20','stderr','function-node','No\x20operation\x20types\x20found\x20for\x20dataset\x20','Available:\x20','str','Operation\x20type\x20(HOOK\x20only)','length','join'];a26_0xbe9f=function(){return _0x2f8ba7;};return a26_0xbe9f();}
1
+ const a26_0x23e894=a26_0x4e14;(function(_0x30fb13,_0x38c632){const _0x414e8d=a26_0x4e14,_0x15c9ca=_0x30fb13();while(!![]){try{const _0x46005b=-parseInt(_0x414e8d(0xf8))/0x1*(-parseInt(_0x414e8d(0xc6))/0x2)+parseInt(_0x414e8d(0xd4))/0x3*(-parseInt(_0x414e8d(0xc2))/0x4)+-parseInt(_0x414e8d(0xd6))/0x5+parseInt(_0x414e8d(0xbb))/0x6+parseInt(_0x414e8d(0xef))/0x7*(-parseInt(_0x414e8d(0xd3))/0x8)+-parseInt(_0x414e8d(0x107))/0x9+-parseInt(_0x414e8d(0xdd))/0xa*(-parseInt(_0x414e8d(0x104))/0xb);if(_0x46005b===_0x38c632)break;else _0x15c9ca['push'](_0x15c9ca['shift']());}catch(_0x1d0fbf){_0x15c9ca['push'](_0x15c9ca['shift']());}}}(a26_0x3e03,0xbc4ce));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';function a26_0x4e14(_0x21ee79,_0x3fbd2c){_0x21ee79=_0x21ee79-0xba;const _0x3e03f0=a26_0x3e03();let _0x4e1445=_0x3e03f0[_0x21ee79];return _0x4e1445;}import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0x23e894(0xca),'command':a26_0x23e894(0x10d),'description':a26_0x23e894(0xff),'risk':a26_0x23e894(0xe0),'flags':[{'name':'type','type':'string','required':!![],'enum':[a26_0x23e894(0xed),'ENDPOINT',a26_0x23e894(0xdf)],'description':'Script\x20type'},{'name':a26_0x23e894(0xc7),'type':a26_0x23e894(0xbc),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':'description','type':'string','description':a26_0x23e894(0xcd)},{'name':'alias','type':a26_0x23e894(0xbc),'description':a26_0x23e894(0xe4)},{'name':a26_0x23e894(0xf0),'type':a26_0x23e894(0xbc),'description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':a26_0x23e894(0xc0),'type':a26_0x23e894(0xbc),'description':a26_0x23e894(0xfa)},{'name':a26_0x23e894(0xc3),'type':'string','description':a26_0x23e894(0xcf),'enum':[a26_0x23e894(0xe6),a26_0x23e894(0x100)]}],async 'validate'(_0x3d3c4b){const _0x3631ff=a26_0x23e894,_0x13987b=_0x3d3c4b[_0x3631ff(0x103)](_0x3631ff(0xc7));if(!isValidBffFunctionName(_0x13987b))throw CliErrors[_0x3631ff(0xde)]('Invalid\x20function\x20name\x20\x22'+_0x13987b+_0x3631ff(0xeb));},async 'execute'(_0xacde2){const _0x262e89=a26_0x23e894,_0x1f388=loadBffProjectConfig(_0xacde2[_0x262e89(0xc9)]),_0x2c38f2=_0xacde2[_0x262e89(0x103)](_0x262e89(0xbd)),_0x353a5b=_0xacde2[_0x262e89(0x103)]('name'),_0x4666f4=_0xacde2[_0x262e89(0x103)](_0x262e89(0xbe))||undefined,_0x3a9d07=_0x2c38f2==='HOOK'?await resolveHookOptions(_0x1f388,_0xacde2):undefined,_0xe38f3=buildFilePath(_0x1f388,_0x2c38f2,_0x353a5b,_0x3a9d07);if(await fileExists(_0xe38f3))throw CliErrors[_0x262e89(0xde)](_0x262e89(0xbf)+_0xe38f3);await mkdir(dirname(_0xe38f3),{'recursive':!![]});const _0x5d6746=generateTemplate(_0x2c38f2,_0x353a5b,_0xacde2[_0x262e89(0xc9)],_0x4666f4,_0x3a9d07);await writeFile(_0xe38f3,_0x5d6746,_0x262e89(0xba));const _0x3b9ccc={'type':_0x2c38f2,'name':_0x353a5b,'path':_0xe38f3};if(_0x4666f4)_0x3b9ccc[_0x262e89(0xbe)]=_0x4666f4;if(_0x3a9d07){if(_0x3a9d07['alias'])_0x3b9ccc[_0x262e89(0x10c)]=_0x3a9d07['alias'];_0x3b9ccc[_0x262e89(0xfc)]=_0x3a9d07[_0x262e89(0xfc)],_0x3b9ccc[_0x262e89(0xfd)]=_0x3a9d07[_0x262e89(0xfd)],_0x3b9ccc[_0x262e89(0xe5)]=_0x3a9d07[_0x262e89(0xe5)];}return{'ok':!![],'data':_0x3b9ccc,'message':_0x262e89(0xd1)+_0x2c38f2+_0x262e89(0x10b)+_0x353a5b};}};async function resolveHookOptions(_0xde3924,_0x5b699a){const _0xdbbbb3=a26_0x23e894,_0x3ff0c3=loadAliasMap(_0x5b699a[_0xdbbbb3(0xd5)],undefined,resolveApiFilePath(_0x5b699a[_0xdbbbb3(0xd5)],_0x5b699a[_0xdbbbb3(0xc9)])),_0x2c903b=_0x3ff0c3[_0xdbbbb3(0xe1)]>0x0;let _0x12487d,_0x5da372,_0x4d854d;const _0x4dc68a=_0x5b699a[_0xdbbbb3(0x103)](_0xdbbbb3(0x10c)),_0x3ae143=_0x5b699a[_0xdbbbb3(0x103)](_0xdbbbb3(0xf0));if(_0x4dc68a){const _0x515320=resolveAlias(_0x5b699a[_0xdbbbb3(0xd5)],_0x4dc68a,undefined,resolveApiFilePath(_0x5b699a[_0xdbbbb3(0xd5)],_0x5b699a[_0xdbbbb3(0xc9)]));if(!_0x515320){const _0x1ea704=_0x2c903b?_0xdbbbb3(0xda)+_0x3ff0c3['map'](_0x3285e5=>_0x3285e5[_0xdbbbb3(0x10c)])[_0xdbbbb3(0x109)](',\x20'):_0xdbbbb3(0xcc)+CLI_BIN_NAME+_0xdbbbb3(0xd0);throw CliErrors[_0xdbbbb3(0xde)]('Alias\x20\x22'+_0x4dc68a+'\x22\x20not\x20found.\x20'+_0x1ea704);}_0x12487d=_0x4dc68a,_0x5da372=_0x515320;}else{if(_0x3ae143){_0x5da372=_0x3ae143;const _0x5939ad=_0x3ff0c3[_0xdbbbb3(0xc4)](_0x4425d1=>_0x4425d1['datasetCode']===_0x3ae143);_0x12487d=_0x5939ad?.[_0xdbbbb3(0x10c)];}else{if(_0x5b699a[_0xdbbbb3(0xce)])throw CliErrors[_0xdbbbb3(0xde)](_0xdbbbb3(0x101));else{if(_0x2c903b){const _0x1bad13=_0x3ff0c3[_0xdbbbb3(0xc5)](_0x1fb32f=>_0x1fb32f[_0xdbbbb3(0x10c)]+'\x20('+_0x1fb32f[_0xdbbbb3(0xe9)]+')'),_0x1c1ad9=await promptSelect('Select\x20dataset:',_0x1bad13),_0x26ffbb=_0x3ff0c3[_0x1c1ad9];if(!_0x26ffbb)throw CliErrors[_0xdbbbb3(0xde)](_0xdbbbb3(0xf2));_0x12487d=_0x26ffbb[_0xdbbbb3(0x10c)],_0x5da372=_0x26ffbb['datasetCode'];}else{const _0x57614e=await listDatasets(_0x5b699a[_0xdbbbb3(0xc9)]);if(_0x57614e[_0xdbbbb3(0xe1)]===0x0)throw CliErrors[_0xdbbbb3(0xde)]('No\x20datasets\x20found\x20for\x20this\x20app.');const _0x17773c=_0x57614e[_0xdbbbb3(0xc5)](_0x4995f9=>_0x4995f9[_0xdbbbb3(0xc7)]+'\x20['+(_0x4995f9['source']??_0xdbbbb3(0xf6))+_0xdbbbb3(0xe8)+_0x4995f9['code']+')'),_0x27feee=await promptSelect('Select\x20dataset:',_0x17773c),_0x28363c=_0x57614e[_0x27feee];if(!_0x28363c)throw CliErrors['validation']('Invalid\x20dataset\x20selection.');_0x5da372=_0x28363c['code'],_0x12487d=undefined;}}}}const _0x178fca=await listDatasets(_0x5b699a[_0xdbbbb3(0xc9)]),_0x1a9bc0=_0x178fca[_0xdbbbb3(0xc4)](_0xb5578f=>_0xb5578f[_0xdbbbb3(0xfe)]===_0x5da372);if(!_0x1a9bc0)throw CliErrors[_0xdbbbb3(0xde)](_0xdbbbb3(0xe7)+_0x5da372+_0xdbbbb3(0xfb)+(_0x12487d?'The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'+CLI_BIN_NAME+_0xdbbbb3(0xc8):''));_0x4d854d=_0x1a9bc0['id'];const _0x4c453c=_0x12487d??_0x5da372,_0xe01c35=await listBffDatasetOperations(_0x5b699a[_0xdbbbb3(0xc9)],_0x4d854d),_0x4afe6a=_0xe01c35?Object['keys'](_0xe01c35):[];if(_0x4afe6a[_0xdbbbb3(0xe1)]===0x0)throw CliErrors[_0xdbbbb3(0xde)](_0xdbbbb3(0xdc)+_0x4c453c+'.');let _0x142d92;const _0x1200b5=_0x5b699a[_0xdbbbb3(0x103)](_0xdbbbb3(0xc0));if(_0x1200b5){if(!_0x4afe6a['includes'](_0x1200b5))throw CliErrors[_0xdbbbb3(0xde)](_0xdbbbb3(0xf5)+_0x1200b5+_0xdbbbb3(0xc1)+_0x4c453c+'.\x20'+(_0xdbbbb3(0xf9)+_0x4afe6a[_0xdbbbb3(0x109)](',\x20')));_0x142d92=_0x1200b5;}else{if(_0x5b699a['nonInteractive'])throw CliErrors[_0xdbbbb3(0xde)](_0xdbbbb3(0xf7));const _0x5bad1a=await promptSelect(_0xdbbbb3(0x108),_0x4afe6a);_0x142d92=_0x4afe6a[_0x5bad1a]??_0x4afe6a[0x0];}let _0x1f5da7=normalizeHookFunctionNode(_0x5b699a[_0xdbbbb3(0x103)](_0xdbbbb3(0xc3)));if(!_0x1f5da7){if(_0x5b699a[_0xdbbbb3(0x103)]('function-node'))throw CliErrors['validation']('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x5b699a[_0xdbbbb3(0xce)])throw CliErrors[_0xdbbbb3(0xde)]('--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x404ecb=await promptSelect(_0xdbbbb3(0xee),['before',_0xdbbbb3(0x100)]);_0x1f5da7=['before',_0xdbbbb3(0x100)][_0x404ecb]??_0xdbbbb3(0xe6);}return{'alias':_0x12487d,'datasetCode':_0x5da372,'datasetId':_0x4d854d,'operationType':_0x142d92,'functionNode':_0x1f5da7};}async function promptSelect(_0x47280b,_0x3ca105){const _0x386308=a26_0x23e894;if(_0x3ca105[_0x386308(0xe1)]===0x1)return 0x0;for(const [_0xd030b0,_0x1c2e96]of _0x3ca105['entries']()){process[_0x386308(0x106)][_0x386308(0xe0)]('\x20\x20'+(_0xd030b0+0x1)+'.\x20'+_0x1c2e96+'\x0a');}const _0x481b08=createInterface({'input':process[_0x386308(0xec)],'output':process[_0x386308(0x106)]});while(!![]){const _0x21dd58=await new Promise(_0x46c8b1=>{_0x481b08['question'](_0x47280b+'\x20',_0x46c8b1);}),_0x311c00=Number['parseInt'](_0x21dd58[_0x386308(0xea)](),0xa);if(Number['isInteger'](_0x311c00)&&_0x311c00>=0x1&&_0x311c00<=_0x3ca105[_0x386308(0xe1)])return _0x481b08[_0x386308(0xd2)](),_0x311c00-0x1;process['stderr'][_0x386308(0xe0)](_0x386308(0x10e)+_0x3ca105[_0x386308(0xe1)]+'.\x0a');}}function buildFilePath(_0x46055c,_0x262f9c,_0xa908,_0xfc80de){const _0x3465ee=a26_0x23e894;if(_0x262f9c===_0x3465ee(0xdf)){if(!_0xfc80de)throw CliErrors[_0x3465ee(0xde)](_0x3465ee(0xf3));const _0x339a65=_0xfc80de[_0x3465ee(0x10c)]??_0xfc80de[_0x3465ee(0xfc)];return join(_0x46055c[_0x3465ee(0x102)],_0x3465ee(0xdf),_0x339a65,_0xfc80de['operationType'],_0xfc80de[_0x3465ee(0xe5)],_0xa908+_0x3465ee(0xdb));}return join(_0x46055c[_0x3465ee(0x102)],_0x262f9c,_0xa908+'.js');}export function generateTemplate(_0x4e2a28,_0x2c6996,_0x355393,_0x49353e,_0x49cfaa){const _0x17dcac=a26_0x23e894,_0x585c2d=_0x49353e?.[_0x17dcac(0xea)]()||_0x17dcac(0xf4);if(_0x4e2a28===_0x17dcac(0xed))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x585c2d+_0x17dcac(0x10a)+_0x2c6996+_0x17dcac(0x105)+_0x2c6996+_0x17dcac(0xd9)+_0x2c6996+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x4e2a28==='ENDPOINT')return _0x17dcac(0xd7)+_0x585c2d+_0x17dcac(0xf1)+_0x355393+'/'+_0x2c6996+'\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'+_0x2c6996+_0x17dcac(0xcb);if(!_0x49cfaa)throw CliErrors[_0x17dcac(0xde)](_0x17dcac(0xe2));return'/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x585c2d+_0x17dcac(0xd8)+_0x355393+'/'+_0x49cfaa[_0x17dcac(0xfc)]+'/'+_0x49cfaa[_0x17dcac(0xfd)]+'\x0a\x20*\x20[触发节点]\x20'+_0x49cfaa[_0x17dcac(0xe5)]+_0x17dcac(0xe3)+_0x2c6996+_0x17dcac(0xcb);}function a26_0x3e03(){const _0x291fe4=['Trigger\x20node\x20(HOOK\x20only)','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','Created\x20','close','3352ILvphV','3GSKKRd','apiDir','7548950Uxenej','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','.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','Available\x20aliases:\x20','.js','No\x20operation\x20types\x20found\x20for\x20dataset\x20','18110TlvEbj','validation','HOOK','write','length','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','\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','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','functionNode','before','Dataset\x20not\x20found\x20for\x20code\x20\x22',']\x20(','tableName','trim','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','stdin','COMMON','Select\x20trigger\x20node:','14483epesoh','datasetcode','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','Invalid\x20dataset\x20selection.','HOOK\x20requires\x20alias/operation/node\x20options.','TODO:\x20add\x20script\x20description','Operation\x20type\x20\x22','UNKNOWN','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','837071TbaAxm','Available:\x20','Operation\x20type\x20(HOOK\x20only)','\x22.\x20','datasetCode','operationType','code','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','after','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','scriptsRootDir','str','20999GfxfKJ','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','stderr','1280898EroMOA','Select\x20operation\x20type:','join','\x0a\x20*\x20[脚本名称]\x20','\x20function:\x20','alias','create','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','utf8','783510pNGqoM','string','type','description','File\x20already\x20exists:\x20','operation-type','\x22\x20not\x20found\x20for\x20dataset\x20','4538216aCBfkS','function-node','find','map','2ZdpaOF','name','\x20api\x20pull`\x20to\x20refresh.','appCode','bff','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','No\x20api.ts\x20found.\x20Run\x20`','Script\x20description','nonInteractive'];a26_0x3e03=function(){return _0x291fe4;};return a26_0x3e03();}
@@ -1 +1 @@
1
- const a27_0x4f954c=a27_0x3054;(function(_0x17b790,_0x28a62c){const _0x529c1e=a27_0x3054,_0x3a78f9=_0x17b790();while(!![]){try{const _0x1dde5c=parseInt(_0x529c1e(0x1d2))/0x1+parseInt(_0x529c1e(0x1f9))/0x2+-parseInt(_0x529c1e(0x1e8))/0x3*(-parseInt(_0x529c1e(0x1e0))/0x4)+-parseInt(_0x529c1e(0x1ce))/0x5*(parseInt(_0x529c1e(0x1d4))/0x6)+-parseInt(_0x529c1e(0x1e7))/0x7*(-parseInt(_0x529c1e(0x1f0))/0x8)+-parseInt(_0x529c1e(0x1cd))/0x9*(parseInt(_0x529c1e(0x1e3))/0xa)+-parseInt(_0x529c1e(0x1d0))/0xb;if(_0x1dde5c===_0x28a62c)break;else _0x3a78f9['push'](_0x3a78f9['shift']());}catch(_0x3074da){_0x3a78f9['push'](_0x3a78f9['shift']());}}}(a27_0x2ab1,0x9ac83));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';function a27_0x2ab1(){const _0x41a448=['length','\x22\x20not\x20found\x20after\x20ensureLockScope.','BFF\x20lock\x20file\x20not\x20found.','Would\x20delete\x20','startsWith','stringify','879146czUbbk','find','scriptsRootDir','6587037jBsYaU','4021855MrxBEW','lastSync','1686091YktaFq','Local\x20delete\x20not\x20settled\x20for\x20','688451RjOysh','Deleted\x20','6JvyiEU','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','lockFilePath','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','Multiple\x20functions\x20match\x20\x22','scriptsRoot','trashDir','appCode','functions','remoteId','apps','keys','28nYZiSE','str','toISOString','10kmbmma','validation','Function\x20not\x20found:\x20','string','22127HKBwmK','277995xQUsQr','join','target','No\x20lock\x20entry\x20found\x20for\x20\x22','includes','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','split','1384MpWkyg','trashedTo','projectRoot'];a27_0x2ab1=function(){return _0x41a448;};return a27_0x2ab1();}import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':'bff','command':'delete','description':a27_0x4f954c(0x1ee),'risk':'high-risk-write','flags':[{'name':a27_0x4f954c(0x1ea),'type':a27_0x4f954c(0x1e6),'required':!![],'description':a27_0x4f954c(0x1d5)}],async 'validate'(_0x58e93c){const _0x551eaa=a27_0x4f954c,_0x5a4484=loadBffProjectConfig(_0x58e93c[_0x551eaa(0x1db)]),_0x5230cb=await readBffLockFile(_0x5a4484[_0x551eaa(0x1d6)]);if(!_0x5230cb)throw CliErrors[_0x551eaa(0x1e4)]('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0xc15f49){const _0x48f17d=a27_0x4f954c,_0x15d374=loadBffProjectConfig(_0xc15f49[_0x48f17d(0x1db)]),_0x1d9cfd=await readBffLockFile(_0x15d374[_0x48f17d(0x1d6)]);if(!_0x1d9cfd)throw CliErrors[_0x48f17d(0x1e4)](_0x48f17d(0x1f5));const {appLock:_0x2bedf1}=ensureLockScope(_0x1d9cfd,_0xc15f49['appCode'],_0x15d374[_0x48f17d(0x1d9)],'delete'),_0x55c0e1=_0xc15f49[_0x48f17d(0x1e1)](_0x48f17d(0x1ea)),_0x60b424=Object['keys'](_0x2bedf1[_0x48f17d(0x1dc)]),_0x34e236=resolveDeleteTarget(_0x55c0e1,_0x60b424),_0x74e6fc=_0x2bedf1['functions'][_0x34e236];if(!_0x74e6fc)throw CliErrors[_0x48f17d(0x1e4)](_0x48f17d(0x1eb)+_0x34e236+'\x22.');const _0x1b1bb2=resolveLocalFilePathFromLockKey(_0x15d374,_0x34e236),_0x2d5cbf=relative(_0x15d374[_0x48f17d(0x1f2)],_0x1b1bb2),_0x141f1a=join(_0x15d374[_0x48f17d(0x1da)],'<timestamp>',_0x2d5cbf);return{'method':'POST','url':'/api/management/library/scripts/delete','body':{'appCode':_0xc15f49[_0x48f17d(0x1db)],'target':_0x34e236,'remoteId':_0x74e6fc[_0x48f17d(0x1dd)],'localFilePath':_0x1b1bb2,'trashedPath':_0x141f1a},'description':_0x48f17d(0x1f6)+_0x34e236+_0x48f17d(0x1ed)};},async 'execute'(_0x18d46d){const _0x346063=a27_0x4f954c,_0x4fbe86=loadBffProjectConfig(_0x18d46d[_0x346063(0x1db)]),_0x84043f=await readBffLockFile(_0x4fbe86[_0x346063(0x1d6)]);if(!_0x84043f)throw CliErrors['validation'](_0x346063(0x1f5));const {lockData:_0x1be578,appLock:_0x28b8fe}=ensureLockScope(_0x84043f,_0x18d46d[_0x346063(0x1db)],_0x4fbe86[_0x346063(0x1d9)],'delete'),_0x59fd6e=JSON['parse'](JSON[_0x346063(0x1f8)](_0x1be578)),_0x493d75=_0x59fd6e['apps'][_0x18d46d[_0x346063(0x1db)]];if(!_0x493d75)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x18d46d[_0x346063(0x1db)]+_0x346063(0x1f4));const _0x474cb7=_0x18d46d[_0x346063(0x1e1)]('target'),_0x45a100=Object[_0x346063(0x1df)](_0x493d75[_0x346063(0x1dc)]),_0x571d76=resolveDeleteTarget(_0x474cb7,_0x45a100),_0x189373=_0x493d75['functions'][_0x571d76];if(!_0x189373)throw CliErrors[_0x346063(0x1e4)](_0x346063(0x1eb)+_0x571d76+'\x22.');await deleteBffScript(_0x189373[_0x346063(0x1dd)]),delete _0x493d75[_0x346063(0x1dc)][_0x571d76],_0x493d75[_0x346063(0x1cf)]=new Date()[_0x346063(0x1e2)](),await writeBffLockFile(_0x4fbe86[_0x346063(0x1d6)],_0x59fd6e);const _0x5ca967=resolveLocalFilePathFromLockKey(_0x4fbe86,_0x571d76);let _0x11d1b9;await fileExists(_0x5ca967)&&(_0x11d1b9=await moveToTrash(_0x4fbe86[_0x346063(0x1f2)],_0x4fbe86['trashDir'],_0x5ca967),await cleanupEmptyDirectories(dirname(_0x5ca967),_0x4fbe86[_0x346063(0x1cc)]));await waitForDeleteSettlement(_0x4fbe86[_0x346063(0x1d6)],_0x18d46d['appCode'],_0x571d76,_0x5ca967),await sleep(0x96);const _0x31141c={'deleted':_0x571d76,'remoteId':_0x189373[_0x346063(0x1dd)]};if(_0x11d1b9)_0x31141c[_0x346063(0x1f1)]=_0x11d1b9;return{'ok':!![],'data':_0x31141c,'message':_0x346063(0x1d3)+_0x571d76+(_0x11d1b9?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function resolveDeleteTarget(_0x589e72,_0x1fac98){const _0x46d5d4=a27_0x4f954c;if(_0x589e72[_0x46d5d4(0x1ec)]('/')){const _0x2e29ca=_0x1fac98[_0x46d5d4(0x1fa)](_0x3e9ed3=>_0x3e9ed3===_0x589e72);if(!_0x2e29ca)throw CliErrors[_0x46d5d4(0x1e4)](_0x46d5d4(0x1e5)+_0x589e72);return _0x2e29ca;}const _0x4c575c=_0x1fac98['filter'](_0x256732=>_0x256732[_0x46d5d4(0x1ef)]('/')['at'](-0x1)===_0x589e72);if(_0x4c575c[_0x46d5d4(0x1f3)]===0x0)throw CliErrors[_0x46d5d4(0x1e4)]('Function\x20not\x20found:\x20'+_0x589e72);if(_0x4c575c[_0x46d5d4(0x1f3)]>0x1)throw CliErrors[_0x46d5d4(0x1e4)](_0x46d5d4(0x1d8)+_0x589e72+_0x46d5d4(0x1d7)+_0x4c575c['map'](_0x3d50b5=>'\x20\x20-\x20'+_0x3d50b5)[_0x46d5d4(0x1e9)]('\x0a'));return _0x4c575c[0x0];}async function moveToTrash(_0x153898,_0x2f54d2,_0x4485e7){const _0x19cefc=a27_0x4f954c,_0x5d6c70=new Date()[_0x19cefc(0x1e2)]()['replace'](/[:.]/g,'-'),_0x5010a8=relative(_0x153898,_0x4485e7),_0xd749ce=join(_0x2f54d2,_0x5d6c70,_0x5010a8);return await mkdir(dirname(_0xd749ce),{'recursive':!![]}),await rename(_0x4485e7,_0xd749ce),_0xd749ce;}async function cleanupEmptyDirectories(_0x2efdf3,_0x99eca5){const _0x57e36c=a27_0x4f954c;let _0x2aeab2=resolve(_0x2efdf3);const _0x25700e=resolve(_0x99eca5);while(_0x2aeab2[_0x57e36c(0x1f7)](''+_0x25700e+sep)||_0x2aeab2===_0x25700e){if(_0x2aeab2===_0x25700e)return;try{const _0x518102=await readdir(_0x2aeab2);if(_0x518102[_0x57e36c(0x1f3)]>0x0)return;await rmdir(_0x2aeab2);}catch{return;}_0x2aeab2=dirname(_0x2aeab2);}}function a27_0x3054(_0x5a9caf,_0x327499){_0x5a9caf=_0x5a9caf-0x1cc;const _0x2ab19f=a27_0x2ab1();let _0x305481=_0x2ab19f[_0x5a9caf];return _0x305481;}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x1af84c,_0x42295b,_0x9b9c69,_0x108ecf){const _0x2fae58=a27_0x4f954c;for(let _0x36a935=0x0;_0x36a935<DELETE_SETTLE_RETRY_COUNT;_0x36a935+=0x1){const _0xbe3e43=await readBffLockFile(_0x1af84c),_0x2d51c3=!!_0xbe3e43?.[_0x2fae58(0x1de)]?.[_0x42295b]?.['functions']?.[_0x9b9c69],_0xac9c5b=await fileExists(_0x108ecf);if(!_0x2d51c3&&!_0xac9c5b)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x2fae58(0x1d1)+_0x9b9c69+'.');}
1
+ function a27_0x3d3b(){const _0xfd5c4a=['1084830uQIdSw','24vdLCnq','<timestamp>','join','Function\x20not\x20found:\x20','map','length','find','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','Lock\x20scope\x20for\x20app\x20\x22','563031jZdlrB','validation','2597580zIIEmr','remoteId','Deleted\x20','trashedTo','lockFilePath','\x22\x20not\x20found\x20after\x20ensureLockScope.','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','1754DmOIFk','BFF\x20lock\x20file\x20not\x20found.','scriptsRoot','projectRoot','high-risk-write','\x20\x20-\x20','706476KHqGyg','parse','functions','trashDir','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','\x20(local\x20file\x20moved\x20to\x20trash)','str','filter','toISOString','5ppwkJO','107ocweyd','keys','No\x20lock\x20entry\x20found\x20for\x20\x22','delete','/api/management/library/scripts/delete','appCode','729804pwhkwc','1916058jRVKHU','bff','Multiple\x20functions\x20match\x20\x22','apps','startsWith','target','split'];a27_0x3d3b=function(){return _0xfd5c4a;};return a27_0x3d3b();}const a27_0xbf69dc=a27_0x14a5;(function(_0x3f78d3,_0x39b6dc){const _0x49df00=a27_0x14a5,_0x1cd321=_0x3f78d3();while(!![]){try{const _0x196d79=-parseInt(_0x49df00(0xd2))/0x1*(parseInt(_0x49df00(0xc2))/0x2)+-parseInt(_0x49df00(0xc8))/0x3+-parseInt(_0x49df00(0xd8))/0x4+-parseInt(_0x49df00(0xd1))/0x5*(-parseInt(_0x49df00(0xd9))/0x6)+parseInt(_0x49df00(0xb9))/0x7*(parseInt(_0x49df00(0xe1))/0x8)+parseInt(_0x49df00(0xbb))/0x9+-parseInt(_0x49df00(0xe0))/0xa;if(_0x196d79===_0x39b6dc)break;else _0x1cd321['push'](_0x1cd321['shift']());}catch(_0x95b1d4){_0x1cd321['push'](_0x1cd321['shift']());}}}(a27_0x3d3b,0x37e85));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0xbf69dc(0xda),'command':'delete','description':a27_0xbf69dc(0xc1),'risk':a27_0xbf69dc(0xc6),'flags':[{'name':a27_0xbf69dc(0xde),'type':'string','required':!![],'description':a27_0xbf69dc(0xcc)}],async 'validate'(_0x4704a0){const _0x3c3f65=a27_0xbf69dc,_0x31995e=loadBffProjectConfig(_0x4704a0[_0x3c3f65(0xd7)]),_0x3b48cc=await readBffLockFile(_0x31995e[_0x3c3f65(0xbf)]);if(!_0x3b48cc)throw CliErrors['validation']('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x5a349e){const _0x44ac2a=a27_0xbf69dc,_0x25ce98=loadBffProjectConfig(_0x5a349e[_0x44ac2a(0xd7)]),_0x2f8046=await readBffLockFile(_0x25ce98[_0x44ac2a(0xbf)]);if(!_0x2f8046)throw CliErrors[_0x44ac2a(0xba)](_0x44ac2a(0xc3));const {appLock:_0x2c2e44}=ensureLockScope(_0x2f8046,_0x5a349e[_0x44ac2a(0xd7)],_0x25ce98[_0x44ac2a(0xc4)],_0x44ac2a(0xd5)),_0x1e85eb=_0x5a349e[_0x44ac2a(0xce)]('target'),_0x247c95=Object[_0x44ac2a(0xd3)](_0x2c2e44[_0x44ac2a(0xca)]),_0x17147f=resolveDeleteTarget(_0x1e85eb,_0x247c95),_0x3d522f=_0x2c2e44[_0x44ac2a(0xca)][_0x17147f];if(!_0x3d522f)throw CliErrors[_0x44ac2a(0xba)](_0x44ac2a(0xd4)+_0x17147f+'\x22.');const _0x5aa4b9=resolveLocalFilePathFromLockKey(_0x25ce98,_0x17147f),_0x6a0a7a=relative(_0x25ce98[_0x44ac2a(0xc5)],_0x5aa4b9),_0x3cf5b3=join(_0x25ce98['trashDir'],_0x44ac2a(0xe2),_0x6a0a7a);return{'method':'POST','url':_0x44ac2a(0xd6),'body':{'appCode':_0x5a349e['appCode'],'target':_0x17147f,'remoteId':_0x3d522f[_0x44ac2a(0xbc)],'localFilePath':_0x5aa4b9,'trashedPath':_0x3cf5b3},'description':'Would\x20delete\x20'+_0x17147f+_0x44ac2a(0xb6)};},async 'execute'(_0x25f528){const _0x3fb129=a27_0xbf69dc,_0x478171=loadBffProjectConfig(_0x25f528[_0x3fb129(0xd7)]),_0x20c096=await readBffLockFile(_0x478171[_0x3fb129(0xbf)]);if(!_0x20c096)throw CliErrors['validation']('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x5ec0d1,appLock:_0x2818b6}=ensureLockScope(_0x20c096,_0x25f528[_0x3fb129(0xd7)],_0x478171[_0x3fb129(0xc4)],'delete'),_0x373738=JSON[_0x3fb129(0xc9)](JSON['stringify'](_0x5ec0d1)),_0x17f188=_0x373738[_0x3fb129(0xdc)][_0x25f528[_0x3fb129(0xd7)]];if(!_0x17f188)throw new Error(_0x3fb129(0xb8)+_0x25f528[_0x3fb129(0xd7)]+_0x3fb129(0xc0));const _0x4a988c=_0x25f528[_0x3fb129(0xce)]('target'),_0x244fff=Object[_0x3fb129(0xd3)](_0x17f188[_0x3fb129(0xca)]),_0x1f0c84=resolveDeleteTarget(_0x4a988c,_0x244fff),_0x3ecc07=_0x17f188['functions'][_0x1f0c84];if(!_0x3ecc07)throw CliErrors[_0x3fb129(0xba)](_0x3fb129(0xd4)+_0x1f0c84+'\x22.');await deleteBffScript(_0x3ecc07[_0x3fb129(0xbc)]),delete _0x17f188[_0x3fb129(0xca)][_0x1f0c84],_0x17f188['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x478171[_0x3fb129(0xbf)],_0x373738);const _0x321663=resolveLocalFilePathFromLockKey(_0x478171,_0x1f0c84);let _0x48d291;await fileExists(_0x321663)&&(_0x48d291=await moveToTrash(_0x478171[_0x3fb129(0xc5)],_0x478171[_0x3fb129(0xcb)],_0x321663),await cleanupEmptyDirectories(dirname(_0x321663),_0x478171['scriptsRootDir']));await waitForDeleteSettlement(_0x478171[_0x3fb129(0xbf)],_0x25f528[_0x3fb129(0xd7)],_0x1f0c84,_0x321663),await sleep(0x96);const _0x4849e1={'deleted':_0x1f0c84,'remoteId':_0x3ecc07[_0x3fb129(0xbc)]};if(_0x48d291)_0x4849e1[_0x3fb129(0xbe)]=_0x48d291;return{'ok':!![],'data':_0x4849e1,'message':_0x3fb129(0xbd)+_0x1f0c84+(_0x48d291?_0x3fb129(0xcd):'')};}};function resolveDeleteTarget(_0x85d000,_0x24e8fe){const _0xa61291=a27_0xbf69dc;if(_0x85d000['includes']('/')){const _0x127018=_0x24e8fe[_0xa61291(0xb5)](_0x153f3f=>_0x153f3f===_0x85d000);if(!_0x127018)throw CliErrors[_0xa61291(0xba)](_0xa61291(0xe4)+_0x85d000);return _0x127018;}const _0x3f3622=_0x24e8fe[_0xa61291(0xcf)](_0x419c80=>_0x419c80[_0xa61291(0xdf)]('/')['at'](-0x1)===_0x85d000);if(_0x3f3622[_0xa61291(0xe6)]===0x0)throw CliErrors['validation'](_0xa61291(0xe4)+_0x85d000);if(_0x3f3622['length']>0x1)throw CliErrors[_0xa61291(0xba)](_0xa61291(0xdb)+_0x85d000+_0xa61291(0xb7)+_0x3f3622[_0xa61291(0xe5)](_0x101030=>_0xa61291(0xc7)+_0x101030)[_0xa61291(0xe3)]('\x0a'));return _0x3f3622[0x0];}async function moveToTrash(_0x1c6fa4,_0x5f3c53,_0x13beb8){const _0x2f1301=a27_0xbf69dc,_0x299ae2=new Date()[_0x2f1301(0xd0)]()['replace'](/[:.]/g,'-'),_0x39b4fb=relative(_0x1c6fa4,_0x13beb8),_0x43f363=join(_0x5f3c53,_0x299ae2,_0x39b4fb);return await mkdir(dirname(_0x43f363),{'recursive':!![]}),await rename(_0x13beb8,_0x43f363),_0x43f363;}async function cleanupEmptyDirectories(_0xb20dab,_0x2432c1){const _0x509064=a27_0xbf69dc;let _0x294816=resolve(_0xb20dab);const _0x1ac4b5=resolve(_0x2432c1);while(_0x294816[_0x509064(0xdd)](''+_0x1ac4b5+sep)||_0x294816===_0x1ac4b5){if(_0x294816===_0x1ac4b5)return;try{const _0x20d45a=await readdir(_0x294816);if(_0x20d45a[_0x509064(0xe6)]>0x0)return;await rmdir(_0x294816);}catch{return;}_0x294816=dirname(_0x294816);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;function a27_0x14a5(_0x1cdd86,_0x1d31d8){_0x1cdd86=_0x1cdd86-0xb5;const _0x3d3b3d=a27_0x3d3b();let _0x14a5a9=_0x3d3b3d[_0x1cdd86];return _0x14a5a9;}async function waitForDeleteSettlement(_0x51462b,_0x44175e,_0x304e14,_0x1ef604){const _0x1689eb=a27_0xbf69dc;for(let _0x498c85=0x0;_0x498c85<DELETE_SETTLE_RETRY_COUNT;_0x498c85+=0x1){const _0x2242c0=await readBffLockFile(_0x51462b),_0x4e9aaf=!!_0x2242c0?.[_0x1689eb(0xdc)]?.[_0x44175e]?.[_0x1689eb(0xca)]?.[_0x304e14],_0x136f0a=await fileExists(_0x1ef604);if(!_0x4e9aaf&&!_0x136f0a)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error('Local\x20delete\x20not\x20settled\x20for\x20'+_0x304e14+'.');}
@@ -1 +1 @@
1
- function a28_0x1964(){const _0x42d445=['5cSlUwb','boolean','scriptType','num','(none)','description','643376tZaMam','verbose','Return\x20full\x20raw\x20script\x20object','createdTime','Get\x20BFF\x20script\x20details\x20by\x20ID','90YAdMkA','9885680iHjdkt','3249810gwLiXp','42090730Stlpcg','detail','537818jsaDAX','number','95768GizMrh','read','bool','bff','Script\x20ID','2916XFLkpc','updatedTime','4824egztIU'];a28_0x1964=function(){return _0x42d445;};return a28_0x1964();}const a28_0x41944f=a28_0x5b66;(function(_0x2a86f9,_0x3f348a){const _0x55ee20=a28_0x5b66,_0x540132=_0x2a86f9();while(!![]){try{const _0x3b3f1c=-parseInt(_0x55ee20(0x12b))/0x1+parseInt(_0x55ee20(0x121))/0x2+-parseInt(_0x55ee20(0x11a))/0x3*(parseInt(_0x55ee20(0x132))/0x4)+-parseInt(_0x55ee20(0x11b))/0x5*(parseInt(_0x55ee20(0x128))/0x6)+-parseInt(_0x55ee20(0x127))/0x7+-parseInt(_0x55ee20(0x12d))/0x8*(-parseInt(_0x55ee20(0x126))/0x9)+parseInt(_0x55ee20(0x129))/0xa;if(_0x3b3f1c===_0x3f348a)break;else _0x540132['push'](_0x540132['shift']());}catch(_0x3f68bf){_0x540132['push'](_0x540132['shift']());}}}(a28_0x1964,0xf0db2));function a28_0x5b66(_0x1863c7,_0x53d667){_0x1863c7=_0x1863c7-0x119;const _0x1964ef=a28_0x1964();let _0x5b663e=_0x1964ef[_0x1863c7];return _0x5b663e;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x41944f(0x130),'command':a28_0x41944f(0x12a),'description':a28_0x41944f(0x125),'risk':a28_0x41944f(0x12e),'flags':[{'name':'id','type':a28_0x41944f(0x12c),'required':!![],'description':a28_0x41944f(0x131)},{'name':a28_0x41944f(0x122),'type':a28_0x41944f(0x11c),'description':a28_0x41944f(0x123)}],async 'execute'(_0x4fe443){const _0x3a73d6=a28_0x41944f,_0x4b5a2=await getBffScriptInfo(_0x4fe443[_0x3a73d6(0x11e)]('id')),_0x289dac=_0x4fe443[_0x3a73d6(0x12f)](_0x3a73d6(0x122));if(_0x289dac)return{'ok':!![],'data':_0x4b5a2};return{'ok':!![],'data':{'id':_0x4b5a2['id'],'appCode':_0x4b5a2['appCode'],'scriptType':_0x4b5a2[_0x3a73d6(0x11d)],'description':_0x4b5a2[_0x3a73d6(0x120)]||_0x3a73d6(0x11f),'createdTime':_0x4b5a2[_0x3a73d6(0x124)]??'','updatedTime':_0x4b5a2[_0x3a73d6(0x119)]??'','scriptContent':_0x4b5a2['scriptContent']??''}};}};
1
+ function a28_0x52ef(_0x320d2c,_0x1ea79e){_0x320d2c=_0x320d2c-0xf5;const _0x3736ad=a28_0x3736();let _0x52efa0=_0x3736ad[_0x320d2c];return _0x52efa0;}const a28_0x37ed85=a28_0x52ef;(function(_0x477ebc,_0x1c48cd){const _0x3a392a=a28_0x52ef,_0x1045a3=_0x477ebc();while(!![]){try{const _0x5144e7=-parseInt(_0x3a392a(0xfa))/0x1*(parseInt(_0x3a392a(0x105))/0x2)+parseInt(_0x3a392a(0xf8))/0x3*(parseInt(_0x3a392a(0xfb))/0x4)+parseInt(_0x3a392a(0xf5))/0x5*(-parseInt(_0x3a392a(0x108))/0x6)+parseInt(_0x3a392a(0x106))/0x7+parseInt(_0x3a392a(0xfe))/0x8+-parseInt(_0x3a392a(0x109))/0x9+-parseInt(_0x3a392a(0xf9))/0xa*(-parseInt(_0x3a392a(0xfc))/0xb);if(_0x5144e7===_0x1c48cd)break;else _0x1045a3['push'](_0x1045a3['shift']());}catch(_0x483013){_0x1045a3['push'](_0x1045a3['shift']());}}}(a28_0x3736,0x88f82));function a28_0x3736(){const _0x3ce8c9=['num','description','560828KzGAWG','2738596zOwLHq','Return\x20full\x20raw\x20script\x20object','859314PfRMEk','5454243OcnGPA','30PvsrzP','bool','verbose','1660398gGMTRb','3845770GdHWiY','3GTReID','8cqECEm','11cEscKW','(none)','7878976MVNmPa','scriptType','bff','scriptContent','Script\x20ID'];a28_0x3736=function(){return _0x3ce8c9;};return a28_0x3736();}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x37ed85(0x100),'command':'detail','description':'Get\x20BFF\x20script\x20details\x20by\x20ID','risk':'read','flags':[{'name':'id','type':'number','required':!![],'description':a28_0x37ed85(0x102)},{'name':'verbose','type':'boolean','description':a28_0x37ed85(0x107)}],async 'execute'(_0x84e5d7){const _0x5c0ca3=a28_0x37ed85,_0x42950a=await getBffScriptInfo(_0x84e5d7[_0x5c0ca3(0x103)]('id')),_0x24da29=_0x84e5d7[_0x5c0ca3(0xf6)](_0x5c0ca3(0xf7));if(_0x24da29)return{'ok':!![],'data':_0x42950a};return{'ok':!![],'data':{'id':_0x42950a['id'],'appCode':_0x42950a['appCode'],'scriptType':_0x42950a[_0x5c0ca3(0xff)],'description':_0x42950a[_0x5c0ca3(0x104)]||_0x5c0ca3(0xfd),'createdTime':_0x42950a['createdTime']??'','updatedTime':_0x42950a['updatedTime']??'','scriptContent':_0x42950a[_0x5c0ca3(0x101)]??''}};}};
@@ -1 +1 @@
1
- function a29_0x87b2(){const _0x501597=['30bEGxUd','651707PwnRqL','228520fgewTQ','242dVaKcK','18994032SZQrTk','79bhZOZO','284YegPJF','17768zRnDSJ','3161331FsdKDN','509930aKsrdZ','423FfLvsT','27315uhzQCD'];a29_0x87b2=function(){return _0x501597;};return a29_0x87b2();}(function(_0x433f01,_0x13d138){const _0x15eceb=a29_0x1bd4,_0x291ecd=_0x433f01();while(!![]){try{const _0x1a08d9=parseInt(_0x15eceb(0xcd))/0x1*(parseInt(_0x15eceb(0xcf))/0x2)+parseInt(_0x15eceb(0xd0))/0x3+parseInt(_0x15eceb(0xce))/0x4*(parseInt(_0x15eceb(0xd3))/0x5)+-parseInt(_0x15eceb(0xd4))/0x6*(-parseInt(_0x15eceb(0xd5))/0x7)+parseInt(_0x15eceb(0xca))/0x8*(-parseInt(_0x15eceb(0xd2))/0x9)+parseInt(_0x15eceb(0xd1))/0xa*(parseInt(_0x15eceb(0xcb))/0xb)+-parseInt(_0x15eceb(0xcc))/0xc;if(_0x1a08d9===_0x13d138)break;else _0x291ecd['push'](_0x291ecd['shift']());}catch(_0x23983e){_0x291ecd['push'](_0x291ecd['shift']());}}}(a29_0x87b2,0xc4a46));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';function a29_0x1bd4(_0x47ab18,_0x2fde97){_0x47ab18=_0x47ab18-0xca;const _0x87b26c=a29_0x87b2();let _0x1bd484=_0x87b26c[_0x47ab18];return _0x1bd484;}import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x44e9a8,_0x2fa166){const _0xfa84ac=a29_0x14ab,_0xf72ff4=_0x44e9a8();while(!![]){try{const _0x1fdc70=-parseInt(_0xfa84ac(0xd5))/0x1+parseInt(_0xfa84ac(0xd7))/0x2+-parseInt(_0xfa84ac(0xd4))/0x3*(parseInt(_0xfa84ac(0xcf))/0x4)+parseInt(_0xfa84ac(0xd2))/0x5*(-parseInt(_0xfa84ac(0xd0))/0x6)+parseInt(_0xfa84ac(0xd8))/0x7*(parseInt(_0xfa84ac(0xd1))/0x8)+parseInt(_0xfa84ac(0xd9))/0x9*(-parseInt(_0xfa84ac(0xd6))/0xa)+parseInt(_0xfa84ac(0xd3))/0xb;if(_0x1fdc70===_0x2fa166)break;else _0xf72ff4['push'](_0xf72ff4['shift']());}catch(_0x222960){_0xf72ff4['push'](_0xf72ff4['shift']());}}}(a29_0x1293,0xaf7cb));function a29_0x14ab(_0x1854a7,_0x395c97){_0x1854a7=_0x1854a7-0xcf;const _0x129333=a29_0x1293();let _0x14abe1=_0x129333[_0x1854a7];return _0x14abe1;}function a29_0x1293(){const _0x34c38b=['80750PhNzqJ','424060qjlGsu','9dcDrkl','4432XzwuCo','1092rZRuxx','128xSSNJF','30605qqiEwU','42781497TsKRSD','3180GPcybV','1353406VGiwom','5381790qqGyRp'];a29_0x1293=function(){return _0x34c38b;};return a29_0x1293();}import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- const a30_0x2bb7e3=a30_0x236e;function a30_0x236e(_0x5ac87e,_0x4c4182){_0x5ac87e=_0x5ac87e-0x15e;const _0x29a0fd=a30_0x29a0();let _0x236e67=_0x29a0fd[_0x5ac87e];return _0x236e67;}(function(_0x8918f7,_0xc96113){const _0x466cc7=a30_0x236e,_0x277f4e=_0x8918f7();while(!![]){try{const _0x29628d=parseInt(_0x466cc7(0x178))/0x1+parseInt(_0x466cc7(0x174))/0x2+parseInt(_0x466cc7(0x16e))/0x3+parseInt(_0x466cc7(0x16b))/0x4*(-parseInt(_0x466cc7(0x166))/0x5)+parseInt(_0x466cc7(0x161))/0x6*(parseInt(_0x466cc7(0x16a))/0x7)+-parseInt(_0x466cc7(0x170))/0x8+-parseInt(_0x466cc7(0x16c))/0x9;if(_0x29628d===_0xc96113)break;else _0x277f4e['push'](_0x277f4e['shift']());}catch(_0x314b49){_0x277f4e['push'](_0x277f4e['shift']());}}}(a30_0x29a0,0x3af05));function a30_0x29a0(){const _0x547244=['COMMON','ENDPOINT','scriptType','90520eskSAu','appCode','description','bool','100044yetoPQ','functionName','Script\x20type\x20filter','string','map','35HqQgBa','(unnamed)','boolean','type','63sNgLSx','82284QVLLzt','3002805fjRDxG','verbose','1227723IIVWkz','str','851168zZOdKY','Filter\x20by\x20script\x20name','Return\x20full\x20script\x20objects','bff','351248xRifII'];a30_0x29a0=function(){return _0x547244;};return a30_0x29a0();}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x2bb7e3(0x173),'command':'list','description':'List\x20BFF\x20scripts','risk':'read','flags':[{'name':a30_0x2bb7e3(0x169),'type':a30_0x2bb7e3(0x164),'description':a30_0x2bb7e3(0x163),'default':a30_0x2bb7e3(0x176),'enum':['ENDPOINT',a30_0x2bb7e3(0x175)]},{'name':'name','type':a30_0x2bb7e3(0x164),'description':a30_0x2bb7e3(0x171)},{'name':'verbose','type':a30_0x2bb7e3(0x168),'description':a30_0x2bb7e3(0x172)}],async 'execute'(_0x358a4e){const _0x1be451=a30_0x2bb7e3,_0x383d60=await listBffScripts(_0x358a4e[_0x1be451(0x15e)],_0x358a4e[_0x1be451(0x16f)]('type'),{'scriptName':_0x358a4e[_0x1be451(0x16f)]('name')||undefined}),_0x10907d=_0x358a4e[_0x1be451(0x160)](_0x1be451(0x16d));return{'ok':!![],'data':_0x10907d?_0x383d60:_0x383d60[_0x1be451(0x165)](_0x48a1d1=>({'id':_0x48a1d1['id'],'functionName':_0x48a1d1[_0x1be451(0x162)]??'','description':_0x48a1d1[_0x1be451(0x15f)]||_0x1be451(0x167),'scriptType':_0x48a1d1[_0x1be451(0x177)]})),'message':_0x383d60['length']===0x0?'No\x20BFF\x20scripts\x20found.':undefined};}};
1
+ const a30_0x249c2b=a30_0x5cef;function a30_0xff16(){const _0x2480ce=['ENDPOINT','list','map','COMMON','name','(unnamed)','string','695148xpFNoU','3707515dEaBZa','199054qwQpqW','1393080MZWtED','length','1148204TAocjv','appCode','verbose','functionName','55RzsHgD','Filter\x20by\x20script\x20name','24gqKZzF','No\x20BFF\x20scripts\x20found.','str','bool','24426909KkuRxQ','description','boolean','type','115989iKAiOa','bff','read','scriptType'];a30_0xff16=function(){return _0x2480ce;};return a30_0xff16();}(function(_0x43e384,_0x4fbeb6){const _0x247fb0=a30_0x5cef,_0x5bbe51=_0x43e384();while(!![]){try{const _0x5e44cb=-parseInt(_0x247fb0(0x90))/0x1+-parseInt(_0x247fb0(0xab))/0x2+parseInt(_0x247fb0(0x9e))/0x3*(parseInt(_0x247fb0(0x96))/0x4)+-parseInt(_0x247fb0(0x94))/0x5*(parseInt(_0x247fb0(0xa9))/0x6)+parseInt(_0x247fb0(0xaa))/0x7+-parseInt(_0x247fb0(0x8e))/0x8+parseInt(_0x247fb0(0x9a))/0x9;if(_0x5e44cb===_0x4fbeb6)break;else _0x5bbe51['push'](_0x5bbe51['shift']());}catch(_0x18017d){_0x5bbe51['push'](_0x5bbe51['shift']());}}}(a30_0xff16,0xbe49c));function a30_0x5cef(_0x4aa080,_0x27fcde){_0x4aa080=_0x4aa080-0x8e;const _0xff1671=a30_0xff16();let _0x5cef6d=_0xff1671[_0x4aa080];return _0x5cef6d;}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x249c2b(0x9f),'command':a30_0x249c2b(0xa3),'description':'List\x20BFF\x20scripts','risk':a30_0x249c2b(0xa0),'flags':[{'name':a30_0x249c2b(0x9d),'type':a30_0x249c2b(0xa8),'description':'Script\x20type\x20filter','default':a30_0x249c2b(0xa2),'enum':[a30_0x249c2b(0xa2),a30_0x249c2b(0xa5)]},{'name':a30_0x249c2b(0xa6),'type':a30_0x249c2b(0xa8),'description':a30_0x249c2b(0x95)},{'name':a30_0x249c2b(0x92),'type':a30_0x249c2b(0x9c),'description':'Return\x20full\x20script\x20objects'}],async 'execute'(_0x40b59e){const _0x2247a4=a30_0x249c2b,_0x1c8cf7=await listBffScripts(_0x40b59e[_0x2247a4(0x91)],_0x40b59e[_0x2247a4(0x98)]('type'),{'scriptName':_0x40b59e[_0x2247a4(0x98)](_0x2247a4(0xa6))||undefined}),_0x2848c3=_0x40b59e[_0x2247a4(0x99)](_0x2247a4(0x92));return{'ok':!![],'data':_0x2848c3?_0x1c8cf7:_0x1c8cf7[_0x2247a4(0xa4)](_0x19ed4b=>({'id':_0x19ed4b['id'],'functionName':_0x19ed4b[_0x2247a4(0x93)]??'','description':_0x19ed4b[_0x2247a4(0x9b)]||_0x2247a4(0xa7),'scriptType':_0x19ed4b[_0x2247a4(0xa1)]})),'message':_0x1c8cf7[_0x2247a4(0x8f)]===0x0?_0x2247a4(0x97):undefined};}};
@@ -1 +1 @@
1
- const a31_0x25d013=a31_0x41ee;(function(_0x4ce3ef,_0x28f28b){const _0x325358=a31_0x41ee,_0x309d41=_0x4ce3ef();while(!![]){try{const _0x5d8f26=parseInt(_0x325358(0x17d))/0x1*(-parseInt(_0x325358(0x145))/0x2)+parseInt(_0x325358(0x15a))/0x3+-parseInt(_0x325358(0x18c))/0x4+-parseInt(_0x325358(0x153))/0x5+parseInt(_0x325358(0x185))/0x6*(-parseInt(_0x325358(0x172))/0x7)+-parseInt(_0x325358(0x147))/0x8*(parseInt(_0x325358(0x170))/0x9)+parseInt(_0x325358(0x168))/0xa*(parseInt(_0x325358(0x16a))/0xb);if(_0x5d8f26===_0x28f28b)break;else _0x309d41['push'](_0x309d41['shift']());}catch(_0x5ebb35){_0x309d41['push'](_0x309d41['shift']());}}}(a31_0x5541,0xd7c8a));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';function a31_0x41ee(_0x10966f,_0x507a63){_0x10966f=_0x10966f-0x145;const _0x554174=a31_0x5541();let _0x41ee6f=_0x554174[_0x10966f];return _0x41ee6f;}import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':'bff','command':a31_0x25d013(0x161),'description':a31_0x25d013(0x184),'risk':a31_0x25d013(0x17e),'flags':[{'name':a31_0x25d013(0x175),'type':'string','description':a31_0x25d013(0x15d),'enum':[a31_0x25d013(0x146),a31_0x25d013(0x150),'HOOK']},{'name':'force','type':a31_0x25d013(0x155),'description':a31_0x25d013(0x177)}],async 'dryRun'(_0x326395){const _0x4a83bf=a31_0x25d013,_0x19bf06=loadBffProjectConfig(_0x326395['appCode']),_0x36e8ec=await readBffLockFile(_0x19bf06[_0x4a83bf(0x16d)]),{appLock:_0x529c41}=ensureLockScope(_0x36e8ec??createEmptyBffLock(),_0x326395['appCode'],_0x19bf06[_0x4a83bf(0x183)],_0x4a83bf(0x161)),_0x5d06b5=normalizeBffType(_0x326395[_0x4a83bf(0x15b)]('type'))??undefined,_0x1faedd=buildDatasetCodeToAliasMap(_0x326395['apiDir'],_0x326395[_0x4a83bf(0x152)]),[_0x444c64,_0x425379]=await Promise[_0x4a83bf(0x166)]([listBffScripts(_0x326395['appCode'],_0x5d06b5),getBffScriptStatistics(_0x326395[_0x4a83bf(0x152)])]),_0x4aa228=createHookLocationMap(_0x425379),_0x38ae40=[];for(const _0x17e8e6 of _0x444c64){const _0x4ce29b=resolveRemoteScriptTarget(_0x19bf06,_0x17e8e6,_0x4aa228,_0x529c41[_0x4a83bf(0x17c)],_0x1faedd);if(!_0x4ce29b){_0x38ae40[_0x4a83bf(0x16e)]({'scriptType':_0x17e8e6[_0x4a83bf(0x17a)],'functionName':_0x17e8e6[_0x4a83bf(0x18d)]??'','status':_0x4a83bf(0x187),'reason':_0x4a83bf(0x14f)});continue;}const _0x397812=_0x529c41[_0x4a83bf(0x17c)][_0x4ce29b['lockKey']],_0x37cf25=_0x17e8e6[_0x4a83bf(0x14d)]!=null?computeContentHash(_0x17e8e6[_0x4a83bf(0x14d)]):undefined,_0x4fda5d=await hasUnsyncedLocalChanges(_0x4ce29b[_0x4a83bf(0x169)],_0x397812,_0x37cf25);_0x38ae40[_0x4a83bf(0x16e)]({'lockKey':_0x4ce29b[_0x4a83bf(0x182)],'filePath':_0x4ce29b[_0x4a83bf(0x169)],'remoteId':_0x17e8e6['id']??null,'status':_0x4fda5d?_0x4a83bf(0x173):_0x4a83bf(0x167)});}return{'method':_0x4a83bf(0x14b),'url':_0x4a83bf(0x164)+_0x326395[_0x4a83bf(0x152)]+(_0x5d06b5?_0x4a83bf(0x14e)+_0x5d06b5:''),'body':{'appCode':_0x326395[_0x4a83bf(0x152)],'filterType':_0x5d06b5??null,'files':_0x38ae40},'description':_0x4a83bf(0x159)+_0x38ae40[_0x4a83bf(0x180)]+_0x4a83bf(0x189)};},async 'execute'(_0x12ab30){const _0x1e7c9c=a31_0x25d013,_0x15841b=loadBffProjectConfig(_0x12ab30['appCode']),_0x29f93b=await readBffLockFile(_0x15841b[_0x1e7c9c(0x16d)]),{lockData:_0xd5cb28,appLock:_0x4b9313}=ensureLockScope(_0x29f93b??createEmptyBffLock(),_0x12ab30[_0x1e7c9c(0x152)],_0x15841b[_0x1e7c9c(0x183)],_0x1e7c9c(0x161)),_0x605d94=normalizeBffType(_0x12ab30[_0x1e7c9c(0x15b)](_0x1e7c9c(0x175)))??undefined;if(_0x12ab30['str'](_0x1e7c9c(0x175))&&!_0x605d94)throw CliErrors['validation']('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0x130047,_0x1833ef]=await Promise[_0x1e7c9c(0x166)]([listBffScripts(_0x12ab30[_0x1e7c9c(0x152)],_0x605d94),getBffScriptStatistics(_0x12ab30[_0x1e7c9c(0x152)])]);if(_0x130047[_0x1e7c9c(0x180)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x1e7c9c(0x163)};const _0x411a67=_0x12ab30[_0x1e7c9c(0x16c)](_0x1e7c9c(0x16f));if(_0x411a67&&!_0x12ab30[_0x1e7c9c(0x188)]){const _0x29af29=await confirmForce();if(!_0x29af29)throw CliErrors['cancelled'](_0x1e7c9c(0x154));}if(_0x411a67&&_0x12ab30[_0x1e7c9c(0x188)]){}const _0x432381=buildDatasetCodeToAliasMap(_0x12ab30[_0x1e7c9c(0x15c)],_0x12ab30[_0x1e7c9c(0x152)]),_0x1bd784=createHookLocationMap(_0x1833ef),_0x48bbc3=JSON[_0x1e7c9c(0x179)](JSON[_0x1e7c9c(0x157)](_0xd5cb28)),_0x389659=_0x12ab30[_0x1e7c9c(0x152)],_0xda9234=_0x48bbc3['apps'][_0x389659];if(!_0xda9234)throw new Error(_0x1e7c9c(0x165)+_0x389659+_0x1e7c9c(0x181));const _0x42f788=[],_0x527872=[],_0x47578c=[];for(const _0x568a01 of _0x130047){const _0x2f88cf=resolveRemoteScriptTarget(_0x15841b,_0x568a01,_0x1bd784,_0x4b9313['functions'],_0x432381);if(!_0x2f88cf){_0x527872[_0x1e7c9c(0x16e)]({'lockKey':_0x568a01[_0x1e7c9c(0x17a)]+'/'+_0x568a01[_0x1e7c9c(0x18d)],'reason':_0x1e7c9c(0x14f)});continue;}const _0x380695=_0x4b9313[_0x1e7c9c(0x17c)][_0x2f88cf[_0x1e7c9c(0x182)]];try{if(!_0x568a01['id'])throw new Error(_0x1e7c9c(0x18b));if(_0x568a01[_0x1e7c9c(0x14d)]==null)throw new Error(_0x1e7c9c(0x148));const _0x4d5ff1=_0x568a01['scriptContent'],_0x1319f1=computeContentHash(_0x4d5ff1);if(!_0x411a67){const _0x21836a=await hasUnsyncedLocalChanges(_0x2f88cf[_0x1e7c9c(0x169)],_0x380695,_0x1319f1);if(_0x21836a){_0x527872[_0x1e7c9c(0x16e)]({'lockKey':_0x2f88cf[_0x1e7c9c(0x182)],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x2f88cf[_0x1e7c9c(0x169)]),await writeFile(_0x2f88cf['filePath'],_0x4d5ff1,_0x1e7c9c(0x162));const _0x820289={'hash':_0x1319f1,'remoteId':_0x568a01['id'],'version':_0x568a01[_0x1e7c9c(0x18a)]};_0x2f88cf[_0x1e7c9c(0x175)]===_0x1e7c9c(0x17b)&&_0x2f88cf[_0x1e7c9c(0x174)]&&(_0x820289[_0x1e7c9c(0x14a)]=_0x2f88cf[_0x1e7c9c(0x174)]['alias'],_0x820289[_0x1e7c9c(0x160)]=_0x2f88cf[_0x1e7c9c(0x174)][_0x1e7c9c(0x160)],_0x820289[_0x1e7c9c(0x15e)]=_0x2f88cf[_0x1e7c9c(0x174)][_0x1e7c9c(0x15e)],_0x820289[_0x1e7c9c(0x171)]=_0x2f88cf[_0x1e7c9c(0x174)][_0x1e7c9c(0x171)]),_0xda9234['functions'][_0x2f88cf['lockKey']]=_0x820289,_0x42f788[_0x1e7c9c(0x16e)]({'lockKey':_0x2f88cf['lockKey'],'remoteId':_0x568a01['id']});}catch(_0x38f8c7){_0x47578c['push']({'lockKey':_0x2f88cf[_0x1e7c9c(0x182)],'error':_0x38f8c7 instanceof Error?_0x38f8c7['message']:String(_0x38f8c7)});}}return _0xda9234['lastSync']=new Date()[_0x1e7c9c(0x156)](),await writeBffLockFile(_0x15841b[_0x1e7c9c(0x16d)],_0x48bbc3),{'ok':_0x47578c['length']===0x0,'data':{'pulled':_0x42f788,'skipped':_0x527872,'failed':_0x47578c},'message':'Pull\x20complete:\x20'+_0x42f788[_0x1e7c9c(0x180)]+_0x1e7c9c(0x149)+_0x527872['length']+'\x20skipped,\x20'+_0x47578c[_0x1e7c9c(0x180)]+_0x1e7c9c(0x17f)};}};async function hasUnsyncedLocalChanges(_0x5ccaf0,_0x1750d5,_0x593f24){if(!await fileExists(_0x5ccaf0))return![];const _0x38648f=await computeFileHash(_0x5ccaf0);if(!_0x1750d5)return _0x593f24?_0x38648f!==_0x593f24:!![];return _0x38648f!==_0x1750d5['hash'];}function buildDatasetCodeToAliasMap(_0x55bd41,_0x107be9){const _0x3c0938=a31_0x25d013,_0x7fe33=loadAliasMap(_0x55bd41,undefined,resolveApiFilePath(_0x55bd41,_0x107be9));return new Map(_0x7fe33['map'](_0x49d81c=>[_0x49d81c['datasetCode'],_0x49d81c[_0x3c0938(0x14a)]]));}async function confirmForce(){const _0x4906a7=a31_0x25d013,_0xc83285=createInterface({'input':process[_0x4906a7(0x176)],'output':process[_0x4906a7(0x14c)]}),_0x2f000d=await new Promise(_0x5b9b90=>{const _0x3ea58b=_0x4906a7;_0xc83285[_0x3ea58b(0x158)](_0x3ea58b(0x151),_0x5b9b90);});return _0xc83285[_0x4906a7(0x178)](),['y','yes'][_0x4906a7(0x186)](_0x2f000d[_0x4906a7(0x15f)]()[_0x4906a7(0x16b)]());}function a31_0x5541(){const _0x427183=['trim','datasetCode','pull','utf8','No\x20remote\x20BFF\x20scripts\x20found.','/api/management/library/scripts/list?appCode=','Lock\x20scope\x20for\x20app\x20\x22','all','would_pull','6110HXKDjN','filePath','86042qBZBBp','toLowerCase','bool','lockFilePath','push','force','4203MuNuYI','functionNode','7eYToBL','conflict','hookLocation','type','stdin','Force\x20overwrite\x20local\x20unsynced\x20changes','close','parse','scriptType','HOOK','functions','65864NyQOtN','write','\x20failed','length','\x22\x20not\x20found\x20after\x20ensureLockScope.','lockKey','scriptsRoot','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','2071422ONMmer','includes','skipped','nonInteractive','\x20remote\x20BFF\x20script(s)\x20for\x20pull','version','Remote\x20script\x20missing\x20id.','5862596xEwPUP','functionName','18oUynEq','COMMON','5176XhChCl','Remote\x20script\x20missing\x20content.','\x20pulled,\x20','alias','GET','stderr','scriptContent','&type=','unresolvable\x20target\x20path','ENDPOINT','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','appCode','6306355cAFiTS','Force\x20pull\x20cancelled.','boolean','toISOString','stringify','question','Would\x20inspect\x20','215070odMqCy','str','apiDir','Pull\x20only\x20this\x20script\x20type','operationType'];a31_0x5541=function(){return _0x427183;};return a31_0x5541();}
1
+ const a31_0x2b2841=a31_0x2b43;(function(_0xef54a4,_0xf63702){const _0x3a02bc=a31_0x2b43,_0x534ed7=_0xef54a4();while(!![]){try{const _0x11d172=parseInt(_0x3a02bc(0x188))/0x1*(-parseInt(_0x3a02bc(0x19d))/0x2)+parseInt(_0x3a02bc(0x16b))/0x3+parseInt(_0x3a02bc(0x1ac))/0x4*(-parseInt(_0x3a02bc(0x1a3))/0x5)+-parseInt(_0x3a02bc(0x1a4))/0x6+parseInt(_0x3a02bc(0x179))/0x7+-parseInt(_0x3a02bc(0x1ae))/0x8+-parseInt(_0x3a02bc(0x163))/0x9*(-parseInt(_0x3a02bc(0x17f))/0xa);if(_0x11d172===_0xf63702)break;else _0x534ed7['push'](_0x534ed7['shift']());}catch(_0x57b90c){_0x534ed7['push'](_0x534ed7['shift']());}}}(a31_0x5ecf,0x8af44));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';function a31_0x2b43(_0x2e18d9,_0x39b659){_0x2e18d9=_0x2e18d9-0x163;const _0x5ecfdc=a31_0x5ecf();let _0x2b43b0=_0x5ecfdc[_0x2e18d9];return _0x2b43b0;}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':a31_0x2b2841(0x168),'risk':'write','flags':[{'name':a31_0x2b2841(0x1a0),'type':a31_0x2b2841(0x166),'description':a31_0x2b2841(0x183),'enum':[a31_0x2b2841(0x167),a31_0x2b2841(0x197),'HOOK']},{'name':'force','type':'boolean','description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x573480){const _0x2553ee=a31_0x2b2841,_0x4838b5=loadBffProjectConfig(_0x573480[_0x2553ee(0x1aa)]),_0x2356f6=await readBffLockFile(_0x4838b5['lockFilePath']),{appLock:_0x55fe0f}=ensureLockScope(_0x2356f6??createEmptyBffLock(),_0x573480['appCode'],_0x4838b5[_0x2553ee(0x185)],_0x2553ee(0x189)),_0x4eb765=normalizeBffType(_0x573480[_0x2553ee(0x16c)](_0x2553ee(0x1a0)))??undefined,_0x501420=buildDatasetCodeToAliasMap(_0x573480[_0x2553ee(0x1a6)],_0x573480[_0x2553ee(0x1aa)]),[_0x3fe2aa,_0x51e524]=await Promise['all']([listBffScripts(_0x573480[_0x2553ee(0x1aa)],_0x4eb765),getBffScriptStatistics(_0x573480['appCode'])]),_0x3d51cf=createHookLocationMap(_0x51e524),_0x3fc426=[];for(const _0xaff2f0 of _0x3fe2aa){const _0xa9bfe7=resolveRemoteScriptTarget(_0x4838b5,_0xaff2f0,_0x3d51cf,_0x55fe0f[_0x2553ee(0x17d)],_0x501420);if(!_0xa9bfe7){_0x3fc426[_0x2553ee(0x174)]({'scriptType':_0xaff2f0[_0x2553ee(0x1a5)],'functionName':_0xaff2f0['functionName']??'','status':_0x2553ee(0x19e),'reason':_0x2553ee(0x17c)});continue;}const _0x5e29ec=_0x55fe0f[_0x2553ee(0x17d)][_0xa9bfe7[_0x2553ee(0x18d)]],_0x30c48b=_0xaff2f0['scriptContent']!=null?computeContentHash(_0xaff2f0[_0x2553ee(0x176)]):undefined,_0x1625e5=await hasUnsyncedLocalChanges(_0xa9bfe7['filePath'],_0x5e29ec,_0x30c48b);_0x3fc426['push']({'lockKey':_0xa9bfe7['lockKey'],'filePath':_0xa9bfe7[_0x2553ee(0x184)],'remoteId':_0xaff2f0['id']??null,'status':_0x1625e5?_0x2553ee(0x193):_0x2553ee(0x17b)});}return{'method':_0x2553ee(0x175),'url':_0x2553ee(0x18c)+_0x573480[_0x2553ee(0x1aa)]+(_0x4eb765?'&type='+_0x4eb765:''),'body':{'appCode':_0x573480['appCode'],'filterType':_0x4eb765??null,'files':_0x3fc426},'description':_0x2553ee(0x19f)+_0x3fc426[_0x2553ee(0x177)]+_0x2553ee(0x17e)};},async 'execute'(_0x291cdf){const _0x16d7ff=a31_0x2b2841,_0x45abf8=loadBffProjectConfig(_0x291cdf[_0x16d7ff(0x1aa)]),_0x3fe1c3=await readBffLockFile(_0x45abf8[_0x16d7ff(0x165)]),{lockData:_0x2782c4,appLock:_0xc945ce}=ensureLockScope(_0x3fe1c3??createEmptyBffLock(),_0x291cdf[_0x16d7ff(0x1aa)],_0x45abf8['scriptsRoot'],'pull'),_0x3b4874=normalizeBffType(_0x291cdf['str'](_0x16d7ff(0x1a0)))??undefined;if(_0x291cdf[_0x16d7ff(0x16c)](_0x16d7ff(0x1a0))&&!_0x3b4874)throw CliErrors[_0x16d7ff(0x172)](_0x16d7ff(0x1a9));const [_0x215405,_0x54801d]=await Promise[_0x16d7ff(0x164)]([listBffScripts(_0x291cdf['appCode'],_0x3b4874),getBffScriptStatistics(_0x291cdf[_0x16d7ff(0x1aa)])]);if(_0x215405[_0x16d7ff(0x177)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x16d7ff(0x180)};const _0x14b13d=_0x291cdf[_0x16d7ff(0x171)](_0x16d7ff(0x19a));if(_0x14b13d&&!_0x291cdf[_0x16d7ff(0x192)]){const _0x86bb49=await confirmForce();if(!_0x86bb49)throw CliErrors[_0x16d7ff(0x173)](_0x16d7ff(0x199));}if(_0x14b13d&&_0x291cdf['nonInteractive']){}const _0x435a4c=buildDatasetCodeToAliasMap(_0x291cdf['apiDir'],_0x291cdf[_0x16d7ff(0x1aa)]),_0x3d281d=createHookLocationMap(_0x54801d),_0x5a0d37=JSON['parse'](JSON[_0x16d7ff(0x195)](_0x2782c4)),_0x1a7b8c=_0x291cdf[_0x16d7ff(0x1aa)],_0xaa864d=_0x5a0d37['apps'][_0x1a7b8c];if(!_0xaa864d)throw new Error(_0x16d7ff(0x181)+_0x1a7b8c+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0xa5afef=[],_0x594681=[],_0xa80ed9=[];for(const _0x3fc863 of _0x215405){const _0x27b37d=resolveRemoteScriptTarget(_0x45abf8,_0x3fc863,_0x3d281d,_0xc945ce[_0x16d7ff(0x17d)],_0x435a4c);if(!_0x27b37d){_0x594681['push']({'lockKey':_0x3fc863[_0x16d7ff(0x1a5)]+'/'+_0x3fc863[_0x16d7ff(0x194)],'reason':_0x16d7ff(0x17c)});continue;}const _0x4ccca8=_0xc945ce['functions'][_0x27b37d[_0x16d7ff(0x18d)]];try{if(!_0x3fc863['id'])throw new Error(_0x16d7ff(0x182));if(_0x3fc863[_0x16d7ff(0x176)]==null)throw new Error(_0x16d7ff(0x1ad));const _0x3781fb=_0x3fc863['scriptContent'],_0x95de67=computeContentHash(_0x3781fb);if(!_0x14b13d){const _0x4098ff=await hasUnsyncedLocalChanges(_0x27b37d[_0x16d7ff(0x184)],_0x4ccca8,_0x95de67);if(_0x4098ff){_0x594681[_0x16d7ff(0x174)]({'lockKey':_0x27b37d[_0x16d7ff(0x18d)],'reason':_0x16d7ff(0x1a7)});continue;}}await ensureParentDirectory(_0x27b37d[_0x16d7ff(0x184)]),await writeFile(_0x27b37d[_0x16d7ff(0x184)],_0x3781fb,_0x16d7ff(0x18f));const _0x24bc91={'hash':_0x95de67,'remoteId':_0x3fc863['id'],'version':_0x3fc863['version']};_0x27b37d['type']===_0x16d7ff(0x1a2)&&_0x27b37d[_0x16d7ff(0x16a)]&&(_0x24bc91[_0x16d7ff(0x170)]=_0x27b37d[_0x16d7ff(0x16a)][_0x16d7ff(0x170)],_0x24bc91['datasetCode']=_0x27b37d[_0x16d7ff(0x16a)][_0x16d7ff(0x18a)],_0x24bc91[_0x16d7ff(0x16d)]=_0x27b37d['hookLocation'][_0x16d7ff(0x16d)],_0x24bc91[_0x16d7ff(0x18b)]=_0x27b37d[_0x16d7ff(0x16a)]['functionNode']),_0xaa864d['functions'][_0x27b37d[_0x16d7ff(0x18d)]]=_0x24bc91,_0xa5afef['push']({'lockKey':_0x27b37d[_0x16d7ff(0x18d)],'remoteId':_0x3fc863['id']});}catch(_0x116500){_0xa80ed9[_0x16d7ff(0x174)]({'lockKey':_0x27b37d[_0x16d7ff(0x18d)],'error':_0x116500 instanceof Error?_0x116500[_0x16d7ff(0x17a)]:String(_0x116500)});}}return _0xaa864d[_0x16d7ff(0x178)]=new Date()[_0x16d7ff(0x198)](),await writeBffLockFile(_0x45abf8[_0x16d7ff(0x165)],_0x5a0d37),{'ok':_0xa80ed9[_0x16d7ff(0x177)]===0x0,'data':{'pulled':_0xa5afef,'skipped':_0x594681,'failed':_0xa80ed9},'message':_0x16d7ff(0x196)+_0xa5afef[_0x16d7ff(0x177)]+_0x16d7ff(0x19c)+_0x594681[_0x16d7ff(0x177)]+_0x16d7ff(0x169)+_0xa80ed9[_0x16d7ff(0x177)]+_0x16d7ff(0x186)};}};async function hasUnsyncedLocalChanges(_0x3836aa,_0x4bc3c9,_0x32cd27){const _0x4b20d2=a31_0x2b2841;if(!await fileExists(_0x3836aa))return![];const _0x189456=await computeFileHash(_0x3836aa);if(!_0x4bc3c9)return _0x32cd27?_0x189456!==_0x32cd27:!![];return _0x189456!==_0x4bc3c9[_0x4b20d2(0x1ab)];}function buildDatasetCodeToAliasMap(_0x6212d2,_0x12e705){const _0x147a3e=a31_0x2b2841,_0xb35c4=loadAliasMap(_0x6212d2,undefined,resolveApiFilePath(_0x6212d2,_0x12e705));return new Map(_0xb35c4[_0x147a3e(0x1a1)](_0x5bdd23=>[_0x5bdd23[_0x147a3e(0x18a)],_0x5bdd23['alias']]));}async function confirmForce(){const _0x9c7ecd=a31_0x2b2841,_0x3beff6=createInterface({'input':process[_0x9c7ecd(0x1a8)],'output':process[_0x9c7ecd(0x187)]}),_0x489341=await new Promise(_0x3cc5be=>{const _0x12d467=_0x9c7ecd;_0x3beff6[_0x12d467(0x16e)]('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0x3cc5be);});return _0x3beff6[_0x9c7ecd(0x191)](),['y',_0x9c7ecd(0x19b)][_0x9c7ecd(0x18e)](_0x489341[_0x9c7ecd(0x190)]()[_0x9c7ecd(0x16f)]());}function a31_0x5ecf(){const _0x3c44c4=['string','COMMON','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','\x20skipped,\x20','hookLocation','1897878nwyxKo','str','operationType','question','toLowerCase','alias','bool','validation','cancelled','push','GET','scriptContent','length','lastSync','3492769sOgmly','message','would_pull','unresolvable\x20target\x20path','functions','\x20remote\x20BFF\x20script(s)\x20for\x20pull','61910RarRdF','No\x20remote\x20BFF\x20scripts\x20found.','Lock\x20scope\x20for\x20app\x20\x22','Remote\x20script\x20missing\x20id.','Pull\x20only\x20this\x20script\x20type','filePath','scriptsRoot','\x20failed','stderr','159QTxQcJ','pull','datasetCode','functionNode','/api/management/library/scripts/list?appCode=','lockKey','includes','utf8','trim','close','nonInteractive','conflict','functionName','stringify','Pull\x20complete:\x20','ENDPOINT','toISOString','Force\x20pull\x20cancelled.','force','yes','\x20pulled,\x20','998YLfYZW','skipped','Would\x20inspect\x20','type','map','HOOK','15qibBKN','1243296FQMdPV','scriptType','apiDir','local\x20unsynced\x20changes','stdin','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','appCode','hash','320100gKxMRb','Remote\x20script\x20missing\x20content.','9052896wMtlnf','1593ppwULa','all','lockFilePath'];a31_0x5ecf=function(){return _0x3c44c4;};return a31_0x5ecf();}