@lovrabet/rabetbase-cli 2.1.7-beta.7 → 2.1.7-beta.8

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 (196) 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/delete.js +1 -1
  52. package/lib/commands/dataset/detail.js +1 -1
  53. package/lib/commands/dataset/index.js +1 -1
  54. package/lib/commands/dataset/link-create.js +1 -1
  55. package/lib/commands/dataset/link-delete.js +1 -1
  56. package/lib/commands/dataset/link-shared.js +1 -1
  57. package/lib/commands/dataset/link-update.js +1 -1
  58. package/lib/commands/dataset/links.js +1 -1
  59. package/lib/commands/dataset/list.js +1 -1
  60. package/lib/commands/dataset/operations.js +1 -1
  61. package/lib/commands/db/analyze-cancel.js +1 -1
  62. package/lib/commands/db/analyze-start.js +1 -1
  63. package/lib/commands/db/analyze-status.js +1 -1
  64. package/lib/commands/db/create.js +1 -1
  65. package/lib/commands/db/delete.js +1 -1
  66. package/lib/commands/db/detail.js +1 -1
  67. package/lib/commands/db/diff.js +1 -1
  68. package/lib/commands/db/index.js +1 -1
  69. package/lib/commands/db/list.js +1 -1
  70. package/lib/commands/db/shared.js +1 -1
  71. package/lib/commands/db/tables.js +1 -1
  72. package/lib/commands/db/test.js +1 -1
  73. package/lib/commands/db/update.js +1 -1
  74. package/lib/commands/doctor.js +1 -1
  75. package/lib/commands/init/index.js +1 -1
  76. package/lib/commands/issue/index.js +1 -1
  77. package/lib/commands/issue/report.js +1 -1
  78. package/lib/commands/logs/index.js +1 -1
  79. package/lib/commands/menu/index.js +1 -1
  80. package/lib/commands/menu/shared/compare-table.js +1 -1
  81. package/lib/commands/menu/shared/index.js +1 -1
  82. package/lib/commands/menu/shared/inquirer.js +1 -1
  83. package/lib/commands/menu/shared/local-pages.js +1 -1
  84. package/lib/commands/menu/shared/logic.js +1 -1
  85. package/lib/commands/menu/shared/service.js +1 -1
  86. package/lib/commands/menu/shared/sync-core.js +1 -1
  87. package/lib/commands/menu/shared/update-core.js +1 -1
  88. package/lib/commands/menu/shared/valid-url.js +1 -1
  89. package/lib/commands/menu/sync.js +1 -1
  90. package/lib/commands/menu/update.js +1 -1
  91. package/lib/commands/page/generate-start.js +1 -1
  92. package/lib/commands/page/generate-status.js +1 -1
  93. package/lib/commands/page/index.js +1 -1
  94. package/lib/commands/page/pull.js +1 -1
  95. package/lib/commands/page/push.js +1 -1
  96. package/lib/commands/page/shared.js +1 -1
  97. package/lib/commands/page/standard-page-status.js +1 -1
  98. package/lib/commands/page/sync.js +1 -1
  99. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  100. package/lib/commands/project/create/format-elapsed.js +1 -1
  101. package/lib/commands/project/create/main.js +1 -1
  102. package/lib/commands/project/create/non-interactive.js +1 -1
  103. package/lib/commands/project/create/project-template-path.js +1 -1
  104. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  105. package/lib/commands/project/create/use-format-code.js +1 -1
  106. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  107. package/lib/commands/project/index.js +1 -1
  108. package/lib/commands/project/init.js +1 -1
  109. package/lib/commands/project/upgrade.js +1 -1
  110. package/lib/commands/registry.js +1 -1
  111. package/lib/commands/run/index.js +1 -1
  112. package/lib/commands/schema.js +1 -1
  113. package/lib/commands/skill/index.js +1 -1
  114. package/lib/commands/sql/create.js +1 -1
  115. package/lib/commands/sql/delete.js +1 -1
  116. package/lib/commands/sql/detail.js +1 -1
  117. package/lib/commands/sql/exec.js +1 -1
  118. package/lib/commands/sql/index.js +1 -1
  119. package/lib/commands/sql/list.js +1 -1
  120. package/lib/commands/sql/pull.js +1 -1
  121. package/lib/commands/sql/push.js +1 -1
  122. package/lib/commands/sql/save.js +1 -1
  123. package/lib/commands/sql/shared.js +1 -1
  124. package/lib/commands/sql/status.js +1 -1
  125. package/lib/commands/sql/validate.js +1 -1
  126. package/lib/config/schema.js +1 -1
  127. package/lib/constant/cdn.js +1 -1
  128. package/lib/constant/cli.js +1 -1
  129. package/lib/constant/defaults.js +1 -1
  130. package/lib/constant/domain.js +1 -1
  131. package/lib/constant/env.js +1 -1
  132. package/lib/constant/output.js +1 -1
  133. package/lib/constant/paths.js +1 -1
  134. package/lib/constant/risk.js +1 -1
  135. package/lib/context.js +1 -1
  136. package/lib/core/alias-resolver.js +1 -1
  137. package/lib/core/api-client.js +1 -1
  138. package/lib/core/bff/config.js +1 -1
  139. package/lib/core/bff/file-system.js +1 -1
  140. package/lib/core/bff/hash.js +1 -1
  141. package/lib/core/bff/lock.js +1 -1
  142. package/lib/core/bff/utils.js +1 -1
  143. package/lib/core/db-resolver.js +1 -1
  144. package/lib/core/page/file-system.js +1 -1
  145. package/lib/core/page/hash.js +1 -1
  146. package/lib/core/page/lock.js +1 -1
  147. package/lib/core/sql-sync/config.js +1 -1
  148. package/lib/core/sql-sync/file-system.js +1 -1
  149. package/lib/core/sql-sync/hash.js +1 -1
  150. package/lib/core/sql-sync/lock.js +1 -1
  151. package/lib/core/sql-sync/utils.js +1 -1
  152. package/lib/core/sql-validator.js +1 -1
  153. package/lib/errors.js +1 -1
  154. package/lib/framework/build-all-flags.js +1 -1
  155. package/lib/framework/flags.js +1 -1
  156. package/lib/framework/help.js +1 -1
  157. package/lib/framework/index.js +1 -1
  158. package/lib/framework/output.js +1 -1
  159. package/lib/framework/response.js +1 -1
  160. package/lib/framework/runner-alias.js +1 -1
  161. package/lib/framework/runner.js +1 -1
  162. package/lib/framework/schema-export.js +1 -1
  163. package/lib/framework/types.js +1 -1
  164. package/lib/generated/build-info.js +1 -1
  165. package/lib/help.js +1 -1
  166. package/lib/skills/main.js +1 -1
  167. package/lib/skills/npx-skills-add.js +1 -1
  168. package/lib/telemetry/cli-command-trace.js +1 -1
  169. package/lib/telemetry/cli-help-trace.js +1 -1
  170. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  171. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  172. package/lib/telemetry/send-cli-trace-log.js +1 -1
  173. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  174. package/lib/utils/ai_config.js +1 -1
  175. package/lib/utils/apply-jq-filter.js +1 -1
  176. package/lib/utils/cdn-config.js +1 -1
  177. package/lib/utils/check-sdk-version.js +1 -1
  178. package/lib/utils/cli-version-check.js +1 -1
  179. package/lib/utils/cli-version-policy.js +1 -1
  180. package/lib/utils/config.js +1 -1
  181. package/lib/utils/copy-directory.js +1 -1
  182. package/lib/utils/entity-with-id.js +1 -1
  183. package/lib/utils/file-utils.js +1 -1
  184. package/lib/utils/guides-cdn.js +1 -1
  185. package/lib/utils/http-client.js +1 -1
  186. package/lib/utils/is-non-interactive.js +1 -1
  187. package/lib/utils/logger.js +1 -1
  188. package/lib/utils/params.js +1 -1
  189. package/lib/utils/platform.js +1 -1
  190. package/lib/utils/rules-cdn.js +1 -1
  191. package/lib/utils/sleep.js +1 -1
  192. package/lib/utils/template-replacer.js +1 -1
  193. package/lib/utils/version.js +1 -1
  194. package/lib/utils/with-active-cookie.js +1 -1
  195. package/lib/utils/write-cli-side-channel.js +1 -1
  196. package/package.json +1 -1
@@ -1 +1 @@
1
- const a19_0x87ecf2=a19_0x583e;(function(_0x1ecb3c,_0x13e80d){const _0x3642d6=a19_0x583e,_0x54b181=_0x1ecb3c();while(!![]){try{const _0x16380d=parseInt(_0x3642d6(0x14d))/0x1*(parseInt(_0x3642d6(0x15b))/0x2)+parseInt(_0x3642d6(0x153))/0x3+parseInt(_0x3642d6(0x152))/0x4+parseInt(_0x3642d6(0x158))/0x5+parseInt(_0x3642d6(0x14f))/0x6+parseInt(_0x3642d6(0x151))/0x7*(parseInt(_0x3642d6(0x14b))/0x8)+-parseInt(_0x3642d6(0x155))/0x9*(parseInt(_0x3642d6(0x154))/0xa);if(_0x16380d===_0x13e80d)break;else _0x54b181['push'](_0x54b181['shift']());}catch(_0xc7e023){_0x54b181['push'](_0x54b181['shift']());}}}(a19_0x1ed0,0x6ffdb));import{listRemoteApps}from'../../core/api-client.js';function a19_0x583e(_0x5405d3,_0x2c1d89){_0x5405d3=_0x5405d3-0x14b;const _0x1ed05c=a19_0x1ed0();let _0x583e2e=_0x1ed05c[_0x5405d3];return _0x583e2e;}async function execute(_0x1bc6a1){const _0x580d56=a19_0x583e,{setActiveCookie:_0x584c67}=await import('../../core/api-client.js');_0x584c67(_0x1bc6a1['cookie']);const _0x36ce09=await listRemoteApps();return{'ok':!![],'data':{'items':_0x36ce09['map'](_0x2d4221=>({..._0x2d4221['id']!=null?{'id':_0x2d4221['id']}:{},'appCode':_0x2d4221[_0x580d56(0x14e)],'appName':_0x2d4221[_0x580d56(0x15a)],..._0x2d4221[_0x580d56(0x14c)]!=null?{'appDesc':_0x2d4221[_0x580d56(0x14c)]}:{}})),'meta':{'source':_0x580d56(0x159)}}};}function a19_0x1ed0(){const _0x4e77f3=['986816lYdgeq','appDesc','234517xmZFve','appCode','3366300ZGCbdD','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','7GZotLx','2008152UnLJrf','1328187wjtNoJ','10WUJnGo','13270401hFzylg','remote','read','347590iUQyWz','platform','appName','2skOTdM'];a19_0x1ed0=function(){return _0x4e77f3;};return a19_0x1ed0();}export const appRemoteDefinition={'service':'app','command':a19_0x87ecf2(0x156),'description':a19_0x87ecf2(0x150),'risk':a19_0x87ecf2(0x157),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ function a19_0x438f(_0x56b28b,_0x19fa22){_0x56b28b=_0x56b28b-0xe3;const _0x8747a2=a19_0x8747();let _0x438fcd=_0x8747a2[_0x56b28b];return _0x438fcd;}const a19_0xee5f7b=a19_0x438f;(function(_0x5800ea,_0x1a7760){const _0x107c99=a19_0x438f,_0x336b39=_0x5800ea();while(!![]){try{const _0x59c3dd=parseInt(_0x107c99(0xf6))/0x1+-parseInt(_0x107c99(0xe9))/0x2*(-parseInt(_0x107c99(0xef))/0x3)+parseInt(_0x107c99(0xed))/0x4*(-parseInt(_0x107c99(0xea))/0x5)+parseInt(_0x107c99(0xf0))/0x6+parseInt(_0x107c99(0xee))/0x7+-parseInt(_0x107c99(0xe3))/0x8*(-parseInt(_0x107c99(0xf1))/0x9)+parseInt(_0x107c99(0xe4))/0xa*(-parseInt(_0x107c99(0xe8))/0xb);if(_0x59c3dd===_0x1a7760)break;else _0x336b39['push'](_0x336b39['shift']());}catch(_0x453bd4){_0x336b39['push'](_0x336b39['shift']());}}}(a19_0x8747,0x8f719));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x8fff90){const _0x39f58b=a19_0x438f,{setActiveCookie:_0x46fdd9}=await import(_0x39f58b(0xf2));_0x46fdd9(_0x8fff90[_0x39f58b(0xe7)]);const _0x56697b=await listRemoteApps();return{'ok':!![],'data':{'items':_0x56697b['map'](_0x5f19f1=>({..._0x5f19f1['id']!=null?{'id':_0x5f19f1['id']}:{},'appCode':_0x5f19f1[_0x39f58b(0xe6)],'appName':_0x5f19f1[_0x39f58b(0xec)],..._0x5f19f1[_0x39f58b(0xf3)]!=null?{'appDesc':_0x5f19f1[_0x39f58b(0xf3)]}:{}})),'meta':{'source':_0x39f58b(0xe5)}}};}function a19_0x8747(){const _0x33d768=['platform','appCode','cookie','34080728aiObGY','30402GnHaBp','1269905JkYCef','remote','appName','8ebSdKZ','7612584sdqhbL','141VuxioT','5530824HIqiTI','441RhBycw','../../core/api-client.js','appDesc','read','app','522773nstOwT','154648cvmDkt','10vNRrjw'];a19_0x8747=function(){return _0x33d768;};return a19_0x8747();}export const appRemoteDefinition={'service':a19_0xee5f7b(0xf5),'command':a19_0xee5f7b(0xeb),'description':'List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','risk':a19_0xee5f7b(0xf4),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -1 +1 @@
1
- (function(_0x4f5878,_0x2d9e33){const _0x2519c1=a20_0x11fd,_0x5f3b86=_0x4f5878();while(!![]){try{const _0x5e7fb4=-parseInt(_0x2519c1(0x1a7))/0x1+parseInt(_0x2519c1(0x1a4))/0x2+-parseInt(_0x2519c1(0x1a6))/0x3+parseInt(_0x2519c1(0x1ac))/0x4+-parseInt(_0x2519c1(0x1a9))/0x5*(-parseInt(_0x2519c1(0x1ad))/0x6)+-parseInt(_0x2519c1(0x1ab))/0x7*(-parseInt(_0x2519c1(0x1a5))/0x8)+parseInt(_0x2519c1(0x1a8))/0x9*(-parseInt(_0x2519c1(0x1aa))/0xa);if(_0x5e7fb4===_0x2d9e33)break;else _0x5f3b86['push'](_0x5f3b86['shift']());}catch(_0x42b8a4){_0x5f3b86['push'](_0x5f3b86['shift']());}}}(a20_0x4e86,0x82159));import{appListDefinition}from'../../commands/app/list.js';function a20_0x4e86(){const _0x4e2566=['85673uMGxxH','3630400SjlsYd','6EJxNGO','1996968Pxvjgl','464IFGkXU','611661nrWqgK','665988HWqYLP','7848OeBYcD','1079810vpoVOQ','16390kxvVVQ'];a20_0x4e86=function(){return _0x4e2566;};return a20_0x4e86();}function a20_0x11fd(_0x43d23f,_0x40cfa6){_0x43d23f=_0x43d23f-0x1a4;const _0x4e86b7=a20_0x4e86();let _0x11fd76=_0x4e86b7[_0x43d23f];return _0x11fd76;}import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ (function(_0x51d9db,_0x3f72d9){const _0x81097a=a20_0x2c38,_0x572c0b=_0x51d9db();while(!![]){try{const _0x442598=parseInt(_0x81097a(0x9c))/0x1*(-parseInt(_0x81097a(0x96))/0x2)+parseInt(_0x81097a(0x93))/0x3*(-parseInt(_0x81097a(0x99))/0x4)+-parseInt(_0x81097a(0x98))/0x5*(-parseInt(_0x81097a(0x95))/0x6)+-parseInt(_0x81097a(0x9a))/0x7+-parseInt(_0x81097a(0x97))/0x8+parseInt(_0x81097a(0x9b))/0x9+parseInt(_0x81097a(0x94))/0xa;if(_0x442598===_0x3f72d9)break;else _0x572c0b['push'](_0x572c0b['shift']());}catch(_0x37f7cc){_0x572c0b['push'](_0x572c0b['shift']());}}}(a20_0x1a76,0xdb217));function a20_0x1a76(){const _0x3bc9f7=['4CiObvI','13241448UiKwQE','130wPrPQc','4RGxQIU','10982146riktyp','4829058MUIWct','187167VPLMQj','1322031iMPhKQ','39053650FOjIKI','114162HBexWc'];a20_0x1a76=function(){return _0x3bc9f7;};return a20_0x1a76();}import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';function a20_0x2c38(_0x591ae8,_0x5e3cae){_0x591ae8=_0x591ae8-0x93;const _0x1a76e3=a20_0x1a76();let _0x2c38b7=_0x1a76e3[_0x591ae8];return _0x2c38b7;}import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- const a21_0x36c21e=a21_0x23cf;(function(_0x1aa1a0,_0x567156){const _0x2d5d2a=a21_0x23cf,_0x1f537c=_0x1aa1a0();while(!![]){try{const _0x3aabcd=-parseInt(_0x2d5d2a(0x7f))/0x1*(-parseInt(_0x2d5d2a(0x8b))/0x2)+parseInt(_0x2d5d2a(0x83))/0x3*(parseInt(_0x2d5d2a(0x74))/0x4)+parseInt(_0x2d5d2a(0x93))/0x5+-parseInt(_0x2d5d2a(0x80))/0x6+parseInt(_0x2d5d2a(0x70))/0x7*(-parseInt(_0x2d5d2a(0x8e))/0x8)+-parseInt(_0x2d5d2a(0x81))/0x9*(-parseInt(_0x2d5d2a(0x7d))/0xa)+parseInt(_0x2d5d2a(0x7c))/0xb*(parseInt(_0x2d5d2a(0x99))/0xc);if(_0x3aabcd===_0x567156)break;else _0x1f537c['push'](_0x1f537c['shift']());}catch(_0x59fc74){_0x1f537c['push'](_0x1f537c['shift']());}}}(a21_0x34e5,0x62007));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';function a21_0x23cf(_0x3af0d8,_0x812f63){_0x3af0d8=_0x3af0d8-0x70;const _0x34e536=a21_0x34e5();let _0x23cfcb=_0x34e536[_0x3af0d8];return _0x23cfcb;}import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x4bad3e,_0x1fcdae){const _0x3c6774=a21_0x23cf,_0x390af8=[],_0x18ff9e=_0x4bad3e['apps']&&typeof _0x4bad3e[_0x3c6774(0x88)]===_0x3c6774(0x8a)?_0x4bad3e[_0x3c6774(0x88)]:{},_0x19c8e9=_0x4bad3e[_0x3c6774(0x90)]||undefined;for(const [_0x454d28,_0x504e1d]of Object[_0x3c6774(0x7a)](_0x18ff9e)){if(!_0x504e1d||typeof _0x504e1d!==_0x3c6774(0x8a)||!_0x504e1d[_0x3c6774(0x89)])continue;_0x390af8[_0x3c6774(0x76)]({'name':_0x454d28,'appcode':_0x504e1d[_0x3c6774(0x89)],'named':!![],'definedIn':_0x1fcdae,'isDefault':_0x454d28===_0x19c8e9,...buildAppProfileListFields(_0x504e1d)});}return _0x390af8;}function a21_0x34e5(){const _0x17dae7=['2LSxzZU','\x20config','length','76968pBKwWV','map','defaultApp','merged','project','1093200YucQYT','read','bool','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','globalConfig','No\x20apps\x20configured','257844PqzeSY','497kGMGdD','mergedCli','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','inherit','19120JfLZtE','List\x20all\x20configured\x20apps','push','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','projectConfig','app','entries','find','385urttwL','10DLWzpE','global','512947fUGrjC','3938388criWQm','2100348cZHIUV','list','15rpKber','\x20in\x20','boolean','projectPath','globalPath','apps','appcode','object'];a21_0x34e5=function(){return _0x17dae7;};return a21_0x34e5();}function buildMergedItems(_0x20f9af,_0x214d82){const _0x278cb4=a21_0x23cf,{apps:apps={},defaultApp:_0x157907}=_0x20f9af,_0x1c7fd9=_0x214d82[_0x278cb4(0x97)][_0x278cb4(0x88)]&&typeof _0x214d82['globalConfig'][_0x278cb4(0x88)]===_0x278cb4(0x8a)?_0x214d82['globalConfig'][_0x278cb4(0x88)]:{},_0x1843a3=_0x214d82['projectConfig']['apps']&&typeof _0x214d82[_0x278cb4(0x78)]['apps']===_0x278cb4(0x8a)?_0x214d82['projectConfig'][_0x278cb4(0x88)]:{},_0x4aeccc=_0x214d82[_0x278cb4(0x78)][_0x278cb4(0x73)]===![],_0x276afc=Object[_0x278cb4(0x7a)](apps),_0x2a5f8a=_0x276afc[_0x278cb4(0x8f)](([_0x57ef38,_0x7b0e5f])=>({'name':_0x57ef38,'appcode':_0x7b0e5f['appcode'],'named':!![],'definedIn':appDefinedIn(_0x57ef38,_0x1c7fd9,_0x1843a3,_0x4aeccc),'isDefault':_0x57ef38===_0x157907,...buildAppProfileListFields(_0x7b0e5f)}));return _0x2a5f8a;}async function execute(_0x5d09aa){const _0x45c42d=a21_0x23cf,_0x1bf3f0=_0x5d09aa['bool'](_0x45c42d(0x7e)),_0x32c4ef=_0x5d09aa[_0x45c42d(0x95)]('project'),_0x624267=_0x1bf3f0?_0x45c42d(0x7e):_0x32c4ef?'project':_0x45c42d(0x91),{config:_0x2320b5,layers:_0x23085f}=readRawConfigWithLayers(),_0x33d0bc=resolveDefaultAppSource(_0x23085f),{defaultApp:_0x1af38d}=_0x2320b5;let _0x51bd85,_0x1a696c;switch(_0x624267){case _0x45c42d(0x7e):_0x51bd85=buildItemsFromLayer(_0x23085f[_0x45c42d(0x97)],'global'),_0x1a696c=_0x23085f['globalPath'];break;case _0x45c42d(0x92):_0x51bd85=buildItemsFromLayer(_0x23085f[_0x45c42d(0x78)],_0x45c42d(0x92)),_0x1a696c=_0x23085f[_0x45c42d(0x86)];break;default:_0x51bd85=buildMergedItems(_0x2320b5,_0x23085f);break;}enrichAppListItemsWithMergedSelection(_0x51bd85,_0x5d09aa[_0x45c42d(0x71)]);if(_0x51bd85[_0x45c42d(0x8d)]===0x0){const _0x25aa12=_0x624267===_0x45c42d(0x91)?'':_0x45c42d(0x84)+_0x624267+_0x45c42d(0x8c);return{'ok':!![],'data':[],'message':_0x45c42d(0x98)+_0x25aa12+'.\x20Use\x20`'+CLI_BIN_NAME+_0x45c42d(0x96)};}const _0x40ebe4=_0x51bd85[_0x45c42d(0x7b)](_0x328fbd=>_0x328fbd['isCurrent']===!![]),_0x365796=_0x1af38d??_0x40ebe4?.[_0x45c42d(0x89)]??null,_0x50f7b6=_0x624267===_0x45c42d(0x91)?{'globalPath':_0x23085f[_0x45c42d(0x87)]??null,'projectPath':_0x23085f['projectPath']??null,'defaultApp':_0x365796,'defaultAppSource':_0x1af38d!=null?_0x33d0bc:null}:{'scope':_0x624267,'configPath':_0x1a696c??null};return{'ok':!![],'data':{'items':_0x51bd85,'meta':_0x50f7b6}};}export const appListDefinition={'service':a21_0x36c21e(0x79),'command':a21_0x36c21e(0x82),'description':a21_0x36c21e(0x75),'risk':a21_0x36c21e(0x94),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x36c21e(0x7e),'type':a21_0x36c21e(0x85),'description':a21_0x36c21e(0x77),'default':![]},{'name':'project','type':a21_0x36c21e(0x85),'description':a21_0x36c21e(0x72),'default':![]}],'execute':execute};
1
+ const a21_0x3a183a=a21_0x3c75;(function(_0x3dee62,_0x24e4cf){const _0x1ec627=a21_0x3c75,_0x1e2086=_0x3dee62();while(!![]){try{const _0x4d84ac=parseInt(_0x1ec627(0x1d1))/0x1+-parseInt(_0x1ec627(0x1e4))/0x2+parseInt(_0x1ec627(0x1eb))/0x3+-parseInt(_0x1ec627(0x1de))/0x4*(-parseInt(_0x1ec627(0x1f0))/0x5)+-parseInt(_0x1ec627(0x1e1))/0x6*(-parseInt(_0x1ec627(0x1e8))/0x7)+-parseInt(_0x1ec627(0x1cf))/0x8*(parseInt(_0x1ec627(0x1ec))/0x9)+parseInt(_0x1ec627(0x1cb))/0xa*(-parseInt(_0x1ec627(0x1ea))/0xb);if(_0x4d84ac===_0x24e4cf)break;else _0x1e2086['push'](_0x1e2086['shift']());}catch(_0x2b9ad3){_0x1e2086['push'](_0x1e2086['shift']());}}}(a21_0x2e7b,0xcc34f));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(_0x5df910,_0x3cb106){const _0xc819bf=a21_0x3c75,_0x581a05=[],_0x371430=_0x5df910[_0xc819bf(0x1e9)]&&typeof _0x5df910['apps']===_0xc819bf(0x1d0)?_0x5df910[_0xc819bf(0x1e9)]:{},_0x1e8498=_0x5df910[_0xc819bf(0x1cd)]||undefined;for(const [_0x38875a,_0x2ba3b5]of Object[_0xc819bf(0x1ef)](_0x371430)){if(!_0x2ba3b5||typeof _0x2ba3b5!=='object'||!_0x2ba3b5[_0xc819bf(0x1d3)])continue;_0x581a05[_0xc819bf(0x1d5)]({'name':_0x38875a,'appcode':_0x2ba3b5[_0xc819bf(0x1d3)],'named':!![],'definedIn':_0x3cb106,'isDefault':_0x38875a===_0x1e8498,...buildAppProfileListFields(_0x2ba3b5)});}return _0x581a05;}function buildMergedItems(_0x2be73f,_0x2417c6){const _0x59aba4=a21_0x3c75,{apps:apps={},defaultApp:_0x20734c}=_0x2be73f,_0x5b5fd1=_0x2417c6['globalConfig'][_0x59aba4(0x1e9)]&&typeof _0x2417c6[_0x59aba4(0x1d7)]['apps']===_0x59aba4(0x1d0)?_0x2417c6[_0x59aba4(0x1d7)][_0x59aba4(0x1e9)]:{},_0x2f5c3a=_0x2417c6[_0x59aba4(0x1ed)][_0x59aba4(0x1e9)]&&typeof _0x2417c6[_0x59aba4(0x1ed)][_0x59aba4(0x1e9)]===_0x59aba4(0x1d0)?_0x2417c6[_0x59aba4(0x1ed)][_0x59aba4(0x1e9)]:{},_0x52fa2d=_0x2417c6[_0x59aba4(0x1ed)][_0x59aba4(0x1d2)]===![],_0x34dd29=Object['entries'](apps),_0x4934ef=_0x34dd29['map'](([_0x3118e8,_0x54cb13])=>({'name':_0x3118e8,'appcode':_0x54cb13['appcode'],'named':!![],'definedIn':appDefinedIn(_0x3118e8,_0x5b5fd1,_0x2f5c3a,_0x52fa2d),'isDefault':_0x3118e8===_0x20734c,...buildAppProfileListFields(_0x54cb13)}));return _0x4934ef;}function a21_0x2e7b(){const _0x5f1ec6=['bool','List\x20all\x20configured\x20apps','\x20config','global','length','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','4938372SUOWnZ','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','No\x20apps\x20configured','3006138pVeukS','list','boolean','333714EjTYib','isCurrent','read','merged','7AGRLwM','apps','48323YARGKD','1179339hMXXIn','887103ICbgcu','projectConfig','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','entries','5mvjmFu','find','1510ssQgHg','globalPath','defaultApp','projectPath','56lSEMZd','object','227871oHTqRu','inherit','appcode','app','push','project','globalConfig'];a21_0x2e7b=function(){return _0x5f1ec6;};return a21_0x2e7b();}function a21_0x3c75(_0x2b854b,_0x8d7ce4){_0x2b854b=_0x2b854b-0x1ca;const _0x2e7bcb=a21_0x2e7b();let _0x3c7514=_0x2e7bcb[_0x2b854b];return _0x3c7514;}async function execute(_0x1fa054){const _0x3fe176=a21_0x3c75,_0x329dbf=_0x1fa054[_0x3fe176(0x1d8)]('global'),_0x1e37e8=_0x1fa054['bool'](_0x3fe176(0x1d6)),_0x253f3b=_0x329dbf?_0x3fe176(0x1db):_0x1e37e8?'project':_0x3fe176(0x1e7),{config:_0x4b7ccf,layers:_0x20fe38}=readRawConfigWithLayers(),_0x383db9=resolveDefaultAppSource(_0x20fe38),{defaultApp:_0x41d6c9}=_0x4b7ccf;let _0x10cf3b,_0x3c5319;switch(_0x253f3b){case _0x3fe176(0x1db):_0x10cf3b=buildItemsFromLayer(_0x20fe38['globalConfig'],_0x3fe176(0x1db)),_0x3c5319=_0x20fe38[_0x3fe176(0x1cc)];break;case _0x3fe176(0x1d6):_0x10cf3b=buildItemsFromLayer(_0x20fe38[_0x3fe176(0x1ed)],_0x3fe176(0x1d6)),_0x3c5319=_0x20fe38['projectPath'];break;default:_0x10cf3b=buildMergedItems(_0x4b7ccf,_0x20fe38);break;}enrichAppListItemsWithMergedSelection(_0x10cf3b,_0x1fa054['mergedCli']);if(_0x10cf3b[_0x3fe176(0x1dc)]===0x0){const _0x4a6182=_0x253f3b===_0x3fe176(0x1e7)?'':'\x20in\x20'+_0x253f3b+_0x3fe176(0x1da);return{'ok':!![],'data':[],'message':_0x3fe176(0x1e0)+_0x4a6182+'.\x20Use\x20`'+CLI_BIN_NAME+_0x3fe176(0x1dd)};}const _0x4a50e9=_0x10cf3b[_0x3fe176(0x1ca)](_0x35a03f=>_0x35a03f[_0x3fe176(0x1e5)]===!![]),_0x5e1c97=_0x41d6c9??_0x4a50e9?.[_0x3fe176(0x1d3)]??null,_0x19da67=_0x253f3b===_0x3fe176(0x1e7)?{'globalPath':_0x20fe38[_0x3fe176(0x1cc)]??null,'projectPath':_0x20fe38[_0x3fe176(0x1ce)]??null,'defaultApp':_0x5e1c97,'defaultAppSource':_0x41d6c9!=null?_0x383db9:null}:{'scope':_0x253f3b,'configPath':_0x3c5319??null};return{'ok':!![],'data':{'items':_0x10cf3b,'meta':_0x19da67}};}export const appListDefinition={'service':a21_0x3a183a(0x1d4),'command':a21_0x3a183a(0x1e2),'description':a21_0x3a183a(0x1d9),'risk':a21_0x3a183a(0x1e6),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':'global','type':a21_0x3a183a(0x1e3),'description':a21_0x3a183a(0x1ee),'default':![]},{'name':a21_0x3a183a(0x1d6),'type':a21_0x3a183a(0x1e3),'description':a21_0x3a183a(0x1df),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0x210686=a22_0x1385;(function(_0x453915,_0x17732d){const _0xca2522=a22_0x1385,_0x27f258=_0x453915();while(!![]){try{const _0x13994d=-parseInt(_0xca2522(0xea))/0x1*(parseInt(_0xca2522(0xe4))/0x2)+parseInt(_0xca2522(0xe2))/0x3+parseInt(_0xca2522(0xe3))/0x4+-parseInt(_0xca2522(0x103))/0x5+parseInt(_0xca2522(0xfa))/0x6*(-parseInt(_0xca2522(0xee))/0x7)+parseInt(_0xca2522(0xfe))/0x8*(-parseInt(_0xca2522(0xf4))/0x9)+parseInt(_0xca2522(0xe0))/0xa;if(_0x13994d===_0x17732d)break;else _0x27f258['push'](_0x27f258['shift']());}catch(_0x489bd7){_0x27f258['push'](_0x27f258['shift']());}}}(a22_0x5390,0x30435));function a22_0x1385(_0x3472d2,_0x3796cd){_0x3472d2=_0x3472d2-0xdf;const _0x53902e=a22_0x5390();let _0x138584=_0x53902e[_0x3472d2];return _0x138584;}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a22_0x5390(){const _0x1964c5=['remove','trim','76005TjLstT','name','args','app','\x22\x20not\x20found.','defaultApp','1961016HBgICN','object','apps','projectConfig','248AHEBqv','bool','globalConfig','Remove\x20an\x20app\x20from\x20config','\x22\x20still\x20defined\x20in\x20','898900gDelMB','\x20Note:\x20app\x20\x22','Use\x20global\x20config\x20scope','Missing\x20app\x20name.','6776050msqdhY','boolean','657654MiBdNo','479880Nbcblo','33798TnAQAa','keys','high-risk-write','validation','\x20app\x20remove\x20<name>\x20[--global]','App\x20profile\x20name\x20to\x20remove','3OFOVSg','length','project','global','7zDxMhx','Removed\x20app\x20\x22','inherit','Usage:\x20'];a22_0x5390=function(){return _0x1964c5;};return a22_0x5390();}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x527b6b){const _0x59ee9f=a22_0x1385,_0x215799=_0x527b6b[_0x59ee9f(0xf6)][0x0]?.['trim']();if(!_0x215799)throw CliErrors[_0x59ee9f(0xe7)](_0x59ee9f(0xdf),_0x59ee9f(0xf1)+CLI_BIN_NAME+_0x59ee9f(0xe8));}async function execute(_0x44601f){const _0x305e25=a22_0x1385,_0x8acd0d=_0x44601f[_0x305e25(0xf6)][0x0]?.[_0x305e25(0xf3)]();if(!_0x8acd0d)throw CliErrors[_0x305e25(0xe7)](_0x305e25(0xdf),_0x305e25(0xf1)+CLI_BIN_NAME+_0x305e25(0xe8));const _0x3d4ed5=_0x44601f[_0x305e25(0xff)](_0x305e25(0xed)),{config:_0x64865d,layers:_0x36c34f}=readRawConfigWithLayers(),_0x2abf3f=_0x64865d[_0x305e25(0xfc)]??{};if(!_0x2abf3f[_0x8acd0d])throw CliErrors[_0x305e25(0xe7)]('App\x20\x22'+_0x8acd0d+_0x305e25(0xf8));const _0x4607df=_0x36c34f[_0x305e25(0x100)]['apps']&&typeof _0x36c34f[_0x305e25(0x100)]['apps']==='object'?_0x36c34f[_0x305e25(0x100)]['apps']:{},_0x29a32b=_0x36c34f[_0x305e25(0xfd)][_0x305e25(0xfc)]&&typeof _0x36c34f[_0x305e25(0xfd)][_0x305e25(0xfc)]===_0x305e25(0xfb)?_0x36c34f[_0x305e25(0xfd)][_0x305e25(0xfc)]:{},_0x949e9f=appDefinedIn(_0x8acd0d,_0x4607df,_0x29a32b,_0x36c34f[_0x305e25(0xfd)][_0x305e25(0xf0)]===![]),_0x1e752d=resolveAppScopeForWrite(_0x8acd0d,_0x3d4ed5,_0x36c34f),_0x2b0966={'global':_0x1e752d===_0x305e25(0xed)},_0x1dee59=readConfig(_0x2b0966),_0x519a57=_0x1dee59[_0x305e25(0xfc)];if(!_0x519a57||!_0x519a57[_0x8acd0d])throw CliErrors[_0x305e25(0xe7)]('App\x20\x22'+_0x8acd0d+_0x305e25(0xf8));delete _0x519a57[_0x8acd0d];let _0x2349a5='';if(_0x1dee59['defaultApp']===_0x8acd0d){const _0x3ea05a=Object[_0x305e25(0xe5)](_0x519a57);_0x1dee59[_0x305e25(0xf9)]=_0x3ea05a[_0x305e25(0xeb)]>0x0?_0x3ea05a[0x0]:undefined,_0x1dee59[_0x305e25(0xf9)]?_0x2349a5='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x1dee59[_0x305e25(0xf9)]+'\x22.':delete _0x1dee59[_0x305e25(0xf9)];}Object[_0x305e25(0xe5)](_0x519a57)[_0x305e25(0xeb)]===0x0&&(delete _0x1dee59[_0x305e25(0xfc)],delete _0x1dee59[_0x305e25(0xf9)]);writeConfig(_0x1dee59,_0x2b0966);const _0x43cb73=_0x949e9f==='both'?_0x305e25(0x104)+_0x8acd0d+_0x305e25(0x102)+(_0x1e752d===_0x305e25(0xec)?'global':_0x305e25(0xec))+'\x20config.':'';return{'ok':!![],'message':_0x305e25(0xef)+_0x8acd0d+'\x22'+scopeLabel(_0x2b0966)+'.'+_0x2349a5+_0x43cb73};}export const appRemoveDefinition={'service':a22_0x210686(0xf7),'command':a22_0x210686(0xf2),'description':a22_0x210686(0x101),'risk':a22_0x210686(0xe6),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x210686(0xf5),'description':a22_0x210686(0xe9),'required':!![]}],'flags':[{'name':a22_0x210686(0xed),'type':a22_0x210686(0xe1),'description':a22_0x210686(0x105),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x410e54=a22_0xbed8;(function(_0x2d84b5,_0x6f3e18){const _0x5bed78=a22_0xbed8,_0x4b5374=_0x2d84b5();while(!![]){try{const _0x29d944=parseInt(_0x5bed78(0x9c))/0x1*(-parseInt(_0x5bed78(0xac))/0x2)+parseInt(_0x5bed78(0xae))/0x3+-parseInt(_0x5bed78(0x91))/0x4*(-parseInt(_0x5bed78(0xa0))/0x5)+parseInt(_0x5bed78(0xa1))/0x6*(-parseInt(_0x5bed78(0x8d))/0x7)+-parseInt(_0x5bed78(0xa7))/0x8+parseInt(_0x5bed78(0xa8))/0x9+-parseInt(_0x5bed78(0x94))/0xa;if(_0x29d944===_0x6f3e18)break;else _0x4b5374['push'](_0x4b5374['shift']());}catch(_0x5014cd){_0x4b5374['push'](_0x4b5374['shift']());}}}(a22_0x3fa7,0x38cca));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a22_0xbed8(_0x4e07a5,_0x5b9f1c){_0x4e07a5=_0x4e07a5-0x88;const _0x3fa75b=a22_0x3fa7();let _0xbed81=_0x3fa75b[_0x4e07a5];return _0xbed81;}function a22_0x3fa7(){const _0x23aa9f=['2500BVUsLp','105810SXsCaJ','high-risk-write','object','Usage:\x20','\x22\x20still\x20defined\x20in\x20','defaultApp','2812448uLfXMc','2017080VwcLSb','trim','name','App\x20\x22','14iRatfg','args','1039569MFprDT','app','length','remove','\x20app\x20remove\x20<name>\x20[--global]','\x22\x20not\x20found.','7jlmsFc','\x20Default\x20app\x20changed\x20to\x20\x22','global','inherit','1332qjASZi','projectConfig','validation','1275670rdIEQj','keys','project','Use\x20global\x20config\x20scope','App\x20profile\x20name\x20to\x20remove','Missing\x20app\x20name.','Removed\x20app\x20\x22','Remove\x20an\x20app\x20from\x20config','1105LLCxlK','\x20Note:\x20app\x20\x22','globalConfig','apps'];a22_0x3fa7=function(){return _0x23aa9f;};return a22_0x3fa7();}import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0xf6f66){const _0x13638e=a22_0xbed8,_0x44ae75=_0xf6f66[_0x13638e(0xad)][0x0]?.[_0x13638e(0xa9)]();if(!_0x44ae75)throw CliErrors[_0x13638e(0x93)]('Missing\x20app\x20name.',_0x13638e(0xa4)+CLI_BIN_NAME+_0x13638e(0x8b));}async function execute(_0x10215f){const _0x12183c=a22_0xbed8,_0x447146=_0x10215f[_0x12183c(0xad)][0x0]?.['trim']();if(!_0x447146)throw CliErrors[_0x12183c(0x93)](_0x12183c(0x99),'Usage:\x20'+CLI_BIN_NAME+_0x12183c(0x8b));const _0x451658=_0x10215f['bool'](_0x12183c(0x8f)),{config:_0x370239,layers:_0x50e176}=readRawConfigWithLayers(),_0x3d6ffb=_0x370239[_0x12183c(0x9f)]??{};if(!_0x3d6ffb[_0x447146])throw CliErrors[_0x12183c(0x93)](_0x12183c(0xab)+_0x447146+'\x22\x20not\x20found.');const _0x50e2df=_0x50e176[_0x12183c(0x9e)]['apps']&&typeof _0x50e176[_0x12183c(0x9e)][_0x12183c(0x9f)]==='object'?_0x50e176['globalConfig'][_0x12183c(0x9f)]:{},_0x1e30e8=_0x50e176['projectConfig']['apps']&&typeof _0x50e176[_0x12183c(0x92)][_0x12183c(0x9f)]===_0x12183c(0xa3)?_0x50e176[_0x12183c(0x92)][_0x12183c(0x9f)]:{},_0x31b0f4=appDefinedIn(_0x447146,_0x50e2df,_0x1e30e8,_0x50e176[_0x12183c(0x92)][_0x12183c(0x90)]===![]),_0x37238c=resolveAppScopeForWrite(_0x447146,_0x451658,_0x50e176),_0x189b3e={'global':_0x37238c===_0x12183c(0x8f)},_0x3fb42b=readConfig(_0x189b3e),_0x190636=_0x3fb42b[_0x12183c(0x9f)];if(!_0x190636||!_0x190636[_0x447146])throw CliErrors[_0x12183c(0x93)]('App\x20\x22'+_0x447146+_0x12183c(0x8c));delete _0x190636[_0x447146];let _0x3f508b='';if(_0x3fb42b[_0x12183c(0xa6)]===_0x447146){const _0x181b5b=Object[_0x12183c(0x95)](_0x190636);_0x3fb42b[_0x12183c(0xa6)]=_0x181b5b[_0x12183c(0x89)]>0x0?_0x181b5b[0x0]:undefined,_0x3fb42b[_0x12183c(0xa6)]?_0x3f508b=_0x12183c(0x8e)+_0x3fb42b[_0x12183c(0xa6)]+'\x22.':delete _0x3fb42b['defaultApp'];}Object[_0x12183c(0x95)](_0x190636)[_0x12183c(0x89)]===0x0&&(delete _0x3fb42b['apps'],delete _0x3fb42b[_0x12183c(0xa6)]);writeConfig(_0x3fb42b,_0x189b3e);const _0x5643b6=_0x31b0f4==='both'?_0x12183c(0x9d)+_0x447146+_0x12183c(0xa5)+(_0x37238c===_0x12183c(0x96)?_0x12183c(0x8f):_0x12183c(0x96))+'\x20config.':'';return{'ok':!![],'message':_0x12183c(0x9a)+_0x447146+'\x22'+scopeLabel(_0x189b3e)+'.'+_0x3f508b+_0x5643b6};}export const appRemoveDefinition={'service':a22_0x410e54(0x88),'command':a22_0x410e54(0x8a),'description':a22_0x410e54(0x9b),'risk':a22_0x410e54(0xa2),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x410e54(0xaa),'description':a22_0x410e54(0x98),'required':!![]}],'flags':[{'name':a22_0x410e54(0x8f),'type':'boolean','description':a22_0x410e54(0x97),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x5b4693,_0xcf9365){const _0x4b4ad6=a23_0x1a8c,_0x30a701=_0x5b4693();while(!![]){try{const _0x49a900=-parseInt(_0x4b4ad6(0x167))/0x1+-parseInt(_0x4b4ad6(0x160))/0x2+parseInt(_0x4b4ad6(0x168))/0x3*(parseInt(_0x4b4ad6(0x15c))/0x4)+-parseInt(_0x4b4ad6(0x157))/0x5*(-parseInt(_0x4b4ad6(0x171))/0x6)+-parseInt(_0x4b4ad6(0x174))/0x7*(-parseInt(_0x4b4ad6(0x16c))/0x8)+-parseInt(_0x4b4ad6(0x15f))/0x9*(-parseInt(_0x4b4ad6(0x16e))/0xa)+parseInt(_0x4b4ad6(0x164))/0xb*(parseInt(_0x4b4ad6(0x169))/0xc);if(_0x49a900===_0xcf9365)break;else _0x30a701['push'](_0x30a701['shift']());}catch(_0x4643db){_0x30a701['push'](_0x30a701['shift']());}}}(a23_0xd68c,0x1bc6c));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x5a8d4c,_0x5a1471){const _0x3e295f=a23_0x1a8c;if(!_0x5a1471)return;const _0x14b5f4=_0x5a1471[_0x3e295f(0x15d)]&&typeof _0x5a1471['apps']===_0x3e295f(0x176)?_0x5a1471[_0x3e295f(0x15d)]:{},_0x52a30b=Object[_0x3e295f(0x165)](_0x14b5f4)[_0x3e295f(0x170)]>0x0;for(const _0x36eaed of _0x5a8d4c){_0x36eaed[_0x3e295f(0x15b)]=![];}const _0x4680fa=_0x5a1471['appCode']!=null?String(_0x5a1471[_0x3e295f(0x15a)])[_0x3e295f(0x159)]():'';if(_0x52a30b){const _0x25add1=_0x5a1471[_0x3e295f(0x162)]??_0x5a1471[_0x3e295f(0x172)];if(_0x25add1)for(const _0x479ad5 of _0x5a8d4c){_0x479ad5['named']===!![]&&_0x479ad5[_0x3e295f(0x15e)]===_0x25add1&&(_0x479ad5['isCurrent']=!![]);}for(const _0x1b89c1 of _0x5a8d4c){if(_0x1b89c1[_0x3e295f(0x158)]!==![])continue;if(_0x5a1471['defaultApp'])continue;_0x4680fa&&String(_0x1b89c1[_0x3e295f(0x163)]??'')['trim']()===_0x4680fa&&(_0x1b89c1[_0x3e295f(0x15b)]=!![]);}return;}if(!_0x4680fa)return;for(const _0x24d7fb of _0x5a8d4c){String(_0x24d7fb['appcode']??'')[_0x3e295f(0x159)]()===_0x4680fa&&(_0x24d7fb['isCurrent']=!![]);}}function a23_0x1a8c(_0x5cbc9b,_0x18eedd){_0x5cbc9b=_0x5cbc9b-0x155;const _0xd68c43=a23_0xd68c();let _0x1a8c9c=_0xd68c43[_0x5cbc9b];return _0x1a8c9c;}function a23_0xd68c(){const _0x4dc395=['prototype','9620ZKHFRV','call','length','756kxQcLi','defaultApp','hasOwnProperty','729407ArwFzH','both','object','\x20(global)','inherit','575KeyRRn','named','trim','appCode','isCurrent','4wSoWGN','apps','name','909jzlodX','454384KandCY','project','currentApp','appcode','99CWbnjX','keys','projectConfig','41057qpIXJN','174858zxcmba','4908UdvtVu','globalConfig','global','16KMcepc'];a23_0xd68c=function(){return _0x4dc395;};return a23_0xd68c();}export function resolveAppScopeForWrite(_0x20ed68,_0x157cc9,_0x3690fd){const _0x3502fe=a23_0x1a8c;if(_0x157cc9)return _0x3502fe(0x16b);const _0x7ee8df=_0x3690fd[_0x3502fe(0x166)][_0x3502fe(0x15d)]&&typeof _0x3690fd[_0x3502fe(0x166)][_0x3502fe(0x15d)]===_0x3502fe(0x176)?_0x3690fd['projectConfig'][_0x3502fe(0x15d)]:{},_0x31629b=_0x3690fd[_0x3502fe(0x16a)][_0x3502fe(0x15d)]&&typeof _0x3690fd[_0x3502fe(0x16a)][_0x3502fe(0x15d)]===_0x3502fe(0x176)?_0x3690fd[_0x3502fe(0x16a)]['apps']:{};if(Object[_0x3502fe(0x16d)][_0x3502fe(0x173)][_0x3502fe(0x16f)](_0x7ee8df,_0x20ed68))return _0x3502fe(0x161);if(Object[_0x3502fe(0x16d)][_0x3502fe(0x173)][_0x3502fe(0x16f)](_0x31629b,_0x20ed68))return _0x3502fe(0x16b);return _0x3502fe(0x161);}export function appDefinedIn(_0xb63348,_0x5e4169,_0x5e88df,_0x507e71){const _0x248c07=a23_0x1a8c;if(_0x507e71)return Object[_0x248c07(0x16d)]['hasOwnProperty'][_0x248c07(0x16f)](_0x5e88df,_0xb63348)?_0x248c07(0x161):'global';const _0x274fa2=Object[_0x248c07(0x16d)][_0x248c07(0x173)]['call'](_0x5e4169,_0xb63348),_0x26d1f5=Object[_0x248c07(0x16d)]['hasOwnProperty'][_0x248c07(0x16f)](_0x5e88df,_0xb63348);if(_0x274fa2&&_0x26d1f5)return _0x248c07(0x175);if(_0x26d1f5)return _0x248c07(0x161);return _0x248c07(0x16b);}export function resolveDefaultAppSource(_0x4caa29){const _0x373c63=a23_0x1a8c,_0x5aa3e3=_0x4caa29[_0x373c63(0x166)][_0x373c63(0x15d)]&&typeof _0x4caa29[_0x373c63(0x166)][_0x373c63(0x15d)]==='object'?_0x4caa29[_0x373c63(0x166)][_0x373c63(0x15d)]:{};if(_0x373c63(0x172)in _0x4caa29[_0x373c63(0x166)])return _0x373c63(0x161);if(Object[_0x373c63(0x165)](_0x5aa3e3)[_0x373c63(0x170)]>0x0)return _0x373c63(0x161);if(_0x4caa29['projectConfig'][_0x373c63(0x156)]===![])return null;if(_0x4caa29[_0x373c63(0x16a)][_0x373c63(0x172)])return _0x373c63(0x16b);return null;}export function getConfigPath(_0x1cafcb={}){const _0x5ef05a=_0x1cafcb['global']?'global':'project';return resolveWriteConfigPath(_0x5ef05a);}export function readConfig(_0x8fe89a={}){return readConfigFile(getConfigPath(_0x8fe89a));}export function writeConfig(_0x17f880,_0x55a52e={}){writeConfigFile(getConfigPath(_0x55a52e),_0x17f880);}export function scopeLabel(_0x13fc76){const _0x30d2c0=a23_0x1a8c;return _0x13fc76[_0x30d2c0(0x16b)]?_0x30d2c0(0x155):'';}
1
+ (function(_0x34020d,_0x321a79){const _0x9fd3f6=a23_0x5886,_0x4e5e37=_0x34020d();while(!![]){try{const _0x2f9397=-parseInt(_0x9fd3f6(0xf0))/0x1+-parseInt(_0x9fd3f6(0xef))/0x2*(parseInt(_0x9fd3f6(0xf9))/0x3)+-parseInt(_0x9fd3f6(0x105))/0x4*(-parseInt(_0x9fd3f6(0xfb))/0x5)+-parseInt(_0x9fd3f6(0xfd))/0x6*(parseInt(_0x9fd3f6(0x104))/0x7)+-parseInt(_0x9fd3f6(0xf5))/0x8+parseInt(_0x9fd3f6(0x108))/0x9*(parseInt(_0x9fd3f6(0xf6))/0xa)+parseInt(_0x9fd3f6(0xf7))/0xb;if(_0x2f9397===_0x321a79)break;else _0x4e5e37['push'](_0x4e5e37['shift']());}catch(_0x2042f8){_0x4e5e37['push'](_0x4e5e37['shift']());}}}(a23_0x4f1b,0xe66d5));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x503198,_0x138a80){const _0x413c1b=a23_0x5886;if(!_0x138a80)return;const _0x3ef1d7=_0x138a80[_0x413c1b(0xfe)]&&typeof _0x138a80[_0x413c1b(0xfe)]===_0x413c1b(0xf8)?_0x138a80[_0x413c1b(0xfe)]:{},_0x6fe8b2=Object[_0x413c1b(0xf2)](_0x3ef1d7)[_0x413c1b(0xf1)]>0x0;for(const _0x22369d of _0x503198){_0x22369d[_0x413c1b(0x106)]=![];}const _0x29103e=_0x138a80[_0x413c1b(0x107)]!=null?String(_0x138a80[_0x413c1b(0x107)])[_0x413c1b(0x103)]():'';if(_0x6fe8b2){const _0x1a28fa=_0x138a80[_0x413c1b(0xfc)]??_0x138a80['defaultApp'];if(_0x1a28fa)for(const _0x3a4591 of _0x503198){_0x3a4591[_0x413c1b(0x10d)]===!![]&&_0x3a4591[_0x413c1b(0x10b)]===_0x1a28fa&&(_0x3a4591[_0x413c1b(0x106)]=!![]);}for(const _0x156661 of _0x503198){if(_0x156661[_0x413c1b(0x10d)]!==![])continue;if(_0x138a80[_0x413c1b(0x109)])continue;_0x29103e&&String(_0x156661['appcode']??'')[_0x413c1b(0x103)]()===_0x29103e&&(_0x156661[_0x413c1b(0x106)]=!![]);}return;}if(!_0x29103e)return;for(const _0x434361 of _0x503198){String(_0x434361[_0x413c1b(0x102)]??'')[_0x413c1b(0x103)]()===_0x29103e&&(_0x434361['isCurrent']=!![]);}}export function resolveAppScopeForWrite(_0x59cb80,_0x3be084,_0x48c754){const _0x1ff424=a23_0x5886;if(_0x3be084)return'global';const _0x4777a4=_0x48c754[_0x1ff424(0x10c)][_0x1ff424(0xfe)]&&typeof _0x48c754['projectConfig'][_0x1ff424(0xfe)]==='object'?_0x48c754['projectConfig'][_0x1ff424(0xfe)]:{},_0x4aaa4c=_0x48c754[_0x1ff424(0x10a)][_0x1ff424(0xfe)]&&typeof _0x48c754[_0x1ff424(0x10a)][_0x1ff424(0xfe)]==='object'?_0x48c754[_0x1ff424(0x10a)][_0x1ff424(0xfe)]:{};if(Object[_0x1ff424(0xf3)][_0x1ff424(0xff)][_0x1ff424(0x101)](_0x4777a4,_0x59cb80))return _0x1ff424(0xfa);if(Object[_0x1ff424(0xf3)][_0x1ff424(0xff)][_0x1ff424(0x101)](_0x4aaa4c,_0x59cb80))return _0x1ff424(0xf4);return _0x1ff424(0xfa);}export function appDefinedIn(_0x5aa63b,_0xd549c0,_0x333a0b,_0x306340){const _0x2e1bed=a23_0x5886;if(_0x306340)return Object[_0x2e1bed(0xf3)][_0x2e1bed(0xff)][_0x2e1bed(0x101)](_0x333a0b,_0x5aa63b)?_0x2e1bed(0xfa):'global';const _0x2d1846=Object[_0x2e1bed(0xf3)][_0x2e1bed(0xff)][_0x2e1bed(0x101)](_0xd549c0,_0x5aa63b),_0x5a852d=Object['prototype']['hasOwnProperty'][_0x2e1bed(0x101)](_0x333a0b,_0x5aa63b);if(_0x2d1846&&_0x5a852d)return _0x2e1bed(0x100);if(_0x5a852d)return'project';return _0x2e1bed(0xf4);}export function resolveDefaultAppSource(_0x464726){const _0x20decf=a23_0x5886,_0x51ba8e=_0x464726[_0x20decf(0x10c)][_0x20decf(0xfe)]&&typeof _0x464726[_0x20decf(0x10c)][_0x20decf(0xfe)]===_0x20decf(0xf8)?_0x464726[_0x20decf(0x10c)][_0x20decf(0xfe)]:{};if(_0x20decf(0x109)in _0x464726[_0x20decf(0x10c)])return'project';if(Object[_0x20decf(0xf2)](_0x51ba8e)[_0x20decf(0xf1)]>0x0)return _0x20decf(0xfa);if(_0x464726[_0x20decf(0x10c)]['inherit']===![])return null;if(_0x464726[_0x20decf(0x10a)][_0x20decf(0x109)])return _0x20decf(0xf4);return null;}export function getConfigPath(_0x222b06={}){const _0x14126d=a23_0x5886,_0x26f0a1=_0x222b06[_0x14126d(0xf4)]?_0x14126d(0xf4):_0x14126d(0xfa);return resolveWriteConfigPath(_0x26f0a1);}function a23_0x4f1b(){const _0x4368af=['global','30704ZUVzyi','160ugHnan','30292471elPZaw','object','3oWSjzN','project','5ZVIuBE','currentApp','18hLmuJg','apps','hasOwnProperty','both','call','appcode','trim','3306933VgafsC','5571892mybXJk','isCurrent','appCode','5976RSEEPD','defaultApp','globalConfig','name','projectConfig','named','31478CVHvlp','1776795QuuuUm','length','keys','prototype'];a23_0x4f1b=function(){return _0x4368af;};return a23_0x4f1b();}function a23_0x5886(_0x575c57,_0x10950b){_0x575c57=_0x575c57-0xef;const _0x4f1b33=a23_0x4f1b();let _0x588633=_0x4f1b33[_0x575c57];return _0x588633;}export function readConfig(_0x155674={}){return readConfigFile(getConfigPath(_0x155674));}export function writeConfig(_0xb0ad19,_0x47b825={}){writeConfigFile(getConfigPath(_0x47b825),_0xb0ad19);}export function scopeLabel(_0x367989){const _0x4c0a55=a23_0x5886;return _0x367989[_0x4c0a55(0xf4)]?'\x20(global)':'';}
@@ -1 +1 @@
1
- const a24_0x335656=a24_0x2b5a;function a24_0x2b5a(_0x564355,_0xc5878b){_0x564355=_0x564355-0x188;const _0x474c6f=a24_0x474c();let _0x2b5aeb=_0x474c6f[_0x564355];return _0x2b5aeb;}(function(_0x28a15f,_0x175ea5){const _0x2c07e4=a24_0x2b5a,_0x519875=_0x28a15f();while(!![]){try{const _0x1fbeaf=parseInt(_0x2c07e4(0x1a1))/0x1*(parseInt(_0x2c07e4(0x19a))/0x2)+parseInt(_0x2c07e4(0x18b))/0x3*(-parseInt(_0x2c07e4(0x19e))/0x4)+-parseInt(_0x2c07e4(0x198))/0x5*(parseInt(_0x2c07e4(0x1a8))/0x6)+parseInt(_0x2c07e4(0x18f))/0x7*(parseInt(_0x2c07e4(0x1a4))/0x8)+-parseInt(_0x2c07e4(0x18d))/0x9*(-parseInt(_0x2c07e4(0x1a5))/0xa)+-parseInt(_0x2c07e4(0x1ae))/0xb*(-parseInt(_0x2c07e4(0x196))/0xc)+parseInt(_0x2c07e4(0x1ac))/0xd*(parseInt(_0x2c07e4(0x1ad))/0xe);if(_0x1fbeaf===_0x175ea5)break;else _0x519875['push'](_0x519875['shift']());}catch(_0x5474b){_0x519875['push'](_0x519875['shift']());}}}(a24_0x474c,0xf3014));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x26b723){const _0x4f9acb=a24_0x2b5a,_0x13ba92=_0x26b723[_0x4f9acb(0x18e)][0x0]?.['trim']();if(!_0x13ba92)throw CliErrors[_0x4f9acb(0x18c)](_0x4f9acb(0x1af),'Usage:\x20'+CLI_BIN_NAME+_0x4f9acb(0x1b0));}async function execute(_0x55c12a){const _0x4e9d8c=a24_0x2b5a,_0x318dbe=_0x55c12a[_0x4e9d8c(0x18e)][0x0]?.[_0x4e9d8c(0x1a3)]();if(!_0x318dbe)throw CliErrors[_0x4e9d8c(0x18c)]('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x4e9d8c(0x1b0));const _0x567ab7=_0x55c12a['bool'](_0x4e9d8c(0x1a7)),{config:_0x1eec94,layers:_0x2d6e52}=readRawConfigWithLayers(),_0x143126=_0x1eec94[_0x4e9d8c(0x1a6)]??{};if(!_0x143126[_0x318dbe]){const _0x16ef29=Object[_0x4e9d8c(0x195)](_0x143126),_0x152b9e=_0x16ef29[_0x4e9d8c(0x19b)]===0x0?_0x4e9d8c(0x1aa)+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x318dbe+_0x4e9d8c(0x191):_0x4e9d8c(0x194)+_0x16ef29[_0x4e9d8c(0x1a2)](',\x20');throw CliErrors['validation']('App\x20\x22'+_0x318dbe+_0x4e9d8c(0x19d),_0x152b9e);}let _0x296192,_0x506b2f='';if(_0x567ab7)_0x296192={'global':!![]};else{const _0x4bb389=isInProject()&&!!_0x2d6e52[_0x4e9d8c(0x1a0)];_0x296192={'global':!_0x4bb389};if(_0x4bb389){const _0x1c4b79=_0x2d6e52[_0x4e9d8c(0x18a)][_0x4e9d8c(0x1a6)]&&typeof _0x2d6e52['projectConfig'][_0x4e9d8c(0x1a6)]===_0x4e9d8c(0x1ab)?_0x2d6e52[_0x4e9d8c(0x18a)][_0x4e9d8c(0x1a6)]:{};!Object[_0x4e9d8c(0x1b1)]['hasOwnProperty'][_0x4e9d8c(0x192)](_0x1c4b79,_0x318dbe)&&(_0x506b2f=_0x4e9d8c(0x199)+_0x318dbe+'\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.');}}const _0x7c9149=readConfig(_0x296192);return _0x7c9149['defaultApp']=_0x318dbe,writeConfig(_0x7c9149,_0x296192),{'ok':!![],'message':'Default\x20app\x20set\x20to\x20\x22'+_0x318dbe+_0x4e9d8c(0x190)+_0x143126[_0x318dbe][_0x4e9d8c(0x1a9)]+')'+scopeLabel(_0x296192)+_0x506b2f};}function a24_0x474c(){const _0x4335ff=['appcode','Use\x20`','object','26SDLRuM','1717800XKISHW','16905449QhNkWc','Missing\x20app\x20name.','\x20app\x20use\x20<name>\x20[--global]','prototype','name','Use\x20global\x20config\x20scope','projectConfig','93wtqIgu','validation','90qNYalh','args','7EqjSJo','\x22\x20(appcode:\x20','\x20--appcode\x20<code>`\x20first.','call','App\x20profile\x20name\x20to\x20activate','Available:\x20','keys','12nVLJsK','Switch\x20the\x20default\x20app','9057995GDhCoC','\x0aNote:\x20\x22','4ggeCLe','length','use','\x22\x20not\x20found.','35256YvOAxa','write','projectPath','1978vlJeMH','join','trim','7243088maRDSq','388580WyCDXd','apps','global','6pvgQXp'];a24_0x474c=function(){return _0x4335ff;};return a24_0x474c();}export const appUseDefinition={'service':'app','command':a24_0x335656(0x19c),'description':a24_0x335656(0x197),'risk':a24_0x335656(0x19f),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x335656(0x188),'description':a24_0x335656(0x193),'required':!![]}],'flags':[{'name':a24_0x335656(0x1a7),'type':'boolean','description':a24_0x335656(0x189),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x560509=a24_0x4286;(function(_0x114b8,_0x1acdba){const _0x2e86b5=a24_0x4286,_0x1af7c5=_0x114b8();while(!![]){try{const _0x2893e9=-parseInt(_0x2e86b5(0x196))/0x1*(parseInt(_0x2e86b5(0x1ad))/0x2)+-parseInt(_0x2e86b5(0x1ab))/0x3+parseInt(_0x2e86b5(0x1af))/0x4*(parseInt(_0x2e86b5(0x19f))/0x5)+-parseInt(_0x2e86b5(0x199))/0x6+-parseInt(_0x2e86b5(0x1a3))/0x7+parseInt(_0x2e86b5(0x1a0))/0x8*(-parseInt(_0x2e86b5(0x1a1))/0x9)+parseInt(_0x2e86b5(0x1a7))/0xa;if(_0x2893e9===_0x1acdba)break;else _0x1af7c5['push'](_0x1af7c5['shift']());}catch(_0x51f4e1){_0x1af7c5['push'](_0x1af7c5['shift']());}}}(a24_0x39b5,0x6fb6c));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';function a24_0x39b5(){const _0x1d388f=['2463903naAslc','\x20app\x20use\x20<name>\x20[--global]','22WnQdlg','keys','4YlhJPr','Available:\x20','app','use','join','projectConfig','projectPath','validation','App\x20\x22','\x22\x20not\x20found.','name','prototype','Missing\x20app\x20name.','\x20app\x20add\x20','bool','72667rKqWCO','Use\x20`','apps','641172sZVwfD','object','trim','args','Usage:\x20','\x20--appcode\x20<code>`\x20first.','2348930eAWAuX','1953608YFbDNK','18VOSMWu','Default\x20app\x20set\x20to\x20\x22','2266740HsoBrQ','global','call','Use\x20global\x20config\x20scope','25275160WuFcPK','Switch\x20the\x20default\x20app','\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.','length'];a24_0x39b5=function(){return _0x1d388f;};return a24_0x39b5();}async function validateArgs(_0x26dc15){const _0x466ffa=a24_0x4286,_0x15af9c=_0x26dc15[_0x466ffa(0x19c)][0x0]?.[_0x466ffa(0x19b)]();if(!_0x15af9c)throw CliErrors['validation'](_0x466ffa(0x193),'Usage:\x20'+CLI_BIN_NAME+_0x466ffa(0x1ac));}async function execute(_0x23bee8){const _0x3a4c51=a24_0x4286,_0x58f577=_0x23bee8[_0x3a4c51(0x19c)][0x0]?.[_0x3a4c51(0x19b)]();if(!_0x58f577)throw CliErrors[_0x3a4c51(0x18e)](_0x3a4c51(0x193),_0x3a4c51(0x19d)+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');const _0x147f5=_0x23bee8[_0x3a4c51(0x195)](_0x3a4c51(0x1a4)),{config:_0x3fcccc,layers:_0x23f124}=readRawConfigWithLayers(),_0x248bd2=_0x3fcccc[_0x3a4c51(0x198)]??{};if(!_0x248bd2[_0x58f577]){const _0x24383b=Object[_0x3a4c51(0x1ae)](_0x248bd2),_0x1ebdc9=_0x24383b[_0x3a4c51(0x1aa)]===0x0?_0x3a4c51(0x197)+CLI_BIN_NAME+_0x3a4c51(0x194)+_0x58f577+_0x3a4c51(0x19e):_0x3a4c51(0x1b0)+_0x24383b[_0x3a4c51(0x18b)](',\x20');throw CliErrors[_0x3a4c51(0x18e)](_0x3a4c51(0x18f)+_0x58f577+_0x3a4c51(0x190),_0x1ebdc9);}let _0x4e8d62,_0x4abd44='';if(_0x147f5)_0x4e8d62={'global':!![]};else{const _0x398172=isInProject()&&!!_0x23f124[_0x3a4c51(0x18d)];_0x4e8d62={'global':!_0x398172};if(_0x398172){const _0x2f2557=_0x23f124[_0x3a4c51(0x18c)][_0x3a4c51(0x198)]&&typeof _0x23f124[_0x3a4c51(0x18c)]['apps']===_0x3a4c51(0x19a)?_0x23f124[_0x3a4c51(0x18c)][_0x3a4c51(0x198)]:{};!Object[_0x3a4c51(0x192)]['hasOwnProperty'][_0x3a4c51(0x1a5)](_0x2f2557,_0x58f577)&&(_0x4abd44='\x0aNote:\x20\x22'+_0x58f577+_0x3a4c51(0x1a9));}}const _0x1551bd=readConfig(_0x4e8d62);return _0x1551bd['defaultApp']=_0x58f577,writeConfig(_0x1551bd,_0x4e8d62),{'ok':!![],'message':_0x3a4c51(0x1a2)+_0x58f577+'\x22\x20(appcode:\x20'+_0x248bd2[_0x58f577]['appcode']+')'+scopeLabel(_0x4e8d62)+_0x4abd44};}function a24_0x4286(_0x39a343,_0x3769c0){_0x39a343=_0x39a343-0x18a;const _0x39b595=a24_0x39b5();let _0x428688=_0x39b595[_0x39a343];return _0x428688;}export const appUseDefinition={'service':a24_0x560509(0x1b1),'command':a24_0x560509(0x18a),'description':a24_0x560509(0x1a8),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x560509(0x191),'description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':a24_0x560509(0x1a4),'type':'boolean','description':a24_0x560509(0x1a6),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- const a25_0x46bc44=a25_0x1e74;function a25_0x1e74(_0x27ff4d,_0x2dc1cc){_0x27ff4d=_0x27ff4d-0x1a1;const _0x1ddfd1=a25_0x1ddf();let _0x1e748e=_0x1ddfd1[_0x27ff4d];return _0x1e748e;}(function(_0x3a19c7,_0x1acadb){const _0x459e06=a25_0x1e74,_0x5da2f4=_0x3a19c7();while(!![]){try{const _0x25a2c1=parseInt(_0x459e06(0x1b1))/0x1*(-parseInt(_0x459e06(0x1b0))/0x2)+-parseInt(_0x459e06(0x1a9))/0x3+parseInt(_0x459e06(0x1a2))/0x4+-parseInt(_0x459e06(0x1b3))/0x5*(-parseInt(_0x459e06(0x1b6))/0x6)+parseInt(_0x459e06(0x1ad))/0x7+-parseInt(_0x459e06(0x1b2))/0x8+parseInt(_0x459e06(0x1ac))/0x9;if(_0x25a2c1===_0x1acadb)break;else _0x5da2f4['push'](_0x5da2f4['shift']());}catch(_0x49f30b){_0x5da2f4['push'](_0x5da2f4['shift']());}}}(a25_0x1ddf,0x389a4));import{unlinkSync,existsSync}from'node:fs';function a25_0x1ddf(){const _0x4e8124=['!\x20Not\x20logged\x20in','529641iZLBYJ','676571USYAPA','✓\x20Logged\x20out','login','78CmNnaq','4517mRefST','900648xInzoN','5275pSbGHi','boolean','auth','2586afVozZ','yes','1150516aEVIts','nonInteractive','../../auth/auth-server-ui.js','Clear\x20login\x20session','log','bool','logout','1131744TRYszy','Login\x20via\x20browser'];a25_0x1ddf=function(){return _0x4e8124;};return a25_0x1ddf();}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x46bc44(0x1b5),'command':a25_0x46bc44(0x1af),'description':a25_0x46bc44(0x1aa),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x46bc44(0x1a1),'type':a25_0x46bc44(0x1b4),'description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0xf6eab6){const _0x441ce2=a25_0x46bc44,{runAuthServer:_0x507fe6}=await import(_0x441ce2(0x1a4));return await _0x507fe6({'autoYes':_0xf6eab6[_0x441ce2(0x1a7)]('yes'),'nonInteractive':_0xf6eab6[_0x441ce2(0x1a3)]}),{'ok':!![]};}},{'service':a25_0x46bc44(0x1b5),'command':a25_0x46bc44(0x1a8),'description':a25_0x46bc44(0x1a5),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x21f0cb){const _0x2ecab5=a25_0x46bc44;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x2ecab5(0x1a6)](_0x2ecab5(0x1ae))):console[_0x2ecab5(0x1a6)](_0x2ecab5(0x1ab)),{'ok':!![]};}}];
1
+ const a25_0x4711f8=a25_0x5e43;function a25_0x1ef7(){const _0x66d8cf=['yes','14xhJDYG','81543IKpdOg','177470gwflBG','396ojOGWM','10647GjPkfh','log','860730ySgmHd','logout','1420385hehSyn','read','bool','1721172uvYQfv','✓\x20Logged\x20out','1832MOwAZb','login','Clear\x20login\x20session','4SjcRVY','auth','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','18623dgtMJq','!\x20Not\x20logged\x20in','7kOtQkH'];a25_0x1ef7=function(){return _0x66d8cf;};return a25_0x1ef7();}(function(_0x39fbf0,_0x206aa1){const _0x1cc438=a25_0x5e43,_0x45f8de=_0x39fbf0();while(!![]){try{const _0x4d9a92=-parseInt(_0x1cc438(0x12e))/0x1+parseInt(_0x1cc438(0x12c))/0x2*(parseInt(_0x1cc438(0x12d))/0x3)+-parseInt(_0x1cc438(0x125))/0x4*(-parseInt(_0x1cc438(0x134))/0x5)+parseInt(_0x1cc438(0x120))/0x6*(parseInt(_0x1cc438(0x12a))/0x7)+-parseInt(_0x1cc438(0x122))/0x8*(parseInt(_0x1cc438(0x130))/0x9)+-parseInt(_0x1cc438(0x132))/0xa+parseInt(_0x1cc438(0x128))/0xb*(-parseInt(_0x1cc438(0x12f))/0xc);if(_0x4d9a92===_0x206aa1)break;else _0x45f8de['push'](_0x45f8de['shift']());}catch(_0xd95616){_0x45f8de['push'](_0x45f8de['shift']());}}}(a25_0x1ef7,0x29b87));import{unlinkSync,existsSync}from'node:fs';function a25_0x5e43(_0x2ad299,_0x39e530){_0x2ad299=_0x2ad299-0x11e;const _0x1ef70a=a25_0x1ef7();let _0x5e43f8=_0x1ef70a[_0x2ad299];return _0x5e43f8;}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x4711f8(0x126),'command':a25_0x4711f8(0x123),'description':'Login\x20via\x20browser','risk':a25_0x4711f8(0x11e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'yes','type':'boolean','description':a25_0x4711f8(0x127),'default':![]}],async 'execute'(_0x1a3643){const _0x2fbaf4=a25_0x4711f8,{runAuthServer:_0x2be35b}=await import('../../auth/auth-server-ui.js');return await _0x2be35b({'autoYes':_0x1a3643[_0x2fbaf4(0x11f)](_0x2fbaf4(0x12b)),'nonInteractive':_0x1a3643['nonInteractive']}),{'ok':!![]};}},{'service':a25_0x4711f8(0x126),'command':a25_0x4711f8(0x133),'description':a25_0x4711f8(0x124),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x1fa84f){const _0x2ece29=a25_0x4711f8;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x2ece29(0x131)](_0x2ece29(0x121))):console['log'](_0x2ece29(0x129)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a26_0x10fe75=a26_0x5f5c;(function(_0xe7b47b,_0x25f474){const _0x318f5c=a26_0x5f5c,_0xdfcaf5=_0xe7b47b();while(!![]){try{const _0x4b5802=-parseInt(_0x318f5c(0x92))/0x1*(-parseInt(_0x318f5c(0xc8))/0x2)+parseInt(_0x318f5c(0xc1))/0x3+parseInt(_0x318f5c(0xa7))/0x4+parseInt(_0x318f5c(0xa1))/0x5*(-parseInt(_0x318f5c(0xb7))/0x6)+parseInt(_0x318f5c(0xb1))/0x7+parseInt(_0x318f5c(0xa2))/0x8*(-parseInt(_0x318f5c(0x8f))/0x9)+-parseInt(_0x318f5c(0xe2))/0xa;if(_0x4b5802===_0x25f474)break;else _0xdfcaf5['push'](_0xdfcaf5['shift']());}catch(_0x1a8198){_0xdfcaf5['push'](_0xdfcaf5['shift']());}}}(a26_0x4b61,0xde341));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';function a26_0x4b61(){const _0x14030e=['close','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','question','find','create','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','before','Select\x20dataset:','HOOK','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','isInteger','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Dataset\x20not\x20found\x20for\x20code\x20\x22','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','trim','26429000zDSxUn','Operation\x20type\x20(HOOK\x20only)','code','datasetCode','appCode','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','.js','HOOK\x20requires\x20alias/operation/node\x20options.','functionNode','datasetcode','45cmvqIU','\x22\x20not\x20found.\x20','\x0a\x20*\x20[脚本名称]\x20','281GUEYEJ','alias','scriptsRootDir','stderr','Trigger\x20node\x20(HOOK\x20only)','stdin','Created\x20','string','Select\x20operation\x20type:','bff','keys','validation','name','\x20function:\x20','str','2015dnAWqk','92328egCLGh','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','entries','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','map','3600616taoJFH','TODO:\x20add\x20script\x20description','parseInt','Invalid\x20function\x20name\x20\x22','join','tableName','Available:\x20','length','Invalid\x20dataset\x20selection.','\x0a\x20*\x20[触发节点]\x20','8202019devNNo','operationType','Script\x20type','type','Available\x20aliases:\x20','operation-type','11706CvrLkN','apiDir','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','nonInteractive','COMMON','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','description','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','No\x20api.ts\x20found.\x20Run\x20`','.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','4486017ZjpCyS','ENDPOINT','\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','No\x20datasets\x20found\x20for\x20this\x20app.','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','after','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','5906AiGMmo','\x20api\x20pull`\x20to\x20refresh.','Alias\x20\x22','write','utf8','Select\x20trigger\x20node:','Operation\x20type\x20\x22','function-node','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a'];a26_0x4b61=function(){return _0x14030e;};return a26_0x4b61();}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';function a26_0x5f5c(_0x1fa6a1,_0xa4de2e){_0x1fa6a1=_0x1fa6a1-0x8f;const _0x4b61c2=a26_0x4b61();let _0x5f5cfd=_0x4b61c2[_0x1fa6a1];return _0x5f5cfd;}export const bffCreate={'service':a26_0x10fe75(0x9b),'command':a26_0x10fe75(0xd5),'description':a26_0x10fe75(0xa5),'risk':'write','flags':[{'name':'type','type':'string','required':!![],'enum':[a26_0x10fe75(0xbb),a26_0x10fe75(0xc2),a26_0x10fe75(0xda)],'description':a26_0x10fe75(0xb3)},{'name':a26_0x10fe75(0x9e),'type':a26_0x10fe75(0x99),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':'description','type':a26_0x10fe75(0x99),'description':'Script\x20description'},{'name':a26_0x10fe75(0x93),'type':a26_0x10fe75(0x99),'description':a26_0x10fe75(0xbe)},{'name':a26_0x10fe75(0xec),'type':a26_0x10fe75(0x99),'description':a26_0x10fe75(0xbc)},{'name':a26_0x10fe75(0xb6),'type':'string','description':a26_0x10fe75(0xe3)},{'name':a26_0x10fe75(0xcf),'type':a26_0x10fe75(0x99),'description':a26_0x10fe75(0x96),'enum':[a26_0x10fe75(0xd8),a26_0x10fe75(0xc6)]}],async 'validate'(_0x36ca9a){const _0x229b92=a26_0x10fe75,_0x5ca9d5=_0x36ca9a['str'](_0x229b92(0x9e));if(!isValidBffFunctionName(_0x5ca9d5))throw CliErrors[_0x229b92(0x9d)](_0x229b92(0xaa)+_0x5ca9d5+_0x229b92(0xc5));},async 'execute'(_0x3f8a72){const _0x40d8a4=a26_0x10fe75,_0x1d3c70=loadBffProjectConfig(_0x3f8a72[_0x40d8a4(0xe6)]),_0x25c366=_0x3f8a72[_0x40d8a4(0xa0)](_0x40d8a4(0xb4)),_0x49148a=_0x3f8a72[_0x40d8a4(0xa0)](_0x40d8a4(0x9e)),_0x10c999=_0x3f8a72[_0x40d8a4(0xa0)](_0x40d8a4(0xbd))||undefined,_0x1f279a=_0x25c366==='HOOK'?await resolveHookOptions(_0x1d3c70,_0x3f8a72):undefined,_0x5faf0a=buildFilePath(_0x1d3c70,_0x25c366,_0x49148a,_0x1f279a);if(await fileExists(_0x5faf0a))throw CliErrors['validation']('File\x20already\x20exists:\x20'+_0x5faf0a);await mkdir(dirname(_0x5faf0a),{'recursive':!![]});const _0x4b752c=generateTemplate(_0x25c366,_0x49148a,_0x3f8a72[_0x40d8a4(0xe6)],_0x10c999,_0x1f279a);await writeFile(_0x5faf0a,_0x4b752c,_0x40d8a4(0xcc));const _0x4f6094={'type':_0x25c366,'name':_0x49148a,'path':_0x5faf0a};if(_0x10c999)_0x4f6094[_0x40d8a4(0xbd)]=_0x10c999;if(_0x1f279a){if(_0x1f279a[_0x40d8a4(0x93)])_0x4f6094[_0x40d8a4(0x93)]=_0x1f279a[_0x40d8a4(0x93)];_0x4f6094[_0x40d8a4(0xe5)]=_0x1f279a[_0x40d8a4(0xe5)],_0x4f6094[_0x40d8a4(0xb2)]=_0x1f279a[_0x40d8a4(0xb2)],_0x4f6094[_0x40d8a4(0xeb)]=_0x1f279a[_0x40d8a4(0xeb)];}return{'ok':!![],'data':_0x4f6094,'message':_0x40d8a4(0x98)+_0x25c366+_0x40d8a4(0x9f)+_0x49148a};}};async function resolveHookOptions(_0x3d69c6,_0x313f1e){const _0xa53888=a26_0x10fe75,_0x2f285d=loadAliasMap(_0x313f1e['apiDir'],undefined,resolveApiFilePath(_0x313f1e['apiDir'],_0x313f1e['appCode'])),_0x5500d2=_0x2f285d['length']>0x0;let _0x2c1700,_0x3966ba,_0xbcdecb;const _0x4cf9f0=_0x313f1e[_0xa53888(0xa0)](_0xa53888(0x93)),_0x59acda=_0x313f1e[_0xa53888(0xa0)]('datasetcode');if(_0x4cf9f0){const _0x3fc1c2=resolveAlias(_0x313f1e['apiDir'],_0x4cf9f0,undefined,resolveApiFilePath(_0x313f1e[_0xa53888(0xb8)],_0x313f1e[_0xa53888(0xe6)]));if(!_0x3fc1c2){const _0x5b6d64=_0x5500d2?_0xa53888(0xb5)+_0x2f285d[_0xa53888(0xa6)](_0x2f52eb=>_0x2f52eb[_0xa53888(0x93)])['join'](',\x20'):_0xa53888(0xbf)+CLI_BIN_NAME+_0xa53888(0xdb);throw CliErrors[_0xa53888(0x9d)](_0xa53888(0xca)+_0x4cf9f0+_0xa53888(0x90)+_0x5b6d64);}_0x2c1700=_0x4cf9f0,_0x3966ba=_0x3fc1c2;}else{if(_0x59acda){_0x3966ba=_0x59acda;const _0x54e844=_0x2f285d['find'](_0xcf5aa3=>_0xcf5aa3[_0xa53888(0xe5)]===_0x59acda);_0x2c1700=_0x54e844?.[_0xa53888(0x93)];}else{if(_0x313f1e[_0xa53888(0xba)])throw CliErrors[_0xa53888(0x9d)]('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x5500d2){const _0x5eb180=_0x2f285d[_0xa53888(0xa6)](_0x593493=>_0x593493[_0xa53888(0x93)]+'\x20('+_0x593493[_0xa53888(0xac)]+')'),_0x41cc5b=await promptSelect('Select\x20dataset:',_0x5eb180),_0xc139f0=_0x2f285d[_0x41cc5b];if(!_0xc139f0)throw CliErrors[_0xa53888(0x9d)](_0xa53888(0xaf));_0x2c1700=_0xc139f0[_0xa53888(0x93)],_0x3966ba=_0xc139f0[_0xa53888(0xe5)];}else{const _0x54239d=await listDatasets(_0x313f1e[_0xa53888(0xe6)]);if(_0x54239d[_0xa53888(0xae)]===0x0)throw CliErrors[_0xa53888(0x9d)](_0xa53888(0xc4));const _0x3ce240=_0x54239d['map'](_0xfb2ad1=>_0xfb2ad1['name']+'\x20('+_0xfb2ad1[_0xa53888(0xe4)]+')'),_0xcbcf9b=await promptSelect(_0xa53888(0xd9),_0x3ce240),_0x4ae4cd=_0x54239d[_0xcbcf9b];if(!_0x4ae4cd)throw CliErrors['validation'](_0xa53888(0xaf));_0x3966ba=_0x4ae4cd[_0xa53888(0xe4)],_0x2c1700=undefined;}}}}const _0x5230c7=await listDatasets(_0x313f1e[_0xa53888(0xe6)]),_0x49d8cf=_0x5230c7[_0xa53888(0xd4)](_0x1222fa=>_0x1222fa[_0xa53888(0xe4)]===_0x3966ba);if(!_0x49d8cf)throw CliErrors[_0xa53888(0x9d)](_0xa53888(0xdf)+_0x3966ba+'\x22.\x20'+(_0x2c1700?_0xa53888(0xd6)+CLI_BIN_NAME+_0xa53888(0xc9):''));_0xbcdecb=_0x49d8cf['id'];const _0x26d17f=_0x2c1700??_0x3966ba,_0xa71b2e=await listBffDatasetOperations(_0x313f1e[_0xa53888(0xe6)],_0xbcdecb),_0xb7daa8=_0xa71b2e?Object[_0xa53888(0x9c)](_0xa71b2e):[];if(_0xb7daa8[_0xa53888(0xae)]===0x0)throw CliErrors['validation']('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x26d17f+'.');let _0x13b415;const _0x432d4f=_0x313f1e[_0xa53888(0xa0)]('operation-type');if(_0x432d4f){if(!_0xb7daa8['includes'](_0x432d4f))throw CliErrors[_0xa53888(0x9d)](_0xa53888(0xce)+_0x432d4f+'\x22\x20not\x20found\x20for\x20dataset\x20'+_0x26d17f+'.\x20'+(_0xa53888(0xad)+_0xb7daa8[_0xa53888(0xab)](',\x20')));_0x13b415=_0x432d4f;}else{if(_0x313f1e[_0xa53888(0xba)])throw CliErrors[_0xa53888(0x9d)](_0xa53888(0xa3));const _0x2d0ca0=await promptSelect(_0xa53888(0x9a),_0xb7daa8);_0x13b415=_0xb7daa8[_0x2d0ca0]??_0xb7daa8[0x0];}let _0x5a240c=normalizeHookFunctionNode(_0x313f1e[_0xa53888(0xa0)]('function-node'));if(!_0x5a240c){if(_0x313f1e[_0xa53888(0xa0)](_0xa53888(0xcf)))throw CliErrors[_0xa53888(0x9d)](_0xa53888(0xe0));if(_0x313f1e[_0xa53888(0xba)])throw CliErrors[_0xa53888(0x9d)](_0xa53888(0xc7));const _0x442da9=await promptSelect(_0xa53888(0xcd),['before','after']);_0x5a240c=[_0xa53888(0xd8),_0xa53888(0xc6)][_0x442da9]??_0xa53888(0xd8);}return{'alias':_0x2c1700,'datasetCode':_0x3966ba,'datasetId':_0xbcdecb,'operationType':_0x13b415,'functionNode':_0x5a240c};}async function promptSelect(_0x58b268,_0x408497){const _0x27fde8=a26_0x10fe75;if(_0x408497['length']===0x1)return 0x0;for(const [_0x468ede,_0xff3da6]of _0x408497[_0x27fde8(0xa4)]()){process[_0x27fde8(0x95)][_0x27fde8(0xcb)]('\x20\x20'+(_0x468ede+0x1)+'.\x20'+_0xff3da6+'\x0a');}const _0x1250b8=createInterface({'input':process[_0x27fde8(0x97)],'output':process[_0x27fde8(0x95)]});while(!![]){const _0x2831e4=await new Promise(_0x27dc44=>{const _0x3b56f1=_0x27fde8;_0x1250b8[_0x3b56f1(0xd3)](_0x58b268+'\x20',_0x27dc44);}),_0x13da37=Number[_0x27fde8(0xa9)](_0x2831e4[_0x27fde8(0xe1)](),0xa);if(Number[_0x27fde8(0xdc)](_0x13da37)&&_0x13da37>=0x1&&_0x13da37<=_0x408497[_0x27fde8(0xae)])return _0x1250b8[_0x27fde8(0xd1)](),_0x13da37-0x1;process['stderr'][_0x27fde8(0xcb)](_0x27fde8(0xd2)+_0x408497[_0x27fde8(0xae)]+'.\x0a');}}function buildFilePath(_0x24ec42,_0x1595a5,_0x862085,_0x47b4a0){const _0x1aedca=a26_0x10fe75;if(_0x1595a5===_0x1aedca(0xda)){if(!_0x47b4a0)throw CliErrors[_0x1aedca(0x9d)](_0x1aedca(0xea));const _0x412cd8=_0x47b4a0[_0x1aedca(0x93)]??_0x47b4a0[_0x1aedca(0xe5)];return join(_0x24ec42[_0x1aedca(0x94)],'HOOK',_0x412cd8,_0x47b4a0[_0x1aedca(0xb2)],_0x47b4a0[_0x1aedca(0xeb)],_0x862085+_0x1aedca(0xe9));}return join(_0x24ec42['scriptsRootDir'],_0x1595a5,_0x862085+_0x1aedca(0xe9));}export function generateTemplate(_0x2a6c83,_0x5b8af9,_0x575be5,_0x135907,_0x42fc06){const _0x569276=a26_0x10fe75,_0x40450a=_0x135907?.[_0x569276(0xe1)]()||_0x569276(0xa8);if(_0x2a6c83===_0x569276(0xbb))return _0x569276(0xde)+_0x40450a+_0x569276(0x91)+_0x5b8af9+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x5b8af9+_0x569276(0xc0)+_0x5b8af9+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x2a6c83===_0x569276(0xc2))return _0x569276(0xe8)+_0x40450a+_0x569276(0xdd)+_0x575be5+'/'+_0x5b8af9+_0x569276(0xc3)+_0x5b8af9+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(!_0x42fc06)throw CliErrors[_0x569276(0x9d)](_0x569276(0xb9));return'/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x40450a+_0x569276(0xe7)+_0x575be5+'/'+_0x42fc06[_0x569276(0xe5)]+'/'+_0x42fc06[_0x569276(0xb2)]+_0x569276(0xb0)+_0x42fc06[_0x569276(0xeb)]+_0x569276(0xd7)+_0x5b8af9+_0x569276(0xd0);}
1
+ function a26_0xd080(){const _0x43d29b=['ENDPOINT','No\x20api.ts\x20found.\x20Run\x20`','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','COMMON','string','Alias\x20\x22','alias','before','scriptsRootDir','map','3698720rratlH','after','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','Operation\x20type\x20(HOOK\x20only)','Operation\x20type\x20\x22','functionNode','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','bff','utf8','keys','datasetCode','length','create','\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','join','3652230tCWhRN','6282416ZPQHxC','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','nonInteractive','3TsONsI','\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','isInteger','5477900pxgbqI','name','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','2379186rkPfhH','code','Select\x20trigger\x20node:','Select\x20dataset:','tableName','apiDir','parseInt','\x0a\x20*\x20[触发节点]\x20','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Available\x20aliases:\x20','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','write','24271616nIiCrZ','.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','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','function-node','\x20function:\x20','.js','File\x20already\x20exists:\x20','str','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','stderr','HOOK','Available:\x20','721132bWMsop','\x22\x20not\x20found.\x20','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','Invalid\x20dataset\x20selection.','\x20api\x20pull`\x20to\x20refresh.','trim','validation','HOOK\x20requires\x20alias/operation/node\x20options.','operationType','\x22\x20not\x20found\x20for\x20dataset\x20','Select\x20operation\x20type:','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','appCode','datasetcode','operation-type','Trigger\x20node\x20(HOOK\x20only)','find','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','\x0a\x20*\x20[脚本名称]\x20','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','type','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','description'];a26_0xd080=function(){return _0x43d29b;};return a26_0xd080();}const a26_0x5420dc=a26_0x4799;(function(_0x2dfce0,_0x3f0e6b){const _0x3e813b=a26_0x4799,_0x186a8e=_0x2dfce0();while(!![]){try{const _0x116653=parseInt(_0x3e813b(0x181))/0x1+-parseInt(_0x3e813b(0x169))/0x2*(-parseInt(_0x3e813b(0x162))/0x3)+parseInt(_0x3e813b(0x1a3))/0x4+parseInt(_0x3e813b(0x165))/0x5+parseInt(_0x3e813b(0x1b2))/0x6+-parseInt(_0x3e813b(0x1b3))/0x7+-parseInt(_0x3e813b(0x175))/0x8;if(_0x116653===_0x3f0e6b)break;else _0x186a8e['push'](_0x186a8e['shift']());}catch(_0xe355d7){_0x186a8e['push'](_0x186a8e['shift']());}}}(a26_0xd080,0x947fa));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_0x5420dc(0x1aa),'command':a26_0x5420dc(0x1af),'description':a26_0x5420dc(0x177),'risk':'write','flags':[{'name':a26_0x5420dc(0x196),'type':'string','required':!![],'enum':['COMMON',a26_0x5420dc(0x199),a26_0x5420dc(0x17f)],'description':'Script\x20type'},{'name':a26_0x5420dc(0x166),'type':a26_0x5420dc(0x19d),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':a26_0x5420dc(0x198),'type':'string','description':'Script\x20description'},{'name':a26_0x5420dc(0x19f),'type':a26_0x5420dc(0x19d),'description':a26_0x5420dc(0x1a5)},{'name':a26_0x5420dc(0x18e),'type':a26_0x5420dc(0x19d),'description':a26_0x5420dc(0x1a9)},{'name':a26_0x5420dc(0x18f),'type':a26_0x5420dc(0x19d),'description':a26_0x5420dc(0x1a6)},{'name':'function-node','type':a26_0x5420dc(0x19d),'description':a26_0x5420dc(0x190),'enum':['before',a26_0x5420dc(0x1a4)]}],async 'validate'(_0x441b2b){const _0x37ab48=a26_0x5420dc,_0x2e81e2=_0x441b2b['str'](_0x37ab48(0x166));if(!isValidBffFunctionName(_0x2e81e2))throw CliErrors[_0x37ab48(0x187)]('Invalid\x20function\x20name\x20\x22'+_0x2e81e2+_0x37ab48(0x197));},async 'execute'(_0x4dbe1a){const _0x2f5874=a26_0x5420dc,_0x44d671=loadBffProjectConfig(_0x4dbe1a[_0x2f5874(0x18d)]),_0xdca351=_0x4dbe1a[_0x2f5874(0x17c)](_0x2f5874(0x196)),_0x5ff1dd=_0x4dbe1a['str']('name'),_0x368bcb=_0x4dbe1a[_0x2f5874(0x17c)](_0x2f5874(0x198))||undefined,_0x58f7c3=_0xdca351===_0x2f5874(0x17f)?await resolveHookOptions(_0x44d671,_0x4dbe1a):undefined,_0x4b6a8f=buildFilePath(_0x44d671,_0xdca351,_0x5ff1dd,_0x58f7c3);if(await fileExists(_0x4b6a8f))throw CliErrors[_0x2f5874(0x187)](_0x2f5874(0x17b)+_0x4b6a8f);await mkdir(dirname(_0x4b6a8f),{'recursive':!![]});const _0x364ceb=generateTemplate(_0xdca351,_0x5ff1dd,_0x4dbe1a['appCode'],_0x368bcb,_0x58f7c3);await writeFile(_0x4b6a8f,_0x364ceb,_0x2f5874(0x1ab));const _0x43db93={'type':_0xdca351,'name':_0x5ff1dd,'path':_0x4b6a8f};if(_0x368bcb)_0x43db93[_0x2f5874(0x198)]=_0x368bcb;if(_0x58f7c3){if(_0x58f7c3[_0x2f5874(0x19f)])_0x43db93[_0x2f5874(0x19f)]=_0x58f7c3[_0x2f5874(0x19f)];_0x43db93[_0x2f5874(0x1ad)]=_0x58f7c3[_0x2f5874(0x1ad)],_0x43db93[_0x2f5874(0x189)]=_0x58f7c3[_0x2f5874(0x189)],_0x43db93['functionNode']=_0x58f7c3[_0x2f5874(0x1a8)];}return{'ok':!![],'data':_0x43db93,'message':'Created\x20'+_0xdca351+_0x2f5874(0x179)+_0x5ff1dd};}};async function resolveHookOptions(_0xd74259,_0x18e56d){const _0x1aac37=a26_0x5420dc,_0x34f2e0=loadAliasMap(_0x18e56d[_0x1aac37(0x16e)],undefined,resolveApiFilePath(_0x18e56d[_0x1aac37(0x16e)],_0x18e56d['appCode'])),_0x16281d=_0x34f2e0[_0x1aac37(0x1ae)]>0x0;let _0xc6377,_0xd3c401,_0x473586;const _0x8287dd=_0x18e56d[_0x1aac37(0x17c)](_0x1aac37(0x19f)),_0x2f745b=_0x18e56d['str'](_0x1aac37(0x18e));if(_0x8287dd){const _0x4e9b59=resolveAlias(_0x18e56d[_0x1aac37(0x16e)],_0x8287dd,undefined,resolveApiFilePath(_0x18e56d[_0x1aac37(0x16e)],_0x18e56d['appCode']));if(!_0x4e9b59){const _0x25f682=_0x16281d?_0x1aac37(0x172)+_0x34f2e0[_0x1aac37(0x1a2)](_0x572c2c=>_0x572c2c[_0x1aac37(0x19f)])[_0x1aac37(0x1b1)](',\x20'):_0x1aac37(0x19a)+CLI_BIN_NAME+_0x1aac37(0x192);throw CliErrors[_0x1aac37(0x187)](_0x1aac37(0x19e)+_0x8287dd+_0x1aac37(0x182)+_0x25f682);}_0xc6377=_0x8287dd,_0xd3c401=_0x4e9b59;}else{if(_0x2f745b){_0xd3c401=_0x2f745b;const _0x6cc085=_0x34f2e0[_0x1aac37(0x191)](_0x21b5e2=>_0x21b5e2['datasetCode']===_0x2f745b);_0xc6377=_0x6cc085?.['alias'];}else{if(_0x18e56d[_0x1aac37(0x161)])throw CliErrors['validation'](_0x1aac37(0x17d));else{if(_0x16281d){const _0x5e91fc=_0x34f2e0['map'](_0xd47d8c=>_0xd47d8c[_0x1aac37(0x19f)]+'\x20('+_0xd47d8c[_0x1aac37(0x16d)]+')'),_0x2a42d0=await promptSelect(_0x1aac37(0x16c),_0x5e91fc),_0x99cf2f=_0x34f2e0[_0x2a42d0];if(!_0x99cf2f)throw CliErrors['validation'](_0x1aac37(0x184));_0xc6377=_0x99cf2f[_0x1aac37(0x19f)],_0xd3c401=_0x99cf2f[_0x1aac37(0x1ad)];}else{const _0x109249=await listDatasets(_0x18e56d['appCode']);if(_0x109249[_0x1aac37(0x1ae)]===0x0)throw CliErrors[_0x1aac37(0x187)]('No\x20datasets\x20found\x20for\x20this\x20app.');const _0x4b017b=_0x109249[_0x1aac37(0x1a2)](_0x37836f=>_0x37836f[_0x1aac37(0x166)]+'\x20('+_0x37836f[_0x1aac37(0x16a)]+')'),_0x4fb64f=await promptSelect(_0x1aac37(0x16c),_0x4b017b),_0x2296ad=_0x109249[_0x4fb64f];if(!_0x2296ad)throw CliErrors[_0x1aac37(0x187)](_0x1aac37(0x184));_0xd3c401=_0x2296ad[_0x1aac37(0x16a)],_0xc6377=undefined;}}}}const _0x3175e7=await listDatasets(_0x18e56d[_0x1aac37(0x18d)]),_0x3f5db2=_0x3175e7[_0x1aac37(0x191)](_0x10e45a=>_0x10e45a[_0x1aac37(0x16a)]===_0xd3c401);if(!_0x3f5db2)throw CliErrors['validation']('Dataset\x20not\x20found\x20for\x20code\x20\x22'+_0xd3c401+'\x22.\x20'+(_0xc6377?_0x1aac37(0x183)+CLI_BIN_NAME+_0x1aac37(0x185):''));_0x473586=_0x3f5db2['id'];const _0x1afc25=_0xc6377??_0xd3c401,_0x424f67=await listBffDatasetOperations(_0x18e56d[_0x1aac37(0x18d)],_0x473586),_0x32cf1c=_0x424f67?Object[_0x1aac37(0x1ac)](_0x424f67):[];if(_0x32cf1c[_0x1aac37(0x1ae)]===0x0)throw CliErrors[_0x1aac37(0x187)]('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x1afc25+'.');let _0x4dac86;const _0x124ef6=_0x18e56d[_0x1aac37(0x17c)](_0x1aac37(0x18f));if(_0x124ef6){if(!_0x32cf1c['includes'](_0x124ef6))throw CliErrors[_0x1aac37(0x187)](_0x1aac37(0x1a7)+_0x124ef6+_0x1aac37(0x18a)+_0x1afc25+'.\x20'+(_0x1aac37(0x180)+_0x32cf1c['join'](',\x20')));_0x4dac86=_0x124ef6;}else{if(_0x18e56d[_0x1aac37(0x161)])throw CliErrors[_0x1aac37(0x187)](_0x1aac37(0x18c));const _0x341d5c=await promptSelect(_0x1aac37(0x18b),_0x32cf1c);_0x4dac86=_0x32cf1c[_0x341d5c]??_0x32cf1c[0x0];}let _0x53f015=normalizeHookFunctionNode(_0x18e56d['str'](_0x1aac37(0x178)));if(!_0x53f015){if(_0x18e56d[_0x1aac37(0x17c)](_0x1aac37(0x178)))throw CliErrors[_0x1aac37(0x187)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x18e56d[_0x1aac37(0x161)])throw CliErrors['validation'](_0x1aac37(0x171));const _0x5df29b=await promptSelect(_0x1aac37(0x16b),['before',_0x1aac37(0x1a4)]);_0x53f015=[_0x1aac37(0x1a0),_0x1aac37(0x1a4)][_0x5df29b]??'before';}return{'alias':_0xc6377,'datasetCode':_0xd3c401,'datasetId':_0x473586,'operationType':_0x4dac86,'functionNode':_0x53f015};}async function promptSelect(_0x4a74bc,_0x556595){const _0x2d4403=a26_0x5420dc;if(_0x556595['length']===0x1)return 0x0;for(const [_0xd918bf,_0x12c51c]of _0x556595['entries']()){process[_0x2d4403(0x17e)][_0x2d4403(0x174)]('\x20\x20'+(_0xd918bf+0x1)+'.\x20'+_0x12c51c+'\x0a');}const _0x4cd66a=createInterface({'input':process['stdin'],'output':process[_0x2d4403(0x17e)]});while(!![]){const _0x38d7f5=await new Promise(_0x16692c=>{_0x4cd66a['question'](_0x4a74bc+'\x20',_0x16692c);}),_0x5cbabf=Number[_0x2d4403(0x16f)](_0x38d7f5[_0x2d4403(0x186)](),0xa);if(Number[_0x2d4403(0x164)](_0x5cbabf)&&_0x5cbabf>=0x1&&_0x5cbabf<=_0x556595['length'])return _0x4cd66a['close'](),_0x5cbabf-0x1;process[_0x2d4403(0x17e)][_0x2d4403(0x174)]('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x556595[_0x2d4403(0x1ae)]+'.\x0a');}}function a26_0x4799(_0xc5d812,_0x34692d){_0xc5d812=_0xc5d812-0x161;const _0xd080e3=a26_0xd080();let _0x47995e=_0xd080e3[_0xc5d812];return _0x47995e;}function buildFilePath(_0x5aa757,_0xac153e,_0x58a267,_0x308ccc){const _0x2f3a4f=a26_0x5420dc;if(_0xac153e===_0x2f3a4f(0x17f)){if(!_0x308ccc)throw CliErrors[_0x2f3a4f(0x187)](_0x2f3a4f(0x188));const _0x277a22=_0x308ccc[_0x2f3a4f(0x19f)]??_0x308ccc['datasetCode'];return join(_0x5aa757[_0x2f3a4f(0x1a1)],_0x2f3a4f(0x17f),_0x277a22,_0x308ccc['operationType'],_0x308ccc[_0x2f3a4f(0x1a8)],_0x58a267+_0x2f3a4f(0x17a));}return join(_0x5aa757[_0x2f3a4f(0x1a1)],_0xac153e,_0x58a267+_0x2f3a4f(0x17a));}export function generateTemplate(_0x22d8f2,_0x3ab4c5,_0x150fa5,_0x3268f3,_0x5837a0){const _0x59e742=a26_0x5420dc,_0xb45222=_0x3268f3?.['trim']()||'TODO:\x20add\x20script\x20description';if(_0x22d8f2===_0x59e742(0x19c))return _0x59e742(0x195)+_0xb45222+_0x59e742(0x194)+_0x3ab4c5+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x3ab4c5+_0x59e742(0x176)+_0x3ab4c5+_0x59e742(0x167);if(_0x22d8f2===_0x59e742(0x199))return _0x59e742(0x193)+_0xb45222+_0x59e742(0x1b4)+_0x150fa5+'/'+_0x3ab4c5+_0x59e742(0x1b0)+_0x3ab4c5+_0x59e742(0x167);if(!_0x5837a0)throw CliErrors['validation'](_0x59e742(0x168));return _0x59e742(0x19b)+_0xb45222+_0x59e742(0x173)+_0x150fa5+'/'+_0x5837a0['datasetCode']+'/'+_0x5837a0['operationType']+_0x59e742(0x170)+_0x5837a0['functionNode']+_0x59e742(0x163)+_0x3ab4c5+_0x59e742(0x167);}
@@ -1 +1 @@
1
- const a27_0xbee0aa=a27_0x3226;(function(_0x4698f1,_0x51c583){const _0x3c35cc=a27_0x3226,_0x347e09=_0x4698f1();while(!![]){try{const _0x520f50=-parseInt(_0x3c35cc(0xed))/0x1+parseInt(_0x3c35cc(0xc3))/0x2+-parseInt(_0x3c35cc(0xea))/0x3*(parseInt(_0x3c35cc(0xe9))/0x4)+parseInt(_0x3c35cc(0xe3))/0x5*(parseInt(_0x3c35cc(0xd0))/0x6)+parseInt(_0x3c35cc(0xd3))/0x7+parseInt(_0x3c35cc(0xdb))/0x8+-parseInt(_0x3c35cc(0xc5))/0x9*(parseInt(_0x3c35cc(0xce))/0xa);if(_0x520f50===_0x51c583)break;else _0x347e09['push'](_0x347e09['shift']());}catch(_0x3a4a7b){_0x347e09['push'](_0x347e09['shift']());}}}(a27_0x4820,0xee663));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';function a27_0x3226(_0x27904c,_0x267903){_0x27904c=_0x27904c-0xc3;const _0x482005=a27_0x4820();let _0x3226b4=_0x482005[_0x27904c];return _0x3226b4;}import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';function a27_0x4820(){const _0x5ea9f5=['appCode','/api/management/library/scripts/delete','length','5VUXbun','trashDir','map','Deleted\x20','projectRoot','Would\x20delete\x20','4GnMNML','1877256gQeoJo','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','target','1464348atAQCO','Function\x20not\x20found:\x20','1568268LdnUFr','toISOString','9TXjnYj','bff','validation','find','replace','POST','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','functions','BFF\x20lock\x20file\x20not\x20found.','16536350tjyMgr','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','6018762BJwIxw','high-risk-write','<timestamp>','8296260MtUvKm','scriptsRootDir','str','lastSync','delete','string','includes','lockFilePath','13982216miCEVb','remoteId','keys','startsWith','\x20(local\x20file\x20moved\x20to\x20trash)'];a27_0x4820=function(){return _0x5ea9f5;};return a27_0x4820();}import{CliErrors}from'../../errors.js';export const bffDelete={'service':a27_0xbee0aa(0xc6),'command':'delete','description':a27_0xbee0aa(0xcf),'risk':a27_0xbee0aa(0xd1),'flags':[{'name':'target','type':a27_0xbee0aa(0xd8),'required':!![],'description':'Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name'}],async 'validate'(_0x41b82b){const _0x311e05=a27_0xbee0aa,_0x523fbb=loadBffProjectConfig(_0x41b82b['appCode']),_0x364a13=await readBffLockFile(_0x523fbb[_0x311e05(0xda)]);if(!_0x364a13)throw CliErrors[_0x311e05(0xc7)](_0x311e05(0xcb));},async 'dryRun'(_0x2b0711){const _0x1ec0d8=a27_0xbee0aa,_0x2f4440=loadBffProjectConfig(_0x2b0711['appCode']),_0x510220=await readBffLockFile(_0x2f4440[_0x1ec0d8(0xda)]);if(!_0x510220)throw CliErrors[_0x1ec0d8(0xc7)]('BFF\x20lock\x20file\x20not\x20found.');const {appLock:_0x53df7b}=ensureLockScope(_0x510220,_0x2b0711[_0x1ec0d8(0xe0)],_0x2f4440['scriptsRoot'],'delete'),_0x9f954b=_0x2b0711[_0x1ec0d8(0xd5)](_0x1ec0d8(0xec)),_0x1da9e4=Object[_0x1ec0d8(0xdd)](_0x53df7b[_0x1ec0d8(0xcc)]),_0x232064=resolveDeleteTarget(_0x9f954b,_0x1da9e4),_0x3c1b18=_0x53df7b[_0x1ec0d8(0xcc)][_0x232064];if(!_0x3c1b18)throw CliErrors[_0x1ec0d8(0xc7)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x232064+'\x22.');const _0x28499a=resolveLocalFilePathFromLockKey(_0x2f4440,_0x232064),_0x17f563=relative(_0x2f4440[_0x1ec0d8(0xe7)],_0x28499a),_0x1a3efe=join(_0x2f4440[_0x1ec0d8(0xe4)],_0x1ec0d8(0xd2),_0x17f563);return{'method':_0x1ec0d8(0xca),'url':_0x1ec0d8(0xe1),'body':{'appCode':_0x2b0711['appCode'],'target':_0x232064,'remoteId':_0x3c1b18['remoteId'],'localFilePath':_0x28499a,'trashedPath':_0x1a3efe},'description':_0x1ec0d8(0xe8)+_0x232064+_0x1ec0d8(0xeb)};},async 'execute'(_0x281c13){const _0x35b354=a27_0xbee0aa,_0x485b21=loadBffProjectConfig(_0x281c13['appCode']),_0x271a10=await readBffLockFile(_0x485b21['lockFilePath']);if(!_0x271a10)throw CliErrors['validation'](_0x35b354(0xcd));const {lockData:_0x19cccc,appLock:_0x461ada}=ensureLockScope(_0x271a10,_0x281c13[_0x35b354(0xe0)],_0x485b21['scriptsRoot'],_0x35b354(0xd7)),_0x5d33b5=_0x281c13[_0x35b354(0xd5)](_0x35b354(0xec)),_0x33595a=Object[_0x35b354(0xdd)](_0x461ada[_0x35b354(0xcc)]),_0x41d7f9=resolveDeleteTarget(_0x5d33b5,_0x33595a),_0x5c230e=_0x461ada[_0x35b354(0xcc)][_0x41d7f9];if(!_0x5c230e)throw CliErrors[_0x35b354(0xc7)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x41d7f9+'\x22.');await deleteBffScript(_0x5c230e[_0x35b354(0xdc)]),delete _0x461ada[_0x35b354(0xcc)][_0x41d7f9],_0x461ada[_0x35b354(0xd6)]=new Date()[_0x35b354(0xc4)](),await writeBffLockFile(_0x485b21[_0x35b354(0xda)],_0x19cccc);const _0x18bf90=resolveLocalFilePathFromLockKey(_0x485b21,_0x41d7f9);let _0x23b360;await fileExists(_0x18bf90)&&(_0x23b360=await moveToTrash(_0x485b21['projectRoot'],_0x485b21['trashDir'],_0x18bf90),await cleanupEmptyDirectories(dirname(_0x18bf90),_0x485b21[_0x35b354(0xd4)]));const _0x1569a7={'deleted':_0x41d7f9,'remoteId':_0x5c230e[_0x35b354(0xdc)]};if(_0x23b360)_0x1569a7['trashedTo']=_0x23b360;return{'ok':!![],'data':_0x1569a7,'message':_0x35b354(0xe6)+_0x41d7f9+(_0x23b360?_0x35b354(0xdf):'')};}};function resolveDeleteTarget(_0x4be972,_0x2e8017){const _0x1d046a=a27_0xbee0aa;if(_0x4be972[_0x1d046a(0xd9)]('/')){const _0x156cc8=_0x2e8017[_0x1d046a(0xc8)](_0x31bc01=>_0x31bc01===_0x4be972);if(!_0x156cc8)throw CliErrors[_0x1d046a(0xc7)](_0x1d046a(0xee)+_0x4be972);return _0x156cc8;}const _0x3ad944=_0x2e8017['filter'](_0x235cf0=>_0x235cf0['split']('/')['at'](-0x1)===_0x4be972);if(_0x3ad944[_0x1d046a(0xe2)]===0x0)throw CliErrors['validation']('Function\x20not\x20found:\x20'+_0x4be972);if(_0x3ad944['length']>0x1)throw CliErrors[_0x1d046a(0xc7)]('Multiple\x20functions\x20match\x20\x22'+_0x4be972+'\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'+_0x3ad944[_0x1d046a(0xe5)](_0x2b591b=>'\x20\x20-\x20'+_0x2b591b)['join']('\x0a'));return _0x3ad944[0x0];}async function moveToTrash(_0x43328e,_0x19b18d,_0x44c931){const _0x2079d6=a27_0xbee0aa,_0x2d3c53=new Date()['toISOString']()[_0x2079d6(0xc9)](/[:.]/g,'-'),_0x41ffed=relative(_0x43328e,_0x44c931),_0x4b2c8f=join(_0x19b18d,_0x2d3c53,_0x41ffed);return await mkdir(dirname(_0x4b2c8f),{'recursive':!![]}),await rename(_0x44c931,_0x4b2c8f),_0x4b2c8f;}async function cleanupEmptyDirectories(_0xc673cf,_0x25fe93){const _0x158d86=a27_0xbee0aa;let _0x2febd5=resolve(_0xc673cf);const _0x441620=resolve(_0x25fe93);while(_0x2febd5[_0x158d86(0xde)](''+_0x441620+sep)||_0x2febd5===_0x441620){if(_0x2febd5===_0x441620)return;try{const _0x13ec25=await readdir(_0x2febd5);if(_0x13ec25[_0x158d86(0xe2)]>0x0)return;await rmdir(_0x2febd5);}catch{return;}_0x2febd5=dirname(_0x2febd5);}}
1
+ const a27_0x2b02a0=a27_0x4bc6;function a27_0x4bc6(_0x32930b,_0x3e1345){_0x32930b=_0x32930b-0x1b3;const _0x5b62c3=a27_0x5b62();let _0x4bc6b5=_0x5b62c3[_0x32930b];return _0x4bc6b5;}(function(_0xcc2f0e,_0x21a77c){const _0xd5c96=a27_0x4bc6,_0xff5b82=_0xcc2f0e();while(!![]){try{const _0xb1eaee=parseInt(_0xd5c96(0x1b6))/0x1+parseInt(_0xd5c96(0x1de))/0x2+-parseInt(_0xd5c96(0x1cf))/0x3*(-parseInt(_0xd5c96(0x1da))/0x4)+-parseInt(_0xd5c96(0x1c5))/0x5*(parseInt(_0xd5c96(0x1d2))/0x6)+parseInt(_0xd5c96(0x1c9))/0x7+-parseInt(_0xd5c96(0x1d9))/0x8+-parseInt(_0xd5c96(0x1c8))/0x9;if(_0xb1eaee===_0x21a77c)break;else _0xff5b82['push'](_0xff5b82['shift']());}catch(_0x1e76f5){_0xff5b82['push'](_0xff5b82['shift']());}}}(a27_0x5b62,0x3da90));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';export const bffDelete={'service':a27_0x2b02a0(0x1c4),'command':a27_0x2b02a0(0x1bc),'description':a27_0x2b02a0(0x1b9),'risk':'high-risk-write','flags':[{'name':'target','type':a27_0x2b02a0(0x1c1),'required':!![],'description':a27_0x2b02a0(0x1c2)}],async 'validate'(_0x55c240){const _0x1cf650=a27_0x2b02a0,_0x3386db=loadBffProjectConfig(_0x55c240[_0x1cf650(0x1c0)]),_0x22373c=await readBffLockFile(_0x3386db[_0x1cf650(0x1bf)]);if(!_0x22373c)throw CliErrors[_0x1cf650(0x1d4)](_0x1cf650(0x1bd));},async 'dryRun'(_0x4553af){const _0x545bf0=a27_0x2b02a0,_0x29d85c=loadBffProjectConfig(_0x4553af[_0x545bf0(0x1c0)]),_0x44dd78=await readBffLockFile(_0x29d85c[_0x545bf0(0x1bf)]);if(!_0x44dd78)throw CliErrors['validation']('BFF\x20lock\x20file\x20not\x20found.');const {appLock:_0x15d677}=ensureLockScope(_0x44dd78,_0x4553af[_0x545bf0(0x1c0)],_0x29d85c[_0x545bf0(0x1ba)],'delete'),_0x2a46da=_0x4553af[_0x545bf0(0x1dc)](_0x545bf0(0x1bb)),_0x3fcd87=Object['keys'](_0x15d677[_0x545bf0(0x1d0)]),_0x106bf0=resolveDeleteTarget(_0x2a46da,_0x3fcd87),_0xd05d02=_0x15d677[_0x545bf0(0x1d0)][_0x106bf0];if(!_0xd05d02)throw CliErrors[_0x545bf0(0x1d4)](_0x545bf0(0x1d8)+_0x106bf0+'\x22.');const _0x1e3b19=resolveLocalFilePathFromLockKey(_0x29d85c,_0x106bf0),_0x4b17ad=relative(_0x29d85c[_0x545bf0(0x1c7)],_0x1e3b19),_0x3138c4=join(_0x29d85c[_0x545bf0(0x1be)],_0x545bf0(0x1b7),_0x4b17ad);return{'method':_0x545bf0(0x1db),'url':_0x545bf0(0x1e0),'body':{'appCode':_0x4553af[_0x545bf0(0x1c0)],'target':_0x106bf0,'remoteId':_0xd05d02['remoteId'],'localFilePath':_0x1e3b19,'trashedPath':_0x3138c4},'description':_0x545bf0(0x1cb)+_0x106bf0+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'};},async 'execute'(_0x2fa337){const _0x32d900=a27_0x2b02a0,_0x2c1ea8=loadBffProjectConfig(_0x2fa337[_0x32d900(0x1c0)]),_0x47cbd3=await readBffLockFile(_0x2c1ea8[_0x32d900(0x1bf)]);if(!_0x47cbd3)throw CliErrors['validation'](_0x32d900(0x1df));const {lockData:_0x24b661,appLock:_0x175931}=ensureLockScope(_0x47cbd3,_0x2fa337[_0x32d900(0x1c0)],_0x2c1ea8[_0x32d900(0x1ba)],_0x32d900(0x1bc)),_0x4c54a5=_0x2fa337[_0x32d900(0x1dc)](_0x32d900(0x1bb)),_0x50526c=Object[_0x32d900(0x1dd)](_0x175931[_0x32d900(0x1d0)]),_0x3a75b6=resolveDeleteTarget(_0x4c54a5,_0x50526c),_0x4d7d8a=_0x175931[_0x32d900(0x1d0)][_0x3a75b6];if(!_0x4d7d8a)throw CliErrors[_0x32d900(0x1d4)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x3a75b6+'\x22.');await deleteBffScript(_0x4d7d8a[_0x32d900(0x1cd)]),delete _0x175931[_0x32d900(0x1d0)][_0x3a75b6],_0x175931[_0x32d900(0x1d1)]=new Date()[_0x32d900(0x1d5)](),await writeBffLockFile(_0x2c1ea8[_0x32d900(0x1bf)],_0x24b661);const _0x1c6121=resolveLocalFilePathFromLockKey(_0x2c1ea8,_0x3a75b6);let _0x3e7679;await fileExists(_0x1c6121)&&(_0x3e7679=await moveToTrash(_0x2c1ea8[_0x32d900(0x1c7)],_0x2c1ea8[_0x32d900(0x1be)],_0x1c6121),await cleanupEmptyDirectories(dirname(_0x1c6121),_0x2c1ea8[_0x32d900(0x1c6)]));const _0x1d38fc={'deleted':_0x3a75b6,'remoteId':_0x4d7d8a['remoteId']};if(_0x3e7679)_0x1d38fc[_0x32d900(0x1ca)]=_0x3e7679;return{'ok':!![],'data':_0x1d38fc,'message':_0x32d900(0x1d6)+_0x3a75b6+(_0x3e7679?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function a27_0x5b62(){const _0x109a5a=['Would\x20delete\x20','replace','remoteId','startsWith','1204563Rvrasq','functions','lastSync','157926pUrqWa','length','validation','toISOString','Deleted\x20','Multiple\x20functions\x20match\x20\x22','No\x20lock\x20entry\x20found\x20for\x20\x22','3404448HdyRnH','4pPqixt','POST','str','keys','572334HeEMzu','BFF\x20lock\x20file\x20not\x20found.','/api/management/library/scripts/delete','Function\x20not\x20found:\x20','includes','join','108262NhEBRt','<timestamp>','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','scriptsRoot','target','delete','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','trashDir','lockFilePath','appCode','string','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','split','bff','10OSDAIE','scriptsRootDir','projectRoot','5096988cDSdye','3507980OByTmJ','trashedTo'];a27_0x5b62=function(){return _0x109a5a;};return a27_0x5b62();}function resolveDeleteTarget(_0x49406d,_0x217bf6){const _0xb40363=a27_0x2b02a0;if(_0x49406d[_0xb40363(0x1b4)]('/')){const _0x23fe3=_0x217bf6['find'](_0x1bfa3b=>_0x1bfa3b===_0x49406d);if(!_0x23fe3)throw CliErrors['validation'](_0xb40363(0x1b3)+_0x49406d);return _0x23fe3;}const _0x3a0439=_0x217bf6['filter'](_0x50866a=>_0x50866a[_0xb40363(0x1c3)]('/')['at'](-0x1)===_0x49406d);if(_0x3a0439['length']===0x0)throw CliErrors[_0xb40363(0x1d4)]('Function\x20not\x20found:\x20'+_0x49406d);if(_0x3a0439[_0xb40363(0x1d3)]>0x1)throw CliErrors['validation'](_0xb40363(0x1d7)+_0x49406d+_0xb40363(0x1b8)+_0x3a0439['map'](_0xb3b281=>'\x20\x20-\x20'+_0xb3b281)[_0xb40363(0x1b5)]('\x0a'));return _0x3a0439[0x0];}async function moveToTrash(_0x4f18d8,_0x63eef7,_0x2f4e19){const _0x109f0c=a27_0x2b02a0,_0x1ea96e=new Date()[_0x109f0c(0x1d5)]()[_0x109f0c(0x1cc)](/[:.]/g,'-'),_0xb49c43=relative(_0x4f18d8,_0x2f4e19),_0x1f04d0=join(_0x63eef7,_0x1ea96e,_0xb49c43);return await mkdir(dirname(_0x1f04d0),{'recursive':!![]}),await rename(_0x2f4e19,_0x1f04d0),_0x1f04d0;}async function cleanupEmptyDirectories(_0x398a42,_0x23a266){const _0x255e84=a27_0x2b02a0;let _0x5e2597=resolve(_0x398a42);const _0x5f3385=resolve(_0x23a266);while(_0x5e2597[_0x255e84(0x1ce)](''+_0x5f3385+sep)||_0x5e2597===_0x5f3385){if(_0x5e2597===_0x5f3385)return;try{const _0x281cbc=await readdir(_0x5e2597);if(_0x281cbc['length']>0x0)return;await rmdir(_0x5e2597);}catch{return;}_0x5e2597=dirname(_0x5e2597);}}
@@ -1 +1 @@
1
- const a28_0x2edf88=a28_0x5f15;(function(_0xf18485,_0x5b2e6d){const _0x2ac8a=a28_0x5f15,_0x12e48d=_0xf18485();while(!![]){try{const _0x5c487c=parseInt(_0x2ac8a(0x120))/0x1*(-parseInt(_0x2ac8a(0x111))/0x2)+-parseInt(_0x2ac8a(0x126))/0x3+-parseInt(_0x2ac8a(0x116))/0x4+parseInt(_0x2ac8a(0x121))/0x5*(parseInt(_0x2ac8a(0x123))/0x6)+-parseInt(_0x2ac8a(0x11d))/0x7*(parseInt(_0x2ac8a(0x117))/0x8)+-parseInt(_0x2ac8a(0x11c))/0x9+parseInt(_0x2ac8a(0x127))/0xa;if(_0x5c487c===_0x5b2e6d)break;else _0x12e48d['push'](_0x12e48d['shift']());}catch(_0x2ffa1c){_0x12e48d['push'](_0x12e48d['shift']());}}}(a28_0x5ef9,0x6fe5a));import{getBffScriptInfo}from'../../core/api-client.js';function a28_0x5ef9(){const _0x4c8114=['updatedTime','(none)','4664673ukPMfQ','62923mvOTWu','createdTime','verbose','17LbkXnk','36870iEAdIp','num','534GasTde','scriptType','read','181152pPNccX','12877250iCCwdl','20984lhWKaY','scriptContent','Return\x20full\x20raw\x20script\x20object','boolean','number','1871820aLtCXD','232QKunHi','appCode','Get\x20BFF\x20script\x20details\x20by\x20ID'];a28_0x5ef9=function(){return _0x4c8114;};return a28_0x5ef9();}function a28_0x5f15(_0x4ed4f9,_0x235670){_0x4ed4f9=_0x4ed4f9-0x111;const _0x5ef985=a28_0x5ef9();let _0x5f1532=_0x5ef985[_0x4ed4f9];return _0x5f1532;}export const bffDetail={'service':'bff','command':'detail','description':a28_0x2edf88(0x119),'risk':a28_0x2edf88(0x125),'flags':[{'name':'id','type':a28_0x2edf88(0x115),'required':!![],'description':'Script\x20ID'},{'name':a28_0x2edf88(0x11f),'type':a28_0x2edf88(0x114),'description':a28_0x2edf88(0x113)}],async 'execute'(_0x279a7f){const _0x176a13=a28_0x2edf88,_0x50522f=await getBffScriptInfo(_0x279a7f[_0x176a13(0x122)]('id')),_0xd98d8b=_0x279a7f['bool'](_0x176a13(0x11f));if(_0xd98d8b)return{'ok':!![],'data':_0x50522f};return{'ok':!![],'data':{'id':_0x50522f['id'],'appCode':_0x50522f[_0x176a13(0x118)],'scriptType':_0x50522f[_0x176a13(0x124)],'description':_0x50522f['description']||_0x176a13(0x11b),'createdTime':_0x50522f[_0x176a13(0x11e)]??'','updatedTime':_0x50522f[_0x176a13(0x11a)]??'','scriptContent':_0x50522f[_0x176a13(0x112)]??''}};}};
1
+ function a28_0x2edc(_0x90bb34,_0x1d33ea){_0x90bb34=_0x90bb34-0x1a2;const _0x333fde=a28_0x333f();let _0x2edc3e=_0x333fde[_0x90bb34];return _0x2edc3e;}function a28_0x333f(){const _0x2b0c35=['24fNpreI','Script\x20ID','verbose','updatedTime','boolean','bff','createdTime','3399935iERgqc','9QZdCvn','(none)','Get\x20BFF\x20script\x20details\x20by\x20ID','12524536AuZcpd','number','319674XlgLGb','1304348FwnbLM','3573086qDUcDk','9336690hOXpNE','5bTehMP','3PqFuSA','detail','7ATrUiI','6114198bNHTLf'];a28_0x333f=function(){return _0x2b0c35;};return a28_0x333f();}const a28_0x36dce0=a28_0x2edc;(function(_0x1d33bc,_0x436126){const _0x1868cb=a28_0x2edc,_0x107165=_0x1d33bc();while(!![]){try{const _0x197594=parseInt(_0x1868cb(0x1a9))/0x1+-parseInt(_0x1868cb(0x1ab))/0x2*(-parseInt(_0x1868cb(0x1ae))/0x3)+parseInt(_0x1868cb(0x1aa))/0x4*(-parseInt(_0x1868cb(0x1ad))/0x5)+-parseInt(_0x1868cb(0x1b1))/0x6*(-parseInt(_0x1868cb(0x1b0))/0x7)+-parseInt(_0x1868cb(0x1a7))/0x8*(parseInt(_0x1868cb(0x1a4))/0x9)+-parseInt(_0x1868cb(0x1ac))/0xa+-parseInt(_0x1868cb(0x1a3))/0xb*(-parseInt(_0x1868cb(0x1b2))/0xc);if(_0x197594===_0x436126)break;else _0x107165['push'](_0x107165['shift']());}catch(_0x1b26ab){_0x107165['push'](_0x107165['shift']());}}}(a28_0x333f,0xe0251));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x36dce0(0x1b7),'command':a28_0x36dce0(0x1af),'description':a28_0x36dce0(0x1a6),'risk':'read','flags':[{'name':'id','type':a28_0x36dce0(0x1a8),'required':!![],'description':a28_0x36dce0(0x1b3)},{'name':a28_0x36dce0(0x1b4),'type':a28_0x36dce0(0x1b6),'description':'Return\x20full\x20raw\x20script\x20object'}],async 'execute'(_0x241c03){const _0x2031b0=a28_0x36dce0,_0x15dde8=await getBffScriptInfo(_0x241c03['num']('id')),_0x4e15d2=_0x241c03['bool'](_0x2031b0(0x1b4));if(_0x4e15d2)return{'ok':!![],'data':_0x15dde8};return{'ok':!![],'data':{'id':_0x15dde8['id'],'appCode':_0x15dde8['appCode'],'scriptType':_0x15dde8['scriptType'],'description':_0x15dde8['description']||_0x2031b0(0x1a5),'createdTime':_0x15dde8[_0x2031b0(0x1a2)]??'','updatedTime':_0x15dde8[_0x2031b0(0x1b5)]??'','scriptContent':_0x15dde8['scriptContent']??''}};}};
@@ -1 +1 @@
1
- (function(_0x5ae798,_0x521e46){const _0x4f70f7=a29_0xe05c,_0x6b5f25=_0x5ae798();while(!![]){try{const _0x2e87a5=-parseInt(_0x4f70f7(0x1df))/0x1+parseInt(_0x4f70f7(0x1e6))/0x2+-parseInt(_0x4f70f7(0x1e3))/0x3*(parseInt(_0x4f70f7(0x1e4))/0x4)+parseInt(_0x4f70f7(0x1e1))/0x5+-parseInt(_0x4f70f7(0x1e5))/0x6*(-parseInt(_0x4f70f7(0x1e7))/0x7)+-parseInt(_0x4f70f7(0x1e0))/0x8+parseInt(_0x4f70f7(0x1e2))/0x9;if(_0x2e87a5===_0x521e46)break;else _0x6b5f25['push'](_0x6b5f25['shift']());}catch(_0x797222){_0x6b5f25['push'](_0x6b5f25['shift']());}}}(a29_0xa7ce,0xd0f92));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';function a29_0xe05c(_0x4720cc,_0x10900e){_0x4720cc=_0x4720cc-0x1df;const _0xa7ce30=a29_0xa7ce();let _0xe05ce=_0xa7ce30[_0x4720cc];return _0xe05ce;}import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';function a29_0xa7ce(){const _0x3316a9=['6WaSjDk','2439988tLmyAv','7380042ieqyjb','1559498XIOaXs','7myFIom','1349340OSceyv','10459736ydXemy','1107445VrpvzP','22513590mMHDUY'];a29_0xa7ce=function(){return _0x3316a9;};return a29_0xa7ce();}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(_0x375eb5,_0x5c208f){const _0x1babf4=a29_0x4ada,_0x113b5c=_0x375eb5();while(!![]){try{const _0x4b0bf4=parseInt(_0x1babf4(0x145))/0x1+parseInt(_0x1babf4(0x14d))/0x2+-parseInt(_0x1babf4(0x14b))/0x3+-parseInt(_0x1babf4(0x148))/0x4+parseInt(_0x1babf4(0x14e))/0x5*(parseInt(_0x1babf4(0x14a))/0x6)+parseInt(_0x1babf4(0x14c))/0x7*(parseInt(_0x1babf4(0x149))/0x8)+parseInt(_0x1babf4(0x146))/0x9*(parseInt(_0x1babf4(0x147))/0xa);if(_0x4b0bf4===_0x5c208f)break;else _0x113b5c['push'](_0x113b5c['shift']());}catch(_0x547ba2){_0x113b5c['push'](_0x113b5c['shift']());}}}(a29_0x53b2,0x67796));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';function a29_0x4ada(_0x2d4918,_0x4b2c42){_0x2d4918=_0x2d4918-0x145;const _0x53b218=a29_0x53b2();let _0x4ada9d=_0x53b218[_0x2d4918];return _0x4ada9d;}import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';function a29_0x53b2(){const _0x36c73e=['443343gVVKRJ','18JZtuwl','447620kFWzSM','2736260cHqQJO','8yQoUUr','426jBMbtg','1813323pJFjfh','3358859FTNdmW','323330TrRWjO','37885sEpApv'];a29_0x53b2=function(){return _0x36c73e;};return a29_0x53b2();}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_0x42f2a1=a30_0x23a9;function a30_0x3af6(){const _0x1eac78=['2996966chyVWV','map','name','(unnamed)','bff','1546712eHRFhR','boolean','functionName','length','appCode','Script\x20type\x20filter','verbose','Return\x20full\x20script\x20objects','No\x20BFF\x20scripts\x20found.','580046MbQHOt','description','1368750fVDfii','scriptType','314334RbwmKQ','List\x20BFF\x20scripts','ENDPOINT','string','1341856Tvhrim','3225390YqWKgN','6wPKomL','read','list','str'];a30_0x3af6=function(){return _0x1eac78;};return a30_0x3af6();}(function(_0x379dad,_0x581f0f){const _0x1af86c=a30_0x23a9,_0x5129e3=_0x379dad();while(!![]){try{const _0x76a3cc=-parseInt(_0x1af86c(0x103))/0x1+parseInt(_0x1af86c(0x107))/0x2+-parseInt(_0x1af86c(0x105))/0x3+parseInt(_0x1af86c(0x116))/0x4+parseInt(_0x1af86c(0x10c))/0x5+parseInt(_0x1af86c(0x10d))/0x6*(parseInt(_0x1af86c(0x111))/0x7)+-parseInt(_0x1af86c(0x10b))/0x8;if(_0x76a3cc===_0x581f0f)break;else _0x5129e3['push'](_0x5129e3['shift']());}catch(_0x58d181){_0x5129e3['push'](_0x5129e3['shift']());}}}(a30_0x3af6,0x64d69));function a30_0x23a9(_0x505672,_0x2a8272){_0x505672=_0x505672-0xfc;const _0x3af6b7=a30_0x3af6();let _0x23a9d7=_0x3af6b7[_0x505672];return _0x23a9d7;}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x42f2a1(0x115),'command':a30_0x42f2a1(0x10f),'description':a30_0x42f2a1(0x108),'risk':a30_0x42f2a1(0x10e),'flags':[{'name':'type','type':'string','description':a30_0x42f2a1(0xff),'default':'ENDPOINT','enum':[a30_0x42f2a1(0x109),'COMMON']},{'name':a30_0x42f2a1(0x113),'type':a30_0x42f2a1(0x10a),'description':'Filter\x20by\x20script\x20name'},{'name':a30_0x42f2a1(0x100),'type':a30_0x42f2a1(0x117),'description':a30_0x42f2a1(0x101)}],async 'execute'(_0x386361){const _0x58ffe9=a30_0x42f2a1,_0x484332=await listBffScripts(_0x386361[_0x58ffe9(0xfe)],_0x386361[_0x58ffe9(0x110)]('type'),{'scriptName':_0x386361[_0x58ffe9(0x110)](_0x58ffe9(0x113))||undefined}),_0xa57ead=_0x386361['bool']('verbose');return{'ok':!![],'data':_0xa57ead?_0x484332:_0x484332[_0x58ffe9(0x112)](_0x3c1e10=>({'id':_0x3c1e10['id'],'functionName':_0x3c1e10[_0x58ffe9(0xfc)]??'','description':_0x3c1e10[_0x58ffe9(0x104)]||_0x58ffe9(0x114),'scriptType':_0x3c1e10[_0x58ffe9(0x106)]})),'message':_0x484332[_0x58ffe9(0xfd)]===0x0?_0x58ffe9(0x102):undefined};}};
1
+ function a30_0x198a(){const _0x461114=['functionName','262075doawgw','2250648ohwFrY','Filter\x20by\x20script\x20name','(unnamed)','430FKlFZH','scriptType','bool','COMMON','appCode','read','35sVXAtm','string','boolean','306198QhbaAP','Script\x20type\x20filter','Return\x20full\x20script\x20objects','ENDPOINT','24vVNGzO','1684768qFHZWV','name','List\x20BFF\x20scripts','str','type','176PDqCJU','43384rQxwXf','description','1700468oHiTRK','22179odPeIK'];a30_0x198a=function(){return _0x461114;};return a30_0x198a();}const a30_0x2344ae=a30_0x163b;(function(_0xa6d8b8,_0x4337e4){const _0x340a8e=a30_0x163b,_0x19d647=_0xa6d8b8();while(!![]){try{const _0x27daf6=parseInt(_0x340a8e(0x15b))/0x1*(-parseInt(_0x340a8e(0x162))/0x2)+-parseInt(_0x340a8e(0x165))/0x3*(parseInt(_0x340a8e(0x161))/0x4)+parseInt(_0x340a8e(0x171))/0x5*(parseInt(_0x340a8e(0x157))/0x6)+-parseInt(_0x340a8e(0x164))/0x7+-parseInt(_0x340a8e(0x15c))/0x8+parseInt(_0x340a8e(0x168))/0x9+-parseInt(_0x340a8e(0x16b))/0xa*(-parseInt(_0x340a8e(0x167))/0xb);if(_0x27daf6===_0x4337e4)break;else _0x19d647['push'](_0x19d647['shift']());}catch(_0x452250){_0x19d647['push'](_0x19d647['shift']());}}}(a30_0x198a,0x51246));import{listBffScripts}from'../../core/api-client.js';function a30_0x163b(_0x2b0e2e,_0x7e4747){_0x2b0e2e=_0x2b0e2e-0x157;const _0x198a65=a30_0x198a();let _0x163b17=_0x198a65[_0x2b0e2e];return _0x163b17;}export const bffList={'service':'bff','command':'list','description':a30_0x2344ae(0x15e),'risk':a30_0x2344ae(0x170),'flags':[{'name':a30_0x2344ae(0x160),'type':a30_0x2344ae(0x172),'description':a30_0x2344ae(0x158),'default':a30_0x2344ae(0x15a),'enum':[a30_0x2344ae(0x15a),a30_0x2344ae(0x16e)]},{'name':'name','type':'string','description':a30_0x2344ae(0x169)},{'name':'verbose','type':a30_0x2344ae(0x173),'description':a30_0x2344ae(0x159)}],async 'execute'(_0x10cc95){const _0xa3789=a30_0x2344ae,_0x1a2255=await listBffScripts(_0x10cc95[_0xa3789(0x16f)],_0x10cc95[_0xa3789(0x15f)](_0xa3789(0x160)),{'scriptName':_0x10cc95[_0xa3789(0x15f)](_0xa3789(0x15d))||undefined}),_0x1dd393=_0x10cc95[_0xa3789(0x16d)]('verbose');return{'ok':!![],'data':_0x1dd393?_0x1a2255:_0x1a2255['map'](_0x1fa7fe=>({'id':_0x1fa7fe['id'],'functionName':_0x1fa7fe[_0xa3789(0x166)]??'','description':_0x1fa7fe[_0xa3789(0x163)]||_0xa3789(0x16a),'scriptType':_0x1fa7fe[_0xa3789(0x16c)]})),'message':_0x1a2255['length']===0x0?'No\x20BFF\x20scripts\x20found.':undefined};}};
@@ -1 +1 @@
1
- const a31_0xe37ac4=a31_0x2d2b;(function(_0x540bc9,_0x61d29d){const _0x14f1fc=a31_0x2d2b,_0x530986=_0x540bc9();while(!![]){try{const _0x3d6ed2=-parseInt(_0x14f1fc(0x170))/0x1+parseInt(_0x14f1fc(0x191))/0x2*(parseInt(_0x14f1fc(0x151))/0x3)+-parseInt(_0x14f1fc(0x181))/0x4+parseInt(_0x14f1fc(0x174))/0x5*(-parseInt(_0x14f1fc(0x178))/0x6)+parseInt(_0x14f1fc(0x16b))/0x7+parseInt(_0x14f1fc(0x163))/0x8*(parseInt(_0x14f1fc(0x150))/0x9)+parseInt(_0x14f1fc(0x187))/0xa;if(_0x3d6ed2===_0x61d29d)break;else _0x530986['push'](_0x530986['shift']());}catch(_0x5d78a3){_0x530986['push'](_0x530986['shift']());}}}(a31_0x9522,0x98e09));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';function a31_0x2d2b(_0x4e658f,_0x51c350){_0x4e658f=_0x4e658f-0x14e;const _0x952223=a31_0x9522();let _0x2d2b33=_0x952223[_0x4e658f];return _0x2d2b33;}import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0xe37ac4(0x15f),'command':a31_0xe37ac4(0x159),'description':a31_0xe37ac4(0x162),'risk':a31_0xe37ac4(0x18b),'flags':[{'name':a31_0xe37ac4(0x156),'type':a31_0xe37ac4(0x192),'description':a31_0xe37ac4(0x180),'enum':[a31_0xe37ac4(0x17b),a31_0xe37ac4(0x18d),a31_0xe37ac4(0x172)]},{'name':a31_0xe37ac4(0x152),'type':a31_0xe37ac4(0x15c),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x360f81){const _0x2d16a0=a31_0xe37ac4,_0x50bc33=loadBffProjectConfig(_0x360f81['appCode']),_0x391038=await readBffLockFile(_0x50bc33['lockFilePath']),{appLock:_0x71ca94}=ensureLockScope(_0x391038??createEmptyBffLock(),_0x360f81[_0x2d16a0(0x164)],_0x50bc33[_0x2d16a0(0x154)],'pull'),_0x590dcc=normalizeBffType(_0x360f81[_0x2d16a0(0x199)]('type'))??undefined,_0x439413=buildDatasetCodeToAliasMap(_0x360f81[_0x2d16a0(0x188)],_0x360f81['appCode']),[_0x51da08,_0x1c481e]=await Promise[_0x2d16a0(0x161)]([listBffScripts(_0x360f81[_0x2d16a0(0x164)],_0x590dcc),getBffScriptStatistics(_0x360f81[_0x2d16a0(0x164)])]),_0x687fa3=createHookLocationMap(_0x1c481e),_0x266fa7=[];for(const _0x541e4f of _0x51da08){const _0x22d0bd=resolveRemoteScriptTarget(_0x50bc33,_0x541e4f,_0x687fa3,_0x71ca94[_0x2d16a0(0x158)],_0x439413);if(!_0x22d0bd){_0x266fa7[_0x2d16a0(0x14e)]({'scriptType':_0x541e4f[_0x2d16a0(0x16d)],'functionName':_0x541e4f['functionName']??'','status':_0x2d16a0(0x194),'reason':_0x2d16a0(0x16f)});continue;}const _0x4fa314=_0x71ca94[_0x2d16a0(0x158)][_0x22d0bd['lockKey']],_0x290eb4=_0x541e4f[_0x2d16a0(0x197)]!=null?computeContentHash(_0x541e4f['scriptContent']):undefined,_0x3fef3b=await hasUnsyncedLocalChanges(_0x22d0bd[_0x2d16a0(0x182)],_0x4fa314,_0x290eb4);_0x266fa7[_0x2d16a0(0x14e)]({'lockKey':_0x22d0bd['lockKey'],'filePath':_0x22d0bd[_0x2d16a0(0x182)],'remoteId':_0x541e4f['id']??null,'status':_0x3fef3b?_0x2d16a0(0x18c):_0x2d16a0(0x16e)});}return{'method':_0x2d16a0(0x193),'url':_0x2d16a0(0x16a)+_0x360f81[_0x2d16a0(0x164)]+(_0x590dcc?_0x2d16a0(0x15d)+_0x590dcc:''),'body':{'appCode':_0x360f81[_0x2d16a0(0x164)],'filterType':_0x590dcc??null,'files':_0x266fa7},'description':_0x2d16a0(0x183)+_0x266fa7[_0x2d16a0(0x167)]+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x52b870){const _0x4d551a=a31_0xe37ac4,_0x459df4=loadBffProjectConfig(_0x52b870[_0x4d551a(0x164)]),_0x230127=await readBffLockFile(_0x459df4[_0x4d551a(0x15e)]),{lockData:_0x2be58a,appLock:_0x1d74f7}=ensureLockScope(_0x230127??createEmptyBffLock(),_0x52b870[_0x4d551a(0x164)],_0x459df4[_0x4d551a(0x154)],_0x4d551a(0x159)),_0x505ae9=normalizeBffType(_0x52b870['str'](_0x4d551a(0x156)))??undefined;if(_0x52b870['str'](_0x4d551a(0x156))&&!_0x505ae9)throw CliErrors[_0x4d551a(0x196)](_0x4d551a(0x185));const [_0x473ee1,_0x5162ce]=await Promise[_0x4d551a(0x161)]([listBffScripts(_0x52b870[_0x4d551a(0x164)],_0x505ae9),getBffScriptStatistics(_0x52b870[_0x4d551a(0x164)])]);if(_0x473ee1[_0x4d551a(0x167)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x4d551a(0x195)};const _0x8b5085=_0x52b870['bool'](_0x4d551a(0x152));if(_0x8b5085&&!_0x52b870['nonInteractive']){const _0x2bcf2b=await confirmForce();if(!_0x2bcf2b)throw CliErrors[_0x4d551a(0x189)](_0x4d551a(0x153));}if(_0x8b5085&&_0x52b870[_0x4d551a(0x17e)]){}const _0x2e7849=buildDatasetCodeToAliasMap(_0x52b870[_0x4d551a(0x188)],_0x52b870[_0x4d551a(0x164)]),_0x240534=createHookLocationMap(_0x5162ce),_0x18f9ea=JSON[_0x4d551a(0x166)](JSON[_0x4d551a(0x14f)](_0x2be58a)),_0x23ccd4=_0x52b870[_0x4d551a(0x164)],_0x166491=_0x18f9ea[_0x4d551a(0x173)][_0x23ccd4];if(!_0x166491)throw new Error(_0x4d551a(0x15a)+_0x23ccd4+_0x4d551a(0x190));const _0x19f63f=[],_0xb62d1=[],_0x2d5e9c=[];for(const _0x5958e9 of _0x473ee1){const _0x47a7e4=resolveRemoteScriptTarget(_0x459df4,_0x5958e9,_0x240534,_0x1d74f7[_0x4d551a(0x158)],_0x2e7849);if(!_0x47a7e4){_0xb62d1[_0x4d551a(0x14e)]({'lockKey':_0x5958e9[_0x4d551a(0x16d)]+'/'+_0x5958e9['functionName'],'reason':_0x4d551a(0x16f)});continue;}const _0x566f4d=_0x1d74f7[_0x4d551a(0x158)][_0x47a7e4[_0x4d551a(0x17a)]];try{if(!_0x5958e9['id'])throw new Error(_0x4d551a(0x160));if(_0x5958e9[_0x4d551a(0x197)]==null)throw new Error(_0x4d551a(0x165));const _0x5f16cf=_0x5958e9[_0x4d551a(0x197)],_0x55d091=computeContentHash(_0x5f16cf);if(!_0x8b5085){const _0x4ee05a=await hasUnsyncedLocalChanges(_0x47a7e4[_0x4d551a(0x182)],_0x566f4d,_0x55d091);if(_0x4ee05a){_0xb62d1[_0x4d551a(0x14e)]({'lockKey':_0x47a7e4[_0x4d551a(0x17a)],'reason':_0x4d551a(0x198)});continue;}}await ensureParentDirectory(_0x47a7e4[_0x4d551a(0x182)]),await writeFile(_0x47a7e4[_0x4d551a(0x182)],_0x5f16cf,_0x4d551a(0x18a));const _0x5c0b60={'hash':_0x55d091,'remoteId':_0x5958e9['id'],'version':_0x5958e9[_0x4d551a(0x155)]};_0x47a7e4[_0x4d551a(0x156)]===_0x4d551a(0x172)&&_0x47a7e4['hookLocation']&&(_0x5c0b60['alias']=_0x47a7e4[_0x4d551a(0x186)][_0x4d551a(0x15b)],_0x5c0b60[_0x4d551a(0x17c)]=_0x47a7e4['hookLocation']['datasetCode'],_0x5c0b60[_0x4d551a(0x169)]=_0x47a7e4[_0x4d551a(0x186)][_0x4d551a(0x169)],_0x5c0b60[_0x4d551a(0x157)]=_0x47a7e4[_0x4d551a(0x186)][_0x4d551a(0x157)]),_0x166491[_0x4d551a(0x158)][_0x47a7e4[_0x4d551a(0x17a)]]=_0x5c0b60,_0x19f63f['push']({'lockKey':_0x47a7e4['lockKey'],'remoteId':_0x5958e9['id']});}catch(_0x1efbba){_0x2d5e9c['push']({'lockKey':_0x47a7e4['lockKey'],'error':_0x1efbba instanceof Error?_0x1efbba[_0x4d551a(0x17d)]:String(_0x1efbba)});}}return _0x166491['lastSync']=new Date()[_0x4d551a(0x177)](),await writeBffLockFile(_0x459df4[_0x4d551a(0x15e)],_0x18f9ea),{'ok':_0x2d5e9c[_0x4d551a(0x167)]===0x0,'data':{'pulled':_0x19f63f,'skipped':_0xb62d1,'failed':_0x2d5e9c},'message':_0x4d551a(0x184)+_0x19f63f[_0x4d551a(0x167)]+_0x4d551a(0x18f)+_0xb62d1[_0x4d551a(0x167)]+'\x20skipped,\x20'+_0x2d5e9c[_0x4d551a(0x167)]+_0x4d551a(0x18e)};}};async function hasUnsyncedLocalChanges(_0x1cbb45,_0x3c3781,_0x541eee){const _0x1c36f1=a31_0xe37ac4;if(!await fileExists(_0x1cbb45))return![];const _0x2b11e3=await computeFileHash(_0x1cbb45);if(!_0x3c3781)return _0x541eee?_0x2b11e3!==_0x541eee:!![];return _0x2b11e3!==_0x3c3781[_0x1c36f1(0x179)];}function buildDatasetCodeToAliasMap(_0x73f2,_0x1fd947){const _0x4a28e2=a31_0xe37ac4,_0x3554df=loadAliasMap(_0x73f2,undefined,resolveApiFilePath(_0x73f2,_0x1fd947));return new Map(_0x3554df[_0x4a28e2(0x17f)](_0x269394=>[_0x269394[_0x4a28e2(0x17c)],_0x269394['alias']]));}function a31_0x9522(){const _0x51be18=['bff','Remote\x20script\x20missing\x20id.','all','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','536ZBcsip','appCode','Remote\x20script\x20missing\x20content.','parse','length','toLowerCase','operationType','/api/management/library/scripts/list?appCode=','945273TtPELj','includes','scriptType','would_pull','unresolvable\x20target\x20path','334790gVUamB','stdin','HOOK','apps','5ahGCeQ','stderr','question','toISOString','1439058FqUWxu','hash','lockKey','COMMON','datasetCode','message','nonInteractive','map','Pull\x20only\x20this\x20script\x20type','4070236ojRFgR','filePath','Would\x20inspect\x20','Pull\x20complete:\x20','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','hookLocation','11269810NQzpvh','apiDir','cancelled','utf8','write','conflict','ENDPOINT','\x20failed','\x20pulled,\x20','\x22\x20not\x20found\x20after\x20ensureLockScope.','2IBMUwJ','string','GET','skipped','No\x20remote\x20BFF\x20scripts\x20found.','validation','scriptContent','local\x20unsynced\x20changes','str','push','stringify','124263xeLIma','93864JxdonS','force','Force\x20pull\x20cancelled.','scriptsRoot','version','type','functionNode','functions','pull','Lock\x20scope\x20for\x20app\x20\x22','alias','boolean','&type=','lockFilePath'];a31_0x9522=function(){return _0x51be18;};return a31_0x9522();}async function confirmForce(){const _0x3a57d7=a31_0xe37ac4,_0x351e70=createInterface({'input':process[_0x3a57d7(0x171)],'output':process[_0x3a57d7(0x175)]}),_0x3bb745=await new Promise(_0x7c2dad=>{const _0x56b65e=_0x3a57d7;_0x351e70[_0x56b65e(0x176)]('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0x7c2dad);});return _0x351e70['close'](),['y','yes'][_0x3a57d7(0x16c)](_0x3bb745['trim']()[_0x3a57d7(0x168)]());}
1
+ function a31_0x2237(_0x1c5d50,_0x42d050){_0x1c5d50=_0x1c5d50-0xff;const _0x51418c=a31_0x5141();let _0x22374d=_0x51418c[_0x1c5d50];return _0x22374d;}const a31_0x32d92e=a31_0x2237;(function(_0x59bc75,_0x3d0dd8){const _0x503163=a31_0x2237,_0x378e80=_0x59bc75();while(!![]){try{const _0x3a9356=parseInt(_0x503163(0x122))/0x1*(-parseInt(_0x503163(0x100))/0x2)+parseInt(_0x503163(0x104))/0x3+-parseInt(_0x503163(0x11d))/0x4+parseInt(_0x503163(0x13d))/0x5*(-parseInt(_0x503163(0x103))/0x6)+-parseInt(_0x503163(0x102))/0x7+-parseInt(_0x503163(0x13a))/0x8*(parseInt(_0x503163(0x12f))/0x9)+parseInt(_0x503163(0x112))/0xa;if(_0x3a9356===_0x3d0dd8)break;else _0x378e80['push'](_0x378e80['shift']());}catch(_0x27b061){_0x378e80['push'](_0x378e80['shift']());}}}(a31_0x5141,0x727ab));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';function a31_0x5141(){const _0x5a32b1=['Pull\x20remote\x20BFF\x20scripts\x20to\x20local','skipped','Pull\x20complete:\x20','4kjLAfT','hash','1690969qRcDpB','369042Gujxqq','2614317kTopjo','length','Pull\x20only\x20this\x20script\x20type','question','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','functions','conflict','scriptType','stringify','Would\x20inspect\x20','operationType','Force\x20pull\x20cancelled.','COMMON','pull','14963260jIacHN','close','\x20skipped,\x20','functionNode','Force\x20overwrite\x20local\x20unsynced\x20changes','Lock\x20scope\x20for\x20app\x20\x22','GET','/api/management/library/scripts/list?appCode=','unresolvable\x20target\x20path','version','str','677304dtBDNt','scriptContent','filePath','includes','type','273363YzhDlD','lockKey','force','stderr','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','stdin','trim','write','yes','bff','map','alias','Remote\x20script\x20missing\x20content.','126PmLEzE','string','apps','boolean','appCode','datasetCode','\x20failed','push','\x20remote\x20BFF\x20script(s)\x20for\x20pull','apiDir','validation','10648nanEbq','lockFilePath','would_pull','75OIKSvn','scriptsRoot','lastSync','functionName','hookLocation','bool','Remote\x20script\x20missing\x20id.','all','toISOString','HOOK','&type=','\x22\x20not\x20found\x20after\x20ensureLockScope.'];a31_0x5141=function(){return _0x5a32b1;};return a31_0x5141();}import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0x32d92e(0x12b),'command':a31_0x32d92e(0x111),'description':a31_0x32d92e(0x149),'risk':a31_0x32d92e(0x129),'flags':[{'name':'type','type':a31_0x32d92e(0x130),'description':a31_0x32d92e(0x106),'enum':[a31_0x32d92e(0x110),'ENDPOINT',a31_0x32d92e(0x146)]},{'name':a31_0x32d92e(0x124),'type':a31_0x32d92e(0x132),'description':a31_0x32d92e(0x116)}],async 'dryRun'(_0x4d3700){const _0x3ee435=a31_0x32d92e,_0x568273=loadBffProjectConfig(_0x4d3700[_0x3ee435(0x133)]),_0x1a7b61=await readBffLockFile(_0x568273[_0x3ee435(0x13b)]),{appLock:_0x2e17cc}=ensureLockScope(_0x1a7b61??createEmptyBffLock(),_0x4d3700['appCode'],_0x568273[_0x3ee435(0x13e)],_0x3ee435(0x111)),_0x7f42f3=normalizeBffType(_0x4d3700[_0x3ee435(0x11c)](_0x3ee435(0x121)))??undefined,_0x49854d=buildDatasetCodeToAliasMap(_0x4d3700[_0x3ee435(0x138)],_0x4d3700['appCode']),[_0x47196e,_0x3c978c]=await Promise[_0x3ee435(0x144)]([listBffScripts(_0x4d3700[_0x3ee435(0x133)],_0x7f42f3),getBffScriptStatistics(_0x4d3700[_0x3ee435(0x133)])]),_0x1b2de9=createHookLocationMap(_0x3c978c),_0xa4109e=[];for(const _0x459462 of _0x47196e){const _0x112c73=resolveRemoteScriptTarget(_0x568273,_0x459462,_0x1b2de9,_0x2e17cc[_0x3ee435(0x109)],_0x49854d);if(!_0x112c73){_0xa4109e[_0x3ee435(0x136)]({'scriptType':_0x459462[_0x3ee435(0x10b)],'functionName':_0x459462[_0x3ee435(0x140)]??'','status':_0x3ee435(0x14a),'reason':_0x3ee435(0x11a)});continue;}const _0x48e3c5=_0x2e17cc['functions'][_0x112c73[_0x3ee435(0x123)]],_0x241202=_0x459462[_0x3ee435(0x11e)]!=null?computeContentHash(_0x459462[_0x3ee435(0x11e)]):undefined,_0x1ad818=await hasUnsyncedLocalChanges(_0x112c73[_0x3ee435(0x11f)],_0x48e3c5,_0x241202);_0xa4109e['push']({'lockKey':_0x112c73[_0x3ee435(0x123)],'filePath':_0x112c73[_0x3ee435(0x11f)],'remoteId':_0x459462['id']??null,'status':_0x1ad818?_0x3ee435(0x10a):_0x3ee435(0x13c)});}return{'method':_0x3ee435(0x118),'url':_0x3ee435(0x119)+_0x4d3700[_0x3ee435(0x133)]+(_0x7f42f3?_0x3ee435(0x147)+_0x7f42f3:''),'body':{'appCode':_0x4d3700['appCode'],'filterType':_0x7f42f3??null,'files':_0xa4109e},'description':_0x3ee435(0x10d)+_0xa4109e[_0x3ee435(0x105)]+_0x3ee435(0x137)};},async 'execute'(_0x407060){const _0x144ede=a31_0x32d92e,_0x5c8920=loadBffProjectConfig(_0x407060[_0x144ede(0x133)]),_0x5bd479=await readBffLockFile(_0x5c8920[_0x144ede(0x13b)]),{lockData:_0x1aa316,appLock:_0x375074}=ensureLockScope(_0x5bd479??createEmptyBffLock(),_0x407060[_0x144ede(0x133)],_0x5c8920[_0x144ede(0x13e)],_0x144ede(0x111)),_0x240c4e=normalizeBffType(_0x407060[_0x144ede(0x11c)]('type'))??undefined;if(_0x407060['str'](_0x144ede(0x121))&&!_0x240c4e)throw CliErrors[_0x144ede(0x139)](_0x144ede(0x108));const [_0x20c8ff,_0x3ff532]=await Promise[_0x144ede(0x144)]([listBffScripts(_0x407060[_0x144ede(0x133)],_0x240c4e),getBffScriptStatistics(_0x407060[_0x144ede(0x133)])]);if(_0x20c8ff[_0x144ede(0x105)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20BFF\x20scripts\x20found.'};const _0x24ced9=_0x407060[_0x144ede(0x142)](_0x144ede(0x124));if(_0x24ced9&&!_0x407060['nonInteractive']){const _0x2264c8=await confirmForce();if(!_0x2264c8)throw CliErrors['cancelled'](_0x144ede(0x10f));}if(_0x24ced9&&_0x407060['nonInteractive']){}const _0x5db840=buildDatasetCodeToAliasMap(_0x407060['apiDir'],_0x407060['appCode']),_0x4b310b=createHookLocationMap(_0x3ff532),_0x520b46=JSON['parse'](JSON[_0x144ede(0x10c)](_0x1aa316)),_0x34fbfd=_0x407060[_0x144ede(0x133)],_0x27664c=_0x520b46[_0x144ede(0x131)][_0x34fbfd];if(!_0x27664c)throw new Error(_0x144ede(0x117)+_0x34fbfd+_0x144ede(0x148));const _0x1b64e8=[],_0xe7b70b=[],_0xe90008=[];for(const _0x29ec0d of _0x20c8ff){const _0x37c9e9=resolveRemoteScriptTarget(_0x5c8920,_0x29ec0d,_0x4b310b,_0x375074[_0x144ede(0x109)],_0x5db840);if(!_0x37c9e9){_0xe7b70b[_0x144ede(0x136)]({'lockKey':_0x29ec0d[_0x144ede(0x10b)]+'/'+_0x29ec0d[_0x144ede(0x140)],'reason':_0x144ede(0x11a)});continue;}const _0x5cec0b=_0x375074[_0x144ede(0x109)][_0x37c9e9[_0x144ede(0x123)]];try{if(!_0x29ec0d['id'])throw new Error(_0x144ede(0x143));if(_0x29ec0d[_0x144ede(0x11e)]==null)throw new Error(_0x144ede(0x12e));const _0x371592=_0x29ec0d[_0x144ede(0x11e)],_0x5dbfa7=computeContentHash(_0x371592);if(!_0x24ced9){const _0xc8a8ab=await hasUnsyncedLocalChanges(_0x37c9e9['filePath'],_0x5cec0b,_0x5dbfa7);if(_0xc8a8ab){_0xe7b70b[_0x144ede(0x136)]({'lockKey':_0x37c9e9[_0x144ede(0x123)],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x37c9e9[_0x144ede(0x11f)]),await writeFile(_0x37c9e9[_0x144ede(0x11f)],_0x371592,'utf8');const _0x240f21={'hash':_0x5dbfa7,'remoteId':_0x29ec0d['id'],'version':_0x29ec0d[_0x144ede(0x11b)]};_0x37c9e9['type']===_0x144ede(0x146)&&_0x37c9e9['hookLocation']&&(_0x240f21['alias']=_0x37c9e9['hookLocation']['alias'],_0x240f21[_0x144ede(0x134)]=_0x37c9e9[_0x144ede(0x141)][_0x144ede(0x134)],_0x240f21[_0x144ede(0x10e)]=_0x37c9e9['hookLocation'][_0x144ede(0x10e)],_0x240f21[_0x144ede(0x115)]=_0x37c9e9['hookLocation'][_0x144ede(0x115)]),_0x27664c[_0x144ede(0x109)][_0x37c9e9[_0x144ede(0x123)]]=_0x240f21,_0x1b64e8[_0x144ede(0x136)]({'lockKey':_0x37c9e9[_0x144ede(0x123)],'remoteId':_0x29ec0d['id']});}catch(_0x13da5d){_0xe90008['push']({'lockKey':_0x37c9e9[_0x144ede(0x123)],'error':_0x13da5d instanceof Error?_0x13da5d['message']:String(_0x13da5d)});}}return _0x27664c[_0x144ede(0x13f)]=new Date()[_0x144ede(0x145)](),await writeBffLockFile(_0x5c8920[_0x144ede(0x13b)],_0x520b46),{'ok':_0xe90008[_0x144ede(0x105)]===0x0,'data':{'pulled':_0x1b64e8,'skipped':_0xe7b70b,'failed':_0xe90008},'message':_0x144ede(0xff)+_0x1b64e8[_0x144ede(0x105)]+'\x20pulled,\x20'+_0xe7b70b[_0x144ede(0x105)]+_0x144ede(0x114)+_0xe90008[_0x144ede(0x105)]+_0x144ede(0x135)};}};async function hasUnsyncedLocalChanges(_0x15c661,_0x3beb97,_0x497ba2){const _0x15ebf4=a31_0x32d92e;if(!await fileExists(_0x15c661))return![];const _0x1ba69b=await computeFileHash(_0x15c661);if(!_0x3beb97)return _0x497ba2?_0x1ba69b!==_0x497ba2:!![];return _0x1ba69b!==_0x3beb97[_0x15ebf4(0x101)];}function buildDatasetCodeToAliasMap(_0x128be9,_0x3e6e34){const _0x117e50=a31_0x32d92e,_0xb5d080=loadAliasMap(_0x128be9,undefined,resolveApiFilePath(_0x128be9,_0x3e6e34));return new Map(_0xb5d080[_0x117e50(0x12c)](_0x5967dd=>[_0x5967dd[_0x117e50(0x134)],_0x5967dd[_0x117e50(0x12d)]]));}async function confirmForce(){const _0x4bfb41=a31_0x32d92e,_0x2b8d9c=createInterface({'input':process[_0x4bfb41(0x127)],'output':process[_0x4bfb41(0x125)]}),_0x3dc977=await new Promise(_0x1546e1=>{const _0x162172=_0x4bfb41;_0x2b8d9c[_0x162172(0x107)](_0x162172(0x126),_0x1546e1);});return _0x2b8d9c[_0x4bfb41(0x113)](),['y',_0x4bfb41(0x12a)][_0x4bfb41(0x120)](_0x3dc977[_0x4bfb41(0x128)]()['toLowerCase']());}
@@ -1 +1 @@
1
- const a32_0x108264=a32_0x30e1;function a32_0x30e1(_0x4faa4f,_0x2d9b1b){_0x4faa4f=_0x4faa4f-0xb8;const _0x34f82d=a32_0x34f8();let _0x30e15a=_0x34f82d[_0x4faa4f];return _0x30e15a;}(function(_0x3e8636,_0x33d1d0){const _0x3c6d5e=a32_0x30e1,_0x546cc1=_0x3e8636();while(!![]){try{const _0x3ca0c7=parseInt(_0x3c6d5e(0xf8))/0x1+parseInt(_0x3c6d5e(0xf5))/0x2*(parseInt(_0x3c6d5e(0xcb))/0x3)+-parseInt(_0x3c6d5e(0xf7))/0x4+-parseInt(_0x3c6d5e(0xec))/0x5*(-parseInt(_0x3c6d5e(0xf6))/0x6)+parseInt(_0x3c6d5e(0xcf))/0x7*(-parseInt(_0x3c6d5e(0xed))/0x8)+-parseInt(_0x3c6d5e(0xe8))/0x9+parseInt(_0x3c6d5e(0xca))/0xa*(parseInt(_0x3c6d5e(0xd3))/0xb);if(_0x3ca0c7===_0x33d1d0)break;else _0x546cc1['push'](_0x546cc1['shift']());}catch(_0x2142ac){_0x546cc1['push'](_0x546cc1['shift']());}}}(a32_0x34f8,0xededc));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a32_0x34f8(){const _0x14c0ff=['352DWPixX','\x22.\x20','POST','str','code','\x20skipped,\x20','\x20failed','functionNode','HOOK','name','appCode','filter','push','get','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','unchanged','apiDir','toISOString','hash','map','Local\x20function\x20not\x20found:\x20','11165247jCUiPw','create','lockFilePath','Force\x20push\x20ignoring\x20hash\x20protection','2219655fMXAsT','230720IxgzJS','Push\x20complete:\x20','description','scriptsRoot','datasetCode','length','update','aliasToDatasetCode','46896eUbCrG','6fWJfZb','5694440wlUeWj','1869418YnAHqO','lockKey','string','bool','force','Push\x20only\x20this\x20script\x20type','script','bff','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','would_push','functions','ENDPOINT','Run\x20`','Incomplete\x20HOOK\x20path:\x20','set','alias','values','high-risk-write','operationType','utf8','datasetCodeToId','remoteId','COMMON','Would\x20inspect\x20','version','866420QSFwPL','51eUgfXh','validation','/api/management/library/scripts/save','type','448wvUfrG','message','filePath','has'];a32_0x34f8=function(){return _0x14c0ff;};return a32_0x34f8();}import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':a32_0x108264(0xb8),'command':a32_0x108264(0xdf),'description':'Push\x20local\x20BFF\x20scripts\x20to\x20remote','risk':a32_0x108264(0xc2),'flags':[{'name':'type','type':a32_0x108264(0xfa),'description':a32_0x108264(0xfd),'enum':[a32_0x108264(0xc7),a32_0x108264(0xbc),'HOOK']},{'name':a32_0x108264(0xdc),'type':'string','description':a32_0x108264(0xe1)},{'name':a32_0x108264(0xfc),'type':'boolean','description':a32_0x108264(0xeb)}],async 'dryRun'(_0x50cc50){const _0x559315=a32_0x108264,_0x4d9c19=loadBffProjectConfig(_0x50cc50[_0x559315(0xdd)]),_0x31c65f=await readBffLockFile(_0x4d9c19[_0x559315(0xea)]),{appLock:_0x4be7bb}=ensureLockScope(_0x31c65f??createEmptyBffLock(),_0x50cc50[_0x559315(0xdd)],_0x4d9c19[_0x559315(0xf0)],'push'),_0x48c63c=await getTargetFunctions(_0x4d9c19,_0x50cc50),_0x26d36c=_0x50cc50[_0x559315(0xfb)]('force'),_0x5ef37f=[];for(const _0x298f23 of _0x48c63c){const _0xb47be7=await computeFileHash(_0x298f23['filePath']),_0x433509=_0x4be7bb['functions'][_0x298f23[_0x559315(0xf9)]],_0x2ba050=!!_0x433509&&_0x433509[_0x559315(0xe5)]===_0xb47be7;_0x5ef37f['push']({'lockKey':_0x298f23[_0x559315(0xf9)],'filePath':_0x298f23[_0x559315(0xd1)],'remoteId':_0x433509?.[_0x559315(0xc6)]??null,'mode':_0x433509?.['remoteId']?_0x559315(0xf3):_0x559315(0xe9),'status':!_0x26d36c&&_0x2ba050?'unchanged':_0x559315(0xba)});}return{'method':_0x559315(0xd5),'url':_0x559315(0xcd),'body':{'appCode':_0x50cc50['appCode'],'force':_0x26d36c,'files':_0x5ef37f},'description':_0x559315(0xc8)+_0x5ef37f[_0x559315(0xf2)]+'\x20local\x20BFF\x20script(s)\x20for\x20push'};},async 'execute'(_0x2b367a){const _0x294645=a32_0x108264,_0x7225c=loadBffProjectConfig(_0x2b367a[_0x294645(0xdd)]),_0x32bb0c=await readBffLockFile(_0x7225c[_0x294645(0xea)]),{lockData:_0xe50a25,appLock:_0x6e0030}=ensureLockScope(_0x32bb0c??createEmptyBffLock(),_0x2b367a['appCode'],_0x7225c[_0x294645(0xf0)],_0x294645(0xdf)),_0x6a132b=await getTargetFunctions(_0x7225c,_0x2b367a);if(_0x6a132b[_0x294645(0xf2)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':'No\x20local\x20BFF\x20functions\x20found.'};const _0x1622ab=_0x2b367a['bool'](_0x294645(0xfc)),_0x1897f0=await buildHookMaps(_0x2b367a[_0x294645(0xdd)],_0x2b367a[_0x294645(0xe3)],_0x6a132b,_0x6e0030),_0x162b20=[],_0x1d3219=[],_0x1f2f7a=[];for(const _0x49fb75 of _0x6a132b){const _0x198f1e=await computeFileHash(_0x49fb75[_0x294645(0xd1)]),_0xa9dcf9=_0x6e0030['functions'][_0x49fb75[_0x294645(0xf9)]];if(!_0x1622ab&&_0xa9dcf9&&_0xa9dcf9[_0x294645(0xe5)]===_0x198f1e){_0x1d3219[_0x294645(0xdf)]({'lockKey':_0x49fb75[_0x294645(0xf9)],'reason':_0x294645(0xe2)});continue;}try{await uploadSingleFunction(_0x2b367a[_0x294645(0xdd)],_0x49fb75,_0x6e0030,_0x1897f0);const _0x108a25=_0x6e0030['functions'][_0x49fb75[_0x294645(0xf9)]];_0x162b20[_0x294645(0xdf)]({'lockKey':_0x49fb75[_0x294645(0xf9)],'remoteId':_0x108a25?.[_0x294645(0xc6)]??0x0});}catch(_0x1e7fbe){_0x1f2f7a[_0x294645(0xdf)]({'lockKey':_0x49fb75[_0x294645(0xf9)],'error':_0x1e7fbe instanceof Error?_0x1e7fbe[_0x294645(0xd0)]:String(_0x1e7fbe)});}}return _0x6e0030['lastSync']=new Date()[_0x294645(0xe4)](),await writeBffLockFile(_0x7225c[_0x294645(0xea)],_0xe50a25),{'ok':_0x1f2f7a[_0x294645(0xf2)]===0x0,'data':{'uploaded':_0x162b20,'skipped':_0x1d3219,'failed':_0x1f2f7a},'message':_0x294645(0xee)+_0x162b20[_0x294645(0xf2)]+'\x20uploaded,\x20'+_0x1d3219[_0x294645(0xf2)]+_0x294645(0xd8)+_0x1f2f7a[_0x294645(0xf2)]+_0x294645(0xd9)};}};async function getTargetFunctions(_0x1da9a5,_0x3b2b2d){const _0x15c690=a32_0x108264,_0x28f352=_0x3b2b2d[_0x15c690(0xd6)](_0x15c690(0xce)),_0x11ce91=_0x3b2b2d[_0x15c690(0xd6)]('name'),_0x89a854=normalizeBffType(_0x28f352)??undefined;if(_0x11ce91&&!_0x89a854)throw CliErrors[_0x15c690(0xcc)](_0x15c690(0xb9));const _0x32ec94=await scanLocalBffFunctions(_0x1da9a5,_0x89a854);if(_0x11ce91){const _0x5dd18b=_0x32ec94[_0x15c690(0xde)](_0x19ebcd=>_0x19ebcd['name']===_0x11ce91);if(_0x5dd18b[_0x15c690(0xf2)]===0x0)throw CliErrors[_0x15c690(0xcc)](_0x15c690(0xe7)+_0x89a854+'/'+_0x11ce91);return _0x5dd18b;}return _0x32ec94;}async function buildHookMaps(_0x55271e,_0x581e74,_0x9d1858,_0x589f07){const _0x5e9644=a32_0x108264,_0x462c76=_0x9d1858['some'](_0x5ce6e4=>_0x5ce6e4['type']===_0x5e9644(0xdb));if(!_0x462c76)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x3f4ea1=loadAliasMap(_0x581e74,undefined,resolveApiFilePath(_0x581e74,_0x55271e)),_0x5ae4bb=new Map(_0x3f4ea1[_0x5e9644(0xe6)](_0x7605d4=>[_0x7605d4[_0x5e9644(0xc0)],_0x7605d4[_0x5e9644(0xf1)]]));for(const _0x2f822a of Object[_0x5e9644(0xc1)](_0x589f07[_0x5e9644(0xbb)])){_0x2f822a[_0x5e9644(0xc0)]&&_0x2f822a[_0x5e9644(0xf1)]&&!_0x5ae4bb['has'](_0x2f822a['alias'])&&_0x5ae4bb[_0x5e9644(0xbf)](_0x2f822a[_0x5e9644(0xc0)],_0x2f822a[_0x5e9644(0xf1)]);}const _0x22532f=await listDatasets(_0x55271e),_0x41903d=new Map(_0x22532f[_0x5e9644(0xe6)](_0x3b4f77=>[_0x3b4f77[_0x5e9644(0xd7)],_0x3b4f77['id']]));return{'aliasToDatasetCode':_0x5ae4bb,'datasetCodeToId':_0x41903d};}async function uploadSingleFunction(_0x2735c4,_0x438b7d,_0x5427c3,_0x4514f4){const _0x5b472c=a32_0x108264,_0x100d59=await readFile(_0x438b7d['filePath'],_0x5b472c(0xc4)),_0x141a02=await computeFileHash(_0x438b7d[_0x5b472c(0xd1)]),_0x34e7fb=_0x5427c3['functions'][_0x438b7d[_0x5b472c(0xf9)]];if(_0x34e7fb?.['remoteId']&&_0x34e7fb[_0x5b472c(0xc9)]==null)throw CliErrors[_0x5b472c(0xcc)](_0x438b7d[_0x5b472c(0xf9)]+':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.');let _0x44941a=extractScriptDescription(_0x100d59);if(!_0x44941a&&_0x34e7fb?.['remoteId']){const _0x5dce5f=await getBffScriptInfo(_0x34e7fb[_0x5b472c(0xc6)]);_0x44941a=_0x5dce5f[_0x5b472c(0xef)]||undefined;}const _0x126ccb={'appCode':_0x2735c4,'functionName':_0x438b7d[_0x5b472c(0xdc)],'scriptType':_0x438b7d[_0x5b472c(0xce)],'scriptContent':_0x100d59};if(_0x34e7fb?.['remoteId'])_0x126ccb['id']=_0x34e7fb[_0x5b472c(0xc6)];if(_0x34e7fb?.[_0x5b472c(0xc9)]!=null)_0x126ccb[_0x5b472c(0xc9)]=_0x34e7fb[_0x5b472c(0xc9)];if(_0x44941a)_0x126ccb[_0x5b472c(0xef)]=_0x44941a;if(_0x438b7d['type']===_0x5b472c(0xdb)){const _0x32aa8d=_0x438b7d['alias'];if(!_0x32aa8d||!_0x438b7d[_0x5b472c(0xc3)]||!_0x438b7d['functionNode'])throw CliErrors[_0x5b472c(0xcc)](_0x5b472c(0xbe)+_0x438b7d['lockKey']);const _0x2f4473=_0x4514f4['aliasToDatasetCode']['get'](_0x32aa8d)??_0x34e7fb?.[_0x5b472c(0xf1)]??_0x32aa8d,_0x545d30=_0x4514f4[_0x5b472c(0xc5)][_0x5b472c(0xe0)](_0x2f4473);if(!_0x545d30)throw CliErrors[_0x5b472c(0xcc)]('Cannot\x20resolve\x20dataset\x20for\x20\x22'+_0x32aa8d+_0x5b472c(0xd4)+(_0x5b472c(0xbd)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.'));_0x126ccb['datasetId']=_0x545d30,_0x126ccb[_0x5b472c(0xc3)]=_0x438b7d[_0x5b472c(0xc3)],_0x126ccb[_0x5b472c(0xda)]=_0x438b7d[_0x5b472c(0xda)];}const _0x4e92ac=await saveBffScript(_0x126ccb),_0x2f2a24=_0x4e92ac['id'],_0x2363a8=_0x4e92ac[_0x5b472c(0xfe)]??await getBffScriptInfo(_0x2f2a24),_0x22c82d={'hash':_0x141a02,'remoteId':_0x2f2a24,'version':_0x2363a8[_0x5b472c(0xc9)]};if(_0x438b7d['type']===_0x5b472c(0xdb)){const _0xca2962=_0x438b7d[_0x5b472c(0xc0)],_0x29c9cf=_0x4514f4[_0x5b472c(0xf4)][_0x5b472c(0xe0)](_0xca2962)??_0x34e7fb?.[_0x5b472c(0xf1)]??_0xca2962;_0x4514f4[_0x5b472c(0xf4)][_0x5b472c(0xd2)](_0xca2962)?_0x22c82d[_0x5b472c(0xc0)]=_0xca2962:_0x22c82d[_0x5b472c(0xc0)]=_0x34e7fb?.['alias'],_0x22c82d[_0x5b472c(0xf1)]=_0x29c9cf,_0x22c82d[_0x5b472c(0xc3)]=_0x438b7d[_0x5b472c(0xc3)],_0x22c82d[_0x5b472c(0xda)]=_0x438b7d[_0x5b472c(0xda)];}_0x5427c3['functions'][_0x438b7d[_0x5b472c(0xf9)]]=_0x22c82d;}
1
+ const a32_0x1926c2=a32_0x1623;(function(_0x44c078,_0x1d76c5){const _0x42719f=a32_0x1623,_0x5c9c15=_0x44c078();while(!![]){try{const _0x33acd8=parseInt(_0x42719f(0x177))/0x1+-parseInt(_0x42719f(0x16b))/0x2*(parseInt(_0x42719f(0x182))/0x3)+-parseInt(_0x42719f(0x167))/0x4+-parseInt(_0x42719f(0x15f))/0x5*(parseInt(_0x42719f(0x147))/0x6)+parseInt(_0x42719f(0x14a))/0x7*(-parseInt(_0x42719f(0x176))/0x8)+parseInt(_0x42719f(0x183))/0x9*(-parseInt(_0x42719f(0x154))/0xa)+-parseInt(_0x42719f(0x175))/0xb*(-parseInt(_0x42719f(0x156))/0xc);if(_0x33acd8===_0x1d76c5)break;else _0x5c9c15['push'](_0x5c9c15['shift']());}catch(_0x5cfa49){_0x5c9c15['push'](_0x5c9c15['shift']());}}}(a32_0x315d,0x8894d));function a32_0x1623(_0x1ebc11,_0x377e2f){_0x1ebc11=_0x1ebc11-0x144;const _0x315db2=a32_0x315d();let _0x1623e2=_0x315db2[_0x1ebc11];return _0x1623e2;}import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';function a32_0x315d(){const _0x21ea2f=['message','lastSync','type','11cFJIfV','16816ViHtTD','74606tubPoT','some','remoteId','validation','lockFilePath','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','datasetCode','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','POST','unchanged','version','2974563ENYZZT','18927kFkLjn','Would\x20inspect\x20','HOOK','apiDir','push','update','appCode','No\x20local\x20BFF\x20functions\x20found.','toISOString','bool','Incomplete\x20HOOK\x20path:\x20','code','filePath','48HKGPDX',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','lockKey','2751jypXbY','string','bff','operationType','script','\x22.\x20','set','filter','\x20failed','name','1220MJylUP','\x20skipped,\x20','48260040JzcwST','Force\x20push\x20ignoring\x20hash\x20protection','scriptsRoot','datasetCodeToId','create','boolean','hash','Local\x20function\x20not\x20found:\x20','Push\x20complete:\x20','476430EPIFzk','alias','aliasToDatasetCode','length','map','force','datasetId','would_push','2801512tfivUy','functionNode','description','Push\x20local\x20BFF\x20scripts\x20to\x20remote','2hGMABY','str','utf8','get','has','functions','ENDPOINT'];a32_0x315d=function(){return _0x21ea2f;};return a32_0x315d();}import{extractScriptDescription}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':a32_0x1926c2(0x14c),'command':'push','description':a32_0x1926c2(0x16a),'risk':'high-risk-write','flags':[{'name':a32_0x1926c2(0x174),'type':a32_0x1926c2(0x14b),'description':'Push\x20only\x20this\x20script\x20type','enum':['COMMON',a32_0x1926c2(0x171),'HOOK']},{'name':a32_0x1926c2(0x153),'type':a32_0x1926c2(0x14b),'description':a32_0x1926c2(0x17c)},{'name':'force','type':a32_0x1926c2(0x15b),'description':a32_0x1926c2(0x157)}],async 'dryRun'(_0x120eff){const _0x31e053=a32_0x1926c2,_0x1389b7=loadBffProjectConfig(_0x120eff['appCode']),_0x37e5a7=await readBffLockFile(_0x1389b7[_0x31e053(0x17b)]),{appLock:_0x5e1854}=ensureLockScope(_0x37e5a7??createEmptyBffLock(),_0x120eff[_0x31e053(0x189)],_0x1389b7[_0x31e053(0x158)],_0x31e053(0x187)),_0x760aec=await getTargetFunctions(_0x1389b7,_0x120eff),_0x440789=_0x120eff[_0x31e053(0x18c)](_0x31e053(0x164)),_0xe9493b=[];for(const _0x5bc306 of _0x760aec){const _0x519874=await computeFileHash(_0x5bc306[_0x31e053(0x146)]),_0x49c717=_0x5e1854[_0x31e053(0x170)][_0x5bc306[_0x31e053(0x149)]],_0x1810a3=!!_0x49c717&&_0x49c717[_0x31e053(0x15c)]===_0x519874;_0xe9493b[_0x31e053(0x187)]({'lockKey':_0x5bc306[_0x31e053(0x149)],'filePath':_0x5bc306['filePath'],'remoteId':_0x49c717?.[_0x31e053(0x179)]??null,'mode':_0x49c717?.['remoteId']?_0x31e053(0x188):_0x31e053(0x15a),'status':!_0x440789&&_0x1810a3?_0x31e053(0x180):_0x31e053(0x166)});}return{'method':_0x31e053(0x17f),'url':'/api/management/library/scripts/save','body':{'appCode':_0x120eff[_0x31e053(0x189)],'force':_0x440789,'files':_0xe9493b},'description':_0x31e053(0x184)+_0xe9493b[_0x31e053(0x162)]+'\x20local\x20BFF\x20script(s)\x20for\x20push'};},async 'execute'(_0x4a2290){const _0x399986=a32_0x1926c2,_0x17dbb3=loadBffProjectConfig(_0x4a2290[_0x399986(0x189)]),_0x454c36=await readBffLockFile(_0x17dbb3[_0x399986(0x17b)]),{lockData:_0x24711b,appLock:_0x103a22}=ensureLockScope(_0x454c36??createEmptyBffLock(),_0x4a2290['appCode'],_0x17dbb3[_0x399986(0x158)],_0x399986(0x187)),_0x25d548=await getTargetFunctions(_0x17dbb3,_0x4a2290);if(_0x25d548[_0x399986(0x162)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0x399986(0x18a)};const _0x39b902=_0x4a2290['bool'](_0x399986(0x164)),_0x24c723=await buildHookMaps(_0x4a2290[_0x399986(0x189)],_0x4a2290[_0x399986(0x186)],_0x25d548,_0x103a22),_0x141041=[],_0x273f73=[],_0x3dc234=[];for(const _0x484bd5 of _0x25d548){const _0x6c2d8d=await computeFileHash(_0x484bd5[_0x399986(0x146)]),_0x8baa5d=_0x103a22[_0x399986(0x170)][_0x484bd5[_0x399986(0x149)]];if(!_0x39b902&&_0x8baa5d&&_0x8baa5d[_0x399986(0x15c)]===_0x6c2d8d){_0x273f73[_0x399986(0x187)]({'lockKey':_0x484bd5[_0x399986(0x149)],'reason':_0x399986(0x180)});continue;}try{await uploadSingleFunction(_0x4a2290[_0x399986(0x189)],_0x484bd5,_0x103a22,_0x24c723);const _0x34b785=_0x103a22[_0x399986(0x170)][_0x484bd5[_0x399986(0x149)]];_0x141041[_0x399986(0x187)]({'lockKey':_0x484bd5[_0x399986(0x149)],'remoteId':_0x34b785?.['remoteId']??0x0});}catch(_0x492b21){_0x3dc234['push']({'lockKey':_0x484bd5[_0x399986(0x149)],'error':_0x492b21 instanceof Error?_0x492b21[_0x399986(0x172)]:String(_0x492b21)});}}return _0x103a22[_0x399986(0x173)]=new Date()[_0x399986(0x18b)](),await writeBffLockFile(_0x17dbb3[_0x399986(0x17b)],_0x24711b),{'ok':_0x3dc234[_0x399986(0x162)]===0x0,'data':{'uploaded':_0x141041,'skipped':_0x273f73,'failed':_0x3dc234},'message':_0x399986(0x15e)+_0x141041[_0x399986(0x162)]+'\x20uploaded,\x20'+_0x273f73[_0x399986(0x162)]+_0x399986(0x155)+_0x3dc234[_0x399986(0x162)]+_0x399986(0x152)};}};async function getTargetFunctions(_0x116852,_0x2c8821){const _0x49482f=a32_0x1926c2,_0x3ddb90=_0x2c8821[_0x49482f(0x16c)]('type'),_0x2fee5f=_0x2c8821[_0x49482f(0x16c)]('name'),_0xc649b1=normalizeBffType(_0x3ddb90)??undefined;if(_0x2fee5f&&!_0xc649b1)throw CliErrors[_0x49482f(0x17a)]('--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.');const _0xf59672=await scanLocalBffFunctions(_0x116852,_0xc649b1);if(_0x2fee5f){const _0x4ef764=_0xf59672[_0x49482f(0x151)](_0x54855b=>_0x54855b[_0x49482f(0x153)]===_0x2fee5f);if(_0x4ef764[_0x49482f(0x162)]===0x0)throw CliErrors[_0x49482f(0x17a)](_0x49482f(0x15d)+_0xc649b1+'/'+_0x2fee5f);return _0x4ef764;}return _0xf59672;}async function buildHookMaps(_0x5ec0a7,_0xc27c3c,_0x244d8c,_0x35f250){const _0x1676ac=a32_0x1926c2,_0x365879=_0x244d8c[_0x1676ac(0x178)](_0x10a90c=>_0x10a90c[_0x1676ac(0x174)]==='HOOK');if(!_0x365879)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x444c98=loadAliasMap(_0xc27c3c,undefined,resolveApiFilePath(_0xc27c3c,_0x5ec0a7)),_0x144e7f=new Map(_0x444c98[_0x1676ac(0x163)](_0x3d6971=>[_0x3d6971['alias'],_0x3d6971['datasetCode']]));for(const _0x49322f of Object['values'](_0x35f250[_0x1676ac(0x170)])){_0x49322f[_0x1676ac(0x160)]&&_0x49322f[_0x1676ac(0x17d)]&&!_0x144e7f['has'](_0x49322f['alias'])&&_0x144e7f[_0x1676ac(0x150)](_0x49322f[_0x1676ac(0x160)],_0x49322f[_0x1676ac(0x17d)]);}const _0x35ee30=await listDatasets(_0x5ec0a7),_0x75686=new Map(_0x35ee30[_0x1676ac(0x163)](_0xf3bc0b=>[_0xf3bc0b[_0x1676ac(0x145)],_0xf3bc0b['id']]));return{'aliasToDatasetCode':_0x144e7f,'datasetCodeToId':_0x75686};}async function uploadSingleFunction(_0x1fe6a1,_0x4c562a,_0x1fccc2,_0x59d833){const _0x240439=a32_0x1926c2,_0x2407aa=await readFile(_0x4c562a[_0x240439(0x146)],_0x240439(0x16d)),_0x8b5bd5=await computeFileHash(_0x4c562a['filePath']),_0x1a888b=_0x1fccc2[_0x240439(0x170)][_0x4c562a[_0x240439(0x149)]];if(_0x1a888b?.[_0x240439(0x179)]&&_0x1a888b[_0x240439(0x181)]==null)throw CliErrors[_0x240439(0x17a)](_0x4c562a[_0x240439(0x149)]+_0x240439(0x148));let _0x139748=extractScriptDescription(_0x2407aa);if(!_0x139748&&_0x1a888b?.['remoteId']){const _0x10a14e=await getBffScriptInfo(_0x1a888b[_0x240439(0x179)]);_0x139748=_0x10a14e[_0x240439(0x169)]||undefined;}const _0xa90c8f={'appCode':_0x1fe6a1,'functionName':_0x4c562a[_0x240439(0x153)],'scriptType':_0x4c562a['type'],'scriptContent':_0x2407aa};if(_0x1a888b?.['remoteId'])_0xa90c8f['id']=_0x1a888b[_0x240439(0x179)];if(_0x1a888b?.[_0x240439(0x181)]!=null)_0xa90c8f[_0x240439(0x181)]=_0x1a888b[_0x240439(0x181)];if(_0x139748)_0xa90c8f[_0x240439(0x169)]=_0x139748;if(_0x4c562a['type']==='HOOK'){const _0x183840=_0x4c562a['alias'];if(!_0x183840||!_0x4c562a[_0x240439(0x14d)]||!_0x4c562a['functionNode'])throw CliErrors[_0x240439(0x17a)](_0x240439(0x144)+_0x4c562a[_0x240439(0x149)]);const _0x1291a0=_0x59d833[_0x240439(0x161)][_0x240439(0x16e)](_0x183840)??_0x1a888b?.[_0x240439(0x17d)]??_0x183840,_0x4c22eb=_0x59d833[_0x240439(0x159)][_0x240439(0x16e)](_0x1291a0);if(!_0x4c22eb)throw CliErrors[_0x240439(0x17a)]('Cannot\x20resolve\x20dataset\x20for\x20\x22'+_0x183840+_0x240439(0x14f)+('Run\x20`'+CLI_BIN_NAME+_0x240439(0x17e)));_0xa90c8f[_0x240439(0x165)]=_0x4c22eb,_0xa90c8f[_0x240439(0x14d)]=_0x4c562a[_0x240439(0x14d)],_0xa90c8f['functionNode']=_0x4c562a[_0x240439(0x168)];}const _0x3e62b3=await saveBffScript(_0xa90c8f),_0x5129f6=_0x3e62b3['id'],_0x13fa83=_0x3e62b3[_0x240439(0x14e)]??await getBffScriptInfo(_0x5129f6),_0x4d7529={'hash':_0x8b5bd5,'remoteId':_0x5129f6,'version':_0x13fa83['version']};if(_0x4c562a[_0x240439(0x174)]===_0x240439(0x185)){const _0x18a842=_0x4c562a['alias'],_0x128c97=_0x59d833[_0x240439(0x161)][_0x240439(0x16e)](_0x18a842)??_0x1a888b?.[_0x240439(0x17d)]??_0x18a842;_0x59d833[_0x240439(0x161)][_0x240439(0x16f)](_0x18a842)?_0x4d7529[_0x240439(0x160)]=_0x18a842:_0x4d7529[_0x240439(0x160)]=_0x1a888b?.[_0x240439(0x160)],_0x4d7529[_0x240439(0x17d)]=_0x128c97,_0x4d7529[_0x240439(0x14d)]=_0x4c562a[_0x240439(0x14d)],_0x4d7529[_0x240439(0x168)]=_0x4c562a[_0x240439(0x168)];}_0x1fccc2[_0x240439(0x170)][_0x4c562a[_0x240439(0x149)]]=_0x4d7529;}