@lovrabet/rabetbase-cli 2.0.12 → 2.1.1-beta.0

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 (155) hide show
  1. package/README.md +2 -2
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.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/doc.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/index.js +1 -1
  21. package/lib/commands/app/list.js +1 -1
  22. package/lib/commands/app/remote.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/delete.js +1 -1
  28. package/lib/commands/bff/detail.js +1 -1
  29. package/lib/commands/bff/index.js +1 -1
  30. package/lib/commands/bff/list.js +1 -1
  31. package/lib/commands/bff/new.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 -0
  53. package/lib/commands/db/analyze-start.js +1 -0
  54. package/lib/commands/db/analyze-status.js +1 -0
  55. package/lib/commands/db/create.js +1 -0
  56. package/lib/commands/db/delete.js +1 -0
  57. package/lib/commands/db/detail.js +1 -0
  58. package/lib/commands/db/diff.js +1 -0
  59. package/lib/commands/db/index.js +1 -0
  60. package/lib/commands/db/list.js +1 -0
  61. package/lib/commands/db/shared.js +1 -0
  62. package/lib/commands/db/tables.js +1 -0
  63. package/lib/commands/db/test.js +1 -0
  64. package/lib/commands/db/update.js +1 -0
  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/project/create/enhanced-guided-create.js +1 -1
  81. package/lib/commands/project/create/format-elapsed.js +1 -1
  82. package/lib/commands/project/create/main.js +1 -1
  83. package/lib/commands/project/create/non-interactive.js +1 -1
  84. package/lib/commands/project/create/project-template-path.js +1 -1
  85. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  86. package/lib/commands/project/create/use-format-code.js +1 -1
  87. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  88. package/lib/commands/project/index.js +1 -1
  89. package/lib/commands/project/init.js +1 -1
  90. package/lib/commands/project/upgrade.js +1 -1
  91. package/lib/commands/registry.js +1 -1
  92. package/lib/commands/run/index.js +1 -1
  93. package/lib/commands/schema.js +1 -1
  94. package/lib/commands/skill/index.js +1 -1
  95. package/lib/commands/sql/detail.js +1 -1
  96. package/lib/commands/sql/exec.js +1 -1
  97. package/lib/commands/sql/index.js +1 -1
  98. package/lib/commands/sql/list.js +1 -1
  99. package/lib/commands/sql/pull.js +1 -0
  100. package/lib/commands/sql/save.js +1 -1
  101. package/lib/commands/sql/shared.js +1 -0
  102. package/lib/commands/sql/validate.js +1 -1
  103. package/lib/constant/cli.js +1 -1
  104. package/lib/constant/domain.js +1 -1
  105. package/lib/constant/env.js +1 -1
  106. package/lib/constant/paths.js +1 -1
  107. package/lib/context.js +1 -1
  108. package/lib/core/alias-resolver.js +1 -1
  109. package/lib/core/api-client.js +1 -1
  110. package/lib/core/bff/config.js +1 -1
  111. package/lib/core/bff/file-system.js +1 -1
  112. package/lib/core/bff/hash.js +1 -1
  113. package/lib/core/bff/lock.js +1 -1
  114. package/lib/core/bff/utils.js +1 -1
  115. package/lib/core/db-resolver.js +1 -1
  116. package/lib/core/sql-validator.js +1 -1
  117. package/lib/errors.js +1 -1
  118. package/lib/framework/build-all-flags.js +1 -1
  119. package/lib/framework/flags.js +1 -1
  120. package/lib/framework/help.js +1 -1
  121. package/lib/framework/index.js +1 -1
  122. package/lib/framework/output.js +1 -1
  123. package/lib/framework/response.js +1 -1
  124. package/lib/framework/runner.js +1 -1
  125. package/lib/framework/schema-export.js +1 -1
  126. package/lib/framework/types.js +1 -1
  127. package/lib/generated/build-info.js +1 -1
  128. package/lib/help.js +1 -1
  129. package/lib/skills/main.js +1 -1
  130. package/lib/skills/npx-skills-add.js +1 -1
  131. package/lib/telemetry/cli-command-trace.js +1 -1
  132. package/lib/telemetry/cli-help-trace.js +1 -1
  133. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  134. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  135. package/lib/telemetry/send-cli-trace-log.js +1 -1
  136. package/lib/utils/ai_config.js +1 -1
  137. package/lib/utils/apply-jq-filter.js +1 -1
  138. package/lib/utils/cdn-config.js +1 -1
  139. package/lib/utils/check-sdk-version.js +1 -1
  140. package/lib/utils/cli-version-check.js +1 -1
  141. package/lib/utils/config.js +1 -1
  142. package/lib/utils/copy-directory.js +1 -1
  143. package/lib/utils/file-utils.js +1 -1
  144. package/lib/utils/guides-cdn.js +1 -1
  145. package/lib/utils/http-client.js +1 -1
  146. package/lib/utils/is-non-interactive.js +1 -1
  147. package/lib/utils/logger.js +1 -1
  148. package/lib/utils/platform.js +1 -1
  149. package/lib/utils/rules-cdn.js +1 -1
  150. package/lib/utils/sleep.js +1 -1
  151. package/lib/utils/template-replacer.js +1 -1
  152. package/lib/utils/version.js +1 -1
  153. package/lib/utils/with-active-cookie.js +1 -1
  154. package/lib/utils/write-cli-side-channel.js +1 -0
  155. package/package.json +1 -1
@@ -1 +1 @@
1
- const a19_0x584327=a19_0x31cf;function a19_0x31cf(_0x1d8f3d,_0x598abf){_0x1d8f3d=_0x1d8f3d-0x1be;const _0x56fb4c=a19_0x56fb();let _0x31cf5b=_0x56fb4c[_0x1d8f3d];return _0x31cf5b;}(function(_0x27227a,_0x37a425){const _0x136875=a19_0x31cf,_0x31e9b3=_0x27227a();while(!![]){try{const _0x2fe3eb=parseInt(_0x136875(0x1c6))/0x1+parseInt(_0x136875(0x1cd))/0x2+-parseInt(_0x136875(0x1db))/0x3+-parseInt(_0x136875(0x1cc))/0x4*(parseInt(_0x136875(0x1c5))/0x5)+parseInt(_0x136875(0x1d6))/0x6*(-parseInt(_0x136875(0x1c1))/0x7)+-parseInt(_0x136875(0x1be))/0x8+-parseInt(_0x136875(0x1c9))/0x9*(-parseInt(_0x136875(0x1c0))/0xa);if(_0x2fe3eb===_0x37a425)break;else _0x31e9b3['push'](_0x31e9b3['shift']());}catch(_0x4c5ad8){_0x31e9b3['push'](_0x31e9b3['shift']());}}}(a19_0x56fb,0xc1795));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{appDefinedIn,resolveDefaultAppSource}from'../../commands/app/shared.js';async function execute(_0x643cb8){const _0x12949b=a19_0x31cf,{config:_0x415043,layers:_0x505158}=readRawConfigWithLayers(),{apps:apps={},defaultApp:_0x1f094b,currentApp:_0x85fdcb}=_0x415043,_0x3ca4a2=Object[_0x12949b(0x1dd)](apps),_0x37bda7=_0x505158[_0x12949b(0x1cf)][_0x12949b(0x1cb)]&&typeof _0x505158[_0x12949b(0x1cf)][_0x12949b(0x1cb)]===_0x12949b(0x1ca)?_0x505158[_0x12949b(0x1cf)][_0x12949b(0x1cb)]:{},_0x1e787f=_0x505158[_0x12949b(0x1d8)][_0x12949b(0x1cb)]&&typeof _0x505158[_0x12949b(0x1d8)][_0x12949b(0x1cb)]===_0x12949b(0x1ca)?_0x505158[_0x12949b(0x1d8)]['apps']:{};if(_0x3ca4a2[_0x12949b(0x1c7)]===0x0){const _0x1e1b58=_0x415043[_0x12949b(0x1d5)];if(_0x1e1b58)return{'ok':!![],'data':{'mode':_0x12949b(0x1dc),'appcode':_0x1e1b58,'env':_0x415043['env']},'message':'Single-app\x20mode.\x20Use\x20`'+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20enable\x20multi-app\x20mode.'};return{'ok':!![],'data':[],'message':_0x12949b(0x1d2)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x3bc171=resolveDefaultAppSource(_0x505158),_0x1b1b2c=_0x505158['projectConfig'][_0x12949b(0x1d4)]===![],_0x14f96d=_0x3ca4a2[_0x12949b(0x1c4)](([_0x27980c,_0x45ac09])=>({'name':_0x27980c,'appcode':_0x45ac09['appcode'],'definedIn':appDefinedIn(_0x27980c,_0x37bda7,_0x1e787f,_0x1b1b2c),'isDefault':_0x27980c===_0x1f094b,'isCurrent':_0x27980c===(_0x85fdcb??_0x1f094b),'env':_0x45ac09[_0x12949b(0x1d7)]??null,'apiDir':_0x45ac09[_0x12949b(0x1de)]??null,'hasCookie':!!_0x45ac09[_0x12949b(0x1bf)],'hasAccessKey':!!_0x45ac09[_0x12949b(0x1c3)],'format':_0x45ac09[_0x12949b(0x1ce)]??null,'pageSize':_0x45ac09[_0x12949b(0x1d0)]??null,'riskLevel':_0x45ac09['riskLevel']??null,'locale':_0x45ac09[_0x12949b(0x1d3)]??null}));return{'ok':!![],'data':{'items':_0x14f96d,'meta':{'globalPath':_0x505158[_0x12949b(0x1c8)]??null,'projectPath':_0x505158['projectPath']??null,'defaultApp':_0x1f094b??null,'defaultAppSource':_0x1f094b!=null?_0x3bc171:null}}};}export const appListDefinition={'service':a19_0x584327(0x1d9),'command':a19_0x584327(0x1d1),'description':a19_0x584327(0x1c2),'risk':a19_0x584327(0x1da),'requiresAuth':![],'requiresAppCode':![],'flags':[],'execute':execute};function a19_0x56fb(){const _0x45356b=['419316ZlGsEr','format','globalConfig','pageSize','list','No\x20apps\x20configured.\x20Use\x20`','locale','inherit','appcode','122712gCltNq','env','projectConfig','app','read','4675890ndoGad','single-app','entries','apiDir','8461816TBevqP','cookie','17481790LmUnQh','119UQtDmM','List\x20all\x20configured\x20apps','accessKey','map','760570dgPDEt','202608HEfoXl','length','globalPath','18pQnrgl','object','apps','4krztcw'];a19_0x56fb=function(){return _0x45356b;};return a19_0x56fb();}
1
+ const a19_0x570dde=a19_0x3ee5;(function(_0x231236,_0x573c98){const _0x1771ad=a19_0x3ee5,_0x2bcd53=_0x231236();while(!![]){try{const _0x352c47=-parseInt(_0x1771ad(0xc4))/0x1*(-parseInt(_0x1771ad(0xb5))/0x2)+-parseInt(_0x1771ad(0xbc))/0x3+parseInt(_0x1771ad(0xc0))/0x4*(-parseInt(_0x1771ad(0x97))/0x5)+parseInt(_0x1771ad(0xb4))/0x6+parseInt(_0x1771ad(0xb1))/0x7*(parseInt(_0x1771ad(0x9b))/0x8)+-parseInt(_0x1771ad(0x9d))/0x9+parseInt(_0x1771ad(0xa4))/0xa*(parseInt(_0x1771ad(0x9f))/0xb);if(_0x352c47===_0x573c98)break;else _0x2bcd53['push'](_0x2bcd53['shift']());}catch(_0x2e0ff7){_0x2bcd53['push'](_0x2bcd53['shift']());}}}(a19_0x2a71,0x1b716));import{readRawConfigWithLayers}from'../../context.js';function a19_0x2a71(){const _0x5207b2=['project','1369044DntNVh','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','200959CGbQaG','globalConfig','object','length','merged','150jfEBUx','\x20config','boolean','map','app','entries','env','read','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','keys','projectPath','apps','find','7CGZiFT','riskLevel','appcode','342222wbQLBd','4856zfAJrJ','locale','pageSize','cookie','format','projectConfig','global','281664hVbvmq','apiDir','globalPath','.\x20Use\x20`','4inHlJm','List\x20all\x20configured\x20apps','No\x20apps\x20configured','list','23bxNprI','inherit','204285rqALjL','accessKey','push','bool','98808BDewOA'];a19_0x2a71=function(){return _0x5207b2;};return a19_0x2a71();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{appDefinedIn,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x1e9456,_0x58c436){const _0x81c5e9=a19_0x3ee5,_0x26859f=[],_0x17cd10=_0x1e9456[_0x81c5e9(0xaf)]&&typeof _0x1e9456[_0x81c5e9(0xaf)]===_0x81c5e9(0xa1)?_0x1e9456[_0x81c5e9(0xaf)]:{},_0x40f52d=_0x1e9456['defaultApp']||undefined;for(const [_0x530bf0,_0x268f3a]of Object[_0x81c5e9(0xa9)](_0x17cd10)){if(!_0x268f3a||typeof _0x268f3a!==_0x81c5e9(0xa1)||!_0x268f3a[_0x81c5e9(0xb3)])continue;_0x26859f['push']({'name':_0x530bf0,'appcode':_0x268f3a[_0x81c5e9(0xb3)],'named':!![],'definedIn':_0x58c436,'isDefault':_0x530bf0===_0x40f52d,'env':_0x268f3a[_0x81c5e9(0xaa)]??null,'apiDir':_0x268f3a[_0x81c5e9(0xbd)]??null,'hasCookie':!!_0x268f3a[_0x81c5e9(0xb8)],'hasAccessKey':!!_0x268f3a[_0x81c5e9(0x98)],'format':_0x268f3a[_0x81c5e9(0xb9)]??null,'pageSize':_0x268f3a[_0x81c5e9(0xb7)]??null,'riskLevel':_0x268f3a[_0x81c5e9(0xb2)]??null,'locale':_0x268f3a[_0x81c5e9(0xb6)]??null});}const _0xf5381d=Object['keys'](_0x17cd10)['length']>0x0,_0x54ae11=_0x1e9456[_0x81c5e9(0xb3)]||_0x1e9456[_0x81c5e9(0xa8)];return _0x54ae11&&!_0xf5381d&&_0x26859f['push']({'name':null,'appcode':String(_0x54ae11),'named':![],'definedIn':_0x58c436,'isDefault':![],'env':_0x1e9456[_0x81c5e9(0xaa)]??null,'apiDir':_0x1e9456[_0x81c5e9(0xbd)]??null,'hasCookie':!!_0x1e9456[_0x81c5e9(0xb8)],'hasAccessKey':!!_0x1e9456['accessKey'],'format':_0x1e9456[_0x81c5e9(0xb9)]??null,'pageSize':_0x1e9456[_0x81c5e9(0xb7)]??null,'riskLevel':_0x1e9456[_0x81c5e9(0xb2)]??null,'locale':_0x1e9456[_0x81c5e9(0xb6)]??null}),_0x26859f;}function buildMergedItems(_0x398d50,_0x4fbd13){const _0x109794=a19_0x3ee5,{apps:apps={},defaultApp:_0x326d27,currentApp:_0x567007}=_0x398d50,_0x220c83=_0x4fbd13[_0x109794(0xa0)][_0x109794(0xaf)]&&typeof _0x4fbd13[_0x109794(0xa0)][_0x109794(0xaf)]===_0x109794(0xa1)?_0x4fbd13[_0x109794(0xa0)][_0x109794(0xaf)]:{},_0x472afd=_0x4fbd13[_0x109794(0xba)][_0x109794(0xaf)]&&typeof _0x4fbd13['projectConfig'][_0x109794(0xaf)]==='object'?_0x4fbd13['projectConfig']['apps']:{},_0x57d711=_0x4fbd13[_0x109794(0xba)][_0x109794(0xc5)]===![],_0x1a565e=Object[_0x109794(0xa9)](apps),_0x13b7f1=_0x1a565e[_0x109794(0xa7)](([_0x167b1f,_0x214e13])=>({'name':_0x167b1f,'appcode':_0x214e13[_0x109794(0xb3)],'named':!![],'definedIn':appDefinedIn(_0x167b1f,_0x220c83,_0x472afd,_0x57d711),'isDefault':_0x167b1f===_0x326d27,'isCurrent':_0x167b1f===(_0x567007??_0x326d27),'env':_0x214e13[_0x109794(0xaa)]??null,'apiDir':_0x214e13[_0x109794(0xbd)]??null,'hasCookie':!!_0x214e13[_0x109794(0xb8)],'hasAccessKey':!!_0x214e13[_0x109794(0x98)],'format':_0x214e13[_0x109794(0xb9)]??null,'pageSize':_0x214e13[_0x109794(0xb7)]??null,'riskLevel':_0x214e13[_0x109794(0xb2)]??null,'locale':_0x214e13[_0x109794(0xb6)]??null})),_0x3f59d2=(_0x4fbd13[_0x109794(0xba)][_0x109794(0xb3)]||_0x4fbd13[_0x109794(0xba)][_0x109794(0xa8)])&&(!_0x4fbd13[_0x109794(0xba)][_0x109794(0xaf)]||Object[_0x109794(0xad)](_0x4fbd13[_0x109794(0xba)][_0x109794(0xaf)])[_0x109794(0xa2)]===0x0)?String(_0x4fbd13['projectConfig'][_0x109794(0xb3)]||_0x4fbd13[_0x109794(0xba)][_0x109794(0xa8)]):undefined,_0x3a6248=(_0x4fbd13['globalConfig'][_0x109794(0xb3)]||_0x4fbd13[_0x109794(0xa0)][_0x109794(0xa8)])&&(!_0x4fbd13[_0x109794(0xa0)]['apps']||Object[_0x109794(0xad)](_0x4fbd13[_0x109794(0xa0)][_0x109794(0xaf)])[_0x109794(0xa2)]===0x0)?String(_0x4fbd13[_0x109794(0xa0)][_0x109794(0xb3)]||_0x4fbd13[_0x109794(0xa0)][_0x109794(0xa8)]):undefined;if(_0x3f59d2)_0x13b7f1[_0x109794(0x99)]({'name':null,'appcode':_0x3f59d2,'named':![],'definedIn':_0x109794(0x9c),'isDefault':![],'isCurrent':!_0x326d27,'env':_0x4fbd13['projectConfig']['env']??null,'apiDir':_0x4fbd13[_0x109794(0xba)][_0x109794(0xbd)]??null,'hasCookie':!!_0x4fbd13[_0x109794(0xba)]['cookie'],'hasAccessKey':!!_0x4fbd13[_0x109794(0xba)]['accessKey'],'format':_0x4fbd13[_0x109794(0xba)][_0x109794(0xb9)]??null,'pageSize':_0x4fbd13['projectConfig']['pageSize']??null,'riskLevel':_0x4fbd13['projectConfig'][_0x109794(0xb2)]??null,'locale':_0x4fbd13[_0x109794(0xba)][_0x109794(0xb6)]??null});else _0x3a6248&&_0x1a565e[_0x109794(0xa2)]===0x0&&_0x13b7f1[_0x109794(0x99)]({'name':null,'appcode':_0x3a6248,'named':![],'definedIn':'global','isDefault':![],'isCurrent':!_0x326d27,'env':_0x4fbd13[_0x109794(0xa0)][_0x109794(0xaa)]??null,'apiDir':_0x4fbd13['globalConfig'][_0x109794(0xbd)]??null,'hasCookie':!!_0x4fbd13[_0x109794(0xa0)][_0x109794(0xb8)],'hasAccessKey':!!_0x4fbd13['globalConfig'][_0x109794(0x98)],'format':_0x4fbd13[_0x109794(0xa0)][_0x109794(0xb9)]??null,'pageSize':_0x4fbd13[_0x109794(0xa0)][_0x109794(0xb7)]??null,'riskLevel':_0x4fbd13[_0x109794(0xa0)][_0x109794(0xb2)]??null,'locale':_0x4fbd13[_0x109794(0xa0)][_0x109794(0xb6)]??null});return _0x13b7f1;}function a19_0x3ee5(_0x5b755f,_0x311f0d){_0x5b755f=_0x5b755f-0x97;const _0x2a7146=a19_0x2a71();let _0x3ee546=_0x2a7146[_0x5b755f];return _0x3ee546;}async function execute(_0x5d9932){const _0x126950=a19_0x3ee5,_0x3a08b8=_0x5d9932[_0x126950(0x9a)]('global'),_0xd76da8=_0x5d9932[_0x126950(0x9a)](_0x126950(0x9c)),_0x582844=_0x3a08b8?_0x126950(0xbb):_0xd76da8?_0x126950(0x9c):_0x126950(0xa3),{config:_0x25fd61,layers:_0x3f4672}=readRawConfigWithLayers(),_0x49161e=resolveDefaultAppSource(_0x3f4672),{defaultApp:_0x53505d}=_0x25fd61;let _0x1795e3,_0x3ca40c;switch(_0x582844){case'global':_0x1795e3=buildItemsFromLayer(_0x3f4672[_0x126950(0xa0)],'global'),_0x3ca40c=_0x3f4672['globalPath'];break;case _0x126950(0x9c):_0x1795e3=buildItemsFromLayer(_0x3f4672[_0x126950(0xba)],_0x126950(0x9c)),_0x3ca40c=_0x3f4672[_0x126950(0xae)];break;default:_0x1795e3=buildMergedItems(_0x25fd61,_0x3f4672);break;}if(_0x1795e3[_0x126950(0xa2)]===0x0){const _0x26595b=_0x582844===_0x126950(0xa3)?'':'\x20in\x20'+_0x582844+_0x126950(0xa5);return{'ok':!![],'data':[],'message':_0x126950(0xc2)+_0x26595b+_0x126950(0xbf)+CLI_BIN_NAME+_0x126950(0xac)};}const _0x2fb104=_0x1795e3[_0x126950(0xb0)](_0x55d110=>_0x55d110['isCurrent']===!![]),_0x349658=_0x53505d??_0x2fb104?.[_0x126950(0xb3)]??null,_0x384f3b=_0x582844===_0x126950(0xa3)?{'globalPath':_0x3f4672[_0x126950(0xbe)]??null,'projectPath':_0x3f4672['projectPath']??null,'defaultApp':_0x349658,'defaultAppSource':_0x53505d!=null?_0x49161e:null}:{'scope':_0x582844,'configPath':_0x3ca40c??null};return{'ok':!![],'data':{'items':_0x1795e3,'meta':_0x384f3b}};}export const appListDefinition={'service':a19_0x570dde(0xa8),'command':a19_0x570dde(0xc3),'description':a19_0x570dde(0xc1),'risk':a19_0x570dde(0xab),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a19_0x570dde(0xbb),'type':'boolean','description':'Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','default':![]},{'name':a19_0x570dde(0x9c),'type':a19_0x570dde(0xa6),'description':a19_0x570dde(0x9e),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a20_0x5edc7c=a20_0x9ff5;(function(_0x2f4cbd,_0x4227b2){const _0x33e7c7=a20_0x9ff5,_0x236512=_0x2f4cbd();while(!![]){try{const _0x6adcbe=parseInt(_0x33e7c7(0xe9))/0x1+-parseInt(_0x33e7c7(0xe7))/0x2*(-parseInt(_0x33e7c7(0xf7))/0x3)+-parseInt(_0x33e7c7(0xef))/0x4*(parseInt(_0x33e7c7(0xf2))/0x5)+parseInt(_0x33e7c7(0xea))/0x6+parseInt(_0x33e7c7(0xeb))/0x7*(-parseInt(_0x33e7c7(0xf0))/0x8)+parseInt(_0x33e7c7(0xf6))/0x9*(parseInt(_0x33e7c7(0xf5))/0xa)+parseInt(_0x33e7c7(0xee))/0xb;if(_0x6adcbe===_0x4227b2)break;else _0x236512['push'](_0x236512['shift']());}catch(_0x5aba6a){_0x236512['push'](_0x236512['shift']());}}}(a20_0x50a9,0xd18da));function a20_0x50a9(){const _0x28ee47=['app','8418278pioyGa','56aHqBOW','12746480tYvLtg','read','596495txKnWs','appDesc','../../core/api-client.js','10yOTqjG','9467613bfbEYC','3fUdvRB','appCode','map','3218638zNNlMW','cookie','620044pWFDGq','451248TKsHBD','7IMJxXR','appName'];a20_0x50a9=function(){return _0x28ee47;};return a20_0x50a9();}function a20_0x9ff5(_0x19fbb6,_0x49c038){_0x19fbb6=_0x19fbb6-0xe7;const _0x50a910=a20_0x50a9();let _0x9ff5df=_0x50a910[_0x19fbb6];return _0x9ff5df;}import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x17aa8a){const _0x4aea53=a20_0x9ff5,{setActiveCookie:_0x5b242f}=await import(_0x4aea53(0xf4));_0x5b242f(_0x17aa8a[_0x4aea53(0xe8)]);const _0x5f076f=await listRemoteApps(),_0x21e3ba=_0x5f076f[_0x4aea53(0xf9)](_0x5468=>({..._0x5468['id']!=null?{'id':_0x5468['id']}:{},'appCode':_0x5468[_0x4aea53(0xf8)],'appName':_0x5468[_0x4aea53(0xec)],..._0x5468[_0x4aea53(0xf3)]!=null?{'appDesc':_0x5468[_0x4aea53(0xf3)]}:{}}));return{'ok':!![],'data':_0x21e3ba};}export const appRemoteDefinition={'service':a20_0x5edc7c(0xed),'command':'remote','description':'List\x20apps\x20available\x20on\x20the\x20platform','risk':a20_0x5edc7c(0xf1),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ const a20_0x483a4a=a20_0x2a9b;(function(_0x5cd83b,_0x1d3a1c){const _0x3d42b5=a20_0x2a9b,_0x51a4cc=_0x5cd83b();while(!![]){try{const _0x15e4aa=parseInt(_0x3d42b5(0x108))/0x1+parseInt(_0x3d42b5(0x10f))/0x2*(parseInt(_0x3d42b5(0x102))/0x3)+parseInt(_0x3d42b5(0x111))/0x4+-parseInt(_0x3d42b5(0x110))/0x5*(parseInt(_0x3d42b5(0x106))/0x6)+-parseInt(_0x3d42b5(0x10d))/0x7*(-parseInt(_0x3d42b5(0x10e))/0x8)+parseInt(_0x3d42b5(0x103))/0x9+parseInt(_0x3d42b5(0x10a))/0xa*(-parseInt(_0x3d42b5(0x105))/0xb);if(_0x15e4aa===_0x1d3a1c)break;else _0x51a4cc['push'](_0x51a4cc['shift']());}catch(_0x22fdd6){_0x51a4cc['push'](_0x51a4cc['shift']());}}}(a20_0x185e,0xe5185));function a20_0x2a9b(_0x4a051c,_0x143c41){_0x4a051c=_0x4a051c-0x101;const _0x185e8d=a20_0x185e();let _0x2a9be3=_0x185e8d[_0x4a051c];return _0x2a9be3;}import{listRemoteApps}from'../../core/api-client.js';function a20_0x185e(){const _0x4a693a=['42CyVidJ','read','626323hFjVyH','List\x20apps\x20available\x20on\x20the\x20platform','3310ygUDpg','map','../../core/api-client.js','4340245pdthgj','8cexqZx','825876GzAyxy','273355AGTAUI','4706364qEAmmB','appDesc','6EzyrGH','3521079fflVYN','appCode','77066FdyxfO'];a20_0x185e=function(){return _0x4a693a;};return a20_0x185e();}async function execute(_0x20df05){const _0x38ad8b=a20_0x2a9b,{setActiveCookie:_0x2b336e}=await import(_0x38ad8b(0x10c));_0x2b336e(_0x20df05['cookie']);const _0x232977=await listRemoteApps(),_0x268487=_0x232977[_0x38ad8b(0x10b)](_0x5a4f5b=>({..._0x5a4f5b['id']!=null?{'id':_0x5a4f5b['id']}:{},'appCode':_0x5a4f5b[_0x38ad8b(0x104)],'appName':_0x5a4f5b['appName'],..._0x5a4f5b[_0x38ad8b(0x101)]!=null?{'appDesc':_0x5a4f5b['appDesc']}:{}}));return{'ok':!![],'data':_0x268487};}export const appRemoteDefinition={'service':'app','command':'remote','description':a20_0x483a4a(0x109),'risk':a20_0x483a4a(0x107),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -1 +1 @@
1
- function a21_0x5d53(_0x106b84,_0x5493d1){_0x106b84=_0x106b84-0x144;const _0x3e34bc=a21_0x3e34();let _0x5d5319=_0x3e34bc[_0x106b84];return _0x5d5319;}const a21_0x29adaa=a21_0x5d53;(function(_0x165b89,_0x2d351a){const _0x161d3e=a21_0x5d53,_0x5c2a7c=_0x165b89();while(!![]){try{const _0x1f284f=-parseInt(_0x161d3e(0x156))/0x1*(-parseInt(_0x161d3e(0x160))/0x2)+parseInt(_0x161d3e(0x15c))/0x3*(-parseInt(_0x161d3e(0x149))/0x4)+-parseInt(_0x161d3e(0x166))/0x5+parseInt(_0x161d3e(0x164))/0x6*(-parseInt(_0x161d3e(0x14b))/0x7)+-parseInt(_0x161d3e(0x145))/0x8+-parseInt(_0x161d3e(0x15f))/0x9+-parseInt(_0x161d3e(0x14c))/0xa*(-parseInt(_0x161d3e(0x161))/0xb);if(_0x1f284f===_0x2d351a)break;else _0x5c2a7c['push'](_0x5c2a7c['shift']());}catch(_0x50dd52){_0x5c2a7c['push'](_0x5c2a7c['shift']());}}}(a21_0x3e34,0x85ecf));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a21_0x3e34(){const _0x407322=['\x22\x20not\x20found.','remove','1221642kZCmiJ','10RmjDvZ','935FLZOkR','high-risk-write','defaultApp','12fjprSY','both','3506175BYsCJr','object','app','projectConfig','5256400qHmWlU','bool','App\x20\x22','\x20config.','840vvyvAL','project','3288068aVEdNA','336170cmxsYo','boolean','keys','name','\x22\x20still\x20defined\x20in\x20','\x20app\x20remove\x20<name>\x20[--global]','Usage:\x20','validation','length','apps','31427vCqimP','globalConfig','global','App\x20profile\x20name\x20to\x20remove','Missing\x20app\x20name.','trim','465MUHfUg'];a21_0x3e34=function(){return _0x407322;};return a21_0x3e34();}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x4f7c08){const _0x41f8c2=a21_0x5d53,_0x21fe53=_0x4f7c08['args'][0x0]?.[_0x41f8c2(0x15b)]();if(!_0x21fe53)throw CliErrors[_0x41f8c2(0x153)](_0x41f8c2(0x15a),_0x41f8c2(0x152)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}async function execute(_0x1be940){const _0x17e4b3=a21_0x5d53,_0x362f65=_0x1be940['args'][0x0]?.['trim']();if(!_0x362f65)throw CliErrors[_0x17e4b3(0x153)](_0x17e4b3(0x15a),_0x17e4b3(0x152)+CLI_BIN_NAME+_0x17e4b3(0x151));const _0x5f23b9=_0x1be940[_0x17e4b3(0x146)](_0x17e4b3(0x158)),{config:_0x4c7f59,layers:_0x2aa680}=readRawConfigWithLayers(),_0x39c579=_0x4c7f59['apps']??{};if(!_0x39c579[_0x362f65])throw CliErrors[_0x17e4b3(0x153)](_0x17e4b3(0x147)+_0x362f65+_0x17e4b3(0x15d));const _0x50718c=_0x2aa680[_0x17e4b3(0x157)]['apps']&&typeof _0x2aa680[_0x17e4b3(0x157)]['apps']===_0x17e4b3(0x167)?_0x2aa680['globalConfig'][_0x17e4b3(0x155)]:{},_0x4abb79=_0x2aa680[_0x17e4b3(0x144)][_0x17e4b3(0x155)]&&typeof _0x2aa680[_0x17e4b3(0x144)][_0x17e4b3(0x155)]===_0x17e4b3(0x167)?_0x2aa680['projectConfig'][_0x17e4b3(0x155)]:{},_0x722df7=appDefinedIn(_0x362f65,_0x50718c,_0x4abb79,_0x2aa680[_0x17e4b3(0x144)]['inherit']===![]),_0x23c566=resolveAppScopeForWrite(_0x362f65,_0x5f23b9,_0x2aa680),_0xbe12a2={'global':_0x23c566===_0x17e4b3(0x158)},_0x5a0dfb=readConfig(_0xbe12a2),_0x21de3a=_0x5a0dfb['apps'];if(!_0x21de3a||!_0x21de3a[_0x362f65])throw CliErrors[_0x17e4b3(0x153)]('App\x20\x22'+_0x362f65+'\x22\x20not\x20found.');delete _0x21de3a[_0x362f65];let _0x2a60d8='';if(_0x5a0dfb['defaultApp']===_0x362f65){const _0x2f817e=Object[_0x17e4b3(0x14e)](_0x21de3a);_0x5a0dfb[_0x17e4b3(0x163)]=_0x2f817e[_0x17e4b3(0x154)]>0x0?_0x2f817e[0x0]:undefined,_0x5a0dfb['defaultApp']?_0x2a60d8='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x5a0dfb[_0x17e4b3(0x163)]+'\x22.':delete _0x5a0dfb['defaultApp'];}Object['keys'](_0x21de3a)[_0x17e4b3(0x154)]===0x0&&(delete _0x5a0dfb['apps'],delete _0x5a0dfb[_0x17e4b3(0x163)]);writeConfig(_0x5a0dfb,_0xbe12a2);const _0x1cd23c=_0x722df7===_0x17e4b3(0x165)?'\x20Note:\x20app\x20\x22'+_0x362f65+_0x17e4b3(0x150)+(_0x23c566==='project'?_0x17e4b3(0x158):_0x17e4b3(0x14a))+_0x17e4b3(0x148):'';return{'ok':!![],'message':'Removed\x20app\x20\x22'+_0x362f65+'\x22'+scopeLabel(_0xbe12a2)+'.'+_0x2a60d8+_0x1cd23c};}export const appRemoveDefinition={'service':a21_0x29adaa(0x168),'command':a21_0x29adaa(0x15e),'description':'Remove\x20an\x20app\x20from\x20config','risk':a21_0x29adaa(0x162),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a21_0x29adaa(0x14f),'description':a21_0x29adaa(0x159),'required':!![]}],'flags':[{'name':a21_0x29adaa(0x158),'type':a21_0x29adaa(0x14d),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a21_0x50d527=a21_0x14ed;(function(_0x29f45e,_0x4b820d){const _0x1a1576=a21_0x14ed,_0x2b33da=_0x29f45e();while(!![]){try{const _0x377162=-parseInt(_0x1a1576(0x163))/0x1*(parseInt(_0x1a1576(0x154))/0x2)+parseInt(_0x1a1576(0x14e))/0x3*(-parseInt(_0x1a1576(0x14d))/0x4)+-parseInt(_0x1a1576(0x152))/0x5*(parseInt(_0x1a1576(0x151))/0x6)+-parseInt(_0x1a1576(0x16c))/0x7+-parseInt(_0x1a1576(0x159))/0x8+parseInt(_0x1a1576(0x148))/0x9*(parseInt(_0x1a1576(0x14f))/0xa)+parseInt(_0x1a1576(0x158))/0xb*(parseInt(_0x1a1576(0x162))/0xc);if(_0x377162===_0x4b820d)break;else _0x2b33da['push'](_0x2b33da['shift']());}catch(_0x474849){_0x2b33da['push'](_0x2b33da['shift']());}}}(a21_0x466d,0x6488c));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a21_0x14ed(_0x56c04e,_0x70c93e){_0x56c04e=_0x56c04e-0x147;const _0x466d3f=a21_0x466d();let _0x14ed9b=_0x466d3f[_0x56c04e];return _0x14ed9b;}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x4d8a15){const _0x249d48=a21_0x14ed,_0x1f102a=_0x4d8a15[_0x249d48(0x168)][0x0]?.[_0x249d48(0x15d)]();if(!_0x1f102a)throw CliErrors['validation'](_0x249d48(0x157),_0x249d48(0x156)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}async function execute(_0x4d2d30){const _0x24e18e=a21_0x14ed,_0x31f1e9=_0x4d2d30[_0x24e18e(0x168)][0x0]?.[_0x24e18e(0x15d)]();if(!_0x31f1e9)throw CliErrors[_0x24e18e(0x16d)](_0x24e18e(0x157),'Usage:\x20'+CLI_BIN_NAME+_0x24e18e(0x16a));const _0x38ecf7=_0x4d2d30[_0x24e18e(0x153)](_0x24e18e(0x147)),{config:_0x4a1579,layers:_0x133ca5}=readRawConfigWithLayers(),_0x549e61=_0x4a1579[_0x24e18e(0x14c)]??{};if(!_0x549e61[_0x31f1e9])throw CliErrors[_0x24e18e(0x16d)](_0x24e18e(0x161)+_0x31f1e9+_0x24e18e(0x15c));const _0x255cdd=_0x133ca5[_0x24e18e(0x149)][_0x24e18e(0x14c)]&&typeof _0x133ca5[_0x24e18e(0x149)][_0x24e18e(0x14c)]===_0x24e18e(0x14a)?_0x133ca5['globalConfig'][_0x24e18e(0x14c)]:{},_0x384472=_0x133ca5['projectConfig'][_0x24e18e(0x14c)]&&typeof _0x133ca5[_0x24e18e(0x15f)][_0x24e18e(0x14c)]===_0x24e18e(0x14a)?_0x133ca5['projectConfig']['apps']:{},_0x4483db=appDefinedIn(_0x31f1e9,_0x255cdd,_0x384472,_0x133ca5[_0x24e18e(0x15f)][_0x24e18e(0x15b)]===![]),_0x39f679=resolveAppScopeForWrite(_0x31f1e9,_0x38ecf7,_0x133ca5),_0x5c3439={'global':_0x39f679==='global'},_0x288567=readConfig(_0x5c3439),_0x4ef6ae=_0x288567[_0x24e18e(0x14c)];if(!_0x4ef6ae||!_0x4ef6ae[_0x31f1e9])throw CliErrors[_0x24e18e(0x16d)](_0x24e18e(0x161)+_0x31f1e9+_0x24e18e(0x15c));delete _0x4ef6ae[_0x31f1e9];let _0x21e426='';if(_0x288567[_0x24e18e(0x15e)]===_0x31f1e9){const _0x3a6979=Object[_0x24e18e(0x164)](_0x4ef6ae);_0x288567[_0x24e18e(0x15e)]=_0x3a6979['length']>0x0?_0x3a6979[0x0]:undefined,_0x288567[_0x24e18e(0x15e)]?_0x21e426=_0x24e18e(0x16b)+_0x288567[_0x24e18e(0x15e)]+'\x22.':delete _0x288567['defaultApp'];}Object[_0x24e18e(0x164)](_0x4ef6ae)[_0x24e18e(0x14b)]===0x0&&(delete _0x288567[_0x24e18e(0x14c)],delete _0x288567[_0x24e18e(0x15e)]);writeConfig(_0x288567,_0x5c3439);const _0x502f90=_0x4483db==='both'?_0x24e18e(0x155)+_0x31f1e9+_0x24e18e(0x150)+(_0x39f679===_0x24e18e(0x166)?_0x24e18e(0x147):_0x24e18e(0x166))+'\x20config.':'';return{'ok':!![],'message':_0x24e18e(0x16e)+_0x31f1e9+'\x22'+scopeLabel(_0x5c3439)+'.'+_0x21e426+_0x502f90};}function a21_0x466d(){const _0x58abf1=['globalConfig','object','length','apps','4BQSnhh','897378YuwZMB','10RZMoEW','\x22\x20still\x20defined\x20in\x20','18SNGmlb','275395xXxTga','bool','609686TPlEhI','\x20Note:\x20app\x20\x22','Usage:\x20','Missing\x20app\x20name.','44wwoYns','6065432ZPRPZN','Use\x20global\x20config\x20scope','inherit','\x22\x20not\x20found.','trim','defaultApp','projectConfig','high-risk-write','App\x20\x22','7435272UsVuEO','1uaFdRe','keys','Remove\x20an\x20app\x20from\x20config','project','remove','args','boolean','\x20app\x20remove\x20<name>\x20[--global]','\x20Default\x20app\x20changed\x20to\x20\x22','3842244AiLqCi','validation','Removed\x20app\x20\x22','global','86769FFALww'];a21_0x466d=function(){return _0x58abf1;};return a21_0x466d();}export const appRemoveDefinition={'service':'app','command':a21_0x50d527(0x167),'description':a21_0x50d527(0x165),'risk':a21_0x50d527(0x160),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':[{'name':a21_0x50d527(0x147),'type':a21_0x50d527(0x169),'description':a21_0x50d527(0x15a),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x1569e7,_0x3b8279){const _0x3aadd2=a22_0x4ed5,_0x113f7b=_0x1569e7();while(!![]){try{const _0x159287=parseInt(_0x3aadd2(0x183))/0x1+-parseInt(_0x3aadd2(0x164))/0x2+parseInt(_0x3aadd2(0x170))/0x3+-parseInt(_0x3aadd2(0x16d))/0x4+-parseInt(_0x3aadd2(0x182))/0x5*(parseInt(_0x3aadd2(0x175))/0x6)+parseInt(_0x3aadd2(0x165))/0x7*(parseInt(_0x3aadd2(0x179))/0x8)+parseInt(_0x3aadd2(0x181))/0x9*(parseInt(_0x3aadd2(0x16a))/0xa);if(_0x159287===_0x3b8279)break;else _0x113f7b['push'](_0x113f7b['shift']());}catch(_0x1a56bb){_0x113f7b['push'](_0x113f7b['shift']());}}}(a22_0xc374,0xccc4d));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';function a22_0x4ed5(_0x2296d3,_0x409e55){_0x2296d3=_0x2296d3-0x164;const _0xc37476=a22_0xc374();let _0x4ed508=_0xc37476[_0x2296d3];return _0x4ed508;}export function resolveAppScopeForWrite(_0x42e208,_0x317c4a,_0x49fb3e){const _0x9cd761=a22_0x4ed5;if(_0x317c4a)return _0x9cd761(0x17b);const _0x5d7d82=_0x49fb3e['projectConfig']['apps']&&typeof _0x49fb3e[_0x9cd761(0x166)][_0x9cd761(0x16f)]==='object'?_0x49fb3e['projectConfig']['apps']:{},_0x3e5062=_0x49fb3e[_0x9cd761(0x17e)][_0x9cd761(0x16f)]&&typeof _0x49fb3e[_0x9cd761(0x17e)][_0x9cd761(0x16f)]===_0x9cd761(0x185)?_0x49fb3e['globalConfig'][_0x9cd761(0x16f)]:{};if(Object[_0x9cd761(0x17c)]['hasOwnProperty'][_0x9cd761(0x16c)](_0x5d7d82,_0x42e208))return _0x9cd761(0x177);if(Object[_0x9cd761(0x17c)][_0x9cd761(0x169)][_0x9cd761(0x16c)](_0x3e5062,_0x42e208))return _0x9cd761(0x17b);return _0x9cd761(0x177);}export function appDefinedIn(_0x370492,_0x598c98,_0x109dbc,_0x28760c){const _0x4ac21e=a22_0x4ed5;if(_0x28760c)return Object[_0x4ac21e(0x17c)][_0x4ac21e(0x169)]['call'](_0x109dbc,_0x370492)?'project':'global';const _0x391976=Object['prototype'][_0x4ac21e(0x169)]['call'](_0x598c98,_0x370492),_0x5a2842=Object['prototype'][_0x4ac21e(0x169)][_0x4ac21e(0x16c)](_0x109dbc,_0x370492);if(_0x391976&&_0x5a2842)return'both';if(_0x5a2842)return _0x4ac21e(0x177);return _0x4ac21e(0x17b);}export function resolveDefaultAppSource(_0x48c89d){const _0x579c4e=a22_0x4ed5,_0x196b25=_0x48c89d[_0x579c4e(0x166)][_0x579c4e(0x16f)]&&typeof _0x48c89d[_0x579c4e(0x166)][_0x579c4e(0x16f)]==='object'?_0x48c89d[_0x579c4e(0x166)][_0x579c4e(0x16f)]:{};if('defaultApp'in _0x48c89d['projectConfig'])return _0x579c4e(0x177);if(Object[_0x579c4e(0x168)](_0x196b25)['length']>0x0)return _0x579c4e(0x177);if(_0x48c89d['projectConfig'][_0x579c4e(0x17d)]===![])return null;if(_0x48c89d[_0x579c4e(0x17e)][_0x579c4e(0x180)])return _0x579c4e(0x17b);return null;}function a22_0xc374(){const _0x5038af=['riskLevel','keys','hasOwnProperty','10lseLsO','app','call','912048obaiwx','\x20(global)','apps','673425GlkcKr','log','cookie','format','\x22\x20to\x20multi-app\x20config\x20(set\x20as\x20default).','6345114qdgkdb','locale','project','appcode','8IrLlro','Migrated\x20existing\x20app\x20\x22','global','prototype','inherit','globalConfig','accessKey','defaultApp','15308847bONwgm','5SUBhqJ','431634oXmRDh','env','object','1900868vdaqOd','5023242kzdrmz','projectConfig'];a22_0xc374=function(){return _0x5038af;};return a22_0xc374();}export function getConfigPath(_0x12ae43={}){const _0x32471c=a22_0x4ed5,_0x35fa6c=_0x12ae43['global']?_0x32471c(0x17b):'project';return resolveWriteConfigPath(_0x35fa6c);}export function readConfig(_0x49d4ba={}){return readConfigFile(getConfigPath(_0x49d4ba));}export function writeConfig(_0x2e04f8,_0x3cf2bb={}){writeConfigFile(getConfigPath(_0x3cf2bb),_0x2e04f8);}export function scopeLabel(_0x444a61){const _0x273ee9=a22_0x4ed5;return _0x444a61['global']?_0x273ee9(0x16e):'';}export function migrateLegacySingleApp(_0x538da2,_0x344159){const _0x2ddb4d=a22_0x4ed5,_0x17a7cf=_0x538da2[_0x2ddb4d(0x178)]||_0x538da2[_0x2ddb4d(0x16b)];if(!_0x17a7cf)return;const _0x5db0c7=String(_0x17a7cf);if(_0x5db0c7===_0x344159)return;const _0x3fc64f=[_0x2ddb4d(0x184),'apiDir',_0x2ddb4d(0x172),_0x2ddb4d(0x17f),_0x2ddb4d(0x173),'pageSize',_0x2ddb4d(0x167),_0x2ddb4d(0x176)],_0x2c445c={'appcode':_0x17a7cf};for(const _0x4544f4 of _0x3fc64f){if(_0x538da2[_0x4544f4]!=null)_0x2c445c[_0x4544f4]=_0x538da2[_0x4544f4];}_0x538da2[_0x2ddb4d(0x16f)][_0x5db0c7]=_0x2c445c,_0x538da2[_0x2ddb4d(0x180)]=_0x5db0c7,delete _0x538da2['appcode'],delete _0x538da2[_0x2ddb4d(0x16b)],console[_0x2ddb4d(0x171)](_0x2ddb4d(0x17a)+_0x5db0c7+_0x2ddb4d(0x174));}
1
+ function a22_0x4008(_0x16ecb7,_0x2b2c59){_0x16ecb7=_0x16ecb7-0x6e;const _0x523b82=a22_0x523b();let _0x40082e=_0x523b82[_0x16ecb7];return _0x40082e;}(function(_0x504d47,_0x3abedf){const _0x3d3e13=a22_0x4008,_0x47f984=_0x504d47();while(!![]){try{const _0x10458b=parseInt(_0x3d3e13(0x6e))/0x1+parseInt(_0x3d3e13(0x7a))/0x2+parseInt(_0x3d3e13(0x7d))/0x3*(parseInt(_0x3d3e13(0x73))/0x4)+parseInt(_0x3d3e13(0x79))/0x5*(parseInt(_0x3d3e13(0x87))/0x6)+parseInt(_0x3d3e13(0x8d))/0x7+-parseInt(_0x3d3e13(0x7b))/0x8+-parseInt(_0x3d3e13(0x8e))/0x9*(parseInt(_0x3d3e13(0x75))/0xa);if(_0x10458b===_0x3abedf)break;else _0x47f984['push'](_0x47f984['shift']());}catch(_0x40915a){_0x47f984['push'](_0x47f984['shift']());}}}(a22_0x523b,0x1df7a));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function resolveAppScopeForWrite(_0x11be79,_0x5e5eae,_0x40fea4){const _0x1015de=a22_0x4008;if(_0x5e5eae)return _0x1015de(0x89);const _0x4afa80=_0x40fea4[_0x1015de(0x71)]['apps']&&typeof _0x40fea4[_0x1015de(0x71)][_0x1015de(0x78)]===_0x1015de(0x81)?_0x40fea4[_0x1015de(0x71)][_0x1015de(0x78)]:{},_0x23fe73=_0x40fea4[_0x1015de(0x8a)][_0x1015de(0x78)]&&typeof _0x40fea4['globalConfig'][_0x1015de(0x78)]===_0x1015de(0x81)?_0x40fea4[_0x1015de(0x8a)][_0x1015de(0x78)]:{};if(Object[_0x1015de(0x72)][_0x1015de(0x7e)]['call'](_0x4afa80,_0x11be79))return _0x1015de(0x8c);if(Object[_0x1015de(0x72)][_0x1015de(0x7e)][_0x1015de(0x8b)](_0x23fe73,_0x11be79))return'global';return _0x1015de(0x8c);}export function appDefinedIn(_0x210a9c,_0x181e0d,_0x57f208,_0x2d9181){const _0x4b5c52=a22_0x4008;if(_0x2d9181)return Object[_0x4b5c52(0x72)]['hasOwnProperty'][_0x4b5c52(0x8b)](_0x57f208,_0x210a9c)?_0x4b5c52(0x8c):'global';const _0x53fcdc=Object['prototype'][_0x4b5c52(0x7e)][_0x4b5c52(0x8b)](_0x181e0d,_0x210a9c),_0x7e1306=Object[_0x4b5c52(0x72)]['hasOwnProperty']['call'](_0x57f208,_0x210a9c);if(_0x53fcdc&&_0x7e1306)return _0x4b5c52(0x88);if(_0x7e1306)return _0x4b5c52(0x8c);return _0x4b5c52(0x89);}export function resolveDefaultAppSource(_0x36120b){const _0x4e42a7=a22_0x4008,_0x1fb838=_0x36120b[_0x4e42a7(0x71)]['apps']&&typeof _0x36120b['projectConfig'][_0x4e42a7(0x78)]===_0x4e42a7(0x81)?_0x36120b[_0x4e42a7(0x71)][_0x4e42a7(0x78)]:{};if(_0x4e42a7(0x85)in _0x36120b[_0x4e42a7(0x71)])return _0x4e42a7(0x8c);if(Object[_0x4e42a7(0x70)](_0x1fb838)['length']>0x0)return'project';if(_0x36120b[_0x4e42a7(0x71)][_0x4e42a7(0x7c)]===![])return null;if(_0x36120b[_0x4e42a7(0x8a)]['defaultApp'])return'global';return null;}export function getConfigPath(_0x5619db={}){const _0x1831eb=a22_0x4008,_0x252ada=_0x5619db[_0x1831eb(0x89)]?_0x1831eb(0x89):_0x1831eb(0x8c);return resolveWriteConfigPath(_0x252ada);}function a22_0x523b(){const _0x4e70f9=['396296Hgynlk','pageSize','520MvytCe','apiDir','format','apps','60qcfOvG','172786HoWrgZ','606344Mewemu','inherit','6VgNpPX','hasOwnProperty','riskLevel','\x20(global)','object','cookie','locale','appcode','defaultApp','app','15414vvbfHz','both','global','globalConfig','call','project','714329rqKkdg','37890ktwZyC','43kycgnj','Migrated\x20existing\x20app\x20\x22','keys','projectConfig','prototype'];a22_0x523b=function(){return _0x4e70f9;};return a22_0x523b();}export function readConfig(_0x22f6d0={}){return readConfigFile(getConfigPath(_0x22f6d0));}export function writeConfig(_0x4a6819,_0x1e9ca3={}){writeConfigFile(getConfigPath(_0x1e9ca3),_0x4a6819);}export function scopeLabel(_0x386429){const _0x234a97=a22_0x4008;return _0x386429[_0x234a97(0x89)]?_0x234a97(0x80):'';}export function migrateLegacySingleApp(_0x4293d8,_0x2a8705){const _0x24bc96=a22_0x4008,_0x29bb26=_0x4293d8[_0x24bc96(0x84)]||_0x4293d8[_0x24bc96(0x86)];if(!_0x29bb26)return undefined;const _0x2228d5=String(_0x29bb26);if(_0x2228d5===_0x2a8705)return undefined;const _0x1fc96c=['env',_0x24bc96(0x76),_0x24bc96(0x82),'accessKey',_0x24bc96(0x77),_0x24bc96(0x74),_0x24bc96(0x7f),_0x24bc96(0x83)],_0x5d2dcd={'appcode':_0x29bb26};for(const _0x11ad54 of _0x1fc96c){if(_0x4293d8[_0x11ad54]!=null)_0x5d2dcd[_0x11ad54]=_0x4293d8[_0x11ad54];}return _0x4293d8['apps'][_0x2228d5]=_0x5d2dcd,_0x4293d8[_0x24bc96(0x85)]=_0x2228d5,delete _0x4293d8['appcode'],delete _0x4293d8['app'],_0x24bc96(0x6f)+_0x2228d5+'\x22\x20to\x20multi-app\x20config\x20(set\x20as\x20default).';}
@@ -1 +1 @@
1
- const a23_0x9ecebc=a23_0x44db;(function(_0x2c8495,_0x14a14f){const _0x543ddd=a23_0x44db,_0x36ddf4=_0x2c8495();while(!![]){try{const _0x4de1f0=parseInt(_0x543ddd(0x14c))/0x1*(-parseInt(_0x543ddd(0x148))/0x2)+-parseInt(_0x543ddd(0x14f))/0x3+-parseInt(_0x543ddd(0x161))/0x4+parseInt(_0x543ddd(0x157))/0x5*(-parseInt(_0x543ddd(0x15f))/0x6)+-parseInt(_0x543ddd(0x146))/0x7*(-parseInt(_0x543ddd(0x14e))/0x8)+-parseInt(_0x543ddd(0x154))/0x9*(-parseInt(_0x543ddd(0x14a))/0xa)+parseInt(_0x543ddd(0x158))/0xb*(parseInt(_0x543ddd(0x159))/0xc);if(_0x4de1f0===_0x14a14f)break;else _0x36ddf4['push'](_0x36ddf4['shift']());}catch(_0x5a877f){_0x36ddf4['push'](_0x36ddf4['shift']());}}}(a23_0x442b,0x73791));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite}from'../../commands/app/shared.js';function a23_0x44db(_0x2176ad,_0x1b4b99){_0x2176ad=_0x2176ad-0x146;const _0x442b10=a23_0x442b();let _0x44dbfb=_0x442b10[_0x2176ad];return _0x44dbfb;}function a23_0x442b(){const _0x122cc9=['\x20app\x20use\x20<name>\x20[--global]','boolean','6HqtJuP','Default\x20app\x20set\x20to\x20\x22','2977760wSrPrX','Use\x20`','write','Use\x20global\x20config\x20scope','7kOysYg','validation','2gVdiKa','keys','16090AAirLZ','Usage:\x20','584053cNiGQe','trim','2881048BjmlgG','2056542ATyKoK','\x20app\x20add\x20','\x22\x20not\x20found.','global','Missing\x20app\x20name.','1773JqUgEY','name','join','3611375gbFgyn','5570741rEZgTo','60JPGXay','args','\x22\x20(appcode:\x20','Switch\x20the\x20default\x20app'];a23_0x442b=function(){return _0x122cc9;};return a23_0x442b();}async function validateArgs(_0x13ab7e){const _0x4255dd=a23_0x44db,_0x448ee1=_0x13ab7e[_0x4255dd(0x15a)][0x0]?.[_0x4255dd(0x14d)]();if(!_0x448ee1)throw CliErrors[_0x4255dd(0x147)](_0x4255dd(0x153),_0x4255dd(0x14b)+CLI_BIN_NAME+_0x4255dd(0x15d));}async function execute(_0xb5d013){const _0x3e3199=a23_0x44db,_0x57a3cf=_0xb5d013[_0x3e3199(0x15a)][0x0]?.[_0x3e3199(0x14d)]();if(!_0x57a3cf)throw CliErrors[_0x3e3199(0x147)](_0x3e3199(0x153),_0x3e3199(0x14b)+CLI_BIN_NAME+_0x3e3199(0x15d));const _0x3ff64f=_0xb5d013['bool'](_0x3e3199(0x152)),{config:_0x1a66b6,layers:_0x5b07fa}=readRawConfigWithLayers(),_0x340e16=_0x1a66b6['apps']??{};if(!_0x340e16[_0x57a3cf]){const _0x44239b=Object[_0x3e3199(0x149)](_0x340e16),_0x4bfc51=_0x44239b['length']===0x0?_0x3e3199(0x162)+CLI_BIN_NAME+_0x3e3199(0x150)+_0x57a3cf+'\x20--appcode\x20<code>`\x20first.':'Available:\x20'+_0x44239b[_0x3e3199(0x156)](',\x20');throw CliErrors[_0x3e3199(0x147)]('App\x20\x22'+_0x57a3cf+_0x3e3199(0x151),_0x4bfc51);}const _0x13bc57=resolveAppScopeForWrite(_0x57a3cf,_0x3ff64f,_0x5b07fa),_0x2dfa54={'global':_0x13bc57==='global'},_0x1312b1=readConfig(_0x2dfa54);return _0x1312b1['defaultApp']=_0x57a3cf,writeConfig(_0x1312b1,_0x2dfa54),{'ok':!![],'message':_0x3e3199(0x160)+_0x57a3cf+_0x3e3199(0x15b)+_0x340e16[_0x57a3cf]['appcode']+')'+scopeLabel(_0x2dfa54)};}export const appUseDefinition={'service':'app','command':'use','description':a23_0x9ecebc(0x15c),'risk':a23_0x9ecebc(0x163),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a23_0x9ecebc(0x155),'description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':a23_0x9ecebc(0x152),'type':a23_0x9ecebc(0x15e),'description':a23_0x9ecebc(0x164),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a23_0x55addb=a23_0x490d;(function(_0x2b1cbc,_0x3cecda){const _0x55cec7=a23_0x490d,_0x49b31e=_0x2b1cbc();while(!![]){try{const _0x4ac77f=-parseInt(_0x55cec7(0x9d))/0x1*(parseInt(_0x55cec7(0x86))/0x2)+-parseInt(_0x55cec7(0x95))/0x3*(parseInt(_0x55cec7(0x99))/0x4)+parseInt(_0x55cec7(0x8e))/0x5*(parseInt(_0x55cec7(0x97))/0x6)+-parseInt(_0x55cec7(0x9e))/0x7*(parseInt(_0x55cec7(0x87))/0x8)+parseInt(_0x55cec7(0x93))/0x9*(-parseInt(_0x55cec7(0x8a))/0xa)+-parseInt(_0x55cec7(0x82))/0xb+parseInt(_0x55cec7(0x96))/0xc*(parseInt(_0x55cec7(0x92))/0xd);if(_0x4ac77f===_0x3cecda)break;else _0x49b31e['push'](_0x49b31e['shift']());}catch(_0x4bb36a){_0x49b31e['push'](_0x49b31e['shift']());}}}(a23_0x3e6e,0x7a2b7));import{CliErrors}from'../../errors.js';function a23_0x490d(_0x588da6,_0x53aae1){_0x588da6=_0x588da6-0x7d;const _0x3e6e1b=a23_0x3e6e();let _0x490db1=_0x3e6e1b[_0x588da6];return _0x490db1;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite}from'../../commands/app/shared.js';async function validateArgs(_0x201854){const _0x464798=a23_0x490d,_0x1cb13f=_0x201854[_0x464798(0x81)][0x0]?.[_0x464798(0x8c)]();if(!_0x1cb13f)throw CliErrors[_0x464798(0x88)](_0x464798(0x7e),_0x464798(0xa1)+CLI_BIN_NAME+_0x464798(0x7d));}async function execute(_0x196120){const _0x5b940c=a23_0x490d,_0x24916c=_0x196120['args'][0x0]?.[_0x5b940c(0x8c)]();if(!_0x24916c)throw CliErrors[_0x5b940c(0x88)](_0x5b940c(0x7e),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');const _0x58c446=_0x196120[_0x5b940c(0x8b)](_0x5b940c(0x94)),{config:_0x14cd12,layers:_0xb88cbb}=readRawConfigWithLayers(),_0x5a40fc=_0x14cd12[_0x5b940c(0x8f)]??{};if(!_0x5a40fc[_0x24916c]){const _0x33545e=Object['keys'](_0x5a40fc),_0x510c21=_0x33545e['length']===0x0?_0x5b940c(0x84)+CLI_BIN_NAME+_0x5b940c(0x9c)+_0x24916c+_0x5b940c(0x9f):_0x5b940c(0x8d)+_0x33545e[_0x5b940c(0x89)](',\x20');throw CliErrors[_0x5b940c(0x88)](_0x5b940c(0x7f)+_0x24916c+_0x5b940c(0x85),_0x510c21);}const _0x36a517=resolveAppScopeForWrite(_0x24916c,_0x58c446,_0xb88cbb),_0x5676c7={'global':_0x36a517==='global'},_0x4847b1=readConfig(_0x5676c7);return _0x4847b1['defaultApp']=_0x24916c,writeConfig(_0x4847b1,_0x5676c7),{'ok':!![],'message':_0x5b940c(0x91)+_0x24916c+'\x22\x20(appcode:\x20'+_0x5a40fc[_0x24916c]['appcode']+')'+scopeLabel(_0x5676c7)};}export const appUseDefinition={'service':a23_0x55addb(0x90),'command':'use','description':a23_0x55addb(0x9a),'risk':a23_0x55addb(0x9b),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a23_0x55addb(0x98),'description':a23_0x55addb(0xa0),'required':!![]}],'flags':[{'name':a23_0x55addb(0x94),'type':a23_0x55addb(0x83),'description':a23_0x55addb(0x80),'default':![]}],'validate':validateArgs,'execute':execute};function a23_0x3e6e(){const _0x2b59b0=['bool','trim','Available:\x20','5Ybfwhf','apps','app','Default\x20app\x20set\x20to\x20\x22','13JPpxLZ','81bgXkZq','global','2560707PJcWUP','35935452wtkWQS','2718396foioPt','name','4wcqAwF','Switch\x20the\x20default\x20app','write','\x20app\x20add\x20','34XcImzC','42jJdMft','\x20--appcode\x20<code>`\x20first.','App\x20profile\x20name\x20to\x20activate','Usage:\x20','\x20app\x20use\x20<name>\x20[--global]','Missing\x20app\x20name.','App\x20\x22','Use\x20global\x20config\x20scope','args','10674356vRsSZH','boolean','Use\x20`','\x22\x20not\x20found.','24962QOJHAY','664njkBPP','validation','join','776070dexIuw'];a23_0x3e6e=function(){return _0x2b59b0;};return a23_0x3e6e();}
@@ -1 +1 @@
1
- function a24_0x465b(_0x5469fe,_0x1eba55){_0x5469fe=_0x5469fe-0x17a;const _0x455940=a24_0x4559();let _0x465b6a=_0x455940[_0x5469fe];return _0x465b6a;}const a24_0x2e19a3=a24_0x465b;function a24_0x4559(){const _0x461e53=['!\x20Not\x20logged\x20in','../../auth/auth-server-ui.js','5914770akqHgV','write','4BifTgm','logout','643139rDUqIg','1648816lbTJud','922860dwenRy','log','login','4107992TqDniM','794078eHIdAw','✓\x20Logged\x20out','read','322488YtlFaJ','Login\x20via\x20browser','Clear\x20login\x20session'];a24_0x4559=function(){return _0x461e53;};return a24_0x4559();}(function(_0xd4b9f6,_0x598339){const _0x4bbe22=a24_0x465b,_0x2f64e9=_0xd4b9f6();while(!![]){try{const _0x467528=parseInt(_0x4bbe22(0x189))/0x1+-parseInt(_0x4bbe22(0x17d))/0x2+parseInt(_0x4bbe22(0x180))/0x3*(-parseInt(_0x4bbe22(0x187))/0x4)+parseInt(_0x4bbe22(0x18b))/0x5+parseInt(_0x4bbe22(0x185))/0x6+-parseInt(_0x4bbe22(0x17c))/0x7+-parseInt(_0x4bbe22(0x18a))/0x8;if(_0x467528===_0x598339)break;else _0x2f64e9['push'](_0x2f64e9['shift']());}catch(_0x190090){_0x2f64e9['push'](_0x2f64e9['shift']());}}}(a24_0x4559,0x7dfad));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':'auth','command':a24_0x2e19a3(0x17b),'description':a24_0x2e19a3(0x181),'risk':a24_0x2e19a3(0x17f),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x13b04b){const _0x30e9cf=a24_0x2e19a3,{runAuthServer:_0x578223}=await import(_0x30e9cf(0x184));return await _0x578223(),{'ok':!![]};}},{'service':'auth','command':a24_0x2e19a3(0x188),'description':a24_0x2e19a3(0x182),'risk':a24_0x2e19a3(0x186),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x590ae8){const _0x3ca524=a24_0x2e19a3;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x3ca524(0x17a)](_0x3ca524(0x17e))):console['log'](_0x3ca524(0x183)),{'ok':!![]};}}];
1
+ const a24_0x23b708=a24_0x450d;(function(_0x33315b,_0x1f4a76){const _0x26a184=a24_0x450d,_0x3da849=_0x33315b();while(!![]){try{const _0x433e23=-parseInt(_0x26a184(0x179))/0x1*(parseInt(_0x26a184(0x169))/0x2)+-parseInt(_0x26a184(0x171))/0x3*(-parseInt(_0x26a184(0x175))/0x4)+parseInt(_0x26a184(0x173))/0x5+parseInt(_0x26a184(0x168))/0x6*(-parseInt(_0x26a184(0x16d))/0x7)+-parseInt(_0x26a184(0x16a))/0x8+parseInt(_0x26a184(0x16c))/0x9+-parseInt(_0x26a184(0x176))/0xa;if(_0x433e23===_0x1f4a76)break;else _0x3da849['push'](_0x3da849['shift']());}catch(_0x29bfb9){_0x3da849['push'](_0x3da849['shift']());}}}(a24_0x223f,0x5152f));import{unlinkSync,existsSync}from'node:fs';function a24_0x223f(){const _0x29ddf9=['9949OnNkrL','log','1453362VYkBWx','6tqCIWz','726912AFtkiu','read','5619213dErgYa','7VTIkym','auth','Login\x20via\x20browser','login','12tyJvHE','../../auth/auth-server-ui.js','1128750BDDXgq','!\x20Not\x20logged\x20in','474160MyNIaZ','6282260dRFdIT','Clear\x20login\x20session','✓\x20Logged\x20out'];a24_0x223f=function(){return _0x29ddf9;};return a24_0x223f();}function a24_0x450d(_0x2f1538,_0x1c915a){_0x2f1538=_0x2f1538-0x168;const _0x223f86=a24_0x223f();let _0x450dab=_0x223f86[_0x2f1538];return _0x450dab;}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a24_0x23b708(0x16e),'command':a24_0x23b708(0x170),'description':a24_0x23b708(0x16f),'risk':a24_0x23b708(0x16b),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x37dde5){const _0x46ffa0=a24_0x23b708,{runAuthServer:_0x7f6671}=await import(_0x46ffa0(0x172));return await _0x7f6671(),{'ok':!![]};}},{'service':a24_0x23b708(0x16e),'command':'logout','description':a24_0x23b708(0x177),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x3086a2){const _0x360e2f=a24_0x23b708;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x360e2f(0x17a)](_0x360e2f(0x178))):console[_0x360e2f(0x17a)](_0x360e2f(0x174)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a25_0x349a86=a25_0x2f79;function a25_0x2f79(_0x12e3a1,_0x57d200){_0x12e3a1=_0x12e3a1-0x66;const _0x25e04f=a25_0x25e0();let _0x2f7962=_0x25e04f[_0x12e3a1];return _0x2f7962;}(function(_0x2e01e6,_0xbda4b3){const _0x3501d5=a25_0x2f79,_0x47d12b=_0x2e01e6();while(!![]){try{const _0x319314=parseInt(_0x3501d5(0x6a))/0x1+parseInt(_0x3501d5(0x67))/0x2+-parseInt(_0x3501d5(0x7e))/0x3+-parseInt(_0x3501d5(0x88))/0x4+parseInt(_0x3501d5(0x6d))/0x5+-parseInt(_0x3501d5(0x90))/0x6*(parseInt(_0x3501d5(0x81))/0x7)+-parseInt(_0x3501d5(0x85))/0x8*(-parseInt(_0x3501d5(0x84))/0x9);if(_0x319314===_0xbda4b3)break;else _0x47d12b['push'](_0x47d12b['shift']());}catch(_0x45aed2){_0x47d12b['push'](_0x47d12b['shift']());}}}(a25_0x25e0,0xda0c0));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffDelete={'service':'bff','command':a25_0x349a86(0x6b),'description':a25_0x349a86(0x6f),'risk':a25_0x349a86(0x6c),'flags':[{'name':a25_0x349a86(0x78),'type':a25_0x349a86(0x69),'required':!![],'description':'Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name'}],async 'validate'(_0x438145){const _0x4fe5=a25_0x349a86,_0x49d67d=loadBffProjectConfig(_0x438145['appCode']),_0x58c683=await readBffLockFile(_0x49d67d[_0x4fe5(0x76)]);if(!_0x58c683)throw CliErrors['validation']('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x5721bf){const _0x5b6c4e=a25_0x349a86,_0x43ff72=loadBffProjectConfig(_0x5721bf[_0x5b6c4e(0x6e)]),_0x200619=await readBffLockFile(_0x43ff72[_0x5b6c4e(0x76)]);if(!_0x200619)throw CliErrors['validation']('BFF\x20lock\x20file\x20not\x20found.');const {appLock:_0x36f1cd}=ensureLockScope(_0x200619,_0x5721bf[_0x5b6c4e(0x6e)],_0x43ff72[_0x5b6c4e(0x7c)],_0x5b6c4e(0x6b)),_0x36c3d1=_0x5721bf['str'](_0x5b6c4e(0x78)),_0x10cc86=Object['keys'](_0x36f1cd[_0x5b6c4e(0x87)]),_0x37e2d0=resolveDeleteTarget(_0x36c3d1,_0x10cc86),_0x26ebf7=_0x36f1cd['functions'][_0x37e2d0];if(!_0x26ebf7)throw CliErrors[_0x5b6c4e(0x70)](_0x5b6c4e(0x7a)+_0x37e2d0+'\x22.');const _0x20952d=resolveLocalFilePathFromLockKey(_0x43ff72,_0x37e2d0),_0x289e63=relative(_0x43ff72[_0x5b6c4e(0x77)],_0x20952d),_0x470390=join(_0x43ff72[_0x5b6c4e(0x79)],_0x5b6c4e(0x8a),_0x289e63);return{'method':_0x5b6c4e(0x7d),'url':_0x5b6c4e(0x8f),'body':{'appCode':_0x5721bf[_0x5b6c4e(0x6e)],'target':_0x37e2d0,'remoteId':_0x26ebf7[_0x5b6c4e(0x8c)],'localFilePath':_0x20952d,'trashedPath':_0x470390},'description':_0x5b6c4e(0x75)+_0x37e2d0+_0x5b6c4e(0x68)};},async 'execute'(_0x5777bd){const _0x1b9478=a25_0x349a86,_0x49d384=loadBffProjectConfig(_0x5777bd[_0x1b9478(0x6e)]),_0x97fe84=await readBffLockFile(_0x49d384[_0x1b9478(0x76)]);if(!_0x97fe84)throw CliErrors[_0x1b9478(0x70)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x410bae,appLock:_0x115a53}=ensureLockScope(_0x97fe84,_0x5777bd['appCode'],_0x49d384[_0x1b9478(0x7c)],_0x1b9478(0x6b)),_0x700ee3=_0x5777bd[_0x1b9478(0x83)]('target'),_0x112e48=Object['keys'](_0x115a53[_0x1b9478(0x87)]),_0x12f101=resolveDeleteTarget(_0x700ee3,_0x112e48),_0x1a635b=_0x115a53[_0x1b9478(0x87)][_0x12f101];if(!_0x1a635b)throw CliErrors['validation']('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x12f101+'\x22.');await deleteBffScript(_0x1a635b[_0x1b9478(0x8c)]),delete _0x115a53[_0x1b9478(0x87)][_0x12f101],_0x115a53[_0x1b9478(0x73)]=new Date()[_0x1b9478(0x71)](),await writeBffLockFile(_0x49d384['lockFilePath'],_0x410bae);const _0x2235b4=resolveLocalFilePathFromLockKey(_0x49d384,_0x12f101);let _0x4b88df;await fileExists(_0x2235b4)&&(_0x4b88df=await moveToTrash(_0x49d384[_0x1b9478(0x77)],_0x49d384[_0x1b9478(0x79)],_0x2235b4),await cleanupEmptyDirectories(dirname(_0x2235b4),_0x49d384['scriptsRootDir']));const _0x32f646={'deleted':_0x12f101,'remoteId':_0x1a635b['remoteId']};if(_0x4b88df)_0x32f646['trashedTo']=_0x4b88df;return{'ok':!![],'data':_0x32f646,'message':_0x1b9478(0x7b)+_0x12f101+(_0x4b88df?_0x1b9478(0x82):'')};}};function resolveDeleteTarget(_0x4b1c27,_0x56c44a){const _0xc79193=a25_0x349a86;if(_0x4b1c27['includes']('/')){const _0x4048a3=_0x56c44a[_0xc79193(0x8e)](_0x15030d=>_0x15030d===_0x4b1c27);if(!_0x4048a3)throw CliErrors['validation'](_0xc79193(0x86)+_0x4b1c27);return _0x4048a3;}const _0x2d5a08=_0x56c44a[_0xc79193(0x74)](_0x4dcf3e=>_0x4dcf3e[_0xc79193(0x89)]('/')['at'](-0x1)===_0x4b1c27);if(_0x2d5a08[_0xc79193(0x66)]===0x0)throw CliErrors['validation'](_0xc79193(0x86)+_0x4b1c27);if(_0x2d5a08[_0xc79193(0x66)]>0x1)throw CliErrors[_0xc79193(0x70)]('Multiple\x20functions\x20match\x20\x22'+_0x4b1c27+_0xc79193(0x8b)+_0x2d5a08[_0xc79193(0x8d)](_0x438040=>_0xc79193(0x72)+_0x438040)[_0xc79193(0x80)]('\x0a'));return _0x2d5a08[0x0];}async function moveToTrash(_0x1c8a00,_0x1210a3,_0x419d57){const _0x5d68b4=a25_0x349a86,_0x3b636a=new Date()[_0x5d68b4(0x71)]()[_0x5d68b4(0x7f)](/[:.]/g,'-'),_0x503aa2=relative(_0x1c8a00,_0x419d57),_0x3f7f58=join(_0x1210a3,_0x3b636a,_0x503aa2);return await mkdir(dirname(_0x3f7f58),{'recursive':!![]}),await rename(_0x419d57,_0x3f7f58),_0x3f7f58;}async function cleanupEmptyDirectories(_0x315740,_0x402ba1){const _0x1025a6=a25_0x349a86;let _0x19cebb=resolve(_0x315740);const _0x50d338=resolve(_0x402ba1);while(_0x19cebb['startsWith'](''+_0x50d338+sep)||_0x19cebb===_0x50d338){if(_0x19cebb===_0x50d338)return;try{const _0x52668e=await readdir(_0x19cebb);if(_0x52668e[_0x1025a6(0x66)]>0x0)return;await rmdir(_0x19cebb);}catch{return;}_0x19cebb=dirname(_0x19cebb);}}function a25_0x25e0(){const _0x351868=['target','trashDir','No\x20lock\x20entry\x20found\x20for\x20\x22','Deleted\x20','scriptsRoot','POST','2592402RbFAbD','replace','join','2804557WjVSHa','\x20(local\x20file\x20moved\x20to\x20trash)','str','27TZsaGb','536528QNQnYG','Function\x20not\x20found:\x20','functions','2042860IRuehf','split','<timestamp>','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','remoteId','map','find','/api/management/library/scripts/delete','18zHGEVe','length','1708938TpgMms','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','string','1674022ZrwNfw','delete','high-risk-write','3701165sHESyq','appCode','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','validation','toISOString','\x20\x20-\x20','lastSync','filter','Would\x20delete\x20','lockFilePath','projectRoot'];a25_0x25e0=function(){return _0x351868;};return a25_0x25e0();}
1
+ const a25_0x4a6f8a=a25_0x1768;(function(_0x4c3da1,_0x530f46){const _0xea113=a25_0x1768,_0x2b15b5=_0x4c3da1();while(!![]){try{const _0x265aa4=parseInt(_0xea113(0xaa))/0x1*(parseInt(_0xea113(0xbc))/0x2)+parseInt(_0xea113(0xaf))/0x3*(-parseInt(_0xea113(0x9b))/0x4)+parseInt(_0xea113(0x9e))/0x5*(-parseInt(_0xea113(0xad))/0x6)+-parseInt(_0xea113(0x9c))/0x7*(-parseInt(_0xea113(0xa1))/0x8)+parseInt(_0xea113(0x9f))/0x9*(-parseInt(_0xea113(0xa5))/0xa)+parseInt(_0xea113(0xa0))/0xb+parseInt(_0xea113(0xbb))/0xc*(-parseInt(_0xea113(0xca))/0xd);if(_0x265aa4===_0x530f46)break;else _0x2b15b5['push'](_0x2b15b5['shift']());}catch(_0x448aeb){_0x2b15b5['push'](_0x2b15b5['shift']());}}}(a25_0x5482,0xa94b4));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 a25_0x5482(){const _0x124085=['functions','startsWith','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','includes','692884PBPCiS','518xijlmB','trashDir','2099795bYiEVX','4849587VgZIMR','14555332CLAroc','49152IjGZFq','map','Function\x20not\x20found:\x20','high-risk-write','20xHohyl','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','\x20\x20-\x20','BFF\x20lock\x20file\x20not\x20found.','delete','1042jmFdRb','scriptsRoot','trashedTo','6zSmxlF','Multiple\x20functions\x20match\x20\x22','6upORdz','POST','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','keys','length','validation','join','split','replace','Would\x20delete\x20','str','projectRoot','12bNOsUX','1502xKyXwZ','lockFilePath','bff','appCode','scriptsRootDir','filter','\x20(local\x20file\x20moved\x20to\x20trash)','lastSync','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','No\x20lock\x20entry\x20found\x20for\x20\x22','remoteId','string','<timestamp>','find','297635HZsJeY','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'];a25_0x5482=function(){return _0x124085;};return a25_0x5482();}import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffDelete={'service':a25_0x4a6f8a(0xbe),'command':a25_0x4a6f8a(0xa9),'description':a25_0x4a6f8a(0xa6),'risk':a25_0x4a6f8a(0xa4),'flags':[{'name':'target','type':a25_0x4a6f8a(0xc7),'required':!![],'description':a25_0x4a6f8a(0xb1)}],async 'validate'(_0x458e28){const _0x183ebc=a25_0x4a6f8a,_0x3549d7=loadBffProjectConfig(_0x458e28[_0x183ebc(0xbf)]),_0xaf7692=await readBffLockFile(_0x3549d7[_0x183ebc(0xbd)]);if(!_0xaf7692)throw CliErrors['validation'](_0x183ebc(0x99));},async 'dryRun'(_0x2e41eb){const _0xdc0e60=a25_0x4a6f8a,_0x22360f=loadBffProjectConfig(_0x2e41eb[_0xdc0e60(0xbf)]),_0x198097=await readBffLockFile(_0x22360f[_0xdc0e60(0xbd)]);if(!_0x198097)throw CliErrors[_0xdc0e60(0xb4)]('BFF\x20lock\x20file\x20not\x20found.');const {appLock:_0x327e83}=ensureLockScope(_0x198097,_0x2e41eb[_0xdc0e60(0xbf)],_0x22360f[_0xdc0e60(0xab)],_0xdc0e60(0xa9)),_0x2d0a72=_0x2e41eb[_0xdc0e60(0xb9)]('target'),_0x750217=Object[_0xdc0e60(0xb2)](_0x327e83[_0xdc0e60(0xcc)]),_0x1e9667=resolveDeleteTarget(_0x2d0a72,_0x750217),_0x5486ef=_0x327e83[_0xdc0e60(0xcc)][_0x1e9667];if(!_0x5486ef)throw CliErrors[_0xdc0e60(0xb4)](_0xdc0e60(0xc5)+_0x1e9667+'\x22.');const _0x2f9146=resolveLocalFilePathFromLockKey(_0x22360f,_0x1e9667),_0x19d10f=relative(_0x22360f[_0xdc0e60(0xba)],_0x2f9146),_0x33de59=join(_0x22360f[_0xdc0e60(0x9d)],_0xdc0e60(0xc8),_0x19d10f);return{'method':_0xdc0e60(0xb0),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x2e41eb['appCode'],'target':_0x1e9667,'remoteId':_0x5486ef[_0xdc0e60(0xc6)],'localFilePath':_0x2f9146,'trashedPath':_0x33de59},'description':_0xdc0e60(0xb8)+_0x1e9667+_0xdc0e60(0xcb)};},async 'execute'(_0x3ddd31){const _0x20261f=a25_0x4a6f8a,_0x310d9d=loadBffProjectConfig(_0x3ddd31['appCode']),_0x2ac621=await readBffLockFile(_0x310d9d[_0x20261f(0xbd)]);if(!_0x2ac621)throw CliErrors[_0x20261f(0xb4)](_0x20261f(0xa8));const {lockData:_0x4b934d,appLock:_0x4f50d1}=ensureLockScope(_0x2ac621,_0x3ddd31[_0x20261f(0xbf)],_0x310d9d[_0x20261f(0xab)],'delete'),_0x641cfe=_0x3ddd31[_0x20261f(0xb9)]('target'),_0x4b4af5=Object['keys'](_0x4f50d1[_0x20261f(0xcc)]),_0x503036=resolveDeleteTarget(_0x641cfe,_0x4b4af5),_0x4b4068=_0x4f50d1[_0x20261f(0xcc)][_0x503036];if(!_0x4b4068)throw CliErrors['validation'](_0x20261f(0xc5)+_0x503036+'\x22.');await deleteBffScript(_0x4b4068['remoteId']),delete _0x4f50d1[_0x20261f(0xcc)][_0x503036],_0x4f50d1[_0x20261f(0xc3)]=new Date()['toISOString'](),await writeBffLockFile(_0x310d9d[_0x20261f(0xbd)],_0x4b934d);const _0x3e90ca=resolveLocalFilePathFromLockKey(_0x310d9d,_0x503036);let _0x1cffcf;await fileExists(_0x3e90ca)&&(_0x1cffcf=await moveToTrash(_0x310d9d[_0x20261f(0xba)],_0x310d9d[_0x20261f(0x9d)],_0x3e90ca),await cleanupEmptyDirectories(dirname(_0x3e90ca),_0x310d9d[_0x20261f(0xc0)]));const _0x1bb223={'deleted':_0x503036,'remoteId':_0x4b4068['remoteId']};if(_0x1cffcf)_0x1bb223[_0x20261f(0xac)]=_0x1cffcf;return{'ok':!![],'data':_0x1bb223,'message':'Deleted\x20'+_0x503036+(_0x1cffcf?_0x20261f(0xc2):'')};}};function resolveDeleteTarget(_0x5ec504,_0x4e69d7){const _0x5425d6=a25_0x4a6f8a;if(_0x5ec504[_0x5425d6(0x9a)]('/')){const _0x1a46f9=_0x4e69d7[_0x5425d6(0xc9)](_0x2ca423=>_0x2ca423===_0x5ec504);if(!_0x1a46f9)throw CliErrors['validation'](_0x5425d6(0xa3)+_0x5ec504);return _0x1a46f9;}const _0x48a93c=_0x4e69d7[_0x5425d6(0xc1)](_0x16232a=>_0x16232a[_0x5425d6(0xb6)]('/')['at'](-0x1)===_0x5ec504);if(_0x48a93c[_0x5425d6(0xb3)]===0x0)throw CliErrors[_0x5425d6(0xb4)]('Function\x20not\x20found:\x20'+_0x5ec504);if(_0x48a93c[_0x5425d6(0xb3)]>0x1)throw CliErrors[_0x5425d6(0xb4)](_0x5425d6(0xae)+_0x5ec504+_0x5425d6(0xc4)+_0x48a93c[_0x5425d6(0xa2)](_0x31a3bc=>_0x5425d6(0xa7)+_0x31a3bc)[_0x5425d6(0xb5)]('\x0a'));return _0x48a93c[0x0];}function a25_0x1768(_0x4c5d0b,_0x1282d0){_0x4c5d0b=_0x4c5d0b-0x99;const _0x5482f6=a25_0x5482();let _0x1768cc=_0x5482f6[_0x4c5d0b];return _0x1768cc;}async function moveToTrash(_0x440616,_0x2cc146,_0x5630a7){const _0x1f6058=a25_0x4a6f8a,_0x345f17=new Date()['toISOString']()[_0x1f6058(0xb7)](/[:.]/g,'-'),_0x4b13e5=relative(_0x440616,_0x5630a7),_0x91fe25=join(_0x2cc146,_0x345f17,_0x4b13e5);return await mkdir(dirname(_0x91fe25),{'recursive':!![]}),await rename(_0x5630a7,_0x91fe25),_0x91fe25;}async function cleanupEmptyDirectories(_0x3659eb,_0x5aa7e7){const _0x340dac=a25_0x4a6f8a;let _0x10ad05=resolve(_0x3659eb);const _0x239de1=resolve(_0x5aa7e7);while(_0x10ad05[_0x340dac(0xcd)](''+_0x239de1+sep)||_0x10ad05===_0x239de1){if(_0x10ad05===_0x239de1)return;try{const _0x2ba5a=await readdir(_0x10ad05);if(_0x2ba5a[_0x340dac(0xb3)]>0x0)return;await rmdir(_0x10ad05);}catch{return;}_0x10ad05=dirname(_0x10ad05);}}
@@ -1 +1 @@
1
- const a26_0x576da2=a26_0x413d;function a26_0x1ece(){const _0x2883c6=['3968GRTGLY','bff','num','33HfwXKx','updatedTime','appCode','Get\x20BFF\x20script\x20details\x20by\x20ID','number','scriptType','read','(none)','verbose','509265hoxmmJ','1967220ymMjVv','100542ooGKFf','66FfahTW','644mmStbK','317508qQCpRw','93hzrYJB','detail','Script\x20ID','bool','611442jJIctO','2764472HCpJZu','description','boolean'];a26_0x1ece=function(){return _0x2883c6;};return a26_0x1ece();}(function(_0x3f5ed2,_0x24b5fc){const _0x2775bd=a26_0x413d,_0x8de353=_0x3f5ed2();while(!![]){try{const _0x345dfb=parseInt(_0x2775bd(0x173))/0x1+parseInt(_0x2775bd(0x170))/0x2*(parseInt(_0x2775bd(0x174))/0x3)+parseInt(_0x2775bd(0x179))/0x4+parseInt(_0x2775bd(0x16e))/0x5*(-parseInt(_0x2775bd(0x171))/0x6)+parseInt(_0x2775bd(0x172))/0x7*(-parseInt(_0x2775bd(0x17c))/0x8)+parseInt(_0x2775bd(0x178))/0x9+parseInt(_0x2775bd(0x16f))/0xa*(-parseInt(_0x2775bd(0x17f))/0xb);if(_0x345dfb===_0x24b5fc)break;else _0x8de353['push'](_0x8de353['shift']());}catch(_0x53ae51){_0x8de353['push'](_0x8de353['shift']());}}}(a26_0x1ece,0xd68c0));import{getBffScriptInfo}from'../../core/api-client.js';function a26_0x413d(_0x30865e,_0x2cbd4c){_0x30865e=_0x30865e-0x169;const _0x1ecea2=a26_0x1ece();let _0x413d80=_0x1ecea2[_0x30865e];return _0x413d80;}export const bffDetail={'service':a26_0x576da2(0x17d),'command':a26_0x576da2(0x175),'description':a26_0x576da2(0x182),'risk':a26_0x576da2(0x16b),'flags':[{'name':'id','type':a26_0x576da2(0x169),'required':!![],'description':a26_0x576da2(0x176)},{'name':a26_0x576da2(0x16d),'type':a26_0x576da2(0x17b),'description':'Return\x20full\x20raw\x20script\x20object'}],async 'execute'(_0x25a1ae){const _0x213293=a26_0x576da2,_0x162ca4=await getBffScriptInfo(_0x25a1ae[_0x213293(0x17e)]('id')),_0x37254f=_0x25a1ae[_0x213293(0x177)](_0x213293(0x16d));if(_0x37254f)return{'ok':!![],'data':_0x162ca4};return{'ok':!![],'data':{'id':_0x162ca4['id'],'appCode':_0x162ca4[_0x213293(0x181)],'scriptType':_0x162ca4[_0x213293(0x16a)],'description':_0x162ca4[_0x213293(0x17a)]||_0x213293(0x16c),'createdTime':_0x162ca4['createdTime']??'','updatedTime':_0x162ca4[_0x213293(0x180)]??'','scriptContent':_0x162ca4['scriptContent']??''}};}};
1
+ const a26_0x46380c=a26_0x3ba4;(function(_0x15fb43,_0x2c2991){const _0x3e86c0=a26_0x3ba4,_0x5481d2=_0x15fb43();while(!![]){try{const _0x1fcaf6=parseInt(_0x3e86c0(0x87))/0x1*(parseInt(_0x3e86c0(0x7d))/0x2)+parseInt(_0x3e86c0(0x72))/0x3+parseInt(_0x3e86c0(0x81))/0x4*(-parseInt(_0x3e86c0(0x82))/0x5)+parseInt(_0x3e86c0(0x70))/0x6+parseInt(_0x3e86c0(0x7f))/0x7+-parseInt(_0x3e86c0(0x86))/0x8*(-parseInt(_0x3e86c0(0x73))/0x9)+-parseInt(_0x3e86c0(0x84))/0xa*(parseInt(_0x3e86c0(0x83))/0xb);if(_0x1fcaf6===_0x2c2991)break;else _0x5481d2['push'](_0x5481d2['shift']());}catch(_0x1ea4e5){_0x5481d2['push'](_0x5481d2['shift']());}}}(a26_0xadc9,0x28e70));function a26_0x3ba4(_0x373711,_0x573889){_0x373711=_0x373711-0x6d;const _0xadc94=a26_0xadc9();let _0x3ba4fd=_0xadc94[_0x373711];return _0x3ba4fd;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a26_0x46380c(0x6d),'command':a26_0x46380c(0x80),'description':a26_0x46380c(0x7c),'risk':a26_0x46380c(0x75),'flags':[{'name':'id','type':a26_0x46380c(0x7e),'required':!![],'description':a26_0x46380c(0x74)},{'name':a26_0x46380c(0x85),'type':'boolean','description':a26_0x46380c(0x7a)}],async 'execute'(_0x1aa512){const _0x27a220=a26_0x46380c,_0x2e84f0=await getBffScriptInfo(_0x1aa512[_0x27a220(0x7b)]('id')),_0x10ce96=_0x1aa512[_0x27a220(0x71)](_0x27a220(0x85));if(_0x10ce96)return{'ok':!![],'data':_0x2e84f0};return{'ok':!![],'data':{'id':_0x2e84f0['id'],'appCode':_0x2e84f0[_0x27a220(0x76)],'scriptType':_0x2e84f0['scriptType'],'description':_0x2e84f0[_0x27a220(0x6e)]||_0x27a220(0x6f),'createdTime':_0x2e84f0[_0x27a220(0x79)]??'','updatedTime':_0x2e84f0[_0x27a220(0x78)]??'','scriptContent':_0x2e84f0[_0x27a220(0x77)]??''}};}};function a26_0xadc9(){const _0x5a08ab=['482475WiINkD','2827tbIXcq','21590ajYkYK','verbose','483208qIMdPH','105211NJPuKN','bff','description','(none)','1670892Tecnbc','bool','361611uKfmOS','18bzCHjb','Script\x20ID','read','appCode','scriptContent','updatedTime','createdTime','Return\x20full\x20raw\x20script\x20object','num','Get\x20BFF\x20script\x20details\x20by\x20ID','2zbhpUd','number','2032499pnaZjh','detail','8jatsgd'];a26_0xadc9=function(){return _0x5a08ab;};return a26_0xadc9();}
@@ -1 +1 @@
1
- (function(_0x2f9c34,_0x19ad42){const _0x25429d=a27_0x38b8,_0x364acc=_0x2f9c34();while(!![]){try{const _0x2b424c=-parseInt(_0x25429d(0x97))/0x1+parseInt(_0x25429d(0x98))/0x2+-parseInt(_0x25429d(0x9e))/0x3*(parseInt(_0x25429d(0x9b))/0x4)+parseInt(_0x25429d(0x99))/0x5+parseInt(_0x25429d(0x96))/0x6*(-parseInt(_0x25429d(0x9d))/0x7)+parseInt(_0x25429d(0x95))/0x8*(parseInt(_0x25429d(0x9a))/0x9)+-parseInt(_0x25429d(0x9c))/0xa;if(_0x2b424c===_0x19ad42)break;else _0x364acc['push'](_0x364acc['shift']());}catch(_0x361211){_0x364acc['push'](_0x364acc['shift']());}}}(a27_0x189e,0x40052));import{bffList}from'../../commands/bff/list.js';function a27_0x38b8(_0x5df981,_0x1992b3){_0x5df981=_0x5df981-0x95;const _0x189ea6=a27_0x189e();let _0x38b836=_0x189ea6[_0x5df981];return _0x38b836;}import{bffDetail}from'../../commands/bff/detail.js';function a27_0x189e(){const _0x1b37e5=['4VkZAMN','381840TqurJK','1021083pwWgNe','432687cefbjA','24MWzUEA','6sTiPfJ','284103ErIhUj','307450TgJhDn','2535815ueDMtt','641169yWENdH'];a27_0x189e=function(){return _0x1b37e5;};return a27_0x189e();}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(_0x126c8f,_0x3a2183){const _0x2a4e57=a27_0x5a6b,_0x2352ba=_0x126c8f();while(!![]){try{const _0x1da954=parseInt(_0x2a4e57(0x70))/0x1*(parseInt(_0x2a4e57(0x72))/0x2)+-parseInt(_0x2a4e57(0x77))/0x3+parseInt(_0x2a4e57(0x71))/0x4+-parseInt(_0x2a4e57(0x75))/0x5+parseInt(_0x2a4e57(0x73))/0x6+parseInt(_0x2a4e57(0x74))/0x7+-parseInt(_0x2a4e57(0x76))/0x8*(parseInt(_0x2a4e57(0x6f))/0x9);if(_0x1da954===_0x3a2183)break;else _0x2352ba['push'](_0x2352ba['shift']());}catch(_0x5a9e28){_0x2352ba['push'](_0x2352ba['shift']());}}}(a27_0x2824,0x91145));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';function a27_0x5a6b(_0x13491d,_0x14b5bf){_0x13491d=_0x13491d-0x6f;const _0x282443=a27_0x2824();let _0x5a6be2=_0x282443[_0x13491d];return _0x5a6be2;}import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';function a27_0x2824(){const _0x24072c=['1039710cIwyem','7107255GuNGRe','105489sAqWoy','108244tCvMsj','18atoGvS','6480174SUirud','3222191liDPXm','3931470mhshGP','8cjpwGE'];a27_0x2824=function(){return _0x24072c;};return a27_0x2824();}import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffNew,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- function a28_0x5e49(_0x4b7d1f,_0x383335){_0x4b7d1f=_0x4b7d1f-0x1cd;const _0x3c1407=a28_0x3c14();let _0x5e499b=_0x3c1407[_0x4b7d1f];return _0x5e499b;}const a28_0xaee088=a28_0x5e49;(function(_0x31830b,_0x431299){const _0x39a65b=a28_0x5e49,_0x26187c=_0x31830b();while(!![]){try{const _0x33a20c=parseInt(_0x39a65b(0x1db))/0x1+-parseInt(_0x39a65b(0x1d6))/0x2+-parseInt(_0x39a65b(0x1d2))/0x3*(-parseInt(_0x39a65b(0x1e0))/0x4)+parseInt(_0x39a65b(0x1d1))/0x5+parseInt(_0x39a65b(0x1df))/0x6*(-parseInt(_0x39a65b(0x1e9))/0x7)+-parseInt(_0x39a65b(0x1e5))/0x8*(parseInt(_0x39a65b(0x1d4))/0x9)+-parseInt(_0x39a65b(0x1e6))/0xa*(-parseInt(_0x39a65b(0x1da))/0xb);if(_0x33a20c===_0x431299)break;else _0x26187c['push'](_0x26187c['shift']());}catch(_0x1132c0){_0x26187c['push'](_0x26187c['shift']());}}}(a28_0x3c14,0xcb2c4));function a28_0x3c14(){const _0x5f3dd8=['689584yVARWW','type','read','Script\x20type\x20filter','66858PHBbHR','1605790bhpgPL','str','list','length','6OhMrvF','952496cyOlmu','string','Filter\x20by\x20script\x20name','appCode','COMMON','9485776mDhcHs','1290aslAMb','scriptType','(unnamed)','8563849vmfgZU','List\x20BFF\x20scripts','ENDPOINT','name','boolean','bool','No\x20BFF\x20scripts\x20found.','3600085KDunWZ','6FekzYj','Return\x20full\x20script\x20objects','9uJCgot','bff'];a28_0x3c14=function(){return _0x5f3dd8;};return a28_0x3c14();}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a28_0xaee088(0x1d5),'command':a28_0xaee088(0x1dd),'description':a28_0xaee088(0x1ea),'risk':a28_0xaee088(0x1d8),'flags':[{'name':'type','type':'string','description':a28_0xaee088(0x1d9),'default':'ENDPOINT','enum':[a28_0xaee088(0x1eb),a28_0xaee088(0x1e4)]},{'name':a28_0xaee088(0x1cd),'type':a28_0xaee088(0x1e1),'description':a28_0xaee088(0x1e2)},{'name':'verbose','type':a28_0xaee088(0x1ce),'description':a28_0xaee088(0x1d3)}],async 'execute'(_0x4191c9){const _0x1a963a=a28_0xaee088,_0x442644=await listBffScripts(_0x4191c9[_0x1a963a(0x1e3)],_0x4191c9[_0x1a963a(0x1dc)](_0x1a963a(0x1d7)),{'scriptName':_0x4191c9['str'](_0x1a963a(0x1cd))||undefined}),_0x3000d9=_0x4191c9[_0x1a963a(0x1cf)]('verbose');return{'ok':!![],'data':_0x3000d9?_0x442644:_0x442644['map'](_0x4305d7=>({'id':_0x4305d7['id'],'functionName':_0x4305d7['functionName']??'','description':_0x4305d7['description']||_0x1a963a(0x1e8),'scriptType':_0x4305d7[_0x1a963a(0x1e7)]})),'message':_0x442644[_0x1a963a(0x1de)]===0x0?_0x1a963a(0x1d0):undefined};}};
1
+ const a28_0x44c280=a28_0x2a77;function a28_0x2a77(_0x28e5fc,_0x1cb354){_0x28e5fc=_0x28e5fc-0x144;const _0x2f6f5f=a28_0x2f6f();let _0x2a77af=_0x2f6f5f[_0x28e5fc];return _0x2a77af;}function a28_0x2f6f(){const _0xfa0ca5=['492EexGZw','read','702732lFpNet','32wgaBhE','bff','ENDPOINT','271101qQZGYi','functionName','76671TpGEgb','string','length','Filter\x20by\x20script\x20name','boolean','description','386557MVUEKj','str','3389080VIHrfI','scriptType','Script\x20type\x20filter','list','150rDsvpD','name','1710448mbPVxl','verbose','bool','319ODmuxv','map','4stWIVp','appCode','type','10171dqmNwx'];a28_0x2f6f=function(){return _0xfa0ca5;};return a28_0x2f6f();}(function(_0x53bf57,_0x34f27a){const _0x4c3b92=a28_0x2a77,_0x8df745=_0x53bf57();while(!![]){try{const _0x335f49=-parseInt(_0x4c3b92(0x156))/0x1*(-parseInt(_0x4c3b92(0x144))/0x2)+parseInt(_0x4c3b92(0x14e))/0x3*(parseInt(_0x4c3b92(0x14b))/0x4)+parseInt(_0x4c3b92(0x158))/0x5+-parseInt(_0x4c3b92(0x148))/0x6*(-parseInt(_0x4c3b92(0x147))/0x7)+-parseInt(_0x4c3b92(0x15e))/0x8+-parseInt(_0x4c3b92(0x150))/0x9*(-parseInt(_0x4c3b92(0x15c))/0xa)+parseInt(_0x4c3b92(0x161))/0xb*(-parseInt(_0x4c3b92(0x14a))/0xc);if(_0x335f49===_0x34f27a)break;else _0x8df745['push'](_0x8df745['shift']());}catch(_0x1bb743){_0x8df745['push'](_0x8df745['shift']());}}}(a28_0x2f6f,0x7c332));import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a28_0x44c280(0x14c),'command':a28_0x44c280(0x15b),'description':'List\x20BFF\x20scripts','risk':a28_0x44c280(0x149),'flags':[{'name':a28_0x44c280(0x146),'type':a28_0x44c280(0x151),'description':a28_0x44c280(0x15a),'default':a28_0x44c280(0x14d),'enum':[a28_0x44c280(0x14d),'COMMON']},{'name':a28_0x44c280(0x15d),'type':a28_0x44c280(0x151),'description':a28_0x44c280(0x153)},{'name':a28_0x44c280(0x15f),'type':a28_0x44c280(0x154),'description':'Return\x20full\x20script\x20objects'}],async 'execute'(_0x3332a6){const _0x1f70fe=a28_0x44c280,_0x3c4636=await listBffScripts(_0x3332a6[_0x1f70fe(0x145)],_0x3332a6[_0x1f70fe(0x157)](_0x1f70fe(0x146)),{'scriptName':_0x3332a6[_0x1f70fe(0x157)](_0x1f70fe(0x15d))||undefined}),_0x284713=_0x3332a6[_0x1f70fe(0x160)](_0x1f70fe(0x15f));return{'ok':!![],'data':_0x284713?_0x3c4636:_0x3c4636[_0x1f70fe(0x162)](_0x5356b4=>({'id':_0x5356b4['id'],'functionName':_0x5356b4[_0x1f70fe(0x14f)]??'','description':_0x5356b4[_0x1f70fe(0x155)]||'(unnamed)','scriptType':_0x5356b4[_0x1f70fe(0x159)]})),'message':_0x3c4636[_0x1f70fe(0x152)]===0x0?'No\x20BFF\x20scripts\x20found.':undefined};}};
@@ -1 +1 @@
1
- const a29_0x2dd906=a29_0x141b;(function(_0x287f93,_0x5243a7){const _0x19925e=a29_0x141b,_0x56d745=_0x287f93();while(!![]){try{const _0x59c49e=-parseInt(_0x19925e(0xf2))/0x1+-parseInt(_0x19925e(0xe3))/0x2+-parseInt(_0x19925e(0x102))/0x3*(parseInt(_0x19925e(0x110))/0x4)+parseInt(_0x19925e(0xe0))/0x5*(-parseInt(_0x19925e(0xd0))/0x6)+parseInt(_0x19925e(0x108))/0x7+-parseInt(_0x19925e(0xe2))/0x8+parseInt(_0x19925e(0xfc))/0x9*(parseInt(_0x19925e(0xfa))/0xa);if(_0x59c49e===_0x5243a7)break;else _0x56d745['push'](_0x56d745['shift']());}catch(_0x36a9dc){_0x56d745['push'](_0x56d745['shift']());}}}(a29_0x2a77,0xf398b));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';function a29_0x141b(_0x53e0be,_0x6f05f3){_0x53e0be=_0x53e0be-0xbf;const _0x2a7738=a29_0x2a77();let _0x141b28=_0x2a7738[_0x53e0be];return _0x141b28;}import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffNew={'service':a29_0x2dd906(0x111),'command':'new','description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':'write','flags':[{'name':a29_0x2dd906(0xc2),'type':'string','required':!![],'enum':[a29_0x2dd906(0xed),a29_0x2dd906(0xe9),a29_0x2dd906(0xfe)],'description':a29_0x2dd906(0xc9)},{'name':a29_0x2dd906(0xf7),'type':a29_0x2dd906(0xf1),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':'description','type':'string','description':'Script\x20description'},{'name':a29_0x2dd906(0xbf),'type':a29_0x2dd906(0xf1),'description':'Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)'},{'name':a29_0x2dd906(0xc4),'type':a29_0x2dd906(0xf1),'description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':a29_0x2dd906(0xfd),'type':a29_0x2dd906(0xf1),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':a29_0x2dd906(0xf5),'type':a29_0x2dd906(0xf1),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':[a29_0x2dd906(0xd7),a29_0x2dd906(0xc5)]}],async 'validate'(_0xc53756){const _0x507afc=a29_0x2dd906,_0x468b3d=_0xc53756[_0x507afc(0xcd)](_0x507afc(0xf7));if(!isValidBffFunctionName(_0x468b3d))throw CliErrors['validation'](_0x507afc(0x109)+_0x468b3d+_0x507afc(0x10f));},async 'execute'(_0x243ae8){const _0x301512=a29_0x2dd906,_0x1f2ad8=loadBffProjectConfig(_0x243ae8[_0x301512(0xe1)]),_0x194651=_0x243ae8[_0x301512(0xcd)]('type'),_0x38e4c0=_0x243ae8['str'](_0x301512(0xf7)),_0xaf670a=_0x243ae8[_0x301512(0xcd)](_0x301512(0xcb))||undefined,_0x2e4b14=_0x194651==='HOOK'?await resolveHookOptions(_0x1f2ad8,_0x243ae8):undefined,_0x3e3a65=buildFilePath(_0x1f2ad8,_0x194651,_0x38e4c0,_0x2e4b14);if(await fileExists(_0x3e3a65))throw CliErrors[_0x301512(0x100)]('File\x20already\x20exists:\x20'+_0x3e3a65);await mkdir(dirname(_0x3e3a65),{'recursive':!![]});const _0x17b741=generateTemplate(_0x194651,_0x38e4c0,_0x243ae8[_0x301512(0xe1)],_0xaf670a,_0x2e4b14);await writeFile(_0x3e3a65,_0x17b741,_0x301512(0xdf));const _0x4ba0f7={'type':_0x194651,'name':_0x38e4c0,'path':_0x3e3a65};if(_0xaf670a)_0x4ba0f7[_0x301512(0xcb)]=_0xaf670a;if(_0x2e4b14){if(_0x2e4b14['alias'])_0x4ba0f7[_0x301512(0xbf)]=_0x2e4b14[_0x301512(0xbf)];_0x4ba0f7['datasetCode']=_0x2e4b14['datasetCode'],_0x4ba0f7['operationType']=_0x2e4b14[_0x301512(0xd2)],_0x4ba0f7[_0x301512(0xe5)]=_0x2e4b14[_0x301512(0xe5)];}return{'ok':!![],'data':_0x4ba0f7,'message':_0x301512(0xf6)+_0x194651+_0x301512(0x10b)+_0x38e4c0};}};function a29_0x2a77(){const _0x482fd5=['\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','stderr','40JvfvkV','\x22\x20not\x20found\x20for\x20dataset\x20','11390823kIhMRp','operation-type','HOOK','\x0a\x20*\x20[脚本名称]\x20','validation','write','1798242ZMRBeN','map','Dataset\x20not\x20found\x20for\x20code\x20\x22','.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','parseInt','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','3587507PIebbr','Invalid\x20function\x20name\x20\x22','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','\x20function:\x20','entries','Available:\x20','Select\x20operation\x20type:','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','12PDCHCS','bff','alias','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','HOOK\x20requires\x20alias/operation/node\x20options.','type','close','datasetcode','after','apiDir','trim','join','Script\x20type','datasetCode','description','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','str','includes','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','93768CgLujb','Invalid\x20dataset\x20selection.','operationType','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','Alias\x20\x22','keys','length','before','Operation\x20type\x20\x22','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','nonInteractive','.js','\x20api\x20pull`\x20to\x20refresh.','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Select\x20dataset:','utf8','155CwCXmy','appCode','4182768KgzzRF','1897216rLxwqj','No\x20api.ts\x20found.\x20Run\x20`','functionNode','\x22.\x20','Available\x20aliases:\x20','find','ENDPOINT','stdin','\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','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','COMMON','code','isInteger','No\x20operation\x20types\x20found\x20for\x20dataset\x20','string','823154XnvQfK','\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','scriptsRootDir','function-node','Created\x20','name'];a29_0x2a77=function(){return _0x482fd5;};return a29_0x2a77();}async function resolveHookOptions(_0x38188f,_0x4abe03){const _0x45242f=a29_0x2dd906,_0x1e9a71=loadAliasMap(_0x4abe03['apiDir'],undefined,resolveApiFilePath(_0x4abe03['apiDir'],_0x4abe03['appCode'])),_0x12c3fd=_0x1e9a71[_0x45242f(0xd6)]>0x0;let _0x1dafa0,_0x95c04f,_0x132d50;const _0x570377=_0x4abe03[_0x45242f(0xcd)](_0x45242f(0xbf)),_0x424631=_0x4abe03[_0x45242f(0xcd)](_0x45242f(0xc4));if(_0x570377){const _0x29a0a6=resolveAlias(_0x4abe03[_0x45242f(0xc6)],_0x570377,undefined,resolveApiFilePath(_0x4abe03['apiDir'],_0x4abe03[_0x45242f(0xe1)]));if(!_0x29a0a6){const _0x4911b1=_0x12c3fd?_0x45242f(0xe7)+_0x1e9a71[_0x45242f(0x103)](_0x45a1f3=>_0x45a1f3[_0x45242f(0xbf)])['join'](',\x20'):_0x45242f(0xe4)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x45242f(0x100)](_0x45242f(0xd4)+_0x570377+'\x22\x20not\x20found.\x20'+_0x4911b1);}_0x1dafa0=_0x570377,_0x95c04f=_0x29a0a6;}else{if(_0x424631){_0x95c04f=_0x424631;const _0x561691=_0x1e9a71['find'](_0x5c9300=>_0x5c9300['datasetCode']===_0x424631);_0x1dafa0=_0x561691?.[_0x45242f(0xbf)];}else{if(_0x4abe03[_0x45242f(0xda)])throw CliErrors[_0x45242f(0x100)](_0x45242f(0xdd));else{if(_0x12c3fd){const _0x5760d1=_0x1e9a71[_0x45242f(0x103)](_0x2d2bbb=>_0x2d2bbb[_0x45242f(0xbf)]+'\x20('+_0x2d2bbb['tableName']+')'),_0x334ed5=await promptSelect('Select\x20dataset:',_0x5760d1),_0x722953=_0x1e9a71[_0x334ed5];if(!_0x722953)throw CliErrors[_0x45242f(0x100)](_0x45242f(0xd1));_0x1dafa0=_0x722953[_0x45242f(0xbf)],_0x95c04f=_0x722953[_0x45242f(0xca)];}else{const _0x4c9df6=await listDatasets(_0x4abe03[_0x45242f(0xe1)]);if(_0x4c9df6[_0x45242f(0xd6)]===0x0)throw CliErrors[_0x45242f(0x100)]('No\x20datasets\x20found\x20for\x20this\x20app.');const _0x153ad5=_0x4c9df6['map'](_0x2cb2b8=>_0x2cb2b8[_0x45242f(0xf7)]+'\x20('+_0x2cb2b8[_0x45242f(0xee)]+')'),_0x5b2a5a=await promptSelect(_0x45242f(0xde),_0x153ad5),_0xef9d47=_0x4c9df6[_0x5b2a5a];if(!_0xef9d47)throw CliErrors[_0x45242f(0x100)](_0x45242f(0xd1));_0x95c04f=_0xef9d47[_0x45242f(0xee)],_0x1dafa0=undefined;}}}}const _0x636983=await listDatasets(_0x4abe03[_0x45242f(0xe1)]),_0x2e509c=_0x636983[_0x45242f(0xe8)](_0x2ea360=>_0x2ea360[_0x45242f(0xee)]===_0x95c04f);if(!_0x2e509c)throw CliErrors[_0x45242f(0x100)](_0x45242f(0x104)+_0x95c04f+_0x45242f(0xe6)+(_0x1dafa0?'The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'+CLI_BIN_NAME+_0x45242f(0xdc):''));_0x132d50=_0x2e509c['id'];const _0x412d40=_0x1dafa0??_0x95c04f,_0x21aa41=await listBffDatasetOperations(_0x4abe03[_0x45242f(0xe1)],_0x132d50),_0x151412=_0x21aa41?Object[_0x45242f(0xd5)](_0x21aa41):[];if(_0x151412['length']===0x0)throw CliErrors[_0x45242f(0x100)](_0x45242f(0xf0)+_0x412d40+'.');let _0xf0ce8b;const _0x4a1238=_0x4abe03[_0x45242f(0xcd)](_0x45242f(0xfd));if(_0x4a1238){if(!_0x151412[_0x45242f(0xce)](_0x4a1238))throw CliErrors['validation'](_0x45242f(0xd8)+_0x4a1238+_0x45242f(0xfb)+_0x412d40+'.\x20'+(_0x45242f(0x10d)+_0x151412[_0x45242f(0xc8)](',\x20')));_0xf0ce8b=_0x4a1238;}else{if(_0x4abe03['nonInteractive'])throw CliErrors[_0x45242f(0x100)](_0x45242f(0x107));const _0x5e0ad8=await promptSelect(_0x45242f(0x10e),_0x151412);_0xf0ce8b=_0x151412[_0x5e0ad8]??_0x151412[0x0];}let _0x449ab8=normalizeHookFunctionNode(_0x4abe03['str']('function-node'));if(!_0x449ab8){if(_0x4abe03[_0x45242f(0xcd)](_0x45242f(0xf5)))throw CliErrors[_0x45242f(0x100)](_0x45242f(0xcf));if(_0x4abe03[_0x45242f(0xda)])throw CliErrors[_0x45242f(0x100)](_0x45242f(0xec));const _0x23e362=await promptSelect('Select\x20trigger\x20node:',[_0x45242f(0xd7),_0x45242f(0xc5)]);_0x449ab8=[_0x45242f(0xd7),_0x45242f(0xc5)][_0x23e362]??_0x45242f(0xd7);}return{'alias':_0x1dafa0,'datasetCode':_0x95c04f,'datasetId':_0x132d50,'operationType':_0xf0ce8b,'functionNode':_0x449ab8};}async function promptSelect(_0x9a45af,_0x464068){const _0x2f5cc2=a29_0x2dd906;if(_0x464068[_0x2f5cc2(0xd6)]===0x1)return 0x0;for(const [_0x3214ab,_0x2c5af7]of _0x464068[_0x2f5cc2(0x10c)]()){process[_0x2f5cc2(0xf9)][_0x2f5cc2(0x101)]('\x20\x20'+(_0x3214ab+0x1)+'.\x20'+_0x2c5af7+'\x0a');}const _0x43d0b3=createInterface({'input':process[_0x2f5cc2(0xea)],'output':process[_0x2f5cc2(0xf9)]});while(!![]){const _0x5198a8=await new Promise(_0x212ddd=>{_0x43d0b3['question'](_0x9a45af+'\x20',_0x212ddd);}),_0x586f4e=Number[_0x2f5cc2(0x106)](_0x5198a8['trim'](),0xa);if(Number[_0x2f5cc2(0xef)](_0x586f4e)&&_0x586f4e>=0x1&&_0x586f4e<=_0x464068[_0x2f5cc2(0xd6)])return _0x43d0b3[_0x2f5cc2(0xc3)](),_0x586f4e-0x1;process['stderr']['write'](_0x2f5cc2(0xf8)+_0x464068[_0x2f5cc2(0xd6)]+'.\x0a');}}function buildFilePath(_0x25bc70,_0x499889,_0x45482e,_0x5d9154){const _0x1d8dc7=a29_0x2dd906;if(_0x499889===_0x1d8dc7(0xfe)){if(!_0x5d9154)throw CliErrors[_0x1d8dc7(0x100)](_0x1d8dc7(0xc1));const _0x3acab1=_0x5d9154[_0x1d8dc7(0xbf)]??_0x5d9154[_0x1d8dc7(0xca)];return join(_0x25bc70['scriptsRootDir'],'HOOK',_0x3acab1,_0x5d9154[_0x1d8dc7(0xd2)],_0x5d9154['functionNode'],_0x45482e+_0x1d8dc7(0xdb));}return join(_0x25bc70[_0x1d8dc7(0xf4)],_0x499889,_0x45482e+'.js');}export function generateTemplate(_0x5c9607,_0x1adb61,_0x32c910,_0x33ae95,_0x4ce8c4){const _0x242d9c=a29_0x2dd906,_0x162c27=_0x33ae95?.[_0x242d9c(0xc7)]()||'TODO:\x20add\x20script\x20description';if(_0x5c9607===_0x242d9c(0xed))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x162c27+_0x242d9c(0xff)+_0x1adb61+_0x242d9c(0xd3)+_0x1adb61+_0x242d9c(0x105)+_0x1adb61+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x5c9607==='ENDPOINT')return _0x242d9c(0xc0)+_0x162c27+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0x32c910+'/endpoint/'+_0x1adb61+_0x242d9c(0xf3)+_0x1adb61+_0x242d9c(0x10a);if(!_0x4ce8c4)throw CliErrors[_0x242d9c(0x100)]('HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.');return _0x242d9c(0xd9)+_0x162c27+_0x242d9c(0xcc)+_0x32c910+'/'+_0x4ce8c4[_0x242d9c(0xca)]+'/'+_0x4ce8c4[_0x242d9c(0xd2)]+'\x0a\x20*\x20[触发节点]\x20'+_0x4ce8c4[_0x242d9c(0xe5)]+_0x242d9c(0xeb)+_0x1adb61+_0x242d9c(0x10a);}
1
+ const a29_0x543ed9=a29_0x5c2e;(function(_0x146702,_0x1542ac){const _0x33f6b0=a29_0x5c2e,_0x2becae=_0x146702();while(!![]){try{const _0x1d7183=-parseInt(_0x33f6b0(0x164))/0x1*(parseInt(_0x33f6b0(0x178))/0x2)+parseInt(_0x33f6b0(0x158))/0x3+-parseInt(_0x33f6b0(0x140))/0x4+-parseInt(_0x33f6b0(0x12b))/0x5*(parseInt(_0x33f6b0(0x176))/0x6)+parseInt(_0x33f6b0(0x159))/0x7+parseInt(_0x33f6b0(0x16d))/0x8+parseInt(_0x33f6b0(0x146))/0x9*(-parseInt(_0x33f6b0(0x148))/0xa);if(_0x1d7183===_0x1542ac)break;else _0x2becae['push'](_0x2becae['shift']());}catch(_0x42af68){_0x2becae['push'](_0x2becae['shift']());}}}(a29_0x4767,0xa32cd));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';function a29_0x5c2e(_0x2db600,_0x1fe889){_0x2db600=_0x2db600-0x12b;const _0x476734=a29_0x4767();let _0x5c2ea6=_0x476734[_0x2db600];return _0x5c2ea6;}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';function a29_0x4767(){const _0xfba880=['includes','Created\x20','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','Select\x20trigger\x20node:','Select\x20operation\x20type:','10046312DpPQKg','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','functionNode','join','code','validation','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','description','HOOK\x20requires\x20alias/operation/node\x20options.','5084952yHxEDQ','parseInt','6MiunGT','Invalid\x20function\x20name\x20\x22','map','stderr','trim','TODO:\x20add\x20script\x20description','Available:\x20','apiDir','No\x20datasets\x20found\x20for\x20this\x20app.','ENDPOINT','Select\x20dataset:','function-node','Invalid\x20dataset\x20selection.','string','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','5yYJadM','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','nonInteractive','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','\x22.\x20','bff','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','datasetcode','operationType','operation-type','name','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','File\x20already\x20exists:\x20','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','stdin','isInteger','.js','\x0a\x20*\x20[脚本名称]\x20','HOOK','\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','Script\x20type','4826924WuEHsz','\x22\x20not\x20found\x20for\x20dataset\x20','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','after','question','\x20function:\x20','2529kRhTOA','No\x20operation\x20types\x20found\x20for\x20dataset\x20','13940ScYusU','str','length','Operation\x20type\x20(HOOK\x20only)','alias','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','Available\x20aliases:\x20','Trigger\x20node\x20(HOOK\x20only)','Script\x20description','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','entries','scriptsRootDir','Alias\x20\x22','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','datasetCode','close','3763281AUGIYi','6596541shURVQ','type','Operation\x20type\x20\x22','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','keys','\x20api\x20pull`\x20to\x20refresh.','write','COMMON','appCode','Dataset\x20not\x20found\x20for\x20code\x20\x22','112759EZYWHz','before','/endpoint/','\x0a\x20*\x20[触发节点]\x20'];a29_0x4767=function(){return _0xfba880;};return a29_0x4767();}import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffNew={'service':a29_0x543ed9(0x130),'command':'new','description':a29_0x543ed9(0x151),'risk':a29_0x543ed9(0x160),'flags':[{'name':a29_0x543ed9(0x15a),'type':a29_0x543ed9(0x185),'required':!![],'enum':[a29_0x543ed9(0x161),a29_0x543ed9(0x181),a29_0x543ed9(0x13d)],'description':a29_0x543ed9(0x13f)},{'name':a29_0x543ed9(0x135),'type':a29_0x543ed9(0x185),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':a29_0x543ed9(0x174),'type':a29_0x543ed9(0x185),'description':a29_0x543ed9(0x150)},{'name':a29_0x543ed9(0x14c),'type':a29_0x543ed9(0x185),'description':'Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)'},{'name':a29_0x543ed9(0x132),'type':'string','description':a29_0x543ed9(0x142)},{'name':a29_0x543ed9(0x134),'type':a29_0x543ed9(0x185),'description':a29_0x543ed9(0x14b)},{'name':a29_0x543ed9(0x183),'type':a29_0x543ed9(0x185),'description':a29_0x543ed9(0x14f),'enum':['before',a29_0x543ed9(0x143)]}],async 'validate'(_0x297996){const _0x3bfe9f=a29_0x543ed9,_0xa2b3b8=_0x297996['str'](_0x3bfe9f(0x135));if(!isValidBffFunctionName(_0xa2b3b8))throw CliErrors[_0x3bfe9f(0x172)](_0x3bfe9f(0x179)+_0xa2b3b8+_0x3bfe9f(0x136));},async 'execute'(_0x344441){const _0x17bc51=a29_0x543ed9,_0x42f9ad=loadBffProjectConfig(_0x344441['appCode']),_0x2712ff=_0x344441['str'](_0x17bc51(0x15a)),_0x19d455=_0x344441[_0x17bc51(0x149)](_0x17bc51(0x135)),_0x3488cb=_0x344441[_0x17bc51(0x149)](_0x17bc51(0x174))||undefined,_0xc6d5c9=_0x2712ff===_0x17bc51(0x13d)?await resolveHookOptions(_0x42f9ad,_0x344441):undefined,_0x40e234=buildFilePath(_0x42f9ad,_0x2712ff,_0x19d455,_0xc6d5c9);if(await fileExists(_0x40e234))throw CliErrors[_0x17bc51(0x172)](_0x17bc51(0x137)+_0x40e234);await mkdir(dirname(_0x40e234),{'recursive':!![]});const _0x4ed9ce=generateTemplate(_0x2712ff,_0x19d455,_0x344441['appCode'],_0x3488cb,_0xc6d5c9);await writeFile(_0x40e234,_0x4ed9ce,'utf8');const _0x3d0a42={'type':_0x2712ff,'name':_0x19d455,'path':_0x40e234};if(_0x3488cb)_0x3d0a42['description']=_0x3488cb;if(_0xc6d5c9){if(_0xc6d5c9[_0x17bc51(0x14c)])_0x3d0a42[_0x17bc51(0x14c)]=_0xc6d5c9['alias'];_0x3d0a42[_0x17bc51(0x156)]=_0xc6d5c9[_0x17bc51(0x156)],_0x3d0a42[_0x17bc51(0x133)]=_0xc6d5c9[_0x17bc51(0x133)],_0x3d0a42['functionNode']=_0xc6d5c9['functionNode'];}return{'ok':!![],'data':_0x3d0a42,'message':_0x17bc51(0x169)+_0x2712ff+_0x17bc51(0x145)+_0x19d455};}};async function resolveHookOptions(_0x5c8d50,_0x1cd3e6){const _0x2c8be9=a29_0x543ed9,_0x2e43ee=loadAliasMap(_0x1cd3e6['apiDir'],undefined,resolveApiFilePath(_0x1cd3e6[_0x2c8be9(0x17f)],_0x1cd3e6['appCode'])),_0x2a526d=_0x2e43ee['length']>0x0;let _0x50aec4,_0xf4a575,_0x6c9a3a;const _0x30ac30=_0x1cd3e6['str'](_0x2c8be9(0x14c)),_0x1ed392=_0x1cd3e6[_0x2c8be9(0x149)]('datasetcode');if(_0x30ac30){const _0x1fff0c=resolveAlias(_0x1cd3e6[_0x2c8be9(0x17f)],_0x30ac30,undefined,resolveApiFilePath(_0x1cd3e6[_0x2c8be9(0x17f)],_0x1cd3e6[_0x2c8be9(0x162)]));if(!_0x1fff0c){const _0x5b0216=_0x2a526d?_0x2c8be9(0x14e)+_0x2e43ee[_0x2c8be9(0x17a)](_0x2593f7=>_0x2593f7[_0x2c8be9(0x14c)])[_0x2c8be9(0x170)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+_0x2c8be9(0x16e);throw CliErrors[_0x2c8be9(0x172)](_0x2c8be9(0x154)+_0x30ac30+'\x22\x20not\x20found.\x20'+_0x5b0216);}_0x50aec4=_0x30ac30,_0xf4a575=_0x1fff0c;}else{if(_0x1ed392){_0xf4a575=_0x1ed392;const _0xcdd7cb=_0x2e43ee['find'](_0x27f469=>_0x27f469['datasetCode']===_0x1ed392);_0x50aec4=_0xcdd7cb?.['alias'];}else{if(_0x1cd3e6[_0x2c8be9(0x12d)])throw CliErrors['validation'](_0x2c8be9(0x12e));else{if(_0x2a526d){const _0x55cc31=_0x2e43ee[_0x2c8be9(0x17a)](_0x3a2511=>_0x3a2511[_0x2c8be9(0x14c)]+'\x20('+_0x3a2511['tableName']+')'),_0x461e17=await promptSelect(_0x2c8be9(0x182),_0x55cc31),_0x15466e=_0x2e43ee[_0x461e17];if(!_0x15466e)throw CliErrors[_0x2c8be9(0x172)](_0x2c8be9(0x184));_0x50aec4=_0x15466e['alias'],_0xf4a575=_0x15466e['datasetCode'];}else{const _0x14078f=await listDatasets(_0x1cd3e6['appCode']);if(_0x14078f[_0x2c8be9(0x14a)]===0x0)throw CliErrors[_0x2c8be9(0x172)](_0x2c8be9(0x180));const _0x592b3f=_0x14078f[_0x2c8be9(0x17a)](_0x448405=>_0x448405['name']+'\x20('+_0x448405[_0x2c8be9(0x171)]+')'),_0x20823a=await promptSelect('Select\x20dataset:',_0x592b3f),_0x5c0015=_0x14078f[_0x20823a];if(!_0x5c0015)throw CliErrors['validation']('Invalid\x20dataset\x20selection.');_0xf4a575=_0x5c0015[_0x2c8be9(0x171)],_0x50aec4=undefined;}}}}const _0x22a434=await listDatasets(_0x1cd3e6[_0x2c8be9(0x162)]),_0x514463=_0x22a434['find'](_0x518f52=>_0x518f52[_0x2c8be9(0x171)]===_0xf4a575);if(!_0x514463)throw CliErrors[_0x2c8be9(0x172)](_0x2c8be9(0x163)+_0xf4a575+_0x2c8be9(0x12f)+(_0x50aec4?'The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'+CLI_BIN_NAME+_0x2c8be9(0x15f):''));_0x6c9a3a=_0x514463['id'];const _0x2efe71=_0x50aec4??_0xf4a575,_0x48f3e9=await listBffDatasetOperations(_0x1cd3e6[_0x2c8be9(0x162)],_0x6c9a3a),_0x2b9193=_0x48f3e9?Object[_0x2c8be9(0x15e)](_0x48f3e9):[];if(_0x2b9193['length']===0x0)throw CliErrors['validation'](_0x2c8be9(0x147)+_0x2efe71+'.');let _0x5a1262;const _0x39a2e7=_0x1cd3e6[_0x2c8be9(0x149)]('operation-type');if(_0x39a2e7){if(!_0x2b9193[_0x2c8be9(0x168)](_0x39a2e7))throw CliErrors['validation'](_0x2c8be9(0x15b)+_0x39a2e7+_0x2c8be9(0x141)+_0x2efe71+'.\x20'+(_0x2c8be9(0x17e)+_0x2b9193[_0x2c8be9(0x170)](',\x20')));_0x5a1262=_0x39a2e7;}else{if(_0x1cd3e6['nonInteractive'])throw CliErrors['validation']('--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x20e692=await promptSelect(_0x2c8be9(0x16c),_0x2b9193);_0x5a1262=_0x2b9193[_0x20e692]??_0x2b9193[0x0];}let _0x673e9d=normalizeHookFunctionNode(_0x1cd3e6[_0x2c8be9(0x149)](_0x2c8be9(0x183)));if(!_0x673e9d){if(_0x1cd3e6[_0x2c8be9(0x149)](_0x2c8be9(0x183)))throw CliErrors[_0x2c8be9(0x172)](_0x2c8be9(0x173));if(_0x1cd3e6[_0x2c8be9(0x12d)])throw CliErrors[_0x2c8be9(0x172)](_0x2c8be9(0x15d));const _0x2bd189=await promptSelect(_0x2c8be9(0x16b),[_0x2c8be9(0x165),'after']);_0x673e9d=[_0x2c8be9(0x165),_0x2c8be9(0x143)][_0x2bd189]??_0x2c8be9(0x165);}return{'alias':_0x50aec4,'datasetCode':_0xf4a575,'datasetId':_0x6c9a3a,'operationType':_0x5a1262,'functionNode':_0x673e9d};}async function promptSelect(_0x4d9d03,_0x1acf8c){const _0x1942e8=a29_0x543ed9;if(_0x1acf8c[_0x1942e8(0x14a)]===0x1)return 0x0;for(const [_0x5ec2f2,_0x3f51ee]of _0x1acf8c[_0x1942e8(0x152)]()){process[_0x1942e8(0x17b)][_0x1942e8(0x160)]('\x20\x20'+(_0x5ec2f2+0x1)+'.\x20'+_0x3f51ee+'\x0a');}const _0x407728=createInterface({'input':process[_0x1942e8(0x139)],'output':process['stderr']});while(!![]){const _0x5b5482=await new Promise(_0x1f49ae=>{const _0x1c72a5=_0x1942e8;_0x407728[_0x1c72a5(0x144)](_0x4d9d03+'\x20',_0x1f49ae);}),_0x3748d6=Number[_0x1942e8(0x177)](_0x5b5482[_0x1942e8(0x17c)](),0xa);if(Number[_0x1942e8(0x13a)](_0x3748d6)&&_0x3748d6>=0x1&&_0x3748d6<=_0x1acf8c[_0x1942e8(0x14a)])return _0x407728[_0x1942e8(0x157)](),_0x3748d6-0x1;process['stderr'][_0x1942e8(0x160)](_0x1942e8(0x14d)+_0x1acf8c[_0x1942e8(0x14a)]+'.\x0a');}}function buildFilePath(_0x267ae7,_0xc34f1e,_0x52f494,_0x1f5df3){const _0x10fba0=a29_0x543ed9;if(_0xc34f1e==='HOOK'){if(!_0x1f5df3)throw CliErrors[_0x10fba0(0x172)](_0x10fba0(0x175));const _0x4eed3c=_0x1f5df3[_0x10fba0(0x14c)]??_0x1f5df3[_0x10fba0(0x156)];return join(_0x267ae7[_0x10fba0(0x153)],'HOOK',_0x4eed3c,_0x1f5df3[_0x10fba0(0x133)],_0x1f5df3[_0x10fba0(0x16f)],_0x52f494+_0x10fba0(0x13b));}return join(_0x267ae7['scriptsRootDir'],_0xc34f1e,_0x52f494+_0x10fba0(0x13b));}export function generateTemplate(_0x44c211,_0x30c607,_0x364413,_0x50975b,_0x59ca42){const _0x586cc5=a29_0x543ed9,_0x20806b=_0x50975b?.['trim']()||_0x586cc5(0x17d);if(_0x44c211==='COMMON')return _0x586cc5(0x155)+_0x20806b+_0x586cc5(0x13c)+_0x30c607+_0x586cc5(0x186)+_0x30c607+_0x586cc5(0x16a)+_0x30c607+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x44c211===_0x586cc5(0x181))return _0x586cc5(0x187)+_0x20806b+_0x586cc5(0x12c)+_0x364413+_0x586cc5(0x166)+_0x30c607+_0x586cc5(0x138)+_0x30c607+_0x586cc5(0x188);if(!_0x59ca42)throw CliErrors['validation'](_0x586cc5(0x15c));return _0x586cc5(0x131)+_0x20806b+_0x586cc5(0x12c)+_0x364413+'/'+_0x59ca42[_0x586cc5(0x156)]+'/'+_0x59ca42[_0x586cc5(0x133)]+_0x586cc5(0x167)+_0x59ca42[_0x586cc5(0x16f)]+_0x586cc5(0x13e)+_0x30c607+_0x586cc5(0x188);}
@@ -1 +1 @@
1
- const a30_0xca15ea=a30_0x3bb2;(function(_0x313a2a,_0x2b25c0){const _0x508219=a30_0x3bb2,_0x366317=_0x313a2a();while(!![]){try{const _0x471cb4=parseInt(_0x508219(0x239))/0x1+parseInt(_0x508219(0x236))/0x2*(parseInt(_0x508219(0x214))/0x3)+-parseInt(_0x508219(0x235))/0x4*(parseInt(_0x508219(0x1f4))/0x5)+-parseInt(_0x508219(0x204))/0x6+-parseInt(_0x508219(0x1f6))/0x7*(-parseInt(_0x508219(0x228))/0x8)+parseInt(_0x508219(0x20a))/0x9+-parseInt(_0x508219(0x1ff))/0xa*(parseInt(_0x508219(0x231))/0xb);if(_0x471cb4===_0x2b25c0)break;else _0x366317['push'](_0x366317['shift']());}catch(_0x313540){_0x366317['push'](_0x366317['shift']());}}}(a30_0x5d5a,0x2dc64));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';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';function a30_0x3bb2(_0x37448e,_0x2b834f){_0x37448e=_0x37448e-0x1ed;const _0x5d5aba=a30_0x5d5a();let _0x3bb25c=_0x5d5aba[_0x37448e];return _0x3bb25c;}function a30_0x5d5a(){const _0x2f72d6=['includes','trim','filePath','Remote\x20script\x20missing\x20content.','lockFilePath','utf8','bool','close','ENDPOINT','stderr','scriptsRoot','stringify','207808iBXKiB','question','toLowerCase','Would\x20inspect\x20','message','alias','apiDir','local\x20unsynced\x20changes','cancelled','1903YLWApF','str','type','hash','993724uQRNTk','391554kOdJgF','force','operationType','167672pTPMJV','Force\x20overwrite\x20local\x20unsynced\x20changes','HOOK','functionNode','unresolvable\x20target\x20path','\x22\x20not\x20found\x20after\x20ensureLockScope.','\x20remote\x20BFF\x20script(s)\x20for\x20pull','scriptType','scriptContent','\x20skipped,\x20','5lsgAVW','appCode','63iBmgTd','/api/management/library/scripts/list?appCode=','skipped','toISOString','\x20pulled,\x20','parse','conflict','functionName','validation','24070ZPgVzK','apps','push','version','pull','668010GBGlPj','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','GET','hookLocation','datasetCode','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','3297924ZpEhLL','No\x20remote\x20BFF\x20scripts\x20found.','Pull\x20complete:\x20','Lock\x20scope\x20for\x20app\x20\x22','\x20failed','boolean','lockKey','all','Force\x20pull\x20cancelled.','nonInteractive','3vbNnGW','length','string','stdin','yes','functions','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','map'];a30_0x5d5a=function(){return _0x2f72d6;};return a30_0x5d5a();}export const bffPull={'service':'bff','command':a30_0xca15ea(0x203),'description':a30_0xca15ea(0x21a),'risk':'write','flags':[{'name':a30_0xca15ea(0x233),'type':a30_0xca15ea(0x216),'description':'Pull\x20only\x20this\x20script\x20type','enum':['COMMON',a30_0xca15ea(0x224),a30_0xca15ea(0x23b)]},{'name':a30_0xca15ea(0x237),'type':a30_0xca15ea(0x20f),'description':a30_0xca15ea(0x23a)}],async 'dryRun'(_0x55e036){const _0x5856bf=a30_0xca15ea,_0x29ec3c=loadBffProjectConfig(_0x55e036[_0x5856bf(0x1f5)]),_0x201b29=await readBffLockFile(_0x29ec3c[_0x5856bf(0x220)]),{appLock:_0x1eeea0}=ensureLockScope(_0x201b29??createEmptyBffLock(),_0x55e036[_0x5856bf(0x1f5)],_0x29ec3c[_0x5856bf(0x226)],_0x5856bf(0x203)),_0x2cb66a=normalizeBffType(_0x55e036['str'](_0x5856bf(0x233)))??undefined,_0x4679df=buildDatasetCodeToAliasMap(_0x55e036[_0x5856bf(0x22e)],_0x55e036[_0x5856bf(0x1f5)]),[_0xef6632,_0x112d1a]=await Promise[_0x5856bf(0x211)]([listBffScripts(_0x55e036[_0x5856bf(0x1f5)],_0x2cb66a),getBffScriptStatistics(_0x55e036[_0x5856bf(0x1f5)])]),_0x6970c7=createHookLocationMap(_0x112d1a),_0x22331f=[];for(const _0x379e5d of _0xef6632){const _0x2fca81=resolveRemoteScriptTarget(_0x29ec3c,_0x379e5d,_0x6970c7,_0x1eeea0[_0x5856bf(0x219)],_0x4679df);if(!_0x2fca81){_0x22331f[_0x5856bf(0x201)]({'scriptType':_0x379e5d[_0x5856bf(0x1f1)],'functionName':_0x379e5d[_0x5856bf(0x1fd)]??'','status':_0x5856bf(0x1f8),'reason':'unresolvable\x20target\x20path'});continue;}const _0x42dce4=_0x1eeea0[_0x5856bf(0x219)][_0x2fca81['lockKey']],_0x240b1f=_0x379e5d[_0x5856bf(0x1f2)]!=null?computeContentHash(_0x379e5d[_0x5856bf(0x1f2)]):undefined,_0x17a8bb=await hasUnsyncedLocalChanges(_0x2fca81[_0x5856bf(0x21e)],_0x42dce4,_0x240b1f);_0x22331f[_0x5856bf(0x201)]({'lockKey':_0x2fca81['lockKey'],'filePath':_0x2fca81['filePath'],'remoteId':_0x379e5d['id']??null,'status':_0x17a8bb?_0x5856bf(0x1fc):'would_pull'});}return{'method':_0x5856bf(0x206),'url':_0x5856bf(0x1f7)+_0x55e036[_0x5856bf(0x1f5)]+(_0x2cb66a?'&type='+_0x2cb66a:''),'body':{'appCode':_0x55e036[_0x5856bf(0x1f5)],'filterType':_0x2cb66a??null,'files':_0x22331f},'description':_0x5856bf(0x22b)+_0x22331f[_0x5856bf(0x215)]+_0x5856bf(0x1f0)};},async 'execute'(_0x21b032){const _0x56561b=a30_0xca15ea,_0x43f94f=loadBffProjectConfig(_0x21b032['appCode']),_0x225e9e=await readBffLockFile(_0x43f94f[_0x56561b(0x220)]),{lockData:_0x1fbff5,appLock:_0x574f40}=ensureLockScope(_0x225e9e??createEmptyBffLock(),_0x21b032[_0x56561b(0x1f5)],_0x43f94f[_0x56561b(0x226)],_0x56561b(0x203)),_0x13f54a=normalizeBffType(_0x21b032[_0x56561b(0x232)](_0x56561b(0x233)))??undefined;if(_0x21b032[_0x56561b(0x232)]('type')&&!_0x13f54a)throw CliErrors[_0x56561b(0x1fe)](_0x56561b(0x209));const [_0xb8989d,_0x478eb5]=await Promise[_0x56561b(0x211)]([listBffScripts(_0x21b032[_0x56561b(0x1f5)],_0x13f54a),getBffScriptStatistics(_0x21b032['appCode'])]);if(_0xb8989d[_0x56561b(0x215)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x56561b(0x20b)};const _0x3dd52a=_0x21b032[_0x56561b(0x222)](_0x56561b(0x237));if(_0x3dd52a&&!_0x21b032[_0x56561b(0x213)]){const _0x4eb807=await confirmForce();if(!_0x4eb807)throw CliErrors[_0x56561b(0x230)](_0x56561b(0x212));}if(_0x3dd52a&&_0x21b032[_0x56561b(0x213)]){}const _0x15b3db=buildDatasetCodeToAliasMap(_0x21b032['apiDir'],_0x21b032[_0x56561b(0x1f5)]),_0x489ca2=createHookLocationMap(_0x478eb5),_0x3d32e6=JSON[_0x56561b(0x1fb)](JSON[_0x56561b(0x227)](_0x1fbff5)),_0x255ce8=_0x21b032[_0x56561b(0x1f5)],_0x14d2bb=_0x3d32e6[_0x56561b(0x200)][_0x255ce8];if(!_0x14d2bb)throw new Error(_0x56561b(0x20d)+_0x255ce8+_0x56561b(0x1ef));const _0x2c3ffb=[],_0x39d140=[],_0xe7eec5=[];for(const _0x10f977 of _0xb8989d){const _0x53f062=resolveRemoteScriptTarget(_0x43f94f,_0x10f977,_0x489ca2,_0x574f40[_0x56561b(0x219)],_0x15b3db);if(!_0x53f062){_0x39d140['push']({'lockKey':_0x10f977[_0x56561b(0x1f1)]+'/'+_0x10f977[_0x56561b(0x1fd)],'reason':_0x56561b(0x1ee)});continue;}const _0x81ce18=_0x574f40['functions'][_0x53f062[_0x56561b(0x210)]];try{if(!_0x10f977['id'])throw new Error('Remote\x20script\x20missing\x20id.');if(_0x10f977[_0x56561b(0x1f2)]==null)throw new Error(_0x56561b(0x21f));const _0x26fbd8=_0x10f977[_0x56561b(0x1f2)],_0x19e05c=computeContentHash(_0x26fbd8);if(!_0x3dd52a){const _0x3044b6=await hasUnsyncedLocalChanges(_0x53f062[_0x56561b(0x21e)],_0x81ce18,_0x19e05c);if(_0x3044b6){_0x39d140[_0x56561b(0x201)]({'lockKey':_0x53f062[_0x56561b(0x210)],'reason':_0x56561b(0x22f)});continue;}}await ensureParentDirectory(_0x53f062[_0x56561b(0x21e)]),await writeFile(_0x53f062[_0x56561b(0x21e)],_0x26fbd8,_0x56561b(0x221));const _0x37de19={'hash':_0x19e05c,'remoteId':_0x10f977['id'],'version':_0x10f977[_0x56561b(0x202)]};_0x53f062[_0x56561b(0x233)]===_0x56561b(0x23b)&&_0x53f062[_0x56561b(0x207)]&&(_0x37de19[_0x56561b(0x22d)]=_0x53f062[_0x56561b(0x207)][_0x56561b(0x22d)],_0x37de19[_0x56561b(0x208)]=_0x53f062[_0x56561b(0x207)]['datasetCode'],_0x37de19['operationType']=_0x53f062[_0x56561b(0x207)][_0x56561b(0x238)],_0x37de19[_0x56561b(0x1ed)]=_0x53f062[_0x56561b(0x207)][_0x56561b(0x1ed)]),_0x14d2bb[_0x56561b(0x219)][_0x53f062[_0x56561b(0x210)]]=_0x37de19,_0x2c3ffb[_0x56561b(0x201)]({'lockKey':_0x53f062[_0x56561b(0x210)],'remoteId':_0x10f977['id']});}catch(_0x5656f3){_0xe7eec5[_0x56561b(0x201)]({'lockKey':_0x53f062[_0x56561b(0x210)],'error':_0x5656f3 instanceof Error?_0x5656f3[_0x56561b(0x22c)]:String(_0x5656f3)});}}return _0x14d2bb['lastSync']=new Date()[_0x56561b(0x1f9)](),await writeBffLockFile(_0x43f94f[_0x56561b(0x220)],_0x3d32e6),{'ok':_0xe7eec5['length']===0x0,'data':{'pulled':_0x2c3ffb,'skipped':_0x39d140,'failed':_0xe7eec5},'message':_0x56561b(0x20c)+_0x2c3ffb[_0x56561b(0x215)]+_0x56561b(0x1fa)+_0x39d140['length']+_0x56561b(0x1f3)+_0xe7eec5[_0x56561b(0x215)]+_0x56561b(0x20e)};}};async function hasUnsyncedLocalChanges(_0x504ac2,_0x1e813c,_0x5ed5e5){const _0x5d2433=a30_0xca15ea;if(!await fileExists(_0x504ac2))return![];const _0x4ba71a=await computeFileHash(_0x504ac2);if(!_0x1e813c)return _0x5ed5e5?_0x4ba71a!==_0x5ed5e5:!![];return _0x4ba71a!==_0x1e813c[_0x5d2433(0x234)];}function buildDatasetCodeToAliasMap(_0x2341e6,_0x1f13f7){const _0x191160=a30_0xca15ea,_0x18cf78=loadAliasMap(_0x2341e6,undefined,resolveApiFilePath(_0x2341e6,_0x1f13f7));return new Map(_0x18cf78[_0x191160(0x21b)](_0x27835f=>[_0x27835f[_0x191160(0x208)],_0x27835f[_0x191160(0x22d)]]));}async function confirmForce(){const _0x162b8c=a30_0xca15ea,_0x4c59b8=createInterface({'input':process[_0x162b8c(0x217)],'output':process[_0x162b8c(0x225)]}),_0x27ab5f=await new Promise(_0x6ee2b7=>{const _0x7a3cdd=_0x162b8c;_0x4c59b8[_0x7a3cdd(0x229)](_0x7a3cdd(0x205),_0x6ee2b7);});return _0x4c59b8[_0x162b8c(0x223)](),['y',_0x162b8c(0x218)][_0x162b8c(0x21c)](_0x27ab5f[_0x162b8c(0x21d)]()[_0x162b8c(0x22a)]());}
1
+ const a30_0x5604c4=a30_0x2130;(function(_0x7a82ad,_0x4e455e){const _0x4e65ca=a30_0x2130,_0x137583=_0x7a82ad();while(!![]){try{const _0x5a8f00=-parseInt(_0x4e65ca(0x1e2))/0x1*(-parseInt(_0x4e65ca(0x1d4))/0x2)+parseInt(_0x4e65ca(0x1be))/0x3+-parseInt(_0x4e65ca(0x1b3))/0x4*(-parseInt(_0x4e65ca(0x1c4))/0x5)+parseInt(_0x4e65ca(0x1d2))/0x6+parseInt(_0x4e65ca(0x1d6))/0x7*(parseInt(_0x4e65ca(0x1dd))/0x8)+-parseInt(_0x4e65ca(0x1f3))/0x9+-parseInt(_0x4e65ca(0x1e8))/0xa;if(_0x5a8f00===_0x4e455e)break;else _0x137583['push'](_0x137583['shift']());}catch(_0x477573){_0x137583['push'](_0x137583['shift']());}}}(a30_0x5d3b,0x7fa74));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';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';function a30_0x5d3b(){const _0x19d0a5=['force','Pull\x20only\x20this\x20script\x20type','6092784GqYorc','\x22\x20not\x20found\x20after\x20ensureLockScope.','\x20failed','apiDir','includes','hookLocation','type','utf8','4FjQNmr','scriptsRoot','version','string','\x20pulled,\x20','question','str','skipped','yes','functionName','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','1748049fTlevy','Force\x20overwrite\x20local\x20unsynced\x20changes','validation','\x20skipped,\x20','message','stringify','1715415syrLzO','all','Would\x20inspect\x20','write','nonInteractive','local\x20unsynced\x20changes','ENDPOINT','scriptType','filePath','operationType','GET','COMMON','stderr','scriptContent','998712wVhzHX','HOOK','75902ejjnnI','datasetCode','1029MEgAYs','lockKey','Lock\x20scope\x20for\x20app\x20\x22','functions','trim','close','parse','36944Xqmddq','length','\x20remote\x20BFF\x20script(s)\x20for\x20pull','lockFilePath','bool','7kimuMV','Remote\x20script\x20missing\x20id.','pull','alias','Force\x20pull\x20cancelled.','map','8368770ftMWCX','push','appCode','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','toLowerCase','&type=','/api/management/library/scripts/list?appCode=','Pull\x20complete:\x20','apps'];a30_0x5d3b=function(){return _0x19d0a5;};return a30_0x5d3b();}function a30_0x2130(_0x34df71,_0x4a69ae){_0x34df71=_0x34df71-0x1ad;const _0x5d3bec=a30_0x5d3b();let _0x2130d6=_0x5d3bec[_0x34df71];return _0x2130d6;}export const bffPull={'service':'bff','command':a30_0x5604c4(0x1e4),'description':a30_0x5604c4(0x1eb),'risk':a30_0x5604c4(0x1c7),'flags':[{'name':a30_0x5604c4(0x1b1),'type':a30_0x5604c4(0x1b6),'description':a30_0x5604c4(0x1f2),'enum':[a30_0x5604c4(0x1cf),a30_0x5604c4(0x1ca),a30_0x5604c4(0x1d3)]},{'name':a30_0x5604c4(0x1f1),'type':'boolean','description':a30_0x5604c4(0x1bf)}],async 'dryRun'(_0x166961){const _0x2385a0=a30_0x5604c4,_0x51217c=loadBffProjectConfig(_0x166961['appCode']),_0x241e79=await readBffLockFile(_0x51217c[_0x2385a0(0x1e0)]),{appLock:_0x256edc}=ensureLockScope(_0x241e79??createEmptyBffLock(),_0x166961[_0x2385a0(0x1ea)],_0x51217c[_0x2385a0(0x1b4)],'pull'),_0x4703b5=normalizeBffType(_0x166961[_0x2385a0(0x1b9)](_0x2385a0(0x1b1)))??undefined,_0x1179b2=buildDatasetCodeToAliasMap(_0x166961['apiDir'],_0x166961[_0x2385a0(0x1ea)]),[_0x265e61,_0x3949b4]=await Promise[_0x2385a0(0x1c5)]([listBffScripts(_0x166961[_0x2385a0(0x1ea)],_0x4703b5),getBffScriptStatistics(_0x166961[_0x2385a0(0x1ea)])]),_0x792811=createHookLocationMap(_0x3949b4),_0x43a120=[];for(const _0x3e0bb3 of _0x265e61){const _0x4609da=resolveRemoteScriptTarget(_0x51217c,_0x3e0bb3,_0x792811,_0x256edc[_0x2385a0(0x1d9)],_0x1179b2);if(!_0x4609da){_0x43a120[_0x2385a0(0x1e9)]({'scriptType':_0x3e0bb3[_0x2385a0(0x1cb)],'functionName':_0x3e0bb3['functionName']??'','status':_0x2385a0(0x1ba),'reason':'unresolvable\x20target\x20path'});continue;}const _0x2f0d4b=_0x256edc[_0x2385a0(0x1d9)][_0x4609da[_0x2385a0(0x1d7)]],_0x21198c=_0x3e0bb3[_0x2385a0(0x1d1)]!=null?computeContentHash(_0x3e0bb3['scriptContent']):undefined,_0x5c6f57=await hasUnsyncedLocalChanges(_0x4609da[_0x2385a0(0x1cc)],_0x2f0d4b,_0x21198c);_0x43a120[_0x2385a0(0x1e9)]({'lockKey':_0x4609da['lockKey'],'filePath':_0x4609da[_0x2385a0(0x1cc)],'remoteId':_0x3e0bb3['id']??null,'status':_0x5c6f57?'conflict':'would_pull'});}return{'method':_0x2385a0(0x1ce),'url':_0x2385a0(0x1ee)+_0x166961['appCode']+(_0x4703b5?_0x2385a0(0x1ed)+_0x4703b5:''),'body':{'appCode':_0x166961[_0x2385a0(0x1ea)],'filterType':_0x4703b5??null,'files':_0x43a120},'description':_0x2385a0(0x1c6)+_0x43a120['length']+_0x2385a0(0x1df)};},async 'execute'(_0x3b9117){const _0x58ee12=a30_0x5604c4,_0x1f99d2=loadBffProjectConfig(_0x3b9117[_0x58ee12(0x1ea)]),_0x2e58dc=await readBffLockFile(_0x1f99d2[_0x58ee12(0x1e0)]),{lockData:_0x5be76b,appLock:_0x5ceabb}=ensureLockScope(_0x2e58dc??createEmptyBffLock(),_0x3b9117['appCode'],_0x1f99d2[_0x58ee12(0x1b4)],_0x58ee12(0x1e4)),_0x5e64d6=normalizeBffType(_0x3b9117[_0x58ee12(0x1b9)](_0x58ee12(0x1b1)))??undefined;if(_0x3b9117[_0x58ee12(0x1b9)](_0x58ee12(0x1b1))&&!_0x5e64d6)throw CliErrors[_0x58ee12(0x1c0)](_0x58ee12(0x1bd));const [_0x2d0a39,_0x4897a4]=await Promise['all']([listBffScripts(_0x3b9117[_0x58ee12(0x1ea)],_0x5e64d6),getBffScriptStatistics(_0x3b9117[_0x58ee12(0x1ea)])]);if(_0x2d0a39[_0x58ee12(0x1de)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20BFF\x20scripts\x20found.'};const _0x2aab84=_0x3b9117[_0x58ee12(0x1e1)](_0x58ee12(0x1f1));if(_0x2aab84&&!_0x3b9117[_0x58ee12(0x1c8)]){const _0x35d6c3=await confirmForce();if(!_0x35d6c3)throw CliErrors['cancelled'](_0x58ee12(0x1e6));}if(_0x2aab84&&_0x3b9117[_0x58ee12(0x1c8)]){}const _0x19bef8=buildDatasetCodeToAliasMap(_0x3b9117[_0x58ee12(0x1ae)],_0x3b9117[_0x58ee12(0x1ea)]),_0x460eea=createHookLocationMap(_0x4897a4),_0x139f6e=JSON[_0x58ee12(0x1dc)](JSON[_0x58ee12(0x1c3)](_0x5be76b)),_0x3f5c6f=_0x3b9117[_0x58ee12(0x1ea)],_0x5135e4=_0x139f6e[_0x58ee12(0x1f0)][_0x3f5c6f];if(!_0x5135e4)throw new Error(_0x58ee12(0x1d8)+_0x3f5c6f+_0x58ee12(0x1f4));const _0xae93a6=[],_0x5816cf=[],_0x5b5fb3=[];for(const _0xc0da7c of _0x2d0a39){const _0x290cc9=resolveRemoteScriptTarget(_0x1f99d2,_0xc0da7c,_0x460eea,_0x5ceabb[_0x58ee12(0x1d9)],_0x19bef8);if(!_0x290cc9){_0x5816cf['push']({'lockKey':_0xc0da7c[_0x58ee12(0x1cb)]+'/'+_0xc0da7c[_0x58ee12(0x1bc)],'reason':'unresolvable\x20target\x20path'});continue;}const _0x465212=_0x5ceabb['functions'][_0x290cc9['lockKey']];try{if(!_0xc0da7c['id'])throw new Error(_0x58ee12(0x1e3));if(_0xc0da7c[_0x58ee12(0x1d1)]==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x5b5b44=_0xc0da7c['scriptContent'],_0x38f529=computeContentHash(_0x5b5b44);if(!_0x2aab84){const _0x1e51e4=await hasUnsyncedLocalChanges(_0x290cc9[_0x58ee12(0x1cc)],_0x465212,_0x38f529);if(_0x1e51e4){_0x5816cf[_0x58ee12(0x1e9)]({'lockKey':_0x290cc9[_0x58ee12(0x1d7)],'reason':_0x58ee12(0x1c9)});continue;}}await ensureParentDirectory(_0x290cc9[_0x58ee12(0x1cc)]),await writeFile(_0x290cc9[_0x58ee12(0x1cc)],_0x5b5b44,_0x58ee12(0x1b2));const _0x5da18a={'hash':_0x38f529,'remoteId':_0xc0da7c['id'],'version':_0xc0da7c[_0x58ee12(0x1b5)]};_0x290cc9[_0x58ee12(0x1b1)]==='HOOK'&&_0x290cc9[_0x58ee12(0x1b0)]&&(_0x5da18a[_0x58ee12(0x1e5)]=_0x290cc9[_0x58ee12(0x1b0)][_0x58ee12(0x1e5)],_0x5da18a[_0x58ee12(0x1d5)]=_0x290cc9[_0x58ee12(0x1b0)]['datasetCode'],_0x5da18a[_0x58ee12(0x1cd)]=_0x290cc9[_0x58ee12(0x1b0)]['operationType'],_0x5da18a['functionNode']=_0x290cc9['hookLocation']['functionNode']),_0x5135e4[_0x58ee12(0x1d9)][_0x290cc9[_0x58ee12(0x1d7)]]=_0x5da18a,_0xae93a6[_0x58ee12(0x1e9)]({'lockKey':_0x290cc9[_0x58ee12(0x1d7)],'remoteId':_0xc0da7c['id']});}catch(_0x478191){_0x5b5fb3['push']({'lockKey':_0x290cc9[_0x58ee12(0x1d7)],'error':_0x478191 instanceof Error?_0x478191[_0x58ee12(0x1c2)]:String(_0x478191)});}}return _0x5135e4['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x1f99d2['lockFilePath'],_0x139f6e),{'ok':_0x5b5fb3['length']===0x0,'data':{'pulled':_0xae93a6,'skipped':_0x5816cf,'failed':_0x5b5fb3},'message':_0x58ee12(0x1ef)+_0xae93a6[_0x58ee12(0x1de)]+_0x58ee12(0x1b7)+_0x5816cf['length']+_0x58ee12(0x1c1)+_0x5b5fb3[_0x58ee12(0x1de)]+_0x58ee12(0x1ad)};}};async function hasUnsyncedLocalChanges(_0x2465f7,_0x540870,_0x5de23f){if(!await fileExists(_0x2465f7))return![];const _0x2a4eb5=await computeFileHash(_0x2465f7);if(!_0x540870)return _0x5de23f?_0x2a4eb5!==_0x5de23f:!![];return _0x2a4eb5!==_0x540870['hash'];}function buildDatasetCodeToAliasMap(_0x1e945b,_0x552f47){const _0x40facc=a30_0x5604c4,_0x558de4=loadAliasMap(_0x1e945b,undefined,resolveApiFilePath(_0x1e945b,_0x552f47));return new Map(_0x558de4[_0x40facc(0x1e7)](_0x1cb786=>[_0x1cb786[_0x40facc(0x1d5)],_0x1cb786[_0x40facc(0x1e5)]]));}async function confirmForce(){const _0x36a1ee=a30_0x5604c4,_0x616fbe=createInterface({'input':process['stdin'],'output':process[_0x36a1ee(0x1d0)]}),_0x2c5630=await new Promise(_0x3beb7c=>{const _0x2b10f0=_0x36a1ee;_0x616fbe[_0x2b10f0(0x1b8)]('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0x3beb7c);});return _0x616fbe[_0x36a1ee(0x1db)](),['y',_0x36a1ee(0x1bb)][_0x36a1ee(0x1af)](_0x2c5630[_0x36a1ee(0x1da)]()[_0x36a1ee(0x1ec)]());}
@@ -1 +1 @@
1
- const a31_0x5c70a6=a31_0xf08a;(function(_0x14f291,_0x3f6a55){const _0xd72b32=a31_0xf08a,_0x3f2184=_0x14f291();while(!![]){try{const _0x44b5e7=-parseInt(_0xd72b32(0x1c7))/0x1*(-parseInt(_0xd72b32(0x194))/0x2)+-parseInt(_0xd72b32(0x1c2))/0x3*(parseInt(_0xd72b32(0x1ae))/0x4)+-parseInt(_0xd72b32(0x1b7))/0x5+-parseInt(_0xd72b32(0x1c6))/0x6*(-parseInt(_0xd72b32(0x19c))/0x7)+parseInt(_0xd72b32(0x1b1))/0x8*(-parseInt(_0xd72b32(0x1a2))/0x9)+-parseInt(_0xd72b32(0x1bf))/0xa*(parseInt(_0xd72b32(0x199))/0xb)+-parseInt(_0xd72b32(0x184))/0xc*(-parseInt(_0xd72b32(0x18d))/0xd);if(_0x44b5e7===_0x3f6a55)break;else _0x3f2184['push'](_0x3f2184['shift']());}catch(_0x4014d5){_0x3f2184['push'](_0x3f2184['shift']());}}}(a31_0x4db4,0xa532b));function a31_0xf08a(_0x15f3c2,_0x371ceb){_0x15f3c2=_0x15f3c2-0x180;const _0x4db4c1=a31_0x4db4();let _0xf08a0=_0x4db4c1[_0x15f3c2];return _0xf08a0;}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';function a31_0x4db4(){const _0x445065=['would_push','alias','name','Run\x20`','Push\x20complete:\x20','ENDPOINT','123206lkgNub','apiDir','toISOString','Cannot\x20resolve\x20dataset\x20for\x20\x22','code','1760lUsyIX','Push\x20local\x20BFF\x20scripts\x20to\x20remote','set','3861501GLMPgz','POST','HOOK','create','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','appCode','180zSWQNC',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','Force\x20push\x20ignoring\x20hash\x20protection','description','string','/api/management/library/scripts/save','No\x20local\x20BFF\x20functions\x20found.','length','version','unchanged','push','utf8','3584516MsxypS','\x20failed','\x22.\x20','134800kNlidL','\x20skipped,\x20','force','\x20local\x20BFF\x20script(s)\x20for\x20push','get','lockKey','5436955deesXB','str','operationType','functionNode','lockFilePath','validation','datasetCode','\x20uploaded,\x20','36960Advfry','COMMON','bool','3YDSLUc','lastSync','Local\x20function\x20not\x20found:\x20','bff','6ptylfu','8TeIuTH','some','has','datasetCodeToId','values','Incomplete\x20HOOK\x20path:\x20','remoteId','datasetId','type','functions','filter','1524nhkkzz','scriptsRoot','update','boolean','high-risk-write','aliasToDatasetCode','hash','message','filePath','260416lhBhbI'];a31_0x4db4=function(){return _0x445065;};return a31_0x4db4();}export const bffPush={'service':a31_0x5c70a6(0x1c5),'command':a31_0x5c70a6(0x1ac),'description':a31_0x5c70a6(0x19a),'risk':a31_0x5c70a6(0x188),'flags':[{'name':a31_0x5c70a6(0x181),'type':a31_0x5c70a6(0x1a6),'description':'Push\x20only\x20this\x20script\x20type','enum':[a31_0x5c70a6(0x1c0),a31_0x5c70a6(0x193),a31_0x5c70a6(0x19e)]},{'name':a31_0x5c70a6(0x190),'type':a31_0x5c70a6(0x1a6),'description':'Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)'},{'name':a31_0x5c70a6(0x1b3),'type':a31_0x5c70a6(0x187),'description':a31_0x5c70a6(0x1a4)}],async 'dryRun'(_0x2fd8e1){const _0x2dcdea=a31_0x5c70a6,_0x1a34a5=loadBffProjectConfig(_0x2fd8e1[_0x2dcdea(0x1a1)]),_0x3084fc=await readBffLockFile(_0x1a34a5[_0x2dcdea(0x1bb)]),{appLock:_0x2387e9}=ensureLockScope(_0x3084fc??createEmptyBffLock(),_0x2fd8e1[_0x2dcdea(0x1a1)],_0x1a34a5['scriptsRoot'],'push'),_0x21bed5=await getTargetFunctions(_0x1a34a5,_0x2fd8e1),_0x5273c1=_0x2fd8e1[_0x2dcdea(0x1c1)](_0x2dcdea(0x1b3)),_0x239bed=[];for(const _0x5c9212 of _0x21bed5){const _0x4ca812=await computeFileHash(_0x5c9212[_0x2dcdea(0x18c)]),_0x3a57e5=_0x2387e9['functions'][_0x5c9212[_0x2dcdea(0x1b6)]],_0xaac1b5=!!_0x3a57e5&&_0x3a57e5['hash']===_0x4ca812;_0x239bed[_0x2dcdea(0x1ac)]({'lockKey':_0x5c9212[_0x2dcdea(0x1b6)],'filePath':_0x5c9212[_0x2dcdea(0x18c)],'remoteId':_0x3a57e5?.[_0x2dcdea(0x1cd)]??null,'mode':_0x3a57e5?.['remoteId']?_0x2dcdea(0x186):_0x2dcdea(0x19f),'status':!_0x5273c1&&_0xaac1b5?'unchanged':_0x2dcdea(0x18e)});}return{'method':_0x2dcdea(0x19d),'url':_0x2dcdea(0x1a7),'body':{'appCode':_0x2fd8e1[_0x2dcdea(0x1a1)],'force':_0x5273c1,'files':_0x239bed},'description':'Would\x20inspect\x20'+_0x239bed[_0x2dcdea(0x1a9)]+_0x2dcdea(0x1b4)};},async 'execute'(_0x34363b){const _0x238c06=a31_0x5c70a6,_0xfeb754=loadBffProjectConfig(_0x34363b['appCode']),_0xbc5c35=await readBffLockFile(_0xfeb754[_0x238c06(0x1bb)]),{lockData:_0x22d91b,appLock:_0x382117}=ensureLockScope(_0xbc5c35??createEmptyBffLock(),_0x34363b[_0x238c06(0x1a1)],_0xfeb754[_0x238c06(0x185)],_0x238c06(0x1ac)),_0x8d8072=await getTargetFunctions(_0xfeb754,_0x34363b);if(_0x8d8072[_0x238c06(0x1a9)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0x238c06(0x1a8)};const _0x13440f=_0x34363b[_0x238c06(0x1c1)](_0x238c06(0x1b3)),_0x1415d2=await buildHookMaps(_0x34363b[_0x238c06(0x1a1)],_0x34363b[_0x238c06(0x195)],_0x8d8072,_0x382117),_0x1aab74=[],_0x2255e8=[],_0x5e95bc=[];for(const _0x2e7970 of _0x8d8072){const _0x2c1025=await computeFileHash(_0x2e7970['filePath']),_0x4d08a1=_0x382117[_0x238c06(0x182)][_0x2e7970[_0x238c06(0x1b6)]];if(!_0x13440f&&_0x4d08a1&&_0x4d08a1[_0x238c06(0x18a)]===_0x2c1025){_0x2255e8[_0x238c06(0x1ac)]({'lockKey':_0x2e7970[_0x238c06(0x1b6)],'reason':_0x238c06(0x1ab)});continue;}try{await uploadSingleFunction(_0x34363b[_0x238c06(0x1a1)],_0x2e7970,_0x382117,_0x1415d2);const _0x367010=_0x382117[_0x238c06(0x182)][_0x2e7970['lockKey']];_0x1aab74[_0x238c06(0x1ac)]({'lockKey':_0x2e7970[_0x238c06(0x1b6)],'remoteId':_0x367010?.[_0x238c06(0x1cd)]??0x0});}catch(_0x2b3f23){_0x5e95bc['push']({'lockKey':_0x2e7970[_0x238c06(0x1b6)],'error':_0x2b3f23 instanceof Error?_0x2b3f23[_0x238c06(0x18b)]:String(_0x2b3f23)});}}return _0x382117[_0x238c06(0x1c3)]=new Date()[_0x238c06(0x196)](),await writeBffLockFile(_0xfeb754[_0x238c06(0x1bb)],_0x22d91b),{'ok':_0x5e95bc[_0x238c06(0x1a9)]===0x0,'data':{'uploaded':_0x1aab74,'skipped':_0x2255e8,'failed':_0x5e95bc},'message':_0x238c06(0x192)+_0x1aab74['length']+_0x238c06(0x1be)+_0x2255e8['length']+_0x238c06(0x1b2)+_0x5e95bc[_0x238c06(0x1a9)]+_0x238c06(0x1af)};}};async function getTargetFunctions(_0x5ef6e4,_0x2ed0f3){const _0x20767e=a31_0x5c70a6,_0x17a78e=_0x2ed0f3['str'](_0x20767e(0x181)),_0x4fd8fd=_0x2ed0f3[_0x20767e(0x1b8)](_0x20767e(0x190)),_0x47da63=normalizeBffType(_0x17a78e)??undefined;if(_0x4fd8fd&&!_0x47da63)throw CliErrors[_0x20767e(0x1bc)](_0x20767e(0x1a0));const _0x230d4b=await scanLocalBffFunctions(_0x5ef6e4,_0x47da63);if(_0x4fd8fd){const _0x548e78=_0x230d4b[_0x20767e(0x183)](_0x2d5a51=>_0x2d5a51['name']===_0x4fd8fd);if(_0x548e78[_0x20767e(0x1a9)]===0x0)throw CliErrors[_0x20767e(0x1bc)](_0x20767e(0x1c4)+_0x47da63+'/'+_0x4fd8fd);return _0x548e78;}return _0x230d4b;}async function buildHookMaps(_0x2770c3,_0xaedf23,_0x354d89,_0x3e05fb){const _0x438bfe=a31_0x5c70a6,_0x4de63b=_0x354d89[_0x438bfe(0x1c8)](_0x5760fd=>_0x5760fd['type']==='HOOK');if(!_0x4de63b)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x21b82=loadAliasMap(_0xaedf23,undefined,resolveApiFilePath(_0xaedf23,_0x2770c3)),_0xa2f33e=new Map(_0x21b82['map'](_0x1b30ad=>[_0x1b30ad[_0x438bfe(0x18f)],_0x1b30ad[_0x438bfe(0x1bd)]]));for(const _0x194301 of Object[_0x438bfe(0x1cb)](_0x3e05fb['functions'])){_0x194301['alias']&&_0x194301['datasetCode']&&!_0xa2f33e[_0x438bfe(0x1c9)](_0x194301['alias'])&&_0xa2f33e[_0x438bfe(0x19b)](_0x194301[_0x438bfe(0x18f)],_0x194301[_0x438bfe(0x1bd)]);}const _0x42379a=await listDatasets(_0x2770c3),_0x85c8a4=new Map(_0x42379a['map'](_0x3dcf07=>[_0x3dcf07[_0x438bfe(0x198)],_0x3dcf07['id']]));return{'aliasToDatasetCode':_0xa2f33e,'datasetCodeToId':_0x85c8a4};}async function uploadSingleFunction(_0x154de9,_0x1e0101,_0x2cdf16,_0x4d685f){const _0x4d664a=a31_0x5c70a6,_0x286c4d=await readFile(_0x1e0101[_0x4d664a(0x18c)],_0x4d664a(0x1ad)),_0x1aae03=await computeFileHash(_0x1e0101[_0x4d664a(0x18c)]),_0x491db5=_0x2cdf16[_0x4d664a(0x182)][_0x1e0101[_0x4d664a(0x1b6)]];if(_0x491db5?.[_0x4d664a(0x1cd)]&&_0x491db5[_0x4d664a(0x1aa)]==null)throw CliErrors[_0x4d664a(0x1bc)](_0x1e0101['lockKey']+_0x4d664a(0x1a3));let _0x327c36=extractScriptDescription(_0x286c4d);if(!_0x327c36&&_0x491db5?.['remoteId']){const _0x5e9977=await getBffScriptInfo(_0x491db5[_0x4d664a(0x1cd)]);_0x327c36=_0x5e9977[_0x4d664a(0x1a5)]||undefined;}const _0x347ea2={'appCode':_0x154de9,'functionName':_0x1e0101[_0x4d664a(0x190)],'scriptType':_0x1e0101[_0x4d664a(0x181)],'scriptContent':_0x286c4d};if(_0x491db5?.['remoteId'])_0x347ea2['id']=_0x491db5[_0x4d664a(0x1cd)];if(_0x491db5?.[_0x4d664a(0x1aa)]!=null)_0x347ea2[_0x4d664a(0x1aa)]=_0x491db5[_0x4d664a(0x1aa)];if(_0x327c36)_0x347ea2[_0x4d664a(0x1a5)]=_0x327c36;if(_0x1e0101[_0x4d664a(0x181)]==='HOOK'){const _0x5cb722=_0x1e0101[_0x4d664a(0x18f)];if(!_0x5cb722||!_0x1e0101['operationType']||!_0x1e0101[_0x4d664a(0x1ba)])throw CliErrors['validation'](_0x4d664a(0x1cc)+_0x1e0101['lockKey']);const _0x27314b=_0x4d685f['aliasToDatasetCode']['get'](_0x5cb722)??_0x491db5?.[_0x4d664a(0x1bd)]??_0x5cb722,_0x12717d=_0x4d685f[_0x4d664a(0x1ca)][_0x4d664a(0x1b5)](_0x27314b);if(!_0x12717d)throw CliErrors[_0x4d664a(0x1bc)](_0x4d664a(0x197)+_0x5cb722+_0x4d664a(0x1b0)+(_0x4d664a(0x191)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.'));_0x347ea2[_0x4d664a(0x180)]=_0x12717d,_0x347ea2[_0x4d664a(0x1b9)]=_0x1e0101[_0x4d664a(0x1b9)],_0x347ea2[_0x4d664a(0x1ba)]=_0x1e0101['functionNode'];}const _0x1d7fff=await saveBffScript(_0x347ea2),_0xadf21=await getBffScriptInfo(_0x1d7fff),_0x3889d9={'hash':_0x1aae03,'remoteId':_0x1d7fff,'version':_0xadf21[_0x4d664a(0x1aa)]};if(_0x1e0101[_0x4d664a(0x181)]===_0x4d664a(0x19e)){const _0x6b993f=_0x1e0101[_0x4d664a(0x18f)],_0xa2c3a0=_0x4d685f[_0x4d664a(0x189)]['get'](_0x6b993f)??_0x491db5?.['datasetCode']??_0x6b993f;_0x4d685f[_0x4d664a(0x189)]['has'](_0x6b993f)?_0x3889d9[_0x4d664a(0x18f)]=_0x6b993f:_0x3889d9[_0x4d664a(0x18f)]=_0x491db5?.[_0x4d664a(0x18f)],_0x3889d9['datasetCode']=_0xa2c3a0,_0x3889d9[_0x4d664a(0x1b9)]=_0x1e0101['operationType'],_0x3889d9[_0x4d664a(0x1ba)]=_0x1e0101['functionNode'];}_0x2cdf16['functions'][_0x1e0101[_0x4d664a(0x1b6)]]=_0x3889d9;}
1
+ const a31_0x1de7b3=a31_0x4baa;(function(_0x1933d4,_0x423cd2){const _0x4de992=a31_0x4baa,_0x4ca482=_0x1933d4();while(!![]){try{const _0x53413f=-parseInt(_0x4de992(0x1c7))/0x1+-parseInt(_0x4de992(0x1b1))/0x2*(parseInt(_0x4de992(0x1d4))/0x3)+-parseInt(_0x4de992(0x1a9))/0x4+-parseInt(_0x4de992(0x1cb))/0x5+-parseInt(_0x4de992(0x1ce))/0x6+-parseInt(_0x4de992(0x1bf))/0x7*(parseInt(_0x4de992(0x1ad))/0x8)+parseInt(_0x4de992(0x1a1))/0x9;if(_0x53413f===_0x423cd2)break;else _0x4ca482['push'](_0x4ca482['shift']());}catch(_0x47b2ea){_0x4ca482['push'](_0x4ca482['shift']());}}}(a31_0x5c33,0x9f389));function a31_0x5c33(){const _0x14c53b=['validation','filePath','alias','2273215nXkZiW','Incomplete\x20HOOK\x20path:\x20','filter','817818ZdAKsv','map','/api/management/library/scripts/save','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','POST','667287PZGtwp','Would\x20inspect\x20','code','aliasToDatasetCode','push','functions','description','remoteId','datasetCode','operationType','would_push','bff','Push\x20complete:\x20','string','values','unchanged','Force\x20push\x20ignoring\x20hash\x20protection','28870785ZAtsyO','name','version','Cannot\x20resolve\x20dataset\x20for\x20\x22','force','Push\x20local\x20BFF\x20scripts\x20to\x20remote','\x20skipped,\x20','datasetId','2747612DXTwAE','high-risk-write','lockKey','\x20failed','23224HMGgUX','appCode','get','\x20uploaded,\x20','6TiaIKt','message','type','HOOK','Local\x20function\x20not\x20found:\x20','\x20local\x20BFF\x20script(s)\x20for\x20push','set','lockFilePath','\x22.\x20','functionNode','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','Run\x20`','str','ENDPOINT','1099EPaFrT','bool','COMMON','toISOString','lastSync','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','datasetCodeToId','length','154789JiibHz'];a31_0x5c33=function(){return _0x14c53b;};return a31_0x5c33();}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';function a31_0x4baa(_0xbb02e7,_0x644bf8){_0xbb02e7=_0xbb02e7-0x193;const _0x5c3341=a31_0x5c33();let _0x4baad3=_0x5c3341[_0xbb02e7];return _0x4baad3;}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':a31_0x1de7b3(0x19b),'command':a31_0x1de7b3(0x194),'description':a31_0x1de7b3(0x1a6),'risk':a31_0x1de7b3(0x1aa),'flags':[{'name':'type','type':a31_0x1de7b3(0x19d),'description':'Push\x20only\x20this\x20script\x20type','enum':[a31_0x1de7b3(0x1c1),a31_0x1de7b3(0x1be),a31_0x1de7b3(0x1b4)]},{'name':a31_0x1de7b3(0x1a2),'type':a31_0x1de7b3(0x19d),'description':a31_0x1de7b3(0x1c4)},{'name':'force','type':'boolean','description':a31_0x1de7b3(0x1a0)}],async 'dryRun'(_0x2697f4){const _0x3da6ad=a31_0x1de7b3,_0x236be6=loadBffProjectConfig(_0x2697f4['appCode']),_0x1793d8=await readBffLockFile(_0x236be6[_0x3da6ad(0x1b8)]),{appLock:_0x419e02}=ensureLockScope(_0x1793d8??createEmptyBffLock(),_0x2697f4[_0x3da6ad(0x1ae)],_0x236be6['scriptsRoot'],'push'),_0x3c1360=await getTargetFunctions(_0x236be6,_0x2697f4),_0x4db68b=_0x2697f4[_0x3da6ad(0x1c0)]('force'),_0x45f541=[];for(const _0x5348a5 of _0x3c1360){const _0x13bb80=await computeFileHash(_0x5348a5[_0x3da6ad(0x1c9)]),_0x44290a=_0x419e02[_0x3da6ad(0x195)][_0x5348a5[_0x3da6ad(0x1ab)]],_0xf865b6=!!_0x44290a&&_0x44290a['hash']===_0x13bb80;_0x45f541[_0x3da6ad(0x194)]({'lockKey':_0x5348a5[_0x3da6ad(0x1ab)],'filePath':_0x5348a5[_0x3da6ad(0x1c9)],'remoteId':_0x44290a?.[_0x3da6ad(0x197)]??null,'mode':_0x44290a?.['remoteId']?'update':'create','status':!_0x4db68b&&_0xf865b6?_0x3da6ad(0x19f):_0x3da6ad(0x19a)});}return{'method':_0x3da6ad(0x1d3),'url':_0x3da6ad(0x1d0),'body':{'appCode':_0x2697f4['appCode'],'force':_0x4db68b,'files':_0x45f541},'description':_0x3da6ad(0x1d5)+_0x45f541[_0x3da6ad(0x1c6)]+_0x3da6ad(0x1b6)};},async 'execute'(_0x4f536e){const _0x47af14=a31_0x1de7b3,_0x319852=loadBffProjectConfig(_0x4f536e[_0x47af14(0x1ae)]),_0x505521=await readBffLockFile(_0x319852['lockFilePath']),{lockData:_0x45b447,appLock:_0x1759fa}=ensureLockScope(_0x505521??createEmptyBffLock(),_0x4f536e[_0x47af14(0x1ae)],_0x319852['scriptsRoot'],_0x47af14(0x194)),_0x135996=await getTargetFunctions(_0x319852,_0x4f536e);if(_0x135996[_0x47af14(0x1c6)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':'No\x20local\x20BFF\x20functions\x20found.'};const _0x180574=_0x4f536e['bool'](_0x47af14(0x1a5)),_0x29d0d4=await buildHookMaps(_0x4f536e[_0x47af14(0x1ae)],_0x4f536e['apiDir'],_0x135996,_0x1759fa),_0x1f512e=[],_0x29d2de=[],_0x265edd=[];for(const _0x4b8fe6 of _0x135996){const _0x2f1989=await computeFileHash(_0x4b8fe6[_0x47af14(0x1c9)]),_0x17a53c=_0x1759fa['functions'][_0x4b8fe6['lockKey']];if(!_0x180574&&_0x17a53c&&_0x17a53c['hash']===_0x2f1989){_0x29d2de[_0x47af14(0x194)]({'lockKey':_0x4b8fe6[_0x47af14(0x1ab)],'reason':_0x47af14(0x19f)});continue;}try{await uploadSingleFunction(_0x4f536e[_0x47af14(0x1ae)],_0x4b8fe6,_0x1759fa,_0x29d0d4);const _0x5ee1b1=_0x1759fa[_0x47af14(0x195)][_0x4b8fe6[_0x47af14(0x1ab)]];_0x1f512e['push']({'lockKey':_0x4b8fe6[_0x47af14(0x1ab)],'remoteId':_0x5ee1b1?.[_0x47af14(0x197)]??0x0});}catch(_0x2702b2){_0x265edd['push']({'lockKey':_0x4b8fe6[_0x47af14(0x1ab)],'error':_0x2702b2 instanceof Error?_0x2702b2[_0x47af14(0x1b2)]:String(_0x2702b2)});}}return _0x1759fa[_0x47af14(0x1c3)]=new Date()[_0x47af14(0x1c2)](),await writeBffLockFile(_0x319852[_0x47af14(0x1b8)],_0x45b447),{'ok':_0x265edd[_0x47af14(0x1c6)]===0x0,'data':{'uploaded':_0x1f512e,'skipped':_0x29d2de,'failed':_0x265edd},'message':_0x47af14(0x19c)+_0x1f512e[_0x47af14(0x1c6)]+_0x47af14(0x1b0)+_0x29d2de['length']+_0x47af14(0x1a7)+_0x265edd[_0x47af14(0x1c6)]+_0x47af14(0x1ac)};}};async function getTargetFunctions(_0x3bb8be,_0x27f536){const _0x2b2c62=a31_0x1de7b3,_0x232fdb=_0x27f536[_0x2b2c62(0x1bd)](_0x2b2c62(0x1b3)),_0x2409af=_0x27f536['str'](_0x2b2c62(0x1a2)),_0x2737bc=normalizeBffType(_0x232fdb)??undefined;if(_0x2409af&&!_0x2737bc)throw CliErrors['validation'](_0x2b2c62(0x1bb));const _0x13e7d3=await scanLocalBffFunctions(_0x3bb8be,_0x2737bc);if(_0x2409af){const _0x46eb80=_0x13e7d3[_0x2b2c62(0x1cd)](_0x265492=>_0x265492[_0x2b2c62(0x1a2)]===_0x2409af);if(_0x46eb80[_0x2b2c62(0x1c6)]===0x0)throw CliErrors[_0x2b2c62(0x1c8)](_0x2b2c62(0x1b5)+_0x2737bc+'/'+_0x2409af);return _0x46eb80;}return _0x13e7d3;}async function buildHookMaps(_0x3d1dd4,_0x5039b7,_0x18c100,_0x186610){const _0xc0d745=a31_0x1de7b3,_0x42c709=_0x18c100['some'](_0x250a3d=>_0x250a3d[_0xc0d745(0x1b3)]===_0xc0d745(0x1b4));if(!_0x42c709)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x218f50=loadAliasMap(_0x5039b7,undefined,resolveApiFilePath(_0x5039b7,_0x3d1dd4)),_0x1f4244=new Map(_0x218f50[_0xc0d745(0x1cf)](_0x4ea9b8=>[_0x4ea9b8[_0xc0d745(0x1ca)],_0x4ea9b8['datasetCode']]));for(const _0x2ca216 of Object[_0xc0d745(0x19e)](_0x186610[_0xc0d745(0x195)])){_0x2ca216[_0xc0d745(0x1ca)]&&_0x2ca216[_0xc0d745(0x198)]&&!_0x1f4244['has'](_0x2ca216[_0xc0d745(0x1ca)])&&_0x1f4244[_0xc0d745(0x1b7)](_0x2ca216[_0xc0d745(0x1ca)],_0x2ca216[_0xc0d745(0x198)]);}const _0x424f8d=await listDatasets(_0x3d1dd4),_0x4d04f2=new Map(_0x424f8d['map'](_0x27e87e=>[_0x27e87e[_0xc0d745(0x1d6)],_0x27e87e['id']]));return{'aliasToDatasetCode':_0x1f4244,'datasetCodeToId':_0x4d04f2};}async function uploadSingleFunction(_0x32466b,_0x12dc1c,_0x491d88,_0x4a280d){const _0x118791=a31_0x1de7b3,_0x2f5fb5=await readFile(_0x12dc1c[_0x118791(0x1c9)],'utf8'),_0x1152f8=await computeFileHash(_0x12dc1c[_0x118791(0x1c9)]),_0x48d4d6=_0x491d88[_0x118791(0x195)][_0x12dc1c[_0x118791(0x1ab)]];if(_0x48d4d6?.['remoteId']&&_0x48d4d6[_0x118791(0x1a3)]==null)throw CliErrors['validation'](_0x12dc1c[_0x118791(0x1ab)]+_0x118791(0x1d2));let _0x3dd42d=extractScriptDescription(_0x2f5fb5);if(!_0x3dd42d&&_0x48d4d6?.[_0x118791(0x197)]){const _0x566114=await getBffScriptInfo(_0x48d4d6[_0x118791(0x197)]);_0x3dd42d=_0x566114[_0x118791(0x196)]||undefined;}const _0x524c0a={'appCode':_0x32466b,'functionName':_0x12dc1c[_0x118791(0x1a2)],'scriptType':_0x12dc1c[_0x118791(0x1b3)],'scriptContent':_0x2f5fb5};if(_0x48d4d6?.[_0x118791(0x197)])_0x524c0a['id']=_0x48d4d6['remoteId'];if(_0x48d4d6?.['version']!=null)_0x524c0a[_0x118791(0x1a3)]=_0x48d4d6[_0x118791(0x1a3)];if(_0x3dd42d)_0x524c0a[_0x118791(0x196)]=_0x3dd42d;if(_0x12dc1c[_0x118791(0x1b3)]===_0x118791(0x1b4)){const _0x3643cc=_0x12dc1c[_0x118791(0x1ca)];if(!_0x3643cc||!_0x12dc1c[_0x118791(0x199)]||!_0x12dc1c[_0x118791(0x1ba)])throw CliErrors[_0x118791(0x1c8)](_0x118791(0x1cc)+_0x12dc1c[_0x118791(0x1ab)]);const _0x1c94a4=_0x4a280d[_0x118791(0x193)]['get'](_0x3643cc)??_0x48d4d6?.['datasetCode']??_0x3643cc,_0x4a25f5=_0x4a280d[_0x118791(0x1c5)][_0x118791(0x1af)](_0x1c94a4);if(!_0x4a25f5)throw CliErrors[_0x118791(0x1c8)](_0x118791(0x1a4)+_0x3643cc+_0x118791(0x1b9)+(_0x118791(0x1bc)+CLI_BIN_NAME+_0x118791(0x1d1)));_0x524c0a[_0x118791(0x1a8)]=_0x4a25f5,_0x524c0a['operationType']=_0x12dc1c[_0x118791(0x199)],_0x524c0a[_0x118791(0x1ba)]=_0x12dc1c['functionNode'];}const _0x331d00=await saveBffScript(_0x524c0a),_0x149d57=await getBffScriptInfo(_0x331d00),_0x53c044={'hash':_0x1152f8,'remoteId':_0x331d00,'version':_0x149d57[_0x118791(0x1a3)]};if(_0x12dc1c[_0x118791(0x1b3)]===_0x118791(0x1b4)){const _0x2be654=_0x12dc1c[_0x118791(0x1ca)],_0x517a41=_0x4a280d['aliasToDatasetCode'][_0x118791(0x1af)](_0x2be654)??_0x48d4d6?.[_0x118791(0x198)]??_0x2be654;_0x4a280d[_0x118791(0x193)]['has'](_0x2be654)?_0x53c044[_0x118791(0x1ca)]=_0x2be654:_0x53c044['alias']=_0x48d4d6?.[_0x118791(0x1ca)],_0x53c044['datasetCode']=_0x517a41,_0x53c044['operationType']=_0x12dc1c['operationType'],_0x53c044[_0x118791(0x1ba)]=_0x12dc1c[_0x118791(0x1ba)];}_0x491d88['functions'][_0x12dc1c['lockKey']]=_0x53c044;}
@@ -1 +1 @@
1
- const a32_0x2032eb=a32_0x1727;(function(_0x5861d2,_0xc197e3){const _0x9aa66f=a32_0x1727,_0x212cba=_0x5861d2();while(!![]){try{const _0x58f2b1=parseInt(_0x9aa66f(0xff))/0x1*(parseInt(_0x9aa66f(0xfb))/0x2)+parseInt(_0x9aa66f(0xf8))/0x3*(-parseInt(_0x9aa66f(0x107))/0x4)+parseInt(_0x9aa66f(0x111))/0x5*(-parseInt(_0x9aa66f(0x105))/0x6)+parseInt(_0x9aa66f(0x110))/0x7+-parseInt(_0x9aa66f(0x112))/0x8*(parseInt(_0x9aa66f(0x10d))/0x9)+-parseInt(_0x9aa66f(0x10f))/0xa+parseInt(_0x9aa66f(0x11a))/0xb;if(_0x58f2b1===_0xc197e3)break;else _0x212cba['push'](_0x212cba['shift']());}catch(_0x1d45d9){_0x212cba['push'](_0x212cba['shift']());}}}(a32_0x3ff4,0x3ca46));import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';function a32_0x3ff4(){const _0x443dd6=['11514547CaggNI','6SmaoXe','alias','map','4fosQnC','scriptsRoot','\x20modified,\x20','bool','50458TrXQpy','functions','boolean','lockFilePath','Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally','status','798ZufQmQ','lockKey','445972pdduHI','\x20added,\x20','datasetCode','hash','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','length','20394sLnOZB','bff','2530910JNYGDz','517349HcAOQR','14515Qpckpc','392FvfWnk','All\x20BFF\x20scripts\x20are\x20in\x20sync.','apiDir','push','remote','\x20remote-only','appCode','has'];a32_0x3ff4=function(){return _0x443dd6;};return a32_0x3ff4();}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 a32_0x1727(_0x16b8f1,_0x14b1f7){_0x16b8f1=_0x16b8f1-0xf8;const _0x3ff4da=a32_0x3ff4();let _0x172724=_0x3ff4da[_0x16b8f1];return _0x172724;}import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';export const bffStatus={'service':a32_0x2032eb(0x10e),'command':a32_0x2032eb(0x104),'description':a32_0x2032eb(0x10b),'risk':'read','flags':[{'name':a32_0x2032eb(0x116),'type':a32_0x2032eb(0x101),'description':a32_0x2032eb(0x103)}],async 'execute'(_0x24cead){const _0x40fe0f=a32_0x2032eb,_0x42e65f=loadBffProjectConfig(_0x24cead['appCode']),_0x3161ce=await readBffLockFile(_0x42e65f[_0x40fe0f(0x102)]),{appLock:_0x4a10d3}=ensureLockScope(_0x3161ce??createEmptyBffLock(),_0x24cead[_0x40fe0f(0x118)],_0x42e65f[_0x40fe0f(0xfc)],_0x40fe0f(0x104)),_0x27879d=await scanLocalBffFunctions(_0x42e65f),_0x514392=[],_0x5b7f2b=[],_0xfb4b08=[];for(const _0x3c12d1 of _0x27879d){const _0x29ed5d=await computeFileHash(_0x3c12d1['filePath']),_0x1035a5=_0x4a10d3[_0x40fe0f(0x100)][_0x3c12d1[_0x40fe0f(0x106)]];if(!_0x1035a5)_0x514392[_0x40fe0f(0x115)](_0x3c12d1[_0x40fe0f(0x106)]);else _0x1035a5[_0x40fe0f(0x10a)]!==_0x29ed5d?_0x5b7f2b[_0x40fe0f(0x115)](_0x3c12d1[_0x40fe0f(0x106)]):_0xfb4b08[_0x40fe0f(0x115)](_0x3c12d1[_0x40fe0f(0x106)]);}const _0x22e760=[];if(_0x24cead[_0x40fe0f(0xfe)](_0x40fe0f(0x116))){const _0x2fbf84=loadAliasMap(_0x24cead['apiDir'],undefined,resolveApiFilePath(_0x24cead[_0x40fe0f(0x114)],_0x24cead[_0x40fe0f(0x118)])),_0x59b573=new Map(_0x2fbf84[_0x40fe0f(0xfa)](_0xe89974=>[_0xe89974[_0x40fe0f(0x109)],_0xe89974[_0x40fe0f(0xf9)]])),[_0x323425,_0x59032e]=await Promise['all']([listBffScripts(_0x24cead[_0x40fe0f(0x118)]),getBffScriptStatistics(_0x24cead[_0x40fe0f(0x118)])]),_0x59feb6=createHookLocationMap(_0x59032e),_0x7db605=new Set(_0x27879d['map'](_0x11c2e3=>_0x11c2e3[_0x40fe0f(0x106)]));for(const _0x43afcd of _0x323425){const _0x270c50=resolveRemoteScriptTarget(_0x42e65f,_0x43afcd,_0x59feb6,_0x4a10d3[_0x40fe0f(0x100)],_0x59b573);_0x270c50&&!_0x7db605[_0x40fe0f(0x119)](_0x270c50['lockKey'])&&_0x22e760[_0x40fe0f(0x115)](_0x270c50[_0x40fe0f(0x106)]);}}const _0x20ee49=_0x514392['length']===0x0&&_0x5b7f2b[_0x40fe0f(0x10c)]===0x0&&_0x22e760[_0x40fe0f(0x10c)]===0x0;return{'ok':!![],'data':{'added':_0x514392,'modified':_0x5b7f2b,'unchanged':_0xfb4b08,'remoteOnly':_0x22e760},'message':_0x20ee49?_0x40fe0f(0x113):_0x514392[_0x40fe0f(0x10c)]+_0x40fe0f(0x108)+_0x5b7f2b[_0x40fe0f(0x10c)]+_0x40fe0f(0xfd)+_0xfb4b08[_0x40fe0f(0x10c)]+'\x20unchanged'+(_0x22e760[_0x40fe0f(0x10c)]>0x0?',\x20'+_0x22e760[_0x40fe0f(0x10c)]+_0x40fe0f(0x117):'')};}};
1
+ const a32_0x55f3ea=a32_0x1dd9;function a32_0x2df8(){const _0x894f60=['length','8zgMEtL','1102064zptDqY','lockKey','814877jYGHdT','read','10rSECWA','all','4842345WMefzu','datasetCode','2150648YTmyMJ','Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally','appCode','38386898MrDoHQ','12wPnMtD','\x20remote-only','24195NIHqjF','map','has','All\x20BFF\x20scripts\x20are\x20in\x20sync.','push','filePath','functions','lockFilePath','bool','\x20unchanged','status','apiDir','2311893ROOowo','92XCCzAm','\x20modified,\x20','scriptsRoot'];a32_0x2df8=function(){return _0x894f60;};return a32_0x2df8();}(function(_0x28c98d,_0x42402c){const _0x35748f=a32_0x1dd9,_0x8451aa=_0x28c98d();while(!![]){try{const _0x873062=-parseInt(_0x35748f(0x157))/0x1+-parseInt(_0x35748f(0x15f))/0x2+parseInt(_0x35748f(0x165))/0x3*(parseInt(_0x35748f(0x152))/0x4)+-parseInt(_0x35748f(0x15d))/0x5+-parseInt(_0x35748f(0x163))/0x6*(parseInt(_0x35748f(0x159))/0x7)+parseInt(_0x35748f(0x156))/0x8*(parseInt(_0x35748f(0x151))/0x9)+-parseInt(_0x35748f(0x15b))/0xa*(-parseInt(_0x35748f(0x162))/0xb);if(_0x873062===_0x42402c)break;else _0x8451aa['push'](_0x8451aa['shift']());}catch(_0x42f23e){_0x8451aa['push'](_0x8451aa['shift']());}}}(a32_0x2df8,0x871c3));import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';function a32_0x1dd9(_0x478c10,_0x442a74){_0x478c10=_0x478c10-0x146;const _0x2df887=a32_0x2df8();let _0x1dd9f3=_0x2df887[_0x478c10];return _0x1dd9f3;}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':'bff','command':a32_0x55f3ea(0x14f),'description':'Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','risk':a32_0x55f3ea(0x15a),'flags':[{'name':'remote','type':'boolean','description':a32_0x55f3ea(0x160)}],async 'execute'(_0x3eabd1){const _0x117a1a=a32_0x55f3ea,_0x2ba5b7=loadBffProjectConfig(_0x3eabd1['appCode']),_0x2f8e09=await readBffLockFile(_0x2ba5b7[_0x117a1a(0x14c)]),{appLock:_0x2dd7c7}=ensureLockScope(_0x2f8e09??createEmptyBffLock(),_0x3eabd1['appCode'],_0x2ba5b7[_0x117a1a(0x154)],_0x117a1a(0x14f)),_0x2682ad=await scanLocalBffFunctions(_0x2ba5b7),_0x5ba7f8=[],_0x5d6705=[],_0x4f091f=[];for(const _0x485b5a of _0x2682ad){const _0x27b7aa=await computeFileHash(_0x485b5a[_0x117a1a(0x14a)]),_0x299f86=_0x2dd7c7[_0x117a1a(0x14b)][_0x485b5a[_0x117a1a(0x158)]];if(!_0x299f86)_0x5ba7f8[_0x117a1a(0x149)](_0x485b5a['lockKey']);else _0x299f86['hash']!==_0x27b7aa?_0x5d6705[_0x117a1a(0x149)](_0x485b5a['lockKey']):_0x4f091f['push'](_0x485b5a[_0x117a1a(0x158)]);}const _0x5da9e4=[];if(_0x3eabd1[_0x117a1a(0x14d)]('remote')){const _0xdbe8c1=loadAliasMap(_0x3eabd1['apiDir'],undefined,resolveApiFilePath(_0x3eabd1[_0x117a1a(0x150)],_0x3eabd1['appCode'])),_0x2f3933=new Map(_0xdbe8c1[_0x117a1a(0x146)](_0x4186b3=>[_0x4186b3[_0x117a1a(0x15e)],_0x4186b3['alias']])),[_0x4bf9fb,_0x4fd0c5]=await Promise[_0x117a1a(0x15c)]([listBffScripts(_0x3eabd1[_0x117a1a(0x161)]),getBffScriptStatistics(_0x3eabd1[_0x117a1a(0x161)])]),_0x1a065f=createHookLocationMap(_0x4fd0c5),_0x2e1406=new Set(_0x2682ad[_0x117a1a(0x146)](_0x453368=>_0x453368[_0x117a1a(0x158)]));for(const _0xe00a51 of _0x4bf9fb){const _0x33b3fb=resolveRemoteScriptTarget(_0x2ba5b7,_0xe00a51,_0x1a065f,_0x2dd7c7[_0x117a1a(0x14b)],_0x2f3933);_0x33b3fb&&!_0x2e1406[_0x117a1a(0x147)](_0x33b3fb['lockKey'])&&_0x5da9e4[_0x117a1a(0x149)](_0x33b3fb[_0x117a1a(0x158)]);}}const _0x23c173=_0x5ba7f8['length']===0x0&&_0x5d6705[_0x117a1a(0x155)]===0x0&&_0x5da9e4['length']===0x0;return{'ok':!![],'data':{'added':_0x5ba7f8,'modified':_0x5d6705,'unchanged':_0x4f091f,'remoteOnly':_0x5da9e4},'message':_0x23c173?_0x117a1a(0x148):_0x5ba7f8[_0x117a1a(0x155)]+'\x20added,\x20'+_0x5d6705['length']+_0x117a1a(0x153)+_0x4f091f[_0x117a1a(0x155)]+_0x117a1a(0x14e)+(_0x5da9e4[_0x117a1a(0x155)]>0x0?',\x20'+_0x5da9e4[_0x117a1a(0x155)]+_0x117a1a(0x164):'')};}};