@lovrabet/rabetbase-cli 2.1.6 → 2.1.7-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 -0
  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 -0
  55. package/lib/commands/dataset/link-delete.js +1 -0
  56. package/lib/commands/dataset/link-shared.js +1 -0
  57. package/lib/commands/dataset/link-update.js +1 -0
  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 -0
  77. package/lib/commands/issue/report.js +1 -0
  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 -0
  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 +2 -1
@@ -1 +1 @@
1
- (function(_0x552256,_0x568676){const _0x10c696=a20_0xb4f3,_0x1c03a6=_0x552256();while(!![]){try{const _0x43e262=-parseInt(_0x10c696(0xbf))/0x1+parseInt(_0x10c696(0xc1))/0x2*(-parseInt(_0x10c696(0xbe))/0x3)+-parseInt(_0x10c696(0xc0))/0x4*(parseInt(_0x10c696(0xbd))/0x5)+-parseInt(_0x10c696(0xba))/0x6+-parseInt(_0x10c696(0xb9))/0x7+-parseInt(_0x10c696(0xbc))/0x8+parseInt(_0x10c696(0xbb))/0x9;if(_0x43e262===_0x568676)break;else _0x1c03a6['push'](_0x1c03a6['shift']());}catch(_0xcdd350){_0x1c03a6['push'](_0x1c03a6['shift']());}}}(a20_0x15ff,0x72471));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';function a20_0x15ff(){const _0x2aac4a=['2977016kYgTkI','135CnRnNi','3fLAipA','149267tYdnAY','79256UmVDnG','1842770HOnhbX','1514394YjkeDL','5095134miWsgK','31602321lohiMT'];a20_0x15ff=function(){return _0x2aac4a;};return a20_0x15ff();}import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';function a20_0xb4f3(_0x4a9d53,_0x30e3a5){_0x4a9d53=_0x4a9d53-0xb9;const _0x15ff90=a20_0x15ff();let _0xb4f3cf=_0x15ff90[_0x4a9d53];return _0xb4f3cf;}export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ function a20_0x1f5b(){const _0x12ac7b=['4293915jdDGaa','959076qpgAmp','6lIAssn','10604630IaHCIs','1301908mdpNjI','6CfRiWK','40XaujSK','5033147fTRtKB','673325XVOzMa','1793384lmgPpO'];a20_0x1f5b=function(){return _0x12ac7b;};return a20_0x1f5b();}(function(_0x503064,_0xcef6a3){const _0x5e026a=a20_0x4c1c,_0x10d699=_0x503064();while(!![]){try{const _0x3cb7a2=-parseInt(_0x5e026a(0x1be))/0x1+parseInt(_0x5e026a(0x1bf))/0x2+parseInt(_0x5e026a(0x1c2))/0x3*(parseInt(_0x5e026a(0x1ba))/0x4)+parseInt(_0x5e026a(0x1c0))/0x5*(parseInt(_0x5e026a(0x1bb))/0x6)+-parseInt(_0x5e026a(0x1bd))/0x7+-parseInt(_0x5e026a(0x1bc))/0x8*(-parseInt(_0x5e026a(0x1c1))/0x9)+-parseInt(_0x5e026a(0x1c3))/0xa;if(_0x3cb7a2===_0xcef6a3)break;else _0x10d699['push'](_0x10d699['shift']());}catch(_0x23c368){_0x10d699['push'](_0x10d699['shift']());}}}(a20_0x1f5b,0x76c28));function a20_0x4c1c(_0x41ee3a,_0x2f2c7a){_0x41ee3a=_0x41ee3a-0x1ba;const _0x1f5bbc=a20_0x1f5b();let _0x4c1c34=_0x1f5bbc[_0x41ee3a];return _0x4c1c34;}import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- function a21_0x7e75(_0x38f65f,_0x251c7d){_0x38f65f=_0x38f65f-0xd4;const _0x151b2e=a21_0x151b();let _0x7e75ae=_0x151b2e[_0x38f65f];return _0x7e75ae;}const a21_0x469b86=a21_0x7e75;(function(_0x1de688,_0x3c58e3){const _0x3dd689=a21_0x7e75,_0x582d1=_0x1de688();while(!![]){try{const _0x155217=parseInt(_0x3dd689(0xdb))/0x1+-parseInt(_0x3dd689(0xf4))/0x2*(parseInt(_0x3dd689(0xf1))/0x3)+parseInt(_0x3dd689(0xe5))/0x4+-parseInt(_0x3dd689(0xee))/0x5+-parseInt(_0x3dd689(0xd7))/0x6+parseInt(_0x3dd689(0xf3))/0x7+-parseInt(_0x3dd689(0xda))/0x8;if(_0x155217===_0x3c58e3)break;else _0x582d1['push'](_0x582d1['shift']());}catch(_0x407d73){_0x582d1['push'](_0x582d1['shift']());}}}(a21_0x151b,0x95c35));import{readRawConfigWithLayers}from'../../context.js';function a21_0x151b(){const _0x3c245f=['mergedCli','global','489590TzXHvV','globalConfig','projectPath','3UirLEt','appcode','6686470YVHZeh','216686sfUWWv','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','read','bool','entries','1939932qVQaGw','inherit','object','11102224xXQhqr','355462XLHxBI','\x20config','globalPath','List\x20all\x20configured\x20apps','defaultApp','project','projectConfig','isCurrent','length','merged','4880472zQroNG','\x20in\x20','.\x20Use\x20`','map','list','apps','app'];a21_0x151b=function(){return _0x3c245f;};return a21_0x151b();}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(_0x1dfb4f,_0x163422){const _0x4aeaca=a21_0x7e75,_0x28c760=[],_0x462bcf=_0x1dfb4f[_0x4aeaca(0xea)]&&typeof _0x1dfb4f[_0x4aeaca(0xea)]===_0x4aeaca(0xd9)?_0x1dfb4f[_0x4aeaca(0xea)]:{},_0x19b211=_0x1dfb4f[_0x4aeaca(0xdf)]||undefined;for(const [_0x48381e,_0x41c2f2]of Object['entries'](_0x462bcf)){if(!_0x41c2f2||typeof _0x41c2f2!=='object'||!_0x41c2f2['appcode'])continue;_0x28c760['push']({'name':_0x48381e,'appcode':_0x41c2f2[_0x4aeaca(0xf2)],'named':!![],'definedIn':_0x163422,'isDefault':_0x48381e===_0x19b211,...buildAppProfileListFields(_0x41c2f2)});}return _0x28c760;}function buildMergedItems(_0x17e827,_0xd2934d){const _0x4ca165=a21_0x7e75,{apps:apps={},defaultApp:_0x12a4a5}=_0x17e827,_0xb53472=_0xd2934d['globalConfig']['apps']&&typeof _0xd2934d[_0x4ca165(0xef)][_0x4ca165(0xea)]===_0x4ca165(0xd9)?_0xd2934d[_0x4ca165(0xef)][_0x4ca165(0xea)]:{},_0x28f6c2=_0xd2934d[_0x4ca165(0xe1)][_0x4ca165(0xea)]&&typeof _0xd2934d[_0x4ca165(0xe1)][_0x4ca165(0xea)]===_0x4ca165(0xd9)?_0xd2934d[_0x4ca165(0xe1)]['apps']:{},_0x4cb429=_0xd2934d[_0x4ca165(0xe1)][_0x4ca165(0xd8)]===![],_0x4d6a3c=Object[_0x4ca165(0xd6)](apps),_0x554316=_0x4d6a3c[_0x4ca165(0xe8)](([_0x24ebd8,_0x20ad96])=>({'name':_0x24ebd8,'appcode':_0x20ad96[_0x4ca165(0xf2)],'named':!![],'definedIn':appDefinedIn(_0x24ebd8,_0xb53472,_0x28f6c2,_0x4cb429),'isDefault':_0x24ebd8===_0x12a4a5,...buildAppProfileListFields(_0x20ad96)}));return _0x554316;}async function execute(_0x54d8fb){const _0x3dac44=a21_0x7e75,_0x84c5e=_0x54d8fb[_0x3dac44(0xd5)]('global'),_0x55a700=_0x54d8fb[_0x3dac44(0xd5)](_0x3dac44(0xe0)),_0x44ba8b=_0x84c5e?_0x3dac44(0xed):_0x55a700?_0x3dac44(0xe0):_0x3dac44(0xe4),{config:_0x309f17,layers:_0x53b3a2}=readRawConfigWithLayers(),_0x230b97=resolveDefaultAppSource(_0x53b3a2),{defaultApp:_0x1a3100}=_0x309f17;let _0x48011c,_0x10d2e8;switch(_0x44ba8b){case _0x3dac44(0xed):_0x48011c=buildItemsFromLayer(_0x53b3a2[_0x3dac44(0xef)],_0x3dac44(0xed)),_0x10d2e8=_0x53b3a2[_0x3dac44(0xdd)];break;case _0x3dac44(0xe0):_0x48011c=buildItemsFromLayer(_0x53b3a2[_0x3dac44(0xe1)],_0x3dac44(0xe0)),_0x10d2e8=_0x53b3a2['projectPath'];break;default:_0x48011c=buildMergedItems(_0x309f17,_0x53b3a2);break;}enrichAppListItemsWithMergedSelection(_0x48011c,_0x54d8fb[_0x3dac44(0xec)]);if(_0x48011c[_0x3dac44(0xe3)]===0x0){const _0x2588f7=_0x44ba8b===_0x3dac44(0xe4)?'':_0x3dac44(0xe6)+_0x44ba8b+_0x3dac44(0xdc);return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x2588f7+_0x3dac44(0xe7)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x27dede=_0x48011c['find'](_0x3ac2f2=>_0x3ac2f2[_0x3dac44(0xe2)]===!![]),_0x23355e=_0x1a3100??_0x27dede?.[_0x3dac44(0xf2)]??null,_0x488da6=_0x44ba8b==='merged'?{'globalPath':_0x53b3a2[_0x3dac44(0xdd)]??null,'projectPath':_0x53b3a2[_0x3dac44(0xf0)]??null,'defaultApp':_0x23355e,'defaultAppSource':_0x1a3100!=null?_0x230b97:null}:{'scope':_0x44ba8b,'configPath':_0x10d2e8??null};return{'ok':!![],'data':{'items':_0x48011c,'meta':_0x488da6}};}export const appListDefinition={'service':a21_0x469b86(0xeb),'command':a21_0x469b86(0xe9),'description':a21_0x469b86(0xde),'risk':a21_0x469b86(0xd4),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':'global','type':'boolean','description':a21_0x469b86(0xf5),'default':![]},{'name':a21_0x469b86(0xe0),'type':'boolean','description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};
1
+ function a21_0x4fbf(_0x54203c,_0x417ae5){_0x54203c=_0x54203c-0x1ac;const _0xdf3896=a21_0xdf38();let _0x4fbfbf=_0xdf3896[_0x54203c];return _0x4fbfbf;}const a21_0x40d94f=a21_0x4fbf;(function(_0x10dd5c,_0x71afab){const _0x439cc1=a21_0x4fbf,_0x11b170=_0x10dd5c();while(!![]){try{const _0x2bba33=-parseInt(_0x439cc1(0x1c8))/0x1*(-parseInt(_0x439cc1(0x1b1))/0x2)+-parseInt(_0x439cc1(0x1b2))/0x3+-parseInt(_0x439cc1(0x1bd))/0x4+parseInt(_0x439cc1(0x1ac))/0x5*(parseInt(_0x439cc1(0x1b7))/0x6)+parseInt(_0x439cc1(0x1cc))/0x7+parseInt(_0x439cc1(0x1c7))/0x8*(parseInt(_0x439cc1(0x1c3))/0x9)+parseInt(_0x439cc1(0x1bb))/0xa*(-parseInt(_0x439cc1(0x1bf))/0xb);if(_0x2bba33===_0x71afab)break;else _0x11b170['push'](_0x11b170['shift']());}catch(_0x2ac4cd){_0x11b170['push'](_0x11b170['shift']());}}}(a21_0xdf38,0x39d22));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 a21_0xdf38(){const _0x47ab02=['No\x20apps\x20configured','25ZpPRTP','list','object','boolean','defaultApp','10UkZPcZ','1263492RuBqYF','mergedCli','global','length','\x20in\x20','84426dCgQPT','globalConfig','isCurrent','project','90THuGfS','List\x20all\x20configured\x20apps','1235780JshknX','projectPath','112321WZDkWb','merged','entries','bool','3932892OmBucl','push','inherit','.\x20Use\x20`','8TDKlBT','76547ApLRkV','appcode','apps','globalPath','1181348dXFekf','projectConfig'];a21_0xdf38=function(){return _0x47ab02;};return a21_0xdf38();}function buildItemsFromLayer(_0x3a9694,_0x164a0a){const _0x2cf053=a21_0x4fbf,_0x615c80=[],_0x41463a=_0x3a9694[_0x2cf053(0x1ca)]&&typeof _0x3a9694[_0x2cf053(0x1ca)]===_0x2cf053(0x1ae)?_0x3a9694[_0x2cf053(0x1ca)]:{},_0x122c72=_0x3a9694[_0x2cf053(0x1b0)]||undefined;for(const [_0x24b5aa,_0x227758]of Object[_0x2cf053(0x1c1)](_0x41463a)){if(!_0x227758||typeof _0x227758!==_0x2cf053(0x1ae)||!_0x227758[_0x2cf053(0x1c9)])continue;_0x615c80[_0x2cf053(0x1c4)]({'name':_0x24b5aa,'appcode':_0x227758['appcode'],'named':!![],'definedIn':_0x164a0a,'isDefault':_0x24b5aa===_0x122c72,...buildAppProfileListFields(_0x227758)});}return _0x615c80;}function buildMergedItems(_0x20bbc4,_0x2bf6b2){const _0xac6a87=a21_0x4fbf,{apps:apps={},defaultApp:_0x4218d2}=_0x20bbc4,_0x17dba8=_0x2bf6b2[_0xac6a87(0x1b8)][_0xac6a87(0x1ca)]&&typeof _0x2bf6b2[_0xac6a87(0x1b8)][_0xac6a87(0x1ca)]===_0xac6a87(0x1ae)?_0x2bf6b2['globalConfig'][_0xac6a87(0x1ca)]:{},_0x410663=_0x2bf6b2['projectConfig'][_0xac6a87(0x1ca)]&&typeof _0x2bf6b2['projectConfig']['apps']===_0xac6a87(0x1ae)?_0x2bf6b2['projectConfig'][_0xac6a87(0x1ca)]:{},_0x30a289=_0x2bf6b2[_0xac6a87(0x1cd)][_0xac6a87(0x1c5)]===![],_0x2f84fc=Object[_0xac6a87(0x1c1)](apps),_0x1781af=_0x2f84fc['map'](([_0x1c81ff,_0x44fb90])=>({'name':_0x1c81ff,'appcode':_0x44fb90[_0xac6a87(0x1c9)],'named':!![],'definedIn':appDefinedIn(_0x1c81ff,_0x17dba8,_0x410663,_0x30a289),'isDefault':_0x1c81ff===_0x4218d2,...buildAppProfileListFields(_0x44fb90)}));return _0x1781af;}async function execute(_0x26dddb){const _0xd57b01=a21_0x4fbf,_0x38b918=_0x26dddb[_0xd57b01(0x1c2)](_0xd57b01(0x1b4)),_0x3d92b6=_0x26dddb['bool']('project'),_0x222288=_0x38b918?_0xd57b01(0x1b4):_0x3d92b6?_0xd57b01(0x1ba):_0xd57b01(0x1c0),{config:_0x3b1752,layers:_0x142f58}=readRawConfigWithLayers(),_0x5896d9=resolveDefaultAppSource(_0x142f58),{defaultApp:_0x471359}=_0x3b1752;let _0xe74a65,_0x298240;switch(_0x222288){case _0xd57b01(0x1b4):_0xe74a65=buildItemsFromLayer(_0x142f58[_0xd57b01(0x1b8)],'global'),_0x298240=_0x142f58[_0xd57b01(0x1cb)];break;case _0xd57b01(0x1ba):_0xe74a65=buildItemsFromLayer(_0x142f58[_0xd57b01(0x1cd)],_0xd57b01(0x1ba)),_0x298240=_0x142f58[_0xd57b01(0x1be)];break;default:_0xe74a65=buildMergedItems(_0x3b1752,_0x142f58);break;}enrichAppListItemsWithMergedSelection(_0xe74a65,_0x26dddb[_0xd57b01(0x1b3)]);if(_0xe74a65[_0xd57b01(0x1b5)]===0x0){const _0x5b2c94=_0x222288===_0xd57b01(0x1c0)?'':_0xd57b01(0x1b6)+_0x222288+'\x20config';return{'ok':!![],'data':[],'message':_0xd57b01(0x1ce)+_0x5b2c94+_0xd57b01(0x1c6)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x3f73ee=_0xe74a65['find'](_0x56df35=>_0x56df35[_0xd57b01(0x1b9)]===!![]),_0x433eaf=_0x471359??_0x3f73ee?.['appcode']??null,_0x2edc00=_0x222288===_0xd57b01(0x1c0)?{'globalPath':_0x142f58['globalPath']??null,'projectPath':_0x142f58['projectPath']??null,'defaultApp':_0x433eaf,'defaultAppSource':_0x471359!=null?_0x5896d9:null}:{'scope':_0x222288,'configPath':_0x298240??null};return{'ok':!![],'data':{'items':_0xe74a65,'meta':_0x2edc00}};}export const appListDefinition={'service':'app','command':a21_0x40d94f(0x1ad),'description':a21_0x40d94f(0x1bc),'risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x40d94f(0x1b4),'type':a21_0x40d94f(0x1af),'description':'Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','default':![]},{'name':a21_0x40d94f(0x1ba),'type':'boolean','description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0x2e1264=a22_0x5be3;function a22_0x2c81(){const _0x5c93cd=['object','globalConfig','high-risk-write','237sUbRIx','apps','110rdzHkN','\x22\x20still\x20defined\x20in\x20','name','\x20config.','App\x20profile\x20name\x20to\x20remove','16YXAoxe','713457HmObhE','2976PpvVFF','project','boolean','global','projectConfig','972BWyFtz','Removed\x20app\x20\x22','13XexPux','defaultApp','459906McmbJA','20JOWAWN','length','8283FCweYb','Usage:\x20','Remove\x20an\x20app\x20from\x20config','remove','\x20app\x20remove\x20<name>\x20[--global]','Use\x20global\x20config\x20scope','App\x20\x22','trim','keys','38751852FejxHj','4449711BgUneM','14781547KJpyPh','inherit','both','app','validation'];a22_0x2c81=function(){return _0x5c93cd;};return a22_0x2c81();}(function(_0x1bc168,_0x2774c0){const _0x414fe5=a22_0x5be3,_0x4a0f78=_0x1bc168();while(!![]){try{const _0x3fe26f=parseInt(_0x414fe5(0x12b))/0x1*(-parseInt(_0x414fe5(0x134))/0x2)+-parseInt(_0x414fe5(0x118))/0x3*(parseInt(_0x414fe5(0x111))/0x4)+parseInt(_0x414fe5(0x116))/0x5*(parseInt(_0x414fe5(0x115))/0x6)+parseInt(_0x414fe5(0x122))/0x7*(-parseInt(_0x414fe5(0x132))/0x8)+-parseInt(_0x414fe5(0x133))/0x9*(-parseInt(_0x414fe5(0x12d))/0xa)+-parseInt(_0x414fe5(0x123))/0xb+-parseInt(_0x414fe5(0x121))/0xc*(-parseInt(_0x414fe5(0x113))/0xd);if(_0x3fe26f===_0x2774c0)break;else _0x4a0f78['push'](_0x4a0f78['shift']());}catch(_0x3ab788){_0x4a0f78['push'](_0x4a0f78['shift']());}}}(a22_0x2c81,0xbbcca));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';function a22_0x5be3(_0x54dce4,_0x204e7e){_0x54dce4=_0x54dce4-0x10f;const _0x2c81cf=a22_0x2c81();let _0x5be3c0=_0x2c81cf[_0x54dce4];return _0x5be3c0;}async function validateArgs(_0x305fef){const _0xd75507=a22_0x5be3,_0x5c0879=_0x305fef['args'][0x0]?.[_0xd75507(0x11f)]();if(!_0x5c0879)throw CliErrors[_0xd75507(0x127)]('Missing\x20app\x20name.',_0xd75507(0x119)+CLI_BIN_NAME+_0xd75507(0x11c));}async function execute(_0x45d8d4){const _0x5398f1=a22_0x5be3,_0x733896=_0x45d8d4['args'][0x0]?.[_0x5398f1(0x11f)]();if(!_0x733896)throw CliErrors[_0x5398f1(0x127)]('Missing\x20app\x20name.',_0x5398f1(0x119)+CLI_BIN_NAME+_0x5398f1(0x11c));const _0x13d6cc=_0x45d8d4['bool']('global'),{config:_0x47f737,layers:_0x39f609}=readRawConfigWithLayers(),_0x12ee5e=_0x47f737[_0x5398f1(0x12c)]??{};if(!_0x12ee5e[_0x733896])throw CliErrors[_0x5398f1(0x127)]('App\x20\x22'+_0x733896+'\x22\x20not\x20found.');const _0x301972=_0x39f609[_0x5398f1(0x129)][_0x5398f1(0x12c)]&&typeof _0x39f609[_0x5398f1(0x129)][_0x5398f1(0x12c)]===_0x5398f1(0x128)?_0x39f609[_0x5398f1(0x129)][_0x5398f1(0x12c)]:{},_0x254702=_0x39f609['projectConfig'][_0x5398f1(0x12c)]&&typeof _0x39f609['projectConfig'][_0x5398f1(0x12c)]===_0x5398f1(0x128)?_0x39f609['projectConfig'][_0x5398f1(0x12c)]:{},_0x5ac879=appDefinedIn(_0x733896,_0x301972,_0x254702,_0x39f609[_0x5398f1(0x110)][_0x5398f1(0x124)]===![]),_0x5e4907=resolveAppScopeForWrite(_0x733896,_0x13d6cc,_0x39f609),_0x26d0f8={'global':_0x5e4907===_0x5398f1(0x10f)},_0x33e22e=readConfig(_0x26d0f8),_0x1e2636=_0x33e22e[_0x5398f1(0x12c)];if(!_0x1e2636||!_0x1e2636[_0x733896])throw CliErrors['validation'](_0x5398f1(0x11e)+_0x733896+'\x22\x20not\x20found.');delete _0x1e2636[_0x733896];let _0x9d8c46='';if(_0x33e22e[_0x5398f1(0x114)]===_0x733896){const _0x472a8f=Object['keys'](_0x1e2636);_0x33e22e[_0x5398f1(0x114)]=_0x472a8f[_0x5398f1(0x117)]>0x0?_0x472a8f[0x0]:undefined,_0x33e22e[_0x5398f1(0x114)]?_0x9d8c46='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x33e22e['defaultApp']+'\x22.':delete _0x33e22e[_0x5398f1(0x114)];}Object[_0x5398f1(0x120)](_0x1e2636)[_0x5398f1(0x117)]===0x0&&(delete _0x33e22e[_0x5398f1(0x12c)],delete _0x33e22e[_0x5398f1(0x114)]);writeConfig(_0x33e22e,_0x26d0f8);const _0x3e8481=_0x5ac879===_0x5398f1(0x125)?'\x20Note:\x20app\x20\x22'+_0x733896+_0x5398f1(0x12e)+(_0x5e4907===_0x5398f1(0x135)?_0x5398f1(0x10f):'project')+_0x5398f1(0x130):'';return{'ok':!![],'message':_0x5398f1(0x112)+_0x733896+'\x22'+scopeLabel(_0x26d0f8)+'.'+_0x9d8c46+_0x3e8481};}export const appRemoveDefinition={'service':a22_0x2e1264(0x126),'command':a22_0x2e1264(0x11b),'description':a22_0x2e1264(0x11a),'risk':a22_0x2e1264(0x12a),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x2e1264(0x12f),'description':a22_0x2e1264(0x131),'required':!![]}],'flags':[{'name':'global','type':a22_0x2e1264(0x136),'description':a22_0x2e1264(0x11d),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x59f42c=a22_0x3fe2;(function(_0x2baae7,_0x504e23){const _0x1b2938=a22_0x3fe2,_0x5ba7b3=_0x2baae7();while(!![]){try{const _0x4a1572=parseInt(_0x1b2938(0x1c6))/0x1+parseInt(_0x1b2938(0x1d1))/0x2+parseInt(_0x1b2938(0x1c9))/0x3*(parseInt(_0x1b2938(0x1c5))/0x4)+-parseInt(_0x1b2938(0x1ba))/0x5*(parseInt(_0x1b2938(0x1ce))/0x6)+parseInt(_0x1b2938(0x1aa))/0x7*(-parseInt(_0x1b2938(0x1c8))/0x8)+-parseInt(_0x1b2938(0x1cf))/0x9*(parseInt(_0x1b2938(0x1b7))/0xa)+parseInt(_0x1b2938(0x1c1))/0xb;if(_0x4a1572===_0x504e23)break;else _0x5ba7b3['push'](_0x5ba7b3['shift']());}catch(_0x32ce27){_0x5ba7b3['push'](_0x5ba7b3['shift']());}}}(a22_0x2442,0x8c699));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a22_0x3fe2(_0x104920,_0x3c6221){_0x104920=_0x104920-0x1aa;const _0x2442d3=a22_0x2442();let _0x3fe28c=_0x2442d3[_0x104920];return _0x3fe28c;}import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x3a38dc){const _0x4c5395=a22_0x3fe2,_0x26f61e=_0x3a38dc[_0x4c5395(0x1ad)][0x0]?.[_0x4c5395(0x1ae)]();if(!_0x26f61e)throw CliErrors[_0x4c5395(0x1c2)](_0x4c5395(0x1b9),_0x4c5395(0x1b6)+CLI_BIN_NAME+_0x4c5395(0x1cd));}async function execute(_0x18b496){const _0x2b3e7b=a22_0x3fe2,_0x5528eb=_0x18b496[_0x2b3e7b(0x1ad)][0x0]?.[_0x2b3e7b(0x1ae)]();if(!_0x5528eb)throw CliErrors[_0x2b3e7b(0x1c2)](_0x2b3e7b(0x1b9),_0x2b3e7b(0x1b6)+CLI_BIN_NAME+_0x2b3e7b(0x1cd));const _0x150973=_0x18b496[_0x2b3e7b(0x1b3)](_0x2b3e7b(0x1d0)),{config:_0x225f31,layers:_0x5aaad8}=readRawConfigWithLayers(),_0x1092eb=_0x225f31[_0x2b3e7b(0x1cb)]??{};if(!_0x1092eb[_0x5528eb])throw CliErrors[_0x2b3e7b(0x1c2)]('App\x20\x22'+_0x5528eb+_0x2b3e7b(0x1be));const _0x348608=_0x5aaad8[_0x2b3e7b(0x1c4)][_0x2b3e7b(0x1cb)]&&typeof _0x5aaad8[_0x2b3e7b(0x1c4)]['apps']===_0x2b3e7b(0x1ac)?_0x5aaad8[_0x2b3e7b(0x1c4)]['apps']:{},_0x323878=_0x5aaad8[_0x2b3e7b(0x1ca)][_0x2b3e7b(0x1cb)]&&typeof _0x5aaad8['projectConfig'][_0x2b3e7b(0x1cb)]===_0x2b3e7b(0x1ac)?_0x5aaad8[_0x2b3e7b(0x1ca)]['apps']:{},_0x4fcad5=appDefinedIn(_0x5528eb,_0x348608,_0x323878,_0x5aaad8[_0x2b3e7b(0x1ca)][_0x2b3e7b(0x1b1)]===![]),_0x334d51=resolveAppScopeForWrite(_0x5528eb,_0x150973,_0x5aaad8),_0x23edac={'global':_0x334d51==='global'},_0x5ba8f1=readConfig(_0x23edac),_0x475e20=_0x5ba8f1[_0x2b3e7b(0x1cb)];if(!_0x475e20||!_0x475e20[_0x5528eb])throw CliErrors['validation'](_0x2b3e7b(0x1c3)+_0x5528eb+_0x2b3e7b(0x1be));delete _0x475e20[_0x5528eb];let _0x47834e='';if(_0x5ba8f1[_0x2b3e7b(0x1b0)]===_0x5528eb){const _0x112615=Object[_0x2b3e7b(0x1bb)](_0x475e20);_0x5ba8f1[_0x2b3e7b(0x1b0)]=_0x112615[_0x2b3e7b(0x1c0)]>0x0?_0x112615[0x0]:undefined,_0x5ba8f1[_0x2b3e7b(0x1b0)]?_0x47834e='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x5ba8f1[_0x2b3e7b(0x1b0)]+'\x22.':delete _0x5ba8f1[_0x2b3e7b(0x1b0)];}Object[_0x2b3e7b(0x1bb)](_0x475e20)[_0x2b3e7b(0x1c0)]===0x0&&(delete _0x5ba8f1['apps'],delete _0x5ba8f1[_0x2b3e7b(0x1b0)]);writeConfig(_0x5ba8f1,_0x23edac);const _0x334d26=_0x4fcad5===_0x2b3e7b(0x1bc)?'\x20Note:\x20app\x20\x22'+_0x5528eb+_0x2b3e7b(0x1b2)+(_0x334d51===_0x2b3e7b(0x1b4)?_0x2b3e7b(0x1d0):'project')+_0x2b3e7b(0x1b8):'';return{'ok':!![],'message':'Removed\x20app\x20\x22'+_0x5528eb+'\x22'+scopeLabel(_0x23edac)+'.'+_0x47834e+_0x334d26};}export const appRemoveDefinition={'service':a22_0x59f42c(0x1b5),'command':a22_0x59f42c(0x1bf),'description':a22_0x59f42c(0x1ab),'risk':a22_0x59f42c(0x1cc),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x59f42c(0x1c7),'description':a22_0x59f42c(0x1af),'required':!![]}],'flags':[{'name':a22_0x59f42c(0x1d0),'type':a22_0x59f42c(0x1bd),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};function a22_0x2442(){const _0x3a8a82=['Usage:\x20','1212610kcoycs','\x20config.','Missing\x20app\x20name.','28385kmgJpR','keys','both','boolean','\x22\x20not\x20found.','remove','length','2459897yXgGdL','validation','App\x20\x22','globalConfig','6320LoiQMd','956614GkZcOz','name','32JawmzG','1368RNNJGA','projectConfig','apps','high-risk-write','\x20app\x20remove\x20<name>\x20[--global]','654aGdljv','72TYkRzn','global','2085946xXXKsM','1364447ZysvGB','Remove\x20an\x20app\x20from\x20config','object','args','trim','App\x20profile\x20name\x20to\x20remove','defaultApp','inherit','\x22\x20still\x20defined\x20in\x20','bool','project','app'];a22_0x2442=function(){return _0x3a8a82;};return a22_0x2442();}
@@ -1 +1 @@
1
- (function(_0x343c85,_0x114f10){const _0x431ab8=a23_0xe25a,_0x55b56d=_0x343c85();while(!![]){try{const _0x559cec=-parseInt(_0x431ab8(0x1c7))/0x1*(-parseInt(_0x431ab8(0x1d7))/0x2)+parseInt(_0x431ab8(0x1c8))/0x3*(parseInt(_0x431ab8(0x1c2))/0x4)+parseInt(_0x431ab8(0x1c3))/0x5*(parseInt(_0x431ab8(0x1be))/0x6)+-parseInt(_0x431ab8(0x1c9))/0x7*(parseInt(_0x431ab8(0x1c6))/0x8)+-parseInt(_0x431ab8(0x1d3))/0x9*(parseInt(_0x431ab8(0x1cb))/0xa)+parseInt(_0x431ab8(0x1bc))/0xb+-parseInt(_0x431ab8(0x1bd))/0xc;if(_0x559cec===_0x114f10)break;else _0x55b56d['push'](_0x55b56d['shift']());}catch(_0x5eebde){_0x55b56d['push'](_0x55b56d['shift']());}}}(a23_0x61eb,0x5d2e7));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x1a2096,_0x5a877e){const _0x4d5187=a23_0xe25a;if(!_0x5a877e)return;const _0x2dfaed=_0x5a877e['apps']&&typeof _0x5a877e['apps']===_0x4d5187(0x1d8)?_0x5a877e[_0x4d5187(0x1ce)]:{},_0x464efb=Object[_0x4d5187(0x1cf)](_0x2dfaed)[_0x4d5187(0x1dc)]>0x0;for(const _0x3816ff of _0x1a2096){_0x3816ff[_0x4d5187(0x1ca)]=![];}const _0x55315c=_0x5a877e[_0x4d5187(0x1d2)]!=null?String(_0x5a877e[_0x4d5187(0x1d2)])[_0x4d5187(0x1d0)]():'';if(_0x464efb){const _0x57ddb1=_0x5a877e[_0x4d5187(0x1d9)]??_0x5a877e[_0x4d5187(0x1d4)];if(_0x57ddb1)for(const _0x1dec1b of _0x1a2096){_0x1dec1b['named']===!![]&&_0x1dec1b[_0x4d5187(0x1d1)]===_0x57ddb1&&(_0x1dec1b[_0x4d5187(0x1ca)]=!![]);}for(const _0x368158 of _0x1a2096){if(_0x368158[_0x4d5187(0x1cd)]!==![])continue;if(_0x5a877e['defaultApp'])continue;_0x55315c&&String(_0x368158[_0x4d5187(0x1cc)]??'')[_0x4d5187(0x1d0)]()===_0x55315c&&(_0x368158[_0x4d5187(0x1ca)]=!![]);}return;}if(!_0x55315c)return;for(const _0xea18ba of _0x1a2096){String(_0xea18ba[_0x4d5187(0x1cc)]??'')['trim']()===_0x55315c&&(_0xea18ba[_0x4d5187(0x1ca)]=!![]);}}export function resolveAppScopeForWrite(_0x45ea69,_0x4a23dc,_0x19bf2c){const _0x7cae03=a23_0xe25a;if(_0x4a23dc)return _0x7cae03(0x1dd);const _0x5bcab3=_0x19bf2c[_0x7cae03(0x1d5)][_0x7cae03(0x1ce)]&&typeof _0x19bf2c['projectConfig']['apps']===_0x7cae03(0x1d8)?_0x19bf2c[_0x7cae03(0x1d5)][_0x7cae03(0x1ce)]:{},_0x2bc1be=_0x19bf2c[_0x7cae03(0x1c4)][_0x7cae03(0x1ce)]&&typeof _0x19bf2c[_0x7cae03(0x1c4)]['apps']===_0x7cae03(0x1d8)?_0x19bf2c[_0x7cae03(0x1c4)][_0x7cae03(0x1ce)]:{};if(Object[_0x7cae03(0x1bf)][_0x7cae03(0x1c5)]['call'](_0x5bcab3,_0x45ea69))return _0x7cae03(0x1d6);if(Object[_0x7cae03(0x1bf)]['hasOwnProperty'][_0x7cae03(0x1db)](_0x2bc1be,_0x45ea69))return _0x7cae03(0x1dd);return _0x7cae03(0x1d6);}export function appDefinedIn(_0xac7558,_0x3b154a,_0x2adc12,_0x3f980c){const _0x37e8e1=a23_0xe25a;if(_0x3f980c)return Object[_0x37e8e1(0x1bf)][_0x37e8e1(0x1c5)][_0x37e8e1(0x1db)](_0x2adc12,_0xac7558)?'project':_0x37e8e1(0x1dd);const _0x519e2c=Object[_0x37e8e1(0x1bf)]['hasOwnProperty'][_0x37e8e1(0x1db)](_0x3b154a,_0xac7558),_0x5d831b=Object[_0x37e8e1(0x1bf)][_0x37e8e1(0x1c5)][_0x37e8e1(0x1db)](_0x2adc12,_0xac7558);if(_0x519e2c&&_0x5d831b)return _0x37e8e1(0x1c0);if(_0x5d831b)return _0x37e8e1(0x1d6);return _0x37e8e1(0x1dd);}function a23_0x61eb(){const _0x14ace8=['4jeuBVb','object','currentApp','inherit','call','length','global','7289623lfjyFo','8797032NGSgvj','57306tEyVuy','prototype','both','\x20(global)','2360HBEVgB','75yaViYI','globalConfig','hasOwnProperty','192fcfMhz','17905HvFTul','1896tgLaTk','224OWGKFp','isCurrent','7030xoSEKN','appcode','named','apps','keys','trim','name','appCode','1269HOtiZY','defaultApp','projectConfig','project'];a23_0x61eb=function(){return _0x14ace8;};return a23_0x61eb();}export function resolveDefaultAppSource(_0x1a8edc){const _0x506cad=a23_0xe25a,_0x8a22af=_0x1a8edc[_0x506cad(0x1d5)][_0x506cad(0x1ce)]&&typeof _0x1a8edc[_0x506cad(0x1d5)][_0x506cad(0x1ce)]===_0x506cad(0x1d8)?_0x1a8edc[_0x506cad(0x1d5)][_0x506cad(0x1ce)]:{};if(_0x506cad(0x1d4)in _0x1a8edc[_0x506cad(0x1d5)])return _0x506cad(0x1d6);if(Object[_0x506cad(0x1cf)](_0x8a22af)[_0x506cad(0x1dc)]>0x0)return _0x506cad(0x1d6);if(_0x1a8edc[_0x506cad(0x1d5)][_0x506cad(0x1da)]===![])return null;if(_0x1a8edc['globalConfig'][_0x506cad(0x1d4)])return _0x506cad(0x1dd);return null;}export function getConfigPath(_0x1fd4bb={}){const _0x57014f=a23_0xe25a,_0x4ef894=_0x1fd4bb[_0x57014f(0x1dd)]?_0x57014f(0x1dd):_0x57014f(0x1d6);return resolveWriteConfigPath(_0x4ef894);}export function readConfig(_0x5b5f1c={}){return readConfigFile(getConfigPath(_0x5b5f1c));}function a23_0xe25a(_0x389710,_0x196a68){_0x389710=_0x389710-0x1bc;const _0x61eb41=a23_0x61eb();let _0xe25aef=_0x61eb41[_0x389710];return _0xe25aef;}export function writeConfig(_0x28f6f7,_0x38b7ed={}){writeConfigFile(getConfigPath(_0x38b7ed),_0x28f6f7);}export function scopeLabel(_0x550b3d){const _0x10102a=a23_0xe25a;return _0x550b3d[_0x10102a(0x1dd)]?_0x10102a(0x1c1):'';}
1
+ function a23_0x364c(_0x59152a,_0x129b81){_0x59152a=_0x59152a-0x86;const _0xa4eea4=a23_0xa4ee();let _0x364cd4=_0xa4eea4[_0x59152a];return _0x364cd4;}(function(_0x15298e,_0x19fb5c){const _0x2cf201=a23_0x364c,_0x343d27=_0x15298e();while(!![]){try{const _0x14d72e=parseInt(_0x2cf201(0x92))/0x1*(-parseInt(_0x2cf201(0xa3))/0x2)+parseInt(_0x2cf201(0x91))/0x3+parseInt(_0x2cf201(0x8a))/0x4*(parseInt(_0x2cf201(0x96))/0x5)+-parseInt(_0x2cf201(0x99))/0x6*(parseInt(_0x2cf201(0x8f))/0x7)+-parseInt(_0x2cf201(0xa2))/0x8+-parseInt(_0x2cf201(0x9f))/0x9*(parseInt(_0x2cf201(0x95))/0xa)+parseInt(_0x2cf201(0x86))/0xb;if(_0x14d72e===_0x19fb5c)break;else _0x343d27['push'](_0x343d27['shift']());}catch(_0x20e3ed){_0x343d27['push'](_0x343d27['shift']());}}}(a23_0xa4ee,0x45dee));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x48f35f,_0x1e6540){const _0x2353fb=a23_0x364c;if(!_0x1e6540)return;const _0x3f12a2=_0x1e6540[_0x2353fb(0x8d)]&&typeof _0x1e6540[_0x2353fb(0x8d)]===_0x2353fb(0x9a)?_0x1e6540['apps']:{},_0x5c6a50=Object[_0x2353fb(0xa0)](_0x3f12a2)[_0x2353fb(0x8e)]>0x0;for(const _0x22a07c of _0x48f35f){_0x22a07c[_0x2353fb(0x93)]=![];}const _0x3a84c8=_0x1e6540[_0x2353fb(0x90)]!=null?String(_0x1e6540[_0x2353fb(0x90)])['trim']():'';if(_0x5c6a50){const _0x5a71d5=_0x1e6540[_0x2353fb(0x88)]??_0x1e6540[_0x2353fb(0x89)];if(_0x5a71d5)for(const _0x34d0e4 of _0x48f35f){_0x34d0e4['named']===!![]&&_0x34d0e4[_0x2353fb(0xa1)]===_0x5a71d5&&(_0x34d0e4[_0x2353fb(0x93)]=!![]);}for(const _0x338407 of _0x48f35f){if(_0x338407[_0x2353fb(0x9e)]!==![])continue;if(_0x1e6540[_0x2353fb(0x89)])continue;_0x3a84c8&&String(_0x338407[_0x2353fb(0x97)]??'')[_0x2353fb(0x94)]()===_0x3a84c8&&(_0x338407[_0x2353fb(0x93)]=!![]);}return;}if(!_0x3a84c8)return;for(const _0xc87f7e of _0x48f35f){String(_0xc87f7e[_0x2353fb(0x97)]??'')['trim']()===_0x3a84c8&&(_0xc87f7e[_0x2353fb(0x93)]=!![]);}}export function resolveAppScopeForWrite(_0x523766,_0x43c3ad,_0x16e9e5){const _0x86f486=a23_0x364c;if(_0x43c3ad)return _0x86f486(0x9d);const _0x5067f9=_0x16e9e5['projectConfig']['apps']&&typeof _0x16e9e5['projectConfig'][_0x86f486(0x8d)]===_0x86f486(0x9a)?_0x16e9e5['projectConfig'][_0x86f486(0x8d)]:{},_0x524e5a=_0x16e9e5['globalConfig'][_0x86f486(0x8d)]&&typeof _0x16e9e5['globalConfig'][_0x86f486(0x8d)]==='object'?_0x16e9e5[_0x86f486(0x8c)][_0x86f486(0x8d)]:{};if(Object[_0x86f486(0x87)][_0x86f486(0x9c)][_0x86f486(0x9b)](_0x5067f9,_0x523766))return _0x86f486(0x98);if(Object[_0x86f486(0x87)]['hasOwnProperty']['call'](_0x524e5a,_0x523766))return _0x86f486(0x9d);return _0x86f486(0x98);}export function appDefinedIn(_0x3798ae,_0x420ce8,_0x1c18a4,_0x55363c){const _0x38a7d7=a23_0x364c;if(_0x55363c)return Object[_0x38a7d7(0x87)][_0x38a7d7(0x9c)][_0x38a7d7(0x9b)](_0x1c18a4,_0x3798ae)?'project':_0x38a7d7(0x9d);const _0x20c186=Object[_0x38a7d7(0x87)][_0x38a7d7(0x9c)][_0x38a7d7(0x9b)](_0x420ce8,_0x3798ae),_0x20aa74=Object[_0x38a7d7(0x87)][_0x38a7d7(0x9c)][_0x38a7d7(0x9b)](_0x1c18a4,_0x3798ae);if(_0x20c186&&_0x20aa74)return'both';if(_0x20aa74)return _0x38a7d7(0x98);return _0x38a7d7(0x9d);}function a23_0xa4ee(){const _0x1e5271=['projectConfig','7217232ShGbiB','prototype','currentApp','defaultApp','15944FdzgnN','inherit','globalConfig','apps','length','259UZMxgx','appCode','1431981JBKMHW','1kTSGUw','isCurrent','trim','115370JzOSBK','95tjAjYu','appcode','project','27678AEzQjx','object','call','hasOwnProperty','global','named','342LpHbdS','keys','name','1456GXcGGc','627428WeMYLE'];a23_0xa4ee=function(){return _0x1e5271;};return a23_0xa4ee();}export function resolveDefaultAppSource(_0xdbfdb1){const _0x43fdf4=a23_0x364c,_0xdfd63b=_0xdbfdb1[_0x43fdf4(0xa4)]['apps']&&typeof _0xdbfdb1[_0x43fdf4(0xa4)][_0x43fdf4(0x8d)]===_0x43fdf4(0x9a)?_0xdbfdb1[_0x43fdf4(0xa4)][_0x43fdf4(0x8d)]:{};if(_0x43fdf4(0x89)in _0xdbfdb1[_0x43fdf4(0xa4)])return _0x43fdf4(0x98);if(Object[_0x43fdf4(0xa0)](_0xdfd63b)['length']>0x0)return _0x43fdf4(0x98);if(_0xdbfdb1[_0x43fdf4(0xa4)][_0x43fdf4(0x8b)]===![])return null;if(_0xdbfdb1[_0x43fdf4(0x8c)][_0x43fdf4(0x89)])return _0x43fdf4(0x9d);return null;}export function getConfigPath(_0x4e30d0={}){const _0x274ae4=a23_0x364c,_0x268f13=_0x4e30d0[_0x274ae4(0x9d)]?_0x274ae4(0x9d):_0x274ae4(0x98);return resolveWriteConfigPath(_0x268f13);}export function readConfig(_0x53fabe={}){return readConfigFile(getConfigPath(_0x53fabe));}export function writeConfig(_0x4db50e,_0x196ccc={}){writeConfigFile(getConfigPath(_0x196ccc),_0x4db50e);}export function scopeLabel(_0x39bbb6){const _0x2d123e=a23_0x364c;return _0x39bbb6[_0x2d123e(0x9d)]?'\x20(global)':'';}
@@ -1 +1 @@
1
- const a24_0x177d92=a24_0x55e1;function a24_0x24b9(){const _0x441f9e=['837108ETHpwA','write','Default\x20app\x20set\x20to\x20\x22','projectConfig','hasOwnProperty','App\x20profile\x20name\x20to\x20activate','Usage:\x20','\x22\x20(appcode:\x20','\x0aNote:\x20\x22','4hSuFKg','appcode','call','use','defaultApp','app','projectPath','trim','\x20app\x20use\x20<name>\x20[--global]','App\x20\x22','\x20--appcode\x20<code>`\x20first.','2994568apEsdN','length','7CddyiD','1345611QQwHqM','2624220AmaGLH','global','Missing\x20app\x20name.','apps','Switch\x20the\x20default\x20app','2OPjCkP','2363730dGCEpI','bool','\x22\x20not\x20found.','validation','\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.','\x20app\x20add\x20','keys','2169165Ijnfit','222017zWEfyM','args','Available:\x20','Use\x20global\x20config\x20scope'];a24_0x24b9=function(){return _0x441f9e;};return a24_0x24b9();}(function(_0x43f0ee,_0x5ebaca){const _0x67d3f5=a24_0x55e1,_0x4373d3=_0x43f0ee();while(!![]){try{const _0x3242b0=parseInt(_0x67d3f5(0xd8))/0x1+parseInt(_0x67d3f5(0xcf))/0x2*(parseInt(_0x67d3f5(0xc9))/0x3)+-parseInt(_0x67d3f5(0xe5))/0x4*(parseInt(_0x67d3f5(0xd7))/0x5)+-parseInt(_0x67d3f5(0xdc))/0x6+-parseInt(_0x67d3f5(0xc8))/0x7*(parseInt(_0x67d3f5(0xc6))/0x8)+parseInt(_0x67d3f5(0xca))/0x9+parseInt(_0x67d3f5(0xd0))/0xa;if(_0x3242b0===_0x5ebaca)break;else _0x4373d3['push'](_0x4373d3['shift']());}catch(_0x5e1265){_0x4373d3['push'](_0x4373d3['shift']());}}}(a24_0x24b9,0x3d3d3));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(_0x4ce6dc){const _0x35544f=a24_0x55e1,_0x2e7181=_0x4ce6dc[_0x35544f(0xd9)][0x0]?.[_0x35544f(0xec)]();if(!_0x2e7181)throw CliErrors['validation'](_0x35544f(0xcc),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');}function a24_0x55e1(_0x663be2,_0x2771de){_0x663be2=_0x663be2-0xc3;const _0x24b984=a24_0x24b9();let _0x55e1bf=_0x24b984[_0x663be2];return _0x55e1bf;}async function execute(_0x458798){const _0x2ec972=a24_0x55e1,_0x6f0ebb=_0x458798[_0x2ec972(0xd9)][0x0]?.[_0x2ec972(0xec)]();if(!_0x6f0ebb)throw CliErrors[_0x2ec972(0xd3)]('Missing\x20app\x20name.',_0x2ec972(0xe2)+CLI_BIN_NAME+_0x2ec972(0xc3));const _0x2ffda5=_0x458798[_0x2ec972(0xd1)]('global'),{config:_0x3e115d,layers:_0x51901a}=readRawConfigWithLayers(),_0x51ba6f=_0x3e115d[_0x2ec972(0xcd)]??{};if(!_0x51ba6f[_0x6f0ebb]){const _0x25c9b1=Object[_0x2ec972(0xd6)](_0x51ba6f),_0x3b7829=_0x25c9b1[_0x2ec972(0xc7)]===0x0?'Use\x20`'+CLI_BIN_NAME+_0x2ec972(0xd5)+_0x6f0ebb+_0x2ec972(0xc5):_0x2ec972(0xda)+_0x25c9b1['join'](',\x20');throw CliErrors[_0x2ec972(0xd3)](_0x2ec972(0xc4)+_0x6f0ebb+_0x2ec972(0xd2),_0x3b7829);}let _0x2a8c19,_0x330974='';if(_0x2ffda5)_0x2a8c19={'global':!![]};else{const _0x4eea54=isInProject()&&!!_0x51901a[_0x2ec972(0xeb)];_0x2a8c19={'global':!_0x4eea54};if(_0x4eea54){const _0x219079=_0x51901a[_0x2ec972(0xdf)][_0x2ec972(0xcd)]&&typeof _0x51901a[_0x2ec972(0xdf)][_0x2ec972(0xcd)]==='object'?_0x51901a[_0x2ec972(0xdf)][_0x2ec972(0xcd)]:{};!Object['prototype'][_0x2ec972(0xe0)][_0x2ec972(0xe7)](_0x219079,_0x6f0ebb)&&(_0x330974=_0x2ec972(0xe4)+_0x6f0ebb+_0x2ec972(0xd4));}}const _0x5a1e33=readConfig(_0x2a8c19);return _0x5a1e33[_0x2ec972(0xe9)]=_0x6f0ebb,writeConfig(_0x5a1e33,_0x2a8c19),{'ok':!![],'message':_0x2ec972(0xde)+_0x6f0ebb+_0x2ec972(0xe3)+_0x51ba6f[_0x6f0ebb][_0x2ec972(0xe6)]+')'+scopeLabel(_0x2a8c19)+_0x330974};}export const appUseDefinition={'service':a24_0x177d92(0xea),'command':a24_0x177d92(0xe8),'description':a24_0x177d92(0xce),'risk':a24_0x177d92(0xdd),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a24_0x177d92(0xe1),'required':!![]}],'flags':[{'name':a24_0x177d92(0xcb),'type':'boolean','description':a24_0x177d92(0xdb),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x5b5aee=a24_0x149d;(function(_0x2284dd,_0x461de3){const _0xc535a5=a24_0x149d,_0xc1e32=_0x2284dd();while(!![]){try{const _0x37e4a9=parseInt(_0xc535a5(0x1c0))/0x1+parseInt(_0xc535a5(0x1c6))/0x2+parseInt(_0xc535a5(0x1ba))/0x3*(parseInt(_0xc535a5(0x1c1))/0x4)+-parseInt(_0xc535a5(0x1b3))/0x5*(-parseInt(_0xc535a5(0x1b2))/0x6)+-parseInt(_0xc535a5(0x1af))/0x7+-parseInt(_0xc535a5(0x1bd))/0x8*(-parseInt(_0xc535a5(0x1b9))/0x9)+-parseInt(_0xc535a5(0x1bf))/0xa*(parseInt(_0xc535a5(0x1ac))/0xb);if(_0x37e4a9===_0x461de3)break;else _0xc1e32['push'](_0xc1e32['shift']());}catch(_0x157dd0){_0xc1e32['push'](_0xc1e32['shift']());}}}(a24_0x2525,0x50374));function a24_0x2525(){const _0x42fc4a=['use','4191WtJGjS','validation','Missing\x20app\x20name.','2101743QPHHJl','\x22\x20not\x20found.','\x22\x20(appcode:\x20','18QMvaUh','957050vxnKuM','Available:\x20','\x20app\x20add\x20','Usage:\x20','boolean','global','1350TNNfOW','3XIoozp','Switch\x20the\x20default\x20app','call','16056xfNFcV','App\x20\x22','41180oyEDpC','92154JXVluq','2609276PdzRFd','prototype','write','trim','\x20app\x20use\x20<name>\x20[--global]','1156036gQsVTC','join','Use\x20`','keys','bool','appcode','projectPath','App\x20profile\x20name\x20to\x20activate','app','apps','Default\x20app\x20set\x20to\x20\x22','projectConfig','args'];a24_0x2525=function(){return _0x42fc4a;};return a24_0x2525();}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(_0x36a5a6){const _0x7340e6=a24_0x149d,_0x325e01=_0x36a5a6[_0x7340e6(0x1aa)][0x0]?.[_0x7340e6(0x1c4)]();if(!_0x325e01)throw CliErrors[_0x7340e6(0x1ad)](_0x7340e6(0x1ae),_0x7340e6(0x1b6)+CLI_BIN_NAME+_0x7340e6(0x1c5));}async function execute(_0x1a76a0){const _0x553e85=a24_0x149d,_0x5bda41=_0x1a76a0[_0x553e85(0x1aa)][0x0]?.['trim']();if(!_0x5bda41)throw CliErrors[_0x553e85(0x1ad)]('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x553e85(0x1c5));const _0x4a1507=_0x1a76a0[_0x553e85(0x1ca)](_0x553e85(0x1b8)),{config:_0x510014,layers:_0x2520d2}=readRawConfigWithLayers(),_0x295932=_0x510014[_0x553e85(0x1cf)]??{};if(!_0x295932[_0x5bda41]){const _0x12fd29=Object[_0x553e85(0x1c9)](_0x295932),_0x711d24=_0x12fd29['length']===0x0?_0x553e85(0x1c8)+CLI_BIN_NAME+_0x553e85(0x1b5)+_0x5bda41+'\x20--appcode\x20<code>`\x20first.':_0x553e85(0x1b4)+_0x12fd29[_0x553e85(0x1c7)](',\x20');throw CliErrors['validation'](_0x553e85(0x1be)+_0x5bda41+_0x553e85(0x1b0),_0x711d24);}let _0xedd006,_0xac5cbe='';if(_0x4a1507)_0xedd006={'global':!![]};else{const _0x4b8012=isInProject()&&!!_0x2520d2[_0x553e85(0x1cc)];_0xedd006={'global':!_0x4b8012};if(_0x4b8012){const _0x45b9fd=_0x2520d2[_0x553e85(0x1d1)][_0x553e85(0x1cf)]&&typeof _0x2520d2[_0x553e85(0x1d1)]['apps']==='object'?_0x2520d2[_0x553e85(0x1d1)][_0x553e85(0x1cf)]:{};!Object[_0x553e85(0x1c2)]['hasOwnProperty'][_0x553e85(0x1bc)](_0x45b9fd,_0x5bda41)&&(_0xac5cbe='\x0aNote:\x20\x22'+_0x5bda41+'\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.');}}const _0x4ee739=readConfig(_0xedd006);return _0x4ee739['defaultApp']=_0x5bda41,writeConfig(_0x4ee739,_0xedd006),{'ok':!![],'message':_0x553e85(0x1d0)+_0x5bda41+_0x553e85(0x1b1)+_0x295932[_0x5bda41][_0x553e85(0x1cb)]+')'+scopeLabel(_0xedd006)+_0xac5cbe};}function a24_0x149d(_0x6228d5,_0x2c95fa){_0x6228d5=_0x6228d5-0x1aa;const _0x252557=a24_0x2525();let _0x149df3=_0x252557[_0x6228d5];return _0x149df3;}export const appUseDefinition={'service':a24_0x5b5aee(0x1ce),'command':a24_0x5b5aee(0x1ab),'description':a24_0x5b5aee(0x1bb),'risk':a24_0x5b5aee(0x1c3),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a24_0x5b5aee(0x1cd),'required':!![]}],'flags':[{'name':a24_0x5b5aee(0x1b8),'type':a24_0x5b5aee(0x1b7),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- function a25_0x24e5(_0x2182f0,_0x4891c3){_0x2182f0=_0x2182f0-0xb2;const _0xf7f974=a25_0xf7f9();let _0x24e52d=_0xf7f974[_0x2182f0];return _0x24e52d;}function a25_0xf7f9(){const _0x6d88=['bool','login','boolean','write','nonInteractive','390Utjfub','yes','1431856RBAGuY','!\x20Not\x20logged\x20in','647544GptzxO','Login\x20via\x20browser','✓\x20Logged\x20out','log','2717856HBUVvs','Clear\x20login\x20session','auth','../../auth/auth-server-ui.js','140038EWTsLU','1188470lahVnt','70551uwDmUj','217IlxgFF','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','read','30536mQsFPe','1JNTCua'];a25_0xf7f9=function(){return _0x6d88;};return a25_0xf7f9();}const a25_0x4916f8=a25_0x24e5;(function(_0x39a02e,_0x11bf98){const _0x54ef2c=a25_0x24e5,_0x1a0c8c=_0x39a02e();while(!![]){try{const _0x5006e7=parseInt(_0x54ef2c(0xba))/0x1*(-parseInt(_0x54ef2c(0xb3))/0x2)+-parseInt(_0x54ef2c(0xc4))/0x3+parseInt(_0x54ef2c(0xc2))/0x4+parseInt(_0x54ef2c(0xb4))/0x5+-parseInt(_0x54ef2c(0xc8))/0x6+-parseInt(_0x54ef2c(0xb6))/0x7*(-parseInt(_0x54ef2c(0xb9))/0x8)+-parseInt(_0x54ef2c(0xb5))/0x9*(-parseInt(_0x54ef2c(0xc0))/0xa);if(_0x5006e7===_0x11bf98)break;else _0x1a0c8c['push'](_0x1a0c8c['shift']());}catch(_0x39bd64){_0x1a0c8c['push'](_0x1a0c8c['shift']());}}}(a25_0xf7f9,0x4491f));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x4916f8(0xca),'command':a25_0x4916f8(0xbc),'description':a25_0x4916f8(0xc5),'risk':a25_0x4916f8(0xb8),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'yes','type':a25_0x4916f8(0xbd),'description':a25_0x4916f8(0xb7),'default':![]}],async 'execute'(_0x1d2530){const _0x1238c6=a25_0x4916f8,{runAuthServer:_0x1b7524}=await import(_0x1238c6(0xb2));return await _0x1b7524({'autoYes':_0x1d2530[_0x1238c6(0xbb)](_0x1238c6(0xc1)),'nonInteractive':_0x1d2530[_0x1238c6(0xbf)]}),{'ok':!![]};}},{'service':a25_0x4916f8(0xca),'command':'logout','description':a25_0x4916f8(0xc9),'risk':a25_0x4916f8(0xbe),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4e0f32){const _0x30eb32=a25_0x4916f8;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x30eb32(0xc7)](_0x30eb32(0xc6))):console['log'](_0x30eb32(0xc3)),{'ok':!![]};}}];
1
+ const a25_0x2c168b=a25_0x337f;(function(_0x515760,_0x3f002d){const _0x4eef95=a25_0x337f,_0x59af78=_0x515760();while(!![]){try{const _0xf3055a=-parseInt(_0x4eef95(0xa2))/0x1*(parseInt(_0x4eef95(0xa5))/0x2)+-parseInt(_0x4eef95(0xb0))/0x3*(-parseInt(_0x4eef95(0xac))/0x4)+parseInt(_0x4eef95(0xae))/0x5*(-parseInt(_0x4eef95(0xb7))/0x6)+parseInt(_0x4eef95(0xab))/0x7*(parseInt(_0x4eef95(0xb5))/0x8)+-parseInt(_0x4eef95(0xb6))/0x9*(-parseInt(_0x4eef95(0xb2))/0xa)+-parseInt(_0x4eef95(0xaf))/0xb*(-parseInt(_0x4eef95(0xb3))/0xc)+parseInt(_0x4eef95(0xad))/0xd*(-parseInt(_0x4eef95(0xa1))/0xe);if(_0xf3055a===_0x3f002d)break;else _0x59af78['push'](_0x59af78['shift']());}catch(_0x2593e8){_0x59af78['push'](_0x59af78['shift']());}}}(a25_0x5435,0x88e49));function a25_0x5435(){const _0x5222d0=['write','!\x20Not\x20logged\x20in','auth','login','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','7vLVUcP','148340xbkOhN','143793mlstuN','1336805tjBddg','88SWtNbk','69Dnwpfo','Clear\x20login\x20session','2230KBwLbM','1666236edneyH','yes','1437256LzEJHp','18783ArBysx','6WRCaNF','✓\x20Logged\x20out','Login\x20via\x20browser','bool','882tKfulK','3985RgRQQg','nonInteractive','log','544FRsHLN'];a25_0x5435=function(){return _0x5222d0;};return a25_0x5435();}function a25_0x337f(_0x18f000,_0x4d34b4){_0x18f000=_0x18f000-0xa0;const _0x543596=a25_0x5435();let _0x337f20=_0x543596[_0x18f000];return _0x337f20;}import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x2c168b(0xa8),'command':a25_0x2c168b(0xa9),'description':a25_0x2c168b(0xb9),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x2c168b(0xb4),'type':'boolean','description':a25_0x2c168b(0xaa),'default':![]}],async 'execute'(_0x4d375d){const _0x5ef860=a25_0x2c168b,{runAuthServer:_0x119b27}=await import('../../auth/auth-server-ui.js');return await _0x119b27({'autoYes':_0x4d375d[_0x5ef860(0xa0)]('yes'),'nonInteractive':_0x4d375d[_0x5ef860(0xa3)]}),{'ok':!![]};}},{'service':'auth','command':'logout','description':a25_0x2c168b(0xb1),'risk':a25_0x2c168b(0xa6),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x452b50){const _0x11b776=a25_0x2c168b;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x11b776(0xa4)](_0x11b776(0xb8))):console[_0x11b776(0xa4)](_0x11b776(0xa7)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a26_0x3596b9=a26_0x1372;(function(_0x419038,_0x4f0e11){const _0x318e53=a26_0x1372,_0x2b2c22=_0x419038();while(!![]){try{const _0xd1460d=parseInt(_0x318e53(0x1f7))/0x1+-parseInt(_0x318e53(0x1dd))/0x2*(-parseInt(_0x318e53(0x1e4))/0x3)+parseInt(_0x318e53(0x1fd))/0x4+parseInt(_0x318e53(0x218))/0x5+parseInt(_0x318e53(0x1cf))/0x6+parseInt(_0x318e53(0x1d0))/0x7*(parseInt(_0x318e53(0x1f6))/0x8)+parseInt(_0x318e53(0x20e))/0x9*(-parseInt(_0x318e53(0x1e3))/0xa);if(_0xd1460d===_0x4f0e11)break;else _0x2b2c22['push'](_0x2b2c22['shift']());}catch(_0xfeb9a4){_0x2b2c22['push'](_0x2b2c22['shift']());}}}(a26_0x4251,0x5020d));import{createInterface}from'node:readline';function a26_0x4251(){const _0x2037bb=['\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','type','keys','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','map','utf8','create','Script\x20type','685365KUPRSU','No\x20operation\x20types\x20found\x20for\x20dataset\x20','join','\x22\x20not\x20found\x20for\x20dataset\x20','parseInt','Alias\x20\x22','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','after','Available\x20aliases:\x20','operationType','string','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','nonInteractive','length','entries','scriptsRootDir','Invalid\x20function\x20name\x20\x22','name','2314962xZfqSy','8428lOgLJw','stderr','function-node','write','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','alias','\x0a\x20*\x20[触发节点]\x20','.js','includes','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','Select\x20dataset:','Operation\x20type\x20(HOOK\x20only)','find','9182MkkxDB','str','HOOK\x20requires\x20alias/operation/node\x20options.','description','.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','\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','10735810hxZojj','156fLsDyd','HOOK','TODO:\x20add\x20script\x20description','File\x20already\x20exists:\x20','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Invalid\x20dataset\x20selection.','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','before','apiDir','tableName','\x20function:\x20','datasetCode','functionNode','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','No\x20datasets\x20found\x20for\x20this\x20app.','trim','424hVYDLM','51761AivfvR','bff','Function\x20name\x20(valid\x20JS\x20identifier)','No\x20api.ts\x20found.\x20Run\x20`','\x22.\x20','\x22\x20not\x20found.\x20','2098324vzQFnD','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','question','Trigger\x20node\x20(HOOK\x20only)','Dataset\x20not\x20found\x20for\x20code\x20\x22','COMMON','operation-type','stdin','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','validation','Select\x20operation\x20type:','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','code','close','appCode','9aJketQ','ENDPOINT'];a26_0x4251=function(){return _0x2037bb;};return a26_0x4251();}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_0x3596b9(0x1f8),'command':a26_0x3596b9(0x216),'description':a26_0x3596b9(0x21e),'risk':'write','flags':[{'name':a26_0x3596b9(0x211),'type':a26_0x3596b9(0x223),'required':!![],'enum':['COMMON',a26_0x3596b9(0x20f),'HOOK'],'description':a26_0x3596b9(0x217)},{'name':a26_0x3596b9(0x1ce),'type':a26_0x3596b9(0x223),'required':!![],'description':a26_0x3596b9(0x1f9)},{'name':a26_0x3596b9(0x1e0),'type':a26_0x3596b9(0x223),'description':'Script\x20description'},{'name':a26_0x3596b9(0x1d5),'type':a26_0x3596b9(0x223),'description':a26_0x3596b9(0x1d9)},{'name':'datasetcode','type':a26_0x3596b9(0x223),'description':a26_0x3596b9(0x1ff)},{'name':a26_0x3596b9(0x204),'type':a26_0x3596b9(0x223),'description':a26_0x3596b9(0x1db)},{'name':a26_0x3596b9(0x1d2),'type':a26_0x3596b9(0x223),'description':a26_0x3596b9(0x201),'enum':[a26_0x3596b9(0x1ec),a26_0x3596b9(0x220)]}],async 'validate'(_0xc2f7e7){const _0xe9e50=a26_0x3596b9,_0x2f8069=_0xc2f7e7['str']('name');if(!isValidBffFunctionName(_0x2f8069))throw CliErrors[_0xe9e50(0x207)](_0xe9e50(0x1cd)+_0x2f8069+_0xe9e50(0x20a));},async 'execute'(_0x30fc16){const _0x4b18e0=a26_0x3596b9,_0x3951ee=loadBffProjectConfig(_0x30fc16[_0x4b18e0(0x20d)]),_0x4105c5=_0x30fc16[_0x4b18e0(0x1de)](_0x4b18e0(0x211)),_0x54a8dc=_0x30fc16[_0x4b18e0(0x1de)]('name'),_0x4ebdfc=_0x30fc16[_0x4b18e0(0x1de)](_0x4b18e0(0x1e0))||undefined,_0x402dcb=_0x4105c5===_0x4b18e0(0x1e5)?await resolveHookOptions(_0x3951ee,_0x30fc16):undefined,_0x1f2609=buildFilePath(_0x3951ee,_0x4105c5,_0x54a8dc,_0x402dcb);if(await fileExists(_0x1f2609))throw CliErrors['validation'](_0x4b18e0(0x1e7)+_0x1f2609);await mkdir(dirname(_0x1f2609),{'recursive':!![]});const _0x2cfbd9=generateTemplate(_0x4105c5,_0x54a8dc,_0x30fc16['appCode'],_0x4ebdfc,_0x402dcb);await writeFile(_0x1f2609,_0x2cfbd9,_0x4b18e0(0x215));const _0x3a79d6={'type':_0x4105c5,'name':_0x54a8dc,'path':_0x1f2609};if(_0x4ebdfc)_0x3a79d6[_0x4b18e0(0x1e0)]=_0x4ebdfc;if(_0x402dcb){if(_0x402dcb[_0x4b18e0(0x1d5)])_0x3a79d6[_0x4b18e0(0x1d5)]=_0x402dcb['alias'];_0x3a79d6[_0x4b18e0(0x1f0)]=_0x402dcb[_0x4b18e0(0x1f0)],_0x3a79d6['operationType']=_0x402dcb[_0x4b18e0(0x222)],_0x3a79d6[_0x4b18e0(0x1f1)]=_0x402dcb['functionNode'];}return{'ok':!![],'data':_0x3a79d6,'message':'Created\x20'+_0x4105c5+_0x4b18e0(0x1ef)+_0x54a8dc};}};async function resolveHookOptions(_0x21c539,_0x33f56d){const _0x2d71ff=a26_0x3596b9,_0x38f1de=loadAliasMap(_0x33f56d[_0x2d71ff(0x1ed)],undefined,resolveApiFilePath(_0x33f56d['apiDir'],_0x33f56d[_0x2d71ff(0x20d)])),_0x16b417=_0x38f1de[_0x2d71ff(0x226)]>0x0;let _0x57670b,_0x337ce0,_0x353e0d;const _0x992fcc=_0x33f56d['str'](_0x2d71ff(0x1d5)),_0x1c4f66=_0x33f56d['str']('datasetcode');if(_0x992fcc){const _0x39d3aa=resolveAlias(_0x33f56d[_0x2d71ff(0x1ed)],_0x992fcc,undefined,resolveApiFilePath(_0x33f56d[_0x2d71ff(0x1ed)],_0x33f56d[_0x2d71ff(0x20d)]));if(!_0x39d3aa){const _0x5adf96=_0x16b417?_0x2d71ff(0x221)+_0x38f1de[_0x2d71ff(0x214)](_0x5b0446=>_0x5b0446[_0x2d71ff(0x1d5)])[_0x2d71ff(0x21a)](',\x20'):_0x2d71ff(0x1fa)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors['validation'](_0x2d71ff(0x21d)+_0x992fcc+_0x2d71ff(0x1fc)+_0x5adf96);}_0x57670b=_0x992fcc,_0x337ce0=_0x39d3aa;}else{if(_0x1c4f66){_0x337ce0=_0x1c4f66;const _0x171e24=_0x38f1de[_0x2d71ff(0x1dc)](_0x3eec74=>_0x3eec74['datasetCode']===_0x1c4f66);_0x57670b=_0x171e24?.[_0x2d71ff(0x1d5)];}else{if(_0x33f56d[_0x2d71ff(0x225)])throw CliErrors[_0x2d71ff(0x207)](_0x2d71ff(0x1f2));else{if(_0x16b417){const _0xfcd7f1=_0x38f1de[_0x2d71ff(0x214)](_0x1aabce=>_0x1aabce['alias']+'\x20('+_0x1aabce[_0x2d71ff(0x1ee)]+')'),_0x250dc2=await promptSelect(_0x2d71ff(0x1da),_0xfcd7f1),_0x21b53f=_0x38f1de[_0x250dc2];if(!_0x21b53f)throw CliErrors[_0x2d71ff(0x207)](_0x2d71ff(0x1e9));_0x57670b=_0x21b53f[_0x2d71ff(0x1d5)],_0x337ce0=_0x21b53f[_0x2d71ff(0x1f0)];}else{const _0x5c13d8=await listDatasets(_0x33f56d[_0x2d71ff(0x20d)]);if(_0x5c13d8[_0x2d71ff(0x226)]===0x0)throw CliErrors[_0x2d71ff(0x207)](_0x2d71ff(0x1f4));const _0x12691c=_0x5c13d8[_0x2d71ff(0x214)](_0xc9c576=>_0xc9c576['name']+'\x20('+_0xc9c576[_0x2d71ff(0x20b)]+')'),_0x13325b=await promptSelect(_0x2d71ff(0x1da),_0x12691c),_0x596e1c=_0x5c13d8[_0x13325b];if(!_0x596e1c)throw CliErrors[_0x2d71ff(0x207)]('Invalid\x20dataset\x20selection.');_0x337ce0=_0x596e1c[_0x2d71ff(0x20b)],_0x57670b=undefined;}}}}const _0x471909=await listDatasets(_0x33f56d[_0x2d71ff(0x20d)]),_0x4718c1=_0x471909['find'](_0x26aba1=>_0x26aba1[_0x2d71ff(0x20b)]===_0x337ce0);if(!_0x4718c1)throw CliErrors[_0x2d71ff(0x207)](_0x2d71ff(0x202)+_0x337ce0+_0x2d71ff(0x1fb)+(_0x57670b?_0x2d71ff(0x1fe)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x353e0d=_0x4718c1['id'];const _0x27d591=_0x57670b??_0x337ce0,_0x1f9990=await listBffDatasetOperations(_0x33f56d['appCode'],_0x353e0d),_0x152bf5=_0x1f9990?Object[_0x2d71ff(0x212)](_0x1f9990):[];if(_0x152bf5[_0x2d71ff(0x226)]===0x0)throw CliErrors[_0x2d71ff(0x207)](_0x2d71ff(0x219)+_0x27d591+'.');let _0x18a4b3;const _0x53e9b0=_0x33f56d[_0x2d71ff(0x1de)](_0x2d71ff(0x204));if(_0x53e9b0){if(!_0x152bf5[_0x2d71ff(0x1d8)](_0x53e9b0))throw CliErrors[_0x2d71ff(0x207)]('Operation\x20type\x20\x22'+_0x53e9b0+_0x2d71ff(0x21b)+_0x27d591+'.\x20'+('Available:\x20'+_0x152bf5[_0x2d71ff(0x21a)](',\x20')));_0x18a4b3=_0x53e9b0;}else{if(_0x33f56d['nonInteractive'])throw CliErrors[_0x2d71ff(0x207)](_0x2d71ff(0x1f3));const _0x433d15=await promptSelect(_0x2d71ff(0x208),_0x152bf5);_0x18a4b3=_0x152bf5[_0x433d15]??_0x152bf5[0x0];}let _0x95c4ba=normalizeHookFunctionNode(_0x33f56d['str'](_0x2d71ff(0x1d2)));if(!_0x95c4ba){if(_0x33f56d[_0x2d71ff(0x1de)](_0x2d71ff(0x1d2)))throw CliErrors['validation'](_0x2d71ff(0x224));if(_0x33f56d[_0x2d71ff(0x225)])throw CliErrors[_0x2d71ff(0x207)](_0x2d71ff(0x1e8));const _0x236ec5=await promptSelect('Select\x20trigger\x20node:',[_0x2d71ff(0x1ec),_0x2d71ff(0x220)]);_0x95c4ba=['before',_0x2d71ff(0x220)][_0x236ec5]??'before';}return{'alias':_0x57670b,'datasetCode':_0x337ce0,'datasetId':_0x353e0d,'operationType':_0x18a4b3,'functionNode':_0x95c4ba};}async function promptSelect(_0x17ce9a,_0x21cd3d){const _0x568bf3=a26_0x3596b9;if(_0x21cd3d[_0x568bf3(0x226)]===0x1)return 0x0;for(const [_0x5efcc3,_0x52db1c]of _0x21cd3d[_0x568bf3(0x1cb)]()){process[_0x568bf3(0x1d1)][_0x568bf3(0x1d3)]('\x20\x20'+(_0x5efcc3+0x1)+'.\x20'+_0x52db1c+'\x0a');}const _0x1f1646=createInterface({'input':process[_0x568bf3(0x205)],'output':process[_0x568bf3(0x1d1)]});while(!![]){const _0x19ce18=await new Promise(_0x12568a=>{const _0x2c5306=_0x568bf3;_0x1f1646[_0x2c5306(0x200)](_0x17ce9a+'\x20',_0x12568a);}),_0x3bf1e8=Number[_0x568bf3(0x21c)](_0x19ce18[_0x568bf3(0x1f5)](),0xa);if(Number['isInteger'](_0x3bf1e8)&&_0x3bf1e8>=0x1&&_0x3bf1e8<=_0x21cd3d[_0x568bf3(0x226)])return _0x1f1646[_0x568bf3(0x20c)](),_0x3bf1e8-0x1;process[_0x568bf3(0x1d1)][_0x568bf3(0x1d3)](_0x568bf3(0x1eb)+_0x21cd3d[_0x568bf3(0x226)]+'.\x0a');}}function a26_0x1372(_0x162ec3,_0x588454){_0x162ec3=_0x162ec3-0x1cb;const _0x4251fd=a26_0x4251();let _0x137219=_0x4251fd[_0x162ec3];return _0x137219;}function buildFilePath(_0x25810f,_0x31c9e3,_0x59b84b,_0x20447c){const _0x2dd549=a26_0x3596b9;if(_0x31c9e3===_0x2dd549(0x1e5)){if(!_0x20447c)throw CliErrors['validation'](_0x2dd549(0x1df));const _0x1aed5c=_0x20447c[_0x2dd549(0x1d5)]??_0x20447c[_0x2dd549(0x1f0)];return join(_0x25810f['scriptsRootDir'],_0x2dd549(0x1e5),_0x1aed5c,_0x20447c['operationType'],_0x20447c[_0x2dd549(0x1f1)],_0x59b84b+_0x2dd549(0x1d7));}return join(_0x25810f[_0x2dd549(0x1cc)],_0x31c9e3,_0x59b84b+_0x2dd549(0x1d7));}export function generateTemplate(_0x48075d,_0x57d6c7,_0x20b1ee,_0xf6d35e,_0x4e4223){const _0x24c7e0=a26_0x3596b9,_0x420d32=_0xf6d35e?.[_0x24c7e0(0x1f5)]()||_0x24c7e0(0x1e6);if(_0x48075d===_0x24c7e0(0x203))return _0x24c7e0(0x1d4)+_0x420d32+'\x0a\x20*\x20[脚本名称]\x20'+_0x57d6c7+_0x24c7e0(0x206)+_0x57d6c7+_0x24c7e0(0x1e1)+_0x57d6c7+_0x24c7e0(0x213);if(_0x48075d===_0x24c7e0(0x20f))return _0x24c7e0(0x1ea)+_0x420d32+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/'+_0x20b1ee+'/'+_0x57d6c7+_0x24c7e0(0x210)+_0x57d6c7+_0x24c7e0(0x213);if(!_0x4e4223)throw CliErrors[_0x24c7e0(0x207)](_0x24c7e0(0x209));return _0x24c7e0(0x21f)+_0x420d32+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0x20b1ee+'/'+_0x4e4223[_0x24c7e0(0x1f0)]+'/'+_0x4e4223[_0x24c7e0(0x222)]+_0x24c7e0(0x1d6)+_0x4e4223['functionNode']+_0x24c7e0(0x1e2)+_0x57d6c7+_0x24c7e0(0x213);}
1
+ const a26_0x347fd2=a26_0xb46f;(function(_0x215cb6,_0x3a88a2){const _0x4236cd=a26_0xb46f,_0x4d9411=_0x215cb6();while(!![]){try{const _0x5828fd=parseInt(_0x4236cd(0x1d7))/0x1+parseInt(_0x4236cd(0x19c))/0x2+parseInt(_0x4236cd(0x1b9))/0x3+parseInt(_0x4236cd(0x1e0))/0x4*(parseInt(_0x4236cd(0x1aa))/0x5)+parseInt(_0x4236cd(0x1b7))/0x6+-parseInt(_0x4236cd(0x1b3))/0x7+parseInt(_0x4236cd(0x1c9))/0x8*(-parseInt(_0x4236cd(0x1a3))/0x9);if(_0x5828fd===_0x3a88a2)break;else _0x4d9411['push'](_0x4d9411['shift']());}catch(_0x10e06c){_0x4d9411['push'](_0x4d9411['shift']());}}}(a26_0x469f,0x44b50));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';function a26_0xb46f(_0x44b907,_0x5632ff){_0x44b907=_0x44b907-0x195;const _0x469fff=a26_0x469f();let _0xb46f76=_0x469fff[_0x44b907];return _0xb46f76;}function a26_0x469f(){const _0x3cc40c=['utf8','datasetCode','scriptsRootDir','question','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','stderr','function-node','\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','Trigger\x20node\x20(HOOK\x20only)','includes','Alias\x20\x22','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','198342GQNOao','Invalid\x20function\x20name\x20\x22','Select\x20dataset:','tableName','stdin','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','18INooYx','COMMON','Dataset\x20not\x20found\x20for\x20code\x20\x22','\x22\x20not\x20found\x20for\x20dataset\x20','trim','Script\x20type','after','62710KiPQGT','Select\x20trigger\x20node:','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Script\x20description','parseInt','before','functionNode','code','Available:\x20','3023629JfzZut','operationType','Invalid\x20dataset\x20selection.','join','3364626HyTSbf','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','1603614WIypeT','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','apiDir','.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','write','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','name','map','validation','ENDPOINT','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','close','string','Operation\x20type\x20(HOOK\x20only)','No\x20datasets\x20found\x20for\x20this\x20app.','length','3045048JAhXmT','Function\x20name\x20(valid\x20JS\x20identifier)','\x0a\x20*\x20[脚本名称]\x20','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','description','TODO:\x20add\x20script\x20description','.js','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','Created\x20','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','appCode','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','\x20api\x20pull`\x20to\x20refresh.','204901fISWec','find','HOOK','No\x20operation\x20types\x20found\x20for\x20dataset\x20','No\x20api.ts\x20found.\x20Run\x20`','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','type','str','operation-type','24ZezxPa','nonInteractive','Operation\x20type\x20\x22','alias','keys','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.'];a26_0x469f=function(){return _0x3cc40c;};return a26_0x469f();}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':'bff','command':'create','description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':a26_0x347fd2(0x1bd),'flags':[{'name':a26_0x347fd2(0x1dd),'type':a26_0x347fd2(0x1c5),'required':!![],'enum':[a26_0x347fd2(0x1a4),a26_0x347fd2(0x1c2),a26_0x347fd2(0x1d9)],'description':a26_0x347fd2(0x1a8)},{'name':a26_0x347fd2(0x1bf),'type':'string','required':!![],'description':a26_0x347fd2(0x1ca)},{'name':a26_0x347fd2(0x1ce),'type':a26_0x347fd2(0x1c5),'description':a26_0x347fd2(0x1ad)},{'name':a26_0x347fd2(0x1e3),'type':a26_0x347fd2(0x1c5),'description':a26_0x347fd2(0x1ba)},{'name':'datasetcode','type':a26_0x347fd2(0x1c5),'description':a26_0x347fd2(0x1d3)},{'name':a26_0x347fd2(0x1df),'type':'string','description':a26_0x347fd2(0x1c6)},{'name':a26_0x347fd2(0x196),'type':'string','description':a26_0x347fd2(0x198),'enum':[a26_0x347fd2(0x1af),a26_0x347fd2(0x1a9)]}],async 'validate'(_0x4f307f){const _0x41c2c4=a26_0x347fd2,_0x48faef=_0x4f307f['str']('name');if(!isValidBffFunctionName(_0x48faef))throw CliErrors[_0x41c2c4(0x1c1)](_0x41c2c4(0x19d)+_0x48faef+_0x41c2c4(0x1d1));},async 'execute'(_0x2d8bcb){const _0x5ba7ef=a26_0x347fd2,_0x3be1df=loadBffProjectConfig(_0x2d8bcb[_0x5ba7ef(0x1d4)]),_0x46ffd6=_0x2d8bcb[_0x5ba7ef(0x1de)]('type'),_0x4b7729=_0x2d8bcb[_0x5ba7ef(0x1de)](_0x5ba7ef(0x1bf)),_0x42ea00=_0x2d8bcb[_0x5ba7ef(0x1de)](_0x5ba7ef(0x1ce))||undefined,_0x4617de=_0x46ffd6==='HOOK'?await resolveHookOptions(_0x3be1df,_0x2d8bcb):undefined,_0x20a6b0=buildFilePath(_0x3be1df,_0x46ffd6,_0x4b7729,_0x4617de);if(await fileExists(_0x20a6b0))throw CliErrors['validation']('File\x20already\x20exists:\x20'+_0x20a6b0);await mkdir(dirname(_0x20a6b0),{'recursive':!![]});const _0xedf75c=generateTemplate(_0x46ffd6,_0x4b7729,_0x2d8bcb['appCode'],_0x42ea00,_0x4617de);await writeFile(_0x20a6b0,_0xedf75c,_0x5ba7ef(0x1e6));const _0x215ff7={'type':_0x46ffd6,'name':_0x4b7729,'path':_0x20a6b0};if(_0x42ea00)_0x215ff7['description']=_0x42ea00;if(_0x4617de){if(_0x4617de[_0x5ba7ef(0x1e3)])_0x215ff7['alias']=_0x4617de[_0x5ba7ef(0x1e3)];_0x215ff7[_0x5ba7ef(0x1e7)]=_0x4617de[_0x5ba7ef(0x1e7)],_0x215ff7[_0x5ba7ef(0x1b4)]=_0x4617de[_0x5ba7ef(0x1b4)],_0x215ff7[_0x5ba7ef(0x1b0)]=_0x4617de['functionNode'];}return{'ok':!![],'data':_0x215ff7,'message':_0x5ba7ef(0x1d2)+_0x46ffd6+'\x20function:\x20'+_0x4b7729};}};async function resolveHookOptions(_0x208833,_0x3470f9){const _0x8c1ff3=a26_0x347fd2,_0x544569=loadAliasMap(_0x3470f9[_0x8c1ff3(0x1bb)],undefined,resolveApiFilePath(_0x3470f9[_0x8c1ff3(0x1bb)],_0x3470f9[_0x8c1ff3(0x1d4)])),_0x36299b=_0x544569[_0x8c1ff3(0x1c8)]>0x0;let _0x15c645,_0x56e28c,_0x4adc3a;const _0x5a8dc8=_0x3470f9[_0x8c1ff3(0x1de)](_0x8c1ff3(0x1e3)),_0x30e1ec=_0x3470f9[_0x8c1ff3(0x1de)]('datasetcode');if(_0x5a8dc8){const _0x2ef05d=resolveAlias(_0x3470f9[_0x8c1ff3(0x1bb)],_0x5a8dc8,undefined,resolveApiFilePath(_0x3470f9['apiDir'],_0x3470f9['appCode']));if(!_0x2ef05d){const _0xea3d6b=_0x36299b?'Available\x20aliases:\x20'+_0x544569[_0x8c1ff3(0x1c0)](_0x17ab47=>_0x17ab47[_0x8c1ff3(0x1e3)])[_0x8c1ff3(0x1b6)](',\x20'):_0x8c1ff3(0x1db)+CLI_BIN_NAME+_0x8c1ff3(0x1be);throw CliErrors[_0x8c1ff3(0x1c1)](_0x8c1ff3(0x19a)+_0x5a8dc8+'\x22\x20not\x20found.\x20'+_0xea3d6b);}_0x15c645=_0x5a8dc8,_0x56e28c=_0x2ef05d;}else{if(_0x30e1ec){_0x56e28c=_0x30e1ec;const _0x3c270e=_0x544569[_0x8c1ff3(0x1d8)](_0x12ca25=>_0x12ca25[_0x8c1ff3(0x1e7)]===_0x30e1ec);_0x15c645=_0x3c270e?.['alias'];}else{if(_0x3470f9['nonInteractive'])throw CliErrors[_0x8c1ff3(0x1c1)](_0x8c1ff3(0x1ea));else{if(_0x36299b){const _0x557fb1=_0x544569[_0x8c1ff3(0x1c0)](_0x4e71a9=>_0x4e71a9[_0x8c1ff3(0x1e3)]+'\x20('+_0x4e71a9[_0x8c1ff3(0x19f)]+')'),_0x1db8fd=await promptSelect(_0x8c1ff3(0x19e),_0x557fb1),_0x303e45=_0x544569[_0x1db8fd];if(!_0x303e45)throw CliErrors[_0x8c1ff3(0x1c1)](_0x8c1ff3(0x1b5));_0x15c645=_0x303e45[_0x8c1ff3(0x1e3)],_0x56e28c=_0x303e45[_0x8c1ff3(0x1e7)];}else{const _0x1d16b7=await listDatasets(_0x3470f9['appCode']);if(_0x1d16b7[_0x8c1ff3(0x1c8)]===0x0)throw CliErrors['validation'](_0x8c1ff3(0x1c7));const _0x37a0c3=_0x1d16b7[_0x8c1ff3(0x1c0)](_0x1c0031=>_0x1c0031['name']+'\x20('+_0x1c0031['code']+')'),_0x1e6589=await promptSelect(_0x8c1ff3(0x19e),_0x37a0c3),_0x1d47fa=_0x1d16b7[_0x1e6589];if(!_0x1d47fa)throw CliErrors['validation'](_0x8c1ff3(0x1b5));_0x56e28c=_0x1d47fa[_0x8c1ff3(0x1b1)],_0x15c645=undefined;}}}}const _0x50c60a=await listDatasets(_0x3470f9[_0x8c1ff3(0x1d4)]),_0x14eea0=_0x50c60a[_0x8c1ff3(0x1d8)](_0x5923a2=>_0x5923a2[_0x8c1ff3(0x1b1)]===_0x56e28c);if(!_0x14eea0)throw CliErrors[_0x8c1ff3(0x1c1)](_0x8c1ff3(0x1a5)+_0x56e28c+'\x22.\x20'+(_0x15c645?_0x8c1ff3(0x1a1)+CLI_BIN_NAME+_0x8c1ff3(0x1d6):''));_0x4adc3a=_0x14eea0['id'];const _0x2901f6=_0x15c645??_0x56e28c,_0x48615f=await listBffDatasetOperations(_0x3470f9['appCode'],_0x4adc3a),_0x13a7c2=_0x48615f?Object[_0x8c1ff3(0x1e4)](_0x48615f):[];if(_0x13a7c2[_0x8c1ff3(0x1c8)]===0x0)throw CliErrors[_0x8c1ff3(0x1c1)](_0x8c1ff3(0x1da)+_0x2901f6+'.');let _0x5ca240;const _0x1c36aa=_0x3470f9[_0x8c1ff3(0x1de)](_0x8c1ff3(0x1df));if(_0x1c36aa){if(!_0x13a7c2[_0x8c1ff3(0x199)](_0x1c36aa))throw CliErrors[_0x8c1ff3(0x1c1)](_0x8c1ff3(0x1e2)+_0x1c36aa+_0x8c1ff3(0x1a6)+_0x2901f6+'.\x20'+(_0x8c1ff3(0x1b2)+_0x13a7c2[_0x8c1ff3(0x1b6)](',\x20')));_0x5ca240=_0x1c36aa;}else{if(_0x3470f9[_0x8c1ff3(0x1e1)])throw CliErrors[_0x8c1ff3(0x1c1)]('--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x39d16=await promptSelect('Select\x20operation\x20type:',_0x13a7c2);_0x5ca240=_0x13a7c2[_0x39d16]??_0x13a7c2[0x0];}let _0x8e030d=normalizeHookFunctionNode(_0x3470f9[_0x8c1ff3(0x1de)](_0x8c1ff3(0x196)));if(!_0x8e030d){if(_0x3470f9[_0x8c1ff3(0x1de)]('function-node'))throw CliErrors[_0x8c1ff3(0x1c1)](_0x8c1ff3(0x1dc));if(_0x3470f9['nonInteractive'])throw CliErrors[_0x8c1ff3(0x1c1)](_0x8c1ff3(0x1b8));const _0x5cc36e=await promptSelect(_0x8c1ff3(0x1ab),['before',_0x8c1ff3(0x1a9)]);_0x8e030d=[_0x8c1ff3(0x1af),_0x8c1ff3(0x1a9)][_0x5cc36e]??'before';}return{'alias':_0x15c645,'datasetCode':_0x56e28c,'datasetId':_0x4adc3a,'operationType':_0x5ca240,'functionNode':_0x8e030d};}async function promptSelect(_0x1172c0,_0x3a27fd){const _0x51b7b8=a26_0x347fd2;if(_0x3a27fd[_0x51b7b8(0x1c8)]===0x1)return 0x0;for(const [_0xd9019e,_0x16371f]of _0x3a27fd['entries']()){process[_0x51b7b8(0x195)][_0x51b7b8(0x1bd)]('\x20\x20'+(_0xd9019e+0x1)+'.\x20'+_0x16371f+'\x0a');}const _0x14a87c=createInterface({'input':process[_0x51b7b8(0x1a0)],'output':process[_0x51b7b8(0x195)]});while(!![]){const _0x134f92=await new Promise(_0x483c4e=>{const _0x92e9d0=_0x51b7b8;_0x14a87c[_0x92e9d0(0x1e9)](_0x1172c0+'\x20',_0x483c4e);}),_0x21a8c0=Number[_0x51b7b8(0x1ae)](_0x134f92[_0x51b7b8(0x1a7)](),0xa);if(Number['isInteger'](_0x21a8c0)&&_0x21a8c0>=0x1&&_0x21a8c0<=_0x3a27fd[_0x51b7b8(0x1c8)])return _0x14a87c[_0x51b7b8(0x1c4)](),_0x21a8c0-0x1;process[_0x51b7b8(0x195)]['write']('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x3a27fd['length']+'.\x0a');}}function buildFilePath(_0x27887d,_0x5c98dd,_0xd15031,_0x3e46ac){const _0xac8364=a26_0x347fd2;if(_0x5c98dd===_0xac8364(0x1d9)){if(!_0x3e46ac)throw CliErrors[_0xac8364(0x1c1)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x4a8733=_0x3e46ac[_0xac8364(0x1e3)]??_0x3e46ac[_0xac8364(0x1e7)];return join(_0x27887d[_0xac8364(0x1e8)],'HOOK',_0x4a8733,_0x3e46ac[_0xac8364(0x1b4)],_0x3e46ac[_0xac8364(0x1b0)],_0xd15031+'.js');}return join(_0x27887d[_0xac8364(0x1e8)],_0x5c98dd,_0xd15031+_0xac8364(0x1d0));}export function generateTemplate(_0x5a44f5,_0x4b33e4,_0x357f75,_0x12f880,_0x44f786){const _0x4fb141=a26_0x347fd2,_0x81018c=_0x12f880?.['trim']()||_0x4fb141(0x1cf);if(_0x5a44f5==='COMMON')return _0x4fb141(0x1cc)+_0x81018c+_0x4fb141(0x1cb)+_0x4b33e4+_0x4fb141(0x1d5)+_0x4b33e4+_0x4fb141(0x1bc)+_0x4b33e4+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x5a44f5===_0x4fb141(0x1c2))return _0x4fb141(0x1c3)+_0x81018c+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/'+_0x357f75+'/'+_0x4b33e4+_0x4fb141(0x1a2)+_0x4b33e4+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(!_0x44f786)throw CliErrors[_0x4fb141(0x1c1)](_0x4fb141(0x1e5));return _0x4fb141(0x1ac)+_0x81018c+_0x4fb141(0x19b)+_0x357f75+'/'+_0x44f786[_0x4fb141(0x1e7)]+'/'+_0x44f786[_0x4fb141(0x1b4)]+'\x0a\x20*\x20[触发节点]\x20'+_0x44f786[_0x4fb141(0x1b0)]+_0x4fb141(0x197)+_0x4b33e4+_0x4fb141(0x1cd);}
@@ -1 +1 @@
1
- const a27_0x4957d9=a27_0x5d86;(function(_0x1e8aeb,_0x297216){const _0xcb4879=a27_0x5d86,_0x39e2cb=_0x1e8aeb();while(!![]){try{const _0x276531=parseInt(_0xcb4879(0x184))/0x1+parseInt(_0xcb4879(0x186))/0x2+-parseInt(_0xcb4879(0x189))/0x3*(-parseInt(_0xcb4879(0x19d))/0x4)+-parseInt(_0xcb4879(0x19a))/0x5*(-parseInt(_0xcb4879(0x1a1))/0x6)+-parseInt(_0xcb4879(0x1af))/0x7*(-parseInt(_0xcb4879(0x19c))/0x8)+-parseInt(_0xcb4879(0x181))/0x9+-parseInt(_0xcb4879(0x180))/0xa*(parseInt(_0xcb4879(0x191))/0xb);if(_0x276531===_0x297216)break;else _0x39e2cb['push'](_0x39e2cb['shift']());}catch(_0x205bdd){_0x39e2cb['push'](_0x39e2cb['shift']());}}}(a27_0x5c70,0x2ea15));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';function a27_0x5d86(_0xd9d62,_0x4b35b1){_0xd9d62=_0xd9d62-0x17a;const _0x5c705f=a27_0x5c70();let _0x5d8640=_0x5c705f[_0xd9d62];return _0x5d8640;}import{CliErrors}from'../../errors.js';export const bffDelete={'service':a27_0x4957d9(0x1a4),'command':'delete','description':a27_0x4957d9(0x17c),'risk':a27_0x4957d9(0x1ac),'flags':[{'name':a27_0x4957d9(0x1a8),'type':a27_0x4957d9(0x18e),'required':!![],'description':a27_0x4957d9(0x18d)}],async 'validate'(_0x5e2ef6){const _0x119573=a27_0x4957d9,_0x622dcb=loadBffProjectConfig(_0x5e2ef6[_0x119573(0x1aa)]),_0x2a22bc=await readBffLockFile(_0x622dcb['lockFilePath']);if(!_0x2a22bc)throw CliErrors[_0x119573(0x190)](_0x119573(0x196));},async 'dryRun'(_0x244fc6){const _0x2ff85b=a27_0x4957d9,_0x247f3a=loadBffProjectConfig(_0x244fc6[_0x2ff85b(0x1aa)]),_0x146e5a=await readBffLockFile(_0x247f3a[_0x2ff85b(0x193)]);if(!_0x146e5a)throw CliErrors[_0x2ff85b(0x190)](_0x2ff85b(0x18f));const {appLock:_0x2c5d19}=ensureLockScope(_0x146e5a,_0x244fc6['appCode'],_0x247f3a[_0x2ff85b(0x1a5)],_0x2ff85b(0x17e)),_0x22e9f0=_0x244fc6[_0x2ff85b(0x17b)](_0x2ff85b(0x1a8)),_0x3802aa=Object[_0x2ff85b(0x1ae)](_0x2c5d19[_0x2ff85b(0x199)]),_0x5582ab=resolveDeleteTarget(_0x22e9f0,_0x3802aa),_0x2c498c=_0x2c5d19[_0x2ff85b(0x199)][_0x5582ab];if(!_0x2c498c)throw CliErrors['validation'](_0x2ff85b(0x19f)+_0x5582ab+'\x22.');const _0x4e258f=resolveLocalFilePathFromLockKey(_0x247f3a,_0x5582ab),_0x86612e=relative(_0x247f3a[_0x2ff85b(0x1a3)],_0x4e258f),_0x1dace9=join(_0x247f3a[_0x2ff85b(0x1ab)],_0x2ff85b(0x183),_0x86612e);return{'method':_0x2ff85b(0x195),'url':_0x2ff85b(0x17d),'body':{'appCode':_0x244fc6[_0x2ff85b(0x1aa)],'target':_0x5582ab,'remoteId':_0x2c498c['remoteId'],'localFilePath':_0x4e258f,'trashedPath':_0x1dace9},'description':_0x2ff85b(0x17f)+_0x5582ab+_0x2ff85b(0x1a0)};},async 'execute'(_0x25675a){const _0x16f05a=a27_0x4957d9,_0x43475f=loadBffProjectConfig(_0x25675a[_0x16f05a(0x1aa)]),_0x2f43f6=await readBffLockFile(_0x43475f[_0x16f05a(0x193)]);if(!_0x2f43f6)throw CliErrors[_0x16f05a(0x190)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x24f046,appLock:_0xcf7e72}=ensureLockScope(_0x2f43f6,_0x25675a['appCode'],_0x43475f[_0x16f05a(0x1a5)],'delete'),_0x105df8=_0x25675a[_0x16f05a(0x17b)](_0x16f05a(0x1a8)),_0x5c594f=Object['keys'](_0xcf7e72['functions']),_0x36c680=resolveDeleteTarget(_0x105df8,_0x5c594f),_0x52d832=_0xcf7e72[_0x16f05a(0x199)][_0x36c680];if(!_0x52d832)throw CliErrors[_0x16f05a(0x190)](_0x16f05a(0x19f)+_0x36c680+'\x22.');await deleteBffScript(_0x52d832[_0x16f05a(0x19e)]),delete _0xcf7e72[_0x16f05a(0x199)][_0x36c680],_0xcf7e72[_0x16f05a(0x19b)]=new Date()['toISOString'](),await writeBffLockFile(_0x43475f['lockFilePath'],_0x24f046);const _0x3839c6=resolveLocalFilePathFromLockKey(_0x43475f,_0x36c680);let _0xd02de6;await fileExists(_0x3839c6)&&(_0xd02de6=await moveToTrash(_0x43475f[_0x16f05a(0x1a3)],_0x43475f[_0x16f05a(0x1ab)],_0x3839c6),await cleanupEmptyDirectories(dirname(_0x3839c6),_0x43475f[_0x16f05a(0x185)]));const _0x1a52c5={'deleted':_0x36c680,'remoteId':_0x52d832[_0x16f05a(0x19e)]};if(_0xd02de6)_0x1a52c5[_0x16f05a(0x187)]=_0xd02de6;return{'ok':!![],'data':_0x1a52c5,'message':_0x16f05a(0x18b)+_0x36c680+(_0xd02de6?_0x16f05a(0x1a7):'')};}};function a27_0x5c70(){const _0x47468c=['find','\x20(local\x20file\x20moved\x20to\x20trash)','target','join','appCode','trashDir','high-risk-write','startsWith','keys','7TItUKx','replace','str','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','/api/management/library/scripts/delete','delete','Would\x20delete\x20','2035660QXFral','3075048SaRAuZ','Function\x20not\x20found:\x20','<timestamp>','214295Mubkip','scriptsRootDir','104804JFtEPl','trashedTo','map','1713HcEoDj','Multiple\x20functions\x20match\x20\x22','Deleted\x20','filter','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','string','BFF\x20lock\x20file\x20not\x20found.','validation','11PYETXh','\x20\x20-\x20','lockFilePath','toISOString','POST','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','includes','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','functions','10KcvdDT','lastSync','427368wihBeD','2052mERbVH','remoteId','No\x20lock\x20entry\x20found\x20for\x20\x22','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','369582tfHycy','length','projectRoot','bff','scriptsRoot'];a27_0x5c70=function(){return _0x47468c;};return a27_0x5c70();}function resolveDeleteTarget(_0x2d9f01,_0x3054b4){const _0x4687fd=a27_0x4957d9;if(_0x2d9f01[_0x4687fd(0x197)]('/')){const _0x45d182=_0x3054b4[_0x4687fd(0x1a6)](_0x1d1dd2=>_0x1d1dd2===_0x2d9f01);if(!_0x45d182)throw CliErrors[_0x4687fd(0x190)](_0x4687fd(0x182)+_0x2d9f01);return _0x45d182;}const _0x57b26c=_0x3054b4[_0x4687fd(0x18c)](_0x376d25=>_0x376d25['split']('/')['at'](-0x1)===_0x2d9f01);if(_0x57b26c[_0x4687fd(0x1a2)]===0x0)throw CliErrors[_0x4687fd(0x190)](_0x4687fd(0x182)+_0x2d9f01);if(_0x57b26c[_0x4687fd(0x1a2)]>0x1)throw CliErrors[_0x4687fd(0x190)](_0x4687fd(0x18a)+_0x2d9f01+_0x4687fd(0x198)+_0x57b26c[_0x4687fd(0x188)](_0x569893=>_0x4687fd(0x192)+_0x569893)[_0x4687fd(0x1a9)]('\x0a'));return _0x57b26c[0x0];}async function moveToTrash(_0x1ac32e,_0x226958,_0x2c798f){const _0x44a0d3=a27_0x4957d9,_0x29f82e=new Date()[_0x44a0d3(0x194)]()[_0x44a0d3(0x17a)](/[:.]/g,'-'),_0x3b6476=relative(_0x1ac32e,_0x2c798f),_0x64ead8=join(_0x226958,_0x29f82e,_0x3b6476);return await mkdir(dirname(_0x64ead8),{'recursive':!![]}),await rename(_0x2c798f,_0x64ead8),_0x64ead8;}async function cleanupEmptyDirectories(_0x1ba917,_0x2a19ec){const _0xab9c32=a27_0x4957d9;let _0x19ba79=resolve(_0x1ba917);const _0x120d74=resolve(_0x2a19ec);while(_0x19ba79[_0xab9c32(0x1ad)](''+_0x120d74+sep)||_0x19ba79===_0x120d74){if(_0x19ba79===_0x120d74)return;try{const _0x591492=await readdir(_0x19ba79);if(_0x591492[_0xab9c32(0x1a2)]>0x0)return;await rmdir(_0x19ba79);}catch{return;}_0x19ba79=dirname(_0x19ba79);}}
1
+ const a27_0x354861=a27_0x33d5;function a27_0x33d5(_0x36fbcf,_0x29b308){_0x36fbcf=_0x36fbcf-0x1a4;const _0x32e63c=a27_0x32e6();let _0x33d5fb=_0x32e63c[_0x36fbcf];return _0x33d5fb;}(function(_0x3b476a,_0x39317e){const _0x3944ff=a27_0x33d5,_0x70e073=_0x3b476a();while(!![]){try{const _0x2affc0=-parseInt(_0x3944ff(0x1c6))/0x1*(-parseInt(_0x3944ff(0x1d2))/0x2)+-parseInt(_0x3944ff(0x1ce))/0x3*(parseInt(_0x3944ff(0x1ba))/0x4)+parseInt(_0x3944ff(0x1ae))/0x5+-parseInt(_0x3944ff(0x1b0))/0x6*(-parseInt(_0x3944ff(0x1cb))/0x7)+parseInt(_0x3944ff(0x1b4))/0x8*(-parseInt(_0x3944ff(0x1b8))/0x9)+-parseInt(_0x3944ff(0x1c0))/0xa*(-parseInt(_0x3944ff(0x1a4))/0xb)+-parseInt(_0x3944ff(0x1a9))/0xc;if(_0x2affc0===_0x39317e)break;else _0x70e073['push'](_0x70e073['shift']());}catch(_0x54cff7){_0x70e073['push'](_0x70e073['shift']());}}}(a27_0x32e6,0x3f4c2));function a27_0x32e6(){const _0x37e7d4=['11jUfdDs','functions','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','Multiple\x20functions\x20match\x20\x22','str','6911088vBczKn','trashDir','trashedTo','BFF\x20lock\x20file\x20not\x20found.','join','1335305WeCKrP','No\x20lock\x20entry\x20found\x20for\x20\x22','6vUuCwk','Deleted\x20','appCode','/api/management/library/scripts/delete','668144mLCUXW','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','find','includes','36aPiAAT','projectRoot','21064SKYZiW','length','target','Would\x20delete\x20','scriptsRoot','remoteId','3838790NaAbZU','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','\x20\x20-\x20','POST','high-risk-write','1wPVbGn','validation','bff','keys','lockFilePath','2116219RTxpMT','lastSync','delete','6BPQTgr','string','map','Function\x20not\x20found:\x20','453074XqWKNs','toISOString','scriptsRootDir'];a27_0x32e6=function(){return _0x37e7d4;};return a27_0x32e6();}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_0x354861(0x1c8),'command':'delete','description':a27_0x354861(0x1c1),'risk':a27_0x354861(0x1c5),'flags':[{'name':a27_0x354861(0x1bc),'type':a27_0x354861(0x1cf),'required':!![],'description':a27_0x354861(0x1a6)}],async 'validate'(_0x10d08e){const _0x595d3d=a27_0x354861,_0x5f040=loadBffProjectConfig(_0x10d08e[_0x595d3d(0x1b2)]),_0x59cf9f=await readBffLockFile(_0x5f040[_0x595d3d(0x1ca)]);if(!_0x59cf9f)throw CliErrors['validation'](_0x595d3d(0x1c2));},async 'dryRun'(_0x331e03){const _0x754026=a27_0x354861,_0x120480=loadBffProjectConfig(_0x331e03[_0x754026(0x1b2)]),_0x5630b6=await readBffLockFile(_0x120480['lockFilePath']);if(!_0x5630b6)throw CliErrors[_0x754026(0x1c7)](_0x754026(0x1ac));const {appLock:_0xb3a995}=ensureLockScope(_0x5630b6,_0x331e03[_0x754026(0x1b2)],_0x120480[_0x754026(0x1be)],_0x754026(0x1cd)),_0x4e2a8f=_0x331e03[_0x754026(0x1a8)](_0x754026(0x1bc)),_0x130471=Object[_0x754026(0x1c9)](_0xb3a995[_0x754026(0x1a5)]),_0x1225b8=resolveDeleteTarget(_0x4e2a8f,_0x130471),_0x133720=_0xb3a995[_0x754026(0x1a5)][_0x1225b8];if(!_0x133720)throw CliErrors['validation'](_0x754026(0x1af)+_0x1225b8+'\x22.');const _0x23d34d=resolveLocalFilePathFromLockKey(_0x120480,_0x1225b8),_0x3aa51f=relative(_0x120480[_0x754026(0x1b9)],_0x23d34d),_0x1afe9f=join(_0x120480[_0x754026(0x1aa)],'<timestamp>',_0x3aa51f);return{'method':_0x754026(0x1c4),'url':_0x754026(0x1b3),'body':{'appCode':_0x331e03[_0x754026(0x1b2)],'target':_0x1225b8,'remoteId':_0x133720[_0x754026(0x1bf)],'localFilePath':_0x23d34d,'trashedPath':_0x1afe9f},'description':_0x754026(0x1bd)+_0x1225b8+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'};},async 'execute'(_0x293b86){const _0x1543d1=a27_0x354861,_0x116560=loadBffProjectConfig(_0x293b86[_0x1543d1(0x1b2)]),_0x10b753=await readBffLockFile(_0x116560['lockFilePath']);if(!_0x10b753)throw CliErrors[_0x1543d1(0x1c7)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x5ecc9b,appLock:_0x2386ae}=ensureLockScope(_0x10b753,_0x293b86[_0x1543d1(0x1b2)],_0x116560[_0x1543d1(0x1be)],_0x1543d1(0x1cd)),_0x259171=_0x293b86[_0x1543d1(0x1a8)](_0x1543d1(0x1bc)),_0x107a40=Object[_0x1543d1(0x1c9)](_0x2386ae[_0x1543d1(0x1a5)]),_0x4ba57b=resolveDeleteTarget(_0x259171,_0x107a40),_0x45d5be=_0x2386ae[_0x1543d1(0x1a5)][_0x4ba57b];if(!_0x45d5be)throw CliErrors[_0x1543d1(0x1c7)](_0x1543d1(0x1af)+_0x4ba57b+'\x22.');await deleteBffScript(_0x45d5be[_0x1543d1(0x1bf)]),delete _0x2386ae[_0x1543d1(0x1a5)][_0x4ba57b],_0x2386ae[_0x1543d1(0x1cc)]=new Date()[_0x1543d1(0x1d3)](),await writeBffLockFile(_0x116560[_0x1543d1(0x1ca)],_0x5ecc9b);const _0x4cd827=resolveLocalFilePathFromLockKey(_0x116560,_0x4ba57b);let _0x4d32ae;await fileExists(_0x4cd827)&&(_0x4d32ae=await moveToTrash(_0x116560[_0x1543d1(0x1b9)],_0x116560['trashDir'],_0x4cd827),await cleanupEmptyDirectories(dirname(_0x4cd827),_0x116560[_0x1543d1(0x1d4)]));const _0x46d866={'deleted':_0x4ba57b,'remoteId':_0x45d5be[_0x1543d1(0x1bf)]};if(_0x4d32ae)_0x46d866[_0x1543d1(0x1ab)]=_0x4d32ae;return{'ok':!![],'data':_0x46d866,'message':_0x1543d1(0x1b1)+_0x4ba57b+(_0x4d32ae?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function resolveDeleteTarget(_0x2142c6,_0x4ab2df){const _0x108fba=a27_0x354861;if(_0x2142c6[_0x108fba(0x1b7)]('/')){const _0x19e633=_0x4ab2df[_0x108fba(0x1b6)](_0x56d2e2=>_0x56d2e2===_0x2142c6);if(!_0x19e633)throw CliErrors[_0x108fba(0x1c7)](_0x108fba(0x1d1)+_0x2142c6);return _0x19e633;}const _0x3bc805=_0x4ab2df['filter'](_0x16878a=>_0x16878a['split']('/')['at'](-0x1)===_0x2142c6);if(_0x3bc805['length']===0x0)throw CliErrors[_0x108fba(0x1c7)](_0x108fba(0x1d1)+_0x2142c6);if(_0x3bc805[_0x108fba(0x1bb)]>0x1)throw CliErrors[_0x108fba(0x1c7)](_0x108fba(0x1a7)+_0x2142c6+_0x108fba(0x1b5)+_0x3bc805[_0x108fba(0x1d0)](_0x55852e=>_0x108fba(0x1c3)+_0x55852e)[_0x108fba(0x1ad)]('\x0a'));return _0x3bc805[0x0];}async function moveToTrash(_0x40be85,_0x4153b4,_0x3b3229){const _0x450478=a27_0x354861,_0x9d2a57=new Date()[_0x450478(0x1d3)]()['replace'](/[:.]/g,'-'),_0x4b3388=relative(_0x40be85,_0x3b3229),_0x3769d9=join(_0x4153b4,_0x9d2a57,_0x4b3388);return await mkdir(dirname(_0x3769d9),{'recursive':!![]}),await rename(_0x3b3229,_0x3769d9),_0x3769d9;}async function cleanupEmptyDirectories(_0x30978b,_0xcec1ba){const _0x43a4bb=a27_0x354861;let _0x3ea6a2=resolve(_0x30978b);const _0x101da1=resolve(_0xcec1ba);while(_0x3ea6a2['startsWith'](''+_0x101da1+sep)||_0x3ea6a2===_0x101da1){if(_0x3ea6a2===_0x101da1)return;try{const _0x4c8d6c=await readdir(_0x3ea6a2);if(_0x4c8d6c[_0x43a4bb(0x1bb)]>0x0)return;await rmdir(_0x3ea6a2);}catch{return;}_0x3ea6a2=dirname(_0x3ea6a2);}}
@@ -1 +1 @@
1
- const a28_0x2aff89=a28_0x22c8;function a28_0x22c8(_0x1a0fbf,_0x3f240b){_0x1a0fbf=_0x1a0fbf-0xad;const _0x197bda=a28_0x197b();let _0x22c88b=_0x197bda[_0x1a0fbf];return _0x22c88b;}function a28_0x197b(){const _0x434e59=['verbose','num','11BPiQRz','updatedTime','969080fQumop','691065ypTQHt','number','Get\x20BFF\x20script\x20details\x20by\x20ID','1tIgWQd','30EWrJZp','1316604OusoUZ','55TgwxcN','detail','603426QpqxtK','176622ZSZUBw','appCode','843192iXDvsz','(none)','Script\x20ID','scriptType','12clfxUx','Return\x20full\x20raw\x20script\x20object','157124JQuAFC','read','description'];a28_0x197b=function(){return _0x434e59;};return a28_0x197b();}(function(_0x147d47,_0x498ed9){const _0x54716d=a28_0x22c8,_0x3092e6=_0x147d47();while(!![]){try{const _0x1950ce=-parseInt(_0x54716d(0xbe))/0x1*(-parseInt(_0x54716d(0xc3))/0x2)+-parseInt(_0x54716d(0xb1))/0x3*(-parseInt(_0x54716d(0xb3))/0x4)+parseInt(_0x54716d(0xc1))/0x5*(parseInt(_0x54716d(0xc4))/0x6)+-parseInt(_0x54716d(0xad))/0x7+-parseInt(_0x54716d(0xba))/0x8+-parseInt(_0x54716d(0xbb))/0x9*(parseInt(_0x54716d(0xbf))/0xa)+parseInt(_0x54716d(0xb8))/0xb*(-parseInt(_0x54716d(0xc0))/0xc);if(_0x1950ce===_0x498ed9)break;else _0x3092e6['push'](_0x3092e6['shift']());}catch(_0x130b78){_0x3092e6['push'](_0x3092e6['shift']());}}}(a28_0x197b,0x31115));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':'bff','command':a28_0x2aff89(0xc2),'description':a28_0x2aff89(0xbd),'risk':a28_0x2aff89(0xb4),'flags':[{'name':'id','type':a28_0x2aff89(0xbc),'required':!![],'description':a28_0x2aff89(0xaf)},{'name':a28_0x2aff89(0xb6),'type':'boolean','description':a28_0x2aff89(0xb2)}],async 'execute'(_0x10c1b0){const _0x4e011b=a28_0x2aff89,_0x9be52c=await getBffScriptInfo(_0x10c1b0[_0x4e011b(0xb7)]('id')),_0xb99f06=_0x10c1b0['bool'](_0x4e011b(0xb6));if(_0xb99f06)return{'ok':!![],'data':_0x9be52c};return{'ok':!![],'data':{'id':_0x9be52c['id'],'appCode':_0x9be52c[_0x4e011b(0xc5)],'scriptType':_0x9be52c[_0x4e011b(0xb0)],'description':_0x9be52c[_0x4e011b(0xb5)]||_0x4e011b(0xae),'createdTime':_0x9be52c['createdTime']??'','updatedTime':_0x9be52c[_0x4e011b(0xb9)]??'','scriptContent':_0x9be52c['scriptContent']??''}};}};
1
+ function a28_0x5cca(_0x2c5172,_0x3b8967){_0x2c5172=_0x2c5172-0x10a;const _0x4a3f66=a28_0x4a3f();let _0x5cca12=_0x4a3f66[_0x2c5172];return _0x5cca12;}const a28_0x1e90d6=a28_0x5cca;(function(_0x44c984,_0xcc637b){const _0x4c699a=a28_0x5cca,_0x3d54ce=_0x44c984();while(!![]){try{const _0x18e06e=parseInt(_0x4c699a(0x117))/0x1+-parseInt(_0x4c699a(0x10a))/0x2*(-parseInt(_0x4c699a(0x116))/0x3)+-parseInt(_0x4c699a(0x119))/0x4+-parseInt(_0x4c699a(0x111))/0x5*(-parseInt(_0x4c699a(0x11a))/0x6)+-parseInt(_0x4c699a(0x11f))/0x7*(-parseInt(_0x4c699a(0x11c))/0x8)+parseInt(_0x4c699a(0x11e))/0x9*(-parseInt(_0x4c699a(0x120))/0xa)+-parseInt(_0x4c699a(0x121))/0xb*(-parseInt(_0x4c699a(0x122))/0xc);if(_0x18e06e===_0xcc637b)break;else _0x3d54ce['push'](_0x3d54ce['shift']());}catch(_0x32e8b4){_0x3d54ce['push'](_0x3d54ce['shift']());}}}(a28_0x4a3f,0x49c74));import{getBffScriptInfo}from'../../core/api-client.js';function a28_0x4a3f(){const _0x1eb06f=['Script\x20ID','4430efavIP','scriptContent','appCode','number','description','detail','createdTime','177575kujpyx','bool','num','bff','(none)','279YahpId','343599fRZgeS','boolean','875472dBeeKX','6neCbIO','Return\x20full\x20raw\x20script\x20object','600bzqiOG','verbose','365319yAPufP','14399GJkUBC','130fWamyB','1111oNrorj','36756uxDHkR','Get\x20BFF\x20script\x20details\x20by\x20ID','updatedTime','read'];a28_0x4a3f=function(){return _0x1eb06f;};return a28_0x4a3f();}export const bffDetail={'service':a28_0x1e90d6(0x114),'command':a28_0x1e90d6(0x10f),'description':a28_0x1e90d6(0x123),'risk':a28_0x1e90d6(0x125),'flags':[{'name':'id','type':a28_0x1e90d6(0x10d),'required':!![],'description':a28_0x1e90d6(0x126)},{'name':a28_0x1e90d6(0x11d),'type':a28_0x1e90d6(0x118),'description':a28_0x1e90d6(0x11b)}],async 'execute'(_0x46354b){const _0x39fcb7=a28_0x1e90d6,_0xb0e9cd=await getBffScriptInfo(_0x46354b[_0x39fcb7(0x113)]('id')),_0x2fc77f=_0x46354b[_0x39fcb7(0x112)]('verbose');if(_0x2fc77f)return{'ok':!![],'data':_0xb0e9cd};return{'ok':!![],'data':{'id':_0xb0e9cd['id'],'appCode':_0xb0e9cd[_0x39fcb7(0x10c)],'scriptType':_0xb0e9cd['scriptType'],'description':_0xb0e9cd[_0x39fcb7(0x10e)]||_0x39fcb7(0x115),'createdTime':_0xb0e9cd[_0x39fcb7(0x110)]??'','updatedTime':_0xb0e9cd[_0x39fcb7(0x124)]??'','scriptContent':_0xb0e9cd[_0x39fcb7(0x10b)]??''}};}};
@@ -1 +1 @@
1
- (function(_0x4c430a,_0x4a25a4){const _0x5e34a8=a29_0x11a6,_0x378d17=_0x4c430a();while(!![]){try{const _0x4d48f5=parseInt(_0x5e34a8(0xd5))/0x1+-parseInt(_0x5e34a8(0xd6))/0x2+parseInt(_0x5e34a8(0xd1))/0x3+parseInt(_0x5e34a8(0xd4))/0x4*(parseInt(_0x5e34a8(0xd7))/0x5)+parseInt(_0x5e34a8(0xd0))/0x6+parseInt(_0x5e34a8(0xd3))/0x7+-parseInt(_0x5e34a8(0xd2))/0x8;if(_0x4d48f5===_0x4a25a4)break;else _0x378d17['push'](_0x378d17['shift']());}catch(_0x5e84cf){_0x378d17['push'](_0x378d17['shift']());}}}(a29_0x2927,0x5f22e));function a29_0x2927(){const _0x2243a6=['1009602pZRWxb','1000285jzLjvC','2822670inAhvn','749136JbEsXX','6709592lMidMu','595721MtsAnZ','8IReRje','527804lKHZzd'];a29_0x2927=function(){return _0x2243a6;};return a29_0x2927();}import{bffList}from'../../commands/bff/list.js';function a29_0x11a6(_0x375f95,_0x49bdb4){_0x375f95=_0x375f95-0xd0;const _0x29271a=a29_0x2927();let _0x11a6f7=_0x29271a[_0x375f95];return _0x11a6f7;}import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x2bc67a,_0xf7d606){const _0x5ae972=a29_0x20d1,_0x5d2fca=_0x2bc67a();while(!![]){try{const _0x187ec5=parseInt(_0x5ae972(0x111))/0x1*(-parseInt(_0x5ae972(0x10f))/0x2)+-parseInt(_0x5ae972(0x10c))/0x3+parseInt(_0x5ae972(0x10e))/0x4*(parseInt(_0x5ae972(0x10b))/0x5)+-parseInt(_0x5ae972(0x110))/0x6+-parseInt(_0x5ae972(0x109))/0x7*(-parseInt(_0x5ae972(0x10d))/0x8)+parseInt(_0x5ae972(0x10a))/0x9+-parseInt(_0x5ae972(0x112))/0xa;if(_0x187ec5===_0xf7d606)break;else _0x5d2fca['push'](_0x5d2fca['shift']());}catch(_0x42c53f){_0x5d2fca['push'](_0x5d2fca['shift']());}}}(a29_0x1994,0x57df2));function a29_0x20d1(_0x339f98,_0x119b24){_0x339f98=_0x339f98-0x109;const _0x19945c=a29_0x1994();let _0x20d1a0=_0x19945c[_0x339f98];return _0x20d1a0;}import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];function a29_0x1994(){const _0x133bea=['2999115iMjgqJ','10LXiOiX','756990WpgwDI','8notkNA','906344uNMJYP','164OgsiOw','885084sThdBA','727dbbhmV','5689320QQdzmt','4213335VLuWrx'];a29_0x1994=function(){return _0x133bea;};return a29_0x1994();}
@@ -1 +1 @@
1
- const a30_0xaf79fb=a30_0x1a03;(function(_0x313387,_0x3981f8){const _0x27a86f=a30_0x1a03,_0x45b71a=_0x313387();while(!![]){try{const _0x2982b8=parseInt(_0x27a86f(0x8e))/0x1+-parseInt(_0x27a86f(0x93))/0x2+-parseInt(_0x27a86f(0x98))/0x3+parseInt(_0x27a86f(0x97))/0x4*(parseInt(_0x27a86f(0x96))/0x5)+-parseInt(_0x27a86f(0x9f))/0x6+parseInt(_0x27a86f(0xa2))/0x7*(parseInt(_0x27a86f(0x9c))/0x8)+-parseInt(_0x27a86f(0xa6))/0x9;if(_0x2982b8===_0x3981f8)break;else _0x45b71a['push'](_0x45b71a['shift']());}catch(_0x5da71f){_0x45b71a['push'](_0x45b71a['shift']());}}}(a30_0x5902,0x694a1));function a30_0x5902(){const _0x366647=['str','map','8OMjarx','name','type','805884egJlrn','Return\x20full\x20script\x20objects','boolean','2943416VGLiDM','bool','read','verbose','1010754xmcbxE','ENDPOINT','Script\x20type\x20filter','description','No\x20BFF\x20scripts\x20found.','string','bff','19692GFfRRb','list','functionName','COMMON','(unnamed)','589320eCzKTS','List\x20BFF\x20scripts','length','85fBSYAL','191944IPXhDk','850191rHdhOS','appCode'];a30_0x5902=function(){return _0x366647;};return a30_0x5902();}import{listBffScripts}from'../../core/api-client.js';function a30_0x1a03(_0x5b291d,_0x16366c){_0x5b291d=_0x5b291d-0x8e;const _0x5902a9=a30_0x5902();let _0x1a030e=_0x5902a9[_0x5b291d];return _0x1a030e;}export const bffList={'service':a30_0xaf79fb(0xac),'command':a30_0xaf79fb(0x8f),'description':a30_0xaf79fb(0x94),'risk':a30_0xaf79fb(0xa4),'flags':[{'name':'type','type':a30_0xaf79fb(0xab),'description':a30_0xaf79fb(0xa8),'default':a30_0xaf79fb(0xa7),'enum':[a30_0xaf79fb(0xa7),a30_0xaf79fb(0x91)]},{'name':a30_0xaf79fb(0x9d),'type':a30_0xaf79fb(0xab),'description':'Filter\x20by\x20script\x20name'},{'name':a30_0xaf79fb(0xa5),'type':a30_0xaf79fb(0xa1),'description':a30_0xaf79fb(0xa0)}],async 'execute'(_0x346596){const _0x160c79=a30_0xaf79fb,_0x1e565a=await listBffScripts(_0x346596[_0x160c79(0x99)],_0x346596[_0x160c79(0x9a)](_0x160c79(0x9e)),{'scriptName':_0x346596[_0x160c79(0x9a)]('name')||undefined}),_0xac950b=_0x346596[_0x160c79(0xa3)](_0x160c79(0xa5));return{'ok':!![],'data':_0xac950b?_0x1e565a:_0x1e565a[_0x160c79(0x9b)](_0x23d029=>({'id':_0x23d029['id'],'functionName':_0x23d029[_0x160c79(0x90)]??'','description':_0x23d029[_0x160c79(0xa9)]||_0x160c79(0x92),'scriptType':_0x23d029['scriptType']})),'message':_0x1e565a[_0x160c79(0x95)]===0x0?_0x160c79(0xaa):undefined};}};
1
+ const a30_0x46ed47=a30_0x5d23;(function(_0x3da0cc,_0x2d76c9){const _0x139cb7=a30_0x5d23,_0x1036f1=_0x3da0cc();while(!![]){try{const _0x5588ae=-parseInt(_0x139cb7(0xee))/0x1*(-parseInt(_0x139cb7(0xef))/0x2)+parseInt(_0x139cb7(0xe2))/0x3*(-parseInt(_0x139cb7(0xe5))/0x4)+-parseInt(_0x139cb7(0xed))/0x5*(parseInt(_0x139cb7(0xf6))/0x6)+-parseInt(_0x139cb7(0xe0))/0x7*(-parseInt(_0x139cb7(0xfa))/0x8)+-parseInt(_0x139cb7(0xf2))/0x9*(parseInt(_0x139cb7(0xe3))/0xa)+parseInt(_0x139cb7(0xe7))/0xb+-parseInt(_0x139cb7(0xe4))/0xc*(-parseInt(_0x139cb7(0xfb))/0xd);if(_0x5588ae===_0x2d76c9)break;else _0x1036f1['push'](_0x1036f1['shift']());}catch(_0x457feb){_0x1036f1['push'](_0x1036f1['shift']());}}}(a30_0x1096,0xd37af));function a30_0x1096(){const _0x136809=['8VqtQwR','14183PWhggS','str','bff','type','Filter\x20by\x20script\x20name','map','1442630RFOeQS','read','12XJVCMJ','16450QEgYXy','22884qKYzvW','1710988PpqWTz','List\x20BFF\x20scripts','13577553BGJGAI','string','name','list','length','description','120MrVJeh','3QFBTjv','44248RpMehU','functionName','ENDPOINT','2907eDereJ','Return\x20full\x20script\x20objects','No\x20BFF\x20scripts\x20found.','bool','119694NZhxnV','(unnamed)','verbose','appCode'];a30_0x1096=function(){return _0x136809;};return a30_0x1096();}import{listBffScripts}from'../../core/api-client.js';function a30_0x5d23(_0x62907a,_0xc5912c){_0x62907a=_0x62907a-0xdc;const _0x109697=a30_0x1096();let _0x5d23d7=_0x109697[_0x62907a];return _0x5d23d7;}export const bffList={'service':a30_0x46ed47(0xdc),'command':a30_0x46ed47(0xea),'description':a30_0x46ed47(0xe6),'risk':a30_0x46ed47(0xe1),'flags':[{'name':a30_0x46ed47(0xdd),'type':'string','description':'Script\x20type\x20filter','default':'ENDPOINT','enum':[a30_0x46ed47(0xf1),'COMMON']},{'name':a30_0x46ed47(0xe9),'type':a30_0x46ed47(0xe8),'description':a30_0x46ed47(0xde)},{'name':a30_0x46ed47(0xf8),'type':'boolean','description':a30_0x46ed47(0xf3)}],async 'execute'(_0x276763){const _0x2dda52=a30_0x46ed47,_0x4074a1=await listBffScripts(_0x276763[_0x2dda52(0xf9)],_0x276763[_0x2dda52(0xfc)](_0x2dda52(0xdd)),{'scriptName':_0x276763[_0x2dda52(0xfc)]('name')||undefined}),_0x456fc7=_0x276763[_0x2dda52(0xf5)]('verbose');return{'ok':!![],'data':_0x456fc7?_0x4074a1:_0x4074a1[_0x2dda52(0xdf)](_0x19133d=>({'id':_0x19133d['id'],'functionName':_0x19133d[_0x2dda52(0xf0)]??'','description':_0x19133d[_0x2dda52(0xec)]||_0x2dda52(0xf7),'scriptType':_0x19133d['scriptType']})),'message':_0x4074a1[_0x2dda52(0xeb)]===0x0?_0x2dda52(0xf4):undefined};}};
@@ -1 +1 @@
1
- const a31_0x37e81b=a31_0x525a;(function(_0x197096,_0x30efc7){const _0x4afe7c=a31_0x525a,_0x3b082b=_0x197096();while(!![]){try{const _0x1cd067=parseInt(_0x4afe7c(0xba))/0x1+parseInt(_0x4afe7c(0xa1))/0x2*(parseInt(_0x4afe7c(0xa6))/0x3)+-parseInt(_0x4afe7c(0xb2))/0x4+parseInt(_0x4afe7c(0xa0))/0x5+-parseInt(_0x4afe7c(0x9a))/0x6*(parseInt(_0x4afe7c(0xb3))/0x7)+parseInt(_0x4afe7c(0xc4))/0x8+-parseInt(_0x4afe7c(0x92))/0x9*(parseInt(_0x4afe7c(0xa4))/0xa);if(_0x1cd067===_0x30efc7)break;else _0x3b082b['push'](_0x3b082b['shift']());}catch(_0x28d494){_0x3b082b['push'](_0x3b082b['shift']());}}}(a31_0x576e,0x3803d));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';function a31_0x525a(_0xbfde82,_0x1de8a0){_0xbfde82=_0xbfde82-0x88;const _0x576e24=a31_0x576e();let _0x525a6c=_0x576e24[_0xbfde82];return _0x525a6c;}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_0x37e81b(0xac),'command':a31_0x37e81b(0xc2),'description':a31_0x37e81b(0x91),'risk':'write','flags':[{'name':a31_0x37e81b(0x98),'type':a31_0x37e81b(0x93),'description':a31_0x37e81b(0xd2),'enum':[a31_0x37e81b(0xc8),'ENDPOINT','HOOK']},{'name':a31_0x37e81b(0xc7),'type':a31_0x37e81b(0x9e),'description':a31_0x37e81b(0xad)}],async 'dryRun'(_0x40604d){const _0x1e1362=a31_0x37e81b,_0x11698d=loadBffProjectConfig(_0x40604d[_0x1e1362(0xc0)]),_0x14fc8c=await readBffLockFile(_0x11698d[_0x1e1362(0xa8)]),{appLock:_0x31f854}=ensureLockScope(_0x14fc8c??createEmptyBffLock(),_0x40604d[_0x1e1362(0xc0)],_0x11698d['scriptsRoot'],'pull'),_0x592772=normalizeBffType(_0x40604d[_0x1e1362(0xbf)]('type'))??undefined,_0x13aab6=buildDatasetCodeToAliasMap(_0x40604d[_0x1e1362(0xb5)],_0x40604d[_0x1e1362(0xc0)]),[_0x3bcb4e,_0x105951]=await Promise[_0x1e1362(0xbd)]([listBffScripts(_0x40604d['appCode'],_0x592772),getBffScriptStatistics(_0x40604d[_0x1e1362(0xc0)])]),_0xe6c01d=createHookLocationMap(_0x105951),_0x274e5d=[];for(const _0x7deb13 of _0x3bcb4e){const _0x821a5e=resolveRemoteScriptTarget(_0x11698d,_0x7deb13,_0xe6c01d,_0x31f854[_0x1e1362(0xc5)],_0x13aab6);if(!_0x821a5e){_0x274e5d[_0x1e1362(0xb9)]({'scriptType':_0x7deb13['scriptType'],'functionName':_0x7deb13['functionName']??'','status':_0x1e1362(0x88),'reason':_0x1e1362(0xb4)});continue;}const _0x18e476=_0x31f854[_0x1e1362(0xc5)][_0x821a5e[_0x1e1362(0x89)]],_0x48e3a7=_0x7deb13['scriptContent']!=null?computeContentHash(_0x7deb13[_0x1e1362(0xcd)]):undefined,_0x3a9200=await hasUnsyncedLocalChanges(_0x821a5e[_0x1e1362(0xab)],_0x18e476,_0x48e3a7);_0x274e5d[_0x1e1362(0xb9)]({'lockKey':_0x821a5e['lockKey'],'filePath':_0x821a5e['filePath'],'remoteId':_0x7deb13['id']??null,'status':_0x3a9200?_0x1e1362(0x8c):_0x1e1362(0xcb)});}return{'method':_0x1e1362(0xbc),'url':_0x1e1362(0xd0)+_0x40604d['appCode']+(_0x592772?_0x1e1362(0x8e)+_0x592772:''),'body':{'appCode':_0x40604d[_0x1e1362(0xc0)],'filterType':_0x592772??null,'files':_0x274e5d},'description':'Would\x20inspect\x20'+_0x274e5d[_0x1e1362(0x9f)]+_0x1e1362(0xb7)};},async 'execute'(_0x89e3c4){const _0x5cc8ee=a31_0x37e81b,_0x350faa=loadBffProjectConfig(_0x89e3c4['appCode']),_0x1056b9=await readBffLockFile(_0x350faa[_0x5cc8ee(0xa8)]),{lockData:_0x1611cf,appLock:_0xccf9b7}=ensureLockScope(_0x1056b9??createEmptyBffLock(),_0x89e3c4[_0x5cc8ee(0xc0)],_0x350faa[_0x5cc8ee(0x94)],'pull'),_0x17eeab=normalizeBffType(_0x89e3c4[_0x5cc8ee(0xbf)](_0x5cc8ee(0x98)))??undefined;if(_0x89e3c4['str'](_0x5cc8ee(0x98))&&!_0x17eeab)throw CliErrors['validation'](_0x5cc8ee(0xc9));const [_0x2659ad,_0x2871ec]=await Promise['all']([listBffScripts(_0x89e3c4[_0x5cc8ee(0xc0)],_0x17eeab),getBffScriptStatistics(_0x89e3c4[_0x5cc8ee(0xc0)])]);if(_0x2659ad[_0x5cc8ee(0x9f)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x5cc8ee(0x99)};const _0x2c3d0e=_0x89e3c4[_0x5cc8ee(0x95)](_0x5cc8ee(0xc7));if(_0x2c3d0e&&!_0x89e3c4[_0x5cc8ee(0xcf)]){const _0x27c542=await confirmForce();if(!_0x27c542)throw CliErrors['cancelled'](_0x5cc8ee(0xae));}if(_0x2c3d0e&&_0x89e3c4[_0x5cc8ee(0xcf)]){}const _0x3d6881=buildDatasetCodeToAliasMap(_0x89e3c4[_0x5cc8ee(0xb5)],_0x89e3c4[_0x5cc8ee(0xc0)]),_0x4a7bc8=createHookLocationMap(_0x2871ec),_0x2f45b9=JSON[_0x5cc8ee(0x8d)](JSON[_0x5cc8ee(0x8f)](_0x1611cf)),_0xe10a80=_0x89e3c4[_0x5cc8ee(0xc0)],_0x1834f7=_0x2f45b9[_0x5cc8ee(0x8a)][_0xe10a80];if(!_0x1834f7)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0xe10a80+_0x5cc8ee(0xc1));const _0x422680=[],_0x5caf40=[],_0x27206a=[];for(const _0x1e8ca3 of _0x2659ad){const _0x58a013=resolveRemoteScriptTarget(_0x350faa,_0x1e8ca3,_0x4a7bc8,_0xccf9b7['functions'],_0x3d6881);if(!_0x58a013){_0x5caf40[_0x5cc8ee(0xb9)]({'lockKey':_0x1e8ca3[_0x5cc8ee(0x9c)]+'/'+_0x1e8ca3[_0x5cc8ee(0xb1)],'reason':'unresolvable\x20target\x20path'});continue;}const _0x2abfd8=_0xccf9b7[_0x5cc8ee(0xc5)][_0x58a013['lockKey']];try{if(!_0x1e8ca3['id'])throw new Error(_0x5cc8ee(0xce));if(_0x1e8ca3[_0x5cc8ee(0xcd)]==null)throw new Error(_0x5cc8ee(0xcc));const _0x270041=_0x1e8ca3[_0x5cc8ee(0xcd)],_0x12657a=computeContentHash(_0x270041);if(!_0x2c3d0e){const _0x592e46=await hasUnsyncedLocalChanges(_0x58a013[_0x5cc8ee(0xab)],_0x2abfd8,_0x12657a);if(_0x592e46){_0x5caf40[_0x5cc8ee(0xb9)]({'lockKey':_0x58a013[_0x5cc8ee(0x89)],'reason':_0x5cc8ee(0xa3)});continue;}}await ensureParentDirectory(_0x58a013['filePath']),await writeFile(_0x58a013[_0x5cc8ee(0xab)],_0x270041,_0x5cc8ee(0xa5));const _0x1b4871={'hash':_0x12657a,'remoteId':_0x1e8ca3['id'],'version':_0x1e8ca3[_0x5cc8ee(0xca)]};_0x58a013[_0x5cc8ee(0x98)]===_0x5cc8ee(0x97)&&_0x58a013['hookLocation']&&(_0x1b4871['alias']=_0x58a013['hookLocation'][_0x5cc8ee(0x90)],_0x1b4871[_0x5cc8ee(0xd3)]=_0x58a013[_0x5cc8ee(0xb8)][_0x5cc8ee(0xd3)],_0x1b4871['operationType']=_0x58a013[_0x5cc8ee(0xb8)][_0x5cc8ee(0xc3)],_0x1b4871[_0x5cc8ee(0xa9)]=_0x58a013['hookLocation'][_0x5cc8ee(0xa9)]),_0x1834f7['functions'][_0x58a013[_0x5cc8ee(0x89)]]=_0x1b4871,_0x422680[_0x5cc8ee(0xb9)]({'lockKey':_0x58a013[_0x5cc8ee(0x89)],'remoteId':_0x1e8ca3['id']});}catch(_0x5a9a8d){_0x27206a[_0x5cc8ee(0xb9)]({'lockKey':_0x58a013[_0x5cc8ee(0x89)],'error':_0x5a9a8d instanceof Error?_0x5a9a8d[_0x5cc8ee(0x96)]:String(_0x5a9a8d)});}}return _0x1834f7[_0x5cc8ee(0xc6)]=new Date()['toISOString'](),await writeBffLockFile(_0x350faa['lockFilePath'],_0x2f45b9),{'ok':_0x27206a[_0x5cc8ee(0x9f)]===0x0,'data':{'pulled':_0x422680,'skipped':_0x5caf40,'failed':_0x27206a},'message':_0x5cc8ee(0xbb)+_0x422680['length']+_0x5cc8ee(0xbe)+_0x5caf40[_0x5cc8ee(0x9f)]+_0x5cc8ee(0xb6)+_0x27206a[_0x5cc8ee(0x9f)]+_0x5cc8ee(0x9b)};}};async function hasUnsyncedLocalChanges(_0x2876f7,_0x17e828,_0xf652e3){const _0x1660e0=a31_0x37e81b;if(!await fileExists(_0x2876f7))return![];const _0x1f9466=await computeFileHash(_0x2876f7);if(!_0x17e828)return _0xf652e3?_0x1f9466!==_0xf652e3:!![];return _0x1f9466!==_0x17e828[_0x1660e0(0xaa)];}function buildDatasetCodeToAliasMap(_0x516d4b,_0x3a7a58){const _0x9ad70a=a31_0x37e81b,_0x2c0f62=loadAliasMap(_0x516d4b,undefined,resolveApiFilePath(_0x516d4b,_0x3a7a58));return new Map(_0x2c0f62[_0x9ad70a(0xaf)](_0x3bb428=>[_0x3bb428['datasetCode'],_0x3bb428[_0x9ad70a(0x90)]]));}function a31_0x576e(){const _0x2ec42d=['7fRiUlR','unresolvable\x20target\x20path','apiDir','\x20skipped,\x20','\x20remote\x20BFF\x20script(s)\x20for\x20pull','hookLocation','push','380057xtsnps','Pull\x20complete:\x20','GET','all','\x20pulled,\x20','str','appCode','\x22\x20not\x20found\x20after\x20ensureLockScope.','pull','operationType','3547840hmEBGT','functions','lastSync','force','COMMON','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','version','would_pull','Remote\x20script\x20missing\x20content.','scriptContent','Remote\x20script\x20missing\x20id.','nonInteractive','/api/management/library/scripts/list?appCode=','stderr','Pull\x20only\x20this\x20script\x20type','datasetCode','skipped','lockKey','apps','toLowerCase','conflict','parse','&type=','stringify','alias','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','45BnVqqm','string','scriptsRoot','bool','message','HOOK','type','No\x20remote\x20BFF\x20scripts\x20found.','913782gPMvMT','\x20failed','scriptType','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','boolean','length','680650sMaXDg','6jsXJmH','trim','local\x20unsynced\x20changes','691970kqZObO','utf8','50835wNTDwm','close','lockFilePath','functionNode','hash','filePath','bff','Force\x20overwrite\x20local\x20unsynced\x20changes','Force\x20pull\x20cancelled.','map','includes','functionName','1131132ZEybgq'];a31_0x576e=function(){return _0x2ec42d;};return a31_0x576e();}async function confirmForce(){const _0x42f3cb=a31_0x37e81b,_0x1553d7=createInterface({'input':process['stdin'],'output':process[_0x42f3cb(0xd1)]}),_0x46d09e=await new Promise(_0x33a75a=>{const _0x1064f8=_0x42f3cb;_0x1553d7['question'](_0x1064f8(0x9d),_0x33a75a);});return _0x1553d7[_0x42f3cb(0xa7)](),['y','yes'][_0x42f3cb(0xb0)](_0x46d09e[_0x42f3cb(0xa2)]()[_0x42f3cb(0x8b)]());}
1
+ const a31_0x1affc9=a31_0x45f7;(function(_0x594c24,_0x3bd004){const _0x3da8ac=a31_0x45f7,_0x196709=_0x594c24();while(!![]){try{const _0xd1df88=-parseInt(_0x3da8ac(0x1ff))/0x1+-parseInt(_0x3da8ac(0x1f2))/0x2+parseInt(_0x3da8ac(0x1ef))/0x3*(parseInt(_0x3da8ac(0x1fe))/0x4)+parseInt(_0x3da8ac(0x1f8))/0x5+-parseInt(_0x3da8ac(0x1ec))/0x6+parseInt(_0x3da8ac(0x1d7))/0x7+-parseInt(_0x3da8ac(0x1f0))/0x8*(-parseInt(_0x3da8ac(0x1ea))/0x9);if(_0xd1df88===_0x3bd004)break;else _0x196709['push'](_0x196709['shift']());}catch(_0x279d9d){_0x196709['push'](_0x196709['shift']());}}}(a31_0x5680,0x7980b));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';function a31_0x5680(){const _0x26d27f=['boolean','1810170PXQHLn','includes','Would\x20inspect\x20','validation','would_pull','yes','9008wFACRS','768193CZeShu','operationType','bff','type','toLowerCase','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','conflict','nonInteractive','local\x20unsynced\x20changes','\x20skipped,\x20','pull','all','utf8','scriptType','length','COMMON','appCode','stdin','close','Pull\x20only\x20this\x20script\x20type','bool','question','version','/api/management/library/scripts/list?appCode=','lockKey','HOOK','\x20pulled,\x20','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','No\x20remote\x20BFF\x20scripts\x20found.','Remote\x20script\x20missing\x20content.','functionNode','push','4243442FXqGnj','Lock\x20scope\x20for\x20app\x20\x22','\x22\x20not\x20found\x20after\x20ensureLockScope.','map','lockFilePath','\x20remote\x20BFF\x20script(s)\x20for\x20pull','hookLocation','scriptContent','unresolvable\x20target\x20path','string','Force\x20overwrite\x20local\x20unsynced\x20changes','force','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','message','scriptsRoot','apps','ENDPOINT','Remote\x20script\x20missing\x20id.','Pull\x20complete:\x20','5092749DGhALE','datasetCode','5922834phcBbo','functionName','functions','438yqVTpn','24HVQjWk','Force\x20pull\x20cancelled.','1483216xEVYcN','apiDir','filePath','str','alias'];a31_0x5680=function(){return _0x26d27f;};return a31_0x5680();}function a31_0x45f7(_0x3e4a38,_0x3d8b81){_0x3e4a38=_0x3e4a38-0x1c5;const _0x568093=a31_0x5680();let _0x45f70b=_0x568093[_0x3e4a38];return _0x45f70b;}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_0x1affc9(0x201),'command':a31_0x1affc9(0x209),'description':a31_0x1affc9(0x1d2),'risk':'write','flags':[{'name':a31_0x1affc9(0x202),'type':a31_0x1affc9(0x1e0),'description':a31_0x1affc9(0x1ca),'enum':[a31_0x1affc9(0x1c6),a31_0x1affc9(0x1e7),a31_0x1affc9(0x1d0)]},{'name':a31_0x1affc9(0x1e2),'type':a31_0x1affc9(0x1f7),'description':a31_0x1affc9(0x1e1)}],async 'dryRun'(_0x367299){const _0x593761=a31_0x1affc9,_0x1150b7=loadBffProjectConfig(_0x367299[_0x593761(0x1c7)]),_0x2fc562=await readBffLockFile(_0x1150b7[_0x593761(0x1db)]),{appLock:_0x51c956}=ensureLockScope(_0x2fc562??createEmptyBffLock(),_0x367299[_0x593761(0x1c7)],_0x1150b7[_0x593761(0x1e5)],_0x593761(0x209)),_0x20172a=normalizeBffType(_0x367299[_0x593761(0x1f5)]('type'))??undefined,_0x4f9084=buildDatasetCodeToAliasMap(_0x367299[_0x593761(0x1f3)],_0x367299[_0x593761(0x1c7)]),[_0x13d839,_0x3b78a6]=await Promise[_0x593761(0x20a)]([listBffScripts(_0x367299[_0x593761(0x1c7)],_0x20172a),getBffScriptStatistics(_0x367299['appCode'])]),_0x19fe05=createHookLocationMap(_0x3b78a6),_0x3e2bec=[];for(const _0x38706e of _0x13d839){const _0x588a90=resolveRemoteScriptTarget(_0x1150b7,_0x38706e,_0x19fe05,_0x51c956['functions'],_0x4f9084);if(!_0x588a90){_0x3e2bec[_0x593761(0x1d6)]({'scriptType':_0x38706e[_0x593761(0x20c)],'functionName':_0x38706e[_0x593761(0x1ed)]??'','status':'skipped','reason':_0x593761(0x1df)});continue;}const _0x3c94ed=_0x51c956['functions'][_0x588a90[_0x593761(0x1cf)]],_0x136fcd=_0x38706e[_0x593761(0x1de)]!=null?computeContentHash(_0x38706e[_0x593761(0x1de)]):undefined,_0x2402c9=await hasUnsyncedLocalChanges(_0x588a90[_0x593761(0x1f4)],_0x3c94ed,_0x136fcd);_0x3e2bec[_0x593761(0x1d6)]({'lockKey':_0x588a90['lockKey'],'filePath':_0x588a90[_0x593761(0x1f4)],'remoteId':_0x38706e['id']??null,'status':_0x2402c9?_0x593761(0x205):_0x593761(0x1fc)});}return{'method':'GET','url':_0x593761(0x1ce)+_0x367299['appCode']+(_0x20172a?'&type='+_0x20172a:''),'body':{'appCode':_0x367299[_0x593761(0x1c7)],'filterType':_0x20172a??null,'files':_0x3e2bec},'description':_0x593761(0x1fa)+_0x3e2bec[_0x593761(0x1c5)]+_0x593761(0x1dc)};},async 'execute'(_0x3f756b){const _0x25e457=a31_0x1affc9,_0x50d8b9=loadBffProjectConfig(_0x3f756b['appCode']),_0x25e4af=await readBffLockFile(_0x50d8b9[_0x25e457(0x1db)]),{lockData:_0x3bb724,appLock:_0x393d96}=ensureLockScope(_0x25e4af??createEmptyBffLock(),_0x3f756b[_0x25e457(0x1c7)],_0x50d8b9['scriptsRoot'],_0x25e457(0x209)),_0x832fc2=normalizeBffType(_0x3f756b[_0x25e457(0x1f5)](_0x25e457(0x202)))??undefined;if(_0x3f756b['str']('type')&&!_0x832fc2)throw CliErrors[_0x25e457(0x1fb)](_0x25e457(0x1e3));const [_0x3a8ba2,_0x6d74f9]=await Promise['all']([listBffScripts(_0x3f756b['appCode'],_0x832fc2),getBffScriptStatistics(_0x3f756b['appCode'])]);if(_0x3a8ba2[_0x25e457(0x1c5)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x25e457(0x1d3)};const _0x4d9a7b=_0x3f756b[_0x25e457(0x1cb)](_0x25e457(0x1e2));if(_0x4d9a7b&&!_0x3f756b[_0x25e457(0x206)]){const _0x37a748=await confirmForce();if(!_0x37a748)throw CliErrors['cancelled'](_0x25e457(0x1f1));}if(_0x4d9a7b&&_0x3f756b['nonInteractive']){}const _0xb193de=buildDatasetCodeToAliasMap(_0x3f756b[_0x25e457(0x1f3)],_0x3f756b[_0x25e457(0x1c7)]),_0x2bd20e=createHookLocationMap(_0x6d74f9),_0x23e965=JSON['parse'](JSON['stringify'](_0x3bb724)),_0x17b896=_0x3f756b[_0x25e457(0x1c7)],_0x3567d0=_0x23e965[_0x25e457(0x1e6)][_0x17b896];if(!_0x3567d0)throw new Error(_0x25e457(0x1d8)+_0x17b896+_0x25e457(0x1d9));const _0x5d3a9c=[],_0x1115d7=[],_0x50c3e3=[];for(const _0x195827 of _0x3a8ba2){const _0x34fac2=resolveRemoteScriptTarget(_0x50d8b9,_0x195827,_0x2bd20e,_0x393d96[_0x25e457(0x1ee)],_0xb193de);if(!_0x34fac2){_0x1115d7[_0x25e457(0x1d6)]({'lockKey':_0x195827[_0x25e457(0x20c)]+'/'+_0x195827['functionName'],'reason':_0x25e457(0x1df)});continue;}const _0x4f71c3=_0x393d96['functions'][_0x34fac2[_0x25e457(0x1cf)]];try{if(!_0x195827['id'])throw new Error(_0x25e457(0x1e8));if(_0x195827['scriptContent']==null)throw new Error(_0x25e457(0x1d4));const _0x33f42f=_0x195827['scriptContent'],_0x1d688c=computeContentHash(_0x33f42f);if(!_0x4d9a7b){const _0x5b8283=await hasUnsyncedLocalChanges(_0x34fac2[_0x25e457(0x1f4)],_0x4f71c3,_0x1d688c);if(_0x5b8283){_0x1115d7['push']({'lockKey':_0x34fac2[_0x25e457(0x1cf)],'reason':_0x25e457(0x207)});continue;}}await ensureParentDirectory(_0x34fac2['filePath']),await writeFile(_0x34fac2[_0x25e457(0x1f4)],_0x33f42f,_0x25e457(0x20b));const _0x29d01d={'hash':_0x1d688c,'remoteId':_0x195827['id'],'version':_0x195827[_0x25e457(0x1cd)]};_0x34fac2[_0x25e457(0x202)]===_0x25e457(0x1d0)&&_0x34fac2[_0x25e457(0x1dd)]&&(_0x29d01d[_0x25e457(0x1f6)]=_0x34fac2['hookLocation'][_0x25e457(0x1f6)],_0x29d01d[_0x25e457(0x1eb)]=_0x34fac2[_0x25e457(0x1dd)][_0x25e457(0x1eb)],_0x29d01d[_0x25e457(0x200)]=_0x34fac2[_0x25e457(0x1dd)]['operationType'],_0x29d01d[_0x25e457(0x1d5)]=_0x34fac2[_0x25e457(0x1dd)][_0x25e457(0x1d5)]),_0x3567d0['functions'][_0x34fac2[_0x25e457(0x1cf)]]=_0x29d01d,_0x5d3a9c[_0x25e457(0x1d6)]({'lockKey':_0x34fac2[_0x25e457(0x1cf)],'remoteId':_0x195827['id']});}catch(_0x589492){_0x50c3e3[_0x25e457(0x1d6)]({'lockKey':_0x34fac2[_0x25e457(0x1cf)],'error':_0x589492 instanceof Error?_0x589492[_0x25e457(0x1e4)]:String(_0x589492)});}}return _0x3567d0['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x50d8b9[_0x25e457(0x1db)],_0x23e965),{'ok':_0x50c3e3['length']===0x0,'data':{'pulled':_0x5d3a9c,'skipped':_0x1115d7,'failed':_0x50c3e3},'message':_0x25e457(0x1e9)+_0x5d3a9c['length']+_0x25e457(0x1d1)+_0x1115d7['length']+_0x25e457(0x208)+_0x50c3e3[_0x25e457(0x1c5)]+'\x20failed'};}};async function hasUnsyncedLocalChanges(_0x10f475,_0x572464,_0x270ddd){if(!await fileExists(_0x10f475))return![];const _0x352cf4=await computeFileHash(_0x10f475);if(!_0x572464)return _0x270ddd?_0x352cf4!==_0x270ddd:!![];return _0x352cf4!==_0x572464['hash'];}function buildDatasetCodeToAliasMap(_0xe2af54,_0x294766){const _0x385a2=a31_0x1affc9,_0x1a01d0=loadAliasMap(_0xe2af54,undefined,resolveApiFilePath(_0xe2af54,_0x294766));return new Map(_0x1a01d0[_0x385a2(0x1da)](_0x6a9532=>[_0x6a9532[_0x385a2(0x1eb)],_0x6a9532[_0x385a2(0x1f6)]]));}async function confirmForce(){const _0x321f2e=a31_0x1affc9,_0x501217=createInterface({'input':process[_0x321f2e(0x1c8)],'output':process['stderr']}),_0x4c9855=await new Promise(_0x16f5ea=>{const _0x3cf2d5=_0x321f2e;_0x501217[_0x3cf2d5(0x1cc)](_0x3cf2d5(0x204),_0x16f5ea);});return _0x501217[_0x321f2e(0x1c9)](),['y',_0x321f2e(0x1fd)][_0x321f2e(0x1f9)](_0x4c9855['trim']()[_0x321f2e(0x203)]());}
@@ -1 +1 @@
1
- const a32_0x2a9260=a32_0x2ea1;(function(_0x5d5a24,_0x15fa0e){const _0x56427b=a32_0x2ea1,_0x5039c6=_0x5d5a24();while(!![]){try{const _0x3b5a09=-parseInt(_0x56427b(0x1ab))/0x1*(parseInt(_0x56427b(0x1a4))/0x2)+parseInt(_0x56427b(0x1b1))/0x3*(-parseInt(_0x56427b(0x19c))/0x4)+-parseInt(_0x56427b(0x1a0))/0x5+parseInt(_0x56427b(0x18a))/0x6+-parseInt(_0x56427b(0x1a6))/0x7+-parseInt(_0x56427b(0x1ac))/0x8*(parseInt(_0x56427b(0x1af))/0x9)+parseInt(_0x56427b(0x183))/0xa;if(_0x3b5a09===_0x15fa0e)break;else _0x5039c6['push'](_0x5039c6['shift']());}catch(_0x1eed28){_0x5039c6['push'](_0x5039c6['shift']());}}}(a32_0x4845,0x6e203));import{readFile}from'node:fs/promises';function a32_0x2ea1(_0x5b4e34,_0x80388){_0x5b4e34=_0x5b4e34-0x16d;const _0x4845af=a32_0x4845();let _0x2ea194=_0x4845af[_0x5b4e34];return _0x2ea194;}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';function a32_0x4845(){const _0x4a0455=['Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','Cannot\x20resolve\x20dataset\x20for\x20\x22','has','push','5279304iXMSjB','\x20local\x20BFF\x20script(s)\x20for\x20push','str','Run\x20`','datasetCode','Would\x20inspect\x20','Incomplete\x20HOOK\x20path:\x20','force','functions','string','filter',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','description','HOOK','COMMON','Push\x20complete:\x20','unchanged','\x20uploaded,\x20','943252IMxZeC','hash','map','Push\x20local\x20BFF\x20scripts\x20to\x20remote','4167865Wxnobq','create','utf8','length','311294lfWfsn','message','4103113YCCqDs','script','name','functionNode','version','3sdTOBF','16WlBxgT','scriptsRoot','set','186174bxwwIO','bff','6zVurLz','datasetCodeToId','validation','high-risk-write','some','bool','appCode','\x22.\x20','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','/api/management/library/scripts/save','filePath','update','aliasToDatasetCode','code','operationType','remoteId','lockFilePath','toISOString','boolean','Push\x20only\x20this\x20script\x20type','lockKey','\x20skipped,\x20','type','19708620ARZwgq','alias','\x20failed'];a32_0x4845=function(){return _0x4a0455;};return a32_0x4845();}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_0x2a9260(0x1b0),'command':'push','description':a32_0x2a9260(0x19f),'risk':a32_0x2a9260(0x16f),'flags':[{'name':'type','type':a32_0x2a9260(0x193),'description':a32_0x2a9260(0x17f),'enum':[a32_0x2a9260(0x198),'ENDPOINT',a32_0x2a9260(0x197)]},{'name':a32_0x2a9260(0x1a8),'type':'string','description':a32_0x2a9260(0x186)},{'name':a32_0x2a9260(0x191),'type':a32_0x2a9260(0x17e),'description':'Force\x20push\x20ignoring\x20hash\x20protection'}],async 'dryRun'(_0x28e841){const _0x20997c=a32_0x2a9260,_0x3f14bc=loadBffProjectConfig(_0x28e841['appCode']),_0x56a6da=await readBffLockFile(_0x3f14bc['lockFilePath']),{appLock:_0x26471b}=ensureLockScope(_0x56a6da??createEmptyBffLock(),_0x28e841[_0x20997c(0x172)],_0x3f14bc[_0x20997c(0x1ad)],'push'),_0x165f53=await getTargetFunctions(_0x3f14bc,_0x28e841),_0x1a1de0=_0x28e841[_0x20997c(0x171)](_0x20997c(0x191)),_0x2ad6e1=[];for(const _0x508b19 of _0x165f53){const _0x4c40bd=await computeFileHash(_0x508b19[_0x20997c(0x176)]),_0x46405f=_0x26471b[_0x20997c(0x192)][_0x508b19[_0x20997c(0x180)]],_0x1757a7=!!_0x46405f&&_0x46405f[_0x20997c(0x19d)]===_0x4c40bd;_0x2ad6e1['push']({'lockKey':_0x508b19[_0x20997c(0x180)],'filePath':_0x508b19[_0x20997c(0x176)],'remoteId':_0x46405f?.[_0x20997c(0x17b)]??null,'mode':_0x46405f?.[_0x20997c(0x17b)]?_0x20997c(0x177):_0x20997c(0x1a1),'status':!_0x1a1de0&&_0x1757a7?_0x20997c(0x19a):'would_push'});}return{'method':'POST','url':_0x20997c(0x175),'body':{'appCode':_0x28e841[_0x20997c(0x172)],'force':_0x1a1de0,'files':_0x2ad6e1},'description':_0x20997c(0x18f)+_0x2ad6e1[_0x20997c(0x1a3)]+_0x20997c(0x18b)};},async 'execute'(_0x3dea98){const _0x3badea=a32_0x2a9260,_0x35b5a1=loadBffProjectConfig(_0x3dea98[_0x3badea(0x172)]),_0x4d0504=await readBffLockFile(_0x35b5a1[_0x3badea(0x17c)]),{lockData:_0x1d844e,appLock:_0x2a47e9}=ensureLockScope(_0x4d0504??createEmptyBffLock(),_0x3dea98['appCode'],_0x35b5a1[_0x3badea(0x1ad)],_0x3badea(0x189)),_0x21fe93=await getTargetFunctions(_0x35b5a1,_0x3dea98);if(_0x21fe93[_0x3badea(0x1a3)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':'No\x20local\x20BFF\x20functions\x20found.'};const _0x3fd138=_0x3dea98[_0x3badea(0x171)]('force'),_0x182525=await buildHookMaps(_0x3dea98['appCode'],_0x3dea98['apiDir'],_0x21fe93,_0x2a47e9),_0x345eb5=[],_0x5aa602=[],_0xe7278d=[];for(const _0x3134af of _0x21fe93){const _0x20c8d5=await computeFileHash(_0x3134af[_0x3badea(0x176)]),_0x117dc7=_0x2a47e9['functions'][_0x3134af['lockKey']];if(!_0x3fd138&&_0x117dc7&&_0x117dc7['hash']===_0x20c8d5){_0x5aa602[_0x3badea(0x189)]({'lockKey':_0x3134af[_0x3badea(0x180)],'reason':'unchanged'});continue;}try{await uploadSingleFunction(_0x3dea98[_0x3badea(0x172)],_0x3134af,_0x2a47e9,_0x182525);const _0x1b890e=_0x2a47e9[_0x3badea(0x192)][_0x3134af[_0x3badea(0x180)]];_0x345eb5[_0x3badea(0x189)]({'lockKey':_0x3134af[_0x3badea(0x180)],'remoteId':_0x1b890e?.[_0x3badea(0x17b)]??0x0});}catch(_0x5e6943){_0xe7278d[_0x3badea(0x189)]({'lockKey':_0x3134af[_0x3badea(0x180)],'error':_0x5e6943 instanceof Error?_0x5e6943[_0x3badea(0x1a5)]:String(_0x5e6943)});}}return _0x2a47e9['lastSync']=new Date()[_0x3badea(0x17d)](),await writeBffLockFile(_0x35b5a1[_0x3badea(0x17c)],_0x1d844e),{'ok':_0xe7278d[_0x3badea(0x1a3)]===0x0,'data':{'uploaded':_0x345eb5,'skipped':_0x5aa602,'failed':_0xe7278d},'message':_0x3badea(0x199)+_0x345eb5[_0x3badea(0x1a3)]+_0x3badea(0x19b)+_0x5aa602['length']+_0x3badea(0x181)+_0xe7278d[_0x3badea(0x1a3)]+_0x3badea(0x185)};}};async function getTargetFunctions(_0xe6fafd,_0x144c34){const _0x31f959=a32_0x2a9260,_0x48cee6=_0x144c34[_0x31f959(0x18c)](_0x31f959(0x182)),_0x11c40e=_0x144c34[_0x31f959(0x18c)](_0x31f959(0x1a8)),_0x378ba9=normalizeBffType(_0x48cee6)??undefined;if(_0x11c40e&&!_0x378ba9)throw CliErrors[_0x31f959(0x16e)](_0x31f959(0x174));const _0x43d2da=await scanLocalBffFunctions(_0xe6fafd,_0x378ba9);if(_0x11c40e){const _0xe1258d=_0x43d2da[_0x31f959(0x194)](_0x3e7a44=>_0x3e7a44[_0x31f959(0x1a8)]===_0x11c40e);if(_0xe1258d[_0x31f959(0x1a3)]===0x0)throw CliErrors[_0x31f959(0x16e)]('Local\x20function\x20not\x20found:\x20'+_0x378ba9+'/'+_0x11c40e);return _0xe1258d;}return _0x43d2da;}async function buildHookMaps(_0xc49bab,_0x349f7a,_0x2b845c,_0x3066c5){const _0x13a4cf=a32_0x2a9260,_0x1a43dd=_0x2b845c[_0x13a4cf(0x170)](_0x5b3d4b=>_0x5b3d4b['type']==='HOOK');if(!_0x1a43dd)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x4f0a34=loadAliasMap(_0x349f7a,undefined,resolveApiFilePath(_0x349f7a,_0xc49bab)),_0x82b939=new Map(_0x4f0a34[_0x13a4cf(0x19e)](_0x56f587=>[_0x56f587[_0x13a4cf(0x184)],_0x56f587[_0x13a4cf(0x18e)]]));for(const _0x4f5933 of Object['values'](_0x3066c5[_0x13a4cf(0x192)])){_0x4f5933[_0x13a4cf(0x184)]&&_0x4f5933[_0x13a4cf(0x18e)]&&!_0x82b939[_0x13a4cf(0x188)](_0x4f5933[_0x13a4cf(0x184)])&&_0x82b939[_0x13a4cf(0x1ae)](_0x4f5933[_0x13a4cf(0x184)],_0x4f5933[_0x13a4cf(0x18e)]);}const _0x1acef9=await listDatasets(_0xc49bab),_0x497d3f=new Map(_0x1acef9[_0x13a4cf(0x19e)](_0x44ff8c=>[_0x44ff8c[_0x13a4cf(0x179)],_0x44ff8c['id']]));return{'aliasToDatasetCode':_0x82b939,'datasetCodeToId':_0x497d3f};}async function uploadSingleFunction(_0x1446b3,_0x1d991e,_0x2777d4,_0x4dd07e){const _0x1a0ee3=a32_0x2a9260,_0x1faee7=await readFile(_0x1d991e['filePath'],_0x1a0ee3(0x1a2)),_0x1a89bf=await computeFileHash(_0x1d991e['filePath']),_0x250d66=_0x2777d4['functions'][_0x1d991e[_0x1a0ee3(0x180)]];if(_0x250d66?.[_0x1a0ee3(0x17b)]&&_0x250d66[_0x1a0ee3(0x1aa)]==null)throw CliErrors[_0x1a0ee3(0x16e)](_0x1d991e[_0x1a0ee3(0x180)]+_0x1a0ee3(0x195));let _0x2702f0=extractScriptDescription(_0x1faee7);if(!_0x2702f0&&_0x250d66?.[_0x1a0ee3(0x17b)]){const _0x25c760=await getBffScriptInfo(_0x250d66[_0x1a0ee3(0x17b)]);_0x2702f0=_0x25c760[_0x1a0ee3(0x196)]||undefined;}const _0x4f38b7={'appCode':_0x1446b3,'functionName':_0x1d991e[_0x1a0ee3(0x1a8)],'scriptType':_0x1d991e[_0x1a0ee3(0x182)],'scriptContent':_0x1faee7};if(_0x250d66?.[_0x1a0ee3(0x17b)])_0x4f38b7['id']=_0x250d66['remoteId'];if(_0x250d66?.[_0x1a0ee3(0x1aa)]!=null)_0x4f38b7['version']=_0x250d66[_0x1a0ee3(0x1aa)];if(_0x2702f0)_0x4f38b7[_0x1a0ee3(0x196)]=_0x2702f0;if(_0x1d991e[_0x1a0ee3(0x182)]===_0x1a0ee3(0x197)){const _0x5f381f=_0x1d991e[_0x1a0ee3(0x184)];if(!_0x5f381f||!_0x1d991e[_0x1a0ee3(0x17a)]||!_0x1d991e[_0x1a0ee3(0x1a9)])throw CliErrors[_0x1a0ee3(0x16e)](_0x1a0ee3(0x190)+_0x1d991e[_0x1a0ee3(0x180)]);const _0x57cb5d=_0x4dd07e['aliasToDatasetCode']['get'](_0x5f381f)??_0x250d66?.[_0x1a0ee3(0x18e)]??_0x5f381f,_0x56a7ec=_0x4dd07e[_0x1a0ee3(0x16d)]['get'](_0x57cb5d);if(!_0x56a7ec)throw CliErrors[_0x1a0ee3(0x16e)](_0x1a0ee3(0x187)+_0x5f381f+_0x1a0ee3(0x173)+(_0x1a0ee3(0x18d)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.'));_0x4f38b7['datasetId']=_0x56a7ec,_0x4f38b7[_0x1a0ee3(0x17a)]=_0x1d991e[_0x1a0ee3(0x17a)],_0x4f38b7[_0x1a0ee3(0x1a9)]=_0x1d991e[_0x1a0ee3(0x1a9)];}const _0x13089=await saveBffScript(_0x4f38b7),_0x118209=_0x13089['id'],_0x170978=_0x13089[_0x1a0ee3(0x1a7)]??await getBffScriptInfo(_0x118209),_0x11f499={'hash':_0x1a89bf,'remoteId':_0x118209,'version':_0x170978[_0x1a0ee3(0x1aa)]};if(_0x1d991e[_0x1a0ee3(0x182)]===_0x1a0ee3(0x197)){const _0x46dc2c=_0x1d991e[_0x1a0ee3(0x184)],_0x44fe92=_0x4dd07e[_0x1a0ee3(0x178)]['get'](_0x46dc2c)??_0x250d66?.[_0x1a0ee3(0x18e)]??_0x46dc2c;_0x4dd07e[_0x1a0ee3(0x178)][_0x1a0ee3(0x188)](_0x46dc2c)?_0x11f499[_0x1a0ee3(0x184)]=_0x46dc2c:_0x11f499[_0x1a0ee3(0x184)]=_0x250d66?.[_0x1a0ee3(0x184)],_0x11f499[_0x1a0ee3(0x18e)]=_0x44fe92,_0x11f499['operationType']=_0x1d991e[_0x1a0ee3(0x17a)],_0x11f499['functionNode']=_0x1d991e[_0x1a0ee3(0x1a9)];}_0x2777d4[_0x1a0ee3(0x192)][_0x1d991e[_0x1a0ee3(0x180)]]=_0x11f499;}
1
+ const a32_0x347b62=a32_0xdf49;(function(_0x15d7b2,_0x357d48){const _0x48477e=a32_0xdf49,_0x15695f=_0x15d7b2();while(!![]){try{const _0x24f574=-parseInt(_0x48477e(0x149))/0x1*(parseInt(_0x48477e(0x15b))/0x2)+-parseInt(_0x48477e(0x151))/0x3*(-parseInt(_0x48477e(0x131))/0x4)+parseInt(_0x48477e(0x144))/0x5+parseInt(_0x48477e(0x150))/0x6*(parseInt(_0x48477e(0x135))/0x7)+-parseInt(_0x48477e(0x13b))/0x8+parseInt(_0x48477e(0x143))/0x9*(-parseInt(_0x48477e(0x138))/0xa)+parseInt(_0x48477e(0x12b))/0xb;if(_0x24f574===_0x357d48)break;else _0x15695f['push'](_0x15695f['shift']());}catch(_0x46f7cc){_0x15695f['push'](_0x15695f['shift']());}}}(a32_0x5b35,0x9300e));import{readFile}from'node:fs/promises';function a32_0x5b35(){const _0x4c2127=['datasetCode','boolean','ENDPOINT','get','hash','filter','filePath','bool',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','values','aliasToDatasetCode','force','operationType','Cannot\x20resolve\x20dataset\x20for\x20\x22','has','push','validation','functions','map','5092120ukxaRS','set','update','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','\x20skipped,\x20','Push\x20only\x20this\x20script\x20type','48844KyaCZj','No\x20local\x20BFF\x20functions\x20found.','utf8','lockKey','32466VqlZWo','alias','lastSync','2492510qlRxNM','type','unchanged','9375528VHuLXj','some','create','POST','remoteId','\x20local\x20BFF\x20script(s)\x20for\x20push','script','scriptsRoot','18ErcQoO','4832160YEfxpn','COMMON','HOOK','bff','appCode','285pjTSZs','str','datasetCodeToId','length','Would\x20inspect\x20','\x22.\x20','name','1494MRIvJL','165ZHBuUV','/api/management/library/scripts/save','version','\x20uploaded,\x20','datasetId','would_push','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','string','Run\x20`','description','6900zZxXcS','\x20failed','functionNode'];a32_0x5b35=function(){return _0x4c2127;};return a32_0x5b35();}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';import{extractScriptDescription}from'../../core/bff/utils.js';function a32_0xdf49(_0x381de7,_0x2c48d8){_0x381de7=_0x381de7-0x11b;const _0x5b3573=a32_0x5b35();let _0xdf49e5=_0x5b3573[_0x381de7];return _0xdf49e5;}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':a32_0x347b62(0x147),'command':'push','description':'Push\x20local\x20BFF\x20scripts\x20to\x20remote','risk':'high-risk-write','flags':[{'name':a32_0x347b62(0x139),'type':'string','description':a32_0x347b62(0x130),'enum':[a32_0x347b62(0x145),a32_0x347b62(0x160),a32_0x347b62(0x146)]},{'name':a32_0x347b62(0x14f),'type':a32_0x347b62(0x158),'description':a32_0x347b62(0x12e)},{'name':a32_0x347b62(0x123),'type':a32_0x347b62(0x15f),'description':'Force\x20push\x20ignoring\x20hash\x20protection'}],async 'dryRun'(_0x12fa24){const _0x53ab32=a32_0x347b62,_0x983922=loadBffProjectConfig(_0x12fa24[_0x53ab32(0x148)]),_0x2f4903=await readBffLockFile(_0x983922['lockFilePath']),{appLock:_0xf44704}=ensureLockScope(_0x2f4903??createEmptyBffLock(),_0x12fa24['appCode'],_0x983922[_0x53ab32(0x142)],'push'),_0x47ccae=await getTargetFunctions(_0x983922,_0x12fa24),_0x3d67cc=_0x12fa24[_0x53ab32(0x11f)](_0x53ab32(0x123)),_0x1eb496=[];for(const _0x4af684 of _0x47ccae){const _0x51f5fc=await computeFileHash(_0x4af684[_0x53ab32(0x11e)]),_0x571029=_0xf44704['functions'][_0x4af684[_0x53ab32(0x134)]],_0x4903e4=!!_0x571029&&_0x571029[_0x53ab32(0x11c)]===_0x51f5fc;_0x1eb496['push']({'lockKey':_0x4af684['lockKey'],'filePath':_0x4af684[_0x53ab32(0x11e)],'remoteId':_0x571029?.[_0x53ab32(0x13f)]??null,'mode':_0x571029?.[_0x53ab32(0x13f)]?_0x53ab32(0x12d):_0x53ab32(0x13d),'status':!_0x3d67cc&&_0x4903e4?_0x53ab32(0x13a):_0x53ab32(0x156)});}return{'method':_0x53ab32(0x13e),'url':_0x53ab32(0x152),'body':{'appCode':_0x12fa24[_0x53ab32(0x148)],'force':_0x3d67cc,'files':_0x1eb496},'description':_0x53ab32(0x14d)+_0x1eb496[_0x53ab32(0x14c)]+_0x53ab32(0x140)};},async 'execute'(_0x33616f){const _0xa78295=a32_0x347b62,_0x5a9158=loadBffProjectConfig(_0x33616f[_0xa78295(0x148)]),_0x54cf07=await readBffLockFile(_0x5a9158['lockFilePath']),{lockData:_0x4cadd1,appLock:_0x8e2bff}=ensureLockScope(_0x54cf07??createEmptyBffLock(),_0x33616f[_0xa78295(0x148)],_0x5a9158['scriptsRoot'],_0xa78295(0x127)),_0xcfce95=await getTargetFunctions(_0x5a9158,_0x33616f);if(_0xcfce95[_0xa78295(0x14c)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0xa78295(0x132)};const _0xedd661=_0x33616f[_0xa78295(0x11f)](_0xa78295(0x123)),_0x1a6d7f=await buildHookMaps(_0x33616f[_0xa78295(0x148)],_0x33616f['apiDir'],_0xcfce95,_0x8e2bff),_0x48696b=[],_0x251bd7=[],_0x55f598=[];for(const _0x28fece of _0xcfce95){const _0x13e960=await computeFileHash(_0x28fece[_0xa78295(0x11e)]),_0x351cd4=_0x8e2bff[_0xa78295(0x129)][_0x28fece[_0xa78295(0x134)]];if(!_0xedd661&&_0x351cd4&&_0x351cd4['hash']===_0x13e960){_0x251bd7[_0xa78295(0x127)]({'lockKey':_0x28fece[_0xa78295(0x134)],'reason':_0xa78295(0x13a)});continue;}try{await uploadSingleFunction(_0x33616f[_0xa78295(0x148)],_0x28fece,_0x8e2bff,_0x1a6d7f);const _0x838a24=_0x8e2bff[_0xa78295(0x129)][_0x28fece[_0xa78295(0x134)]];_0x48696b[_0xa78295(0x127)]({'lockKey':_0x28fece['lockKey'],'remoteId':_0x838a24?.[_0xa78295(0x13f)]??0x0});}catch(_0x5bb246){_0x55f598['push']({'lockKey':_0x28fece['lockKey'],'error':_0x5bb246 instanceof Error?_0x5bb246['message']:String(_0x5bb246)});}}return _0x8e2bff[_0xa78295(0x137)]=new Date()['toISOString'](),await writeBffLockFile(_0x5a9158['lockFilePath'],_0x4cadd1),{'ok':_0x55f598['length']===0x0,'data':{'uploaded':_0x48696b,'skipped':_0x251bd7,'failed':_0x55f598},'message':'Push\x20complete:\x20'+_0x48696b[_0xa78295(0x14c)]+_0xa78295(0x154)+_0x251bd7['length']+_0xa78295(0x12f)+_0x55f598[_0xa78295(0x14c)]+_0xa78295(0x15c)};}};async function getTargetFunctions(_0x5f01d8,_0xb39a37){const _0x3d473f=a32_0x347b62,_0x2fd860=_0xb39a37[_0x3d473f(0x14a)](_0x3d473f(0x139)),_0x424b20=_0xb39a37[_0x3d473f(0x14a)](_0x3d473f(0x14f)),_0x4bf4f0=normalizeBffType(_0x2fd860)??undefined;if(_0x424b20&&!_0x4bf4f0)throw CliErrors[_0x3d473f(0x128)](_0x3d473f(0x157));const _0x3cce43=await scanLocalBffFunctions(_0x5f01d8,_0x4bf4f0);if(_0x424b20){const _0x89cfdd=_0x3cce43[_0x3d473f(0x11d)](_0x140683=>_0x140683[_0x3d473f(0x14f)]===_0x424b20);if(_0x89cfdd[_0x3d473f(0x14c)]===0x0)throw CliErrors['validation']('Local\x20function\x20not\x20found:\x20'+_0x4bf4f0+'/'+_0x424b20);return _0x89cfdd;}return _0x3cce43;}async function buildHookMaps(_0x2f05d7,_0x3127d7,_0x33037d,_0x1edbc4){const _0x54f4d9=a32_0x347b62,_0x846e5e=_0x33037d[_0x54f4d9(0x13c)](_0x66c1e9=>_0x66c1e9[_0x54f4d9(0x139)]==='HOOK');if(!_0x846e5e)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x421d95=loadAliasMap(_0x3127d7,undefined,resolveApiFilePath(_0x3127d7,_0x2f05d7)),_0x217282=new Map(_0x421d95[_0x54f4d9(0x12a)](_0x14cc33=>[_0x14cc33[_0x54f4d9(0x136)],_0x14cc33[_0x54f4d9(0x15e)]]));for(const _0x10bf6c of Object[_0x54f4d9(0x121)](_0x1edbc4[_0x54f4d9(0x129)])){_0x10bf6c[_0x54f4d9(0x136)]&&_0x10bf6c[_0x54f4d9(0x15e)]&&!_0x217282[_0x54f4d9(0x126)](_0x10bf6c[_0x54f4d9(0x136)])&&_0x217282[_0x54f4d9(0x12c)](_0x10bf6c[_0x54f4d9(0x136)],_0x10bf6c[_0x54f4d9(0x15e)]);}const _0x534092=await listDatasets(_0x2f05d7),_0x29ca78=new Map(_0x534092[_0x54f4d9(0x12a)](_0x312b55=>[_0x312b55['code'],_0x312b55['id']]));return{'aliasToDatasetCode':_0x217282,'datasetCodeToId':_0x29ca78};}async function uploadSingleFunction(_0x5ce0e7,_0x22ce77,_0x517280,_0x54523e){const _0x3bf955=a32_0x347b62,_0x2143b0=await readFile(_0x22ce77['filePath'],_0x3bf955(0x133)),_0x3a42be=await computeFileHash(_0x22ce77['filePath']),_0x2fcff5=_0x517280[_0x3bf955(0x129)][_0x22ce77[_0x3bf955(0x134)]];if(_0x2fcff5?.['remoteId']&&_0x2fcff5[_0x3bf955(0x153)]==null)throw CliErrors['validation'](_0x22ce77[_0x3bf955(0x134)]+_0x3bf955(0x120));let _0x48e984=extractScriptDescription(_0x2143b0);if(!_0x48e984&&_0x2fcff5?.[_0x3bf955(0x13f)]){const _0x28b38f=await getBffScriptInfo(_0x2fcff5['remoteId']);_0x48e984=_0x28b38f[_0x3bf955(0x15a)]||undefined;}const _0x31b674={'appCode':_0x5ce0e7,'functionName':_0x22ce77[_0x3bf955(0x14f)],'scriptType':_0x22ce77[_0x3bf955(0x139)],'scriptContent':_0x2143b0};if(_0x2fcff5?.[_0x3bf955(0x13f)])_0x31b674['id']=_0x2fcff5[_0x3bf955(0x13f)];if(_0x2fcff5?.[_0x3bf955(0x153)]!=null)_0x31b674[_0x3bf955(0x153)]=_0x2fcff5[_0x3bf955(0x153)];if(_0x48e984)_0x31b674[_0x3bf955(0x15a)]=_0x48e984;if(_0x22ce77['type']===_0x3bf955(0x146)){const _0x37e210=_0x22ce77[_0x3bf955(0x136)];if(!_0x37e210||!_0x22ce77[_0x3bf955(0x124)]||!_0x22ce77[_0x3bf955(0x15d)])throw CliErrors[_0x3bf955(0x128)]('Incomplete\x20HOOK\x20path:\x20'+_0x22ce77[_0x3bf955(0x134)]);const _0x44ea52=_0x54523e['aliasToDatasetCode']['get'](_0x37e210)??_0x2fcff5?.['datasetCode']??_0x37e210,_0x18effb=_0x54523e[_0x3bf955(0x14b)]['get'](_0x44ea52);if(!_0x18effb)throw CliErrors[_0x3bf955(0x128)](_0x3bf955(0x125)+_0x37e210+_0x3bf955(0x14e)+(_0x3bf955(0x159)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.'));_0x31b674[_0x3bf955(0x155)]=_0x18effb,_0x31b674[_0x3bf955(0x124)]=_0x22ce77[_0x3bf955(0x124)],_0x31b674[_0x3bf955(0x15d)]=_0x22ce77[_0x3bf955(0x15d)];}const _0x22a090=await saveBffScript(_0x31b674),_0x30e8fe=_0x22a090['id'],_0x40f099=_0x22a090[_0x3bf955(0x141)]??await getBffScriptInfo(_0x30e8fe),_0x38aefa={'hash':_0x3a42be,'remoteId':_0x30e8fe,'version':_0x40f099[_0x3bf955(0x153)]};if(_0x22ce77[_0x3bf955(0x139)]===_0x3bf955(0x146)){const _0x60e4e4=_0x22ce77[_0x3bf955(0x136)],_0x29edca=_0x54523e['aliasToDatasetCode'][_0x3bf955(0x11b)](_0x60e4e4)??_0x2fcff5?.[_0x3bf955(0x15e)]??_0x60e4e4;_0x54523e[_0x3bf955(0x122)]['has'](_0x60e4e4)?_0x38aefa[_0x3bf955(0x136)]=_0x60e4e4:_0x38aefa['alias']=_0x2fcff5?.[_0x3bf955(0x136)],_0x38aefa[_0x3bf955(0x15e)]=_0x29edca,_0x38aefa[_0x3bf955(0x124)]=_0x22ce77[_0x3bf955(0x124)],_0x38aefa[_0x3bf955(0x15d)]=_0x22ce77['functionNode'];}_0x517280['functions'][_0x22ce77['lockKey']]=_0x38aefa;}
@@ -1 +1 @@
1
- const a33_0x53afaa=a33_0x3777;(function(_0x1fcb86,_0x3c5c65){const _0x31cdae=a33_0x3777,_0x1077a1=_0x1fcb86();while(!![]){try{const _0x48756b=-parseInt(_0x31cdae(0x19a))/0x1*(-parseInt(_0x31cdae(0x1a1))/0x2)+parseInt(_0x31cdae(0x19c))/0x3+-parseInt(_0x31cdae(0x191))/0x4+parseInt(_0x31cdae(0x19b))/0x5+-parseInt(_0x31cdae(0x18c))/0x6+parseInt(_0x31cdae(0x18b))/0x7*(-parseInt(_0x31cdae(0x18d))/0x8)+-parseInt(_0x31cdae(0x188))/0x9*(-parseInt(_0x31cdae(0x192))/0xa);if(_0x48756b===_0x3c5c65)break;else _0x1077a1['push'](_0x1077a1['shift']());}catch(_0x16e511){_0x1077a1['push'](_0x1077a1['shift']());}}}(a33_0x3cd9,0x6ace3));function a33_0x3777(_0x544898,_0x452ce3){_0x544898=_0x544898-0x17e;const _0x3cd945=a33_0x3cd9();let _0x37772f=_0x3cd945[_0x544898];return _0x37772f;}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,resolveRemoteScriptTarget,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';export const bffStatus={'service':a33_0x53afaa(0x186),'command':a33_0x53afaa(0x193),'description':a33_0x53afaa(0x196),'risk':a33_0x53afaa(0x18e),'flags':[{'name':a33_0x53afaa(0x197),'type':a33_0x53afaa(0x19f),'description':a33_0x53afaa(0x18a)}],async 'execute'(_0x3a9d9d){const _0x4baa95=a33_0x53afaa,_0xe97b4a=loadBffProjectConfig(_0x3a9d9d[_0x4baa95(0x17f)]),_0x5a0dce=await readBffLockFile(_0xe97b4a[_0x4baa95(0x19e)]),{appLock:_0x16384a}=ensureLockScope(_0x5a0dce??createEmptyBffLock(),_0x3a9d9d[_0x4baa95(0x17f)],_0xe97b4a[_0x4baa95(0x189)],'status'),_0x18930e=await scanLocalBffFunctions(_0xe97b4a),_0xf06726=[],_0x150342=[],_0x3d4c73=[];for(const _0x8d533e of _0x18930e){const _0x9027a4=await computeFileHash(_0x8d533e[_0x4baa95(0x194)]),_0x4775a6=_0x16384a[_0x4baa95(0x190)][_0x8d533e[_0x4baa95(0x198)]];if(!_0x4775a6)_0xf06726[_0x4baa95(0x195)](_0x8d533e[_0x4baa95(0x198)]);else _0x4775a6[_0x4baa95(0x185)]!==_0x9027a4?_0x150342[_0x4baa95(0x195)](_0x8d533e['lockKey']):_0x3d4c73[_0x4baa95(0x195)](_0x8d533e['lockKey']);}const _0x402593=[];if(_0x3a9d9d[_0x4baa95(0x181)](_0x4baa95(0x197))){const _0x227fd6=loadAliasMap(_0x3a9d9d[_0x4baa95(0x184)],undefined,resolveApiFilePath(_0x3a9d9d[_0x4baa95(0x184)],_0x3a9d9d['appCode'])),_0xc75ca7=new Map(_0x227fd6[_0x4baa95(0x183)](_0x431fc1=>[_0x431fc1['datasetCode'],_0x431fc1[_0x4baa95(0x180)]])),[_0x12a410,_0x26fbb5]=await Promise[_0x4baa95(0x17e)]([listBffScripts(_0x3a9d9d[_0x4baa95(0x17f)]),getBffScriptStatistics(_0x3a9d9d[_0x4baa95(0x17f)])]),_0x5a8f05=createHookLocationMap(_0x26fbb5),_0x4128c7=new Set(_0x18930e['map'](_0x354b39=>_0x354b39['lockKey']));for(const _0x45fa4a of _0x12a410){const _0x4ad001=resolveRemoteScriptTarget(_0xe97b4a,_0x45fa4a,_0x5a8f05,_0x16384a[_0x4baa95(0x190)],_0xc75ca7);_0x4ad001&&!_0x4128c7[_0x4baa95(0x19d)](_0x4ad001[_0x4baa95(0x198)])&&_0x402593[_0x4baa95(0x195)](_0x4ad001[_0x4baa95(0x198)]);}}const _0x10443f=_0xf06726[_0x4baa95(0x1a0)]===0x0&&_0x150342[_0x4baa95(0x1a0)]===0x0&&_0x402593[_0x4baa95(0x1a0)]===0x0;return{'ok':!![],'data':{'added':_0xf06726,'modified':_0x150342,'unchanged':_0x3d4c73,'remoteOnly':_0x402593},'message':_0x10443f?_0x4baa95(0x182):_0xf06726[_0x4baa95(0x1a0)]+'\x20added,\x20'+_0x150342[_0x4baa95(0x1a0)]+_0x4baa95(0x18f)+_0x3d4c73[_0x4baa95(0x1a0)]+_0x4baa95(0x199)+(_0x402593[_0x4baa95(0x1a0)]>0x0?',\x20'+_0x402593['length']+_0x4baa95(0x187):'')};}};function a33_0x3cd9(){const _0x44f9cb=['length','4078cBpWIq','all','appCode','alias','bool','All\x20BFF\x20scripts\x20are\x20in\x20sync.','map','apiDir','hash','bff','\x20remote-only','559692tJzfeG','scriptsRoot','Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally','7rEQsvL','820008nbKbwQ','682888KekxIS','read','\x20modified,\x20','functions','2054548fWBGri','110LQtsKM','status','filePath','push','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','remote','lockKey','\x20unchanged','11UZkwvC','1786575UqwPGU','327987fJmWjn','has','lockFilePath','boolean'];a33_0x3cd9=function(){return _0x44f9cb;};return a33_0x3cd9();}
1
+ const a33_0x51d7ed=a33_0x305c;function a33_0x305c(_0x2caaa4,_0x2aecaf){_0x2caaa4=_0x2caaa4-0x88;const _0x26a7af=a33_0x26a7();let _0x305cb3=_0x26a7af[_0x2caaa4];return _0x305cb3;}(function(_0x3c3b68,_0x3caa03){const _0xe7bee6=a33_0x305c,_0x402624=_0x3c3b68();while(!![]){try{const _0x56eef9=-parseInt(_0xe7bee6(0x8a))/0x1*(-parseInt(_0xe7bee6(0xa6))/0x2)+parseInt(_0xe7bee6(0x8d))/0x3+-parseInt(_0xe7bee6(0xa0))/0x4*(parseInt(_0xe7bee6(0xa4))/0x5)+-parseInt(_0xe7bee6(0x9a))/0x6+parseInt(_0xe7bee6(0x9b))/0x7*(-parseInt(_0xe7bee6(0x9c))/0x8)+parseInt(_0xe7bee6(0xa2))/0x9*(-parseInt(_0xe7bee6(0x8c))/0xa)+parseInt(_0xe7bee6(0x92))/0xb;if(_0x56eef9===_0x3caa03)break;else _0x402624['push'](_0x402624['shift']());}catch(_0x9e1c52){_0x402624['push'](_0x402624['shift']());}}}(a33_0x26a7,0x7830c));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,resolveRemoteScriptTarget,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';function a33_0x26a7(){const _0x55ba85=['17913368HPwiuj','status','functions','alias','apiDir','Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally','length','read','4720428uVPveF','7onzwUh','7463096KzbPXo','\x20remote-only','map','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','24JDufWR','hash','14490gJuUMN','\x20modified,\x20','35085BNUrLs','\x20unchanged','2hcLfpb','appCode','scriptsRoot','boolean','\x20added,\x20','275115OjjsFs','bool','1040uXlEGv','1553592tHlzqw','lockKey','push','datasetCode','remote'];a33_0x26a7=function(){return _0x55ba85;};return a33_0x26a7();}import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';export const bffStatus={'service':'bff','command':'status','description':a33_0x51d7ed(0x9f),'risk':a33_0x51d7ed(0x99),'flags':[{'name':a33_0x51d7ed(0x91),'type':a33_0x51d7ed(0x88),'description':a33_0x51d7ed(0x97)}],async 'execute'(_0xb69e48){const _0x5e1c31=a33_0x51d7ed,_0x40ea85=loadBffProjectConfig(_0xb69e48[_0x5e1c31(0xa7)]),_0xb8254b=await readBffLockFile(_0x40ea85['lockFilePath']),{appLock:_0x883a99}=ensureLockScope(_0xb8254b??createEmptyBffLock(),_0xb69e48[_0x5e1c31(0xa7)],_0x40ea85[_0x5e1c31(0xa8)],_0x5e1c31(0x93)),_0x470594=await scanLocalBffFunctions(_0x40ea85),_0x3acf3c=[],_0x9ffe3c=[],_0x314b8c=[];for(const _0x4c3033 of _0x470594){const _0x3f8f13=await computeFileHash(_0x4c3033['filePath']),_0x329544=_0x883a99[_0x5e1c31(0x94)][_0x4c3033['lockKey']];if(!_0x329544)_0x3acf3c['push'](_0x4c3033[_0x5e1c31(0x8e)]);else _0x329544[_0x5e1c31(0xa1)]!==_0x3f8f13?_0x9ffe3c[_0x5e1c31(0x8f)](_0x4c3033[_0x5e1c31(0x8e)]):_0x314b8c['push'](_0x4c3033[_0x5e1c31(0x8e)]);}const _0x448256=[];if(_0xb69e48[_0x5e1c31(0x8b)](_0x5e1c31(0x91))){const _0x1473cd=loadAliasMap(_0xb69e48[_0x5e1c31(0x96)],undefined,resolveApiFilePath(_0xb69e48[_0x5e1c31(0x96)],_0xb69e48[_0x5e1c31(0xa7)])),_0x236723=new Map(_0x1473cd[_0x5e1c31(0x9e)](_0x1f00f5=>[_0x1f00f5[_0x5e1c31(0x90)],_0x1f00f5[_0x5e1c31(0x95)]])),[_0x2af066,_0x1b537b]=await Promise['all']([listBffScripts(_0xb69e48[_0x5e1c31(0xa7)]),getBffScriptStatistics(_0xb69e48['appCode'])]),_0x2a8f68=createHookLocationMap(_0x1b537b),_0x18eef1=new Set(_0x470594[_0x5e1c31(0x9e)](_0x312401=>_0x312401['lockKey']));for(const _0x324be4 of _0x2af066){const _0x504d66=resolveRemoteScriptTarget(_0x40ea85,_0x324be4,_0x2a8f68,_0x883a99[_0x5e1c31(0x94)],_0x236723);_0x504d66&&!_0x18eef1['has'](_0x504d66[_0x5e1c31(0x8e)])&&_0x448256['push'](_0x504d66[_0x5e1c31(0x8e)]);}}const _0x2a6b7b=_0x3acf3c[_0x5e1c31(0x98)]===0x0&&_0x9ffe3c[_0x5e1c31(0x98)]===0x0&&_0x448256[_0x5e1c31(0x98)]===0x0;return{'ok':!![],'data':{'added':_0x3acf3c,'modified':_0x9ffe3c,'unchanged':_0x314b8c,'remoteOnly':_0x448256},'message':_0x2a6b7b?'All\x20BFF\x20scripts\x20are\x20in\x20sync.':_0x3acf3c['length']+_0x5e1c31(0x89)+_0x9ffe3c[_0x5e1c31(0x98)]+_0x5e1c31(0xa3)+_0x314b8c[_0x5e1c31(0x98)]+_0x5e1c31(0xa5)+(_0x448256['length']>0x0?',\x20'+_0x448256['length']+_0x5e1c31(0x9d):'')};}};