@lovrabet/rabetbase-cli 2.1.2 → 2.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) 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 -0
  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/dataset/detail.js +1 -1
  48. package/lib/commands/dataset/index.js +1 -1
  49. package/lib/commands/dataset/links.js +1 -1
  50. package/lib/commands/dataset/list.js +1 -1
  51. package/lib/commands/dataset/operations.js +1 -1
  52. package/lib/commands/db/analyze-cancel.js +1 -1
  53. package/lib/commands/db/analyze-start.js +1 -1
  54. package/lib/commands/db/analyze-status.js +1 -1
  55. package/lib/commands/db/create.js +1 -1
  56. package/lib/commands/db/delete.js +1 -1
  57. package/lib/commands/db/detail.js +1 -1
  58. package/lib/commands/db/diff.js +1 -1
  59. package/lib/commands/db/index.js +1 -1
  60. package/lib/commands/db/list.js +1 -1
  61. package/lib/commands/db/shared.js +1 -1
  62. package/lib/commands/db/tables.js +1 -1
  63. package/lib/commands/db/test.js +1 -1
  64. package/lib/commands/db/update.js +1 -1
  65. package/lib/commands/doctor.js +1 -1
  66. package/lib/commands/init/index.js +1 -1
  67. package/lib/commands/logs/index.js +1 -1
  68. package/lib/commands/menu/index.js +1 -1
  69. package/lib/commands/menu/shared/compare-table.js +1 -1
  70. package/lib/commands/menu/shared/index.js +1 -1
  71. package/lib/commands/menu/shared/inquirer.js +1 -1
  72. package/lib/commands/menu/shared/local-pages.js +1 -1
  73. package/lib/commands/menu/shared/logic.js +1 -1
  74. package/lib/commands/menu/shared/service.js +1 -1
  75. package/lib/commands/menu/shared/sync-core.js +1 -1
  76. package/lib/commands/menu/shared/update-core.js +1 -1
  77. package/lib/commands/menu/shared/valid-url.js +1 -1
  78. package/lib/commands/menu/sync.js +1 -1
  79. package/lib/commands/menu/update.js +1 -1
  80. package/lib/commands/page/generate-start.js +1 -0
  81. package/lib/commands/page/generate-status.js +1 -0
  82. package/lib/commands/page/index.js +1 -0
  83. package/lib/commands/page/pull.js +1 -0
  84. package/lib/commands/page/push.js +1 -0
  85. package/lib/commands/page/shared.js +1 -0
  86. package/lib/commands/page/standard-page-status.js +1 -0
  87. package/lib/commands/page/sync.js +1 -0
  88. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  89. package/lib/commands/project/create/format-elapsed.js +1 -1
  90. package/lib/commands/project/create/main.js +1 -1
  91. package/lib/commands/project/create/non-interactive.js +1 -1
  92. package/lib/commands/project/create/project-template-path.js +1 -1
  93. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  94. package/lib/commands/project/create/use-format-code.js +1 -1
  95. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  96. package/lib/commands/project/index.js +1 -1
  97. package/lib/commands/project/init.js +1 -1
  98. package/lib/commands/project/upgrade.js +1 -1
  99. package/lib/commands/registry.js +1 -1
  100. package/lib/commands/run/index.js +1 -1
  101. package/lib/commands/schema.js +1 -1
  102. package/lib/commands/skill/index.js +1 -1
  103. package/lib/commands/sql/create.js +1 -0
  104. package/lib/commands/sql/delete.js +1 -0
  105. package/lib/commands/sql/detail.js +1 -1
  106. package/lib/commands/sql/exec.js +1 -1
  107. package/lib/commands/sql/index.js +1 -1
  108. package/lib/commands/sql/list.js +1 -1
  109. package/lib/commands/sql/pull.js +1 -1
  110. package/lib/commands/sql/push.js +1 -0
  111. package/lib/commands/sql/save.js +1 -1
  112. package/lib/commands/sql/shared.js +1 -1
  113. package/lib/commands/sql/status.js +1 -0
  114. package/lib/commands/sql/validate.js +1 -1
  115. package/lib/config/schema.js +1 -1
  116. package/lib/constant/cdn.js +1 -0
  117. package/lib/constant/cli.js +1 -1
  118. package/lib/constant/defaults.js +1 -1
  119. package/lib/constant/domain.js +1 -1
  120. package/lib/constant/env.js +1 -1
  121. package/lib/constant/output.js +1 -1
  122. package/lib/constant/paths.js +1 -1
  123. package/lib/constant/risk.js +1 -1
  124. package/lib/context.js +1 -1
  125. package/lib/core/alias-resolver.js +1 -1
  126. package/lib/core/api-client.js +1 -1
  127. package/lib/core/bff/config.js +1 -1
  128. package/lib/core/bff/file-system.js +1 -1
  129. package/lib/core/bff/hash.js +1 -1
  130. package/lib/core/bff/lock.js +1 -1
  131. package/lib/core/bff/utils.js +1 -1
  132. package/lib/core/db-resolver.js +1 -1
  133. package/lib/core/page/file-system.js +1 -0
  134. package/lib/core/page/hash.js +1 -0
  135. package/lib/core/page/lock.js +1 -0
  136. package/lib/core/page/types.js +1 -0
  137. package/lib/core/sql-sync/config.js +1 -0
  138. package/lib/core/sql-sync/file-system.js +1 -0
  139. package/lib/core/sql-sync/hash.js +1 -0
  140. package/lib/core/sql-sync/lock.js +1 -0
  141. package/lib/core/sql-sync/types.js +1 -0
  142. package/lib/core/sql-sync/utils.js +1 -0
  143. package/lib/core/sql-validator.js +1 -1
  144. package/lib/errors.js +1 -1
  145. package/lib/framework/build-all-flags.js +1 -1
  146. package/lib/framework/flags.js +1 -1
  147. package/lib/framework/help.js +1 -1
  148. package/lib/framework/index.js +1 -1
  149. package/lib/framework/output.js +1 -1
  150. package/lib/framework/response.js +1 -1
  151. package/lib/framework/runner-alias.js +1 -1
  152. package/lib/framework/runner.js +1 -1
  153. package/lib/framework/schema-export.js +1 -1
  154. package/lib/framework/types.js +1 -1
  155. package/lib/generated/build-info.js +1 -1
  156. package/lib/help.js +1 -1
  157. package/lib/skills/main.js +1 -1
  158. package/lib/skills/npx-skills-add.js +1 -1
  159. package/lib/telemetry/cli-command-trace.js +1 -1
  160. package/lib/telemetry/cli-help-trace.js +1 -1
  161. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  162. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  163. package/lib/telemetry/send-cli-trace-log.js +1 -1
  164. package/lib/utils/ai_config.js +1 -1
  165. package/lib/utils/apply-jq-filter.js +1 -1
  166. package/lib/utils/cdn-config.js +1 -1
  167. package/lib/utils/check-sdk-version.js +1 -1
  168. package/lib/utils/cli-version-check.js +1 -1
  169. package/lib/utils/cli-version-policy.js +1 -0
  170. package/lib/utils/config.js +1 -1
  171. package/lib/utils/copy-directory.js +1 -1
  172. package/lib/utils/entity-with-id.js +1 -1
  173. package/lib/utils/file-utils.js +1 -1
  174. package/lib/utils/guides-cdn.js +1 -1
  175. package/lib/utils/http-client.js +1 -1
  176. package/lib/utils/is-non-interactive.js +1 -1
  177. package/lib/utils/logger.js +1 -1
  178. package/lib/utils/platform.js +1 -1
  179. package/lib/utils/rules-cdn.js +1 -1
  180. package/lib/utils/sleep.js +1 -1
  181. package/lib/utils/template-replacer.js +1 -1
  182. package/lib/utils/version.js +1 -1
  183. package/lib/utils/with-active-cookie.js +1 -1
  184. package/lib/utils/write-cli-side-channel.js +1 -1
  185. package/package.json +3 -2
  186. package/templates/skill/SKILL.md.tpl +1 -1
  187. package/lib/commands/bff/new.js +0 -1
@@ -1 +1 @@
1
- function a103_0x5e1c(){const _0x39086c=['91546nZvHXg','87ngivtF','8084795HmJkyw','50389430tsLGCy','6MmNtNa','180072DnnUGC','4493363LEunWr','2233440sRPjrm','1625636WZZwbi','8TaJVmm'];a103_0x5e1c=function(){return _0x39086c;};return a103_0x5e1c();}(function(_0x1bbcd5,_0x3bd52a){const _0x1a4dd2=a103_0x5689,_0x28c6eb=_0x1bbcd5();while(!![]){try{const _0x3ff814=parseInt(_0x1a4dd2(0xdb))/0x1+-parseInt(_0x1a4dd2(0xd6))/0x2*(parseInt(_0x1a4dd2(0xd7))/0x3)+-parseInt(_0x1a4dd2(0xde))/0x4+parseInt(_0x1a4dd2(0xd8))/0x5*(-parseInt(_0x1a4dd2(0xda))/0x6)+parseInt(_0x1a4dd2(0xdc))/0x7*(-parseInt(_0x1a4dd2(0xd5))/0x8)+-parseInt(_0x1a4dd2(0xdd))/0x9+parseInt(_0x1a4dd2(0xd9))/0xa;if(_0x3ff814===_0x3bd52a)break;else _0x28c6eb['push'](_0x28c6eb['shift']());}catch(_0x3824c2){_0x28c6eb['push'](_0x28c6eb['shift']());}}}(a103_0x5e1c,0xeecf1));import{appListDefinition}from'../../commands/app/list.js';function a103_0x5689(_0x3fa523,_0x3f71b1){_0x3fa523=_0x3fa523-0xd5;const _0x5e1c63=a103_0x5e1c();let _0x568982=_0x5e1c63[_0x3fa523];return _0x568982;}import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ (function(_0x57bacd,_0x50b119){const _0x5cc759=a20_0x2289,_0x12b7a9=_0x57bacd();while(!![]){try{const _0x33685b=parseInt(_0x5cc759(0x169))/0x1*(-parseInt(_0x5cc759(0x167))/0x2)+parseInt(_0x5cc759(0x166))/0x3*(-parseInt(_0x5cc759(0x16c))/0x4)+parseInt(_0x5cc759(0x16b))/0x5+parseInt(_0x5cc759(0x170))/0x6*(-parseInt(_0x5cc759(0x16d))/0x7)+-parseInt(_0x5cc759(0x16e))/0x8*(parseInt(_0x5cc759(0x168))/0x9)+-parseInt(_0x5cc759(0x165))/0xa+parseInt(_0x5cc759(0x16a))/0xb*(parseInt(_0x5cc759(0x16f))/0xc);if(_0x33685b===_0x50b119)break;else _0x12b7a9['push'](_0x12b7a9['shift']());}catch(_0x4578f2){_0x12b7a9['push'](_0x12b7a9['shift']());}}}(a20_0x2b95,0xb03af));function a20_0x2b95(){const _0x2a98e1=['1436qVaWnU','205499ayqNWx','235256zsdMiL','486360cZUUMq','48CqSOVp','2688340rwzfyp','9885SdKGgO','197048RmOpNx','315bAtEGA','11lzvpSY','1111GcUUyG','2139565uJcRVO'];a20_0x2b95=function(){return _0x2a98e1;};return a20_0x2b95();}function a20_0x2289(_0x46316f,_0x372be6){_0x46316f=_0x46316f-0x165;const _0x2b95ab=a20_0x2b95();let _0x22893e=_0x2b95ab[_0x46316f];return _0x22893e;}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
- const a102_0x1707aa=a102_0x427c;(function(_0x39eb24,_0x180d0d){const _0x380673=a102_0x427c,_0x9ce65f=_0x39eb24();while(!![]){try{const _0x473321=parseInt(_0x380673(0x15c))/0x1+-parseInt(_0x380673(0x158))/0x2+parseInt(_0x380673(0x16e))/0x3+-parseInt(_0x380673(0x166))/0x4*(-parseInt(_0x380673(0x151))/0x5)+parseInt(_0x380673(0x15a))/0x6*(parseInt(_0x380673(0x156))/0x7)+-parseInt(_0x380673(0x155))/0x8*(-parseInt(_0x380673(0x16c))/0x9)+-parseInt(_0x380673(0x168))/0xa;if(_0x473321===_0x180d0d)break;else _0x9ce65f['push'](_0x9ce65f['shift']());}catch(_0x25dc18){_0x9ce65f['push'](_0x9ce65f['shift']());}}}(a102_0x38f9,0x20c60));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 a102_0x38f9(){const _0x2c1e3f=['249465UPczFR','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','object','globalConfig','bool','List\x20all\x20configured\x20apps','find','push','appcode','length','28EeceQN','isCurrent','1816620FmPjpP','globalPath','merged','boolean','9IDbKJH','apps','37362ZypSTP','entries','\x20in\x20','project','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','107385zlrNSU','defaultApp','read','projectConfig','829208YFRnLt','14mlQPHj','.\x20Use\x20`','447506JLoXDq','projectPath','71238avJbCg','global'];a102_0x38f9=function(){return _0x2c1e3f;};return a102_0x38f9();}function buildItemsFromLayer(_0x536d74,_0x173078){const _0x40a3af=a102_0x427c,_0xbab1c2=[],_0x4b6c01=_0x536d74[_0x40a3af(0x16d)]&&typeof _0x536d74[_0x40a3af(0x16d)]==='object'?_0x536d74[_0x40a3af(0x16d)]:{},_0x43c087=_0x536d74[_0x40a3af(0x152)]||undefined;for(const [_0x27ef43,_0x16b6ad]of Object[_0x40a3af(0x16f)](_0x4b6c01)){if(!_0x16b6ad||typeof _0x16b6ad!=='object'||!_0x16b6ad['appcode'])continue;_0xbab1c2[_0x40a3af(0x163)]({'name':_0x27ef43,'appcode':_0x16b6ad[_0x40a3af(0x164)],'named':!![],'definedIn':_0x173078,'isDefault':_0x27ef43===_0x43c087,...buildAppProfileListFields(_0x16b6ad)});}return _0xbab1c2;}function a102_0x427c(_0x2afa1b,_0xd02251){_0x2afa1b=_0x2afa1b-0x14e;const _0x38f9e4=a102_0x38f9();let _0x427cf1=_0x38f9e4[_0x2afa1b];return _0x427cf1;}function buildMergedItems(_0x3778c5,_0x48bec8){const _0x3b83b5=a102_0x427c,{apps:apps={},defaultApp:_0x12ced0}=_0x3778c5,_0x48ca25=_0x48bec8[_0x3b83b5(0x15f)][_0x3b83b5(0x16d)]&&typeof _0x48bec8[_0x3b83b5(0x15f)][_0x3b83b5(0x16d)]==='object'?_0x48bec8['globalConfig'][_0x3b83b5(0x16d)]:{},_0x365a99=_0x48bec8[_0x3b83b5(0x154)][_0x3b83b5(0x16d)]&&typeof _0x48bec8[_0x3b83b5(0x154)][_0x3b83b5(0x16d)]===_0x3b83b5(0x15e)?_0x48bec8[_0x3b83b5(0x154)]['apps']:{},_0x932e72=_0x48bec8[_0x3b83b5(0x154)]['inherit']===![],_0x1fc269=Object['entries'](apps),_0x3a6fb2=_0x1fc269['map'](([_0x4c679b,_0x363588])=>({'name':_0x4c679b,'appcode':_0x363588[_0x3b83b5(0x164)],'named':!![],'definedIn':appDefinedIn(_0x4c679b,_0x48ca25,_0x365a99,_0x932e72),'isDefault':_0x4c679b===_0x12ced0,...buildAppProfileListFields(_0x363588)}));return _0x3a6fb2;}async function execute(_0x151c03){const _0x4f6559=a102_0x427c,_0x24e804=_0x151c03[_0x4f6559(0x160)](_0x4f6559(0x15b)),_0x47da94=_0x151c03[_0x4f6559(0x160)]('project'),_0x3e4191=_0x24e804?_0x4f6559(0x15b):_0x47da94?_0x4f6559(0x14f):'merged',{config:_0x225df4,layers:_0x587ca8}=readRawConfigWithLayers(),_0x4f9bde=resolveDefaultAppSource(_0x587ca8),{defaultApp:_0x583cf7}=_0x225df4;let _0x5d8aa6,_0x7825b8;switch(_0x3e4191){case'global':_0x5d8aa6=buildItemsFromLayer(_0x587ca8['globalConfig'],'global'),_0x7825b8=_0x587ca8[_0x4f6559(0x169)];break;case _0x4f6559(0x14f):_0x5d8aa6=buildItemsFromLayer(_0x587ca8[_0x4f6559(0x154)],_0x4f6559(0x14f)),_0x7825b8=_0x587ca8[_0x4f6559(0x159)];break;default:_0x5d8aa6=buildMergedItems(_0x225df4,_0x587ca8);break;}enrichAppListItemsWithMergedSelection(_0x5d8aa6,_0x151c03['mergedCli']);if(_0x5d8aa6[_0x4f6559(0x165)]===0x0){const _0x5d1b4a=_0x3e4191===_0x4f6559(0x16a)?'':_0x4f6559(0x14e)+_0x3e4191+'\x20config';return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x5d1b4a+_0x4f6559(0x157)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x239240=_0x5d8aa6[_0x4f6559(0x162)](_0xd29d6f=>_0xd29d6f[_0x4f6559(0x167)]===!![]),_0x36935a=_0x583cf7??_0x239240?.[_0x4f6559(0x164)]??null,_0x365a64=_0x3e4191===_0x4f6559(0x16a)?{'globalPath':_0x587ca8[_0x4f6559(0x169)]??null,'projectPath':_0x587ca8[_0x4f6559(0x159)]??null,'defaultApp':_0x36935a,'defaultAppSource':_0x583cf7!=null?_0x4f9bde:null}:{'scope':_0x3e4191,'configPath':_0x7825b8??null};return{'ok':!![],'data':{'items':_0x5d8aa6,'meta':_0x365a64}};}export const appListDefinition={'service':'app','command':'list','description':a102_0x1707aa(0x161),'risk':a102_0x1707aa(0x153),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a102_0x1707aa(0x15b),'type':'boolean','description':a102_0x1707aa(0x15d),'default':![]},{'name':'project','type':a102_0x1707aa(0x16b),'description':a102_0x1707aa(0x150),'default':![]}],'execute':execute};
1
+ const a21_0x29576a=a21_0x38d6;(function(_0xd1d2fb,_0x4d166c){const _0x4a9bdf=a21_0x38d6,_0x3f6e52=_0xd1d2fb();while(!![]){try{const _0x3a7cc2=parseInt(_0x4a9bdf(0x176))/0x1+-parseInt(_0x4a9bdf(0x175))/0x2*(parseInt(_0x4a9bdf(0x159))/0x3)+-parseInt(_0x4a9bdf(0x177))/0x4*(parseInt(_0x4a9bdf(0x16c))/0x5)+parseInt(_0x4a9bdf(0x16b))/0x6*(-parseInt(_0x4a9bdf(0x162))/0x7)+parseInt(_0x4a9bdf(0x161))/0x8*(-parseInt(_0x4a9bdf(0x15f))/0x9)+-parseInt(_0x4a9bdf(0x174))/0xa*(-parseInt(_0x4a9bdf(0x17c))/0xb)+parseInt(_0x4a9bdf(0x156))/0xc*(parseInt(_0x4a9bdf(0x163))/0xd);if(_0x3a7cc2===_0x4d166c)break;else _0x3f6e52['push'](_0x3f6e52['shift']());}catch(_0x29a324){_0x3f6e52['push'](_0x3f6e52['shift']());}}}(a21_0x2273,0x6177e));function a21_0x38d6(_0x49958e,_0x531905){_0x49958e=_0x49958e-0x154;const _0x22738c=a21_0x2273();let _0x38d665=_0x22738c[_0x49958e];return _0x38d665;}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_0x2273(){const _0x5754e2=['projectPath','8zTmPQg','852439exggFn','334893eOiQug','.\x20Use\x20`','merged','inherit','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','length','apps','map','30gXNWbl','15660FtspFC','\x20config','globalPath','No\x20apps\x20configured','\x20in\x20','projectConfig','defaultApp','mergedCli','1230sneKsf','6ySTNSe','685353ksUnHl','268iXkKVW','global','bool','entries','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','31460PcIaxg','globalConfig','object','636ZHHwuJ','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','boolean','456813HmzFxp','push','isCurrent','list','appcode','project','6549246mawefo'];a21_0x2273=function(){return _0x5754e2;};return a21_0x2273();}function buildItemsFromLayer(_0x3e2eed,_0x3debfb){const _0x222b6e=a21_0x38d6,_0x3a4ba3=[],_0x22ffdb=_0x3e2eed[_0x222b6e(0x169)]&&typeof _0x3e2eed['apps']===_0x222b6e(0x155)?_0x3e2eed[_0x222b6e(0x169)]:{},_0x46e2d9=_0x3e2eed[_0x222b6e(0x172)]||undefined;for(const [_0x4aacb0,_0x5de40c]of Object[_0x222b6e(0x17a)](_0x22ffdb)){if(!_0x5de40c||typeof _0x5de40c!==_0x222b6e(0x155)||!_0x5de40c[_0x222b6e(0x15d)])continue;_0x3a4ba3[_0x222b6e(0x15a)]({'name':_0x4aacb0,'appcode':_0x5de40c[_0x222b6e(0x15d)],'named':!![],'definedIn':_0x3debfb,'isDefault':_0x4aacb0===_0x46e2d9,...buildAppProfileListFields(_0x5de40c)});}return _0x3a4ba3;}function buildMergedItems(_0x31601b,_0x54ead4){const _0x2a59dd=a21_0x38d6,{apps:apps={},defaultApp:_0x361f87}=_0x31601b,_0x5e30b8=_0x54ead4[_0x2a59dd(0x154)]['apps']&&typeof _0x54ead4[_0x2a59dd(0x154)][_0x2a59dd(0x169)]===_0x2a59dd(0x155)?_0x54ead4['globalConfig'][_0x2a59dd(0x169)]:{},_0x5b296a=_0x54ead4[_0x2a59dd(0x171)]['apps']&&typeof _0x54ead4[_0x2a59dd(0x171)][_0x2a59dd(0x169)]===_0x2a59dd(0x155)?_0x54ead4['projectConfig'][_0x2a59dd(0x169)]:{},_0x4f2777=_0x54ead4[_0x2a59dd(0x171)][_0x2a59dd(0x166)]===![],_0x596d17=Object[_0x2a59dd(0x17a)](apps),_0x397576=_0x596d17[_0x2a59dd(0x16a)](([_0x4b1e6c,_0x2be6e0])=>({'name':_0x4b1e6c,'appcode':_0x2be6e0[_0x2a59dd(0x15d)],'named':!![],'definedIn':appDefinedIn(_0x4b1e6c,_0x5e30b8,_0x5b296a,_0x4f2777),'isDefault':_0x4b1e6c===_0x361f87,...buildAppProfileListFields(_0x2be6e0)}));return _0x397576;}async function execute(_0x43b376){const _0x5c91d9=a21_0x38d6,_0x2c6cbf=_0x43b376[_0x5c91d9(0x179)](_0x5c91d9(0x178)),_0x865b6a=_0x43b376[_0x5c91d9(0x179)]('project'),_0xc608f3=_0x2c6cbf?'global':_0x865b6a?_0x5c91d9(0x15e):_0x5c91d9(0x165),{config:_0x76b3ed,layers:_0x26ec11}=readRawConfigWithLayers(),_0x4ff0f3=resolveDefaultAppSource(_0x26ec11),{defaultApp:_0x31bd25}=_0x76b3ed;let _0x588498,_0x4a2538;switch(_0xc608f3){case _0x5c91d9(0x178):_0x588498=buildItemsFromLayer(_0x26ec11[_0x5c91d9(0x154)],'global'),_0x4a2538=_0x26ec11[_0x5c91d9(0x16e)];break;case _0x5c91d9(0x15e):_0x588498=buildItemsFromLayer(_0x26ec11[_0x5c91d9(0x171)],_0x5c91d9(0x15e)),_0x4a2538=_0x26ec11['projectPath'];break;default:_0x588498=buildMergedItems(_0x76b3ed,_0x26ec11);break;}enrichAppListItemsWithMergedSelection(_0x588498,_0x43b376[_0x5c91d9(0x173)]);if(_0x588498[_0x5c91d9(0x168)]===0x0){const _0x5062e5=_0xc608f3==='merged'?'':_0x5c91d9(0x170)+_0xc608f3+_0x5c91d9(0x16d);return{'ok':!![],'data':[],'message':_0x5c91d9(0x16f)+_0x5062e5+_0x5c91d9(0x164)+CLI_BIN_NAME+_0x5c91d9(0x157)};}const _0x5bfbdd=_0x588498['find'](_0x2abadd=>_0x2abadd[_0x5c91d9(0x15b)]===!![]),_0x3c888c=_0x31bd25??_0x5bfbdd?.[_0x5c91d9(0x15d)]??null,_0x464228=_0xc608f3===_0x5c91d9(0x165)?{'globalPath':_0x26ec11[_0x5c91d9(0x16e)]??null,'projectPath':_0x26ec11[_0x5c91d9(0x160)]??null,'defaultApp':_0x3c888c,'defaultAppSource':_0x31bd25!=null?_0x4ff0f3:null}:{'scope':_0xc608f3,'configPath':_0x4a2538??null};return{'ok':!![],'data':{'items':_0x588498,'meta':_0x464228}};}export const appListDefinition={'service':'app','command':a21_0x29576a(0x15c),'description':'List\x20all\x20configured\x20apps','risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x29576a(0x178),'type':a21_0x29576a(0x158),'description':a21_0x29576a(0x167),'default':![]},{'name':'project','type':a21_0x29576a(0x158),'description':a21_0x29576a(0x17b),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- function a101_0x5f25(){const _0x5de506=['globalConfig','1395npWoJB','\x20app\x20remove\x20<name>\x20[--global]','Missing\x20app\x20name.','App\x20profile\x20name\x20to\x20remove','inherit','4326795IuCJWi','\x20Note:\x20app\x20\x22','1610616MjYclT','boolean','both','global','3434188gPcyDY','length','object','598giuHKm','2642553mxEWVz','defaultApp','validation','Remove\x20an\x20app\x20from\x20config','trim','app','keys','args','5aXjrqE','675872ilLPaj','Use\x20global\x20config\x20scope','projectConfig','Removed\x20app\x20\x22','\x22\x20not\x20found.','2600754BjooAs','high-risk-write','Usage:\x20','project','App\x20\x22','bool','name','apps'];a101_0x5f25=function(){return _0x5de506;};return a101_0x5f25();}const a101_0x343c68=a101_0x2aa7;function a101_0x2aa7(_0xcf85d2,_0x26dcf7){_0xcf85d2=_0xcf85d2-0xa0;const _0x5f258a=a101_0x5f25();let _0x2aa77b=_0x5f258a[_0xcf85d2];return _0x2aa77b;}(function(_0x3a1889,_0x53b945){const _0x515266=a101_0x2aa7,_0x4aedc3=_0x3a1889();while(!![]){try{const _0x38e654=parseInt(_0x515266(0xb7))/0x1*(parseInt(_0x515266(0xc5))/0x2)+-parseInt(_0x515266(0xa0))/0x3+parseInt(_0x515266(0xc2))/0x4*(parseInt(_0x515266(0xa8))/0x5)+parseInt(_0x515266(0xae))/0x6+parseInt(_0x515266(0xbe))/0x7+parseInt(_0x515266(0xa9))/0x8+-parseInt(_0x515266(0xbc))/0x9;if(_0x38e654===_0x53b945)break;else _0x4aedc3['push'](_0x4aedc3['shift']());}catch(_0x1527c5){_0x4aedc3['push'](_0x4aedc3['shift']());}}}(a101_0x5f25,0xa1a3d));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x427a81){const _0x3dda21=a101_0x2aa7,_0x4fd48f=_0x427a81[_0x3dda21(0xa7)][0x0]?.['trim']();if(!_0x4fd48f)throw CliErrors[_0x3dda21(0xa2)](_0x3dda21(0xb9),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}async function execute(_0x3665b1){const _0x25bbc7=a101_0x2aa7,_0x2e0e9d=_0x3665b1[_0x25bbc7(0xa7)][0x0]?.[_0x25bbc7(0xa4)]();if(!_0x2e0e9d)throw CliErrors[_0x25bbc7(0xa2)](_0x25bbc7(0xb9),_0x25bbc7(0xb0)+CLI_BIN_NAME+_0x25bbc7(0xb8));const _0x5ee22e=_0x3665b1[_0x25bbc7(0xb3)](_0x25bbc7(0xc1)),{config:_0x1c7571,layers:_0x436a28}=readRawConfigWithLayers(),_0x4520e7=_0x1c7571[_0x25bbc7(0xb5)]??{};if(!_0x4520e7[_0x2e0e9d])throw CliErrors['validation'](_0x25bbc7(0xb2)+_0x2e0e9d+_0x25bbc7(0xad));const _0x1b3aef=_0x436a28[_0x25bbc7(0xb6)]['apps']&&typeof _0x436a28[_0x25bbc7(0xb6)][_0x25bbc7(0xb5)]===_0x25bbc7(0xc4)?_0x436a28[_0x25bbc7(0xb6)][_0x25bbc7(0xb5)]:{},_0x1d2e26=_0x436a28['projectConfig'][_0x25bbc7(0xb5)]&&typeof _0x436a28[_0x25bbc7(0xab)][_0x25bbc7(0xb5)]===_0x25bbc7(0xc4)?_0x436a28['projectConfig'][_0x25bbc7(0xb5)]:{},_0x52dd67=appDefinedIn(_0x2e0e9d,_0x1b3aef,_0x1d2e26,_0x436a28[_0x25bbc7(0xab)][_0x25bbc7(0xbb)]===![]),_0x3989bf=resolveAppScopeForWrite(_0x2e0e9d,_0x5ee22e,_0x436a28),_0x3c3200={'global':_0x3989bf==='global'},_0x25e12e=readConfig(_0x3c3200),_0x58746d=_0x25e12e['apps'];if(!_0x58746d||!_0x58746d[_0x2e0e9d])throw CliErrors[_0x25bbc7(0xa2)](_0x25bbc7(0xb2)+_0x2e0e9d+_0x25bbc7(0xad));delete _0x58746d[_0x2e0e9d];let _0x34919b='';if(_0x25e12e[_0x25bbc7(0xa1)]===_0x2e0e9d){const _0x27ed02=Object['keys'](_0x58746d);_0x25e12e[_0x25bbc7(0xa1)]=_0x27ed02[_0x25bbc7(0xc3)]>0x0?_0x27ed02[0x0]:undefined,_0x25e12e[_0x25bbc7(0xa1)]?_0x34919b='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x25e12e[_0x25bbc7(0xa1)]+'\x22.':delete _0x25e12e['defaultApp'];}Object[_0x25bbc7(0xa6)](_0x58746d)[_0x25bbc7(0xc3)]===0x0&&(delete _0x25e12e[_0x25bbc7(0xb5)],delete _0x25e12e[_0x25bbc7(0xa1)]);writeConfig(_0x25e12e,_0x3c3200);const _0x230b3c=_0x52dd67===_0x25bbc7(0xc0)?_0x25bbc7(0xbd)+_0x2e0e9d+'\x22\x20still\x20defined\x20in\x20'+(_0x3989bf===_0x25bbc7(0xb1)?_0x25bbc7(0xc1):'project')+'\x20config.':'';return{'ok':!![],'message':_0x25bbc7(0xac)+_0x2e0e9d+'\x22'+scopeLabel(_0x3c3200)+'.'+_0x34919b+_0x230b3c};}export const appRemoveDefinition={'service':a101_0x343c68(0xa5),'command':'remove','description':a101_0x343c68(0xa3),'risk':a101_0x343c68(0xaf),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a101_0x343c68(0xb4),'description':a101_0x343c68(0xba),'required':!![]}],'flags':[{'name':'global','type':a101_0x343c68(0xbf),'description':a101_0x343c68(0xaa),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x85a928=a22_0x2c41;(function(_0x19b16f,_0x5cb977){const _0x1a9941=a22_0x2c41,_0x583b30=_0x19b16f();while(!![]){try{const _0x25d3fc=parseInt(_0x1a9941(0x91))/0x1*(parseInt(_0x1a9941(0x8d))/0x2)+-parseInt(_0x1a9941(0xab))/0x3*(parseInt(_0x1a9941(0xb0))/0x4)+parseInt(_0x1a9941(0xae))/0x5*(parseInt(_0x1a9941(0xa4))/0x6)+parseInt(_0x1a9941(0x9f))/0x7*(-parseInt(_0x1a9941(0x98))/0x8)+parseInt(_0x1a9941(0x8a))/0x9*(parseInt(_0x1a9941(0xaf))/0xa)+parseInt(_0x1a9941(0x93))/0xb+-parseInt(_0x1a9941(0x9e))/0xc;if(_0x25d3fc===_0x5cb977)break;else _0x583b30['push'](_0x583b30['shift']());}catch(_0x18820a){_0x583b30['push'](_0x583b30['shift']());}}}(a22_0x2e90,0x40a8f));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a22_0x2e90(){const _0x2df8fe=['args','trim','2841798sBXFHA','Remove\x20an\x20app\x20from\x20config','\x20config.','defaultApp','both','\x20Default\x20app\x20changed\x20to\x20\x22','globalConfig','5376KnFbCz','\x22\x20still\x20defined\x20in\x20','length','5zzasaH','1719700ANNudN','1012yWFkkz','object','\x22\x20not\x20found.','27pSqwTz','App\x20profile\x20name\x20to\x20remove','projectConfig','2856sKchdY','\x20Note:\x20app\x20\x22','project','\x20app\x20remove\x20<name>\x20[--global]','53NBfAqU','keys','2163964BCNmgk','apps','inherit','high-risk-write','Usage:\x20','626064QjxDrM','global','validation','Missing\x20app\x20name.','remove','app','3707448ftNkaB','21Ogngbj','Removed\x20app\x20\x22','App\x20\x22'];a22_0x2e90=function(){return _0x2df8fe;};return a22_0x2e90();}import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x5a313b){const _0x3ad093=a22_0x2c41,_0x154503=_0x5a313b[_0x3ad093(0xa2)][0x0]?.['trim']();if(!_0x154503)throw CliErrors[_0x3ad093(0x9a)](_0x3ad093(0x9b),_0x3ad093(0x97)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}function a22_0x2c41(_0x5623ed,_0x824920){_0x5623ed=_0x5623ed-0x88;const _0x2e9022=a22_0x2e90();let _0x2c41db=_0x2e9022[_0x5623ed];return _0x2c41db;}async function execute(_0x5b2e1d){const _0x241508=a22_0x2c41,_0x1bfcb7=_0x5b2e1d[_0x241508(0xa2)][0x0]?.[_0x241508(0xa3)]();if(!_0x1bfcb7)throw CliErrors[_0x241508(0x9a)]('Missing\x20app\x20name.',_0x241508(0x97)+CLI_BIN_NAME+_0x241508(0x90));const _0x4e8ccb=_0x5b2e1d['bool'](_0x241508(0x99)),{config:_0x328589,layers:_0x5c57b7}=readRawConfigWithLayers(),_0x3f0d28=_0x328589[_0x241508(0x94)]??{};if(!_0x3f0d28[_0x1bfcb7])throw CliErrors['validation'](_0x241508(0xa1)+_0x1bfcb7+_0x241508(0x89));const _0x53f2c9=_0x5c57b7[_0x241508(0xaa)][_0x241508(0x94)]&&typeof _0x5c57b7[_0x241508(0xaa)][_0x241508(0x94)]===_0x241508(0x88)?_0x5c57b7[_0x241508(0xaa)][_0x241508(0x94)]:{},_0x1d7144=_0x5c57b7[_0x241508(0x8c)][_0x241508(0x94)]&&typeof _0x5c57b7['projectConfig'][_0x241508(0x94)]==='object'?_0x5c57b7['projectConfig']['apps']:{},_0x23a932=appDefinedIn(_0x1bfcb7,_0x53f2c9,_0x1d7144,_0x5c57b7[_0x241508(0x8c)][_0x241508(0x95)]===![]),_0x368307=resolveAppScopeForWrite(_0x1bfcb7,_0x4e8ccb,_0x5c57b7),_0x34332a={'global':_0x368307==='global'},_0x356201=readConfig(_0x34332a),_0x218210=_0x356201['apps'];if(!_0x218210||!_0x218210[_0x1bfcb7])throw CliErrors[_0x241508(0x9a)](_0x241508(0xa1)+_0x1bfcb7+_0x241508(0x89));delete _0x218210[_0x1bfcb7];let _0x3972a7='';if(_0x356201[_0x241508(0xa7)]===_0x1bfcb7){const _0x53cf03=Object[_0x241508(0x92)](_0x218210);_0x356201[_0x241508(0xa7)]=_0x53cf03[_0x241508(0xad)]>0x0?_0x53cf03[0x0]:undefined,_0x356201[_0x241508(0xa7)]?_0x3972a7=_0x241508(0xa9)+_0x356201[_0x241508(0xa7)]+'\x22.':delete _0x356201[_0x241508(0xa7)];}Object[_0x241508(0x92)](_0x218210)[_0x241508(0xad)]===0x0&&(delete _0x356201[_0x241508(0x94)],delete _0x356201[_0x241508(0xa7)]);writeConfig(_0x356201,_0x34332a);const _0x58f6e5=_0x23a932===_0x241508(0xa8)?_0x241508(0x8e)+_0x1bfcb7+_0x241508(0xac)+(_0x368307===_0x241508(0x8f)?_0x241508(0x99):_0x241508(0x8f))+_0x241508(0xa6):'';return{'ok':!![],'message':_0x241508(0xa0)+_0x1bfcb7+'\x22'+scopeLabel(_0x34332a)+'.'+_0x3972a7+_0x58f6e5};}export const appRemoveDefinition={'service':a22_0x85a928(0x9d),'command':a22_0x85a928(0x9c),'description':a22_0x85a928(0xa5),'risk':a22_0x85a928(0x96),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a22_0x85a928(0x8b),'required':!![]}],'flags':[{'name':'global','type':'boolean','description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x4e0f9e,_0x3eafed){const _0x47af24=a105_0x45e9,_0x4629e2=_0x4e0f9e();while(!![]){try{const _0x45c91d=parseInt(_0x47af24(0x149))/0x1+-parseInt(_0x47af24(0x158))/0x2+-parseInt(_0x47af24(0x148))/0x3*(parseInt(_0x47af24(0x14f))/0x4)+parseInt(_0x47af24(0x144))/0x5+-parseInt(_0x47af24(0x157))/0x6*(-parseInt(_0x47af24(0x14d))/0x7)+parseInt(_0x47af24(0x15d))/0x8+-parseInt(_0x47af24(0x155))/0x9;if(_0x45c91d===_0x3eafed)break;else _0x4629e2['push'](_0x4629e2['shift']());}catch(_0x5d9fa4){_0x4629e2['push'](_0x4629e2['shift']());}}}(a105_0x43de,0x3554e));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x5374e6,_0x2a18cf){const _0x21721e=a105_0x45e9;if(!_0x2a18cf)return;const _0x5d16ea=_0x2a18cf[_0x21721e(0x156)]&&typeof _0x2a18cf[_0x21721e(0x156)]==='object'?_0x2a18cf[_0x21721e(0x156)]:{},_0xa94280=Object[_0x21721e(0x154)](_0x5d16ea)[_0x21721e(0x147)]>0x0;for(const _0x5137d9 of _0x5374e6){_0x5137d9[_0x21721e(0x146)]=![];}const _0x4db17c=_0x2a18cf[_0x21721e(0x153)]!=null?String(_0x2a18cf['appCode'])[_0x21721e(0x14e)]():'';if(_0xa94280){const _0xe7f767=_0x2a18cf[_0x21721e(0x145)]??_0x2a18cf[_0x21721e(0x159)];if(_0xe7f767)for(const _0x441202 of _0x5374e6){_0x441202[_0x21721e(0x15c)]===!![]&&_0x441202[_0x21721e(0x143)]===_0xe7f767&&(_0x441202[_0x21721e(0x146)]=!![]);}for(const _0x5200ea of _0x5374e6){if(_0x5200ea[_0x21721e(0x15c)]!==![])continue;if(_0x2a18cf[_0x21721e(0x159)])continue;_0x4db17c&&String(_0x5200ea[_0x21721e(0x151)]??'')[_0x21721e(0x14e)]()===_0x4db17c&&(_0x5200ea[_0x21721e(0x146)]=!![]);}return;}if(!_0x4db17c)return;for(const _0x44aaef of _0x5374e6){String(_0x44aaef[_0x21721e(0x151)]??'')[_0x21721e(0x14e)]()===_0x4db17c&&(_0x44aaef[_0x21721e(0x146)]=!![]);}}export function resolveAppScopeForWrite(_0x4919f0,_0x4f38bc,_0x3a4efe){const _0x438eef=a105_0x45e9;if(_0x4f38bc)return'global';const _0x3302e1=_0x3a4efe[_0x438eef(0x15b)][_0x438eef(0x156)]&&typeof _0x3a4efe['projectConfig'][_0x438eef(0x156)]===_0x438eef(0x14c)?_0x3a4efe[_0x438eef(0x15b)][_0x438eef(0x156)]:{},_0x1039b2=_0x3a4efe[_0x438eef(0x14b)]['apps']&&typeof _0x3a4efe[_0x438eef(0x14b)][_0x438eef(0x156)]===_0x438eef(0x14c)?_0x3a4efe['globalConfig'][_0x438eef(0x156)]:{};if(Object[_0x438eef(0x152)][_0x438eef(0x15a)][_0x438eef(0x150)](_0x3302e1,_0x4919f0))return'project';if(Object['prototype'][_0x438eef(0x15a)][_0x438eef(0x150)](_0x1039b2,_0x4919f0))return _0x438eef(0x14a);return _0x438eef(0x15e);}export function appDefinedIn(_0x3901c0,_0x33bb5c,_0x9a95ea,_0x3da849){const _0x20174b=a105_0x45e9;if(_0x3da849)return Object[_0x20174b(0x152)]['hasOwnProperty'][_0x20174b(0x150)](_0x9a95ea,_0x3901c0)?_0x20174b(0x15e):_0x20174b(0x14a);const _0x1dffac=Object[_0x20174b(0x152)][_0x20174b(0x15a)][_0x20174b(0x150)](_0x33bb5c,_0x3901c0),_0x3d61ec=Object[_0x20174b(0x152)][_0x20174b(0x15a)]['call'](_0x9a95ea,_0x3901c0);if(_0x1dffac&&_0x3d61ec)return'both';if(_0x3d61ec)return'project';return'global';}export function resolveDefaultAppSource(_0x52cd5d){const _0x2fa0e0=a105_0x45e9,_0xb35049=_0x52cd5d[_0x2fa0e0(0x15b)][_0x2fa0e0(0x156)]&&typeof _0x52cd5d[_0x2fa0e0(0x15b)][_0x2fa0e0(0x156)]===_0x2fa0e0(0x14c)?_0x52cd5d[_0x2fa0e0(0x15b)]['apps']:{};if(_0x2fa0e0(0x159)in _0x52cd5d['projectConfig'])return _0x2fa0e0(0x15e);if(Object[_0x2fa0e0(0x154)](_0xb35049)[_0x2fa0e0(0x147)]>0x0)return'project';if(_0x52cd5d[_0x2fa0e0(0x15b)]['inherit']===![])return null;if(_0x52cd5d[_0x2fa0e0(0x14b)][_0x2fa0e0(0x159)])return _0x2fa0e0(0x14a);return null;}export function getConfigPath(_0x36cba0={}){const _0x169602=a105_0x45e9,_0x3c8641=_0x36cba0[_0x169602(0x14a)]?_0x169602(0x14a):_0x169602(0x15e);return resolveWriteConfigPath(_0x3c8641);}function a105_0x45e9(_0x5cbe07,_0x5cfcca){_0x5cbe07=_0x5cbe07-0x143;const _0x43de96=a105_0x43de();let _0x45e91b=_0x43de96[_0x5cbe07];return _0x45e91b;}function a105_0x43de(){const _0x3592f0=['appcode','prototype','appCode','keys','6213654pwrelN','apps','337218yjtEPh','53486smCoKj','defaultApp','hasOwnProperty','projectConfig','named','819680kDlyWv','project','name','663280GZmnEh','currentApp','isCurrent','length','3lVWcsG','346351WKtBwg','global','globalConfig','object','49NehZRi','trim','157172tJkUma','call'];a105_0x43de=function(){return _0x3592f0;};return a105_0x43de();}export function readConfig(_0x4035a0={}){return readConfigFile(getConfigPath(_0x4035a0));}export function writeConfig(_0x5b2a54,_0x5ded45={}){writeConfigFile(getConfigPath(_0x5ded45),_0x5b2a54);}export function scopeLabel(_0x33f5c3){const _0x4215ac=a105_0x45e9;return _0x33f5c3[_0x4215ac(0x14a)]?'\x20(global)':'';}
1
+ (function(_0x161b90,_0xbd0192){const _0x750a84=a23_0x1779,_0x26e64b=_0x161b90();while(!![]){try{const _0x30dd97=parseInt(_0x750a84(0x73))/0x1+parseInt(_0x750a84(0x7e))/0x2+-parseInt(_0x750a84(0x85))/0x3+-parseInt(_0x750a84(0x80))/0x4+parseInt(_0x750a84(0x81))/0x5*(-parseInt(_0x750a84(0x71))/0x6)+parseInt(_0x750a84(0x7d))/0x7+parseInt(_0x750a84(0x7c))/0x8;if(_0x30dd97===_0xbd0192)break;else _0x26e64b['push'](_0x26e64b['shift']());}catch(_0x3704e1){_0x26e64b['push'](_0x26e64b['shift']());}}}(a23_0x4080,0x1925c));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x264f61,_0x31ba9f){const _0x1012ff=a23_0x1779;if(!_0x31ba9f)return;const _0x4a1873=_0x31ba9f[_0x1012ff(0x6c)]&&typeof _0x31ba9f[_0x1012ff(0x6c)]===_0x1012ff(0x79)?_0x31ba9f[_0x1012ff(0x6c)]:{},_0x4a129d=Object[_0x1012ff(0x82)](_0x4a1873)[_0x1012ff(0x89)]>0x0;for(const _0x7a511d of _0x264f61){_0x7a511d[_0x1012ff(0x7f)]=![];}const _0x233d7c=_0x31ba9f[_0x1012ff(0x72)]!=null?String(_0x31ba9f['appCode'])[_0x1012ff(0x84)]():'';if(_0x4a129d){const _0x1b0ac1=_0x31ba9f[_0x1012ff(0x87)]??_0x31ba9f[_0x1012ff(0x6f)];if(_0x1b0ac1)for(const _0x2165ab of _0x264f61){_0x2165ab[_0x1012ff(0x6d)]===!![]&&_0x2165ab[_0x1012ff(0x7a)]===_0x1b0ac1&&(_0x2165ab[_0x1012ff(0x7f)]=!![]);}for(const _0x3ea4fb of _0x264f61){if(_0x3ea4fb[_0x1012ff(0x6d)]!==![])continue;if(_0x31ba9f[_0x1012ff(0x6f)])continue;_0x233d7c&&String(_0x3ea4fb['appcode']??'')['trim']()===_0x233d7c&&(_0x3ea4fb['isCurrent']=!![]);}return;}if(!_0x233d7c)return;for(const _0xe3d116 of _0x264f61){String(_0xe3d116[_0x1012ff(0x88)]??'')[_0x1012ff(0x84)]()===_0x233d7c&&(_0xe3d116[_0x1012ff(0x7f)]=!![]);}}function a23_0x1779(_0xd5b138,_0x34dabd){_0xd5b138=_0xd5b138-0x6c;const _0x4080d9=a23_0x4080();let _0x1779ec=_0x4080d9[_0xd5b138];return _0x1779ec;}export function resolveAppScopeForWrite(_0x565ff3,_0x2e0d3b,_0x353c18){const _0x2759e8=a23_0x1779;if(_0x2e0d3b)return _0x2759e8(0x6e);const _0x340c1c=_0x353c18[_0x2759e8(0x70)][_0x2759e8(0x6c)]&&typeof _0x353c18[_0x2759e8(0x70)]['apps']===_0x2759e8(0x79)?_0x353c18[_0x2759e8(0x70)]['apps']:{},_0x2d0aa6=_0x353c18['globalConfig'][_0x2759e8(0x6c)]&&typeof _0x353c18[_0x2759e8(0x75)][_0x2759e8(0x6c)]===_0x2759e8(0x79)?_0x353c18[_0x2759e8(0x75)][_0x2759e8(0x6c)]:{};if(Object[_0x2759e8(0x78)][_0x2759e8(0x74)][_0x2759e8(0x7b)](_0x340c1c,_0x565ff3))return'project';if(Object['prototype'][_0x2759e8(0x74)][_0x2759e8(0x7b)](_0x2d0aa6,_0x565ff3))return _0x2759e8(0x6e);return _0x2759e8(0x86);}export function appDefinedIn(_0x3f7295,_0x543f4a,_0x301a7e,_0x45bef9){const _0x2a25b3=a23_0x1779;if(_0x45bef9)return Object[_0x2a25b3(0x78)][_0x2a25b3(0x74)]['call'](_0x301a7e,_0x3f7295)?'project':_0x2a25b3(0x6e);const _0x586304=Object['prototype'][_0x2a25b3(0x74)]['call'](_0x543f4a,_0x3f7295),_0x17810=Object[_0x2a25b3(0x78)][_0x2a25b3(0x74)][_0x2a25b3(0x7b)](_0x301a7e,_0x3f7295);if(_0x586304&&_0x17810)return _0x2a25b3(0x83);if(_0x17810)return _0x2a25b3(0x86);return _0x2a25b3(0x6e);}function a23_0x4080(){const _0x4aab10=['globalConfig','\x20(global)','inherit','prototype','object','name','call','613616iviUhB','47005itNWOZ','199318AyQOpv','isCurrent','154832UJZtgM','865oGmkPo','keys','both','trim','76527OIwUgB','project','currentApp','appcode','length','apps','named','global','defaultApp','projectConfig','3198XkfHeS','appCode','76354BvdtHu','hasOwnProperty'];a23_0x4080=function(){return _0x4aab10;};return a23_0x4080();}export function resolveDefaultAppSource(_0x35e5bf){const _0x537c80=a23_0x1779,_0x4edf16=_0x35e5bf[_0x537c80(0x70)][_0x537c80(0x6c)]&&typeof _0x35e5bf[_0x537c80(0x70)][_0x537c80(0x6c)]==='object'?_0x35e5bf[_0x537c80(0x70)]['apps']:{};if(_0x537c80(0x6f)in _0x35e5bf[_0x537c80(0x70)])return _0x537c80(0x86);if(Object['keys'](_0x4edf16)[_0x537c80(0x89)]>0x0)return _0x537c80(0x86);if(_0x35e5bf[_0x537c80(0x70)][_0x537c80(0x77)]===![])return null;if(_0x35e5bf[_0x537c80(0x75)][_0x537c80(0x6f)])return'global';return null;}export function getConfigPath(_0x4d83f8={}){const _0x6f3f4c=a23_0x1779,_0x5cceff=_0x4d83f8[_0x6f3f4c(0x6e)]?'global':_0x6f3f4c(0x86);return resolveWriteConfigPath(_0x5cceff);}export function readConfig(_0x59fa38={}){return readConfigFile(getConfigPath(_0x59fa38));}export function writeConfig(_0xcadc96,_0x5acd18={}){writeConfigFile(getConfigPath(_0x5acd18),_0xcadc96);}export function scopeLabel(_0x47a6f1){const _0x3bdc63=a23_0x1779;return _0x47a6f1[_0x3bdc63(0x6e)]?_0x3bdc63(0x76):'';}
@@ -1 +1 @@
1
- const a104_0xd01a35=a104_0x171b;(function(_0x24b272,_0x3517b7){const _0x4d6d80=a104_0x171b,_0x5c86e8=_0x24b272();while(!![]){try{const _0x41a846=-parseInt(_0x4d6d80(0x1a5))/0x1*(-parseInt(_0x4d6d80(0x1b2))/0x2)+-parseInt(_0x4d6d80(0x1a3))/0x3*(parseInt(_0x4d6d80(0x19d))/0x4)+parseInt(_0x4d6d80(0x1ab))/0x5+parseInt(_0x4d6d80(0x1a6))/0x6+parseInt(_0x4d6d80(0x194))/0x7+-parseInt(_0x4d6d80(0x1a1))/0x8*(parseInt(_0x4d6d80(0x1b7))/0x9)+-parseInt(_0x4d6d80(0x19a))/0xa;if(_0x41a846===_0x3517b7)break;else _0x5c86e8['push'](_0x5c86e8['shift']());}catch(_0x5a9add){_0x5c86e8['push'](_0x5c86e8['shift']());}}}(a104_0x3aca,0x62d71));import{CliErrors}from'../../errors.js';function a104_0x171b(_0xd40c5f,_0x2d9160){_0xd40c5f=_0xd40c5f-0x193;const _0x3acadb=a104_0x3aca();let _0x171b56=_0x3acadb[_0xd40c5f];return _0x171b56;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';function a104_0x3aca(){const _0xd6a742=['Missing\x20app\x20name.','hasOwnProperty','65138SxtwSY','Use\x20`','App\x20profile\x20name\x20to\x20activate','\x22\x20(appcode:\x20','defaultApp','6089247VAsXzR','call','App\x20\x22','args','3857266yyeejm','prototype','length','keys','Usage:\x20','boolean','2017080JKcgEi','\x20app\x20add\x20','app','18380Dymtdm','validation','projectPath','global','8JAvTUQ','name','51kxVhzw','\x20app\x20use\x20<name>\x20[--global]','3kTBHdT','3008610QtnBbo','Use\x20global\x20config\x20scope','\x0aNote:\x20\x22','bool','projectConfig','1055375bMVWoL','\x20--appcode\x20<code>`\x20first.','apps','appcode','Default\x20app\x20set\x20to\x20\x22'];a104_0x3aca=function(){return _0xd6a742;};return a104_0x3aca();}import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x47de45){const _0x43e164=a104_0x171b,_0x1dc0c3=_0x47de45[_0x43e164(0x193)][0x0]?.['trim']();if(!_0x1dc0c3)throw CliErrors['validation'](_0x43e164(0x1b0),'Usage:\x20'+CLI_BIN_NAME+_0x43e164(0x1a4));}async function execute(_0x1e2ff1){const _0x3ec3c2=a104_0x171b,_0x50b62e=_0x1e2ff1['args'][0x0]?.['trim']();if(!_0x50b62e)throw CliErrors['validation'](_0x3ec3c2(0x1b0),_0x3ec3c2(0x198)+CLI_BIN_NAME+_0x3ec3c2(0x1a4));const _0x45b6a0=_0x1e2ff1[_0x3ec3c2(0x1a9)](_0x3ec3c2(0x1a0)),{config:_0x3a7ee8,layers:_0x5a022}=readRawConfigWithLayers(),_0x4076d7=_0x3a7ee8[_0x3ec3c2(0x1ad)]??{};if(!_0x4076d7[_0x50b62e]){const _0x479c24=Object[_0x3ec3c2(0x197)](_0x4076d7),_0x225ede=_0x479c24[_0x3ec3c2(0x196)]===0x0?_0x3ec3c2(0x1b3)+CLI_BIN_NAME+_0x3ec3c2(0x19b)+_0x50b62e+_0x3ec3c2(0x1ac):'Available:\x20'+_0x479c24['join'](',\x20');throw CliErrors[_0x3ec3c2(0x19e)](_0x3ec3c2(0x1b9)+_0x50b62e+'\x22\x20not\x20found.',_0x225ede);}let _0x1899f1,_0x25b290='';if(_0x45b6a0)_0x1899f1={'global':!![]};else{const _0x57a61d=isInProject()&&!!_0x5a022[_0x3ec3c2(0x19f)];_0x1899f1={'global':!_0x57a61d};if(_0x57a61d){const _0x4a3746=_0x5a022[_0x3ec3c2(0x1aa)][_0x3ec3c2(0x1ad)]&&typeof _0x5a022[_0x3ec3c2(0x1aa)]['apps']==='object'?_0x5a022['projectConfig'][_0x3ec3c2(0x1ad)]:{};!Object[_0x3ec3c2(0x195)][_0x3ec3c2(0x1b1)][_0x3ec3c2(0x1b8)](_0x4a3746,_0x50b62e)&&(_0x25b290=_0x3ec3c2(0x1a8)+_0x50b62e+'\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.');}}const _0x34d301=readConfig(_0x1899f1);return _0x34d301[_0x3ec3c2(0x1b6)]=_0x50b62e,writeConfig(_0x34d301,_0x1899f1),{'ok':!![],'message':_0x3ec3c2(0x1af)+_0x50b62e+_0x3ec3c2(0x1b5)+_0x4076d7[_0x50b62e][_0x3ec3c2(0x1ae)]+')'+scopeLabel(_0x1899f1)+_0x25b290};}export const appUseDefinition={'service':a104_0xd01a35(0x19c),'command':'use','description':'Switch\x20the\x20default\x20app','risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a104_0xd01a35(0x1a2),'description':a104_0xd01a35(0x1b4),'required':!![]}],'flags':[{'name':a104_0xd01a35(0x1a0),'type':a104_0xd01a35(0x199),'description':a104_0xd01a35(0x1a7),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ function a24_0x3ea3(){const _0x4a0c8f=['args','204088WUtyyC','Available:\x20','9ETxfMX','use','128496NZVuDM','679AjmvTT','keys','trim','prototype','Switch\x20the\x20default\x20app','hasOwnProperty','12WRRYrb','Missing\x20app\x20name.','2564738LljFuS','join','apps','app','App\x20\x22','\x20app\x20add\x20','projectConfig','length','defaultApp','call','write','name','boolean','2305960JjokRg','\x0aNote:\x20\x22','bool','12trtFbt','App\x20profile\x20name\x20to\x20activate','\x22\x20not\x20found.','validation','Default\x20app\x20set\x20to\x20\x22','Usage:\x20','406292ZHDabo','global','\x20app\x20use\x20<name>\x20[--global]','\x20--appcode\x20<code>`\x20first.','302665pYeCGA','appcode','3936ncXoSx','Use\x20`','3infjqs'];a24_0x3ea3=function(){return _0x4a0c8f;};return a24_0x3ea3();}const a24_0x49d44d=a24_0x236c;function a24_0x236c(_0x43774a,_0x2fe1fc){_0x43774a=_0x43774a-0x171;const _0x3ea332=a24_0x3ea3();let _0x236c8f=_0x3ea332[_0x43774a];return _0x236c8f;}(function(_0x267671,_0x294067){const _0x8c5170=a24_0x236c,_0x531738=_0x267671();while(!![]){try{const _0x37e820=parseInt(_0x8c5170(0x196))/0x1*(parseInt(_0x8c5170(0x198))/0x2)+parseInt(_0x8c5170(0x19c))/0x3+parseInt(_0x8c5170(0x18e))/0x4+-parseInt(_0x8c5170(0x192))/0x5*(-parseInt(_0x8c5170(0x188))/0x6)+-parseInt(_0x8c5170(0x19d))/0x7*(-parseInt(_0x8c5170(0x194))/0x8)+-parseInt(_0x8c5170(0x19a))/0x9*(parseInt(_0x8c5170(0x185))/0xa)+-parseInt(_0x8c5170(0x178))/0xb*(parseInt(_0x8c5170(0x176))/0xc);if(_0x37e820===_0x294067)break;else _0x531738['push'](_0x531738['shift']());}catch(_0x3889c0){_0x531738['push'](_0x531738['shift']());}}}(a24_0x3ea3,0x25fb5));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(_0x2ea9e5){const _0x238022=a24_0x236c,_0x3ade77=_0x2ea9e5[_0x238022(0x197)][0x0]?.[_0x238022(0x172)]();if(!_0x3ade77)throw CliErrors[_0x238022(0x18b)](_0x238022(0x177),_0x238022(0x18d)+CLI_BIN_NAME+_0x238022(0x190));}async function execute(_0x40af52){const _0x2cb267=a24_0x236c,_0x3e75e0=_0x40af52[_0x2cb267(0x197)][0x0]?.[_0x2cb267(0x172)]();if(!_0x3e75e0)throw CliErrors[_0x2cb267(0x18b)](_0x2cb267(0x177),_0x2cb267(0x18d)+CLI_BIN_NAME+_0x2cb267(0x190));const _0x308dbb=_0x40af52[_0x2cb267(0x187)](_0x2cb267(0x18f)),{config:_0xa26a7b,layers:_0x4611f2}=readRawConfigWithLayers(),_0x1d5462=_0xa26a7b[_0x2cb267(0x17a)]??{};if(!_0x1d5462[_0x3e75e0]){const _0x43bebb=Object[_0x2cb267(0x171)](_0x1d5462),_0xeb1cea=_0x43bebb[_0x2cb267(0x17f)]===0x0?_0x2cb267(0x195)+CLI_BIN_NAME+_0x2cb267(0x17d)+_0x3e75e0+_0x2cb267(0x191):_0x2cb267(0x199)+_0x43bebb[_0x2cb267(0x179)](',\x20');throw CliErrors[_0x2cb267(0x18b)](_0x2cb267(0x17c)+_0x3e75e0+_0x2cb267(0x18a),_0xeb1cea);}let _0x4c1470,_0x226dac='';if(_0x308dbb)_0x4c1470={'global':!![]};else{const _0x2d6769=isInProject()&&!!_0x4611f2['projectPath'];_0x4c1470={'global':!_0x2d6769};if(_0x2d6769){const _0xdedcc9=_0x4611f2[_0x2cb267(0x17e)][_0x2cb267(0x17a)]&&typeof _0x4611f2[_0x2cb267(0x17e)][_0x2cb267(0x17a)]==='object'?_0x4611f2[_0x2cb267(0x17e)][_0x2cb267(0x17a)]:{};!Object[_0x2cb267(0x173)][_0x2cb267(0x175)][_0x2cb267(0x181)](_0xdedcc9,_0x3e75e0)&&(_0x226dac=_0x2cb267(0x186)+_0x3e75e0+'\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.');}}const _0xbfa3ca=readConfig(_0x4c1470);return _0xbfa3ca[_0x2cb267(0x180)]=_0x3e75e0,writeConfig(_0xbfa3ca,_0x4c1470),{'ok':!![],'message':_0x2cb267(0x18c)+_0x3e75e0+'\x22\x20(appcode:\x20'+_0x1d5462[_0x3e75e0][_0x2cb267(0x193)]+')'+scopeLabel(_0x4c1470)+_0x226dac};}export const appUseDefinition={'service':a24_0x49d44d(0x17b),'command':a24_0x49d44d(0x19b),'description':a24_0x49d44d(0x174),'risk':a24_0x49d44d(0x182),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x49d44d(0x183),'description':a24_0x49d44d(0x189),'required':!![]}],'flags':[{'name':a24_0x49d44d(0x18f),'type':a24_0x49d44d(0x184),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- const a91_0x2eb9f2=a91_0x5f33;function a91_0x57a5(){const _0x3ae179=['Login\x20via\x20browser','auth','17wAMWRT','read','Clear\x20login\x20session','2396115uWSYVj','1296856luwPYu','121uzgHuK','log','✓\x20Logged\x20out','33914OOYxUj','../../auth/auth-server-ui.js','309648aiUSqV','write','6SjRtaS','1155470TuiqBZ','691016NpGWIl','587925xSQaqw','56fGAmTx'];a91_0x57a5=function(){return _0x3ae179;};return a91_0x57a5();}(function(_0x33dbb4,_0x632d3a){const _0x10c4e5=a91_0x5f33,_0x32248d=_0x33dbb4();while(!![]){try{const _0x28720c=-parseInt(_0x10c4e5(0xa0))/0x1*(parseInt(_0x10c4e5(0x95))/0x2)+parseInt(_0x10c4e5(0x99))/0x3*(-parseInt(_0x10c4e5(0x9b))/0x4)+parseInt(_0x10c4e5(0x9c))/0x5+-parseInt(_0x10c4e5(0x97))/0x6*(parseInt(_0x10c4e5(0x9d))/0x7)+parseInt(_0x10c4e5(0x91))/0x8+-parseInt(_0x10c4e5(0x90))/0x9+-parseInt(_0x10c4e5(0x9a))/0xa*(-parseInt(_0x10c4e5(0x92))/0xb);if(_0x28720c===_0x632d3a)break;else _0x32248d['push'](_0x32248d['shift']());}catch(_0x25f7ad){_0x32248d['push'](_0x32248d['shift']());}}}(a91_0x57a5,0x3a109));import{unlinkSync,existsSync}from'node:fs';function a91_0x5f33(_0x1ec9df,_0x23f385){_0x1ec9df=_0x1ec9df-0x8e;const _0x57a578=a91_0x57a5();let _0x5f33e9=_0x57a578[_0x1ec9df];return _0x5f33e9;}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a91_0x2eb9f2(0x9f),'command':'login','description':a91_0x2eb9f2(0x9e),'risk':a91_0x2eb9f2(0x8e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0xd563e5){const _0x1b5f85=a91_0x2eb9f2,{runAuthServer:_0x4e95c7}=await import(_0x1b5f85(0x96));return await _0x4e95c7(),{'ok':!![]};}},{'service':a91_0x2eb9f2(0x9f),'command':'logout','description':a91_0x2eb9f2(0x8f),'risk':a91_0x2eb9f2(0x98),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x225c8d){const _0xea000b=a91_0x2eb9f2;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0xea000b(0x93)](_0xea000b(0x94))):console[_0xea000b(0x93)]('!\x20Not\x20logged\x20in'),{'ok':!![]};}}];
1
+ const a25_0x549139=a25_0x6733;function a25_0x6733(_0x3d5912,_0x39b11d){_0x3d5912=_0x3d5912-0x1d4;const _0x1cfb65=a25_0x1cfb();let _0x673397=_0x1cfb65[_0x3d5912];return _0x673397;}(function(_0x59df65,_0x494a0c){const _0x647a7d=a25_0x6733,_0x528260=_0x59df65();while(!![]){try{const _0x3559e9=-parseInt(_0x647a7d(0x1d8))/0x1+parseInt(_0x647a7d(0x1df))/0x2+parseInt(_0x647a7d(0x1e5))/0x3+parseInt(_0x647a7d(0x1d9))/0x4*(-parseInt(_0x647a7d(0x1e1))/0x5)+-parseInt(_0x647a7d(0x1e3))/0x6*(-parseInt(_0x647a7d(0x1db))/0x7)+-parseInt(_0x647a7d(0x1e2))/0x8*(parseInt(_0x647a7d(0x1dc))/0x9)+parseInt(_0x647a7d(0x1da))/0xa*(parseInt(_0x647a7d(0x1e0))/0xb);if(_0x3559e9===_0x494a0c)break;else _0x528260['push'](_0x528260['shift']());}catch(_0x4a614f){_0x528260['push'](_0x528260['shift']());}}}(a25_0x1cfb,0x19930));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';function a25_0x1cfb(){const _0x109c01=['114954xRQRBY','read','258435qbDAiw','write','login','Login\x20via\x20browser','✓\x20Logged\x20out','!\x20Not\x20logged\x20in','logout','../../auth/auth-server-ui.js','154259KZUZbj','455272diRNAz','910JCzfKy','70RIlMUY','5013NrYsBl','log','auth','95568hMRWNG','8008oGoCOZ','5OQoyYs','272Qbtita'];a25_0x1cfb=function(){return _0x109c01;};return a25_0x1cfb();}export const authDefinitions=[{'service':'auth','command':a25_0x549139(0x1e7),'description':a25_0x549139(0x1e8),'risk':a25_0x549139(0x1e4),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x3608fd){const _0x198780=a25_0x549139,{runAuthServer:_0x2753f3}=await import(_0x198780(0x1d7));return await _0x2753f3(),{'ok':!![]};}},{'service':a25_0x549139(0x1de),'command':a25_0x549139(0x1d6),'description':'Clear\x20login\x20session','risk':a25_0x549139(0x1e6),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x14eb4b){const _0x1d63ac=a25_0x549139;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x1d63ac(0x1dd)](_0x1d63ac(0x1d4))):console[_0x1d63ac(0x1dd)](_0x1d63ac(0x1d5)),{'ok':!![]};}}];
@@ -0,0 +1 @@
1
+ const a26_0x3be201=a26_0x10b1;(function(_0x83c061,_0x1e3d1c){const _0x2e25c3=a26_0x10b1,_0x173c70=_0x83c061();while(!![]){try{const _0x14bc2a=-parseInt(_0x2e25c3(0x18a))/0x1*(parseInt(_0x2e25c3(0x143))/0x2)+parseInt(_0x2e25c3(0x16a))/0x3+-parseInt(_0x2e25c3(0x18e))/0x4*(parseInt(_0x2e25c3(0x184))/0x5)+parseInt(_0x2e25c3(0x18b))/0x6+parseInt(_0x2e25c3(0x16f))/0x7*(-parseInt(_0x2e25c3(0x183))/0x8)+-parseInt(_0x2e25c3(0x14d))/0x9+parseInt(_0x2e25c3(0x190))/0xa;if(_0x14bc2a===_0x1e3d1c)break;else _0x173c70['push'](_0x173c70['shift']());}catch(_0xdbebb8){_0x173c70['push'](_0x173c70['shift']());}}}(a26_0xf334,0x6ebf4));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';function a26_0xf334(){const _0x3a21bd=['--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','write','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','length','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Script\x20description','parseInt','stdin','alias','.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*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','utf8','COMMON','stderr','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','function-node','\x22\x20not\x20found.\x20','Function\x20name\x20(valid\x20JS\x20identifier)','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','5106296VbXGHY','136870HTWiqe','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','close','create','tableName','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','155VKYYCQ','955908CNCBAA','datasetcode','operationType','52NsTspF','\x22.\x20','16438990qCzbFX','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','bff','\x20api\x20pull`\x20to\x20refresh.','\x0a\x20*\x20[触发节点]\x20','appCode','HOOK','Select\x20dataset:','description','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','functionNode','includes','Select\x20operation\x20type:','.js','string','3462hGNUbw','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','nonInteractive','Available\x20aliases:\x20','entries','before','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','Invalid\x20function\x20name\x20\x22','Trigger\x20node\x20(HOOK\x20only)','join','6518250aKtDzV','\x20function:\x20','Created\x20','scriptsRootDir','Operation\x20type\x20\x22','find','No\x20operation\x20types\x20found\x20for\x20dataset\x20','keys','name','Dataset\x20not\x20found\x20for\x20code\x20\x22','File\x20already\x20exists:\x20','Script\x20type','datasetCode','\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','validation','after','apiDir','No\x20api.ts\x20found.\x20Run\x20`','question','Available:\x20','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','ENDPOINT','Invalid\x20dataset\x20selection.','map','trim','code','Operation\x20type\x20(HOOK\x20only)','Select\x20trigger\x20node:','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','1911321glBzzS','str','Alias\x20\x22','\x22\x20not\x20found\x20for\x20dataset\x20','TODO:\x20add\x20script\x20description','7XGMxgX'];a26_0xf334=function(){return _0x3a21bd;};return a26_0xf334();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0x3be201(0x192),'command':a26_0x3be201(0x187),'description':a26_0x3be201(0x199),'risk':a26_0x3be201(0x171),'flags':[{'name':'type','type':a26_0x3be201(0x142),'required':!![],'enum':[a26_0x3be201(0x17c),a26_0x3be201(0x162),a26_0x3be201(0x196)],'description':a26_0x3be201(0x158)},{'name':a26_0x3be201(0x155),'type':a26_0x3be201(0x142),'required':!![],'description':a26_0x3be201(0x181)},{'name':a26_0x3be201(0x198),'type':'string','description':a26_0x3be201(0x175)},{'name':a26_0x3be201(0x178),'type':a26_0x3be201(0x142),'description':'Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)'},{'name':a26_0x3be201(0x18c),'type':a26_0x3be201(0x142),'description':a26_0x3be201(0x149)},{'name':'operation-type','type':a26_0x3be201(0x142),'description':a26_0x3be201(0x167)},{'name':'function-node','type':a26_0x3be201(0x142),'description':a26_0x3be201(0x14b),'enum':[a26_0x3be201(0x148),'after']}],async 'validate'(_0x40fd15){const _0xa515c5=a26_0x3be201,_0x5ed8c8=_0x40fd15['str']('name');if(!isValidBffFunctionName(_0x5ed8c8))throw CliErrors[_0xa515c5(0x15b)](_0xa515c5(0x14a)+_0x5ed8c8+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0x1efb88){const _0x27adec=a26_0x3be201,_0x316302=loadBffProjectConfig(_0x1efb88['appCode']),_0x3edfd7=_0x1efb88[_0x27adec(0x16b)]('type'),_0x28abbc=_0x1efb88['str'](_0x27adec(0x155)),_0x5cf320=_0x1efb88['str'](_0x27adec(0x198))||undefined,_0x35f56d=_0x3edfd7==='HOOK'?await resolveHookOptions(_0x316302,_0x1efb88):undefined,_0x275416=buildFilePath(_0x316302,_0x3edfd7,_0x28abbc,_0x35f56d);if(await fileExists(_0x275416))throw CliErrors['validation'](_0x27adec(0x157)+_0x275416);await mkdir(dirname(_0x275416),{'recursive':!![]});const _0x4b5394=generateTemplate(_0x3edfd7,_0x28abbc,_0x1efb88[_0x27adec(0x195)],_0x5cf320,_0x35f56d);await writeFile(_0x275416,_0x4b5394,_0x27adec(0x17b));const _0x15de42={'type':_0x3edfd7,'name':_0x28abbc,'path':_0x275416};if(_0x5cf320)_0x15de42[_0x27adec(0x198)]=_0x5cf320;if(_0x35f56d){if(_0x35f56d[_0x27adec(0x178)])_0x15de42[_0x27adec(0x178)]=_0x35f56d[_0x27adec(0x178)];_0x15de42[_0x27adec(0x159)]=_0x35f56d[_0x27adec(0x159)],_0x15de42[_0x27adec(0x18d)]=_0x35f56d[_0x27adec(0x18d)],_0x15de42['functionNode']=_0x35f56d[_0x27adec(0x19a)];}return{'ok':!![],'data':_0x15de42,'message':_0x27adec(0x14f)+_0x3edfd7+_0x27adec(0x14e)+_0x28abbc};}};async function resolveHookOptions(_0x3e1ded,_0xbc3cce){const _0x13a070=a26_0x3be201,_0x4367e5=loadAliasMap(_0xbc3cce['apiDir'],undefined,resolveApiFilePath(_0xbc3cce[_0x13a070(0x15d)],_0xbc3cce['appCode'])),_0x9108c=_0x4367e5[_0x13a070(0x173)]>0x0;let _0x2582c2,_0x1a2632,_0x3a9ac5;const _0x11d001=_0xbc3cce['str']('alias'),_0xa24bf4=_0xbc3cce[_0x13a070(0x16b)](_0x13a070(0x18c));if(_0x11d001){const _0x2826e9=resolveAlias(_0xbc3cce[_0x13a070(0x15d)],_0x11d001,undefined,resolveApiFilePath(_0xbc3cce[_0x13a070(0x15d)],_0xbc3cce['appCode']));if(!_0x2826e9){const _0x494771=_0x9108c?_0x13a070(0x146)+_0x4367e5[_0x13a070(0x164)](_0x2723da=>_0x2723da['alias'])[_0x13a070(0x14c)](',\x20'):_0x13a070(0x15e)+CLI_BIN_NAME+_0x13a070(0x169);throw CliErrors['validation'](_0x13a070(0x16c)+_0x11d001+_0x13a070(0x180)+_0x494771);}_0x2582c2=_0x11d001,_0x1a2632=_0x2826e9;}else{if(_0xa24bf4){_0x1a2632=_0xa24bf4;const _0x5f4e5f=_0x4367e5[_0x13a070(0x152)](_0x5e024a=>_0x5e024a['datasetCode']===_0xa24bf4);_0x2582c2=_0x5f4e5f?.[_0x13a070(0x178)];}else{if(_0xbc3cce[_0x13a070(0x145)])throw CliErrors['validation'](_0x13a070(0x170));else{if(_0x9108c){const _0x140dd4=_0x4367e5['map'](_0x36bec6=>_0x36bec6[_0x13a070(0x178)]+'\x20('+_0x36bec6[_0x13a070(0x188)]+')'),_0x2c8ddb=await promptSelect(_0x13a070(0x197),_0x140dd4),_0x16fe36=_0x4367e5[_0x2c8ddb];if(!_0x16fe36)throw CliErrors[_0x13a070(0x15b)](_0x13a070(0x163));_0x2582c2=_0x16fe36[_0x13a070(0x178)],_0x1a2632=_0x16fe36[_0x13a070(0x159)];}else{const _0x1ef0f1=await listDatasets(_0xbc3cce[_0x13a070(0x195)]);if(_0x1ef0f1[_0x13a070(0x173)]===0x0)throw CliErrors['validation']('No\x20datasets\x20found\x20for\x20this\x20app.');const _0x2dfb5f=_0x1ef0f1[_0x13a070(0x164)](_0x8ae992=>_0x8ae992[_0x13a070(0x155)]+'\x20('+_0x8ae992[_0x13a070(0x166)]+')'),_0x41d013=await promptSelect(_0x13a070(0x197),_0x2dfb5f),_0x6cc9c5=_0x1ef0f1[_0x41d013];if(!_0x6cc9c5)throw CliErrors[_0x13a070(0x15b)](_0x13a070(0x163));_0x1a2632=_0x6cc9c5['code'],_0x2582c2=undefined;}}}}const _0xfa5eed=await listDatasets(_0xbc3cce[_0x13a070(0x195)]),_0x1ddaa0=_0xfa5eed[_0x13a070(0x152)](_0x51f677=>_0x51f677[_0x13a070(0x166)]===_0x1a2632);if(!_0x1ddaa0)throw CliErrors[_0x13a070(0x15b)](_0x13a070(0x156)+_0x1a2632+_0x13a070(0x18f)+(_0x2582c2?_0x13a070(0x17e)+CLI_BIN_NAME+_0x13a070(0x193):''));_0x3a9ac5=_0x1ddaa0['id'];const _0xfbbafa=_0x2582c2??_0x1a2632,_0x180e33=await listBffDatasetOperations(_0xbc3cce[_0x13a070(0x195)],_0x3a9ac5),_0x5c00ed=_0x180e33?Object[_0x13a070(0x154)](_0x180e33):[];if(_0x5c00ed[_0x13a070(0x173)]===0x0)throw CliErrors[_0x13a070(0x15b)](_0x13a070(0x153)+_0xfbbafa+'.');let _0x1fad6d;const _0x3ead22=_0xbc3cce[_0x13a070(0x16b)]('operation-type');if(_0x3ead22){if(!_0x5c00ed[_0x13a070(0x19b)](_0x3ead22))throw CliErrors['validation'](_0x13a070(0x151)+_0x3ead22+_0x13a070(0x16d)+_0xfbbafa+'.\x20'+(_0x13a070(0x160)+_0x5c00ed['join'](',\x20')));_0x1fad6d=_0x3ead22;}else{if(_0xbc3cce[_0x13a070(0x145)])throw CliErrors['validation'](_0x13a070(0x185));const _0x4afbf4=await promptSelect(_0x13a070(0x140),_0x5c00ed);_0x1fad6d=_0x5c00ed[_0x4afbf4]??_0x5c00ed[0x0];}let _0x21d487=normalizeHookFunctionNode(_0xbc3cce[_0x13a070(0x16b)](_0x13a070(0x17f)));if(!_0x21d487){if(_0xbc3cce[_0x13a070(0x16b)](_0x13a070(0x17f)))throw CliErrors['validation']('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0xbc3cce[_0x13a070(0x145)])throw CliErrors[_0x13a070(0x15b)](_0x13a070(0x161));const _0x530f7b=await promptSelect(_0x13a070(0x168),[_0x13a070(0x148),_0x13a070(0x15c)]);_0x21d487=[_0x13a070(0x148),'after'][_0x530f7b]??'before';}return{'alias':_0x2582c2,'datasetCode':_0x1a2632,'datasetId':_0x3a9ac5,'operationType':_0x1fad6d,'functionNode':_0x21d487};}async function promptSelect(_0x4395bb,_0x490ced){const _0x2f7e21=a26_0x3be201;if(_0x490ced[_0x2f7e21(0x173)]===0x1)return 0x0;for(const [_0x156d6b,_0x5eb319]of _0x490ced[_0x2f7e21(0x147)]()){process[_0x2f7e21(0x17d)][_0x2f7e21(0x171)]('\x20\x20'+(_0x156d6b+0x1)+'.\x20'+_0x5eb319+'\x0a');}const _0x219fbf=createInterface({'input':process[_0x2f7e21(0x177)],'output':process['stderr']});while(!![]){const _0x3bc3cf=await new Promise(_0x2853bb=>{const _0x2e4d11=_0x2f7e21;_0x219fbf[_0x2e4d11(0x15f)](_0x4395bb+'\x20',_0x2853bb);}),_0x53125a=Number[_0x2f7e21(0x176)](_0x3bc3cf[_0x2f7e21(0x165)](),0xa);if(Number['isInteger'](_0x53125a)&&_0x53125a>=0x1&&_0x53125a<=_0x490ced[_0x2f7e21(0x173)])return _0x219fbf[_0x2f7e21(0x186)](),_0x53125a-0x1;process[_0x2f7e21(0x17d)][_0x2f7e21(0x171)]('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x490ced[_0x2f7e21(0x173)]+'.\x0a');}}function a26_0x10b1(_0x5f2444,_0x2536de){_0x5f2444=_0x5f2444-0x140;const _0xf334e8=a26_0xf334();let _0x10b153=_0xf334e8[_0x5f2444];return _0x10b153;}function buildFilePath(_0x4d098b,_0x4e3613,_0x3e462b,_0x137884){const _0x293f77=a26_0x3be201;if(_0x4e3613===_0x293f77(0x196)){if(!_0x137884)throw CliErrors[_0x293f77(0x15b)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x189e8b=_0x137884[_0x293f77(0x178)]??_0x137884[_0x293f77(0x159)];return join(_0x4d098b[_0x293f77(0x150)],'HOOK',_0x189e8b,_0x137884[_0x293f77(0x18d)],_0x137884['functionNode'],_0x3e462b+_0x293f77(0x141));}return join(_0x4d098b[_0x293f77(0x150)],_0x4e3613,_0x3e462b+_0x293f77(0x141));}export function generateTemplate(_0x3c5a2e,_0x2db0b3,_0xc5550,_0x4c015c,_0x2ac850){const _0x2ca4c5=a26_0x3be201,_0x293aec=_0x4c015c?.[_0x2ca4c5(0x165)]()||_0x2ca4c5(0x16e);if(_0x3c5a2e===_0x2ca4c5(0x17c))return _0x2ca4c5(0x174)+_0x293aec+'\x0a\x20*\x20[脚本名称]\x20'+_0x2db0b3+_0x2ca4c5(0x189)+_0x2db0b3+_0x2ca4c5(0x179)+_0x2db0b3+_0x2ca4c5(0x182);if(_0x3c5a2e===_0x2ca4c5(0x162))return _0x2ca4c5(0x17a)+_0x293aec+_0x2ca4c5(0x172)+_0xc5550+'/'+_0x2db0b3+_0x2ca4c5(0x15a)+_0x2db0b3+_0x2ca4c5(0x182);if(!_0x2ac850)throw CliErrors['validation'](_0x2ca4c5(0x144));return _0x2ca4c5(0x191)+_0x293aec+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0xc5550+'/'+_0x2ac850[_0x2ca4c5(0x159)]+'/'+_0x2ac850[_0x2ca4c5(0x18d)]+_0x2ca4c5(0x194)+_0x2ac850[_0x2ca4c5(0x19a)]+'\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'+_0x2db0b3+_0x2ca4c5(0x182);}
@@ -1 +1 @@
1
- const a69_0x3ac8e3=a69_0x4727;(function(_0x309b62,_0x33672c){const _0x467d12=a69_0x4727,_0x122057=_0x309b62();while(!![]){try{const _0x2fa61b=-parseInt(_0x467d12(0x87))/0x1+parseInt(_0x467d12(0x77))/0x2+parseInt(_0x467d12(0x81))/0x3*(-parseInt(_0x467d12(0x70))/0x4)+-parseInt(_0x467d12(0x94))/0x5*(-parseInt(_0x467d12(0x6d))/0x6)+parseInt(_0x467d12(0x74))/0x7*(parseInt(_0x467d12(0x8a))/0x8)+parseInt(_0x467d12(0x6a))/0x9*(parseInt(_0x467d12(0x80))/0xa)+-parseInt(_0x467d12(0x71))/0xb;if(_0x2fa61b===_0x33672c)break;else _0x122057['push'](_0x122057['shift']());}catch(_0x2696de){_0x122057['push'](_0x122057['shift']());}}}(a69_0x50f9,0xccc23));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';function a69_0x4727(_0x23e7e4,_0x6f3720){_0x23e7e4=_0x23e7e4-0x6a;const _0x50f9b3=a69_0x50f9();let _0x4727a7=_0x50f9b3[_0x23e7e4];return _0x4727a7;}import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';function a69_0x50f9(){const _0x310ec1=['\x20\x20-\x20','Multiple\x20functions\x20match\x20\x22','9426263rVYyeY','delete','Deleted\x20','1688706ZNYdQE','high-risk-write','Would\x20delete\x20','keys','\x20(local\x20file\x20moved\x20to\x20trash)','Function\x20not\x20found:\x20','lockFilePath','toISOString','/api/management/library/scripts/delete','278230RZQbdW','1530954cwjUDq','replace','No\x20lock\x20entry\x20found\x20for\x20\x22','length','scriptsRoot','<timestamp>','1222094MtTDSB','functions','BFF\x20lock\x20file\x20not\x20found.','8WrvmWz','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','includes','split','appCode','scriptsRootDir','POST','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','startsWith','map','133645GNzkFz','filter','bff','str','trashedTo','join','remoteId','string','279nQYlny','trashDir','projectRoot','174FKyNTm','validation','target','4GhbweK','13832643dXmgHw'];a69_0x50f9=function(){return _0x310ec1;};return a69_0x50f9();}export const bffDelete={'service':a69_0x3ac8e3(0x96),'command':a69_0x3ac8e3(0x75),'description':'Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','risk':a69_0x3ac8e3(0x78),'flags':[{'name':'target','type':a69_0x3ac8e3(0x9b),'required':!![],'description':a69_0x3ac8e3(0x91)}],async 'validate'(_0x31b048){const _0x1a3d0c=a69_0x3ac8e3,_0x46024c=loadBffProjectConfig(_0x31b048[_0x1a3d0c(0x8e)]),_0x57c541=await readBffLockFile(_0x46024c[_0x1a3d0c(0x7d)]);if(!_0x57c541)throw CliErrors[_0x1a3d0c(0x6e)]('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x344dd5){const _0x461b92=a69_0x3ac8e3,_0x7bb39b=loadBffProjectConfig(_0x344dd5['appCode']),_0x116654=await readBffLockFile(_0x7bb39b[_0x461b92(0x7d)]);if(!_0x116654)throw CliErrors['validation'](_0x461b92(0x89));const {appLock:_0x170d56}=ensureLockScope(_0x116654,_0x344dd5['appCode'],_0x7bb39b[_0x461b92(0x85)],_0x461b92(0x75)),_0x333a3d=_0x344dd5[_0x461b92(0x97)](_0x461b92(0x6f)),_0x3b6310=Object['keys'](_0x170d56[_0x461b92(0x88)]),_0x219709=resolveDeleteTarget(_0x333a3d,_0x3b6310),_0x2fe080=_0x170d56[_0x461b92(0x88)][_0x219709];if(!_0x2fe080)throw CliErrors[_0x461b92(0x6e)](_0x461b92(0x83)+_0x219709+'\x22.');const _0x3141a4=resolveLocalFilePathFromLockKey(_0x7bb39b,_0x219709),_0x1ef658=relative(_0x7bb39b['projectRoot'],_0x3141a4),_0x1ea110=join(_0x7bb39b[_0x461b92(0x6b)],_0x461b92(0x86),_0x1ef658);return{'method':_0x461b92(0x90),'url':_0x461b92(0x7f),'body':{'appCode':_0x344dd5[_0x461b92(0x8e)],'target':_0x219709,'remoteId':_0x2fe080['remoteId'],'localFilePath':_0x3141a4,'trashedPath':_0x1ea110},'description':_0x461b92(0x79)+_0x219709+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'};},async 'execute'(_0x2d6e2d){const _0x3d5297=a69_0x3ac8e3,_0x7dde0=loadBffProjectConfig(_0x2d6e2d[_0x3d5297(0x8e)]),_0x332c64=await readBffLockFile(_0x7dde0[_0x3d5297(0x7d)]);if(!_0x332c64)throw CliErrors['validation'](_0x3d5297(0x89));const {lockData:_0x32b99f,appLock:_0x21754c}=ensureLockScope(_0x332c64,_0x2d6e2d[_0x3d5297(0x8e)],_0x7dde0[_0x3d5297(0x85)],_0x3d5297(0x75)),_0x547bb7=_0x2d6e2d[_0x3d5297(0x97)](_0x3d5297(0x6f)),_0x309f1c=Object[_0x3d5297(0x7a)](_0x21754c[_0x3d5297(0x88)]),_0x1159d3=resolveDeleteTarget(_0x547bb7,_0x309f1c),_0x189d21=_0x21754c[_0x3d5297(0x88)][_0x1159d3];if(!_0x189d21)throw CliErrors['validation'](_0x3d5297(0x83)+_0x1159d3+'\x22.');await deleteBffScript(_0x189d21[_0x3d5297(0x9a)]),delete _0x21754c['functions'][_0x1159d3],_0x21754c['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x7dde0[_0x3d5297(0x7d)],_0x32b99f);const _0x33429e=resolveLocalFilePathFromLockKey(_0x7dde0,_0x1159d3);let _0x1765ee;await fileExists(_0x33429e)&&(_0x1765ee=await moveToTrash(_0x7dde0[_0x3d5297(0x6c)],_0x7dde0['trashDir'],_0x33429e),await cleanupEmptyDirectories(dirname(_0x33429e),_0x7dde0[_0x3d5297(0x8f)]));const _0x3cb783={'deleted':_0x1159d3,'remoteId':_0x189d21[_0x3d5297(0x9a)]};if(_0x1765ee)_0x3cb783[_0x3d5297(0x98)]=_0x1765ee;return{'ok':!![],'data':_0x3cb783,'message':_0x3d5297(0x76)+_0x1159d3+(_0x1765ee?_0x3d5297(0x7b):'')};}};function resolveDeleteTarget(_0x46efc0,_0x277c0d){const _0x4a063b=a69_0x3ac8e3;if(_0x46efc0[_0x4a063b(0x8c)]('/')){const _0x13082e=_0x277c0d['find'](_0x4e94eb=>_0x4e94eb===_0x46efc0);if(!_0x13082e)throw CliErrors['validation'](_0x4a063b(0x7c)+_0x46efc0);return _0x13082e;}const _0x43e346=_0x277c0d[_0x4a063b(0x95)](_0x5efa5e=>_0x5efa5e[_0x4a063b(0x8d)]('/')['at'](-0x1)===_0x46efc0);if(_0x43e346['length']===0x0)throw CliErrors[_0x4a063b(0x6e)](_0x4a063b(0x7c)+_0x46efc0);if(_0x43e346['length']>0x1)throw CliErrors[_0x4a063b(0x6e)](_0x4a063b(0x73)+_0x46efc0+_0x4a063b(0x8b)+_0x43e346[_0x4a063b(0x93)](_0x1c1f68=>_0x4a063b(0x72)+_0x1c1f68)[_0x4a063b(0x99)]('\x0a'));return _0x43e346[0x0];}async function moveToTrash(_0x448e5a,_0x1d3e53,_0xf5779b){const _0x2c607f=a69_0x3ac8e3,_0x4684bf=new Date()[_0x2c607f(0x7e)]()[_0x2c607f(0x82)](/[:.]/g,'-'),_0x4a89b7=relative(_0x448e5a,_0xf5779b),_0x5a9be3=join(_0x1d3e53,_0x4684bf,_0x4a89b7);return await mkdir(dirname(_0x5a9be3),{'recursive':!![]}),await rename(_0xf5779b,_0x5a9be3),_0x5a9be3;}async function cleanupEmptyDirectories(_0xb800e9,_0x538cab){const _0x4bff85=a69_0x3ac8e3;let _0x3fa62a=resolve(_0xb800e9);const _0x1a66bd=resolve(_0x538cab);while(_0x3fa62a[_0x4bff85(0x92)](''+_0x1a66bd+sep)||_0x3fa62a===_0x1a66bd){if(_0x3fa62a===_0x1a66bd)return;try{const _0x5d77c0=await readdir(_0x3fa62a);if(_0x5d77c0[_0x4bff85(0x84)]>0x0)return;await rmdir(_0x3fa62a);}catch{return;}_0x3fa62a=dirname(_0x3fa62a);}}
1
+ const a27_0x2666f7=a27_0x426f;(function(_0xf6f7b6,_0x4fe904){const _0x3c7a23=a27_0x426f,_0x376b9e=_0xf6f7b6();while(!![]){try{const _0x2a4677=parseInt(_0x3c7a23(0xd0))/0x1*(parseInt(_0x3c7a23(0xba))/0x2)+-parseInt(_0x3c7a23(0xcb))/0x3+parseInt(_0x3c7a23(0xb5))/0x4*(parseInt(_0x3c7a23(0xb9))/0x5)+parseInt(_0x3c7a23(0xbc))/0x6+-parseInt(_0x3c7a23(0xbb))/0x7+-parseInt(_0x3c7a23(0xbf))/0x8+parseInt(_0x3c7a23(0xcd))/0x9*(parseInt(_0x3c7a23(0xb4))/0xa);if(_0x2a4677===_0x4fe904)break;else _0x376b9e['push'](_0x376b9e['shift']());}catch(_0x5585ed){_0x376b9e['push'](_0x376b9e['shift']());}}}(a27_0x211e,0x9a25f));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';function a27_0x211e(){const _0x41766a=['trashedTo','map','functions','830LteRif','1004YzNCMe','scriptsRoot','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','Multiple\x20functions\x20match\x20\x22','365vsMHcE','260mQcQTe','3244801lLmEGI','1155036kByEOJ','toISOString','split','1738112TtMPQx','Function\x20not\x20found:\x20','str','lockFilePath','Deleted\x20','keys','BFF\x20lock\x20file\x20not\x20found.','projectRoot','includes','delete','lastSync','remoteId','2790171OSkGqg','join','162198NvhZbr','target','appCode','4120cRLVEh','length','trashDir','\x20(local\x20file\x20moved\x20to\x20trash)','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','POST','string','replace','No\x20lock\x20entry\x20found\x20for\x20\x22','validation','Would\x20delete\x20','/api/management/library/scripts/delete','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','scriptsRootDir'];a27_0x211e=function(){return _0x41766a;};return a27_0x211e();}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':'bff','command':a27_0x2666f7(0xc8),'description':a27_0x2666f7(0xdc),'risk':'high-risk-write','flags':[{'name':a27_0x2666f7(0xce),'type':a27_0x2666f7(0xd6),'required':!![],'description':'Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name'}],async 'validate'(_0x5f2e86){const _0xbbce0e=a27_0x2666f7,_0x24cb78=loadBffProjectConfig(_0x5f2e86[_0xbbce0e(0xcf)]),_0x29ccd4=await readBffLockFile(_0x24cb78[_0xbbce0e(0xc2)]);if(!_0x29ccd4)throw CliErrors[_0xbbce0e(0xd9)](_0xbbce0e(0xb7));},async 'dryRun'(_0x27551e){const _0x54c4d0=a27_0x2666f7,_0x43413d=loadBffProjectConfig(_0x27551e[_0x54c4d0(0xcf)]),_0x37ee29=await readBffLockFile(_0x43413d[_0x54c4d0(0xc2)]);if(!_0x37ee29)throw CliErrors[_0x54c4d0(0xd9)](_0x54c4d0(0xc5));const {appLock:_0x2cb7d2}=ensureLockScope(_0x37ee29,_0x27551e['appCode'],_0x43413d[_0x54c4d0(0xb6)],_0x54c4d0(0xc8)),_0x67110=_0x27551e[_0x54c4d0(0xc1)](_0x54c4d0(0xce)),_0x43dd49=Object['keys'](_0x2cb7d2[_0x54c4d0(0xe0)]),_0x5df8d0=resolveDeleteTarget(_0x67110,_0x43dd49),_0x4682d0=_0x2cb7d2[_0x54c4d0(0xe0)][_0x5df8d0];if(!_0x4682d0)throw CliErrors[_0x54c4d0(0xd9)](_0x54c4d0(0xd8)+_0x5df8d0+'\x22.');const _0x404e39=resolveLocalFilePathFromLockKey(_0x43413d,_0x5df8d0),_0x5d7080=relative(_0x43413d[_0x54c4d0(0xc6)],_0x404e39),_0xb136e5=join(_0x43413d[_0x54c4d0(0xd2)],'<timestamp>',_0x5d7080);return{'method':_0x54c4d0(0xd5),'url':_0x54c4d0(0xdb),'body':{'appCode':_0x27551e[_0x54c4d0(0xcf)],'target':_0x5df8d0,'remoteId':_0x4682d0[_0x54c4d0(0xca)],'localFilePath':_0x404e39,'trashedPath':_0xb136e5},'description':_0x54c4d0(0xda)+_0x5df8d0+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'};},async 'execute'(_0x3a1fb2){const _0xac8e4=a27_0x2666f7,_0x4c2e44=loadBffProjectConfig(_0x3a1fb2[_0xac8e4(0xcf)]),_0x3730df=await readBffLockFile(_0x4c2e44[_0xac8e4(0xc2)]);if(!_0x3730df)throw CliErrors[_0xac8e4(0xd9)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x49e47a,appLock:_0x2c4a88}=ensureLockScope(_0x3730df,_0x3a1fb2[_0xac8e4(0xcf)],_0x4c2e44['scriptsRoot'],_0xac8e4(0xc8)),_0x39d532=_0x3a1fb2['str'](_0xac8e4(0xce)),_0x3beafc=Object[_0xac8e4(0xc4)](_0x2c4a88['functions']),_0x29cc96=resolveDeleteTarget(_0x39d532,_0x3beafc),_0x2ccfc5=_0x2c4a88[_0xac8e4(0xe0)][_0x29cc96];if(!_0x2ccfc5)throw CliErrors['validation'](_0xac8e4(0xd8)+_0x29cc96+'\x22.');await deleteBffScript(_0x2ccfc5[_0xac8e4(0xca)]),delete _0x2c4a88[_0xac8e4(0xe0)][_0x29cc96],_0x2c4a88[_0xac8e4(0xc9)]=new Date()[_0xac8e4(0xbd)](),await writeBffLockFile(_0x4c2e44[_0xac8e4(0xc2)],_0x49e47a);const _0x461161=resolveLocalFilePathFromLockKey(_0x4c2e44,_0x29cc96);let _0x22897a;await fileExists(_0x461161)&&(_0x22897a=await moveToTrash(_0x4c2e44[_0xac8e4(0xc6)],_0x4c2e44['trashDir'],_0x461161),await cleanupEmptyDirectories(dirname(_0x461161),_0x4c2e44[_0xac8e4(0xdd)]));const _0x13cc2e={'deleted':_0x29cc96,'remoteId':_0x2ccfc5[_0xac8e4(0xca)]};if(_0x22897a)_0x13cc2e[_0xac8e4(0xde)]=_0x22897a;return{'ok':!![],'data':_0x13cc2e,'message':_0xac8e4(0xc3)+_0x29cc96+(_0x22897a?_0xac8e4(0xd3):'')};}};function a27_0x426f(_0x3a63bb,_0x32261a){_0x3a63bb=_0x3a63bb-0xb4;const _0x211e79=a27_0x211e();let _0x426f68=_0x211e79[_0x3a63bb];return _0x426f68;}function resolveDeleteTarget(_0x222eef,_0x5d2090){const _0x99bd27=a27_0x2666f7;if(_0x222eef[_0x99bd27(0xc7)]('/')){const _0x1a5a95=_0x5d2090['find'](_0x19f141=>_0x19f141===_0x222eef);if(!_0x1a5a95)throw CliErrors[_0x99bd27(0xd9)](_0x99bd27(0xc0)+_0x222eef);return _0x1a5a95;}const _0x1997d1=_0x5d2090['filter'](_0x5c84aa=>_0x5c84aa[_0x99bd27(0xbe)]('/')['at'](-0x1)===_0x222eef);if(_0x1997d1[_0x99bd27(0xd1)]===0x0)throw CliErrors[_0x99bd27(0xd9)](_0x99bd27(0xc0)+_0x222eef);if(_0x1997d1[_0x99bd27(0xd1)]>0x1)throw CliErrors[_0x99bd27(0xd9)](_0x99bd27(0xb8)+_0x222eef+_0x99bd27(0xd4)+_0x1997d1[_0x99bd27(0xdf)](_0x1f7172=>'\x20\x20-\x20'+_0x1f7172)[_0x99bd27(0xcc)]('\x0a'));return _0x1997d1[0x0];}async function moveToTrash(_0x44bfb7,_0x368cbe,_0x725e3c){const _0x5d8bc3=a27_0x2666f7,_0x5730c8=new Date()[_0x5d8bc3(0xbd)]()[_0x5d8bc3(0xd7)](/[:.]/g,'-'),_0x1611e2=relative(_0x44bfb7,_0x725e3c),_0x407aaf=join(_0x368cbe,_0x5730c8,_0x1611e2);return await mkdir(dirname(_0x407aaf),{'recursive':!![]}),await rename(_0x725e3c,_0x407aaf),_0x407aaf;}async function cleanupEmptyDirectories(_0x23a16c,_0x34411c){const _0x125482=a27_0x2666f7;let _0x57886c=resolve(_0x23a16c);const _0x141c6b=resolve(_0x34411c);while(_0x57886c['startsWith'](''+_0x141c6b+sep)||_0x57886c===_0x141c6b){if(_0x57886c===_0x141c6b)return;try{const _0x591521=await readdir(_0x57886c);if(_0x591521[_0x125482(0xd1)]>0x0)return;await rmdir(_0x57886c);}catch{return;}_0x57886c=dirname(_0x57886c);}}
@@ -1 +1 @@
1
- const a74_0x4ae69c=a74_0x391e;function a74_0x391e(_0x2f2b0a,_0x34b8f9){_0x2f2b0a=_0x2f2b0a-0x15a;const _0x5f2fe7=a74_0x5f2f();let _0x391e9d=_0x5f2fe7[_0x2f2b0a];return _0x391e9d;}function a74_0x5f2f(){const _0x3506b2=['741208EQEIaC','number','detail','updatedTime','1461252DjtQyW','boolean','4939800LThYPs','2JrwPme','1407769YWxflg','bff','scriptType','1478166qSGvub','appCode','Script\x20ID','verbose','264136GBzGTM','Return\x20full\x20raw\x20script\x20object','Get\x20BFF\x20script\x20details\x20by\x20ID','description','2553210HKLHCU','(none)','scriptContent','133voGOfC','bool'];a74_0x5f2f=function(){return _0x3506b2;};return a74_0x5f2f();}(function(_0x228df6,_0xb5e548){const _0x6ba0f1=a74_0x391e,_0x451168=_0x228df6();while(!![]){try{const _0x1e4fc3=parseInt(_0x6ba0f1(0x15e))/0x1*(parseInt(_0x6ba0f1(0x15d))/0x2)+-parseInt(_0x6ba0f1(0x15a))/0x3+parseInt(_0x6ba0f1(0x16e))/0x4+-parseInt(_0x6ba0f1(0x15c))/0x5+parseInt(_0x6ba0f1(0x161))/0x6+parseInt(_0x6ba0f1(0x16c))/0x7*(parseInt(_0x6ba0f1(0x165))/0x8)+-parseInt(_0x6ba0f1(0x169))/0x9;if(_0x1e4fc3===_0xb5e548)break;else _0x451168['push'](_0x451168['shift']());}catch(_0x2c0662){_0x451168['push'](_0x451168['shift']());}}}(a74_0x5f2f,0xacdb5));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a74_0x4ae69c(0x15f),'command':a74_0x4ae69c(0x170),'description':a74_0x4ae69c(0x167),'risk':'read','flags':[{'name':'id','type':a74_0x4ae69c(0x16f),'required':!![],'description':a74_0x4ae69c(0x163)},{'name':a74_0x4ae69c(0x164),'type':a74_0x4ae69c(0x15b),'description':a74_0x4ae69c(0x166)}],async 'execute'(_0x12c30d){const _0x3da3d8=a74_0x4ae69c,_0x57e186=await getBffScriptInfo(_0x12c30d['num']('id')),_0x227ded=_0x12c30d[_0x3da3d8(0x16d)](_0x3da3d8(0x164));if(_0x227ded)return{'ok':!![],'data':_0x57e186};return{'ok':!![],'data':{'id':_0x57e186['id'],'appCode':_0x57e186[_0x3da3d8(0x162)],'scriptType':_0x57e186[_0x3da3d8(0x160)],'description':_0x57e186[_0x3da3d8(0x168)]||_0x3da3d8(0x16a),'createdTime':_0x57e186['createdTime']??'','updatedTime':_0x57e186[_0x3da3d8(0x171)]??'','scriptContent':_0x57e186[_0x3da3d8(0x16b)]??''}};}};
1
+ function a28_0x586e(_0x3dfb39,_0x4e8dfa){_0x3dfb39=_0x3dfb39-0xf6;const _0x3256a7=a28_0x3256();let _0x586e22=_0x3256a7[_0x3dfb39];return _0x586e22;}const a28_0x279e90=a28_0x586e;function a28_0x3256(){const _0x2fd251=['scriptType','Script\x20ID','description','570MGfqFE','appCode','159425zHNeFg','8BxZziF','scriptContent','read','12045XMDYPQ','287720wpxlyy','bff','verbose','3pfStEn','number','286752xXVvPR','653470kiadFB','4634LkSNNU','392328xnKWQp','num','createdTime','bool','(none)','detail','updatedTime'];a28_0x3256=function(){return _0x2fd251;};return a28_0x3256();}(function(_0x2df618,_0x5cb19d){const _0x1a58c4=a28_0x586e,_0x2fbaed=_0x2df618();while(!![]){try{const _0x8939c2=parseInt(_0x1a58c4(0x10e))/0x1*(-parseInt(_0x1a58c4(0x103))/0x2)+-parseInt(_0x1a58c4(0x10a))/0x3*(parseInt(_0x1a58c4(0x107))/0x4)+-parseInt(_0x1a58c4(0x106))/0x5*(-parseInt(_0x1a58c4(0x100))/0x6)+-parseInt(_0x1a58c4(0x102))/0x7+parseInt(_0x1a58c4(0x10c))/0x8+parseInt(_0x1a58c4(0xf6))/0x9+-parseInt(_0x1a58c4(0x10d))/0xa;if(_0x8939c2===_0x5cb19d)break;else _0x2fbaed['push'](_0x2fbaed['shift']());}catch(_0x39ad7e){_0x2fbaed['push'](_0x2fbaed['shift']());}}}(a28_0x3256,0x1faa7));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x279e90(0x108),'command':a28_0x279e90(0xfb),'description':'Get\x20BFF\x20script\x20details\x20by\x20ID','risk':a28_0x279e90(0x105),'flags':[{'name':'id','type':a28_0x279e90(0x10b),'required':!![],'description':a28_0x279e90(0xfe)},{'name':'verbose','type':'boolean','description':'Return\x20full\x20raw\x20script\x20object'}],async 'execute'(_0x1df99a){const _0x4702fd=a28_0x279e90,_0x2db63c=await getBffScriptInfo(_0x1df99a[_0x4702fd(0xf7)]('id')),_0xbd3a3=_0x1df99a[_0x4702fd(0xf9)](_0x4702fd(0x109));if(_0xbd3a3)return{'ok':!![],'data':_0x2db63c};return{'ok':!![],'data':{'id':_0x2db63c['id'],'appCode':_0x2db63c[_0x4702fd(0x101)],'scriptType':_0x2db63c[_0x4702fd(0xfd)],'description':_0x2db63c[_0x4702fd(0xff)]||_0x4702fd(0xfa),'createdTime':_0x2db63c[_0x4702fd(0xf8)]??'','updatedTime':_0x2db63c[_0x4702fd(0xfc)]??'','scriptContent':_0x2db63c[_0x4702fd(0x104)]??''}};}};
@@ -1 +1 @@
1
- function a73_0xf50c(_0x2b6174,_0xdc7d51){_0x2b6174=_0x2b6174-0x1de;const _0x431be0=a73_0x431b();let _0xf50cc9=_0x431be0[_0x2b6174];return _0xf50cc9;}function a73_0x431b(){const _0xd15ea=['2616273qevGue','482322TGmDyT','31764amcbPT','10ZaMpbM','272289HgewSS','7vLiUOL','112DYFJkH','512432GpqlhY','2290240gpYWxj','381925gElPYQ'];a73_0x431b=function(){return _0xd15ea;};return a73_0x431b();}(function(_0x43d653,_0x44cf5e){const _0x2eb077=a73_0xf50c,_0x40a2ca=_0x43d653();while(!![]){try{const _0x458d3c=parseInt(_0x2eb077(0x1e2))/0x1+-parseInt(_0x2eb077(0x1e5))/0x2+-parseInt(_0x2eb077(0x1e0))/0x3*(-parseInt(_0x2eb077(0x1e4))/0x4)+-parseInt(_0x2eb077(0x1e7))/0x5+parseInt(_0x2eb077(0x1df))/0x6*(-parseInt(_0x2eb077(0x1e3))/0x7)+-parseInt(_0x2eb077(0x1e6))/0x8+parseInt(_0x2eb077(0x1de))/0x9*(parseInt(_0x2eb077(0x1e1))/0xa);if(_0x458d3c===_0x44cf5e)break;else _0x40a2ca['push'](_0x40a2ca['shift']());}catch(_0x58d9b8){_0x40a2ca['push'](_0x40a2ca['shift']());}}}(a73_0x431b,0x271b6));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffNew}from'../../commands/bff/new.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,bffNew,bffPush,bffPull,bffDelete];
1
+ (function(_0x1483f0,_0x3fd3b7){const _0x1b68a3=a29_0x5a84,_0x188425=_0x1483f0();while(!![]){try{const _0x4f096f=parseInt(_0x1b68a3(0x7f))/0x1+-parseInt(_0x1b68a3(0x81))/0x2*(parseInt(_0x1b68a3(0x79))/0x3)+-parseInt(_0x1b68a3(0x7e))/0x4*(parseInt(_0x1b68a3(0x7a))/0x5)+-parseInt(_0x1b68a3(0x82))/0x6+parseInt(_0x1b68a3(0x78))/0x7*(parseInt(_0x1b68a3(0x7d))/0x8)+parseInt(_0x1b68a3(0x7c))/0x9+-parseInt(_0x1b68a3(0x7b))/0xa*(-parseInt(_0x1b68a3(0x80))/0xb);if(_0x4f096f===_0x3fd3b7)break;else _0x188425['push'](_0x188425['shift']());}catch(_0x51d4be){_0x188425['push'](_0x188425['shift']());}}}(a29_0x10aa,0xbee71));function a29_0x10aa(){const _0x4685aa=['65770xfkioh','10272321ulULme','174992QLCbIv','7984uRRLCL','1225941RDnWIT','1199xuxBpc','162BpDOwk','6741156DdMnKd','7nQGtbp','17706VSoxVJ','1810bBLsAB'];a29_0x10aa=function(){return _0x4685aa;};return a29_0x10aa();}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';function a29_0x5a84(_0x3272af,_0x5d8e7a){_0x3272af=_0x3272af-0x78;const _0x10aa84=a29_0x10aa();let _0x5a848e=_0x10aa84[_0x3272af];return _0x5a848e;}import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- const a72_0x35d8c1=a72_0x450a;function a72_0x2175(){const _0x5430d3=['2274205KChNhl','104AsxujS','4592844qoIEiG','length','1952832klqJEn','COMMON','670qQCPbU','592011VejrKu','174EedpWo','map','32068rXxZNP','No\x20BFF\x20scripts\x20found.','Return\x20full\x20script\x20objects','Filter\x20by\x20script\x20name','ENDPOINT','appCode','functionName','boolean','3944840ibDlMc','scriptType','description','string','138UchdeX','read','type','name','str'];a72_0x2175=function(){return _0x5430d3;};return a72_0x2175();}(function(_0x4d9d48,_0x4b4804){const _0xafa94b=a72_0x450a,_0x16033e=_0x4d9d48();while(!![]){try{const _0x14d932=parseInt(_0xafa94b(0xc1))/0x1*(-parseInt(_0xafa94b(0xd1))/0x2)+parseInt(_0xafa94b(0xc3))/0x3*(-parseInt(_0xafa94b(0xc5))/0x4)+-parseInt(_0xafa94b(0xd6))/0x5+parseInt(_0xafa94b(0xda))/0x6+-parseInt(_0xafa94b(0xc2))/0x7*(-parseInt(_0xafa94b(0xd7))/0x8)+parseInt(_0xafa94b(0xd8))/0x9+-parseInt(_0xafa94b(0xcd))/0xa;if(_0x14d932===_0x4b4804)break;else _0x16033e['push'](_0x16033e['shift']());}catch(_0x44d594){_0x16033e['push'](_0x16033e['shift']());}}}(a72_0x2175,0x8c4e8));import{listBffScripts}from'../../core/api-client.js';function a72_0x450a(_0x26786b,_0x11444a){_0x26786b=_0x26786b-0xc0;const _0x2175e9=a72_0x2175();let _0x450a78=_0x2175e9[_0x26786b];return _0x450a78;}export const bffList={'service':'bff','command':'list','description':'List\x20BFF\x20scripts','risk':a72_0x35d8c1(0xd2),'flags':[{'name':a72_0x35d8c1(0xd3),'type':a72_0x35d8c1(0xd0),'description':'Script\x20type\x20filter','default':a72_0x35d8c1(0xc9),'enum':[a72_0x35d8c1(0xc9),a72_0x35d8c1(0xc0)]},{'name':a72_0x35d8c1(0xd4),'type':a72_0x35d8c1(0xd0),'description':a72_0x35d8c1(0xc8)},{'name':'verbose','type':a72_0x35d8c1(0xcc),'description':a72_0x35d8c1(0xc7)}],async 'execute'(_0x292c22){const _0x2c358c=a72_0x35d8c1,_0x21563d=await listBffScripts(_0x292c22[_0x2c358c(0xca)],_0x292c22[_0x2c358c(0xd5)]('type'),{'scriptName':_0x292c22['str'](_0x2c358c(0xd4))||undefined}),_0x2d68c2=_0x292c22['bool']('verbose');return{'ok':!![],'data':_0x2d68c2?_0x21563d:_0x21563d[_0x2c358c(0xc4)](_0x464056=>({'id':_0x464056['id'],'functionName':_0x464056[_0x2c358c(0xcb)]??'','description':_0x464056[_0x2c358c(0xcf)]||'(unnamed)','scriptType':_0x464056[_0x2c358c(0xce)]})),'message':_0x21563d[_0x2c358c(0xd9)]===0x0?_0x2c358c(0xc6):undefined};}};
1
+ function a30_0x3a52(_0x1e0902,_0x58a73f){_0x1e0902=_0x1e0902-0x110;const _0x59ed35=a30_0x59ed();let _0x3a52fc=_0x59ed35[_0x1e0902];return _0x3a52fc;}const a30_0x408dc0=a30_0x3a52;(function(_0x272c77,_0x353371){const _0x5a2826=a30_0x3a52,_0x41288d=_0x272c77();while(!![]){try{const _0x30832c=parseInt(_0x5a2826(0x125))/0x1*(-parseInt(_0x5a2826(0x11d))/0x2)+-parseInt(_0x5a2826(0x119))/0x3+-parseInt(_0x5a2826(0x12c))/0x4*(-parseInt(_0x5a2826(0x113))/0x5)+parseInt(_0x5a2826(0x123))/0x6+parseInt(_0x5a2826(0x121))/0x7+parseInt(_0x5a2826(0x12a))/0x8+parseInt(_0x5a2826(0x128))/0x9*(-parseInt(_0x5a2826(0x124))/0xa);if(_0x30832c===_0x353371)break;else _0x41288d['push'](_0x41288d['shift']());}catch(_0x7a4e64){_0x41288d['push'](_0x41288d['shift']());}}}(a30_0x59ed,0x4e2bc));import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x408dc0(0x110),'command':a30_0x408dc0(0x118),'description':a30_0x408dc0(0x129),'risk':a30_0x408dc0(0x127),'flags':[{'name':a30_0x408dc0(0x111),'type':a30_0x408dc0(0x120),'description':a30_0x408dc0(0x112),'default':a30_0x408dc0(0x115),'enum':[a30_0x408dc0(0x115),a30_0x408dc0(0x116)]},{'name':'name','type':'string','description':a30_0x408dc0(0x11a)},{'name':'verbose','type':a30_0x408dc0(0x11e),'description':'Return\x20full\x20script\x20objects'}],async 'execute'(_0x4b9a7c){const _0x2ad499=a30_0x408dc0,_0x2282c7=await listBffScripts(_0x4b9a7c[_0x2ad499(0x11f)],_0x4b9a7c[_0x2ad499(0x12b)](_0x2ad499(0x111)),{'scriptName':_0x4b9a7c[_0x2ad499(0x12b)](_0x2ad499(0x11b))||undefined}),_0x4d30bc=_0x4b9a7c[_0x2ad499(0x11c)](_0x2ad499(0x114));return{'ok':!![],'data':_0x4d30bc?_0x2282c7:_0x2282c7[_0x2ad499(0x126)](_0x28084d=>({'id':_0x28084d['id'],'functionName':_0x28084d[_0x2ad499(0x117)]??'','description':_0x28084d[_0x2ad499(0x122)]||'(unnamed)','scriptType':_0x28084d['scriptType']})),'message':_0x2282c7['length']===0x0?'No\x20BFF\x20scripts\x20found.':undefined};}};function a30_0x59ed(){const _0x4d9879=['ENDPOINT','COMMON','functionName','list','1020651uJUEFl','Filter\x20by\x20script\x20name','name','bool','1251308DbcgvO','boolean','appCode','string','3666789JQpNNq','description','2219688YJzxPD','2500HcXjgS','1dnWwCv','map','read','8361smsjlP','List\x20BFF\x20scripts','1887640XkvNGW','str','292uRyRNZ','bff','type','Script\x20type\x20filter','26615lpUmJl','verbose'];a30_0x59ed=function(){return _0x4d9879;};return a30_0x59ed();}
@@ -1 +1 @@
1
- function a70_0x476d(_0x29292f,_0x74fbcc){_0x29292f=_0x29292f-0xce;const _0x35117a=a70_0x3511();let _0x476d2d=_0x35117a[_0x29292f];return _0x476d2d;}const a70_0x231e3f=a70_0x476d;(function(_0x540340,_0x150256){const _0xb2105=a70_0x476d,_0x1ac3d6=_0x540340();while(!![]){try{const _0x12e461=parseInt(_0xb2105(0xe7))/0x1*(parseInt(_0xb2105(0xe0))/0x2)+-parseInt(_0xb2105(0xcf))/0x3*(-parseInt(_0xb2105(0x10f))/0x4)+-parseInt(_0xb2105(0xee))/0x5+-parseInt(_0xb2105(0xdc))/0x6*(parseInt(_0xb2105(0xf4))/0x7)+parseInt(_0xb2105(0xea))/0x8+-parseInt(_0xb2105(0xf2))/0x9*(parseInt(_0xb2105(0x112))/0xa)+parseInt(_0xb2105(0x109))/0xb;if(_0x12e461===_0x150256)break;else _0x1ac3d6['push'](_0x1ac3d6['shift']());}catch(_0xb48e40){_0x1ac3d6['push'](_0x1ac3d6['shift']());}}}(a70_0x3511,0x3d877));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';function a70_0x3511(){const _0x25cb1d=['2886XIsZNi','bool','stringify','question','2HNSKPs','version','parse','ENDPOINT','functions','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','type','53487tJQicq','force','str','1986928tiTEJO','string','Force\x20pull\x20cancelled.','apiDir','2439485nsPHwq','HOOK','Remote\x20script\x20missing\x20content.','Would\x20inspect\x20','9DjZNRY','pull','2317uXsuMd','scriptsRoot','toLowerCase','functionNode','stdin','No\x20remote\x20BFF\x20scripts\x20found.','stderr','functionName','conflict','apps','length','Remote\x20script\x20missing\x20id.','scriptType','hash','appCode','unresolvable\x20target\x20path','operationType','alias','lockFilePath','scriptContent','nonInteractive','8712891aQmAMu','filePath','lastSync','\x20failed','hookLocation','write','281620sYnJmt','COMMON','all','2652080vOfRiX','Pull\x20only\x20this\x20script\x20type','message','includes','push','datasetCode','3GttuaF','\x20skipped,\x20','skipped','Pull\x20complete:\x20','local\x20unsynced\x20changes','\x22\x20not\x20found\x20after\x20ensureLockScope.','Force\x20overwrite\x20local\x20unsynced\x20changes','/api/management/library/scripts/list?appCode=','lockKey','toISOString','yes','map','GET'];a70_0x3511=function(){return _0x25cb1d;};return a70_0x3511();}import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':'bff','command':a70_0x231e3f(0xf3),'description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a70_0x231e3f(0x10e),'flags':[{'name':a70_0x231e3f(0xe6),'type':a70_0x231e3f(0xeb),'description':a70_0x231e3f(0x113),'enum':[a70_0x231e3f(0x110),a70_0x231e3f(0xe3),'HOOK']},{'name':a70_0x231e3f(0xe8),'type':'boolean','description':a70_0x231e3f(0xd5)}],async 'dryRun'(_0x4fd6c9){const _0x33aa0b=a70_0x231e3f,_0x1db6de=loadBffProjectConfig(_0x4fd6c9['appCode']),_0xaeaa9f=await readBffLockFile(_0x1db6de[_0x33aa0b(0x106)]),{appLock:_0x2dd9fe}=ensureLockScope(_0xaeaa9f??createEmptyBffLock(),_0x4fd6c9[_0x33aa0b(0x102)],_0x1db6de['scriptsRoot'],_0x33aa0b(0xf3)),_0x1e1e7e=normalizeBffType(_0x4fd6c9[_0x33aa0b(0xe9)](_0x33aa0b(0xe6)))??undefined,_0x46185a=buildDatasetCodeToAliasMap(_0x4fd6c9[_0x33aa0b(0xed)],_0x4fd6c9[_0x33aa0b(0x102)]),[_0x20817b,_0xd7d78b]=await Promise[_0x33aa0b(0x111)]([listBffScripts(_0x4fd6c9['appCode'],_0x1e1e7e),getBffScriptStatistics(_0x4fd6c9[_0x33aa0b(0x102)])]),_0x77b0e5=createHookLocationMap(_0xd7d78b),_0x5f1caf=[];for(const _0x3b4afc of _0x20817b){const _0x5dec73=resolveRemoteScriptTarget(_0x1db6de,_0x3b4afc,_0x77b0e5,_0x2dd9fe['functions'],_0x46185a);if(!_0x5dec73){_0x5f1caf[_0x33aa0b(0x116)]({'scriptType':_0x3b4afc[_0x33aa0b(0x100)],'functionName':_0x3b4afc[_0x33aa0b(0xfb)]??'','status':_0x33aa0b(0xd1),'reason':_0x33aa0b(0x103)});continue;}const _0x362481=_0x2dd9fe[_0x33aa0b(0xe4)][_0x5dec73[_0x33aa0b(0xd7)]],_0x472f3c=_0x3b4afc[_0x33aa0b(0x107)]!=null?computeContentHash(_0x3b4afc['scriptContent']):undefined,_0x149158=await hasUnsyncedLocalChanges(_0x5dec73[_0x33aa0b(0x10a)],_0x362481,_0x472f3c);_0x5f1caf[_0x33aa0b(0x116)]({'lockKey':_0x5dec73['lockKey'],'filePath':_0x5dec73['filePath'],'remoteId':_0x3b4afc['id']??null,'status':_0x149158?_0x33aa0b(0xfc):'would_pull'});}return{'method':_0x33aa0b(0xdb),'url':_0x33aa0b(0xd6)+_0x4fd6c9[_0x33aa0b(0x102)]+(_0x1e1e7e?'&type='+_0x1e1e7e:''),'body':{'appCode':_0x4fd6c9[_0x33aa0b(0x102)],'filterType':_0x1e1e7e??null,'files':_0x5f1caf},'description':_0x33aa0b(0xf1)+_0x5f1caf[_0x33aa0b(0xfe)]+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x3ef63e){const _0x40bccf=a70_0x231e3f,_0x5cdd2f=loadBffProjectConfig(_0x3ef63e[_0x40bccf(0x102)]),_0x5362be=await readBffLockFile(_0x5cdd2f[_0x40bccf(0x106)]),{lockData:_0x15c8d2,appLock:_0x5eb442}=ensureLockScope(_0x5362be??createEmptyBffLock(),_0x3ef63e[_0x40bccf(0x102)],_0x5cdd2f[_0x40bccf(0xf5)],_0x40bccf(0xf3)),_0x1f49df=normalizeBffType(_0x3ef63e['str'](_0x40bccf(0xe6)))??undefined;if(_0x3ef63e['str']('type')&&!_0x1f49df)throw CliErrors['validation']('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0x45e592,_0x52aad9]=await Promise[_0x40bccf(0x111)]([listBffScripts(_0x3ef63e[_0x40bccf(0x102)],_0x1f49df),getBffScriptStatistics(_0x3ef63e['appCode'])]);if(_0x45e592[_0x40bccf(0xfe)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x40bccf(0xf9)};const _0x29beb0=_0x3ef63e[_0x40bccf(0xdd)](_0x40bccf(0xe8));if(_0x29beb0&&!_0x3ef63e[_0x40bccf(0x108)]){const _0x4c7fe6=await confirmForce();if(!_0x4c7fe6)throw CliErrors['cancelled'](_0x40bccf(0xec));}if(_0x29beb0&&_0x3ef63e[_0x40bccf(0x108)]){}const _0x54e866=buildDatasetCodeToAliasMap(_0x3ef63e['apiDir'],_0x3ef63e[_0x40bccf(0x102)]),_0x1bb5da=createHookLocationMap(_0x52aad9),_0x425972=JSON[_0x40bccf(0xe2)](JSON[_0x40bccf(0xde)](_0x15c8d2)),_0x23efc4=_0x3ef63e['appCode'],_0x1eba25=_0x425972[_0x40bccf(0xfd)][_0x23efc4];if(!_0x1eba25)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x23efc4+_0x40bccf(0xd4));const _0x3d2eab=[],_0xf48753=[],_0x506ed2=[];for(const _0x515369 of _0x45e592){const _0x593abf=resolveRemoteScriptTarget(_0x5cdd2f,_0x515369,_0x1bb5da,_0x5eb442[_0x40bccf(0xe4)],_0x54e866);if(!_0x593abf){_0xf48753[_0x40bccf(0x116)]({'lockKey':_0x515369['scriptType']+'/'+_0x515369[_0x40bccf(0xfb)],'reason':'unresolvable\x20target\x20path'});continue;}const _0x436e07=_0x5eb442[_0x40bccf(0xe4)][_0x593abf[_0x40bccf(0xd7)]];try{if(!_0x515369['id'])throw new Error(_0x40bccf(0xff));if(_0x515369[_0x40bccf(0x107)]==null)throw new Error(_0x40bccf(0xf0));const _0x281646=_0x515369[_0x40bccf(0x107)],_0x479a4f=computeContentHash(_0x281646);if(!_0x29beb0){const _0x58a0e1=await hasUnsyncedLocalChanges(_0x593abf['filePath'],_0x436e07,_0x479a4f);if(_0x58a0e1){_0xf48753[_0x40bccf(0x116)]({'lockKey':_0x593abf[_0x40bccf(0xd7)],'reason':_0x40bccf(0xd3)});continue;}}await ensureParentDirectory(_0x593abf[_0x40bccf(0x10a)]),await writeFile(_0x593abf[_0x40bccf(0x10a)],_0x281646,'utf8');const _0x276efa={'hash':_0x479a4f,'remoteId':_0x515369['id'],'version':_0x515369[_0x40bccf(0xe1)]};_0x593abf[_0x40bccf(0xe6)]===_0x40bccf(0xef)&&_0x593abf[_0x40bccf(0x10d)]&&(_0x276efa['alias']=_0x593abf[_0x40bccf(0x10d)][_0x40bccf(0x105)],_0x276efa[_0x40bccf(0xce)]=_0x593abf['hookLocation'][_0x40bccf(0xce)],_0x276efa['operationType']=_0x593abf[_0x40bccf(0x10d)][_0x40bccf(0x104)],_0x276efa[_0x40bccf(0xf7)]=_0x593abf[_0x40bccf(0x10d)][_0x40bccf(0xf7)]),_0x1eba25[_0x40bccf(0xe4)][_0x593abf[_0x40bccf(0xd7)]]=_0x276efa,_0x3d2eab['push']({'lockKey':_0x593abf[_0x40bccf(0xd7)],'remoteId':_0x515369['id']});}catch(_0x2fa18a){_0x506ed2['push']({'lockKey':_0x593abf[_0x40bccf(0xd7)],'error':_0x2fa18a instanceof Error?_0x2fa18a[_0x40bccf(0x114)]:String(_0x2fa18a)});}}return _0x1eba25[_0x40bccf(0x10b)]=new Date()[_0x40bccf(0xd8)](),await writeBffLockFile(_0x5cdd2f[_0x40bccf(0x106)],_0x425972),{'ok':_0x506ed2[_0x40bccf(0xfe)]===0x0,'data':{'pulled':_0x3d2eab,'skipped':_0xf48753,'failed':_0x506ed2},'message':_0x40bccf(0xd2)+_0x3d2eab[_0x40bccf(0xfe)]+'\x20pulled,\x20'+_0xf48753[_0x40bccf(0xfe)]+_0x40bccf(0xd0)+_0x506ed2[_0x40bccf(0xfe)]+_0x40bccf(0x10c)};}};async function hasUnsyncedLocalChanges(_0x721ab3,_0x209987,_0x38da0a){const _0x3c6ab6=a70_0x231e3f;if(!await fileExists(_0x721ab3))return![];const _0x372f20=await computeFileHash(_0x721ab3);if(!_0x209987)return _0x38da0a?_0x372f20!==_0x38da0a:!![];return _0x372f20!==_0x209987[_0x3c6ab6(0x101)];}function buildDatasetCodeToAliasMap(_0x13adc6,_0x3a1dfa){const _0xbc240=a70_0x231e3f,_0xf7be1d=loadAliasMap(_0x13adc6,undefined,resolveApiFilePath(_0x13adc6,_0x3a1dfa));return new Map(_0xf7be1d[_0xbc240(0xda)](_0x5cc195=>[_0x5cc195[_0xbc240(0xce)],_0x5cc195['alias']]));}async function confirmForce(){const _0x2eb86c=a70_0x231e3f,_0x44ac31=createInterface({'input':process[_0x2eb86c(0xf8)],'output':process[_0x2eb86c(0xfa)]}),_0xcdc559=await new Promise(_0x3791d5=>{const _0x5c4d19=_0x2eb86c;_0x44ac31[_0x5c4d19(0xdf)](_0x5c4d19(0xe5),_0x3791d5);});return _0x44ac31['close'](),['y',_0x2eb86c(0xd9)][_0x2eb86c(0x115)](_0xcdc559['trim']()[_0x2eb86c(0xf6)]());}
1
+ const a31_0xad98a=a31_0x2667;(function(_0x2c8804,_0x476c28){const _0x42b374=a31_0x2667,_0x1a1874=_0x2c8804();while(!![]){try{const _0x12e64d=parseInt(_0x42b374(0x191))/0x1+-parseInt(_0x42b374(0x1a7))/0x2+-parseInt(_0x42b374(0x1a4))/0x3*(parseInt(_0x42b374(0x175))/0x4)+parseInt(_0x42b374(0x17b))/0x5*(parseInt(_0x42b374(0x196))/0x6)+parseInt(_0x42b374(0x171))/0x7*(-parseInt(_0x42b374(0x18b))/0x8)+parseInt(_0x42b374(0x187))/0x9*(-parseInt(_0x42b374(0x16d))/0xa)+-parseInt(_0x42b374(0x186))/0xb*(-parseInt(_0x42b374(0x161))/0xc);if(_0x12e64d===_0x476c28)break;else _0x1a1874['push'](_0x1a1874['shift']());}catch(_0x1a4dda){_0x1a1874['push'](_0x1a1874['shift']());}}}(a31_0x25af,0xe56d7));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';function a31_0x25af(){const _0x435648=['toISOString','962137PUstGx','27APcbZt','apiDir','datasetCode','str','1548520nolOLl','functions','close','pull','write','Lock\x20scope\x20for\x20app\x20\x22','15192ztIzbv','GET','scriptContent','toLowerCase','lockKey','24708RVuNOE','appCode','Remote\x20script\x20missing\x20content.','Pull\x20complete:\x20','functionName','scriptType','alias','utf8','lockFilePath','skipped','lastSync','Remote\x20script\x20missing\x20id.','hookLocation','yes','517938xFjtlX','bool','local\x20unsynced\x20changes','788322ZWsXsV','operationType','hash','map','parse','force','No\x20remote\x20BFF\x20scripts\x20found.','300yerfex','message','type','Would\x20inspect\x20','nonInteractive','cancelled','Force\x20overwrite\x20local\x20unsynced\x20changes','\x22\x20not\x20found\x20after\x20ensureLockScope.','ENDPOINT','/api/management/library/scripts/list?appCode=','\x20failed','conflict','3005770kiPmmR','bff','HOOK','\x20skipped,\x20','42PVHCqj','push','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','validation','12BkbONi','would_pull','\x20remote\x20BFF\x20script(s)\x20for\x20pull','length','stderr','boolean','2080UYcrfQ','scriptsRoot','version','COMMON','filePath','stringify','Pull\x20only\x20this\x20script\x20type','functionNode','apps','\x20pulled,\x20'];a31_0x25af=function(){return _0x435648;};return a31_0x25af();}import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0xad98a(0x16e),'command':a31_0xad98a(0x18e),'description':a31_0xad98a(0x173),'risk':a31_0xad98a(0x18f),'flags':[{'name':a31_0xad98a(0x163),'type':'string','description':a31_0xad98a(0x181),'enum':[a31_0xad98a(0x17e),a31_0xad98a(0x169),a31_0xad98a(0x16f)]},{'name':'force','type':a31_0xad98a(0x17a),'description':a31_0xad98a(0x167)}],async 'dryRun'(_0xa5723f){const _0x502ec3=a31_0xad98a,_0x2ed859=loadBffProjectConfig(_0xa5723f[_0x502ec3(0x197)]),_0x188bb0=await readBffLockFile(_0x2ed859[_0x502ec3(0x19e)]),{appLock:_0x5f1ed9}=ensureLockScope(_0x188bb0??createEmptyBffLock(),_0xa5723f['appCode'],_0x2ed859[_0x502ec3(0x17c)],'pull'),_0x3ff5eb=normalizeBffType(_0xa5723f['str'](_0x502ec3(0x163)))??undefined,_0x31d929=buildDatasetCodeToAliasMap(_0xa5723f[_0x502ec3(0x188)],_0xa5723f[_0x502ec3(0x197)]),[_0x47791d,_0x243750]=await Promise['all']([listBffScripts(_0xa5723f[_0x502ec3(0x197)],_0x3ff5eb),getBffScriptStatistics(_0xa5723f[_0x502ec3(0x197)])]),_0x206e04=createHookLocationMap(_0x243750),_0x4284c4=[];for(const _0x3d4074 of _0x47791d){const _0x418f9a=resolveRemoteScriptTarget(_0x2ed859,_0x3d4074,_0x206e04,_0x5f1ed9[_0x502ec3(0x18c)],_0x31d929);if(!_0x418f9a){_0x4284c4[_0x502ec3(0x172)]({'scriptType':_0x3d4074[_0x502ec3(0x19b)],'functionName':_0x3d4074[_0x502ec3(0x19a)]??'','status':_0x502ec3(0x19f),'reason':'unresolvable\x20target\x20path'});continue;}const _0x1ec885=_0x5f1ed9[_0x502ec3(0x18c)][_0x418f9a[_0x502ec3(0x195)]],_0xc99dec=_0x3d4074['scriptContent']!=null?computeContentHash(_0x3d4074[_0x502ec3(0x193)]):undefined,_0xd0497e=await hasUnsyncedLocalChanges(_0x418f9a[_0x502ec3(0x17f)],_0x1ec885,_0xc99dec);_0x4284c4[_0x502ec3(0x172)]({'lockKey':_0x418f9a['lockKey'],'filePath':_0x418f9a[_0x502ec3(0x17f)],'remoteId':_0x3d4074['id']??null,'status':_0xd0497e?_0x502ec3(0x16c):_0x502ec3(0x176)});}return{'method':_0x502ec3(0x192),'url':_0x502ec3(0x16a)+_0xa5723f[_0x502ec3(0x197)]+(_0x3ff5eb?'&type='+_0x3ff5eb:''),'body':{'appCode':_0xa5723f['appCode'],'filterType':_0x3ff5eb??null,'files':_0x4284c4},'description':_0x502ec3(0x164)+_0x4284c4[_0x502ec3(0x178)]+_0x502ec3(0x177)};},async 'execute'(_0x5d4bb0){const _0x3c0ef7=a31_0xad98a,_0x138953=loadBffProjectConfig(_0x5d4bb0['appCode']),_0x59138a=await readBffLockFile(_0x138953[_0x3c0ef7(0x19e)]),{lockData:_0x2bcf0d,appLock:_0x5b64af}=ensureLockScope(_0x59138a??createEmptyBffLock(),_0x5d4bb0[_0x3c0ef7(0x197)],_0x138953[_0x3c0ef7(0x17c)],_0x3c0ef7(0x18e)),_0x9a751a=normalizeBffType(_0x5d4bb0[_0x3c0ef7(0x18a)](_0x3c0ef7(0x163)))??undefined;if(_0x5d4bb0[_0x3c0ef7(0x18a)](_0x3c0ef7(0x163))&&!_0x9a751a)throw CliErrors[_0x3c0ef7(0x174)]('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0x3d8a67,_0x3b926f]=await Promise['all']([listBffScripts(_0x5d4bb0[_0x3c0ef7(0x197)],_0x9a751a),getBffScriptStatistics(_0x5d4bb0[_0x3c0ef7(0x197)])]);if(_0x3d8a67[_0x3c0ef7(0x178)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x3c0ef7(0x160)};const _0x1b2b56=_0x5d4bb0[_0x3c0ef7(0x1a5)](_0x3c0ef7(0x15f));if(_0x1b2b56&&!_0x5d4bb0['nonInteractive']){const _0xc2b761=await confirmForce();if(!_0xc2b761)throw CliErrors[_0x3c0ef7(0x166)]('Force\x20pull\x20cancelled.');}if(_0x1b2b56&&_0x5d4bb0[_0x3c0ef7(0x165)]){}const _0x1d37db=buildDatasetCodeToAliasMap(_0x5d4bb0['apiDir'],_0x5d4bb0[_0x3c0ef7(0x197)]),_0xf24bdd=createHookLocationMap(_0x3b926f),_0x1e6146=JSON[_0x3c0ef7(0x1ab)](JSON[_0x3c0ef7(0x180)](_0x2bcf0d)),_0xa46bac=_0x5d4bb0[_0x3c0ef7(0x197)],_0x538e67=_0x1e6146[_0x3c0ef7(0x183)][_0xa46bac];if(!_0x538e67)throw new Error(_0x3c0ef7(0x190)+_0xa46bac+_0x3c0ef7(0x168));const _0xb9223b=[],_0x5353f2=[],_0x58277a=[];for(const _0x1ef934 of _0x3d8a67){const _0x389fe7=resolveRemoteScriptTarget(_0x138953,_0x1ef934,_0xf24bdd,_0x5b64af[_0x3c0ef7(0x18c)],_0x1d37db);if(!_0x389fe7){_0x5353f2[_0x3c0ef7(0x172)]({'lockKey':_0x1ef934[_0x3c0ef7(0x19b)]+'/'+_0x1ef934['functionName'],'reason':'unresolvable\x20target\x20path'});continue;}const _0x2417b1=_0x5b64af[_0x3c0ef7(0x18c)][_0x389fe7[_0x3c0ef7(0x195)]];try{if(!_0x1ef934['id'])throw new Error(_0x3c0ef7(0x1a1));if(_0x1ef934[_0x3c0ef7(0x193)]==null)throw new Error(_0x3c0ef7(0x198));const _0x180913=_0x1ef934[_0x3c0ef7(0x193)],_0x50aa4b=computeContentHash(_0x180913);if(!_0x1b2b56){const _0x51a00d=await hasUnsyncedLocalChanges(_0x389fe7[_0x3c0ef7(0x17f)],_0x2417b1,_0x50aa4b);if(_0x51a00d){_0x5353f2[_0x3c0ef7(0x172)]({'lockKey':_0x389fe7[_0x3c0ef7(0x195)],'reason':_0x3c0ef7(0x1a6)});continue;}}await ensureParentDirectory(_0x389fe7[_0x3c0ef7(0x17f)]),await writeFile(_0x389fe7[_0x3c0ef7(0x17f)],_0x180913,_0x3c0ef7(0x19d));const _0x90f11e={'hash':_0x50aa4b,'remoteId':_0x1ef934['id'],'version':_0x1ef934[_0x3c0ef7(0x17d)]};_0x389fe7[_0x3c0ef7(0x163)]===_0x3c0ef7(0x16f)&&_0x389fe7['hookLocation']&&(_0x90f11e['alias']=_0x389fe7[_0x3c0ef7(0x1a2)]['alias'],_0x90f11e['datasetCode']=_0x389fe7[_0x3c0ef7(0x1a2)]['datasetCode'],_0x90f11e[_0x3c0ef7(0x1a8)]=_0x389fe7[_0x3c0ef7(0x1a2)][_0x3c0ef7(0x1a8)],_0x90f11e['functionNode']=_0x389fe7[_0x3c0ef7(0x1a2)][_0x3c0ef7(0x182)]),_0x538e67[_0x3c0ef7(0x18c)][_0x389fe7[_0x3c0ef7(0x195)]]=_0x90f11e,_0xb9223b[_0x3c0ef7(0x172)]({'lockKey':_0x389fe7['lockKey'],'remoteId':_0x1ef934['id']});}catch(_0x237891){_0x58277a[_0x3c0ef7(0x172)]({'lockKey':_0x389fe7['lockKey'],'error':_0x237891 instanceof Error?_0x237891[_0x3c0ef7(0x162)]:String(_0x237891)});}}return _0x538e67[_0x3c0ef7(0x1a0)]=new Date()[_0x3c0ef7(0x185)](),await writeBffLockFile(_0x138953[_0x3c0ef7(0x19e)],_0x1e6146),{'ok':_0x58277a[_0x3c0ef7(0x178)]===0x0,'data':{'pulled':_0xb9223b,'skipped':_0x5353f2,'failed':_0x58277a},'message':_0x3c0ef7(0x199)+_0xb9223b[_0x3c0ef7(0x178)]+_0x3c0ef7(0x184)+_0x5353f2[_0x3c0ef7(0x178)]+_0x3c0ef7(0x170)+_0x58277a[_0x3c0ef7(0x178)]+_0x3c0ef7(0x16b)};}};function a31_0x2667(_0x5175a2,_0x16acc1){_0x5175a2=_0x5175a2-0x15f;const _0x25af02=a31_0x25af();let _0x266776=_0x25af02[_0x5175a2];return _0x266776;}async function hasUnsyncedLocalChanges(_0x484885,_0x1450e6,_0x2c68c3){const _0x427acb=a31_0xad98a;if(!await fileExists(_0x484885))return![];const _0x49c202=await computeFileHash(_0x484885);if(!_0x1450e6)return _0x2c68c3?_0x49c202!==_0x2c68c3:!![];return _0x49c202!==_0x1450e6[_0x427acb(0x1a9)];}function buildDatasetCodeToAliasMap(_0x1ff5ab,_0xb2c864){const _0x2733b2=a31_0xad98a,_0x4f6ea4=loadAliasMap(_0x1ff5ab,undefined,resolveApiFilePath(_0x1ff5ab,_0xb2c864));return new Map(_0x4f6ea4[_0x2733b2(0x1aa)](_0x5bb173=>[_0x5bb173[_0x2733b2(0x189)],_0x5bb173[_0x2733b2(0x19c)]]));}async function confirmForce(){const _0x1d4f5a=a31_0xad98a,_0x3f76cd=createInterface({'input':process['stdin'],'output':process[_0x1d4f5a(0x179)]}),_0x39045d=await new Promise(_0xa3e0b4=>{_0x3f76cd['question']('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0xa3e0b4);});return _0x3f76cd[_0x1d4f5a(0x18d)](),['y',_0x1d4f5a(0x1a3)]['includes'](_0x39045d['trim']()[_0x1d4f5a(0x194)]());}
@@ -1 +1 @@
1
- const a75_0x3b8ee5=a75_0x2f04;(function(_0x3304d0,_0x1a11d0){const _0x9d5e67=a75_0x2f04,_0x4cb2cf=_0x3304d0();while(!![]){try{const _0x3d5fd8=-parseInt(_0x9d5e67(0x126))/0x1+parseInt(_0x9d5e67(0x12b))/0x2*(-parseInt(_0x9d5e67(0x127))/0x3)+-parseInt(_0x9d5e67(0x136))/0x4+parseInt(_0x9d5e67(0x11e))/0x5*(-parseInt(_0x9d5e67(0x12d))/0x6)+parseInt(_0x9d5e67(0x122))/0x7*(-parseInt(_0x9d5e67(0x14f))/0x8)+-parseInt(_0x9d5e67(0x138))/0x9+parseInt(_0x9d5e67(0x131))/0xa;if(_0x3d5fd8===_0x1a11d0)break;else _0x4cb2cf['push'](_0x4cb2cf['shift']());}catch(_0x55783c){_0x4cb2cf['push'](_0x4cb2cf['shift']());}}}(a75_0x7d52,0x6d552));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';function a75_0x7d52(){const _0xeb604e=['datasetCode','utf8','name','functions','scriptsRoot','apiDir','\x20uploaded,\x20','Would\x20inspect\x20','Cannot\x20resolve\x20dataset\x20for\x20\x22','appCode','toISOString','364224uAiGnm','lockFilePath','version','lastSync','POST','boolean','\x20skipped,\x20','Force\x20push\x20ignoring\x20hash\x20protection','datasetId','set','HOOK','lockKey','has','ENDPOINT','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','length','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','alias','push','remoteId','\x22.\x20',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','5LEuyiS','Local\x20function\x20not\x20found:\x20','hash','aliasToDatasetCode','49NNtwYq','No\x20local\x20BFF\x20functions\x20found.','force','description','107836sYshDq','127311yCbXRl','COMMON','unchanged','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','18fKeSvj','str','1881582rgjNUv','Push\x20complete:\x20','datasetCodeToId','type','23291520vjMGLT','Push\x20only\x20this\x20script\x20type','operationType','map','\x20local\x20BFF\x20script(s)\x20for\x20push','348424CwDamt','filePath','6049422xmBtYf','functionNode','\x20failed','get','Run\x20`','validation','filter','bool','some','code','string','high-risk-write'];a75_0x7d52=function(){return _0xeb604e;};return a75_0x7d52();}import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a75_0x2f04(_0x39f9e7,_0x4e7d55){_0x39f9e7=_0x39f9e7-0x109;const _0x7d522c=a75_0x7d52();let _0x2f0467=_0x7d522c[_0x39f9e7];return _0x2f0467;}import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':'bff','command':'push','description':'Push\x20local\x20BFF\x20scripts\x20to\x20remote','risk':a75_0x3b8ee5(0x143),'flags':[{'name':a75_0x3b8ee5(0x130),'type':a75_0x3b8ee5(0x142),'description':a75_0x3b8ee5(0x132),'enum':[a75_0x3b8ee5(0x128),a75_0x3b8ee5(0x115),'HOOK']},{'name':a75_0x3b8ee5(0x146),'type':a75_0x3b8ee5(0x142),'description':a75_0x3b8ee5(0x118)},{'name':a75_0x3b8ee5(0x124),'type':a75_0x3b8ee5(0x10d),'description':a75_0x3b8ee5(0x10f)}],async 'dryRun'(_0x18573a){const _0x566010=a75_0x3b8ee5,_0x316795=loadBffProjectConfig(_0x18573a[_0x566010(0x14d)]),_0x27d886=await readBffLockFile(_0x316795[_0x566010(0x109)]),{appLock:_0x1125fd}=ensureLockScope(_0x27d886??createEmptyBffLock(),_0x18573a[_0x566010(0x14d)],_0x316795[_0x566010(0x148)],_0x566010(0x11a)),_0x10f4b=await getTargetFunctions(_0x316795,_0x18573a),_0x29d9cb=_0x18573a[_0x566010(0x13f)](_0x566010(0x124)),_0x44e2a1=[];for(const _0x34395e of _0x10f4b){const _0x1ed999=await computeFileHash(_0x34395e[_0x566010(0x137)]),_0x5b072f=_0x1125fd['functions'][_0x34395e[_0x566010(0x113)]],_0xa487ff=!!_0x5b072f&&_0x5b072f['hash']===_0x1ed999;_0x44e2a1[_0x566010(0x11a)]({'lockKey':_0x34395e[_0x566010(0x113)],'filePath':_0x34395e[_0x566010(0x137)],'remoteId':_0x5b072f?.[_0x566010(0x11b)]??null,'mode':_0x5b072f?.[_0x566010(0x11b)]?'update':'create','status':!_0x29d9cb&&_0xa487ff?'unchanged':'would_push'});}return{'method':_0x566010(0x10c),'url':'/api/management/library/scripts/save','body':{'appCode':_0x18573a[_0x566010(0x14d)],'force':_0x29d9cb,'files':_0x44e2a1},'description':_0x566010(0x14b)+_0x44e2a1['length']+_0x566010(0x135)};},async 'execute'(_0x24da2a){const _0x35087f=a75_0x3b8ee5,_0x575f37=loadBffProjectConfig(_0x24da2a[_0x35087f(0x14d)]),_0x2e9281=await readBffLockFile(_0x575f37['lockFilePath']),{lockData:_0x38b4bc,appLock:_0x38f357}=ensureLockScope(_0x2e9281??createEmptyBffLock(),_0x24da2a[_0x35087f(0x14d)],_0x575f37[_0x35087f(0x148)],_0x35087f(0x11a)),_0x1836e2=await getTargetFunctions(_0x575f37,_0x24da2a);if(_0x1836e2[_0x35087f(0x117)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0x35087f(0x123)};const _0x376ca4=_0x24da2a[_0x35087f(0x13f)](_0x35087f(0x124)),_0x55e75e=await buildHookMaps(_0x24da2a[_0x35087f(0x14d)],_0x24da2a[_0x35087f(0x149)],_0x1836e2,_0x38f357),_0x162bec=[],_0x9cb7cc=[],_0x222392=[];for(const _0x46d518 of _0x1836e2){const _0xbbc5b9=await computeFileHash(_0x46d518[_0x35087f(0x137)]),_0xbde143=_0x38f357[_0x35087f(0x147)][_0x46d518[_0x35087f(0x113)]];if(!_0x376ca4&&_0xbde143&&_0xbde143[_0x35087f(0x120)]===_0xbbc5b9){_0x9cb7cc[_0x35087f(0x11a)]({'lockKey':_0x46d518[_0x35087f(0x113)],'reason':_0x35087f(0x129)});continue;}try{await uploadSingleFunction(_0x24da2a['appCode'],_0x46d518,_0x38f357,_0x55e75e);const _0x5941fc=_0x38f357[_0x35087f(0x147)][_0x46d518['lockKey']];_0x162bec[_0x35087f(0x11a)]({'lockKey':_0x46d518[_0x35087f(0x113)],'remoteId':_0x5941fc?.[_0x35087f(0x11b)]??0x0});}catch(_0x7fb317){_0x222392[_0x35087f(0x11a)]({'lockKey':_0x46d518[_0x35087f(0x113)],'error':_0x7fb317 instanceof Error?_0x7fb317['message']:String(_0x7fb317)});}}return _0x38f357[_0x35087f(0x10b)]=new Date()[_0x35087f(0x14e)](),await writeBffLockFile(_0x575f37[_0x35087f(0x109)],_0x38b4bc),{'ok':_0x222392[_0x35087f(0x117)]===0x0,'data':{'uploaded':_0x162bec,'skipped':_0x9cb7cc,'failed':_0x222392},'message':_0x35087f(0x12e)+_0x162bec[_0x35087f(0x117)]+_0x35087f(0x14a)+_0x9cb7cc[_0x35087f(0x117)]+_0x35087f(0x10e)+_0x222392[_0x35087f(0x117)]+_0x35087f(0x13a)};}};async function getTargetFunctions(_0x317d01,_0x5ec7eb){const _0x40f44f=a75_0x3b8ee5,_0xae9a73=_0x5ec7eb[_0x40f44f(0x12c)](_0x40f44f(0x130)),_0x183cf8=_0x5ec7eb[_0x40f44f(0x12c)](_0x40f44f(0x146)),_0x502524=normalizeBffType(_0xae9a73)??undefined;if(_0x183cf8&&!_0x502524)throw CliErrors['validation'](_0x40f44f(0x12a));const _0x595379=await scanLocalBffFunctions(_0x317d01,_0x502524);if(_0x183cf8){const _0x543099=_0x595379[_0x40f44f(0x13e)](_0x5bc418=>_0x5bc418[_0x40f44f(0x146)]===_0x183cf8);if(_0x543099[_0x40f44f(0x117)]===0x0)throw CliErrors['validation'](_0x40f44f(0x11f)+_0x502524+'/'+_0x183cf8);return _0x543099;}return _0x595379;}async function buildHookMaps(_0x16285a,_0x34a9b2,_0x4b9561,_0x12e832){const _0x305c7=a75_0x3b8ee5,_0x550737=_0x4b9561[_0x305c7(0x140)](_0x18007c=>_0x18007c['type']===_0x305c7(0x112));if(!_0x550737)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x55132d=loadAliasMap(_0x34a9b2,undefined,resolveApiFilePath(_0x34a9b2,_0x16285a)),_0x535683=new Map(_0x55132d[_0x305c7(0x134)](_0x508428=>[_0x508428[_0x305c7(0x119)],_0x508428[_0x305c7(0x144)]]));for(const _0x20dab of Object['values'](_0x12e832[_0x305c7(0x147)])){_0x20dab[_0x305c7(0x119)]&&_0x20dab[_0x305c7(0x144)]&&!_0x535683[_0x305c7(0x114)](_0x20dab[_0x305c7(0x119)])&&_0x535683[_0x305c7(0x111)](_0x20dab[_0x305c7(0x119)],_0x20dab['datasetCode']);}const _0x244eef=await listDatasets(_0x16285a),_0x222b79=new Map(_0x244eef[_0x305c7(0x134)](_0x2ba10f=>[_0x2ba10f[_0x305c7(0x141)],_0x2ba10f['id']]));return{'aliasToDatasetCode':_0x535683,'datasetCodeToId':_0x222b79};}async function uploadSingleFunction(_0x40a5ca,_0x211179,_0xc02ca6,_0x2a959f){const _0x36af19=a75_0x3b8ee5,_0x7790d8=await readFile(_0x211179[_0x36af19(0x137)],_0x36af19(0x145)),_0x3c7791=await computeFileHash(_0x211179['filePath']),_0x277ddc=_0xc02ca6[_0x36af19(0x147)][_0x211179[_0x36af19(0x113)]];if(_0x277ddc?.[_0x36af19(0x11b)]&&_0x277ddc[_0x36af19(0x10a)]==null)throw CliErrors['validation'](_0x211179[_0x36af19(0x113)]+_0x36af19(0x11d));let _0x5372e9=extractScriptDescription(_0x7790d8);if(!_0x5372e9&&_0x277ddc?.[_0x36af19(0x11b)]){const _0x2fa49b=await getBffScriptInfo(_0x277ddc[_0x36af19(0x11b)]);_0x5372e9=_0x2fa49b[_0x36af19(0x125)]||undefined;}const _0x4d95f1={'appCode':_0x40a5ca,'functionName':_0x211179[_0x36af19(0x146)],'scriptType':_0x211179[_0x36af19(0x130)],'scriptContent':_0x7790d8};if(_0x277ddc?.[_0x36af19(0x11b)])_0x4d95f1['id']=_0x277ddc[_0x36af19(0x11b)];if(_0x277ddc?.[_0x36af19(0x10a)]!=null)_0x4d95f1[_0x36af19(0x10a)]=_0x277ddc[_0x36af19(0x10a)];if(_0x5372e9)_0x4d95f1[_0x36af19(0x125)]=_0x5372e9;if(_0x211179[_0x36af19(0x130)]===_0x36af19(0x112)){const _0x1d1fe3=_0x211179[_0x36af19(0x119)];if(!_0x1d1fe3||!_0x211179[_0x36af19(0x133)]||!_0x211179['functionNode'])throw CliErrors['validation']('Incomplete\x20HOOK\x20path:\x20'+_0x211179[_0x36af19(0x113)]);const _0xfa316e=_0x2a959f['aliasToDatasetCode'][_0x36af19(0x13b)](_0x1d1fe3)??_0x277ddc?.[_0x36af19(0x144)]??_0x1d1fe3,_0x1dbd9a=_0x2a959f[_0x36af19(0x12f)][_0x36af19(0x13b)](_0xfa316e);if(!_0x1dbd9a)throw CliErrors[_0x36af19(0x13d)](_0x36af19(0x14c)+_0x1d1fe3+_0x36af19(0x11c)+(_0x36af19(0x13c)+CLI_BIN_NAME+_0x36af19(0x116)));_0x4d95f1[_0x36af19(0x110)]=_0x1dbd9a,_0x4d95f1[_0x36af19(0x133)]=_0x211179[_0x36af19(0x133)],_0x4d95f1[_0x36af19(0x139)]=_0x211179[_0x36af19(0x139)];}const _0x2ff87f=await saveBffScript(_0x4d95f1),_0xddae8f=await getBffScriptInfo(_0x2ff87f),_0x2a1b01={'hash':_0x3c7791,'remoteId':_0x2ff87f,'version':_0xddae8f['version']};if(_0x211179[_0x36af19(0x130)]===_0x36af19(0x112)){const _0x5c6601=_0x211179[_0x36af19(0x119)],_0x851223=_0x2a959f['aliasToDatasetCode'][_0x36af19(0x13b)](_0x5c6601)??_0x277ddc?.[_0x36af19(0x144)]??_0x5c6601;_0x2a959f[_0x36af19(0x121)][_0x36af19(0x114)](_0x5c6601)?_0x2a1b01[_0x36af19(0x119)]=_0x5c6601:_0x2a1b01[_0x36af19(0x119)]=_0x277ddc?.[_0x36af19(0x119)],_0x2a1b01[_0x36af19(0x144)]=_0x851223,_0x2a1b01[_0x36af19(0x133)]=_0x211179[_0x36af19(0x133)],_0x2a1b01[_0x36af19(0x139)]=_0x211179['functionNode'];}_0xc02ca6[_0x36af19(0x147)][_0x211179[_0x36af19(0x113)]]=_0x2a1b01;}
1
+ const a32_0x3d19fa=a32_0x24d8;(function(_0x2714b2,_0xa37383){const _0x1eeb3c=a32_0x24d8,_0x55ef39=_0x2714b2();while(!![]){try{const _0x49a1d9=-parseInt(_0x1eeb3c(0x10a))/0x1*(parseInt(_0x1eeb3c(0x113))/0x2)+parseInt(_0x1eeb3c(0x12e))/0x3+parseInt(_0x1eeb3c(0x109))/0x4*(parseInt(_0x1eeb3c(0x12f))/0x5)+-parseInt(_0x1eeb3c(0x106))/0x6*(parseInt(_0x1eeb3c(0x133))/0x7)+parseInt(_0x1eeb3c(0x13a))/0x8*(-parseInt(_0x1eeb3c(0x122))/0x9)+parseInt(_0x1eeb3c(0x111))/0xa+-parseInt(_0x1eeb3c(0x130))/0xb*(-parseInt(_0x1eeb3c(0xfa))/0xc);if(_0x49a1d9===_0xa37383)break;else _0x55ef39['push'](_0x55ef39['shift']());}catch(_0xdd68b3){_0x55ef39['push'](_0x55ef39['shift']());}}}(a32_0xf594,0xb61f0));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';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_0x3d19fa(0x12d),'command':'push','description':a32_0x3d19fa(0x11a),'risk':a32_0x3d19fa(0xf6),'flags':[{'name':'type','type':a32_0x3d19fa(0x121),'description':a32_0x3d19fa(0x110),'enum':[a32_0x3d19fa(0x128),a32_0x3d19fa(0xff),'HOOK']},{'name':a32_0x3d19fa(0x103),'type':a32_0x3d19fa(0x121),'description':a32_0x3d19fa(0x108)},{'name':a32_0x3d19fa(0x124),'type':a32_0x3d19fa(0x107),'description':a32_0x3d19fa(0x10b)}],async 'dryRun'(_0x39a1b8){const _0x42ab24=a32_0x3d19fa,_0x96710e=loadBffProjectConfig(_0x39a1b8[_0x42ab24(0x104)]),_0x1b4c30=await readBffLockFile(_0x96710e[_0x42ab24(0x132)]),{appLock:_0x149c37}=ensureLockScope(_0x1b4c30??createEmptyBffLock(),_0x39a1b8[_0x42ab24(0x104)],_0x96710e[_0x42ab24(0x11c)],_0x42ab24(0x129)),_0xfd5947=await getTargetFunctions(_0x96710e,_0x39a1b8),_0x255cd9=_0x39a1b8['bool'](_0x42ab24(0x124)),_0x246004=[];for(const _0x59121d of _0xfd5947){const _0x181225=await computeFileHash(_0x59121d[_0x42ab24(0x13d)]),_0x55d082=_0x149c37[_0x42ab24(0xfc)][_0x59121d[_0x42ab24(0x12b)]],_0x17ef96=!!_0x55d082&&_0x55d082[_0x42ab24(0x10f)]===_0x181225;_0x246004[_0x42ab24(0x129)]({'lockKey':_0x59121d[_0x42ab24(0x12b)],'filePath':_0x59121d[_0x42ab24(0x13d)],'remoteId':_0x55d082?.['remoteId']??null,'mode':_0x55d082?.['remoteId']?_0x42ab24(0x127):_0x42ab24(0x131),'status':!_0x255cd9&&_0x17ef96?'unchanged':_0x42ab24(0x10d)});}return{'method':_0x42ab24(0xfb),'url':_0x42ab24(0xf1),'body':{'appCode':_0x39a1b8[_0x42ab24(0x104)],'force':_0x255cd9,'files':_0x246004},'description':'Would\x20inspect\x20'+_0x246004[_0x42ab24(0x13b)]+_0x42ab24(0xf5)};},async 'execute'(_0xf510b3){const _0x50c836=a32_0x3d19fa,_0x597d2c=loadBffProjectConfig(_0xf510b3[_0x50c836(0x104)]),_0x3b35d9=await readBffLockFile(_0x597d2c[_0x50c836(0x132)]),{lockData:_0x27c97c,appLock:_0x2b0e91}=ensureLockScope(_0x3b35d9??createEmptyBffLock(),_0xf510b3[_0x50c836(0x104)],_0x597d2c[_0x50c836(0x11c)],_0x50c836(0x129)),_0x2220bb=await getTargetFunctions(_0x597d2c,_0xf510b3);if(_0x2220bb[_0x50c836(0x13b)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0x50c836(0x119)};const _0x1e4c6d=_0xf510b3[_0x50c836(0x105)](_0x50c836(0x124)),_0x4b470d=await buildHookMaps(_0xf510b3[_0x50c836(0x104)],_0xf510b3['apiDir'],_0x2220bb,_0x2b0e91),_0xdd7fe8=[],_0x272da3=[],_0x1b007d=[];for(const _0x4dda6e of _0x2220bb){const _0x216639=await computeFileHash(_0x4dda6e[_0x50c836(0x13d)]),_0xb7cc7a=_0x2b0e91['functions'][_0x4dda6e[_0x50c836(0x12b)]];if(!_0x1e4c6d&&_0xb7cc7a&&_0xb7cc7a[_0x50c836(0x10f)]===_0x216639){_0x272da3[_0x50c836(0x129)]({'lockKey':_0x4dda6e['lockKey'],'reason':_0x50c836(0x135)});continue;}try{await uploadSingleFunction(_0xf510b3[_0x50c836(0x104)],_0x4dda6e,_0x2b0e91,_0x4b470d);const _0x5d2a98=_0x2b0e91[_0x50c836(0xfc)][_0x4dda6e['lockKey']];_0xdd7fe8[_0x50c836(0x129)]({'lockKey':_0x4dda6e[_0x50c836(0x12b)],'remoteId':_0x5d2a98?.[_0x50c836(0x116)]??0x0});}catch(_0x299f76){_0x1b007d[_0x50c836(0x129)]({'lockKey':_0x4dda6e[_0x50c836(0x12b)],'error':_0x299f76 instanceof Error?_0x299f76[_0x50c836(0x101)]:String(_0x299f76)});}}return _0x2b0e91[_0x50c836(0xf4)]=new Date()[_0x50c836(0x118)](),await writeBffLockFile(_0x597d2c[_0x50c836(0x132)],_0x27c97c),{'ok':_0x1b007d[_0x50c836(0x13b)]===0x0,'data':{'uploaded':_0xdd7fe8,'skipped':_0x272da3,'failed':_0x1b007d},'message':_0x50c836(0x13c)+_0xdd7fe8[_0x50c836(0x13b)]+_0x50c836(0x100)+_0x272da3[_0x50c836(0x13b)]+_0x50c836(0x115)+_0x1b007d[_0x50c836(0x13b)]+'\x20failed'};}};function a32_0xf594(){const _0x5d9140=['set','unchanged','\x22.\x20','has','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','utf8','60776apLcrJ','length','Push\x20complete:\x20','filePath','Incomplete\x20HOOK\x20path:\x20','/api/management/library/scripts/save','version','datasetId','lastSync','\x20local\x20BFF\x20script(s)\x20for\x20push','high-risk-write','HOOK','type','map','12mYEmCK','POST','functions','operationType','datasetCode','ENDPOINT','\x20uploaded,\x20','message','aliasToDatasetCode','name','appCode','bool','13218pfsNXu','boolean','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','4gZvRZS','16350NyJfzD','Force\x20push\x20ignoring\x20hash\x20protection','filter','would_push',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','hash','Push\x20only\x20this\x20script\x20type','5292900hXWwdk','get','40Kywlxo','code','\x20skipped,\x20','remoteId','str','toISOString','No\x20local\x20BFF\x20functions\x20found.','Push\x20local\x20BFF\x20scripts\x20to\x20remote','datasetCodeToId','scriptsRoot','functionNode','values','validation','Cannot\x20resolve\x20dataset\x20for\x20\x22','string','828lzOclz','script','force','Run\x20`','description','update','COMMON','push','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','lockKey','alias','bff','3007086STzZDV','1218535YqdrJd','15252886ADvsFR','create','lockFilePath','4417qJCBCP'];a32_0xf594=function(){return _0x5d9140;};return a32_0xf594();}async function getTargetFunctions(_0x441542,_0x4ed22f){const _0x728d0a=a32_0x3d19fa,_0xe47e20=_0x4ed22f[_0x728d0a(0x117)]('type'),_0x1e2242=_0x4ed22f[_0x728d0a(0x117)](_0x728d0a(0x103)),_0x187dca=normalizeBffType(_0xe47e20)??undefined;if(_0x1e2242&&!_0x187dca)throw CliErrors['validation'](_0x728d0a(0x138));const _0x382af3=await scanLocalBffFunctions(_0x441542,_0x187dca);if(_0x1e2242){const _0x5542ce=_0x382af3[_0x728d0a(0x10c)](_0x458b79=>_0x458b79[_0x728d0a(0x103)]===_0x1e2242);if(_0x5542ce[_0x728d0a(0x13b)]===0x0)throw CliErrors[_0x728d0a(0x11f)]('Local\x20function\x20not\x20found:\x20'+_0x187dca+'/'+_0x1e2242);return _0x5542ce;}return _0x382af3;}function a32_0x24d8(_0x3028b2,_0x466897){_0x3028b2=_0x3028b2-0xf1;const _0xf59433=a32_0xf594();let _0x24d88a=_0xf59433[_0x3028b2];return _0x24d88a;}async function buildHookMaps(_0x326a92,_0x1a4584,_0x65adef,_0x445f9c){const _0x515d84=a32_0x3d19fa,_0x99462f=_0x65adef['some'](_0x7f8f17=>_0x7f8f17[_0x515d84(0xf8)]===_0x515d84(0xf7));if(!_0x99462f)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x4fe448=loadAliasMap(_0x1a4584,undefined,resolveApiFilePath(_0x1a4584,_0x326a92)),_0x238a96=new Map(_0x4fe448[_0x515d84(0xf9)](_0x2d34ac=>[_0x2d34ac[_0x515d84(0x12c)],_0x2d34ac['datasetCode']]));for(const _0x1bb573 of Object[_0x515d84(0x11e)](_0x445f9c[_0x515d84(0xfc)])){_0x1bb573['alias']&&_0x1bb573[_0x515d84(0xfe)]&&!_0x238a96['has'](_0x1bb573[_0x515d84(0x12c)])&&_0x238a96[_0x515d84(0x134)](_0x1bb573[_0x515d84(0x12c)],_0x1bb573['datasetCode']);}const _0x516687=await listDatasets(_0x326a92),_0x1ba2f6=new Map(_0x516687[_0x515d84(0xf9)](_0x232040=>[_0x232040[_0x515d84(0x114)],_0x232040['id']]));return{'aliasToDatasetCode':_0x238a96,'datasetCodeToId':_0x1ba2f6};}async function uploadSingleFunction(_0x42c0c0,_0x581181,_0x22ff24,_0x2c8a75){const _0x3e4632=a32_0x3d19fa,_0x49f066=await readFile(_0x581181[_0x3e4632(0x13d)],_0x3e4632(0x139)),_0xdb22aa=await computeFileHash(_0x581181[_0x3e4632(0x13d)]),_0x11bd06=_0x22ff24[_0x3e4632(0xfc)][_0x581181[_0x3e4632(0x12b)]];if(_0x11bd06?.[_0x3e4632(0x116)]&&_0x11bd06['version']==null)throw CliErrors[_0x3e4632(0x11f)](_0x581181[_0x3e4632(0x12b)]+_0x3e4632(0x10e));let _0x58c578=extractScriptDescription(_0x49f066);if(!_0x58c578&&_0x11bd06?.[_0x3e4632(0x116)]){const _0x198ae3=await getBffScriptInfo(_0x11bd06['remoteId']);_0x58c578=_0x198ae3[_0x3e4632(0x126)]||undefined;}const _0x3e3705={'appCode':_0x42c0c0,'functionName':_0x581181[_0x3e4632(0x103)],'scriptType':_0x581181[_0x3e4632(0xf8)],'scriptContent':_0x49f066};if(_0x11bd06?.[_0x3e4632(0x116)])_0x3e3705['id']=_0x11bd06['remoteId'];if(_0x11bd06?.[_0x3e4632(0xf2)]!=null)_0x3e3705[_0x3e4632(0xf2)]=_0x11bd06['version'];if(_0x58c578)_0x3e3705['description']=_0x58c578;if(_0x581181[_0x3e4632(0xf8)]===_0x3e4632(0xf7)){const _0x31eee2=_0x581181[_0x3e4632(0x12c)];if(!_0x31eee2||!_0x581181['operationType']||!_0x581181[_0x3e4632(0x11d)])throw CliErrors[_0x3e4632(0x11f)](_0x3e4632(0x13e)+_0x581181[_0x3e4632(0x12b)]);const _0x3e3764=_0x2c8a75[_0x3e4632(0x102)][_0x3e4632(0x112)](_0x31eee2)??_0x11bd06?.[_0x3e4632(0xfe)]??_0x31eee2,_0x230a4d=_0x2c8a75[_0x3e4632(0x11b)][_0x3e4632(0x112)](_0x3e3764);if(!_0x230a4d)throw CliErrors['validation'](_0x3e4632(0x120)+_0x31eee2+_0x3e4632(0x136)+(_0x3e4632(0x125)+CLI_BIN_NAME+_0x3e4632(0x12a)));_0x3e3705[_0x3e4632(0xf3)]=_0x230a4d,_0x3e3705[_0x3e4632(0xfd)]=_0x581181[_0x3e4632(0xfd)],_0x3e3705[_0x3e4632(0x11d)]=_0x581181[_0x3e4632(0x11d)];}const _0x33dae6=await saveBffScript(_0x3e3705),_0x4eeb5a=_0x33dae6['id'],_0x191430=_0x33dae6[_0x3e4632(0x123)]??await getBffScriptInfo(_0x4eeb5a),_0x2e403c={'hash':_0xdb22aa,'remoteId':_0x4eeb5a,'version':_0x191430[_0x3e4632(0xf2)]};if(_0x581181[_0x3e4632(0xf8)]===_0x3e4632(0xf7)){const _0x50e155=_0x581181[_0x3e4632(0x12c)],_0x4b7bc6=_0x2c8a75[_0x3e4632(0x102)][_0x3e4632(0x112)](_0x50e155)??_0x11bd06?.[_0x3e4632(0xfe)]??_0x50e155;_0x2c8a75[_0x3e4632(0x102)][_0x3e4632(0x137)](_0x50e155)?_0x2e403c[_0x3e4632(0x12c)]=_0x50e155:_0x2e403c[_0x3e4632(0x12c)]=_0x11bd06?.[_0x3e4632(0x12c)],_0x2e403c['datasetCode']=_0x4b7bc6,_0x2e403c[_0x3e4632(0xfd)]=_0x581181['operationType'],_0x2e403c[_0x3e4632(0x11d)]=_0x581181['functionNode'];}_0x22ff24[_0x3e4632(0xfc)][_0x581181['lockKey']]=_0x2e403c;}
@@ -1 +1 @@
1
- const a71_0x5a29cc=a71_0x21f4;function a71_0x153d(){const _0x34eca9=['\x20remote-only','bool','functions','9350705mSFogP','all','length','push','3884109qsaSzG','Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally','filePath','datasetCode','alias','read','3225922nXkkfp','lockFilePath','bff','\x20unchanged','appCode','568240juemEF','apiDir','2537101iFlypb','1515052dDISfg','boolean','lockKey','7101948iUypXa','\x20added,\x20','status','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','scriptsRoot','hash'];a71_0x153d=function(){return _0x34eca9;};return a71_0x153d();}(function(_0x38d87d,_0x392625){const _0x7fd56e=a71_0x21f4,_0xb53bf5=_0x38d87d();while(!![]){try{const _0x1ed714=parseInt(_0x7fd56e(0xf4))/0x1+-parseInt(_0x7fd56e(0xef))/0x2+parseInt(_0x7fd56e(0xe9))/0x3+parseInt(_0x7fd56e(0xf7))/0x4+parseInt(_0x7fd56e(0x103))/0x5+-parseInt(_0x7fd56e(0xfa))/0x6+-parseInt(_0x7fd56e(0xf6))/0x7;if(_0x1ed714===_0x392625)break;else _0xb53bf5['push'](_0xb53bf5['shift']());}catch(_0x57519f){_0xb53bf5['push'](_0xb53bf5['shift']());}}}(a71_0x153d,0xe89d1));import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';function a71_0x21f4(_0xb3790d,_0x229ee2){_0xb3790d=_0xb3790d-0xe7;const _0x153d3c=a71_0x153d();let _0x21f44b=_0x153d3c[_0xb3790d];return _0x21f44b;}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':a71_0x5a29cc(0xf1),'command':'status','description':a71_0x5a29cc(0xfd),'risk':a71_0x5a29cc(0xee),'flags':[{'name':'remote','type':a71_0x5a29cc(0xf8),'description':a71_0x5a29cc(0xea)}],async 'execute'(_0x53d2c5){const _0x5b5637=a71_0x5a29cc,_0x24d986=loadBffProjectConfig(_0x53d2c5[_0x5b5637(0xf3)]),_0x26b9a0=await readBffLockFile(_0x24d986[_0x5b5637(0xf0)]),{appLock:_0x389cf3}=ensureLockScope(_0x26b9a0??createEmptyBffLock(),_0x53d2c5[_0x5b5637(0xf3)],_0x24d986[_0x5b5637(0xfe)],_0x5b5637(0xfc)),_0x52c02e=await scanLocalBffFunctions(_0x24d986),_0xaad4f5=[],_0x1c2abc=[],_0x1126a4=[];for(const _0x1831a7 of _0x52c02e){const _0x188720=await computeFileHash(_0x1831a7[_0x5b5637(0xeb)]),_0x424840=_0x389cf3['functions'][_0x1831a7['lockKey']];if(!_0x424840)_0xaad4f5[_0x5b5637(0xe8)](_0x1831a7[_0x5b5637(0xf9)]);else _0x424840[_0x5b5637(0xff)]!==_0x188720?_0x1c2abc[_0x5b5637(0xe8)](_0x1831a7[_0x5b5637(0xf9)]):_0x1126a4['push'](_0x1831a7[_0x5b5637(0xf9)]);}const _0x2bd547=[];if(_0x53d2c5[_0x5b5637(0x101)]('remote')){const _0x266e0a=loadAliasMap(_0x53d2c5[_0x5b5637(0xf5)],undefined,resolveApiFilePath(_0x53d2c5[_0x5b5637(0xf5)],_0x53d2c5[_0x5b5637(0xf3)])),_0x45cce1=new Map(_0x266e0a['map'](_0x3f129d=>[_0x3f129d[_0x5b5637(0xec)],_0x3f129d[_0x5b5637(0xed)]])),[_0x29ab83,_0x3ea13e]=await Promise[_0x5b5637(0x104)]([listBffScripts(_0x53d2c5[_0x5b5637(0xf3)]),getBffScriptStatistics(_0x53d2c5[_0x5b5637(0xf3)])]),_0xb33cc8=createHookLocationMap(_0x3ea13e),_0x4f4e36=new Set(_0x52c02e['map'](_0x364666=>_0x364666['lockKey']));for(const _0x1efc9e of _0x29ab83){const _0x539aff=resolveRemoteScriptTarget(_0x24d986,_0x1efc9e,_0xb33cc8,_0x389cf3[_0x5b5637(0x102)],_0x45cce1);_0x539aff&&!_0x4f4e36['has'](_0x539aff[_0x5b5637(0xf9)])&&_0x2bd547['push'](_0x539aff['lockKey']);}}const _0x5a5314=_0xaad4f5[_0x5b5637(0xe7)]===0x0&&_0x1c2abc[_0x5b5637(0xe7)]===0x0&&_0x2bd547['length']===0x0;return{'ok':!![],'data':{'added':_0xaad4f5,'modified':_0x1c2abc,'unchanged':_0x1126a4,'remoteOnly':_0x2bd547},'message':_0x5a5314?'All\x20BFF\x20scripts\x20are\x20in\x20sync.':_0xaad4f5[_0x5b5637(0xe7)]+_0x5b5637(0xfb)+_0x1c2abc['length']+'\x20modified,\x20'+_0x1126a4['length']+_0x5b5637(0xf2)+(_0x2bd547['length']>0x0?',\x20'+_0x2bd547[_0x5b5637(0xe7)]+_0x5b5637(0x100):'')};}};
1
+ function a33_0x32f6(){const _0x3cad7f=['functions','boolean','4hdSBWp','Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally','scriptsRoot','\x20added,\x20','appCode','498OIqbDj','260fxIxAE','1884USBBqi','\x20unchanged','10987053iicGKk','512747wASKBj','alias','status','bff','remote','push','map','lockFilePath','lockKey','bool','all','\x20remote-only','datasetCode','3670688nMHxZF','apiDir','All\x20BFF\x20scripts\x20are\x20in\x20sync.','filePath','read','has','4147825WeVxjQ','length','hash','142236fXXiBt','1584XqwNRN','29295JrNOAB','\x20modified,\x20'];a33_0x32f6=function(){return _0x3cad7f;};return a33_0x32f6();}const a33_0x27fdb4=a33_0x30eb;(function(_0xb5df65,_0x4bac5a){const _0x177afb=a33_0x30eb,_0x1b2fba=_0xb5df65();while(!![]){try{const _0x313448=-parseInt(_0x177afb(0x89))/0x1+parseInt(_0x177afb(0x7a))/0x2*(parseInt(_0x177afb(0x86))/0x3)+-parseInt(_0x177afb(0x7f))/0x4*(-parseInt(_0x177afb(0x76))/0x5)+parseInt(_0x177afb(0x84))/0x6*(-parseInt(_0x177afb(0x7b))/0x7)+-parseInt(_0x177afb(0x70))/0x8+-parseInt(_0x177afb(0x79))/0x9*(parseInt(_0x177afb(0x85))/0xa)+parseInt(_0x177afb(0x88))/0xb;if(_0x313448===_0x4bac5a)break;else _0x1b2fba['push'](_0x1b2fba['shift']());}catch(_0x24f0fc){_0x1b2fba['push'](_0x1b2fba['shift']());}}}(a33_0x32f6,0x917d2));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_0x30eb(_0x170f48,_0x4d0be4){_0x170f48=_0x170f48-0x69;const _0x32f674=a33_0x32f6();let _0x30ebcb=_0x32f674[_0x170f48];return _0x30ebcb;}import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';export const bffStatus={'service':a33_0x27fdb4(0x8c),'command':a33_0x27fdb4(0x8b),'description':'Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','risk':a33_0x27fdb4(0x74),'flags':[{'name':'remote','type':a33_0x27fdb4(0x7e),'description':a33_0x27fdb4(0x80)}],async 'execute'(_0x39b1f7){const _0x32b179=a33_0x27fdb4,_0x5a801e=loadBffProjectConfig(_0x39b1f7['appCode']),_0x52e1d1=await readBffLockFile(_0x5a801e[_0x32b179(0x6a)]),{appLock:_0x35929c}=ensureLockScope(_0x52e1d1??createEmptyBffLock(),_0x39b1f7[_0x32b179(0x83)],_0x5a801e[_0x32b179(0x81)],_0x32b179(0x8b)),_0x126b6f=await scanLocalBffFunctions(_0x5a801e),_0x3a2fb9=[],_0x7af82c=[],_0x5afc95=[];for(const _0x53a7f3 of _0x126b6f){const _0xe5edb9=await computeFileHash(_0x53a7f3[_0x32b179(0x73)]),_0x1e9452=_0x35929c[_0x32b179(0x7d)][_0x53a7f3[_0x32b179(0x6b)]];if(!_0x1e9452)_0x3a2fb9[_0x32b179(0x8e)](_0x53a7f3[_0x32b179(0x6b)]);else _0x1e9452[_0x32b179(0x78)]!==_0xe5edb9?_0x7af82c['push'](_0x53a7f3[_0x32b179(0x6b)]):_0x5afc95[_0x32b179(0x8e)](_0x53a7f3['lockKey']);}const _0x2a888f=[];if(_0x39b1f7[_0x32b179(0x6c)](_0x32b179(0x8d))){const _0x4074c9=loadAliasMap(_0x39b1f7[_0x32b179(0x71)],undefined,resolveApiFilePath(_0x39b1f7['apiDir'],_0x39b1f7[_0x32b179(0x83)])),_0x50c48=new Map(_0x4074c9[_0x32b179(0x69)](_0x100ab7=>[_0x100ab7[_0x32b179(0x6f)],_0x100ab7[_0x32b179(0x8a)]])),[_0x35437d,_0x3b669f]=await Promise[_0x32b179(0x6d)]([listBffScripts(_0x39b1f7[_0x32b179(0x83)]),getBffScriptStatistics(_0x39b1f7[_0x32b179(0x83)])]),_0x571581=createHookLocationMap(_0x3b669f),_0xe90fc2=new Set(_0x126b6f[_0x32b179(0x69)](_0x2dd3c6=>_0x2dd3c6[_0x32b179(0x6b)]));for(const _0x16e7fe of _0x35437d){const _0x4f236e=resolveRemoteScriptTarget(_0x5a801e,_0x16e7fe,_0x571581,_0x35929c[_0x32b179(0x7d)],_0x50c48);_0x4f236e&&!_0xe90fc2[_0x32b179(0x75)](_0x4f236e[_0x32b179(0x6b)])&&_0x2a888f[_0x32b179(0x8e)](_0x4f236e[_0x32b179(0x6b)]);}}const _0x511db0=_0x3a2fb9['length']===0x0&&_0x7af82c[_0x32b179(0x77)]===0x0&&_0x2a888f['length']===0x0;return{'ok':!![],'data':{'added':_0x3a2fb9,'modified':_0x7af82c,'unchanged':_0x5afc95,'remoteOnly':_0x2a888f},'message':_0x511db0?_0x32b179(0x72):_0x3a2fb9[_0x32b179(0x77)]+_0x32b179(0x82)+_0x7af82c[_0x32b179(0x77)]+_0x32b179(0x7c)+_0x5afc95[_0x32b179(0x77)]+_0x32b179(0x87)+(_0x2a888f['length']>0x0?',\x20'+_0x2a888f[_0x32b179(0x77)]+_0x32b179(0x6e):'')};}};