@lovrabet/rabetbase-cli 2.1.2-beta.3 → 2.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/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 -1
  53. package/lib/commands/db/analyze-start.js +1 -1
  54. package/lib/commands/db/analyze-status.js +1 -1
  55. package/lib/commands/db/create.js +1 -1
  56. package/lib/commands/db/delete.js +1 -1
  57. package/lib/commands/db/detail.js +1 -1
  58. package/lib/commands/db/diff.js +1 -1
  59. package/lib/commands/db/index.js +1 -1
  60. package/lib/commands/db/list.js +1 -1
  61. package/lib/commands/db/shared.js +1 -1
  62. package/lib/commands/db/tables.js +1 -1
  63. package/lib/commands/db/test.js +1 -1
  64. package/lib/commands/db/update.js +1 -1
  65. package/lib/commands/doctor.js +1 -1
  66. package/lib/commands/init/index.js +1 -1
  67. package/lib/commands/logs/index.js +1 -1
  68. package/lib/commands/menu/index.js +1 -1
  69. package/lib/commands/menu/shared/compare-table.js +1 -1
  70. package/lib/commands/menu/shared/index.js +1 -1
  71. package/lib/commands/menu/shared/inquirer.js +1 -1
  72. package/lib/commands/menu/shared/local-pages.js +1 -1
  73. package/lib/commands/menu/shared/logic.js +1 -1
  74. package/lib/commands/menu/shared/service.js +1 -1
  75. package/lib/commands/menu/shared/sync-core.js +1 -1
  76. package/lib/commands/menu/shared/update-core.js +1 -1
  77. package/lib/commands/menu/shared/valid-url.js +1 -1
  78. package/lib/commands/menu/sync.js +1 -1
  79. package/lib/commands/menu/update.js +1 -1
  80. package/lib/commands/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 -1
  100. package/lib/commands/sql/save.js +1 -1
  101. package/lib/commands/sql/shared.js +1 -1
  102. package/lib/commands/sql/validate.js +1 -1
  103. package/lib/config/schema.js +1 -1
  104. package/lib/constant/cli.js +1 -1
  105. package/lib/constant/defaults.js +1 -1
  106. package/lib/constant/domain.js +1 -1
  107. package/lib/constant/env.js +1 -1
  108. package/lib/constant/output.js +1 -1
  109. package/lib/constant/paths.js +1 -1
  110. package/lib/constant/risk.js +1 -1
  111. package/lib/context.js +1 -1
  112. package/lib/core/alias-resolver.js +1 -1
  113. package/lib/core/api-client.js +1 -1
  114. package/lib/core/bff/config.js +1 -1
  115. package/lib/core/bff/file-system.js +1 -1
  116. package/lib/core/bff/hash.js +1 -1
  117. package/lib/core/bff/lock.js +1 -1
  118. package/lib/core/bff/utils.js +1 -1
  119. package/lib/core/db-resolver.js +1 -1
  120. package/lib/core/sql-validator.js +1 -1
  121. package/lib/errors.js +1 -1
  122. package/lib/framework/build-all-flags.js +1 -1
  123. package/lib/framework/flags.js +1 -1
  124. package/lib/framework/help.js +1 -1
  125. package/lib/framework/index.js +1 -1
  126. package/lib/framework/output.js +1 -1
  127. package/lib/framework/response.js +1 -1
  128. package/lib/framework/runner-alias.js +1 -1
  129. package/lib/framework/runner.js +1 -1
  130. package/lib/framework/schema-export.js +1 -1
  131. package/lib/framework/types.js +1 -1
  132. package/lib/generated/build-info.js +1 -1
  133. package/lib/help.js +1 -1
  134. package/lib/skills/main.js +1 -1
  135. package/lib/skills/npx-skills-add.js +1 -1
  136. package/lib/telemetry/cli-command-trace.js +1 -1
  137. package/lib/telemetry/cli-help-trace.js +1 -1
  138. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  139. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  140. package/lib/telemetry/send-cli-trace-log.js +1 -1
  141. package/lib/utils/ai_config.js +1 -1
  142. package/lib/utils/apply-jq-filter.js +1 -1
  143. package/lib/utils/cdn-config.js +1 -1
  144. package/lib/utils/check-sdk-version.js +1 -1
  145. package/lib/utils/cli-version-check.js +1 -1
  146. package/lib/utils/config.js +1 -1
  147. package/lib/utils/copy-directory.js +1 -1
  148. package/lib/utils/entity-with-id.js +1 -1
  149. package/lib/utils/file-utils.js +1 -1
  150. package/lib/utils/guides-cdn.js +1 -1
  151. package/lib/utils/http-client.js +1 -1
  152. package/lib/utils/is-non-interactive.js +1 -1
  153. package/lib/utils/logger.js +1 -1
  154. package/lib/utils/platform.js +1 -1
  155. package/lib/utils/rules-cdn.js +1 -1
  156. package/lib/utils/sleep.js +1 -1
  157. package/lib/utils/template-replacer.js +1 -1
  158. package/lib/utils/version.js +1 -1
  159. package/lib/utils/with-active-cookie.js +1 -1
  160. package/lib/utils/write-cli-side-channel.js +1 -1
  161. package/package.json +1 -1
@@ -1 +1 @@
1
- function a107_0x568b(_0x566611,_0x5e8a89){_0x566611=_0x566611-0x71;const _0x440513=a107_0x4405();let _0x568b2d=_0x440513[_0x566611];return _0x568b2d;}function a107_0x4405(){const _0x380bb2=['read','226234UEkpNY','10quVUHK','appDesc','534573KdsZeW','2314424FPmVec','1zGkqEE','cookie','remote','1557090DFKjHZ','appName','613596YfKcdQ','7YSIbDV','platform','18LiHHTW','200185EOdcuU','10916807SCSoWX','appCode','app'];a107_0x4405=function(){return _0x380bb2;};return a107_0x4405();}const a107_0x1d2e3f=a107_0x568b;(function(_0x8d71fe,_0x2e1fa8){const _0x45604f=a107_0x568b,_0x47de6d=_0x8d71fe();while(!![]){try{const _0x3c08f0=parseInt(_0x45604f(0x78))/0x1*(parseInt(_0x45604f(0x73))/0x2)+-parseInt(_0x45604f(0x76))/0x3+-parseInt(_0x45604f(0x7d))/0x4+parseInt(_0x45604f(0x81))/0x5*(-parseInt(_0x45604f(0x80))/0x6)+parseInt(_0x45604f(0x7e))/0x7*(-parseInt(_0x45604f(0x77))/0x8)+-parseInt(_0x45604f(0x7b))/0x9+-parseInt(_0x45604f(0x74))/0xa*(-parseInt(_0x45604f(0x82))/0xb);if(_0x3c08f0===_0x2e1fa8)break;else _0x47de6d['push'](_0x47de6d['shift']());}catch(_0x5e9aca){_0x47de6d['push'](_0x47de6d['shift']());}}}(a107_0x4405,0x2ec34));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x28cde3){const _0x12a24c=a107_0x568b,{setActiveCookie:_0xf5ba79}=await import('../../core/api-client.js');_0xf5ba79(_0x28cde3[_0x12a24c(0x79)]);const _0x1f6209=await listRemoteApps();return{'ok':!![],'data':{'items':_0x1f6209['map'](_0x35279b=>({..._0x35279b['id']!=null?{'id':_0x35279b['id']}:{},'appCode':_0x35279b[_0x12a24c(0x83)],'appName':_0x35279b[_0x12a24c(0x7c)],..._0x35279b['appDesc']!=null?{'appDesc':_0x35279b[_0x12a24c(0x75)]}:{}})),'meta':{'source':_0x12a24c(0x7f)}}};}export const appRemoteDefinition={'service':a107_0x1d2e3f(0x71),'command':a107_0x1d2e3f(0x7a),'description':'List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','risk':a107_0x1d2e3f(0x72),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ const a107_0xff529c=a107_0x377f;(function(_0x2a358c,_0x4f3dbd){const _0x5752cb=a107_0x377f,_0x196ef9=_0x2a358c();while(!![]){try{const _0xa03818=parseInt(_0x5752cb(0xdc))/0x1+parseInt(_0x5752cb(0xdd))/0x2+-parseInt(_0x5752cb(0xe7))/0x3*(-parseInt(_0x5752cb(0xeb))/0x4)+-parseInt(_0x5752cb(0xe1))/0x5+parseInt(_0x5752cb(0xe9))/0x6*(parseInt(_0x5752cb(0xe8))/0x7)+-parseInt(_0x5752cb(0xe3))/0x8*(-parseInt(_0x5752cb(0xe6))/0x9)+-parseInt(_0x5752cb(0xdf))/0xa*(parseInt(_0x5752cb(0xec))/0xb);if(_0xa03818===_0x4f3dbd)break;else _0x196ef9['push'](_0x196ef9['shift']());}catch(_0x1b358b){_0x196ef9['push'](_0x196ef9['shift']());}}}(a107_0x55aa,0x613fc));function a107_0x377f(_0x42de4e,_0x1e4fc6){_0x42de4e=_0x42de4e-0xdb;const _0x55aa08=a107_0x55aa();let _0x377fa2=_0x55aa08[_0x42de4e];return _0x377fa2;}import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x1e0f82){const _0x2c4463=a107_0x377f,{setActiveCookie:_0x3dc08c}=await import('../../core/api-client.js');_0x3dc08c(_0x1e0f82[_0x2c4463(0xde)]);const _0x42676a=await listRemoteApps();return{'ok':!![],'data':{'items':_0x42676a[_0x2c4463(0xed)](_0x1c3597=>({..._0x1c3597['id']!=null?{'id':_0x1c3597['id']}:{},'appCode':_0x1c3597[_0x2c4463(0xe0)],'appName':_0x1c3597[_0x2c4463(0xe5)],..._0x1c3597[_0x2c4463(0xe2)]!=null?{'appDesc':_0x1c3597[_0x2c4463(0xe2)]}:{}})),'meta':{'source':'platform'}}};}export const appRemoteDefinition={'service':a107_0xff529c(0xea),'command':a107_0xff529c(0xee),'description':a107_0xff529c(0xe4),'risk':a107_0xff529c(0xdb),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};function a107_0x55aa(){const _0x54ee8f=['438384ImiEIW','7uFuriW','1217838opZgVV','app','4Dfmjif','2617087mIBUzS','map','remote','read','197115UZvwBk','1165496MAFBgP','cookie','50kgiZkD','appCode','26445aaQXQB','appDesc','8psLarZ','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','appName','4178178euacrG'];a107_0x55aa=function(){return _0x54ee8f;};return a107_0x55aa();}
@@ -1 +1 @@
1
- (function(_0x48df5d,_0x4596c3){const _0x1a6176=a103_0x5498,_0x40c939=_0x48df5d();while(!![]){try{const _0x12b187=parseInt(_0x1a6176(0x1f6))/0x1+parseInt(_0x1a6176(0x1f5))/0x2*(-parseInt(_0x1a6176(0x1f8))/0x3)+parseInt(_0x1a6176(0x1f4))/0x4+-parseInt(_0x1a6176(0x1fb))/0x5*(parseInt(_0x1a6176(0x1f2))/0x6)+-parseInt(_0x1a6176(0x1fc))/0x7+parseInt(_0x1a6176(0x1f3))/0x8*(parseInt(_0x1a6176(0x1f7))/0x9)+parseInt(_0x1a6176(0x1fa))/0xa*(-parseInt(_0x1a6176(0x1f9))/0xb);if(_0x12b187===_0x4596c3)break;else _0x40c939['push'](_0x40c939['shift']());}catch(_0x5cc4a5){_0x40c939['push'](_0x40c939['shift']());}}}(a103_0x28e9,0x56d62));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';function a103_0x28e9(){const _0x311df6=['196154VMKpKd','12xlvGAx','200368HKJFKg','1887564RxDNuD','2OrLUba','530789rYSoLm','90WodnMu','1206105vcfQLW','12067xsENVD','2770fJXIbs','408830NOQfxj'];a103_0x28e9=function(){return _0x311df6;};return a103_0x28e9();}import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';function a103_0x5498(_0x39c324,_0x28f312){_0x39c324=_0x39c324-0x1f2;const _0x28e920=a103_0x28e9();let _0x549836=_0x28e920[_0x39c324];return _0x549836;}export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ function a103_0x5e1c(){const _0x39086c=['91546nZvHXg','87ngivtF','8084795HmJkyw','50389430tsLGCy','6MmNtNa','180072DnnUGC','4493363LEunWr','2233440sRPjrm','1625636WZZwbi','8TaJVmm'];a103_0x5e1c=function(){return _0x39086c;};return a103_0x5e1c();}(function(_0x1bbcd5,_0x3bd52a){const _0x1a4dd2=a103_0x5689,_0x28c6eb=_0x1bbcd5();while(!![]){try{const _0x3ff814=parseInt(_0x1a4dd2(0xdb))/0x1+-parseInt(_0x1a4dd2(0xd6))/0x2*(parseInt(_0x1a4dd2(0xd7))/0x3)+-parseInt(_0x1a4dd2(0xde))/0x4+parseInt(_0x1a4dd2(0xd8))/0x5*(-parseInt(_0x1a4dd2(0xda))/0x6)+parseInt(_0x1a4dd2(0xdc))/0x7*(-parseInt(_0x1a4dd2(0xd5))/0x8)+-parseInt(_0x1a4dd2(0xdd))/0x9+parseInt(_0x1a4dd2(0xd9))/0xa;if(_0x3ff814===_0x3bd52a)break;else _0x28c6eb['push'](_0x28c6eb['shift']());}catch(_0x3824c2){_0x28c6eb['push'](_0x28c6eb['shift']());}}}(a103_0x5e1c,0xeecf1));import{appListDefinition}from'../../commands/app/list.js';function a103_0x5689(_0x3fa523,_0x3f71b1){_0x3fa523=_0x3fa523-0xd5;const _0x5e1c63=a103_0x5e1c();let _0x568982=_0x5e1c63[_0x3fa523];return _0x568982;}import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- function a102_0x226e(){const _0x468e13=['.\x20Use\x20`','2842390dgexZX','\x20config','entries','6877400LDsFLP','List\x20all\x20configured\x20apps','boolean','appcode','merged','list','length','12941388iezBll','47016710qHFytL','3qfelZs','globalConfig','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','global','project','globalPath','push','1aOijdS','427XkKKou','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','object','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','apps','\x20in\x20','40458HbRTTL','3251432HfcCpQ','5703628bGlqjW','map','find','mergedCli','bool','app','projectPath','projectConfig'];a102_0x226e=function(){return _0x468e13;};return a102_0x226e();}function a102_0x1c9f(_0x2662a5,_0x27c6b3){_0x2662a5=_0x2662a5-0x103;const _0x226e3b=a102_0x226e();let _0x1c9f04=_0x226e3b[_0x2662a5];return _0x1c9f04;}const a102_0x1269ed=a102_0x1c9f;(function(_0x3bd41f,_0x2573fe){const _0x2e176f=a102_0x1c9f,_0xdaf9ac=_0x3bd41f();while(!![]){try{const _0x202d08=parseInt(_0x2e176f(0x124))/0x1*(parseInt(_0x2e176f(0x111))/0x2)+-parseInt(_0x2e176f(0x11d))/0x3*(-parseInt(_0x2e176f(0x108))/0x4)+parseInt(_0x2e176f(0x114))/0x5+-parseInt(_0x2e176f(0x106))/0x6*(parseInt(_0x2e176f(0x125))/0x7)+parseInt(_0x2e176f(0x107))/0x8+parseInt(_0x2e176f(0x11b))/0x9+-parseInt(_0x2e176f(0x11c))/0xa;if(_0x202d08===_0x2573fe)break;else _0xdaf9ac['push'](_0xdaf9ac['shift']());}catch(_0x1cf95c){_0xdaf9ac['push'](_0xdaf9ac['shift']());}}}(a102_0x226e,0xe8e5d));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x106699,_0x22c002){const _0x49e881=a102_0x1c9f,_0x3b7890=[],_0x280193=_0x106699[_0x49e881(0x104)]&&typeof _0x106699[_0x49e881(0x104)]===_0x49e881(0x127)?_0x106699[_0x49e881(0x104)]:{},_0x6fb9b8=_0x106699['defaultApp']||undefined;for(const [_0x2d5f9a,_0x32ffe8]of Object['entries'](_0x280193)){if(!_0x32ffe8||typeof _0x32ffe8!=='object'||!_0x32ffe8[_0x49e881(0x117)])continue;_0x3b7890[_0x49e881(0x123)]({'name':_0x2d5f9a,'appcode':_0x32ffe8[_0x49e881(0x117)],'named':!![],'definedIn':_0x22c002,'isDefault':_0x2d5f9a===_0x6fb9b8,...buildAppProfileListFields(_0x32ffe8)});}return _0x3b7890;}function buildMergedItems(_0x355984,_0x1dd2c2){const _0x29845f=a102_0x1c9f,{apps:apps={},defaultApp:_0x57816e}=_0x355984,_0x5b8b4f=_0x1dd2c2[_0x29845f(0x11e)][_0x29845f(0x104)]&&typeof _0x1dd2c2['globalConfig']['apps']===_0x29845f(0x127)?_0x1dd2c2[_0x29845f(0x11e)][_0x29845f(0x104)]:{},_0x3de65a=_0x1dd2c2['projectConfig'][_0x29845f(0x104)]&&typeof _0x1dd2c2[_0x29845f(0x10f)]['apps']===_0x29845f(0x127)?_0x1dd2c2['projectConfig']['apps']:{},_0xb4722a=_0x1dd2c2[_0x29845f(0x10f)]['inherit']===![],_0x872a4f=Object[_0x29845f(0x113)](apps),_0x10ffbd=_0x872a4f[_0x29845f(0x109)](([_0x391b3f,_0x452331])=>({'name':_0x391b3f,'appcode':_0x452331[_0x29845f(0x117)],'named':!![],'definedIn':appDefinedIn(_0x391b3f,_0x5b8b4f,_0x3de65a,_0xb4722a),'isDefault':_0x391b3f===_0x57816e,...buildAppProfileListFields(_0x452331)}));return _0x10ffbd;}async function execute(_0x3dd666){const _0x4889cc=a102_0x1c9f,_0x3015ae=_0x3dd666[_0x4889cc(0x10c)](_0x4889cc(0x120)),_0x5d7d5f=_0x3dd666[_0x4889cc(0x10c)](_0x4889cc(0x121)),_0x4a4a46=_0x3015ae?'global':_0x5d7d5f?_0x4889cc(0x121):'merged',{config:_0x33d559,layers:_0x5f0d84}=readRawConfigWithLayers(),_0x4d2180=resolveDefaultAppSource(_0x5f0d84),{defaultApp:_0x246230}=_0x33d559;let _0x31bd07,_0xff3bb2;switch(_0x4a4a46){case _0x4889cc(0x120):_0x31bd07=buildItemsFromLayer(_0x5f0d84[_0x4889cc(0x11e)],'global'),_0xff3bb2=_0x5f0d84[_0x4889cc(0x122)];break;case _0x4889cc(0x121):_0x31bd07=buildItemsFromLayer(_0x5f0d84[_0x4889cc(0x10f)],_0x4889cc(0x121)),_0xff3bb2=_0x5f0d84[_0x4889cc(0x10e)];break;default:_0x31bd07=buildMergedItems(_0x33d559,_0x5f0d84);break;}enrichAppListItemsWithMergedSelection(_0x31bd07,_0x3dd666[_0x4889cc(0x10b)]);if(_0x31bd07[_0x4889cc(0x11a)]===0x0){const _0x5c5e98=_0x4a4a46==='merged'?'':_0x4889cc(0x105)+_0x4a4a46+_0x4889cc(0x112);return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x5c5e98+_0x4889cc(0x110)+CLI_BIN_NAME+_0x4889cc(0x126)};}const _0xcb4d62=_0x31bd07[_0x4889cc(0x10a)](_0x5de835=>_0x5de835['isCurrent']===!![]),_0x463ec1=_0x246230??_0xcb4d62?.[_0x4889cc(0x117)]??null,_0x1e5042=_0x4a4a46===_0x4889cc(0x118)?{'globalPath':_0x5f0d84['globalPath']??null,'projectPath':_0x5f0d84[_0x4889cc(0x10e)]??null,'defaultApp':_0x463ec1,'defaultAppSource':_0x246230!=null?_0x4d2180:null}:{'scope':_0x4a4a46,'configPath':_0xff3bb2??null};return{'ok':!![],'data':{'items':_0x31bd07,'meta':_0x1e5042}};}export const appListDefinition={'service':a102_0x1269ed(0x10d),'command':a102_0x1269ed(0x119),'description':a102_0x1269ed(0x115),'risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':'global','type':a102_0x1269ed(0x116),'description':a102_0x1269ed(0x103),'default':![]},{'name':'project','type':a102_0x1269ed(0x116),'description':a102_0x1269ed(0x11f),'default':![]}],'execute':execute};
1
+ const a102_0x1707aa=a102_0x427c;(function(_0x39eb24,_0x180d0d){const _0x380673=a102_0x427c,_0x9ce65f=_0x39eb24();while(!![]){try{const _0x473321=parseInt(_0x380673(0x15c))/0x1+-parseInt(_0x380673(0x158))/0x2+parseInt(_0x380673(0x16e))/0x3+-parseInt(_0x380673(0x166))/0x4*(-parseInt(_0x380673(0x151))/0x5)+parseInt(_0x380673(0x15a))/0x6*(parseInt(_0x380673(0x156))/0x7)+-parseInt(_0x380673(0x155))/0x8*(-parseInt(_0x380673(0x16c))/0x9)+-parseInt(_0x380673(0x168))/0xa;if(_0x473321===_0x180d0d)break;else _0x9ce65f['push'](_0x9ce65f['shift']());}catch(_0x25dc18){_0x9ce65f['push'](_0x9ce65f['shift']());}}}(a102_0x38f9,0x20c60));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function a102_0x38f9(){const _0x2c1e3f=['249465UPczFR','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','object','globalConfig','bool','List\x20all\x20configured\x20apps','find','push','appcode','length','28EeceQN','isCurrent','1816620FmPjpP','globalPath','merged','boolean','9IDbKJH','apps','37362ZypSTP','entries','\x20in\x20','project','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','107385zlrNSU','defaultApp','read','projectConfig','829208YFRnLt','14mlQPHj','.\x20Use\x20`','447506JLoXDq','projectPath','71238avJbCg','global'];a102_0x38f9=function(){return _0x2c1e3f;};return a102_0x38f9();}function buildItemsFromLayer(_0x536d74,_0x173078){const _0x40a3af=a102_0x427c,_0xbab1c2=[],_0x4b6c01=_0x536d74[_0x40a3af(0x16d)]&&typeof _0x536d74[_0x40a3af(0x16d)]==='object'?_0x536d74[_0x40a3af(0x16d)]:{},_0x43c087=_0x536d74[_0x40a3af(0x152)]||undefined;for(const [_0x27ef43,_0x16b6ad]of Object[_0x40a3af(0x16f)](_0x4b6c01)){if(!_0x16b6ad||typeof _0x16b6ad!=='object'||!_0x16b6ad['appcode'])continue;_0xbab1c2[_0x40a3af(0x163)]({'name':_0x27ef43,'appcode':_0x16b6ad[_0x40a3af(0x164)],'named':!![],'definedIn':_0x173078,'isDefault':_0x27ef43===_0x43c087,...buildAppProfileListFields(_0x16b6ad)});}return _0xbab1c2;}function a102_0x427c(_0x2afa1b,_0xd02251){_0x2afa1b=_0x2afa1b-0x14e;const _0x38f9e4=a102_0x38f9();let _0x427cf1=_0x38f9e4[_0x2afa1b];return _0x427cf1;}function buildMergedItems(_0x3778c5,_0x48bec8){const _0x3b83b5=a102_0x427c,{apps:apps={},defaultApp:_0x12ced0}=_0x3778c5,_0x48ca25=_0x48bec8[_0x3b83b5(0x15f)][_0x3b83b5(0x16d)]&&typeof _0x48bec8[_0x3b83b5(0x15f)][_0x3b83b5(0x16d)]==='object'?_0x48bec8['globalConfig'][_0x3b83b5(0x16d)]:{},_0x365a99=_0x48bec8[_0x3b83b5(0x154)][_0x3b83b5(0x16d)]&&typeof _0x48bec8[_0x3b83b5(0x154)][_0x3b83b5(0x16d)]===_0x3b83b5(0x15e)?_0x48bec8[_0x3b83b5(0x154)]['apps']:{},_0x932e72=_0x48bec8[_0x3b83b5(0x154)]['inherit']===![],_0x1fc269=Object['entries'](apps),_0x3a6fb2=_0x1fc269['map'](([_0x4c679b,_0x363588])=>({'name':_0x4c679b,'appcode':_0x363588[_0x3b83b5(0x164)],'named':!![],'definedIn':appDefinedIn(_0x4c679b,_0x48ca25,_0x365a99,_0x932e72),'isDefault':_0x4c679b===_0x12ced0,...buildAppProfileListFields(_0x363588)}));return _0x3a6fb2;}async function execute(_0x151c03){const _0x4f6559=a102_0x427c,_0x24e804=_0x151c03[_0x4f6559(0x160)](_0x4f6559(0x15b)),_0x47da94=_0x151c03[_0x4f6559(0x160)]('project'),_0x3e4191=_0x24e804?_0x4f6559(0x15b):_0x47da94?_0x4f6559(0x14f):'merged',{config:_0x225df4,layers:_0x587ca8}=readRawConfigWithLayers(),_0x4f9bde=resolveDefaultAppSource(_0x587ca8),{defaultApp:_0x583cf7}=_0x225df4;let _0x5d8aa6,_0x7825b8;switch(_0x3e4191){case'global':_0x5d8aa6=buildItemsFromLayer(_0x587ca8['globalConfig'],'global'),_0x7825b8=_0x587ca8[_0x4f6559(0x169)];break;case _0x4f6559(0x14f):_0x5d8aa6=buildItemsFromLayer(_0x587ca8[_0x4f6559(0x154)],_0x4f6559(0x14f)),_0x7825b8=_0x587ca8[_0x4f6559(0x159)];break;default:_0x5d8aa6=buildMergedItems(_0x225df4,_0x587ca8);break;}enrichAppListItemsWithMergedSelection(_0x5d8aa6,_0x151c03['mergedCli']);if(_0x5d8aa6[_0x4f6559(0x165)]===0x0){const _0x5d1b4a=_0x3e4191===_0x4f6559(0x16a)?'':_0x4f6559(0x14e)+_0x3e4191+'\x20config';return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x5d1b4a+_0x4f6559(0x157)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x239240=_0x5d8aa6[_0x4f6559(0x162)](_0xd29d6f=>_0xd29d6f[_0x4f6559(0x167)]===!![]),_0x36935a=_0x583cf7??_0x239240?.[_0x4f6559(0x164)]??null,_0x365a64=_0x3e4191===_0x4f6559(0x16a)?{'globalPath':_0x587ca8[_0x4f6559(0x169)]??null,'projectPath':_0x587ca8[_0x4f6559(0x159)]??null,'defaultApp':_0x36935a,'defaultAppSource':_0x583cf7!=null?_0x4f9bde:null}:{'scope':_0x3e4191,'configPath':_0x7825b8??null};return{'ok':!![],'data':{'items':_0x5d8aa6,'meta':_0x365a64}};}export const appListDefinition={'service':'app','command':'list','description':a102_0x1707aa(0x161),'risk':a102_0x1707aa(0x153),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a102_0x1707aa(0x15b),'type':'boolean','description':a102_0x1707aa(0x15d),'default':![]},{'name':'project','type':a102_0x1707aa(0x16b),'description':a102_0x1707aa(0x150),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a101_0x2954f3=a101_0x3e5b;(function(_0x15b8c2,_0x100f82){const _0x42cc47=a101_0x3e5b,_0x46b9aa=_0x15b8c2();while(!![]){try{const _0x5c4e09=parseInt(_0x42cc47(0x149))/0x1*(parseInt(_0x42cc47(0x15c))/0x2)+-parseInt(_0x42cc47(0x155))/0x3*(-parseInt(_0x42cc47(0x13e))/0x4)+parseInt(_0x42cc47(0x14f))/0x5+parseInt(_0x42cc47(0x142))/0x6+parseInt(_0x42cc47(0x14c))/0x7*(parseInt(_0x42cc47(0x14d))/0x8)+-parseInt(_0x42cc47(0x14a))/0x9+parseInt(_0x42cc47(0x147))/0xa*(-parseInt(_0x42cc47(0x159))/0xb);if(_0x5c4e09===_0x100f82)break;else _0x46b9aa['push'](_0x46b9aa['shift']());}catch(_0x415b08){_0x46b9aa['push'](_0x46b9aa['shift']());}}}(a101_0x3719,0x8bf7f));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a101_0x3719(){const _0x5c9770=['\x20Default\x20app\x20changed\x20to\x20\x22','length','Missing\x20app\x20name.','projectConfig','16867470MgomYw','bool','339564FmPAkD','6689007vYoTpN','Removed\x20app\x20\x22','7eMWgQN','8897128flYtHs','validation','1615805KgHqPs','remove','args','global','globalConfig','Use\x20global\x20config\x20scope','58557TiHPrn','Usage:\x20','high-risk-write','object','11DlvHTi','project','defaultApp','6XLueOb','apps','\x22\x20not\x20found.','boolean','both','inherit','keys','\x20Note:\x20app\x20\x22','trim','28xEFPEQ','Remove\x20an\x20app\x20from\x20config','App\x20\x22','\x20config.','2475924jclfWp'];a101_0x3719=function(){return _0x5c9770;};return a101_0x3719();}import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x3efa8d){const _0x32bcaa=a101_0x3e5b,_0x3656b3=_0x3efa8d['args'][0x0]?.[_0x32bcaa(0x164)]();if(!_0x3656b3)throw CliErrors[_0x32bcaa(0x14e)](_0x32bcaa(0x145),_0x32bcaa(0x156)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}async function execute(_0x59e1a9){const _0x11b71c=a101_0x3e5b,_0xc08949=_0x59e1a9[_0x11b71c(0x151)][0x0]?.[_0x11b71c(0x164)]();if(!_0xc08949)throw CliErrors[_0x11b71c(0x14e)](_0x11b71c(0x145),_0x11b71c(0x156)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');const _0x12eee9=_0x59e1a9[_0x11b71c(0x148)](_0x11b71c(0x152)),{config:_0x5ac5f4,layers:_0x474850}=readRawConfigWithLayers(),_0x3c9df3=_0x5ac5f4[_0x11b71c(0x15d)]??{};if(!_0x3c9df3[_0xc08949])throw CliErrors[_0x11b71c(0x14e)]('App\x20\x22'+_0xc08949+_0x11b71c(0x15e));const _0x315c89=_0x474850[_0x11b71c(0x153)][_0x11b71c(0x15d)]&&typeof _0x474850[_0x11b71c(0x153)][_0x11b71c(0x15d)]===_0x11b71c(0x158)?_0x474850[_0x11b71c(0x153)][_0x11b71c(0x15d)]:{},_0x35e6bb=_0x474850['projectConfig'][_0x11b71c(0x15d)]&&typeof _0x474850['projectConfig'][_0x11b71c(0x15d)]===_0x11b71c(0x158)?_0x474850[_0x11b71c(0x146)][_0x11b71c(0x15d)]:{},_0x117168=appDefinedIn(_0xc08949,_0x315c89,_0x35e6bb,_0x474850[_0x11b71c(0x146)][_0x11b71c(0x161)]===![]),_0x4863bb=resolveAppScopeForWrite(_0xc08949,_0x12eee9,_0x474850),_0x179499={'global':_0x4863bb===_0x11b71c(0x152)},_0x53cdc3=readConfig(_0x179499),_0x53feb4=_0x53cdc3[_0x11b71c(0x15d)];if(!_0x53feb4||!_0x53feb4[_0xc08949])throw CliErrors[_0x11b71c(0x14e)](_0x11b71c(0x140)+_0xc08949+_0x11b71c(0x15e));delete _0x53feb4[_0xc08949];let _0x383762='';if(_0x53cdc3['defaultApp']===_0xc08949){const _0x402840=Object[_0x11b71c(0x162)](_0x53feb4);_0x53cdc3[_0x11b71c(0x15b)]=_0x402840[_0x11b71c(0x144)]>0x0?_0x402840[0x0]:undefined,_0x53cdc3[_0x11b71c(0x15b)]?_0x383762=_0x11b71c(0x143)+_0x53cdc3['defaultApp']+'\x22.':delete _0x53cdc3['defaultApp'];}Object[_0x11b71c(0x162)](_0x53feb4)['length']===0x0&&(delete _0x53cdc3['apps'],delete _0x53cdc3[_0x11b71c(0x15b)]);writeConfig(_0x53cdc3,_0x179499);const _0xecdc21=_0x117168===_0x11b71c(0x160)?_0x11b71c(0x163)+_0xc08949+'\x22\x20still\x20defined\x20in\x20'+(_0x4863bb===_0x11b71c(0x15a)?_0x11b71c(0x152):_0x11b71c(0x15a))+_0x11b71c(0x141):'';return{'ok':!![],'message':_0x11b71c(0x14b)+_0xc08949+'\x22'+scopeLabel(_0x179499)+'.'+_0x383762+_0xecdc21};}function a101_0x3e5b(_0x58802b,_0x572725){_0x58802b=_0x58802b-0x13e;const _0x371954=a101_0x3719();let _0x3e5bee=_0x371954[_0x58802b];return _0x3e5bee;}export const appRemoveDefinition={'service':'app','command':a101_0x2954f3(0x150),'description':a101_0x2954f3(0x13f),'risk':a101_0x2954f3(0x157),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':[{'name':a101_0x2954f3(0x152),'type':a101_0x2954f3(0x15f),'description':a101_0x2954f3(0x154),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ function a101_0x5f25(){const _0x5de506=['globalConfig','1395npWoJB','\x20app\x20remove\x20<name>\x20[--global]','Missing\x20app\x20name.','App\x20profile\x20name\x20to\x20remove','inherit','4326795IuCJWi','\x20Note:\x20app\x20\x22','1610616MjYclT','boolean','both','global','3434188gPcyDY','length','object','598giuHKm','2642553mxEWVz','defaultApp','validation','Remove\x20an\x20app\x20from\x20config','trim','app','keys','args','5aXjrqE','675872ilLPaj','Use\x20global\x20config\x20scope','projectConfig','Removed\x20app\x20\x22','\x22\x20not\x20found.','2600754BjooAs','high-risk-write','Usage:\x20','project','App\x20\x22','bool','name','apps'];a101_0x5f25=function(){return _0x5de506;};return a101_0x5f25();}const a101_0x343c68=a101_0x2aa7;function a101_0x2aa7(_0xcf85d2,_0x26dcf7){_0xcf85d2=_0xcf85d2-0xa0;const _0x5f258a=a101_0x5f25();let _0x2aa77b=_0x5f258a[_0xcf85d2];return _0x2aa77b;}(function(_0x3a1889,_0x53b945){const _0x515266=a101_0x2aa7,_0x4aedc3=_0x3a1889();while(!![]){try{const _0x38e654=parseInt(_0x515266(0xb7))/0x1*(parseInt(_0x515266(0xc5))/0x2)+-parseInt(_0x515266(0xa0))/0x3+parseInt(_0x515266(0xc2))/0x4*(parseInt(_0x515266(0xa8))/0x5)+parseInt(_0x515266(0xae))/0x6+parseInt(_0x515266(0xbe))/0x7+parseInt(_0x515266(0xa9))/0x8+-parseInt(_0x515266(0xbc))/0x9;if(_0x38e654===_0x53b945)break;else _0x4aedc3['push'](_0x4aedc3['shift']());}catch(_0x1527c5){_0x4aedc3['push'](_0x4aedc3['shift']());}}}(a101_0x5f25,0xa1a3d));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x427a81){const _0x3dda21=a101_0x2aa7,_0x4fd48f=_0x427a81[_0x3dda21(0xa7)][0x0]?.['trim']();if(!_0x4fd48f)throw CliErrors[_0x3dda21(0xa2)](_0x3dda21(0xb9),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}async function execute(_0x3665b1){const _0x25bbc7=a101_0x2aa7,_0x2e0e9d=_0x3665b1[_0x25bbc7(0xa7)][0x0]?.[_0x25bbc7(0xa4)]();if(!_0x2e0e9d)throw CliErrors[_0x25bbc7(0xa2)](_0x25bbc7(0xb9),_0x25bbc7(0xb0)+CLI_BIN_NAME+_0x25bbc7(0xb8));const _0x5ee22e=_0x3665b1[_0x25bbc7(0xb3)](_0x25bbc7(0xc1)),{config:_0x1c7571,layers:_0x436a28}=readRawConfigWithLayers(),_0x4520e7=_0x1c7571[_0x25bbc7(0xb5)]??{};if(!_0x4520e7[_0x2e0e9d])throw CliErrors['validation'](_0x25bbc7(0xb2)+_0x2e0e9d+_0x25bbc7(0xad));const _0x1b3aef=_0x436a28[_0x25bbc7(0xb6)]['apps']&&typeof _0x436a28[_0x25bbc7(0xb6)][_0x25bbc7(0xb5)]===_0x25bbc7(0xc4)?_0x436a28[_0x25bbc7(0xb6)][_0x25bbc7(0xb5)]:{},_0x1d2e26=_0x436a28['projectConfig'][_0x25bbc7(0xb5)]&&typeof _0x436a28[_0x25bbc7(0xab)][_0x25bbc7(0xb5)]===_0x25bbc7(0xc4)?_0x436a28['projectConfig'][_0x25bbc7(0xb5)]:{},_0x52dd67=appDefinedIn(_0x2e0e9d,_0x1b3aef,_0x1d2e26,_0x436a28[_0x25bbc7(0xab)][_0x25bbc7(0xbb)]===![]),_0x3989bf=resolveAppScopeForWrite(_0x2e0e9d,_0x5ee22e,_0x436a28),_0x3c3200={'global':_0x3989bf==='global'},_0x25e12e=readConfig(_0x3c3200),_0x58746d=_0x25e12e['apps'];if(!_0x58746d||!_0x58746d[_0x2e0e9d])throw CliErrors[_0x25bbc7(0xa2)](_0x25bbc7(0xb2)+_0x2e0e9d+_0x25bbc7(0xad));delete _0x58746d[_0x2e0e9d];let _0x34919b='';if(_0x25e12e[_0x25bbc7(0xa1)]===_0x2e0e9d){const _0x27ed02=Object['keys'](_0x58746d);_0x25e12e[_0x25bbc7(0xa1)]=_0x27ed02[_0x25bbc7(0xc3)]>0x0?_0x27ed02[0x0]:undefined,_0x25e12e[_0x25bbc7(0xa1)]?_0x34919b='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x25e12e[_0x25bbc7(0xa1)]+'\x22.':delete _0x25e12e['defaultApp'];}Object[_0x25bbc7(0xa6)](_0x58746d)[_0x25bbc7(0xc3)]===0x0&&(delete _0x25e12e[_0x25bbc7(0xb5)],delete _0x25e12e[_0x25bbc7(0xa1)]);writeConfig(_0x25e12e,_0x3c3200);const _0x230b3c=_0x52dd67===_0x25bbc7(0xc0)?_0x25bbc7(0xbd)+_0x2e0e9d+'\x22\x20still\x20defined\x20in\x20'+(_0x3989bf===_0x25bbc7(0xb1)?_0x25bbc7(0xc1):'project')+'\x20config.':'';return{'ok':!![],'message':_0x25bbc7(0xac)+_0x2e0e9d+'\x22'+scopeLabel(_0x3c3200)+'.'+_0x34919b+_0x230b3c};}export const appRemoveDefinition={'service':a101_0x343c68(0xa5),'command':'remove','description':a101_0x343c68(0xa3),'risk':a101_0x343c68(0xaf),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a101_0x343c68(0xb4),'description':a101_0x343c68(0xba),'required':!![]}],'flags':[{'name':'global','type':a101_0x343c68(0xbf),'description':a101_0x343c68(0xaa),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- function a105_0xddff(_0x604d38,_0x5d752e){_0x604d38=_0x604d38-0x142;const _0x42f8d9=a105_0x42f8();let _0xddfffe=_0x42f8d9[_0x604d38];return _0xddfffe;}(function(_0x3f2a30,_0x34a602){const _0x33b914=a105_0xddff,_0x3ca6a6=_0x3f2a30();while(!![]){try{const _0x69484=-parseInt(_0x33b914(0x152))/0x1+parseInt(_0x33b914(0x15a))/0x2+parseInt(_0x33b914(0x158))/0x3+parseInt(_0x33b914(0x157))/0x4+-parseInt(_0x33b914(0x154))/0x5*(parseInt(_0x33b914(0x149))/0x6)+parseInt(_0x33b914(0x155))/0x7+parseInt(_0x33b914(0x14d))/0x8*(-parseInt(_0x33b914(0x14a))/0x9);if(_0x69484===_0x34a602)break;else _0x3ca6a6['push'](_0x3ca6a6['shift']());}catch(_0x255ab2){_0x3ca6a6['push'](_0x3ca6a6['shift']());}}}(a105_0x42f8,0x75b59));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x526ac3,_0x3bf24f){const _0x2d09dc=a105_0xddff;if(!_0x3bf24f)return;const _0x1e8f6e=_0x3bf24f[_0x2d09dc(0x142)]&&typeof _0x3bf24f[_0x2d09dc(0x142)]===_0x2d09dc(0x14c)?_0x3bf24f[_0x2d09dc(0x142)]:{},_0x3b067c=Object['keys'](_0x1e8f6e)['length']>0x0;for(const _0x451c0c of _0x526ac3){_0x451c0c[_0x2d09dc(0x144)]=![];}const _0x21c94e=_0x3bf24f[_0x2d09dc(0x150)]!=null?String(_0x3bf24f[_0x2d09dc(0x150)])[_0x2d09dc(0x14f)]():'';if(_0x3b067c){const _0x35209d=_0x3bf24f[_0x2d09dc(0x14e)]??_0x3bf24f[_0x2d09dc(0x147)];if(_0x35209d)for(const _0x528dab of _0x526ac3){_0x528dab[_0x2d09dc(0x15c)]===!![]&&_0x528dab[_0x2d09dc(0x143)]===_0x35209d&&(_0x528dab['isCurrent']=!![]);}for(const _0x44fa6b of _0x526ac3){if(_0x44fa6b[_0x2d09dc(0x15c)]!==![])continue;if(_0x3bf24f[_0x2d09dc(0x147)])continue;_0x21c94e&&String(_0x44fa6b[_0x2d09dc(0x14b)]??'')['trim']()===_0x21c94e&&(_0x44fa6b[_0x2d09dc(0x144)]=!![]);}return;}if(!_0x21c94e)return;for(const _0x2f431b of _0x526ac3){String(_0x2f431b[_0x2d09dc(0x14b)]??'')[_0x2d09dc(0x14f)]()===_0x21c94e&&(_0x2f431b['isCurrent']=!![]);}}export function resolveAppScopeForWrite(_0x53841f,_0x22c196,_0x47b2b9){const _0x2c3e1e=a105_0xddff;if(_0x22c196)return _0x2c3e1e(0x159);const _0x1c1bd4=_0x47b2b9[_0x2c3e1e(0x151)]['apps']&&typeof _0x47b2b9['projectConfig']['apps']===_0x2c3e1e(0x14c)?_0x47b2b9['projectConfig'][_0x2c3e1e(0x142)]:{},_0xdb8953=_0x47b2b9['globalConfig'][_0x2c3e1e(0x142)]&&typeof _0x47b2b9[_0x2c3e1e(0x15d)]['apps']===_0x2c3e1e(0x14c)?_0x47b2b9[_0x2c3e1e(0x15d)][_0x2c3e1e(0x142)]:{};if(Object[_0x2c3e1e(0x15b)][_0x2c3e1e(0x145)][_0x2c3e1e(0x148)](_0x1c1bd4,_0x53841f))return _0x2c3e1e(0x146);if(Object[_0x2c3e1e(0x15b)][_0x2c3e1e(0x145)][_0x2c3e1e(0x148)](_0xdb8953,_0x53841f))return _0x2c3e1e(0x159);return _0x2c3e1e(0x146);}export function appDefinedIn(_0x283d46,_0x64262a,_0x46e95e,_0x355b7e){const _0x3b970c=a105_0xddff;if(_0x355b7e)return Object['prototype'][_0x3b970c(0x145)][_0x3b970c(0x148)](_0x46e95e,_0x283d46)?_0x3b970c(0x146):_0x3b970c(0x159);const _0x2f8676=Object[_0x3b970c(0x15b)]['hasOwnProperty'][_0x3b970c(0x148)](_0x64262a,_0x283d46),_0x88fa0d=Object[_0x3b970c(0x15b)][_0x3b970c(0x145)][_0x3b970c(0x148)](_0x46e95e,_0x283d46);if(_0x2f8676&&_0x88fa0d)return _0x3b970c(0x15e);if(_0x88fa0d)return _0x3b970c(0x146);return _0x3b970c(0x159);}export function resolveDefaultAppSource(_0x264260){const _0x3947a0=a105_0xddff,_0x302e10=_0x264260['projectConfig'][_0x3947a0(0x142)]&&typeof _0x264260[_0x3947a0(0x151)][_0x3947a0(0x142)]===_0x3947a0(0x14c)?_0x264260[_0x3947a0(0x151)]['apps']:{};if(_0x3947a0(0x147)in _0x264260[_0x3947a0(0x151)])return _0x3947a0(0x146);if(Object['keys'](_0x302e10)[_0x3947a0(0x156)]>0x0)return'project';if(_0x264260[_0x3947a0(0x151)][_0x3947a0(0x153)]===![])return null;if(_0x264260[_0x3947a0(0x15d)][_0x3947a0(0x147)])return _0x3947a0(0x159);return null;}function a105_0x42f8(){const _0x46bd89=['both','apps','name','isCurrent','hasOwnProperty','project','defaultApp','call','34014gFYkrj','63xBQcSb','appcode','object','824520tIOSUO','currentApp','trim','appCode','projectConfig','268743JgBSMn','inherit','600lEEuYG','1558760XxhnGx','length','2994544HQXFak','1746291CxDMto','global','1198404pbSsRM','prototype','named','globalConfig'];a105_0x42f8=function(){return _0x46bd89;};return a105_0x42f8();}export function getConfigPath(_0x41aada={}){const _0x5429d6=a105_0xddff,_0x1683f6=_0x41aada[_0x5429d6(0x159)]?_0x5429d6(0x159):_0x5429d6(0x146);return resolveWriteConfigPath(_0x1683f6);}export function readConfig(_0x89d5f9={}){return readConfigFile(getConfigPath(_0x89d5f9));}export function writeConfig(_0x3300cc,_0x41a052={}){writeConfigFile(getConfigPath(_0x41a052),_0x3300cc);}export function scopeLabel(_0x1fd998){return _0x1fd998['global']?'\x20(global)':'';}
1
+ (function(_0x4e0f9e,_0x3eafed){const _0x47af24=a105_0x45e9,_0x4629e2=_0x4e0f9e();while(!![]){try{const _0x45c91d=parseInt(_0x47af24(0x149))/0x1+-parseInt(_0x47af24(0x158))/0x2+-parseInt(_0x47af24(0x148))/0x3*(parseInt(_0x47af24(0x14f))/0x4)+parseInt(_0x47af24(0x144))/0x5+-parseInt(_0x47af24(0x157))/0x6*(-parseInt(_0x47af24(0x14d))/0x7)+parseInt(_0x47af24(0x15d))/0x8+-parseInt(_0x47af24(0x155))/0x9;if(_0x45c91d===_0x3eafed)break;else _0x4629e2['push'](_0x4629e2['shift']());}catch(_0x5d9fa4){_0x4629e2['push'](_0x4629e2['shift']());}}}(a105_0x43de,0x3554e));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x5374e6,_0x2a18cf){const _0x21721e=a105_0x45e9;if(!_0x2a18cf)return;const _0x5d16ea=_0x2a18cf[_0x21721e(0x156)]&&typeof _0x2a18cf[_0x21721e(0x156)]==='object'?_0x2a18cf[_0x21721e(0x156)]:{},_0xa94280=Object[_0x21721e(0x154)](_0x5d16ea)[_0x21721e(0x147)]>0x0;for(const _0x5137d9 of _0x5374e6){_0x5137d9[_0x21721e(0x146)]=![];}const _0x4db17c=_0x2a18cf[_0x21721e(0x153)]!=null?String(_0x2a18cf['appCode'])[_0x21721e(0x14e)]():'';if(_0xa94280){const _0xe7f767=_0x2a18cf[_0x21721e(0x145)]??_0x2a18cf[_0x21721e(0x159)];if(_0xe7f767)for(const _0x441202 of _0x5374e6){_0x441202[_0x21721e(0x15c)]===!![]&&_0x441202[_0x21721e(0x143)]===_0xe7f767&&(_0x441202[_0x21721e(0x146)]=!![]);}for(const _0x5200ea of _0x5374e6){if(_0x5200ea[_0x21721e(0x15c)]!==![])continue;if(_0x2a18cf[_0x21721e(0x159)])continue;_0x4db17c&&String(_0x5200ea[_0x21721e(0x151)]??'')[_0x21721e(0x14e)]()===_0x4db17c&&(_0x5200ea[_0x21721e(0x146)]=!![]);}return;}if(!_0x4db17c)return;for(const _0x44aaef of _0x5374e6){String(_0x44aaef[_0x21721e(0x151)]??'')[_0x21721e(0x14e)]()===_0x4db17c&&(_0x44aaef[_0x21721e(0x146)]=!![]);}}export function resolveAppScopeForWrite(_0x4919f0,_0x4f38bc,_0x3a4efe){const _0x438eef=a105_0x45e9;if(_0x4f38bc)return'global';const _0x3302e1=_0x3a4efe[_0x438eef(0x15b)][_0x438eef(0x156)]&&typeof _0x3a4efe['projectConfig'][_0x438eef(0x156)]===_0x438eef(0x14c)?_0x3a4efe[_0x438eef(0x15b)][_0x438eef(0x156)]:{},_0x1039b2=_0x3a4efe[_0x438eef(0x14b)]['apps']&&typeof _0x3a4efe[_0x438eef(0x14b)][_0x438eef(0x156)]===_0x438eef(0x14c)?_0x3a4efe['globalConfig'][_0x438eef(0x156)]:{};if(Object[_0x438eef(0x152)][_0x438eef(0x15a)][_0x438eef(0x150)](_0x3302e1,_0x4919f0))return'project';if(Object['prototype'][_0x438eef(0x15a)][_0x438eef(0x150)](_0x1039b2,_0x4919f0))return _0x438eef(0x14a);return _0x438eef(0x15e);}export function appDefinedIn(_0x3901c0,_0x33bb5c,_0x9a95ea,_0x3da849){const _0x20174b=a105_0x45e9;if(_0x3da849)return Object[_0x20174b(0x152)]['hasOwnProperty'][_0x20174b(0x150)](_0x9a95ea,_0x3901c0)?_0x20174b(0x15e):_0x20174b(0x14a);const _0x1dffac=Object[_0x20174b(0x152)][_0x20174b(0x15a)][_0x20174b(0x150)](_0x33bb5c,_0x3901c0),_0x3d61ec=Object[_0x20174b(0x152)][_0x20174b(0x15a)]['call'](_0x9a95ea,_0x3901c0);if(_0x1dffac&&_0x3d61ec)return'both';if(_0x3d61ec)return'project';return'global';}export function resolveDefaultAppSource(_0x52cd5d){const _0x2fa0e0=a105_0x45e9,_0xb35049=_0x52cd5d[_0x2fa0e0(0x15b)][_0x2fa0e0(0x156)]&&typeof _0x52cd5d[_0x2fa0e0(0x15b)][_0x2fa0e0(0x156)]===_0x2fa0e0(0x14c)?_0x52cd5d[_0x2fa0e0(0x15b)]['apps']:{};if(_0x2fa0e0(0x159)in _0x52cd5d['projectConfig'])return _0x2fa0e0(0x15e);if(Object[_0x2fa0e0(0x154)](_0xb35049)[_0x2fa0e0(0x147)]>0x0)return'project';if(_0x52cd5d[_0x2fa0e0(0x15b)]['inherit']===![])return null;if(_0x52cd5d[_0x2fa0e0(0x14b)][_0x2fa0e0(0x159)])return _0x2fa0e0(0x14a);return null;}export function getConfigPath(_0x36cba0={}){const _0x169602=a105_0x45e9,_0x3c8641=_0x36cba0[_0x169602(0x14a)]?_0x169602(0x14a):_0x169602(0x15e);return resolveWriteConfigPath(_0x3c8641);}function a105_0x45e9(_0x5cbe07,_0x5cfcca){_0x5cbe07=_0x5cbe07-0x143;const _0x43de96=a105_0x43de();let _0x45e91b=_0x43de96[_0x5cbe07];return _0x45e91b;}function a105_0x43de(){const _0x3592f0=['appcode','prototype','appCode','keys','6213654pwrelN','apps','337218yjtEPh','53486smCoKj','defaultApp','hasOwnProperty','projectConfig','named','819680kDlyWv','project','name','663280GZmnEh','currentApp','isCurrent','length','3lVWcsG','346351WKtBwg','global','globalConfig','object','49NehZRi','trim','157172tJkUma','call'];a105_0x43de=function(){return _0x3592f0;};return a105_0x43de();}export function readConfig(_0x4035a0={}){return readConfigFile(getConfigPath(_0x4035a0));}export function writeConfig(_0x5b2a54,_0x5ded45={}){writeConfigFile(getConfigPath(_0x5ded45),_0x5b2a54);}export function scopeLabel(_0x33f5c3){const _0x4215ac=a105_0x45e9;return _0x33f5c3[_0x4215ac(0x14a)]?'\x20(global)':'';}
@@ -1 +1 @@
1
- const a104_0x597b77=a104_0x52b6;(function(_0x6278da,_0x548c0d){const _0x31cac0=a104_0x52b6,_0x4a8c49=_0x6278da();while(!![]){try{const _0x4d9d4e=-parseInt(_0x31cac0(0x183))/0x1+-parseInt(_0x31cac0(0x17e))/0x2+-parseInt(_0x31cac0(0x18e))/0x3*(-parseInt(_0x31cac0(0x16b))/0x4)+-parseInt(_0x31cac0(0x18f))/0x5+-parseInt(_0x31cac0(0x174))/0x6+-parseInt(_0x31cac0(0x173))/0x7+parseInt(_0x31cac0(0x18b))/0x8;if(_0x4d9d4e===_0x548c0d)break;else _0x4a8c49['push'](_0x4a8c49['shift']());}catch(_0x421209){_0x4a8c49['push'](_0x4a8c49['shift']());}}}(a104_0x511b,0xd4304));import{CliErrors}from'../../errors.js';function a104_0x511b(){const _0x27f10c=['703344jqlFnm','Switch\x20the\x20default\x20app','validation','\x20--appcode\x20<code>`\x20first.','Default\x20app\x20set\x20to\x20\x22','object','keys','\x22\x20not\x20found.','28624816fLYnMv','join','write','64179qCcUus','1845430ErbRLc','Usage:\x20','prototype','name','308Ddeehh','Use\x20global\x20config\x20scope','Available:\x20','call','projectPath','use','bool','hasOwnProperty','9528225pcYoyE','8120652XvdkdA','\x0aNote:\x20\x22','length','apps','App\x20\x22','global','trim','\x20app\x20use\x20<name>\x20[--global]','defaultApp','appcode','1138384OmyoNw','App\x20profile\x20name\x20to\x20activate','projectConfig','args','Missing\x20app\x20name.'];a104_0x511b=function(){return _0x27f10c;};return a104_0x511b();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x28aafa){const _0x5d5f17=a104_0x52b6,_0x42aa51=_0x28aafa[_0x5d5f17(0x181)][0x0]?.[_0x5d5f17(0x17a)]();if(!_0x42aa51)throw CliErrors[_0x5d5f17(0x185)](_0x5d5f17(0x182),_0x5d5f17(0x190)+CLI_BIN_NAME+_0x5d5f17(0x17b));}function a104_0x52b6(_0x317bb3,_0x48bd18){_0x317bb3=_0x317bb3-0x16a;const _0x511b49=a104_0x511b();let _0x52b600=_0x511b49[_0x317bb3];return _0x52b600;}async function execute(_0x5acb11){const _0x433f4d=a104_0x52b6,_0x54a730=_0x5acb11[_0x433f4d(0x181)][0x0]?.[_0x433f4d(0x17a)]();if(!_0x54a730)throw CliErrors[_0x433f4d(0x185)](_0x433f4d(0x182),_0x433f4d(0x190)+CLI_BIN_NAME+_0x433f4d(0x17b));const _0x39a456=_0x5acb11[_0x433f4d(0x171)](_0x433f4d(0x179)),{config:_0x253ffc,layers:_0x2abfbe}=readRawConfigWithLayers(),_0x5c1059=_0x253ffc[_0x433f4d(0x177)]??{};if(!_0x5c1059[_0x54a730]){const _0x4e0ba8=Object[_0x433f4d(0x189)](_0x5c1059),_0xc52654=_0x4e0ba8[_0x433f4d(0x176)]===0x0?'Use\x20`'+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x54a730+_0x433f4d(0x186):_0x433f4d(0x16d)+_0x4e0ba8[_0x433f4d(0x18c)](',\x20');throw CliErrors['validation'](_0x433f4d(0x178)+_0x54a730+_0x433f4d(0x18a),_0xc52654);}let _0x52efd4,_0x4f1e2c='';if(_0x39a456)_0x52efd4={'global':!![]};else{const _0x154de8=isInProject()&&!!_0x2abfbe[_0x433f4d(0x16f)];_0x52efd4={'global':!_0x154de8};if(_0x154de8){const _0x58f733=_0x2abfbe[_0x433f4d(0x180)][_0x433f4d(0x177)]&&typeof _0x2abfbe[_0x433f4d(0x180)][_0x433f4d(0x177)]===_0x433f4d(0x188)?_0x2abfbe['projectConfig'][_0x433f4d(0x177)]:{};!Object[_0x433f4d(0x191)][_0x433f4d(0x172)][_0x433f4d(0x16e)](_0x58f733,_0x54a730)&&(_0x4f1e2c=_0x433f4d(0x175)+_0x54a730+'\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.');}}const _0x34d109=readConfig(_0x52efd4);return _0x34d109[_0x433f4d(0x17c)]=_0x54a730,writeConfig(_0x34d109,_0x52efd4),{'ok':!![],'message':_0x433f4d(0x187)+_0x54a730+'\x22\x20(appcode:\x20'+_0x5c1059[_0x54a730][_0x433f4d(0x17d)]+')'+scopeLabel(_0x52efd4)+_0x4f1e2c};}export const appUseDefinition={'service':'app','command':a104_0x597b77(0x170),'description':a104_0x597b77(0x184),'risk':a104_0x597b77(0x18d),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a104_0x597b77(0x16a),'description':a104_0x597b77(0x17f),'required':!![]}],'flags':[{'name':a104_0x597b77(0x179),'type':'boolean','description':a104_0x597b77(0x16c),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a104_0xd01a35=a104_0x171b;(function(_0x24b272,_0x3517b7){const _0x4d6d80=a104_0x171b,_0x5c86e8=_0x24b272();while(!![]){try{const _0x41a846=-parseInt(_0x4d6d80(0x1a5))/0x1*(-parseInt(_0x4d6d80(0x1b2))/0x2)+-parseInt(_0x4d6d80(0x1a3))/0x3*(parseInt(_0x4d6d80(0x19d))/0x4)+parseInt(_0x4d6d80(0x1ab))/0x5+parseInt(_0x4d6d80(0x1a6))/0x6+parseInt(_0x4d6d80(0x194))/0x7+-parseInt(_0x4d6d80(0x1a1))/0x8*(parseInt(_0x4d6d80(0x1b7))/0x9)+-parseInt(_0x4d6d80(0x19a))/0xa;if(_0x41a846===_0x3517b7)break;else _0x5c86e8['push'](_0x5c86e8['shift']());}catch(_0x5a9add){_0x5c86e8['push'](_0x5c86e8['shift']());}}}(a104_0x3aca,0x62d71));import{CliErrors}from'../../errors.js';function a104_0x171b(_0xd40c5f,_0x2d9160){_0xd40c5f=_0xd40c5f-0x193;const _0x3acadb=a104_0x3aca();let _0x171b56=_0x3acadb[_0xd40c5f];return _0x171b56;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';function a104_0x3aca(){const _0xd6a742=['Missing\x20app\x20name.','hasOwnProperty','65138SxtwSY','Use\x20`','App\x20profile\x20name\x20to\x20activate','\x22\x20(appcode:\x20','defaultApp','6089247VAsXzR','call','App\x20\x22','args','3857266yyeejm','prototype','length','keys','Usage:\x20','boolean','2017080JKcgEi','\x20app\x20add\x20','app','18380Dymtdm','validation','projectPath','global','8JAvTUQ','name','51kxVhzw','\x20app\x20use\x20<name>\x20[--global]','3kTBHdT','3008610QtnBbo','Use\x20global\x20config\x20scope','\x0aNote:\x20\x22','bool','projectConfig','1055375bMVWoL','\x20--appcode\x20<code>`\x20first.','apps','appcode','Default\x20app\x20set\x20to\x20\x22'];a104_0x3aca=function(){return _0xd6a742;};return a104_0x3aca();}import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x47de45){const _0x43e164=a104_0x171b,_0x1dc0c3=_0x47de45[_0x43e164(0x193)][0x0]?.['trim']();if(!_0x1dc0c3)throw CliErrors['validation'](_0x43e164(0x1b0),'Usage:\x20'+CLI_BIN_NAME+_0x43e164(0x1a4));}async function execute(_0x1e2ff1){const _0x3ec3c2=a104_0x171b,_0x50b62e=_0x1e2ff1['args'][0x0]?.['trim']();if(!_0x50b62e)throw CliErrors['validation'](_0x3ec3c2(0x1b0),_0x3ec3c2(0x198)+CLI_BIN_NAME+_0x3ec3c2(0x1a4));const _0x45b6a0=_0x1e2ff1[_0x3ec3c2(0x1a9)](_0x3ec3c2(0x1a0)),{config:_0x3a7ee8,layers:_0x5a022}=readRawConfigWithLayers(),_0x4076d7=_0x3a7ee8[_0x3ec3c2(0x1ad)]??{};if(!_0x4076d7[_0x50b62e]){const _0x479c24=Object[_0x3ec3c2(0x197)](_0x4076d7),_0x225ede=_0x479c24[_0x3ec3c2(0x196)]===0x0?_0x3ec3c2(0x1b3)+CLI_BIN_NAME+_0x3ec3c2(0x19b)+_0x50b62e+_0x3ec3c2(0x1ac):'Available:\x20'+_0x479c24['join'](',\x20');throw CliErrors[_0x3ec3c2(0x19e)](_0x3ec3c2(0x1b9)+_0x50b62e+'\x22\x20not\x20found.',_0x225ede);}let _0x1899f1,_0x25b290='';if(_0x45b6a0)_0x1899f1={'global':!![]};else{const _0x57a61d=isInProject()&&!!_0x5a022[_0x3ec3c2(0x19f)];_0x1899f1={'global':!_0x57a61d};if(_0x57a61d){const _0x4a3746=_0x5a022[_0x3ec3c2(0x1aa)][_0x3ec3c2(0x1ad)]&&typeof _0x5a022[_0x3ec3c2(0x1aa)]['apps']==='object'?_0x5a022['projectConfig'][_0x3ec3c2(0x1ad)]:{};!Object[_0x3ec3c2(0x195)][_0x3ec3c2(0x1b1)][_0x3ec3c2(0x1b8)](_0x4a3746,_0x50b62e)&&(_0x25b290=_0x3ec3c2(0x1a8)+_0x50b62e+'\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.');}}const _0x34d301=readConfig(_0x1899f1);return _0x34d301[_0x3ec3c2(0x1b6)]=_0x50b62e,writeConfig(_0x34d301,_0x1899f1),{'ok':!![],'message':_0x3ec3c2(0x1af)+_0x50b62e+_0x3ec3c2(0x1b5)+_0x4076d7[_0x50b62e][_0x3ec3c2(0x1ae)]+')'+scopeLabel(_0x1899f1)+_0x25b290};}export const appUseDefinition={'service':a104_0xd01a35(0x19c),'command':'use','description':'Switch\x20the\x20default\x20app','risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a104_0xd01a35(0x1a2),'description':a104_0xd01a35(0x1b4),'required':!![]}],'flags':[{'name':a104_0xd01a35(0x1a0),'type':a104_0xd01a35(0x199),'description':a104_0xd01a35(0x1a7),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- const a91_0x572544=a91_0xa5f0;function a91_0xa5f0(_0x1f4403,_0x28c1b6){_0x1f4403=_0x1f4403-0x178;const _0x10060f=a91_0x1006();let _0xa5f0e8=_0x10060f[_0x1f4403];return _0xa5f0e8;}(function(_0x1eb462,_0x2e571a){const _0x161c73=a91_0xa5f0,_0x465974=_0x1eb462();while(!![]){try{const _0x301364=-parseInt(_0x161c73(0x180))/0x1+parseInt(_0x161c73(0x182))/0x2+-parseInt(_0x161c73(0x17d))/0x3*(parseInt(_0x161c73(0x17a))/0x4)+parseInt(_0x161c73(0x186))/0x5*(-parseInt(_0x161c73(0x17e))/0x6)+-parseInt(_0x161c73(0x17c))/0x7+-parseInt(_0x161c73(0x183))/0x8+parseInt(_0x161c73(0x188))/0x9*(parseInt(_0x161c73(0x184))/0xa);if(_0x301364===_0x2e571a)break;else _0x465974['push'](_0x465974['shift']());}catch(_0xa17c18){_0x465974['push'](_0x465974['shift']());}}}(a91_0x1006,0x24bcd));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':'auth','command':a91_0x572544(0x187),'description':a91_0x572544(0x179),'risk':a91_0x572544(0x189),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x3dd0f0){const {runAuthServer:_0x476eee}=await import('../../auth/auth-server-ui.js');return await _0x476eee(),{'ok':!![]};}},{'service':a91_0x572544(0x181),'command':a91_0x572544(0x178),'description':'Clear\x20login\x20session','risk':a91_0x572544(0x17f),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x343b76){const _0x4e504f=a91_0x572544;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x4e504f(0x185)]('✓\x20Logged\x20out')):console[_0x4e504f(0x185)](_0x4e504f(0x17b)),{'ok':!![]};}}];function a91_0x1006(){const _0x35669f=['166164fmlpGD','auth','82656kxlXLc','1933528JyBRYj','160CMauyE','log','214365GCxkrx','login','417726xOtUum','read','logout','Login\x20via\x20browser','44wDPKqB','!\x20Not\x20logged\x20in','98742QXrNFG','45993fGivkv','6sFJWTv','write'];a91_0x1006=function(){return _0x35669f;};return a91_0x1006();}
1
+ const a91_0x2eb9f2=a91_0x5f33;function a91_0x57a5(){const _0x3ae179=['Login\x20via\x20browser','auth','17wAMWRT','read','Clear\x20login\x20session','2396115uWSYVj','1296856luwPYu','121uzgHuK','log','✓\x20Logged\x20out','33914OOYxUj','../../auth/auth-server-ui.js','309648aiUSqV','write','6SjRtaS','1155470TuiqBZ','691016NpGWIl','587925xSQaqw','56fGAmTx'];a91_0x57a5=function(){return _0x3ae179;};return a91_0x57a5();}(function(_0x33dbb4,_0x632d3a){const _0x10c4e5=a91_0x5f33,_0x32248d=_0x33dbb4();while(!![]){try{const _0x28720c=-parseInt(_0x10c4e5(0xa0))/0x1*(parseInt(_0x10c4e5(0x95))/0x2)+parseInt(_0x10c4e5(0x99))/0x3*(-parseInt(_0x10c4e5(0x9b))/0x4)+parseInt(_0x10c4e5(0x9c))/0x5+-parseInt(_0x10c4e5(0x97))/0x6*(parseInt(_0x10c4e5(0x9d))/0x7)+parseInt(_0x10c4e5(0x91))/0x8+-parseInt(_0x10c4e5(0x90))/0x9+-parseInt(_0x10c4e5(0x9a))/0xa*(-parseInt(_0x10c4e5(0x92))/0xb);if(_0x28720c===_0x632d3a)break;else _0x32248d['push'](_0x32248d['shift']());}catch(_0x25f7ad){_0x32248d['push'](_0x32248d['shift']());}}}(a91_0x57a5,0x3a109));import{unlinkSync,existsSync}from'node:fs';function a91_0x5f33(_0x1ec9df,_0x23f385){_0x1ec9df=_0x1ec9df-0x8e;const _0x57a578=a91_0x57a5();let _0x5f33e9=_0x57a578[_0x1ec9df];return _0x5f33e9;}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a91_0x2eb9f2(0x9f),'command':'login','description':a91_0x2eb9f2(0x9e),'risk':a91_0x2eb9f2(0x8e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0xd563e5){const _0x1b5f85=a91_0x2eb9f2,{runAuthServer:_0x4e95c7}=await import(_0x1b5f85(0x96));return await _0x4e95c7(),{'ok':!![]};}},{'service':a91_0x2eb9f2(0x9f),'command':'logout','description':a91_0x2eb9f2(0x8f),'risk':a91_0x2eb9f2(0x98),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x225c8d){const _0xea000b=a91_0x2eb9f2;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0xea000b(0x93)](_0xea000b(0x94))):console[_0xea000b(0x93)]('!\x20Not\x20logged\x20in'),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a69_0x1ba279=a69_0x20cc;(function(_0x407c2f,_0x5aeefa){const _0x3a1deb=a69_0x20cc,_0xb24cfb=_0x407c2f();while(!![]){try{const _0x2ae57e=-parseInt(_0x3a1deb(0x1f4))/0x1*(parseInt(_0x3a1deb(0x1d4))/0x2)+parseInt(_0x3a1deb(0x1f8))/0x3*(-parseInt(_0x3a1deb(0x1dd))/0x4)+parseInt(_0x3a1deb(0x1d6))/0x5+-parseInt(_0x3a1deb(0x1f1))/0x6+parseInt(_0x3a1deb(0x1d5))/0x7*(parseInt(_0x3a1deb(0x1f9))/0x8)+parseInt(_0x3a1deb(0x1ec))/0x9+-parseInt(_0x3a1deb(0x1db))/0xa*(-parseInt(_0x3a1deb(0x1d8))/0xb);if(_0x2ae57e===_0x5aeefa)break;else _0xb24cfb['push'](_0xb24cfb['shift']());}catch(_0xd01a0d){_0xb24cfb['push'](_0xb24cfb['shift']());}}}(a69_0x16e5,0xe4b7f));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':a69_0x1ba279(0x1ce),'command':a69_0x1ba279(0x1e7),'description':a69_0x1ba279(0x1ef),'risk':a69_0x1ba279(0x1fb),'flags':[{'name':'target','type':a69_0x1ba279(0x1e2),'required':!![],'description':a69_0x1ba279(0x1f7)}],async 'validate'(_0x13cd6e){const _0x2cfab3=a69_0x1ba279,_0x1ff319=loadBffProjectConfig(_0x13cd6e['appCode']),_0x41b748=await readBffLockFile(_0x1ff319[_0x2cfab3(0x1fa)]);if(!_0x41b748)throw CliErrors[_0x2cfab3(0x1f3)](_0x2cfab3(0x1e3));},async 'dryRun'(_0x129fca){const _0x397c5f=a69_0x1ba279,_0x3cc9b3=loadBffProjectConfig(_0x129fca[_0x397c5f(0x1da)]),_0x108133=await readBffLockFile(_0x3cc9b3[_0x397c5f(0x1fa)]);if(!_0x108133)throw CliErrors[_0x397c5f(0x1f3)](_0x397c5f(0x1e9));const {appLock:_0xc49e82}=ensureLockScope(_0x108133,_0x129fca[_0x397c5f(0x1da)],_0x3cc9b3[_0x397c5f(0x1cc)],_0x397c5f(0x1e7)),_0x3e893a=_0x129fca[_0x397c5f(0x1f6)](_0x397c5f(0x1d3)),_0x271786=Object[_0x397c5f(0x1ee)](_0xc49e82['functions']),_0x301e5e=resolveDeleteTarget(_0x3e893a,_0x271786),_0x9dff6d=_0xc49e82['functions'][_0x301e5e];if(!_0x9dff6d)throw CliErrors[_0x397c5f(0x1f3)](_0x397c5f(0x1e8)+_0x301e5e+'\x22.');const _0x23f68e=resolveLocalFilePathFromLockKey(_0x3cc9b3,_0x301e5e),_0x32f00c=relative(_0x3cc9b3[_0x397c5f(0x1e4)],_0x23f68e),_0x2e7911=join(_0x3cc9b3['trashDir'],_0x397c5f(0x1f2),_0x32f00c);return{'method':_0x397c5f(0x1d2),'url':_0x397c5f(0x1d0),'body':{'appCode':_0x129fca[_0x397c5f(0x1da)],'target':_0x301e5e,'remoteId':_0x9dff6d[_0x397c5f(0x1e5)],'localFilePath':_0x23f68e,'trashedPath':_0x2e7911},'description':_0x397c5f(0x1dc)+_0x301e5e+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'};},async 'execute'(_0x2096b5){const _0x982951=a69_0x1ba279,_0x4103ac=loadBffProjectConfig(_0x2096b5[_0x982951(0x1da)]),_0x2d6bed=await readBffLockFile(_0x4103ac[_0x982951(0x1fa)]);if(!_0x2d6bed)throw CliErrors['validation']('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x3b7faa,appLock:_0x78220a}=ensureLockScope(_0x2d6bed,_0x2096b5[_0x982951(0x1da)],_0x4103ac[_0x982951(0x1cc)],_0x982951(0x1e7)),_0x43f2e7=_0x2096b5[_0x982951(0x1f6)](_0x982951(0x1d3)),_0x37b644=Object[_0x982951(0x1ee)](_0x78220a[_0x982951(0x1e6)]),_0x4cc8e9=resolveDeleteTarget(_0x43f2e7,_0x37b644),_0x1d73b6=_0x78220a[_0x982951(0x1e6)][_0x4cc8e9];if(!_0x1d73b6)throw CliErrors[_0x982951(0x1f3)](_0x982951(0x1e8)+_0x4cc8e9+'\x22.');await deleteBffScript(_0x1d73b6[_0x982951(0x1e5)]),delete _0x78220a[_0x982951(0x1e6)][_0x4cc8e9],_0x78220a[_0x982951(0x1f0)]=new Date()[_0x982951(0x1ea)](),await writeBffLockFile(_0x4103ac['lockFilePath'],_0x3b7faa);const _0x3b0559=resolveLocalFilePathFromLockKey(_0x4103ac,_0x4cc8e9);let _0x4618b3;await fileExists(_0x3b0559)&&(_0x4618b3=await moveToTrash(_0x4103ac[_0x982951(0x1e4)],_0x4103ac['trashDir'],_0x3b0559),await cleanupEmptyDirectories(dirname(_0x3b0559),_0x4103ac['scriptsRootDir']));const _0x3947d1={'deleted':_0x4cc8e9,'remoteId':_0x1d73b6[_0x982951(0x1e5)]};if(_0x4618b3)_0x3947d1[_0x982951(0x1d1)]=_0x4618b3;return{'ok':!![],'data':_0x3947d1,'message':_0x982951(0x1eb)+_0x4cc8e9+(_0x4618b3?_0x982951(0x1ed):'')};}};function resolveDeleteTarget(_0x108268,_0x391459){const _0x579fde=a69_0x1ba279;if(_0x108268['includes']('/')){const _0x17a408=_0x391459['find'](_0x2faff9=>_0x2faff9===_0x108268);if(!_0x17a408)throw CliErrors['validation'](_0x579fde(0x1cf)+_0x108268);return _0x17a408;}const _0x2723ae=_0x391459[_0x579fde(0x1e1)](_0xda46b2=>_0xda46b2[_0x579fde(0x1de)]('/')['at'](-0x1)===_0x108268);if(_0x2723ae[_0x579fde(0x1d9)]===0x0)throw CliErrors['validation'](_0x579fde(0x1cf)+_0x108268);if(_0x2723ae[_0x579fde(0x1d9)]>0x1)throw CliErrors[_0x579fde(0x1f3)](_0x579fde(0x1e0)+_0x108268+'\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'+_0x2723ae[_0x579fde(0x1f5)](_0xf52072=>_0x579fde(0x1df)+_0xf52072)[_0x579fde(0x1cd)]('\x0a'));return _0x2723ae[0x0];}function a69_0x16e5(){const _0x6270bb=['1732DfJHkm','split','\x20\x20-\x20','Multiple\x20functions\x20match\x20\x22','filter','string','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','projectRoot','remoteId','functions','delete','No\x20lock\x20entry\x20found\x20for\x20\x22','BFF\x20lock\x20file\x20not\x20found.','toISOString','Deleted\x20','8376336CYNlYy','\x20(local\x20file\x20moved\x20to\x20trash)','keys','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','lastSync','5645526iYcEkV','<timestamp>','validation','404765myDPLT','map','str','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','4788mgYsWf','483688EDjzRu','lockFilePath','high-risk-write','scriptsRoot','join','bff','Function\x20not\x20found:\x20','/api/management/library/scripts/delete','trashedTo','POST','target','2IUwzRH','7GWNQcn','1507055voFrjE','replace','18491099DQdYMr','length','appCode','10VtYckS','Would\x20delete\x20'];a69_0x16e5=function(){return _0x6270bb;};return a69_0x16e5();}async function moveToTrash(_0x2b57c4,_0x452ab9,_0x512a2d){const _0x18dfb6=a69_0x1ba279,_0x1281a6=new Date()[_0x18dfb6(0x1ea)]()[_0x18dfb6(0x1d7)](/[:.]/g,'-'),_0x555743=relative(_0x2b57c4,_0x512a2d),_0x19ddda=join(_0x452ab9,_0x1281a6,_0x555743);return await mkdir(dirname(_0x19ddda),{'recursive':!![]}),await rename(_0x512a2d,_0x19ddda),_0x19ddda;}function a69_0x20cc(_0x165b88,_0xa99584){_0x165b88=_0x165b88-0x1cc;const _0x16e5b4=a69_0x16e5();let _0x20cc1e=_0x16e5b4[_0x165b88];return _0x20cc1e;}async function cleanupEmptyDirectories(_0x5f4d57,_0x2bb0b4){const _0x51b574=a69_0x1ba279;let _0x1973c7=resolve(_0x5f4d57);const _0x1afa1c=resolve(_0x2bb0b4);while(_0x1973c7['startsWith'](''+_0x1afa1c+sep)||_0x1973c7===_0x1afa1c){if(_0x1973c7===_0x1afa1c)return;try{const _0x82a4da=await readdir(_0x1973c7);if(_0x82a4da[_0x51b574(0x1d9)]>0x0)return;await rmdir(_0x1973c7);}catch{return;}_0x1973c7=dirname(_0x1973c7);}}
1
+ const a69_0x3ac8e3=a69_0x4727;(function(_0x309b62,_0x33672c){const _0x467d12=a69_0x4727,_0x122057=_0x309b62();while(!![]){try{const _0x2fa61b=-parseInt(_0x467d12(0x87))/0x1+parseInt(_0x467d12(0x77))/0x2+parseInt(_0x467d12(0x81))/0x3*(-parseInt(_0x467d12(0x70))/0x4)+-parseInt(_0x467d12(0x94))/0x5*(-parseInt(_0x467d12(0x6d))/0x6)+parseInt(_0x467d12(0x74))/0x7*(parseInt(_0x467d12(0x8a))/0x8)+parseInt(_0x467d12(0x6a))/0x9*(parseInt(_0x467d12(0x80))/0xa)+-parseInt(_0x467d12(0x71))/0xb;if(_0x2fa61b===_0x33672c)break;else _0x122057['push'](_0x122057['shift']());}catch(_0x2696de){_0x122057['push'](_0x122057['shift']());}}}(a69_0x50f9,0xccc23));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';function a69_0x4727(_0x23e7e4,_0x6f3720){_0x23e7e4=_0x23e7e4-0x6a;const _0x50f9b3=a69_0x50f9();let _0x4727a7=_0x50f9b3[_0x23e7e4];return _0x4727a7;}import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';function a69_0x50f9(){const _0x310ec1=['\x20\x20-\x20','Multiple\x20functions\x20match\x20\x22','9426263rVYyeY','delete','Deleted\x20','1688706ZNYdQE','high-risk-write','Would\x20delete\x20','keys','\x20(local\x20file\x20moved\x20to\x20trash)','Function\x20not\x20found:\x20','lockFilePath','toISOString','/api/management/library/scripts/delete','278230RZQbdW','1530954cwjUDq','replace','No\x20lock\x20entry\x20found\x20for\x20\x22','length','scriptsRoot','<timestamp>','1222094MtTDSB','functions','BFF\x20lock\x20file\x20not\x20found.','8WrvmWz','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','includes','split','appCode','scriptsRootDir','POST','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','startsWith','map','133645GNzkFz','filter','bff','str','trashedTo','join','remoteId','string','279nQYlny','trashDir','projectRoot','174FKyNTm','validation','target','4GhbweK','13832643dXmgHw'];a69_0x50f9=function(){return _0x310ec1;};return a69_0x50f9();}export const bffDelete={'service':a69_0x3ac8e3(0x96),'command':a69_0x3ac8e3(0x75),'description':'Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','risk':a69_0x3ac8e3(0x78),'flags':[{'name':'target','type':a69_0x3ac8e3(0x9b),'required':!![],'description':a69_0x3ac8e3(0x91)}],async 'validate'(_0x31b048){const _0x1a3d0c=a69_0x3ac8e3,_0x46024c=loadBffProjectConfig(_0x31b048[_0x1a3d0c(0x8e)]),_0x57c541=await readBffLockFile(_0x46024c[_0x1a3d0c(0x7d)]);if(!_0x57c541)throw CliErrors[_0x1a3d0c(0x6e)]('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x344dd5){const _0x461b92=a69_0x3ac8e3,_0x7bb39b=loadBffProjectConfig(_0x344dd5['appCode']),_0x116654=await readBffLockFile(_0x7bb39b[_0x461b92(0x7d)]);if(!_0x116654)throw CliErrors['validation'](_0x461b92(0x89));const {appLock:_0x170d56}=ensureLockScope(_0x116654,_0x344dd5['appCode'],_0x7bb39b[_0x461b92(0x85)],_0x461b92(0x75)),_0x333a3d=_0x344dd5[_0x461b92(0x97)](_0x461b92(0x6f)),_0x3b6310=Object['keys'](_0x170d56[_0x461b92(0x88)]),_0x219709=resolveDeleteTarget(_0x333a3d,_0x3b6310),_0x2fe080=_0x170d56[_0x461b92(0x88)][_0x219709];if(!_0x2fe080)throw CliErrors[_0x461b92(0x6e)](_0x461b92(0x83)+_0x219709+'\x22.');const _0x3141a4=resolveLocalFilePathFromLockKey(_0x7bb39b,_0x219709),_0x1ef658=relative(_0x7bb39b['projectRoot'],_0x3141a4),_0x1ea110=join(_0x7bb39b[_0x461b92(0x6b)],_0x461b92(0x86),_0x1ef658);return{'method':_0x461b92(0x90),'url':_0x461b92(0x7f),'body':{'appCode':_0x344dd5[_0x461b92(0x8e)],'target':_0x219709,'remoteId':_0x2fe080['remoteId'],'localFilePath':_0x3141a4,'trashedPath':_0x1ea110},'description':_0x461b92(0x79)+_0x219709+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'};},async 'execute'(_0x2d6e2d){const _0x3d5297=a69_0x3ac8e3,_0x7dde0=loadBffProjectConfig(_0x2d6e2d[_0x3d5297(0x8e)]),_0x332c64=await readBffLockFile(_0x7dde0[_0x3d5297(0x7d)]);if(!_0x332c64)throw CliErrors['validation'](_0x3d5297(0x89));const {lockData:_0x32b99f,appLock:_0x21754c}=ensureLockScope(_0x332c64,_0x2d6e2d[_0x3d5297(0x8e)],_0x7dde0[_0x3d5297(0x85)],_0x3d5297(0x75)),_0x547bb7=_0x2d6e2d[_0x3d5297(0x97)](_0x3d5297(0x6f)),_0x309f1c=Object[_0x3d5297(0x7a)](_0x21754c[_0x3d5297(0x88)]),_0x1159d3=resolveDeleteTarget(_0x547bb7,_0x309f1c),_0x189d21=_0x21754c[_0x3d5297(0x88)][_0x1159d3];if(!_0x189d21)throw CliErrors['validation'](_0x3d5297(0x83)+_0x1159d3+'\x22.');await deleteBffScript(_0x189d21[_0x3d5297(0x9a)]),delete _0x21754c['functions'][_0x1159d3],_0x21754c['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x7dde0[_0x3d5297(0x7d)],_0x32b99f);const _0x33429e=resolveLocalFilePathFromLockKey(_0x7dde0,_0x1159d3);let _0x1765ee;await fileExists(_0x33429e)&&(_0x1765ee=await moveToTrash(_0x7dde0[_0x3d5297(0x6c)],_0x7dde0['trashDir'],_0x33429e),await cleanupEmptyDirectories(dirname(_0x33429e),_0x7dde0[_0x3d5297(0x8f)]));const _0x3cb783={'deleted':_0x1159d3,'remoteId':_0x189d21[_0x3d5297(0x9a)]};if(_0x1765ee)_0x3cb783[_0x3d5297(0x98)]=_0x1765ee;return{'ok':!![],'data':_0x3cb783,'message':_0x3d5297(0x76)+_0x1159d3+(_0x1765ee?_0x3d5297(0x7b):'')};}};function resolveDeleteTarget(_0x46efc0,_0x277c0d){const _0x4a063b=a69_0x3ac8e3;if(_0x46efc0[_0x4a063b(0x8c)]('/')){const _0x13082e=_0x277c0d['find'](_0x4e94eb=>_0x4e94eb===_0x46efc0);if(!_0x13082e)throw CliErrors['validation'](_0x4a063b(0x7c)+_0x46efc0);return _0x13082e;}const _0x43e346=_0x277c0d[_0x4a063b(0x95)](_0x5efa5e=>_0x5efa5e[_0x4a063b(0x8d)]('/')['at'](-0x1)===_0x46efc0);if(_0x43e346['length']===0x0)throw CliErrors[_0x4a063b(0x6e)](_0x4a063b(0x7c)+_0x46efc0);if(_0x43e346['length']>0x1)throw CliErrors[_0x4a063b(0x6e)](_0x4a063b(0x73)+_0x46efc0+_0x4a063b(0x8b)+_0x43e346[_0x4a063b(0x93)](_0x1c1f68=>_0x4a063b(0x72)+_0x1c1f68)[_0x4a063b(0x99)]('\x0a'));return _0x43e346[0x0];}async function moveToTrash(_0x448e5a,_0x1d3e53,_0xf5779b){const _0x2c607f=a69_0x3ac8e3,_0x4684bf=new Date()[_0x2c607f(0x7e)]()[_0x2c607f(0x82)](/[:.]/g,'-'),_0x4a89b7=relative(_0x448e5a,_0xf5779b),_0x5a9be3=join(_0x1d3e53,_0x4684bf,_0x4a89b7);return await mkdir(dirname(_0x5a9be3),{'recursive':!![]}),await rename(_0xf5779b,_0x5a9be3),_0x5a9be3;}async function cleanupEmptyDirectories(_0xb800e9,_0x538cab){const _0x4bff85=a69_0x3ac8e3;let _0x3fa62a=resolve(_0xb800e9);const _0x1a66bd=resolve(_0x538cab);while(_0x3fa62a[_0x4bff85(0x92)](''+_0x1a66bd+sep)||_0x3fa62a===_0x1a66bd){if(_0x3fa62a===_0x1a66bd)return;try{const _0x5d77c0=await readdir(_0x3fa62a);if(_0x5d77c0[_0x4bff85(0x84)]>0x0)return;await rmdir(_0x3fa62a);}catch{return;}_0x3fa62a=dirname(_0x3fa62a);}}
@@ -1 +1 @@
1
- function a74_0x29b9(_0x5553ce,_0x250d7a){_0x5553ce=_0x5553ce-0x1e0;const _0x53af38=a74_0x53af();let _0x29b934=_0x53af38[_0x5553ce];return _0x29b934;}const a74_0x3309ce=a74_0x29b9;function a74_0x53af(){const _0x5a9f08=['1642384EPousd','description','number','121330npiEwg','17wmRBum','verbose','1713980pifGuh','78EtVnYK','num','(none)','1266156EUNLoT','bff','16466670vaoKYp','Get\x20BFF\x20script\x20details\x20by\x20ID','boolean','appCode','createdTime','updatedTime','9sCaixo','read','3754ixMING','897918nSEIMP','scriptContent','8PwowZb'];a74_0x53af=function(){return _0x5a9f08;};return a74_0x53af();}(function(_0x435ba0,_0x5a2fdc){const _0x35b0a3=a74_0x29b9,_0x2d9be4=_0x435ba0();while(!![]){try{const _0x332a51=parseInt(_0x35b0a3(0x1f5))/0x1*(-parseInt(_0x35b0a3(0x1ed))/0x2)+-parseInt(_0x35b0a3(0x1e3))/0x3+-parseInt(_0x35b0a3(0x1f1))/0x4+parseInt(_0x35b0a3(0x1f4))/0x5*(-parseInt(_0x35b0a3(0x1e0))/0x6)+-parseInt(_0x35b0a3(0x1ee))/0x7*(-parseInt(_0x35b0a3(0x1f0))/0x8)+-parseInt(_0x35b0a3(0x1eb))/0x9*(parseInt(_0x35b0a3(0x1f7))/0xa)+parseInt(_0x35b0a3(0x1e5))/0xb;if(_0x332a51===_0x5a2fdc)break;else _0x2d9be4['push'](_0x2d9be4['shift']());}catch(_0x7ba83b){_0x2d9be4['push'](_0x2d9be4['shift']());}}}(a74_0x53af,0x42da7));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a74_0x3309ce(0x1e4),'command':'detail','description':a74_0x3309ce(0x1e6),'risk':a74_0x3309ce(0x1ec),'flags':[{'name':'id','type':a74_0x3309ce(0x1f3),'required':!![],'description':'Script\x20ID'},{'name':a74_0x3309ce(0x1f6),'type':a74_0x3309ce(0x1e7),'description':'Return\x20full\x20raw\x20script\x20object'}],async 'execute'(_0x5c2c6a){const _0xb80899=a74_0x3309ce,_0x442097=await getBffScriptInfo(_0x5c2c6a[_0xb80899(0x1e1)]('id')),_0x4abb12=_0x5c2c6a['bool'](_0xb80899(0x1f6));if(_0x4abb12)return{'ok':!![],'data':_0x442097};return{'ok':!![],'data':{'id':_0x442097['id'],'appCode':_0x442097[_0xb80899(0x1e8)],'scriptType':_0x442097['scriptType'],'description':_0x442097[_0xb80899(0x1f2)]||_0xb80899(0x1e2),'createdTime':_0x442097[_0xb80899(0x1e9)]??'','updatedTime':_0x442097[_0xb80899(0x1ea)]??'','scriptContent':_0x442097[_0xb80899(0x1ef)]??''}};}};
1
+ const a74_0x4ae69c=a74_0x391e;function a74_0x391e(_0x2f2b0a,_0x34b8f9){_0x2f2b0a=_0x2f2b0a-0x15a;const _0x5f2fe7=a74_0x5f2f();let _0x391e9d=_0x5f2fe7[_0x2f2b0a];return _0x391e9d;}function a74_0x5f2f(){const _0x3506b2=['741208EQEIaC','number','detail','updatedTime','1461252DjtQyW','boolean','4939800LThYPs','2JrwPme','1407769YWxflg','bff','scriptType','1478166qSGvub','appCode','Script\x20ID','verbose','264136GBzGTM','Return\x20full\x20raw\x20script\x20object','Get\x20BFF\x20script\x20details\x20by\x20ID','description','2553210HKLHCU','(none)','scriptContent','133voGOfC','bool'];a74_0x5f2f=function(){return _0x3506b2;};return a74_0x5f2f();}(function(_0x228df6,_0xb5e548){const _0x6ba0f1=a74_0x391e,_0x451168=_0x228df6();while(!![]){try{const _0x1e4fc3=parseInt(_0x6ba0f1(0x15e))/0x1*(parseInt(_0x6ba0f1(0x15d))/0x2)+-parseInt(_0x6ba0f1(0x15a))/0x3+parseInt(_0x6ba0f1(0x16e))/0x4+-parseInt(_0x6ba0f1(0x15c))/0x5+parseInt(_0x6ba0f1(0x161))/0x6+parseInt(_0x6ba0f1(0x16c))/0x7*(parseInt(_0x6ba0f1(0x165))/0x8)+-parseInt(_0x6ba0f1(0x169))/0x9;if(_0x1e4fc3===_0xb5e548)break;else _0x451168['push'](_0x451168['shift']());}catch(_0x2c0662){_0x451168['push'](_0x451168['shift']());}}}(a74_0x5f2f,0xacdb5));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a74_0x4ae69c(0x15f),'command':a74_0x4ae69c(0x170),'description':a74_0x4ae69c(0x167),'risk':'read','flags':[{'name':'id','type':a74_0x4ae69c(0x16f),'required':!![],'description':a74_0x4ae69c(0x163)},{'name':a74_0x4ae69c(0x164),'type':a74_0x4ae69c(0x15b),'description':a74_0x4ae69c(0x166)}],async 'execute'(_0x12c30d){const _0x3da3d8=a74_0x4ae69c,_0x57e186=await getBffScriptInfo(_0x12c30d['num']('id')),_0x227ded=_0x12c30d[_0x3da3d8(0x16d)](_0x3da3d8(0x164));if(_0x227ded)return{'ok':!![],'data':_0x57e186};return{'ok':!![],'data':{'id':_0x57e186['id'],'appCode':_0x57e186[_0x3da3d8(0x162)],'scriptType':_0x57e186[_0x3da3d8(0x160)],'description':_0x57e186[_0x3da3d8(0x168)]||_0x3da3d8(0x16a),'createdTime':_0x57e186['createdTime']??'','updatedTime':_0x57e186[_0x3da3d8(0x171)]??'','scriptContent':_0x57e186[_0x3da3d8(0x16b)]??''}};}};
@@ -1 +1 @@
1
- (function(_0x1eb697,_0x56d8e6){const _0x5e7bc4=a73_0x193c,_0x16dd5d=_0x1eb697();while(!![]){try{const _0x381e5b=-parseInt(_0x5e7bc4(0xc9))/0x1*(parseInt(_0x5e7bc4(0xbf))/0x2)+parseInt(_0x5e7bc4(0xc1))/0x3+parseInt(_0x5e7bc4(0xc7))/0x4*(parseInt(_0x5e7bc4(0xc8))/0x5)+-parseInt(_0x5e7bc4(0xc2))/0x6*(parseInt(_0x5e7bc4(0xcb))/0x7)+parseInt(_0x5e7bc4(0xc5))/0x8*(-parseInt(_0x5e7bc4(0xc0))/0x9)+parseInt(_0x5e7bc4(0xca))/0xa*(-parseInt(_0x5e7bc4(0xc6))/0xb)+parseInt(_0x5e7bc4(0xc3))/0xc*(parseInt(_0x5e7bc4(0xc4))/0xd);if(_0x381e5b===_0x56d8e6)break;else _0x16dd5d['push'](_0x16dd5d['shift']());}catch(_0x33f227){_0x16dd5d['push'](_0x16dd5d['shift']());}}}(a73_0x1540,0xc7f22));function a73_0x1540(){const _0xc4bd64=['715Rmlsog','83856wSkfKk','25388nyDgTp','323344ljoOqn','85XbWilo','307701FfIgkt','6830FXVTNh','1041229HyuhCe','6LWlcoS','243UwJvPY','4067547pYAOrT','66JZFXOJ','547116jxVsVc'];a73_0x1540=function(){return _0xc4bd64;};return a73_0x1540();}import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffNew}from'../../commands/bff/new.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';function a73_0x193c(_0x4045de,_0x553800){_0x4045de=_0x4045de-0xbf;const _0x154045=a73_0x1540();let _0x193c75=_0x154045[_0x4045de];return _0x193c75;}export const bffDefinitions=[bffList,bffDetail,bffStatus,bffNew,bffPush,bffPull,bffDelete];
1
+ function a73_0xf50c(_0x2b6174,_0xdc7d51){_0x2b6174=_0x2b6174-0x1de;const _0x431be0=a73_0x431b();let _0xf50cc9=_0x431be0[_0x2b6174];return _0xf50cc9;}function a73_0x431b(){const _0xd15ea=['2616273qevGue','482322TGmDyT','31764amcbPT','10ZaMpbM','272289HgewSS','7vLiUOL','112DYFJkH','512432GpqlhY','2290240gpYWxj','381925gElPYQ'];a73_0x431b=function(){return _0xd15ea;};return a73_0x431b();}(function(_0x43d653,_0x44cf5e){const _0x2eb077=a73_0xf50c,_0x40a2ca=_0x43d653();while(!![]){try{const _0x458d3c=parseInt(_0x2eb077(0x1e2))/0x1+-parseInt(_0x2eb077(0x1e5))/0x2+-parseInt(_0x2eb077(0x1e0))/0x3*(-parseInt(_0x2eb077(0x1e4))/0x4)+-parseInt(_0x2eb077(0x1e7))/0x5+parseInt(_0x2eb077(0x1df))/0x6*(-parseInt(_0x2eb077(0x1e3))/0x7)+-parseInt(_0x2eb077(0x1e6))/0x8+parseInt(_0x2eb077(0x1de))/0x9*(parseInt(_0x2eb077(0x1e1))/0xa);if(_0x458d3c===_0x44cf5e)break;else _0x40a2ca['push'](_0x40a2ca['shift']());}catch(_0x58d9b8){_0x40a2ca['push'](_0x40a2ca['shift']());}}}(a73_0x431b,0x271b6));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffNew}from'../../commands/bff/new.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffNew,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- function a72_0x2aed(){const _0x2b36fd=['90xzuEsh','description','(unnamed)','14426KXcKAi','bool','length','31JNyACx','functionName','398670SbJrEU','Filter\x20by\x20script\x20name','map','name','scriptType','list','type','Return\x20full\x20script\x20objects','5533416dmVHnL','15tFUKKM','boolean','No\x20BFF\x20scripts\x20found.','13669720rhrTSu','3985744zcOlDq','appCode','str','bff','verbose','522704eBHjOl','ENDPOINT','80596YABWMY','List\x20BFF\x20scripts','11UhxdYB'];a72_0x2aed=function(){return _0x2b36fd;};return a72_0x2aed();}const a72_0x4b6613=a72_0x2b47;(function(_0xad29b0,_0x22c466){const _0x46431f=a72_0x2b47,_0x12a883=_0xad29b0();while(!![]){try{const _0x6257fa=parseInt(_0x46431f(0x15d))/0x1*(-parseInt(_0x46431f(0x179))/0x2)+parseInt(_0x46431f(0x176))/0x3*(parseInt(_0x46431f(0x173))/0x4)+-parseInt(_0x46431f(0x168))/0x5*(parseInt(_0x46431f(0x15f))/0x6)+-parseInt(_0x46431f(0x171))/0x7+-parseInt(_0x46431f(0x16c))/0x8+-parseInt(_0x46431f(0x167))/0x9+parseInt(_0x46431f(0x16b))/0xa*(parseInt(_0x46431f(0x175))/0xb);if(_0x6257fa===_0x22c466)break;else _0x12a883['push'](_0x12a883['shift']());}catch(_0x4df0d8){_0x12a883['push'](_0x12a883['shift']());}}}(a72_0x2aed,0x58156));import{listBffScripts}from'../../core/api-client.js';function a72_0x2b47(_0x2f72a0,_0x1e7241){_0x2f72a0=_0x2f72a0-0x15d;const _0x2aedc2=a72_0x2aed();let _0x2b47d5=_0x2aedc2[_0x2f72a0];return _0x2b47d5;}export const bffList={'service':a72_0x4b6613(0x16f),'command':a72_0x4b6613(0x164),'description':a72_0x4b6613(0x174),'risk':'read','flags':[{'name':'type','type':'string','description':'Script\x20type\x20filter','default':a72_0x4b6613(0x172),'enum':['ENDPOINT','COMMON']},{'name':a72_0x4b6613(0x162),'type':'string','description':a72_0x4b6613(0x160)},{'name':a72_0x4b6613(0x170),'type':a72_0x4b6613(0x169),'description':a72_0x4b6613(0x166)}],async 'execute'(_0x2ba56d){const _0x281f6a=a72_0x4b6613,_0x2222de=await listBffScripts(_0x2ba56d[_0x281f6a(0x16d)],_0x2ba56d[_0x281f6a(0x16e)](_0x281f6a(0x165)),{'scriptName':_0x2ba56d[_0x281f6a(0x16e)](_0x281f6a(0x162))||undefined}),_0x1b72a4=_0x2ba56d[_0x281f6a(0x17a)](_0x281f6a(0x170));return{'ok':!![],'data':_0x1b72a4?_0x2222de:_0x2222de[_0x281f6a(0x161)](_0x29f801=>({'id':_0x29f801['id'],'functionName':_0x29f801[_0x281f6a(0x15e)]??'','description':_0x29f801[_0x281f6a(0x177)]||_0x281f6a(0x178),'scriptType':_0x29f801[_0x281f6a(0x163)]})),'message':_0x2222de[_0x281f6a(0x17b)]===0x0?_0x281f6a(0x16a):undefined};}};
1
+ const a72_0x35d8c1=a72_0x450a;function a72_0x2175(){const _0x5430d3=['2274205KChNhl','104AsxujS','4592844qoIEiG','length','1952832klqJEn','COMMON','670qQCPbU','592011VejrKu','174EedpWo','map','32068rXxZNP','No\x20BFF\x20scripts\x20found.','Return\x20full\x20script\x20objects','Filter\x20by\x20script\x20name','ENDPOINT','appCode','functionName','boolean','3944840ibDlMc','scriptType','description','string','138UchdeX','read','type','name','str'];a72_0x2175=function(){return _0x5430d3;};return a72_0x2175();}(function(_0x4d9d48,_0x4b4804){const _0xafa94b=a72_0x450a,_0x16033e=_0x4d9d48();while(!![]){try{const _0x14d932=parseInt(_0xafa94b(0xc1))/0x1*(-parseInt(_0xafa94b(0xd1))/0x2)+parseInt(_0xafa94b(0xc3))/0x3*(-parseInt(_0xafa94b(0xc5))/0x4)+-parseInt(_0xafa94b(0xd6))/0x5+parseInt(_0xafa94b(0xda))/0x6+-parseInt(_0xafa94b(0xc2))/0x7*(-parseInt(_0xafa94b(0xd7))/0x8)+parseInt(_0xafa94b(0xd8))/0x9+-parseInt(_0xafa94b(0xcd))/0xa;if(_0x14d932===_0x4b4804)break;else _0x16033e['push'](_0x16033e['shift']());}catch(_0x44d594){_0x16033e['push'](_0x16033e['shift']());}}}(a72_0x2175,0x8c4e8));import{listBffScripts}from'../../core/api-client.js';function a72_0x450a(_0x26786b,_0x11444a){_0x26786b=_0x26786b-0xc0;const _0x2175e9=a72_0x2175();let _0x450a78=_0x2175e9[_0x26786b];return _0x450a78;}export const bffList={'service':'bff','command':'list','description':'List\x20BFF\x20scripts','risk':a72_0x35d8c1(0xd2),'flags':[{'name':a72_0x35d8c1(0xd3),'type':a72_0x35d8c1(0xd0),'description':'Script\x20type\x20filter','default':a72_0x35d8c1(0xc9),'enum':[a72_0x35d8c1(0xc9),a72_0x35d8c1(0xc0)]},{'name':a72_0x35d8c1(0xd4),'type':a72_0x35d8c1(0xd0),'description':a72_0x35d8c1(0xc8)},{'name':'verbose','type':a72_0x35d8c1(0xcc),'description':a72_0x35d8c1(0xc7)}],async 'execute'(_0x292c22){const _0x2c358c=a72_0x35d8c1,_0x21563d=await listBffScripts(_0x292c22[_0x2c358c(0xca)],_0x292c22[_0x2c358c(0xd5)]('type'),{'scriptName':_0x292c22['str'](_0x2c358c(0xd4))||undefined}),_0x2d68c2=_0x292c22['bool']('verbose');return{'ok':!![],'data':_0x2d68c2?_0x21563d:_0x21563d[_0x2c358c(0xc4)](_0x464056=>({'id':_0x464056['id'],'functionName':_0x464056[_0x2c358c(0xcb)]??'','description':_0x464056[_0x2c358c(0xcf)]||'(unnamed)','scriptType':_0x464056[_0x2c358c(0xce)]})),'message':_0x21563d[_0x2c358c(0xd9)]===0x0?_0x2c358c(0xc6):undefined};}};
@@ -1 +1 @@
1
- const a68_0x41d1fb=a68_0x57ce;function a68_0x57ce(_0x29eee7,_0x5ddd45){_0x29eee7=_0x29eee7-0x1a9;const _0x41c72d=a68_0x41c7();let _0x57cef6=_0x41c72d[_0x29eee7];return _0x57cef6;}(function(_0x20e601,_0x44431b){const _0xa57168=a68_0x57ce,_0x406515=_0x20e601();while(!![]){try{const _0x58df2b=-parseInt(_0xa57168(0x1fa))/0x1*(parseInt(_0xa57168(0x1c2))/0x2)+parseInt(_0xa57168(0x1da))/0x3*(-parseInt(_0xa57168(0x1bf))/0x4)+parseInt(_0xa57168(0x1f8))/0x5*(parseInt(_0xa57168(0x1d9))/0x6)+-parseInt(_0xa57168(0x1b2))/0x7+parseInt(_0xa57168(0x1e6))/0x8*(-parseInt(_0xa57168(0x1ca))/0x9)+parseInt(_0xa57168(0x1de))/0xa*(-parseInt(_0xa57168(0x1e3))/0xb)+parseInt(_0xa57168(0x1be))/0xc;if(_0x58df2b===_0x44431b)break;else _0x406515['push'](_0x406515['shift']());}catch(_0x340fe2){_0x406515['push'](_0x406515['shift']());}}}(a68_0x41c7,0xbf810));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffNew={'service':a68_0x41d1fb(0x1f2),'command':a68_0x41d1fb(0x1b0),'description':a68_0x41d1fb(0x1d0),'risk':'write','flags':[{'name':'type','type':'string','required':!![],'enum':[a68_0x41d1fb(0x1cc),a68_0x41d1fb(0x1f3),a68_0x41d1fb(0x1f4)],'description':'Script\x20type'},{'name':a68_0x41d1fb(0x1cd),'type':a68_0x41d1fb(0x1e8),'required':!![],'description':a68_0x41d1fb(0x1b8)},{'name':a68_0x41d1fb(0x1f7),'type':a68_0x41d1fb(0x1e8),'description':a68_0x41d1fb(0x1e0)},{'name':a68_0x41d1fb(0x1aa),'type':'string','description':'Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)'},{'name':a68_0x41d1fb(0x1ea),'type':a68_0x41d1fb(0x1e8),'description':a68_0x41d1fb(0x1e4)},{'name':a68_0x41d1fb(0x1b7),'type':a68_0x41d1fb(0x1e8),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':a68_0x41d1fb(0x1fc),'type':a68_0x41d1fb(0x1e8),'description':a68_0x41d1fb(0x1db),'enum':[a68_0x41d1fb(0x1e2),'after']}],async 'validate'(_0x1919cd){const _0x1a401b=a68_0x41d1fb,_0x58a4ae=_0x1919cd['str'](_0x1a401b(0x1cd));if(!isValidBffFunctionName(_0x58a4ae))throw CliErrors['validation'](_0x1a401b(0x1e5)+_0x58a4ae+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0xcd63f5){const _0x5e0eb8=a68_0x41d1fb,_0x47062e=loadBffProjectConfig(_0xcd63f5[_0x5e0eb8(0x1b5)]),_0x461bd4=_0xcd63f5['str'](_0x5e0eb8(0x1ad)),_0x4d4893=_0xcd63f5['str'](_0x5e0eb8(0x1cd)),_0x306640=_0xcd63f5[_0x5e0eb8(0x1d7)](_0x5e0eb8(0x1f7))||undefined,_0x585171=_0x461bd4===_0x5e0eb8(0x1f4)?await resolveHookOptions(_0x47062e,_0xcd63f5):undefined,_0x1c7cf2=buildFilePath(_0x47062e,_0x461bd4,_0x4d4893,_0x585171);if(await fileExists(_0x1c7cf2))throw CliErrors['validation'](_0x5e0eb8(0x1c6)+_0x1c7cf2);await mkdir(dirname(_0x1c7cf2),{'recursive':!![]});const _0x1c23d1=generateTemplate(_0x461bd4,_0x4d4893,_0xcd63f5[_0x5e0eb8(0x1b5)],_0x306640,_0x585171);await writeFile(_0x1c7cf2,_0x1c23d1,_0x5e0eb8(0x1df));const _0x6225c7={'type':_0x461bd4,'name':_0x4d4893,'path':_0x1c7cf2};if(_0x306640)_0x6225c7[_0x5e0eb8(0x1f7)]=_0x306640;if(_0x585171){if(_0x585171[_0x5e0eb8(0x1aa)])_0x6225c7['alias']=_0x585171[_0x5e0eb8(0x1aa)];_0x6225c7['datasetCode']=_0x585171['datasetCode'],_0x6225c7[_0x5e0eb8(0x1bc)]=_0x585171['operationType'],_0x6225c7['functionNode']=_0x585171[_0x5e0eb8(0x1f5)];}return{'ok':!![],'data':_0x6225c7,'message':_0x5e0eb8(0x1f6)+_0x461bd4+'\x20function:\x20'+_0x4d4893};}};async function resolveHookOptions(_0x172ec3,_0x2ba824){const _0x3cf123=a68_0x41d1fb,_0x25cacd=loadAliasMap(_0x2ba824[_0x3cf123(0x1e9)],undefined,resolveApiFilePath(_0x2ba824['apiDir'],_0x2ba824[_0x3cf123(0x1b5)])),_0x4a1899=_0x25cacd['length']>0x0;let _0x10937e,_0x24528f,_0x31c313;const _0x48448f=_0x2ba824[_0x3cf123(0x1d7)](_0x3cf123(0x1aa)),_0x22c41d=_0x2ba824[_0x3cf123(0x1d7)](_0x3cf123(0x1ea));if(_0x48448f){const _0x17dd6c=resolveAlias(_0x2ba824[_0x3cf123(0x1e9)],_0x48448f,undefined,resolveApiFilePath(_0x2ba824[_0x3cf123(0x1e9)],_0x2ba824[_0x3cf123(0x1b5)]));if(!_0x17dd6c){const _0x2812be=_0x4a1899?'Available\x20aliases:\x20'+_0x25cacd['map'](_0x37a59b=>_0x37a59b[_0x3cf123(0x1aa)])[_0x3cf123(0x1d8)](',\x20'):_0x3cf123(0x1f1)+CLI_BIN_NAME+_0x3cf123(0x1ba);throw CliErrors[_0x3cf123(0x1c8)](_0x3cf123(0x200)+_0x48448f+_0x3cf123(0x1c0)+_0x2812be);}_0x10937e=_0x48448f,_0x24528f=_0x17dd6c;}else{if(_0x22c41d){_0x24528f=_0x22c41d;const _0x6334ff=_0x25cacd['find'](_0x2b3075=>_0x2b3075[_0x3cf123(0x1ed)]===_0x22c41d);_0x10937e=_0x6334ff?.['alias'];}else{if(_0x2ba824[_0x3cf123(0x1fd)])throw CliErrors[_0x3cf123(0x1c8)](_0x3cf123(0x201));else{if(_0x4a1899){const _0x3f5fc4=_0x25cacd[_0x3cf123(0x1eb)](_0x1a4d30=>_0x1a4d30[_0x3cf123(0x1aa)]+'\x20('+_0x1a4d30[_0x3cf123(0x1b4)]+')'),_0x2ec0ae=await promptSelect('Select\x20dataset:',_0x3f5fc4),_0x40fd84=_0x25cacd[_0x2ec0ae];if(!_0x40fd84)throw CliErrors[_0x3cf123(0x1c8)](_0x3cf123(0x1bb));_0x10937e=_0x40fd84[_0x3cf123(0x1aa)],_0x24528f=_0x40fd84['datasetCode'];}else{const _0x571753=await listDatasets(_0x2ba824[_0x3cf123(0x1b5)]);if(_0x571753['length']===0x0)throw CliErrors[_0x3cf123(0x1c8)](_0x3cf123(0x1a9));const _0x508f03=_0x571753[_0x3cf123(0x1eb)](_0x59e1be=>_0x59e1be[_0x3cf123(0x1cd)]+'\x20('+_0x59e1be[_0x3cf123(0x1e1)]+')'),_0x57fefc=await promptSelect(_0x3cf123(0x1c4),_0x508f03),_0x3dea67=_0x571753[_0x57fefc];if(!_0x3dea67)throw CliErrors['validation'](_0x3cf123(0x1bb));_0x24528f=_0x3dea67['code'],_0x10937e=undefined;}}}}const _0x3677f1=await listDatasets(_0x2ba824[_0x3cf123(0x1b5)]),_0x4f8899=_0x3677f1[_0x3cf123(0x1ec)](_0x5a73ec=>_0x5a73ec['code']===_0x24528f);if(!_0x4f8899)throw CliErrors[_0x3cf123(0x1c8)]('Dataset\x20not\x20found\x20for\x20code\x20\x22'+_0x24528f+_0x3cf123(0x1b6)+(_0x10937e?'The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x31c313=_0x4f8899['id'];const _0x455ef6=_0x10937e??_0x24528f,_0x7037ad=await listBffDatasetOperations(_0x2ba824[_0x3cf123(0x1b5)],_0x31c313),_0x26b0f2=_0x7037ad?Object['keys'](_0x7037ad):[];if(_0x26b0f2['length']===0x0)throw CliErrors['validation'](_0x3cf123(0x1d2)+_0x455ef6+'.');let _0x402307;const _0x437679=_0x2ba824[_0x3cf123(0x1d7)](_0x3cf123(0x1b7));if(_0x437679){if(!_0x26b0f2[_0x3cf123(0x1b3)](_0x437679))throw CliErrors[_0x3cf123(0x1c8)](_0x3cf123(0x1dc)+_0x437679+_0x3cf123(0x1d5)+_0x455ef6+'.\x20'+(_0x3cf123(0x1cb)+_0x26b0f2['join'](',\x20')));_0x402307=_0x437679;}else{if(_0x2ba824[_0x3cf123(0x1fd)])throw CliErrors[_0x3cf123(0x1c8)](_0x3cf123(0x1ce));const _0x265207=await promptSelect(_0x3cf123(0x1fe),_0x26b0f2);_0x402307=_0x26b0f2[_0x265207]??_0x26b0f2[0x0];}let _0xf77eb2=normalizeHookFunctionNode(_0x2ba824[_0x3cf123(0x1d7)](_0x3cf123(0x1fc)));if(!_0xf77eb2){if(_0x2ba824[_0x3cf123(0x1d7)](_0x3cf123(0x1fc)))throw CliErrors[_0x3cf123(0x1c8)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x2ba824[_0x3cf123(0x1fd)])throw CliErrors[_0x3cf123(0x1c8)](_0x3cf123(0x1c5));const _0x12d26a=await promptSelect(_0x3cf123(0x1b9),[_0x3cf123(0x1e2),_0x3cf123(0x1ac)]);_0xf77eb2=['before',_0x3cf123(0x1ac)][_0x12d26a]??_0x3cf123(0x1e2);}return{'alias':_0x10937e,'datasetCode':_0x24528f,'datasetId':_0x31c313,'operationType':_0x402307,'functionNode':_0xf77eb2};}async function promptSelect(_0x59528d,_0x1b22fb){const _0x3b0c65=a68_0x41d1fb;if(_0x1b22fb[_0x3b0c65(0x1c3)]===0x1)return 0x0;for(const [_0x2111ee,_0x58095c]of _0x1b22fb[_0x3b0c65(0x1dd)]()){process[_0x3b0c65(0x1d6)][_0x3b0c65(0x1ee)]('\x20\x20'+(_0x2111ee+0x1)+'.\x20'+_0x58095c+'\x0a');}const _0x18fa29=createInterface({'input':process[_0x3b0c65(0x1d1)],'output':process[_0x3b0c65(0x1d6)]});while(!![]){const _0x5575a2=await new Promise(_0x2210e1=>{_0x18fa29['question'](_0x59528d+'\x20',_0x2210e1);}),_0x5a8de9=Number[_0x3b0c65(0x1c7)](_0x5575a2[_0x3b0c65(0x1d4)](),0xa);if(Number[_0x3b0c65(0x1fb)](_0x5a8de9)&&_0x5a8de9>=0x1&&_0x5a8de9<=_0x1b22fb[_0x3b0c65(0x1c3)])return _0x18fa29[_0x3b0c65(0x1f9)](),_0x5a8de9-0x1;process['stderr'][_0x3b0c65(0x1ee)](_0x3b0c65(0x1ae)+_0x1b22fb[_0x3b0c65(0x1c3)]+'.\x0a');}}function a68_0x41c7(){const _0x142c40=['function-node','nonInteractive','Select\x20operation\x20type:','.js','Alias\x20\x22','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','No\x20datasets\x20found\x20for\x20this\x20app.','alias','scriptsRootDir','after','type','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','TODO:\x20add\x20script\x20description','new','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','8439025djfiCk','includes','tableName','appCode','\x22.\x20','operation-type','Function\x20name\x20(valid\x20JS\x20identifier)','Select\x20trigger\x20node:','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','Invalid\x20dataset\x20selection.','operationType','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','38837448jfnRyN','4NZtGyB','\x22\x20not\x20found.\x20','\x0a\x20*\x20[触发节点]\x20','32YWZkJy','length','Select\x20dataset:','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','File\x20already\x20exists:\x20','parseInt','validation','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','128466qjZZvz','Available:\x20','COMMON','name','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','stdin','No\x20operation\x20types\x20found\x20for\x20dataset\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','trim','\x22\x20not\x20found\x20for\x20dataset\x20','stderr','str','join','12rbtvap','146979sMFGiM','Trigger\x20node\x20(HOOK\x20only)','Operation\x20type\x20\x22','entries','90tCmwuy','utf8','Script\x20description','code','before','1309132yqZdYY','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','Invalid\x20function\x20name\x20\x22','96WLmJZN','\x0a\x20*\x20[脚本名称]\x20','string','apiDir','datasetcode','map','find','datasetCode','write','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','No\x20api.ts\x20found.\x20Run\x20`','bff','ENDPOINT','HOOK','functionNode','Created\x20','description','334835UvYubJ','close','5564YgWzAN','isInteger'];a68_0x41c7=function(){return _0x142c40;};return a68_0x41c7();}function buildFilePath(_0x416358,_0x39fef2,_0x3e9c56,_0x5e704c){const _0x41a79f=a68_0x41d1fb;if(_0x39fef2==='HOOK'){if(!_0x5e704c)throw CliErrors[_0x41a79f(0x1c8)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x5f0cec=_0x5e704c[_0x41a79f(0x1aa)]??_0x5e704c[_0x41a79f(0x1ed)];return join(_0x416358[_0x41a79f(0x1ab)],_0x41a79f(0x1f4),_0x5f0cec,_0x5e704c[_0x41a79f(0x1bc)],_0x5e704c[_0x41a79f(0x1f5)],_0x3e9c56+'.js');}return join(_0x416358['scriptsRootDir'],_0x39fef2,_0x3e9c56+_0x41a79f(0x1ff));}export function generateTemplate(_0x49e158,_0x4b050c,_0x63b43b,_0x1b4d7a,_0x28b2c5){const _0x395cbd=a68_0x41d1fb,_0x18e645=_0x1b4d7a?.[_0x395cbd(0x1d4)]()||_0x395cbd(0x1af);if(_0x49e158===_0x395cbd(0x1cc))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x18e645+_0x395cbd(0x1e7)+_0x4b050c+_0x395cbd(0x1c9)+_0x4b050c+_0x395cbd(0x1ef)+_0x4b050c+_0x395cbd(0x1bd);if(_0x49e158==='ENDPOINT')return'/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x18e645+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/'+_0x63b43b+'/'+_0x4b050c+_0x395cbd(0x1d3)+_0x4b050c+_0x395cbd(0x1bd);if(!_0x28b2c5)throw CliErrors[_0x395cbd(0x1c8)](_0x395cbd(0x1cf));return'/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x18e645+_0x395cbd(0x1b1)+_0x63b43b+'/'+_0x28b2c5[_0x395cbd(0x1ed)]+'/'+_0x28b2c5[_0x395cbd(0x1bc)]+_0x395cbd(0x1c1)+_0x28b2c5[_0x395cbd(0x1f5)]+_0x395cbd(0x1f0)+_0x4b050c+_0x395cbd(0x1bd);}
1
+ const a68_0x3a967b=a68_0x5e4c;(function(_0x36b0b9,_0x200c86){const _0x1d6883=a68_0x5e4c,_0x3639a7=_0x36b0b9();while(!![]){try{const _0x14e44c=parseInt(_0x1d6883(0x1f6))/0x1*(-parseInt(_0x1d6883(0x235))/0x2)+parseInt(_0x1d6883(0x214))/0x3+parseInt(_0x1d6883(0x239))/0x4+parseInt(_0x1d6883(0x23b))/0x5+-parseInt(_0x1d6883(0x1f0))/0x6+parseInt(_0x1d6883(0x23a))/0x7+-parseInt(_0x1d6883(0x1ed))/0x8*(parseInt(_0x1d6883(0x20b))/0x9);if(_0x14e44c===_0x200c86)break;else _0x3639a7['push'](_0x3639a7['shift']());}catch(_0x4e0a35){_0x3639a7['push'](_0x3639a7['shift']());}}}(a68_0x5a03,0xf3ae2));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffNew={'service':'bff','command':a68_0x3a967b(0x225),'description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':a68_0x3a967b(0x1fb),'flags':[{'name':a68_0x3a967b(0x208),'type':a68_0x3a967b(0x1f1),'required':!![],'enum':['COMMON',a68_0x3a967b(0x217),'HOOK'],'description':a68_0x3a967b(0x1f3)},{'name':a68_0x3a967b(0x205),'type':a68_0x3a967b(0x1f1),'required':!![],'description':a68_0x3a967b(0x21e)},{'name':a68_0x3a967b(0x21a),'type':a68_0x3a967b(0x1f1),'description':a68_0x3a967b(0x234)},{'name':'alias','type':'string','description':'Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)'},{'name':'datasetcode','type':a68_0x3a967b(0x1f1),'description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':'operation-type','type':a68_0x3a967b(0x1f1),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':a68_0x3a967b(0x206),'type':'string','description':a68_0x3a967b(0x221),'enum':[a68_0x3a967b(0x200),a68_0x3a967b(0x1fd)]}],async 'validate'(_0x2b4c9f){const _0x198d23=a68_0x3a967b,_0x18a5fd=_0x2b4c9f['str'](_0x198d23(0x205));if(!isValidBffFunctionName(_0x18a5fd))throw CliErrors[_0x198d23(0x219)](_0x198d23(0x223)+_0x18a5fd+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0x17543d){const _0x123f2f=a68_0x3a967b,_0x2f7181=loadBffProjectConfig(_0x17543d[_0x123f2f(0x211)]),_0x1c6bee=_0x17543d[_0x123f2f(0x1f2)]('type'),_0x5f1fa7=_0x17543d[_0x123f2f(0x1f2)]('name'),_0x24a820=_0x17543d['str'](_0x123f2f(0x21a))||undefined,_0x488f3d=_0x1c6bee===_0x123f2f(0x22a)?await resolveHookOptions(_0x2f7181,_0x17543d):undefined,_0x9f6a73=buildFilePath(_0x2f7181,_0x1c6bee,_0x5f1fa7,_0x488f3d);if(await fileExists(_0x9f6a73))throw CliErrors[_0x123f2f(0x219)](_0x123f2f(0x23e)+_0x9f6a73);await mkdir(dirname(_0x9f6a73),{'recursive':!![]});const _0x151cbc=generateTemplate(_0x1c6bee,_0x5f1fa7,_0x17543d[_0x123f2f(0x211)],_0x24a820,_0x488f3d);await writeFile(_0x9f6a73,_0x151cbc,_0x123f2f(0x1f8));const _0x4ff726={'type':_0x1c6bee,'name':_0x5f1fa7,'path':_0x9f6a73};if(_0x24a820)_0x4ff726[_0x123f2f(0x21a)]=_0x24a820;if(_0x488f3d){if(_0x488f3d[_0x123f2f(0x231)])_0x4ff726['alias']=_0x488f3d[_0x123f2f(0x231)];_0x4ff726[_0x123f2f(0x1ef)]=_0x488f3d[_0x123f2f(0x1ef)],_0x4ff726[_0x123f2f(0x233)]=_0x488f3d[_0x123f2f(0x233)],_0x4ff726[_0x123f2f(0x1f4)]=_0x488f3d[_0x123f2f(0x1f4)];}return{'ok':!![],'data':_0x4ff726,'message':'Created\x20'+_0x1c6bee+_0x123f2f(0x226)+_0x5f1fa7};}};async function resolveHookOptions(_0x3fb699,_0x45a649){const _0x41c916=a68_0x3a967b,_0x3f9399=loadAliasMap(_0x45a649['apiDir'],undefined,resolveApiFilePath(_0x45a649[_0x41c916(0x1ff)],_0x45a649[_0x41c916(0x211)])),_0x1bef49=_0x3f9399[_0x41c916(0x227)]>0x0;let _0x41ad81,_0x1a8f7b,_0x3cc780;const _0x4a6bfc=_0x45a649[_0x41c916(0x1f2)]('alias'),_0x4bc2ff=_0x45a649[_0x41c916(0x1f2)](_0x41c916(0x236));if(_0x4a6bfc){const _0x2e6939=resolveAlias(_0x45a649[_0x41c916(0x1ff)],_0x4a6bfc,undefined,resolveApiFilePath(_0x45a649[_0x41c916(0x1ff)],_0x45a649[_0x41c916(0x211)]));if(!_0x2e6939){const _0x3f8b01=_0x1bef49?_0x41c916(0x22b)+_0x3f9399[_0x41c916(0x215)](_0x48f31b=>_0x48f31b[_0x41c916(0x231)])[_0x41c916(0x210)](',\x20'):_0x41c916(0x230)+CLI_BIN_NAME+_0x41c916(0x202);throw CliErrors[_0x41c916(0x219)](_0x41c916(0x1f5)+_0x4a6bfc+_0x41c916(0x1f9)+_0x3f8b01);}_0x41ad81=_0x4a6bfc,_0x1a8f7b=_0x2e6939;}else{if(_0x4bc2ff){_0x1a8f7b=_0x4bc2ff;const _0x184416=_0x3f9399[_0x41c916(0x222)](_0x986444=>_0x986444['datasetCode']===_0x4bc2ff);_0x41ad81=_0x184416?.[_0x41c916(0x231)];}else{if(_0x45a649['nonInteractive'])throw CliErrors[_0x41c916(0x219)](_0x41c916(0x23c));else{if(_0x1bef49){const _0x446d5d=_0x3f9399[_0x41c916(0x215)](_0x35f17b=>_0x35f17b[_0x41c916(0x231)]+'\x20('+_0x35f17b['tableName']+')'),_0x4024fa=await promptSelect('Select\x20dataset:',_0x446d5d),_0x54a925=_0x3f9399[_0x4024fa];if(!_0x54a925)throw CliErrors[_0x41c916(0x219)](_0x41c916(0x22c));_0x41ad81=_0x54a925[_0x41c916(0x231)],_0x1a8f7b=_0x54a925['datasetCode'];}else{const _0x472848=await listDatasets(_0x45a649[_0x41c916(0x211)]);if(_0x472848[_0x41c916(0x227)]===0x0)throw CliErrors[_0x41c916(0x219)]('No\x20datasets\x20found\x20for\x20this\x20app.');const _0x193995=_0x472848[_0x41c916(0x215)](_0x50c5c7=>_0x50c5c7['name']+'\x20('+_0x50c5c7['code']+')'),_0x4d6a64=await promptSelect('Select\x20dataset:',_0x193995),_0x322ea0=_0x472848[_0x4d6a64];if(!_0x322ea0)throw CliErrors[_0x41c916(0x219)](_0x41c916(0x22c));_0x1a8f7b=_0x322ea0['code'],_0x41ad81=undefined;}}}}const _0x10badf=await listDatasets(_0x45a649['appCode']),_0x1ab84c=_0x10badf['find'](_0x329122=>_0x329122['code']===_0x1a8f7b);if(!_0x1ab84c)throw CliErrors['validation'](_0x41c916(0x22e)+_0x1a8f7b+_0x41c916(0x20e)+(_0x41ad81?_0x41c916(0x1f7)+CLI_BIN_NAME+_0x41c916(0x20f):''));_0x3cc780=_0x1ab84c['id'];const _0x52e17b=_0x41ad81??_0x1a8f7b,_0x27dcc7=await listBffDatasetOperations(_0x45a649[_0x41c916(0x211)],_0x3cc780),_0x55c6f6=_0x27dcc7?Object[_0x41c916(0x207)](_0x27dcc7):[];if(_0x55c6f6[_0x41c916(0x227)]===0x0)throw CliErrors[_0x41c916(0x219)](_0x41c916(0x216)+_0x52e17b+'.');let _0x62c2a9;const _0x33dcf0=_0x45a649[_0x41c916(0x1f2)](_0x41c916(0x238));if(_0x33dcf0){if(!_0x55c6f6[_0x41c916(0x21d)](_0x33dcf0))throw CliErrors[_0x41c916(0x219)]('Operation\x20type\x20\x22'+_0x33dcf0+_0x41c916(0x21c)+_0x52e17b+'.\x20'+(_0x41c916(0x22d)+_0x55c6f6[_0x41c916(0x210)](',\x20')));_0x62c2a9=_0x33dcf0;}else{if(_0x45a649[_0x41c916(0x22f)])throw CliErrors['validation'](_0x41c916(0x212));const _0x383953=await promptSelect('Select\x20operation\x20type:',_0x55c6f6);_0x62c2a9=_0x55c6f6[_0x383953]??_0x55c6f6[0x0];}let _0x44828d=normalizeHookFunctionNode(_0x45a649[_0x41c916(0x1f2)](_0x41c916(0x206)));if(!_0x44828d){if(_0x45a649[_0x41c916(0x1f2)](_0x41c916(0x206)))throw CliErrors[_0x41c916(0x219)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x45a649[_0x41c916(0x22f)])throw CliErrors[_0x41c916(0x219)](_0x41c916(0x213));const _0x3a34c1=await promptSelect(_0x41c916(0x232),[_0x41c916(0x200),_0x41c916(0x1fd)]);_0x44828d=[_0x41c916(0x200),_0x41c916(0x1fd)][_0x3a34c1]??_0x41c916(0x200);}return{'alias':_0x41ad81,'datasetCode':_0x1a8f7b,'datasetId':_0x3cc780,'operationType':_0x62c2a9,'functionNode':_0x44828d};}function a68_0x5a03(){const _0x39e0e7=['close','.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','\x22.\x20','\x20api\x20pull`\x20to\x20refresh.','join','appCode','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','435756mIAigE','map','No\x20operation\x20types\x20found\x20for\x20dataset\x20','ENDPOINT','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','validation','description','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','\x22\x20not\x20found\x20for\x20dataset\x20','includes','Function\x20name\x20(valid\x20JS\x20identifier)','TODO:\x20add\x20script\x20description','question','Trigger\x20node\x20(HOOK\x20only)','find','Invalid\x20function\x20name\x20\x22','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','new','\x20function:\x20','length','\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','\x0a\x20*\x20[脚本名称]\x20','HOOK','Available\x20aliases:\x20','Invalid\x20dataset\x20selection.','Available:\x20','Dataset\x20not\x20found\x20for\x20code\x20\x22','nonInteractive','No\x20api.ts\x20found.\x20Run\x20`','alias','Select\x20trigger\x20node:','operationType','Script\x20description','18shutQn','datasetcode','.js','operation-type','4015064xHvHCQ','8901501dxXLxq','7184620wwBSDF','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','stdin','File\x20already\x20exists:\x20','4433568PhGlzp','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','datasetCode','313524fyIgFS','string','str','Script\x20type','functionNode','Alias\x20\x22','127181xWCMoI','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','utf8','\x22\x20not\x20found.\x20','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','write','stderr','after','scriptsRootDir','apiDir','before','\x0a\x20*\x20[触发节点]\x20','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','trim','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','name','function-node','keys','type','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','27OfqbmR'];a68_0x5a03=function(){return _0x39e0e7;};return a68_0x5a03();}async function promptSelect(_0x5403b0,_0x2cae8a){const _0x147d24=a68_0x3a967b;if(_0x2cae8a[_0x147d24(0x227)]===0x1)return 0x0;for(const [_0x5436f6,_0x3b0640]of _0x2cae8a['entries']()){process[_0x147d24(0x1fc)]['write']('\x20\x20'+(_0x5436f6+0x1)+'.\x20'+_0x3b0640+'\x0a');}const _0x1bf42d=createInterface({'input':process[_0x147d24(0x23d)],'output':process['stderr']});while(!![]){const _0x3d6948=await new Promise(_0x432e74=>{const _0x1cbc69=_0x147d24;_0x1bf42d[_0x1cbc69(0x220)](_0x5403b0+'\x20',_0x432e74);}),_0x316f95=Number['parseInt'](_0x3d6948[_0x147d24(0x203)](),0xa);if(Number['isInteger'](_0x316f95)&&_0x316f95>=0x1&&_0x316f95<=_0x2cae8a[_0x147d24(0x227)])return _0x1bf42d[_0x147d24(0x20c)](),_0x316f95-0x1;process[_0x147d24(0x1fc)][_0x147d24(0x1fb)](_0x147d24(0x21b)+_0x2cae8a[_0x147d24(0x227)]+'.\x0a');}}function a68_0x5e4c(_0x2937b3,_0x45335e){_0x2937b3=_0x2937b3-0x1ed;const _0x5a03e3=a68_0x5a03();let _0x5e4c12=_0x5a03e3[_0x2937b3];return _0x5e4c12;}function buildFilePath(_0x3e071b,_0x3e8197,_0x18376e,_0x43dc02){const _0x628e8a=a68_0x3a967b;if(_0x3e8197==='HOOK'){if(!_0x43dc02)throw CliErrors[_0x628e8a(0x219)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x453c15=_0x43dc02[_0x628e8a(0x231)]??_0x43dc02[_0x628e8a(0x1ef)];return join(_0x3e071b[_0x628e8a(0x1fe)],_0x628e8a(0x22a),_0x453c15,_0x43dc02[_0x628e8a(0x233)],_0x43dc02[_0x628e8a(0x1f4)],_0x18376e+_0x628e8a(0x237));}return join(_0x3e071b[_0x628e8a(0x1fe)],_0x3e8197,_0x18376e+'.js');}export function generateTemplate(_0x55fd7d,_0x2e93e9,_0x2cd7a1,_0x58b1ad,_0x1668eb){const _0x950174=a68_0x3a967b,_0x25d21c=_0x58b1ad?.[_0x950174(0x203)]()||_0x950174(0x21f);if(_0x55fd7d==='COMMON')return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x25d21c+_0x950174(0x229)+_0x2e93e9+_0x950174(0x204)+_0x2e93e9+_0x950174(0x20d)+_0x2e93e9+_0x950174(0x1ee);if(_0x55fd7d===_0x950174(0x217))return _0x950174(0x1fa)+_0x25d21c+_0x950174(0x209)+_0x2cd7a1+'/'+_0x2e93e9+_0x950174(0x228)+_0x2e93e9+_0x950174(0x1ee);if(!_0x1668eb)throw CliErrors[_0x950174(0x219)](_0x950174(0x20a));return _0x950174(0x224)+_0x25d21c+_0x950174(0x218)+_0x2cd7a1+'/'+_0x1668eb[_0x950174(0x1ef)]+'/'+_0x1668eb[_0x950174(0x233)]+_0x950174(0x201)+_0x1668eb[_0x950174(0x1f4)]+'\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'+_0x2e93e9+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
@@ -1 +1 @@
1
- function a70_0x3c03(_0x2d1890,_0x2de44b){_0x2d1890=_0x2d1890-0x66;const _0x1963ad=a70_0x1963();let _0x3c0387=_0x1963ad[_0x2d1890];return _0x3c0387;}const a70_0x21f4f8=a70_0x3c03;(function(_0x2b4fb2,_0x4d3bfe){const _0x5619e5=a70_0x3c03,_0x594040=_0x2b4fb2();while(!![]){try{const _0x11cc14=parseInt(_0x5619e5(0x9b))/0x1*(-parseInt(_0x5619e5(0x93))/0x2)+parseInt(_0x5619e5(0xa0))/0x3+-parseInt(_0x5619e5(0x77))/0x4*(parseInt(_0x5619e5(0x7a))/0x5)+-parseInt(_0x5619e5(0x87))/0x6*(parseInt(_0x5619e5(0xa8))/0x7)+-parseInt(_0x5619e5(0x85))/0x8*(-parseInt(_0x5619e5(0x79))/0x9)+parseInt(_0x5619e5(0xa5))/0xa*(-parseInt(_0x5619e5(0xae))/0xb)+parseInt(_0x5619e5(0xa7))/0xc;if(_0x11cc14===_0x4d3bfe)break;else _0x594040['push'](_0x594040['shift']());}catch(_0x26c353){_0x594040['push'](_0x594040['shift']());}}}(a70_0x1963,0x4eee4));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';function a70_0x1963(){const _0x19cfae=['8jdsJbI','&type=','local\x20unsynced\x20changes','filePath','toISOString','version','validation','alias','153077ucSCiP','nonInteractive','force','HOOK','message','724377PrMhLI','operationType','\x22\x20not\x20found\x20after\x20ensureLockScope.','str','stderr','10sNnHBJ','length','19682496uulcDZ','11928stBwiW','hookLocation','conflict','toLowerCase','scriptType','close','6892589LkttQL','Remote\x20script\x20missing\x20id.','\x20skipped,\x20','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','Lock\x20scope\x20for\x20app\x20\x22','stringify','\x20failed','push','functionNode','write','datasetCode','ENDPOINT','includes','all','unresolvable\x20target\x20path','\x20pulled,\x20','GET','functions','functionName','would_pull','1084788MCSLbD','yes','207423rNFCau','5DbQEpl','bff','Pull\x20only\x20this\x20script\x20type','Would\x20inspect\x20','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','pull','type','No\x20remote\x20BFF\x20scripts\x20found.','string','map','lockFilePath','56BurLUJ','apiDir','738dXWATu','Pull\x20complete:\x20','scriptContent','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','scriptsRoot','lockKey','\x20remote\x20BFF\x20script(s)\x20for\x20pull','cancelled','appCode','Force\x20overwrite\x20local\x20unsynced\x20changes','bool','boolean'];a70_0x1963=function(){return _0x19cfae;};return a70_0x1963();}import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a70_0x21f4f8(0x7b),'command':'pull','description':a70_0x21f4f8(0x8a),'risk':a70_0x21f4f8(0x6c),'flags':[{'name':a70_0x21f4f8(0x80),'type':a70_0x21f4f8(0x82),'description':a70_0x21f4f8(0x7c),'enum':['COMMON',a70_0x21f4f8(0x6e),'HOOK']},{'name':'force','type':a70_0x21f4f8(0x92),'description':a70_0x21f4f8(0x90)}],async 'dryRun'(_0x2fd42f){const _0x151720=a70_0x21f4f8,_0x3b7cef=loadBffProjectConfig(_0x2fd42f[_0x151720(0x8f)]),_0x3edfda=await readBffLockFile(_0x3b7cef['lockFilePath']),{appLock:_0x1b7378}=ensureLockScope(_0x3edfda??createEmptyBffLock(),_0x2fd42f[_0x151720(0x8f)],_0x3b7cef[_0x151720(0x8b)],_0x151720(0x7f)),_0x4cf5de=normalizeBffType(_0x2fd42f[_0x151720(0xa3)]('type'))??undefined,_0x6ef943=buildDatasetCodeToAliasMap(_0x2fd42f[_0x151720(0x86)],_0x2fd42f[_0x151720(0x8f)]),[_0x93e8b1,_0x1c830f]=await Promise['all']([listBffScripts(_0x2fd42f[_0x151720(0x8f)],_0x4cf5de),getBffScriptStatistics(_0x2fd42f[_0x151720(0x8f)])]),_0x376bd6=createHookLocationMap(_0x1c830f),_0x51e743=[];for(const _0x26b36c of _0x93e8b1){const _0x18b160=resolveRemoteScriptTarget(_0x3b7cef,_0x26b36c,_0x376bd6,_0x1b7378[_0x151720(0x74)],_0x6ef943);if(!_0x18b160){_0x51e743['push']({'scriptType':_0x26b36c[_0x151720(0xac)],'functionName':_0x26b36c[_0x151720(0x75)]??'','status':'skipped','reason':_0x151720(0x71)});continue;}const _0x49c96f=_0x1b7378[_0x151720(0x74)][_0x18b160[_0x151720(0x8c)]],_0x53e90f=_0x26b36c[_0x151720(0x89)]!=null?computeContentHash(_0x26b36c[_0x151720(0x89)]):undefined,_0x52429c=await hasUnsyncedLocalChanges(_0x18b160['filePath'],_0x49c96f,_0x53e90f);_0x51e743[_0x151720(0x6a)]({'lockKey':_0x18b160[_0x151720(0x8c)],'filePath':_0x18b160[_0x151720(0x96)],'remoteId':_0x26b36c['id']??null,'status':_0x52429c?_0x151720(0xaa):_0x151720(0x76)});}return{'method':_0x151720(0x73),'url':'/api/management/library/scripts/list?appCode='+_0x2fd42f[_0x151720(0x8f)]+(_0x4cf5de?_0x151720(0x94)+_0x4cf5de:''),'body':{'appCode':_0x2fd42f['appCode'],'filterType':_0x4cf5de??null,'files':_0x51e743},'description':_0x151720(0x7d)+_0x51e743[_0x151720(0xa6)]+_0x151720(0x8d)};},async 'execute'(_0x59c532){const _0x1f31fd=a70_0x21f4f8,_0xc286f9=loadBffProjectConfig(_0x59c532[_0x1f31fd(0x8f)]),_0x27db98=await readBffLockFile(_0xc286f9[_0x1f31fd(0x84)]),{lockData:_0x3825ad,appLock:_0x5aefb6}=ensureLockScope(_0x27db98??createEmptyBffLock(),_0x59c532[_0x1f31fd(0x8f)],_0xc286f9[_0x1f31fd(0x8b)],'pull'),_0xe30619=normalizeBffType(_0x59c532[_0x1f31fd(0xa3)]('type'))??undefined;if(_0x59c532[_0x1f31fd(0xa3)]('type')&&!_0xe30619)throw CliErrors[_0x1f31fd(0x99)](_0x1f31fd(0x7e));const [_0x702513,_0x26a7ab]=await Promise[_0x1f31fd(0x70)]([listBffScripts(_0x59c532['appCode'],_0xe30619),getBffScriptStatistics(_0x59c532[_0x1f31fd(0x8f)])]);if(_0x702513[_0x1f31fd(0xa6)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x1f31fd(0x81)};const _0x1a74bf=_0x59c532[_0x1f31fd(0x91)](_0x1f31fd(0x9d));if(_0x1a74bf&&!_0x59c532[_0x1f31fd(0x9c)]){const _0x3e9658=await confirmForce();if(!_0x3e9658)throw CliErrors[_0x1f31fd(0x8e)]('Force\x20pull\x20cancelled.');}if(_0x1a74bf&&_0x59c532['nonInteractive']){}const _0x39432f=buildDatasetCodeToAliasMap(_0x59c532[_0x1f31fd(0x86)],_0x59c532['appCode']),_0x36f882=createHookLocationMap(_0x26a7ab),_0x37f062=JSON['parse'](JSON[_0x1f31fd(0x68)](_0x3825ad)),_0x270e48=_0x59c532[_0x1f31fd(0x8f)],_0x42236a=_0x37f062['apps'][_0x270e48];if(!_0x42236a)throw new Error(_0x1f31fd(0x67)+_0x270e48+_0x1f31fd(0xa2));const _0x4b5cbe=[],_0x11e021=[],_0x520116=[];for(const _0x4f02ae of _0x702513){const _0x420088=resolveRemoteScriptTarget(_0xc286f9,_0x4f02ae,_0x36f882,_0x5aefb6[_0x1f31fd(0x74)],_0x39432f);if(!_0x420088){_0x11e021[_0x1f31fd(0x6a)]({'lockKey':_0x4f02ae['scriptType']+'/'+_0x4f02ae['functionName'],'reason':_0x1f31fd(0x71)});continue;}const _0x485029=_0x5aefb6[_0x1f31fd(0x74)][_0x420088[_0x1f31fd(0x8c)]];try{if(!_0x4f02ae['id'])throw new Error(_0x1f31fd(0xaf));if(_0x4f02ae[_0x1f31fd(0x89)]==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x5e8842=_0x4f02ae[_0x1f31fd(0x89)],_0x4ed7ff=computeContentHash(_0x5e8842);if(!_0x1a74bf){const _0x1efdbf=await hasUnsyncedLocalChanges(_0x420088[_0x1f31fd(0x96)],_0x485029,_0x4ed7ff);if(_0x1efdbf){_0x11e021[_0x1f31fd(0x6a)]({'lockKey':_0x420088[_0x1f31fd(0x8c)],'reason':_0x1f31fd(0x95)});continue;}}await ensureParentDirectory(_0x420088[_0x1f31fd(0x96)]),await writeFile(_0x420088['filePath'],_0x5e8842,'utf8');const _0x4198a4={'hash':_0x4ed7ff,'remoteId':_0x4f02ae['id'],'version':_0x4f02ae[_0x1f31fd(0x98)]};_0x420088[_0x1f31fd(0x80)]===_0x1f31fd(0x9e)&&_0x420088[_0x1f31fd(0xa9)]&&(_0x4198a4['alias']=_0x420088[_0x1f31fd(0xa9)][_0x1f31fd(0x9a)],_0x4198a4[_0x1f31fd(0x6d)]=_0x420088[_0x1f31fd(0xa9)][_0x1f31fd(0x6d)],_0x4198a4[_0x1f31fd(0xa1)]=_0x420088[_0x1f31fd(0xa9)][_0x1f31fd(0xa1)],_0x4198a4[_0x1f31fd(0x6b)]=_0x420088[_0x1f31fd(0xa9)][_0x1f31fd(0x6b)]),_0x42236a[_0x1f31fd(0x74)][_0x420088[_0x1f31fd(0x8c)]]=_0x4198a4,_0x4b5cbe[_0x1f31fd(0x6a)]({'lockKey':_0x420088[_0x1f31fd(0x8c)],'remoteId':_0x4f02ae['id']});}catch(_0x46d172){_0x520116[_0x1f31fd(0x6a)]({'lockKey':_0x420088[_0x1f31fd(0x8c)],'error':_0x46d172 instanceof Error?_0x46d172[_0x1f31fd(0x9f)]:String(_0x46d172)});}}return _0x42236a['lastSync']=new Date()[_0x1f31fd(0x97)](),await writeBffLockFile(_0xc286f9[_0x1f31fd(0x84)],_0x37f062),{'ok':_0x520116[_0x1f31fd(0xa6)]===0x0,'data':{'pulled':_0x4b5cbe,'skipped':_0x11e021,'failed':_0x520116},'message':_0x1f31fd(0x88)+_0x4b5cbe[_0x1f31fd(0xa6)]+_0x1f31fd(0x72)+_0x11e021[_0x1f31fd(0xa6)]+_0x1f31fd(0xb0)+_0x520116[_0x1f31fd(0xa6)]+_0x1f31fd(0x69)};}};async function hasUnsyncedLocalChanges(_0x4c168d,_0x55f498,_0x98a343){if(!await fileExists(_0x4c168d))return![];const _0xe58190=await computeFileHash(_0x4c168d);if(!_0x55f498)return _0x98a343?_0xe58190!==_0x98a343:!![];return _0xe58190!==_0x55f498['hash'];}function buildDatasetCodeToAliasMap(_0x17169a,_0x3b4dfa){const _0x208854=a70_0x21f4f8,_0x12511c=loadAliasMap(_0x17169a,undefined,resolveApiFilePath(_0x17169a,_0x3b4dfa));return new Map(_0x12511c[_0x208854(0x83)](_0x3934a1=>[_0x3934a1['datasetCode'],_0x3934a1[_0x208854(0x9a)]]));}async function confirmForce(){const _0x2ed4fc=a70_0x21f4f8,_0x454f30=createInterface({'input':process['stdin'],'output':process[_0x2ed4fc(0xa4)]}),_0x190bbd=await new Promise(_0x80cef4=>{const _0x3e1886=_0x2ed4fc;_0x454f30['question'](_0x3e1886(0x66),_0x80cef4);});return _0x454f30[_0x2ed4fc(0xad)](),['y',_0x2ed4fc(0x78)][_0x2ed4fc(0x6f)](_0x190bbd['trim']()[_0x2ed4fc(0xab)]());}
1
+ function a70_0x476d(_0x29292f,_0x74fbcc){_0x29292f=_0x29292f-0xce;const _0x35117a=a70_0x3511();let _0x476d2d=_0x35117a[_0x29292f];return _0x476d2d;}const a70_0x231e3f=a70_0x476d;(function(_0x540340,_0x150256){const _0xb2105=a70_0x476d,_0x1ac3d6=_0x540340();while(!![]){try{const _0x12e461=parseInt(_0xb2105(0xe7))/0x1*(parseInt(_0xb2105(0xe0))/0x2)+-parseInt(_0xb2105(0xcf))/0x3*(-parseInt(_0xb2105(0x10f))/0x4)+-parseInt(_0xb2105(0xee))/0x5+-parseInt(_0xb2105(0xdc))/0x6*(parseInt(_0xb2105(0xf4))/0x7)+parseInt(_0xb2105(0xea))/0x8+-parseInt(_0xb2105(0xf2))/0x9*(parseInt(_0xb2105(0x112))/0xa)+parseInt(_0xb2105(0x109))/0xb;if(_0x12e461===_0x150256)break;else _0x1ac3d6['push'](_0x1ac3d6['shift']());}catch(_0xb48e40){_0x1ac3d6['push'](_0x1ac3d6['shift']());}}}(a70_0x3511,0x3d877));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';function a70_0x3511(){const _0x25cb1d=['2886XIsZNi','bool','stringify','question','2HNSKPs','version','parse','ENDPOINT','functions','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','type','53487tJQicq','force','str','1986928tiTEJO','string','Force\x20pull\x20cancelled.','apiDir','2439485nsPHwq','HOOK','Remote\x20script\x20missing\x20content.','Would\x20inspect\x20','9DjZNRY','pull','2317uXsuMd','scriptsRoot','toLowerCase','functionNode','stdin','No\x20remote\x20BFF\x20scripts\x20found.','stderr','functionName','conflict','apps','length','Remote\x20script\x20missing\x20id.','scriptType','hash','appCode','unresolvable\x20target\x20path','operationType','alias','lockFilePath','scriptContent','nonInteractive','8712891aQmAMu','filePath','lastSync','\x20failed','hookLocation','write','281620sYnJmt','COMMON','all','2652080vOfRiX','Pull\x20only\x20this\x20script\x20type','message','includes','push','datasetCode','3GttuaF','\x20skipped,\x20','skipped','Pull\x20complete:\x20','local\x20unsynced\x20changes','\x22\x20not\x20found\x20after\x20ensureLockScope.','Force\x20overwrite\x20local\x20unsynced\x20changes','/api/management/library/scripts/list?appCode=','lockKey','toISOString','yes','map','GET'];a70_0x3511=function(){return _0x25cb1d;};return a70_0x3511();}import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':'bff','command':a70_0x231e3f(0xf3),'description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a70_0x231e3f(0x10e),'flags':[{'name':a70_0x231e3f(0xe6),'type':a70_0x231e3f(0xeb),'description':a70_0x231e3f(0x113),'enum':[a70_0x231e3f(0x110),a70_0x231e3f(0xe3),'HOOK']},{'name':a70_0x231e3f(0xe8),'type':'boolean','description':a70_0x231e3f(0xd5)}],async 'dryRun'(_0x4fd6c9){const _0x33aa0b=a70_0x231e3f,_0x1db6de=loadBffProjectConfig(_0x4fd6c9['appCode']),_0xaeaa9f=await readBffLockFile(_0x1db6de[_0x33aa0b(0x106)]),{appLock:_0x2dd9fe}=ensureLockScope(_0xaeaa9f??createEmptyBffLock(),_0x4fd6c9[_0x33aa0b(0x102)],_0x1db6de['scriptsRoot'],_0x33aa0b(0xf3)),_0x1e1e7e=normalizeBffType(_0x4fd6c9[_0x33aa0b(0xe9)](_0x33aa0b(0xe6)))??undefined,_0x46185a=buildDatasetCodeToAliasMap(_0x4fd6c9[_0x33aa0b(0xed)],_0x4fd6c9[_0x33aa0b(0x102)]),[_0x20817b,_0xd7d78b]=await Promise[_0x33aa0b(0x111)]([listBffScripts(_0x4fd6c9['appCode'],_0x1e1e7e),getBffScriptStatistics(_0x4fd6c9[_0x33aa0b(0x102)])]),_0x77b0e5=createHookLocationMap(_0xd7d78b),_0x5f1caf=[];for(const _0x3b4afc of _0x20817b){const _0x5dec73=resolveRemoteScriptTarget(_0x1db6de,_0x3b4afc,_0x77b0e5,_0x2dd9fe['functions'],_0x46185a);if(!_0x5dec73){_0x5f1caf[_0x33aa0b(0x116)]({'scriptType':_0x3b4afc[_0x33aa0b(0x100)],'functionName':_0x3b4afc[_0x33aa0b(0xfb)]??'','status':_0x33aa0b(0xd1),'reason':_0x33aa0b(0x103)});continue;}const _0x362481=_0x2dd9fe[_0x33aa0b(0xe4)][_0x5dec73[_0x33aa0b(0xd7)]],_0x472f3c=_0x3b4afc[_0x33aa0b(0x107)]!=null?computeContentHash(_0x3b4afc['scriptContent']):undefined,_0x149158=await hasUnsyncedLocalChanges(_0x5dec73[_0x33aa0b(0x10a)],_0x362481,_0x472f3c);_0x5f1caf[_0x33aa0b(0x116)]({'lockKey':_0x5dec73['lockKey'],'filePath':_0x5dec73['filePath'],'remoteId':_0x3b4afc['id']??null,'status':_0x149158?_0x33aa0b(0xfc):'would_pull'});}return{'method':_0x33aa0b(0xdb),'url':_0x33aa0b(0xd6)+_0x4fd6c9[_0x33aa0b(0x102)]+(_0x1e1e7e?'&type='+_0x1e1e7e:''),'body':{'appCode':_0x4fd6c9[_0x33aa0b(0x102)],'filterType':_0x1e1e7e??null,'files':_0x5f1caf},'description':_0x33aa0b(0xf1)+_0x5f1caf[_0x33aa0b(0xfe)]+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x3ef63e){const _0x40bccf=a70_0x231e3f,_0x5cdd2f=loadBffProjectConfig(_0x3ef63e[_0x40bccf(0x102)]),_0x5362be=await readBffLockFile(_0x5cdd2f[_0x40bccf(0x106)]),{lockData:_0x15c8d2,appLock:_0x5eb442}=ensureLockScope(_0x5362be??createEmptyBffLock(),_0x3ef63e[_0x40bccf(0x102)],_0x5cdd2f[_0x40bccf(0xf5)],_0x40bccf(0xf3)),_0x1f49df=normalizeBffType(_0x3ef63e['str'](_0x40bccf(0xe6)))??undefined;if(_0x3ef63e['str']('type')&&!_0x1f49df)throw CliErrors['validation']('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0x45e592,_0x52aad9]=await Promise[_0x40bccf(0x111)]([listBffScripts(_0x3ef63e[_0x40bccf(0x102)],_0x1f49df),getBffScriptStatistics(_0x3ef63e['appCode'])]);if(_0x45e592[_0x40bccf(0xfe)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x40bccf(0xf9)};const _0x29beb0=_0x3ef63e[_0x40bccf(0xdd)](_0x40bccf(0xe8));if(_0x29beb0&&!_0x3ef63e[_0x40bccf(0x108)]){const _0x4c7fe6=await confirmForce();if(!_0x4c7fe6)throw CliErrors['cancelled'](_0x40bccf(0xec));}if(_0x29beb0&&_0x3ef63e[_0x40bccf(0x108)]){}const _0x54e866=buildDatasetCodeToAliasMap(_0x3ef63e['apiDir'],_0x3ef63e[_0x40bccf(0x102)]),_0x1bb5da=createHookLocationMap(_0x52aad9),_0x425972=JSON[_0x40bccf(0xe2)](JSON[_0x40bccf(0xde)](_0x15c8d2)),_0x23efc4=_0x3ef63e['appCode'],_0x1eba25=_0x425972[_0x40bccf(0xfd)][_0x23efc4];if(!_0x1eba25)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x23efc4+_0x40bccf(0xd4));const _0x3d2eab=[],_0xf48753=[],_0x506ed2=[];for(const _0x515369 of _0x45e592){const _0x593abf=resolveRemoteScriptTarget(_0x5cdd2f,_0x515369,_0x1bb5da,_0x5eb442[_0x40bccf(0xe4)],_0x54e866);if(!_0x593abf){_0xf48753[_0x40bccf(0x116)]({'lockKey':_0x515369['scriptType']+'/'+_0x515369[_0x40bccf(0xfb)],'reason':'unresolvable\x20target\x20path'});continue;}const _0x436e07=_0x5eb442[_0x40bccf(0xe4)][_0x593abf[_0x40bccf(0xd7)]];try{if(!_0x515369['id'])throw new Error(_0x40bccf(0xff));if(_0x515369[_0x40bccf(0x107)]==null)throw new Error(_0x40bccf(0xf0));const _0x281646=_0x515369[_0x40bccf(0x107)],_0x479a4f=computeContentHash(_0x281646);if(!_0x29beb0){const _0x58a0e1=await hasUnsyncedLocalChanges(_0x593abf['filePath'],_0x436e07,_0x479a4f);if(_0x58a0e1){_0xf48753[_0x40bccf(0x116)]({'lockKey':_0x593abf[_0x40bccf(0xd7)],'reason':_0x40bccf(0xd3)});continue;}}await ensureParentDirectory(_0x593abf[_0x40bccf(0x10a)]),await writeFile(_0x593abf[_0x40bccf(0x10a)],_0x281646,'utf8');const _0x276efa={'hash':_0x479a4f,'remoteId':_0x515369['id'],'version':_0x515369[_0x40bccf(0xe1)]};_0x593abf[_0x40bccf(0xe6)]===_0x40bccf(0xef)&&_0x593abf[_0x40bccf(0x10d)]&&(_0x276efa['alias']=_0x593abf[_0x40bccf(0x10d)][_0x40bccf(0x105)],_0x276efa[_0x40bccf(0xce)]=_0x593abf['hookLocation'][_0x40bccf(0xce)],_0x276efa['operationType']=_0x593abf[_0x40bccf(0x10d)][_0x40bccf(0x104)],_0x276efa[_0x40bccf(0xf7)]=_0x593abf[_0x40bccf(0x10d)][_0x40bccf(0xf7)]),_0x1eba25[_0x40bccf(0xe4)][_0x593abf[_0x40bccf(0xd7)]]=_0x276efa,_0x3d2eab['push']({'lockKey':_0x593abf[_0x40bccf(0xd7)],'remoteId':_0x515369['id']});}catch(_0x2fa18a){_0x506ed2['push']({'lockKey':_0x593abf[_0x40bccf(0xd7)],'error':_0x2fa18a instanceof Error?_0x2fa18a[_0x40bccf(0x114)]:String(_0x2fa18a)});}}return _0x1eba25[_0x40bccf(0x10b)]=new Date()[_0x40bccf(0xd8)](),await writeBffLockFile(_0x5cdd2f[_0x40bccf(0x106)],_0x425972),{'ok':_0x506ed2[_0x40bccf(0xfe)]===0x0,'data':{'pulled':_0x3d2eab,'skipped':_0xf48753,'failed':_0x506ed2},'message':_0x40bccf(0xd2)+_0x3d2eab[_0x40bccf(0xfe)]+'\x20pulled,\x20'+_0xf48753[_0x40bccf(0xfe)]+_0x40bccf(0xd0)+_0x506ed2[_0x40bccf(0xfe)]+_0x40bccf(0x10c)};}};async function hasUnsyncedLocalChanges(_0x721ab3,_0x209987,_0x38da0a){const _0x3c6ab6=a70_0x231e3f;if(!await fileExists(_0x721ab3))return![];const _0x372f20=await computeFileHash(_0x721ab3);if(!_0x209987)return _0x38da0a?_0x372f20!==_0x38da0a:!![];return _0x372f20!==_0x209987[_0x3c6ab6(0x101)];}function buildDatasetCodeToAliasMap(_0x13adc6,_0x3a1dfa){const _0xbc240=a70_0x231e3f,_0xf7be1d=loadAliasMap(_0x13adc6,undefined,resolveApiFilePath(_0x13adc6,_0x3a1dfa));return new Map(_0xf7be1d[_0xbc240(0xda)](_0x5cc195=>[_0x5cc195[_0xbc240(0xce)],_0x5cc195['alias']]));}async function confirmForce(){const _0x2eb86c=a70_0x231e3f,_0x44ac31=createInterface({'input':process[_0x2eb86c(0xf8)],'output':process[_0x2eb86c(0xfa)]}),_0xcdc559=await new Promise(_0x3791d5=>{const _0x5c4d19=_0x2eb86c;_0x44ac31[_0x5c4d19(0xdf)](_0x5c4d19(0xe5),_0x3791d5);});return _0x44ac31['close'](),['y',_0x2eb86c(0xd9)][_0x2eb86c(0x115)](_0xcdc559['trim']()[_0x2eb86c(0xf6)]());}
@@ -1 +1 @@
1
- const a75_0x3a8dd9=a75_0x2246;(function(_0x28c14b,_0x5c95d9){const _0x1ef778=a75_0x2246,_0x15583b=_0x28c14b();while(!![]){try{const _0x240001=-parseInt(_0x1ef778(0xc5))/0x1+parseInt(_0x1ef778(0xc0))/0x2*(parseInt(_0x1ef778(0xcf))/0x3)+-parseInt(_0x1ef778(0xff))/0x4+-parseInt(_0x1ef778(0xd7))/0x5*(-parseInt(_0x1ef778(0xc6))/0x6)+parseInt(_0x1ef778(0xe6))/0x7+-parseInt(_0x1ef778(0xde))/0x8*(-parseInt(_0x1ef778(0xe3))/0x9)+parseInt(_0x1ef778(0xdf))/0xa*(parseInt(_0x1ef778(0xea))/0xb);if(_0x240001===_0x5c95d9)break;else _0x15583b['push'](_0x15583b['shift']());}catch(_0x1ab119){_0x15583b['push'](_0x15583b['shift']());}}}(a75_0x433a,0x5c59a));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a75_0x2246(_0x5c59c1,_0x64bfc4){_0x5c59c1=_0x5c59c1-0xbc;const _0x433a9f=a75_0x433a();let _0x224688=_0x433a9f[_0x5c59c1];return _0x224688;}import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';function a75_0x433a(){const _0x4b3686=['version','has',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','bool','15FqeboZ','boolean','COMMON','length','unchanged','filePath','string','87336yEJGUS','22520GMvYWr','get','POST','operationType','405NPDSRU','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','alias','2480828FPjGVU','code','update','appCode','737NxrZfZ','map','Run\x20`','filter','set','lockKey','\x20skipped,\x20','Push\x20local\x20BFF\x20scripts\x20to\x20remote','some','force','datasetCodeToId','lockFilePath','Push\x20complete:\x20','Local\x20function\x20not\x20found:\x20','utf8','Force\x20push\x20ignoring\x20hash\x20protection','toISOString','values','functions','ENDPOINT','hash','2926444IpQtzk','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','push','functionNode','str','4aWLFlG','create','aliasToDatasetCode','remoteId','Would\x20inspect\x20','469233HeOaaP','136950qENXBF','HOOK','validation','type','scriptsRoot','lastSync','description','/api/management/library/scripts/save','name','771123uDPdEX','datasetCode','message','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.'];a75_0x433a=function(){return _0x4b3686;};return a75_0x433a();}import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':'bff','command':a75_0x3a8dd9(0xbd),'description':a75_0x3a8dd9(0xf1),'risk':'high-risk-write','flags':[{'name':a75_0x3a8dd9(0xc9),'type':a75_0x3a8dd9(0xdd),'description':'Push\x20only\x20this\x20script\x20type','enum':[a75_0x3a8dd9(0xd9),a75_0x3a8dd9(0xfd),a75_0x3a8dd9(0xc7)]},{'name':a75_0x3a8dd9(0xce),'type':a75_0x3a8dd9(0xdd),'description':a75_0x3a8dd9(0xbc)},{'name':'force','type':a75_0x3a8dd9(0xd8),'description':a75_0x3a8dd9(0xf9)}],async 'dryRun'(_0x42b79b){const _0x467fe9=a75_0x3a8dd9,_0x2942f2=loadBffProjectConfig(_0x42b79b[_0x467fe9(0xe9)]),_0xf94951=await readBffLockFile(_0x2942f2[_0x467fe9(0xf5)]),{appLock:_0x304542}=ensureLockScope(_0xf94951??createEmptyBffLock(),_0x42b79b[_0x467fe9(0xe9)],_0x2942f2[_0x467fe9(0xca)],_0x467fe9(0xbd)),_0x5a7f2b=await getTargetFunctions(_0x2942f2,_0x42b79b),_0x24b149=_0x42b79b['bool'](_0x467fe9(0xf3)),_0x4a1761=[];for(const _0x59c0db of _0x5a7f2b){const _0x2ce773=await computeFileHash(_0x59c0db['filePath']),_0xb13723=_0x304542['functions'][_0x59c0db[_0x467fe9(0xef)]],_0x365907=!!_0xb13723&&_0xb13723[_0x467fe9(0xfe)]===_0x2ce773;_0x4a1761[_0x467fe9(0xbd)]({'lockKey':_0x59c0db[_0x467fe9(0xef)],'filePath':_0x59c0db[_0x467fe9(0xdc)],'remoteId':_0xb13723?.[_0x467fe9(0xc3)]??null,'mode':_0xb13723?.[_0x467fe9(0xc3)]?_0x467fe9(0xe8):_0x467fe9(0xc1),'status':!_0x24b149&&_0x365907?'unchanged':'would_push'});}return{'method':_0x467fe9(0xe1),'url':_0x467fe9(0xcd),'body':{'appCode':_0x42b79b[_0x467fe9(0xe9)],'force':_0x24b149,'files':_0x4a1761},'description':_0x467fe9(0xc4)+_0x4a1761['length']+'\x20local\x20BFF\x20script(s)\x20for\x20push'};},async 'execute'(_0x3780d4){const _0x1f3347=a75_0x3a8dd9,_0x13be73=loadBffProjectConfig(_0x3780d4[_0x1f3347(0xe9)]),_0x363460=await readBffLockFile(_0x13be73[_0x1f3347(0xf5)]),{lockData:_0x2ced98,appLock:_0x2387b3}=ensureLockScope(_0x363460??createEmptyBffLock(),_0x3780d4[_0x1f3347(0xe9)],_0x13be73['scriptsRoot'],_0x1f3347(0xbd)),_0x2de4a1=await getTargetFunctions(_0x13be73,_0x3780d4);if(_0x2de4a1[_0x1f3347(0xda)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':'No\x20local\x20BFF\x20functions\x20found.'};const _0x14d9e6=_0x3780d4[_0x1f3347(0xd6)](_0x1f3347(0xf3)),_0x4b00f8=await buildHookMaps(_0x3780d4[_0x1f3347(0xe9)],_0x3780d4['apiDir'],_0x2de4a1,_0x2387b3),_0x4259f7=[],_0x15f01d=[],_0x516c74=[];for(const _0x3d3fb4 of _0x2de4a1){const _0x1d3c7b=await computeFileHash(_0x3d3fb4[_0x1f3347(0xdc)]),_0x344af8=_0x2387b3['functions'][_0x3d3fb4[_0x1f3347(0xef)]];if(!_0x14d9e6&&_0x344af8&&_0x344af8[_0x1f3347(0xfe)]===_0x1d3c7b){_0x15f01d['push']({'lockKey':_0x3d3fb4[_0x1f3347(0xef)],'reason':_0x1f3347(0xdb)});continue;}try{await uploadSingleFunction(_0x3780d4[_0x1f3347(0xe9)],_0x3d3fb4,_0x2387b3,_0x4b00f8);const _0x194cd1=_0x2387b3[_0x1f3347(0xfc)][_0x3d3fb4[_0x1f3347(0xef)]];_0x4259f7[_0x1f3347(0xbd)]({'lockKey':_0x3d3fb4[_0x1f3347(0xef)],'remoteId':_0x194cd1?.[_0x1f3347(0xc3)]??0x0});}catch(_0x4601f8){_0x516c74[_0x1f3347(0xbd)]({'lockKey':_0x3d3fb4[_0x1f3347(0xef)],'error':_0x4601f8 instanceof Error?_0x4601f8[_0x1f3347(0xd1)]:String(_0x4601f8)});}}return _0x2387b3[_0x1f3347(0xcb)]=new Date()[_0x1f3347(0xfa)](),await writeBffLockFile(_0x13be73['lockFilePath'],_0x2ced98),{'ok':_0x516c74[_0x1f3347(0xda)]===0x0,'data':{'uploaded':_0x4259f7,'skipped':_0x15f01d,'failed':_0x516c74},'message':_0x1f3347(0xf6)+_0x4259f7['length']+'\x20uploaded,\x20'+_0x15f01d[_0x1f3347(0xda)]+_0x1f3347(0xf0)+_0x516c74[_0x1f3347(0xda)]+'\x20failed'};}};async function getTargetFunctions(_0x2f5dcb,_0x570836){const _0xa1f7ed=a75_0x3a8dd9,_0x33b119=_0x570836['str']('type'),_0x2ce9cc=_0x570836[_0xa1f7ed(0xbf)](_0xa1f7ed(0xce)),_0x418d02=normalizeBffType(_0x33b119)??undefined;if(_0x2ce9cc&&!_0x418d02)throw CliErrors[_0xa1f7ed(0xc8)](_0xa1f7ed(0xe4));const _0x9f0375=await scanLocalBffFunctions(_0x2f5dcb,_0x418d02);if(_0x2ce9cc){const _0x2bd08e=_0x9f0375[_0xa1f7ed(0xed)](_0x27b43a=>_0x27b43a['name']===_0x2ce9cc);if(_0x2bd08e[_0xa1f7ed(0xda)]===0x0)throw CliErrors['validation'](_0xa1f7ed(0xf7)+_0x418d02+'/'+_0x2ce9cc);return _0x2bd08e;}return _0x9f0375;}async function buildHookMaps(_0x5a6637,_0x15838e,_0x239c3c,_0x2f45a2){const _0x279c56=a75_0x3a8dd9,_0x39405b=_0x239c3c[_0x279c56(0xf2)](_0x130c82=>_0x130c82[_0x279c56(0xc9)]==='HOOK');if(!_0x39405b)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0xb648db=loadAliasMap(_0x15838e,undefined,resolveApiFilePath(_0x15838e,_0x5a6637)),_0xc19bbc=new Map(_0xb648db[_0x279c56(0xeb)](_0x240d06=>[_0x240d06[_0x279c56(0xe5)],_0x240d06[_0x279c56(0xd0)]]));for(const _0x46ceca of Object[_0x279c56(0xfb)](_0x2f45a2[_0x279c56(0xfc)])){_0x46ceca['alias']&&_0x46ceca[_0x279c56(0xd0)]&&!_0xc19bbc[_0x279c56(0xd4)](_0x46ceca['alias'])&&_0xc19bbc[_0x279c56(0xee)](_0x46ceca[_0x279c56(0xe5)],_0x46ceca[_0x279c56(0xd0)]);}const _0x52891f=await listDatasets(_0x5a6637),_0x5e077f=new Map(_0x52891f[_0x279c56(0xeb)](_0x27bb66=>[_0x27bb66[_0x279c56(0xe7)],_0x27bb66['id']]));return{'aliasToDatasetCode':_0xc19bbc,'datasetCodeToId':_0x5e077f};}async function uploadSingleFunction(_0x2d971b,_0x1516df,_0x4b731f,_0x2702cf){const _0x27c2d0=a75_0x3a8dd9,_0x495f5c=await readFile(_0x1516df[_0x27c2d0(0xdc)],_0x27c2d0(0xf8)),_0x3d0390=await computeFileHash(_0x1516df[_0x27c2d0(0xdc)]),_0x8bf734=_0x4b731f['functions'][_0x1516df['lockKey']];if(_0x8bf734?.[_0x27c2d0(0xc3)]&&_0x8bf734[_0x27c2d0(0xd3)]==null)throw CliErrors[_0x27c2d0(0xc8)](_0x1516df[_0x27c2d0(0xef)]+_0x27c2d0(0xd5));let _0x29003c=extractScriptDescription(_0x495f5c);if(!_0x29003c&&_0x8bf734?.['remoteId']){const _0x3c3b66=await getBffScriptInfo(_0x8bf734[_0x27c2d0(0xc3)]);_0x29003c=_0x3c3b66[_0x27c2d0(0xcc)]||undefined;}const _0x15ab7b={'appCode':_0x2d971b,'functionName':_0x1516df[_0x27c2d0(0xce)],'scriptType':_0x1516df[_0x27c2d0(0xc9)],'scriptContent':_0x495f5c};if(_0x8bf734?.[_0x27c2d0(0xc3)])_0x15ab7b['id']=_0x8bf734[_0x27c2d0(0xc3)];if(_0x8bf734?.[_0x27c2d0(0xd3)]!=null)_0x15ab7b[_0x27c2d0(0xd3)]=_0x8bf734[_0x27c2d0(0xd3)];if(_0x29003c)_0x15ab7b['description']=_0x29003c;if(_0x1516df['type']==='HOOK'){const _0x3c0d4e=_0x1516df[_0x27c2d0(0xe5)];if(!_0x3c0d4e||!_0x1516df['operationType']||!_0x1516df['functionNode'])throw CliErrors[_0x27c2d0(0xc8)]('Incomplete\x20HOOK\x20path:\x20'+_0x1516df[_0x27c2d0(0xef)]);const _0x23bed4=_0x2702cf[_0x27c2d0(0xc2)][_0x27c2d0(0xe0)](_0x3c0d4e)??_0x8bf734?.['datasetCode']??_0x3c0d4e,_0xf0c9c4=_0x2702cf[_0x27c2d0(0xf4)]['get'](_0x23bed4);if(!_0xf0c9c4)throw CliErrors[_0x27c2d0(0xc8)]('Cannot\x20resolve\x20dataset\x20for\x20\x22'+_0x3c0d4e+'\x22.\x20'+(_0x27c2d0(0xec)+CLI_BIN_NAME+_0x27c2d0(0xd2)));_0x15ab7b['datasetId']=_0xf0c9c4,_0x15ab7b['operationType']=_0x1516df[_0x27c2d0(0xe2)],_0x15ab7b[_0x27c2d0(0xbe)]=_0x1516df['functionNode'];}const _0x3ec271=await saveBffScript(_0x15ab7b),_0x166665=await getBffScriptInfo(_0x3ec271),_0x28ca10={'hash':_0x3d0390,'remoteId':_0x3ec271,'version':_0x166665[_0x27c2d0(0xd3)]};if(_0x1516df[_0x27c2d0(0xc9)]==='HOOK'){const _0x4078b7=_0x1516df[_0x27c2d0(0xe5)],_0x5c75e5=_0x2702cf[_0x27c2d0(0xc2)][_0x27c2d0(0xe0)](_0x4078b7)??_0x8bf734?.['datasetCode']??_0x4078b7;_0x2702cf[_0x27c2d0(0xc2)]['has'](_0x4078b7)?_0x28ca10[_0x27c2d0(0xe5)]=_0x4078b7:_0x28ca10[_0x27c2d0(0xe5)]=_0x8bf734?.[_0x27c2d0(0xe5)],_0x28ca10[_0x27c2d0(0xd0)]=_0x5c75e5,_0x28ca10[_0x27c2d0(0xe2)]=_0x1516df[_0x27c2d0(0xe2)],_0x28ca10[_0x27c2d0(0xbe)]=_0x1516df[_0x27c2d0(0xbe)];}_0x4b731f[_0x27c2d0(0xfc)][_0x1516df[_0x27c2d0(0xef)]]=_0x28ca10;}
1
+ const a75_0x3b8ee5=a75_0x2f04;(function(_0x3304d0,_0x1a11d0){const _0x9d5e67=a75_0x2f04,_0x4cb2cf=_0x3304d0();while(!![]){try{const _0x3d5fd8=-parseInt(_0x9d5e67(0x126))/0x1+parseInt(_0x9d5e67(0x12b))/0x2*(-parseInt(_0x9d5e67(0x127))/0x3)+-parseInt(_0x9d5e67(0x136))/0x4+parseInt(_0x9d5e67(0x11e))/0x5*(-parseInt(_0x9d5e67(0x12d))/0x6)+parseInt(_0x9d5e67(0x122))/0x7*(-parseInt(_0x9d5e67(0x14f))/0x8)+-parseInt(_0x9d5e67(0x138))/0x9+parseInt(_0x9d5e67(0x131))/0xa;if(_0x3d5fd8===_0x1a11d0)break;else _0x4cb2cf['push'](_0x4cb2cf['shift']());}catch(_0x55783c){_0x4cb2cf['push'](_0x4cb2cf['shift']());}}}(a75_0x7d52,0x6d552));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';function a75_0x7d52(){const _0xeb604e=['datasetCode','utf8','name','functions','scriptsRoot','apiDir','\x20uploaded,\x20','Would\x20inspect\x20','Cannot\x20resolve\x20dataset\x20for\x20\x22','appCode','toISOString','364224uAiGnm','lockFilePath','version','lastSync','POST','boolean','\x20skipped,\x20','Force\x20push\x20ignoring\x20hash\x20protection','datasetId','set','HOOK','lockKey','has','ENDPOINT','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','length','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','alias','push','remoteId','\x22.\x20',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','5LEuyiS','Local\x20function\x20not\x20found:\x20','hash','aliasToDatasetCode','49NNtwYq','No\x20local\x20BFF\x20functions\x20found.','force','description','107836sYshDq','127311yCbXRl','COMMON','unchanged','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','18fKeSvj','str','1881582rgjNUv','Push\x20complete:\x20','datasetCodeToId','type','23291520vjMGLT','Push\x20only\x20this\x20script\x20type','operationType','map','\x20local\x20BFF\x20script(s)\x20for\x20push','348424CwDamt','filePath','6049422xmBtYf','functionNode','\x20failed','get','Run\x20`','validation','filter','bool','some','code','string','high-risk-write'];a75_0x7d52=function(){return _0xeb604e;};return a75_0x7d52();}import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a75_0x2f04(_0x39f9e7,_0x4e7d55){_0x39f9e7=_0x39f9e7-0x109;const _0x7d522c=a75_0x7d52();let _0x2f0467=_0x7d522c[_0x39f9e7];return _0x2f0467;}import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':'bff','command':'push','description':'Push\x20local\x20BFF\x20scripts\x20to\x20remote','risk':a75_0x3b8ee5(0x143),'flags':[{'name':a75_0x3b8ee5(0x130),'type':a75_0x3b8ee5(0x142),'description':a75_0x3b8ee5(0x132),'enum':[a75_0x3b8ee5(0x128),a75_0x3b8ee5(0x115),'HOOK']},{'name':a75_0x3b8ee5(0x146),'type':a75_0x3b8ee5(0x142),'description':a75_0x3b8ee5(0x118)},{'name':a75_0x3b8ee5(0x124),'type':a75_0x3b8ee5(0x10d),'description':a75_0x3b8ee5(0x10f)}],async 'dryRun'(_0x18573a){const _0x566010=a75_0x3b8ee5,_0x316795=loadBffProjectConfig(_0x18573a[_0x566010(0x14d)]),_0x27d886=await readBffLockFile(_0x316795[_0x566010(0x109)]),{appLock:_0x1125fd}=ensureLockScope(_0x27d886??createEmptyBffLock(),_0x18573a[_0x566010(0x14d)],_0x316795[_0x566010(0x148)],_0x566010(0x11a)),_0x10f4b=await getTargetFunctions(_0x316795,_0x18573a),_0x29d9cb=_0x18573a[_0x566010(0x13f)](_0x566010(0x124)),_0x44e2a1=[];for(const _0x34395e of _0x10f4b){const _0x1ed999=await computeFileHash(_0x34395e[_0x566010(0x137)]),_0x5b072f=_0x1125fd['functions'][_0x34395e[_0x566010(0x113)]],_0xa487ff=!!_0x5b072f&&_0x5b072f['hash']===_0x1ed999;_0x44e2a1[_0x566010(0x11a)]({'lockKey':_0x34395e[_0x566010(0x113)],'filePath':_0x34395e[_0x566010(0x137)],'remoteId':_0x5b072f?.[_0x566010(0x11b)]??null,'mode':_0x5b072f?.[_0x566010(0x11b)]?'update':'create','status':!_0x29d9cb&&_0xa487ff?'unchanged':'would_push'});}return{'method':_0x566010(0x10c),'url':'/api/management/library/scripts/save','body':{'appCode':_0x18573a[_0x566010(0x14d)],'force':_0x29d9cb,'files':_0x44e2a1},'description':_0x566010(0x14b)+_0x44e2a1['length']+_0x566010(0x135)};},async 'execute'(_0x24da2a){const _0x35087f=a75_0x3b8ee5,_0x575f37=loadBffProjectConfig(_0x24da2a[_0x35087f(0x14d)]),_0x2e9281=await readBffLockFile(_0x575f37['lockFilePath']),{lockData:_0x38b4bc,appLock:_0x38f357}=ensureLockScope(_0x2e9281??createEmptyBffLock(),_0x24da2a[_0x35087f(0x14d)],_0x575f37[_0x35087f(0x148)],_0x35087f(0x11a)),_0x1836e2=await getTargetFunctions(_0x575f37,_0x24da2a);if(_0x1836e2[_0x35087f(0x117)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0x35087f(0x123)};const _0x376ca4=_0x24da2a[_0x35087f(0x13f)](_0x35087f(0x124)),_0x55e75e=await buildHookMaps(_0x24da2a[_0x35087f(0x14d)],_0x24da2a[_0x35087f(0x149)],_0x1836e2,_0x38f357),_0x162bec=[],_0x9cb7cc=[],_0x222392=[];for(const _0x46d518 of _0x1836e2){const _0xbbc5b9=await computeFileHash(_0x46d518[_0x35087f(0x137)]),_0xbde143=_0x38f357[_0x35087f(0x147)][_0x46d518[_0x35087f(0x113)]];if(!_0x376ca4&&_0xbde143&&_0xbde143[_0x35087f(0x120)]===_0xbbc5b9){_0x9cb7cc[_0x35087f(0x11a)]({'lockKey':_0x46d518[_0x35087f(0x113)],'reason':_0x35087f(0x129)});continue;}try{await uploadSingleFunction(_0x24da2a['appCode'],_0x46d518,_0x38f357,_0x55e75e);const _0x5941fc=_0x38f357[_0x35087f(0x147)][_0x46d518['lockKey']];_0x162bec[_0x35087f(0x11a)]({'lockKey':_0x46d518[_0x35087f(0x113)],'remoteId':_0x5941fc?.[_0x35087f(0x11b)]??0x0});}catch(_0x7fb317){_0x222392[_0x35087f(0x11a)]({'lockKey':_0x46d518[_0x35087f(0x113)],'error':_0x7fb317 instanceof Error?_0x7fb317['message']:String(_0x7fb317)});}}return _0x38f357[_0x35087f(0x10b)]=new Date()[_0x35087f(0x14e)](),await writeBffLockFile(_0x575f37[_0x35087f(0x109)],_0x38b4bc),{'ok':_0x222392[_0x35087f(0x117)]===0x0,'data':{'uploaded':_0x162bec,'skipped':_0x9cb7cc,'failed':_0x222392},'message':_0x35087f(0x12e)+_0x162bec[_0x35087f(0x117)]+_0x35087f(0x14a)+_0x9cb7cc[_0x35087f(0x117)]+_0x35087f(0x10e)+_0x222392[_0x35087f(0x117)]+_0x35087f(0x13a)};}};async function getTargetFunctions(_0x317d01,_0x5ec7eb){const _0x40f44f=a75_0x3b8ee5,_0xae9a73=_0x5ec7eb[_0x40f44f(0x12c)](_0x40f44f(0x130)),_0x183cf8=_0x5ec7eb[_0x40f44f(0x12c)](_0x40f44f(0x146)),_0x502524=normalizeBffType(_0xae9a73)??undefined;if(_0x183cf8&&!_0x502524)throw CliErrors['validation'](_0x40f44f(0x12a));const _0x595379=await scanLocalBffFunctions(_0x317d01,_0x502524);if(_0x183cf8){const _0x543099=_0x595379[_0x40f44f(0x13e)](_0x5bc418=>_0x5bc418[_0x40f44f(0x146)]===_0x183cf8);if(_0x543099[_0x40f44f(0x117)]===0x0)throw CliErrors['validation'](_0x40f44f(0x11f)+_0x502524+'/'+_0x183cf8);return _0x543099;}return _0x595379;}async function buildHookMaps(_0x16285a,_0x34a9b2,_0x4b9561,_0x12e832){const _0x305c7=a75_0x3b8ee5,_0x550737=_0x4b9561[_0x305c7(0x140)](_0x18007c=>_0x18007c['type']===_0x305c7(0x112));if(!_0x550737)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x55132d=loadAliasMap(_0x34a9b2,undefined,resolveApiFilePath(_0x34a9b2,_0x16285a)),_0x535683=new Map(_0x55132d[_0x305c7(0x134)](_0x508428=>[_0x508428[_0x305c7(0x119)],_0x508428[_0x305c7(0x144)]]));for(const _0x20dab of Object['values'](_0x12e832[_0x305c7(0x147)])){_0x20dab[_0x305c7(0x119)]&&_0x20dab[_0x305c7(0x144)]&&!_0x535683[_0x305c7(0x114)](_0x20dab[_0x305c7(0x119)])&&_0x535683[_0x305c7(0x111)](_0x20dab[_0x305c7(0x119)],_0x20dab['datasetCode']);}const _0x244eef=await listDatasets(_0x16285a),_0x222b79=new Map(_0x244eef[_0x305c7(0x134)](_0x2ba10f=>[_0x2ba10f[_0x305c7(0x141)],_0x2ba10f['id']]));return{'aliasToDatasetCode':_0x535683,'datasetCodeToId':_0x222b79};}async function uploadSingleFunction(_0x40a5ca,_0x211179,_0xc02ca6,_0x2a959f){const _0x36af19=a75_0x3b8ee5,_0x7790d8=await readFile(_0x211179[_0x36af19(0x137)],_0x36af19(0x145)),_0x3c7791=await computeFileHash(_0x211179['filePath']),_0x277ddc=_0xc02ca6[_0x36af19(0x147)][_0x211179[_0x36af19(0x113)]];if(_0x277ddc?.[_0x36af19(0x11b)]&&_0x277ddc[_0x36af19(0x10a)]==null)throw CliErrors['validation'](_0x211179[_0x36af19(0x113)]+_0x36af19(0x11d));let _0x5372e9=extractScriptDescription(_0x7790d8);if(!_0x5372e9&&_0x277ddc?.[_0x36af19(0x11b)]){const _0x2fa49b=await getBffScriptInfo(_0x277ddc[_0x36af19(0x11b)]);_0x5372e9=_0x2fa49b[_0x36af19(0x125)]||undefined;}const _0x4d95f1={'appCode':_0x40a5ca,'functionName':_0x211179[_0x36af19(0x146)],'scriptType':_0x211179[_0x36af19(0x130)],'scriptContent':_0x7790d8};if(_0x277ddc?.[_0x36af19(0x11b)])_0x4d95f1['id']=_0x277ddc[_0x36af19(0x11b)];if(_0x277ddc?.[_0x36af19(0x10a)]!=null)_0x4d95f1[_0x36af19(0x10a)]=_0x277ddc[_0x36af19(0x10a)];if(_0x5372e9)_0x4d95f1[_0x36af19(0x125)]=_0x5372e9;if(_0x211179[_0x36af19(0x130)]===_0x36af19(0x112)){const _0x1d1fe3=_0x211179[_0x36af19(0x119)];if(!_0x1d1fe3||!_0x211179[_0x36af19(0x133)]||!_0x211179['functionNode'])throw CliErrors['validation']('Incomplete\x20HOOK\x20path:\x20'+_0x211179[_0x36af19(0x113)]);const _0xfa316e=_0x2a959f['aliasToDatasetCode'][_0x36af19(0x13b)](_0x1d1fe3)??_0x277ddc?.[_0x36af19(0x144)]??_0x1d1fe3,_0x1dbd9a=_0x2a959f[_0x36af19(0x12f)][_0x36af19(0x13b)](_0xfa316e);if(!_0x1dbd9a)throw CliErrors[_0x36af19(0x13d)](_0x36af19(0x14c)+_0x1d1fe3+_0x36af19(0x11c)+(_0x36af19(0x13c)+CLI_BIN_NAME+_0x36af19(0x116)));_0x4d95f1[_0x36af19(0x110)]=_0x1dbd9a,_0x4d95f1[_0x36af19(0x133)]=_0x211179[_0x36af19(0x133)],_0x4d95f1[_0x36af19(0x139)]=_0x211179[_0x36af19(0x139)];}const _0x2ff87f=await saveBffScript(_0x4d95f1),_0xddae8f=await getBffScriptInfo(_0x2ff87f),_0x2a1b01={'hash':_0x3c7791,'remoteId':_0x2ff87f,'version':_0xddae8f['version']};if(_0x211179[_0x36af19(0x130)]===_0x36af19(0x112)){const _0x5c6601=_0x211179[_0x36af19(0x119)],_0x851223=_0x2a959f['aliasToDatasetCode'][_0x36af19(0x13b)](_0x5c6601)??_0x277ddc?.[_0x36af19(0x144)]??_0x5c6601;_0x2a959f[_0x36af19(0x121)][_0x36af19(0x114)](_0x5c6601)?_0x2a1b01[_0x36af19(0x119)]=_0x5c6601:_0x2a1b01[_0x36af19(0x119)]=_0x277ddc?.[_0x36af19(0x119)],_0x2a1b01[_0x36af19(0x144)]=_0x851223,_0x2a1b01[_0x36af19(0x133)]=_0x211179[_0x36af19(0x133)],_0x2a1b01[_0x36af19(0x139)]=_0x211179['functionNode'];}_0xc02ca6[_0x36af19(0x147)][_0x211179[_0x36af19(0x113)]]=_0x2a1b01;}