@lovrabet/rabetbase-cli 2.2.0 → 2.2.1-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/create.js +1 -1
  28. package/lib/commands/bff/delete.js +1 -1
  29. package/lib/commands/bff/detail.js +1 -1
  30. package/lib/commands/bff/index.js +1 -1
  31. package/lib/commands/bff/list.js +1 -1
  32. package/lib/commands/bff/pull.js +1 -1
  33. package/lib/commands/bff/push.js +1 -1
  34. package/lib/commands/bff/status.js +1 -1
  35. package/lib/commands/cli-update.js +1 -1
  36. package/lib/commands/codegen/index.js +1 -1
  37. package/lib/commands/codegen/sdk.js +1 -1
  38. package/lib/commands/codegen/sql.js +1 -1
  39. package/lib/commands/common/app-selector.js +1 -1
  40. package/lib/commands/common/flags.js +1 -1
  41. package/lib/commands/common/validate.js +1 -1
  42. package/lib/commands/config/get.js +1 -1
  43. package/lib/commands/config/index.js +1 -1
  44. package/lib/commands/config/list.js +1 -1
  45. package/lib/commands/config/set.js +1 -1
  46. package/lib/commands/config/shared.js +1 -1
  47. package/lib/commands/data/filter.js +1 -1
  48. package/lib/commands/data/getOne.js +1 -1
  49. package/lib/commands/data/index.js +1 -1
  50. package/lib/commands/data/shared.js +1 -1
  51. package/lib/commands/dataset/capability.js +1 -1
  52. package/lib/commands/dataset/delete.js +1 -1
  53. package/lib/commands/dataset/detail.js +1 -1
  54. package/lib/commands/dataset/extend-update.js +1 -1
  55. package/lib/commands/dataset/field-update.js +1 -1
  56. package/lib/commands/dataset/index.js +1 -1
  57. package/lib/commands/dataset/list.js +1 -1
  58. package/lib/commands/dataset/operations.js +1 -1
  59. package/lib/commands/dataset/relation-create.js +1 -1
  60. package/lib/commands/dataset/relation-delete.js +1 -1
  61. package/lib/commands/dataset/relation-shared.js +1 -1
  62. package/lib/commands/dataset/relation-update.js +1 -1
  63. package/lib/commands/dataset/relations.js +1 -1
  64. package/lib/commands/dataset/rename.js +1 -1
  65. package/lib/commands/db/analyze-cancel.js +1 -1
  66. package/lib/commands/db/analyze-start.js +1 -1
  67. package/lib/commands/db/analyze-status.js +1 -1
  68. package/lib/commands/db/create.js +1 -1
  69. package/lib/commands/db/delete.js +1 -1
  70. package/lib/commands/db/detail.js +1 -1
  71. package/lib/commands/db/diff.js +1 -1
  72. package/lib/commands/db/index.js +1 -1
  73. package/lib/commands/db/list.js +1 -1
  74. package/lib/commands/db/shared.js +1 -1
  75. package/lib/commands/db/tables.js +1 -1
  76. package/lib/commands/db/test.js +1 -1
  77. package/lib/commands/db/update.js +1 -1
  78. package/lib/commands/doctor.js +1 -1
  79. package/lib/commands/init/index.js +1 -1
  80. package/lib/commands/issue/index.js +1 -1
  81. package/lib/commands/issue/nudge.js +1 -1
  82. package/lib/commands/issue/report.js +1 -1
  83. package/lib/commands/issue/shared.js +1 -1
  84. package/lib/commands/logs/index.js +1 -1
  85. package/lib/commands/menu/index.js +1 -1
  86. package/lib/commands/menu/shared/compare-table.js +1 -1
  87. package/lib/commands/menu/shared/index.js +1 -1
  88. package/lib/commands/menu/shared/inquirer.js +1 -1
  89. package/lib/commands/menu/shared/local-pages.js +1 -1
  90. package/lib/commands/menu/shared/logic.js +1 -1
  91. package/lib/commands/menu/shared/service.js +1 -1
  92. package/lib/commands/menu/shared/sync-core.js +1 -1
  93. package/lib/commands/menu/shared/update-core.js +1 -1
  94. package/lib/commands/menu/shared/valid-url.js +1 -1
  95. package/lib/commands/menu/sync.js +1 -1
  96. package/lib/commands/menu/update.js +1 -1
  97. package/lib/commands/page/generate-start.js +1 -1
  98. package/lib/commands/page/generate-status.js +1 -1
  99. package/lib/commands/page/index.js +1 -1
  100. package/lib/commands/page/pull.js +1 -1
  101. package/lib/commands/page/push.js +1 -1
  102. package/lib/commands/page/relation-audit.js +1 -1
  103. package/lib/commands/page/shared.js +1 -1
  104. package/lib/commands/page/standard-page-status.js +1 -1
  105. package/lib/commands/page/sync.js +1 -1
  106. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  107. package/lib/commands/project/create/format-elapsed.js +1 -1
  108. package/lib/commands/project/create/main.js +1 -1
  109. package/lib/commands/project/create/non-interactive.js +1 -1
  110. package/lib/commands/project/create/project-template-path.js +1 -1
  111. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  112. package/lib/commands/project/create/use-format-code.js +1 -1
  113. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  114. package/lib/commands/project/index.js +1 -1
  115. package/lib/commands/project/init.js +1 -1
  116. package/lib/commands/project/upgrade.js +1 -1
  117. package/lib/commands/registry.js +1 -1
  118. package/lib/commands/run/index.js +1 -1
  119. package/lib/commands/schema.js +1 -1
  120. package/lib/commands/skill/index.js +1 -1
  121. package/lib/commands/sql/create.js +1 -1
  122. package/lib/commands/sql/delete.js +1 -1
  123. package/lib/commands/sql/detail.js +1 -1
  124. package/lib/commands/sql/exec.js +1 -1
  125. package/lib/commands/sql/index.js +1 -1
  126. package/lib/commands/sql/list.js +1 -1
  127. package/lib/commands/sql/pull.js +1 -1
  128. package/lib/commands/sql/push.js +1 -1
  129. package/lib/commands/sql/save.js +1 -1
  130. package/lib/commands/sql/shared.js +1 -1
  131. package/lib/commands/sql/status.js +1 -1
  132. package/lib/commands/sql/validate.js +1 -1
  133. package/lib/config/schema.js +1 -1
  134. package/lib/constant/cdn.js +1 -1
  135. package/lib/constant/cli.js +1 -1
  136. package/lib/constant/defaults.js +1 -1
  137. package/lib/constant/domain.js +1 -1
  138. package/lib/constant/env.js +1 -1
  139. package/lib/constant/output.js +1 -1
  140. package/lib/constant/paths.js +1 -1
  141. package/lib/constant/risk.js +1 -1
  142. package/lib/context.js +1 -1
  143. package/lib/core/alias-resolver.js +1 -1
  144. package/lib/core/api-client.js +1 -1
  145. package/lib/core/bff/config.js +1 -1
  146. package/lib/core/bff/file-system.js +1 -1
  147. package/lib/core/bff/hash.js +1 -1
  148. package/lib/core/bff/lock.js +1 -1
  149. package/lib/core/bff/utils.js +1 -1
  150. package/lib/core/db-resolver.js +1 -1
  151. package/lib/core/page/file-system.js +1 -1
  152. package/lib/core/page/hash.js +1 -1
  153. package/lib/core/page/lock.js +1 -1
  154. package/lib/core/sql-sync/config.js +1 -1
  155. package/lib/core/sql-sync/file-system.js +1 -1
  156. package/lib/core/sql-sync/hash.js +1 -1
  157. package/lib/core/sql-sync/lock.js +1 -1
  158. package/lib/core/sql-sync/utils.js +1 -1
  159. package/lib/core/sql-validator.js +1 -1
  160. package/lib/errors.js +1 -1
  161. package/lib/framework/build-all-flags.js +1 -1
  162. package/lib/framework/flags.js +1 -1
  163. package/lib/framework/help.js +1 -1
  164. package/lib/framework/index.js +1 -1
  165. package/lib/framework/output.js +1 -1
  166. package/lib/framework/response.js +1 -1
  167. package/lib/framework/runner-alias.js +1 -1
  168. package/lib/framework/runner.js +1 -1
  169. package/lib/framework/schema-export.js +1 -1
  170. package/lib/framework/types.js +1 -1
  171. package/lib/generated/build-info.js +1 -1
  172. package/lib/help.js +1 -1
  173. package/lib/skills/main.js +1 -1
  174. package/lib/skills/npx-skills-add.js +1 -1
  175. package/lib/telemetry/cli-command-trace.js +1 -1
  176. package/lib/telemetry/cli-help-trace.js +1 -1
  177. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  178. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  179. package/lib/telemetry/send-cli-trace-log.js +1 -1
  180. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  181. package/lib/utils/ai_config.js +1 -1
  182. package/lib/utils/apply-jq-filter.js +1 -1
  183. package/lib/utils/cdn-config.js +1 -1
  184. package/lib/utils/check-sdk-version.js +1 -1
  185. package/lib/utils/cli-version-check.js +1 -1
  186. package/lib/utils/cli-version-policy.js +1 -1
  187. package/lib/utils/config.js +1 -1
  188. package/lib/utils/copy-directory.js +1 -1
  189. package/lib/utils/entity-with-id.js +1 -1
  190. package/lib/utils/file-utils.js +1 -1
  191. package/lib/utils/guides-cdn.js +1 -1
  192. package/lib/utils/http-client.js +1 -1
  193. package/lib/utils/is-non-interactive.js +1 -1
  194. package/lib/utils/logger.js +1 -1
  195. package/lib/utils/params.js +1 -1
  196. package/lib/utils/platform.js +1 -1
  197. package/lib/utils/rules-cdn.js +1 -1
  198. package/lib/utils/sleep.js +1 -1
  199. package/lib/utils/template-replacer.js +1 -1
  200. package/lib/utils/update-notice.js +1 -1
  201. package/lib/utils/version.js +1 -1
  202. package/lib/utils/with-active-cookie.js +1 -1
  203. package/lib/utils/write-cli-side-channel.js +1 -1
  204. package/package.json +1 -1
@@ -1 +1 @@
1
- function a19_0xb43e(_0xf7b1cd,_0x877b62){_0xf7b1cd=_0xf7b1cd-0x1b8;const _0x1eda53=a19_0x1eda();let _0xb43e03=_0x1eda53[_0xf7b1cd];return _0xb43e03;}const a19_0x10f84f=a19_0xb43e;function a19_0x1eda(){const _0xf26eec=['map','cookie','appCode','288730FlCNyT','13kOqWOq','6978bTQAwr','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','341YONmVV','362427dwQSSp','16CJivLG','remote','appDesc','873eeYNXr','50600UCaIcp','6322308fBBcqf','1066gwPOya','app','1883gUaXTg','../../core/api-client.js','appName','1766058JhGalp','platform','3990TRbZuy'];a19_0x1eda=function(){return _0xf26eec;};return a19_0x1eda();}(function(_0x3480c0,_0x4112d6){const _0x2a0779=a19_0xb43e,_0x2626a2=_0x3480c0();while(!![]){try{const _0xe6c55e=-parseInt(_0x2a0779(0x1c1))/0x1*(-parseInt(_0x2a0779(0x1bf))/0x2)+-parseInt(_0x2a0779(0x1b8))/0x3*(-parseInt(_0x2a0779(0x1b9))/0x4)+parseInt(_0x2a0779(0x1c6))/0x5*(-parseInt(_0x2a0779(0x1cc))/0x6)+-parseInt(_0x2a0779(0x1c4))/0x7+parseInt(_0x2a0779(0x1bd))/0x8*(parseInt(_0x2a0779(0x1bc))/0x9)+parseInt(_0x2a0779(0x1ca))/0xa*(-parseInt(_0x2a0779(0x1ce))/0xb)+parseInt(_0x2a0779(0x1be))/0xc*(parseInt(_0x2a0779(0x1cb))/0xd);if(_0xe6c55e===_0x4112d6)break;else _0x2626a2['push'](_0x2626a2['shift']());}catch(_0x3636b0){_0x2626a2['push'](_0x2626a2['shift']());}}}(a19_0x1eda,0x86b94));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x2e31b3){const _0x5e80a3=a19_0xb43e,{setActiveCookie:_0xa057c0}=await import(_0x5e80a3(0x1c2));_0xa057c0(_0x2e31b3[_0x5e80a3(0x1c8)]);const _0x1bc152=await listRemoteApps();return{'ok':!![],'data':{'items':_0x1bc152[_0x5e80a3(0x1c7)](_0x146ac3=>({..._0x146ac3['id']!=null?{'id':_0x146ac3['id']}:{},'appCode':_0x146ac3[_0x5e80a3(0x1c9)],'appName':_0x146ac3[_0x5e80a3(0x1c3)],..._0x146ac3[_0x5e80a3(0x1bb)]!=null?{'appDesc':_0x146ac3[_0x5e80a3(0x1bb)]}:{}})),'meta':{'source':_0x5e80a3(0x1c5)}}};}export const appRemoteDefinition={'service':a19_0x10f84f(0x1c0),'command':a19_0x10f84f(0x1ba),'description':a19_0x10f84f(0x1cd),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ function a19_0x392a(_0x2aef7c,_0x22efde){_0x2aef7c=_0x2aef7c-0xfd;const _0x308d74=a19_0x308d();let _0x392a94=_0x308d74[_0x2aef7c];return _0x392a94;}const a19_0x25489e=a19_0x392a;function a19_0x308d(){const _0x18ee9f=['18TNjjoK','4556725aTVikp','1143888mIVees','22998uKzoTE','1469140tAZang','../../core/api-client.js','cookie','2372232mFKloz','platform','appCode','map','708804UkJqDT','20wmuzOa','appName','app','7UsqVSc','4731208FNtzGR','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login'];a19_0x308d=function(){return _0x18ee9f;};return a19_0x308d();}(function(_0x26e44a,_0x522809){const _0x156fa3=a19_0x392a,_0x471a5e=_0x26e44a();while(!![]){try{const _0x42a02c=-parseInt(_0x156fa3(0x107))/0x1+-parseInt(_0x156fa3(0x108))/0x2*(-parseInt(_0x156fa3(0xff))/0x3)+-parseInt(_0x156fa3(0xfe))/0x4+parseInt(_0x156fa3(0xfd))/0x5+parseInt(_0x156fa3(0x103))/0x6*(-parseInt(_0x156fa3(0x10b))/0x7)+parseInt(_0x156fa3(0x10c))/0x8+parseInt(_0x156fa3(0x10e))/0x9*(parseInt(_0x156fa3(0x100))/0xa);if(_0x42a02c===_0x522809)break;else _0x471a5e['push'](_0x471a5e['shift']());}catch(_0x36eab8){_0x471a5e['push'](_0x471a5e['shift']());}}}(a19_0x308d,0x75f0e));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x41db4b){const _0x311665=a19_0x392a,{setActiveCookie:_0x4464cf}=await import(_0x311665(0x101));_0x4464cf(_0x41db4b[_0x311665(0x102)]);const _0x3fe6a1=await listRemoteApps();return{'ok':!![],'data':{'items':_0x3fe6a1[_0x311665(0x106)](_0x51a6d7=>({..._0x51a6d7['id']!=null?{'id':_0x51a6d7['id']}:{},'appCode':_0x51a6d7[_0x311665(0x105)],'appName':_0x51a6d7[_0x311665(0x109)],..._0x51a6d7['appDesc']!=null?{'appDesc':_0x51a6d7['appDesc']}:{}})),'meta':{'source':_0x311665(0x104)}}};}export const appRemoteDefinition={'service':a19_0x25489e(0x10a),'command':'remote','description':a19_0x25489e(0x10d),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -1 +1 @@
1
- (function(_0x150e1d,_0x4ae850){const _0x1fab93=a20_0x2e89,_0x1d7b36=_0x150e1d();while(!![]){try{const _0x31e7f8=parseInt(_0x1fab93(0x154))/0x1+parseInt(_0x1fab93(0x158))/0x2*(-parseInt(_0x1fab93(0x157))/0x3)+parseInt(_0x1fab93(0x150))/0x4+parseInt(_0x1fab93(0x156))/0x5*(parseInt(_0x1fab93(0x155))/0x6)+-parseInt(_0x1fab93(0x152))/0x7+parseInt(_0x1fab93(0x153))/0x8+-parseInt(_0x1fab93(0x151))/0x9;if(_0x31e7f8===_0x4ae850)break;else _0x1d7b36['push'](_0x1d7b36['shift']());}catch(_0x1cdf31){_0x1d7b36['push'](_0x1d7b36['shift']());}}}(a20_0x12dd,0x84fb6));function a20_0x2e89(_0x3a5af9,_0x444b05){_0x3a5af9=_0x3a5af9-0x150;const _0x12ddab=a20_0x12dd();let _0x2e891b=_0x12ddab[_0x3a5af9];return _0x2e891b;}import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';function a20_0x12dd(){const _0x65bd80=['16565769BJDfRu','1759961diRCsr','4758896JzxAqv','771334rsBgCI','18WFWJOB','831110PMVXkE','23376NgLtzg','38rUGdUm','3679776enINfA'];a20_0x12dd=function(){return _0x65bd80;};return a20_0x12dd();}export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ (function(_0xe4e161,_0x35b772){const _0x4b2a2d=a20_0x3eda,_0x52889=_0xe4e161();while(!![]){try{const _0xf96579=parseInt(_0x4b2a2d(0x81))/0x1*(-parseInt(_0x4b2a2d(0x83))/0x2)+parseInt(_0x4b2a2d(0x8a))/0x3*(-parseInt(_0x4b2a2d(0x80))/0x4)+parseInt(_0x4b2a2d(0x86))/0x5+-parseInt(_0x4b2a2d(0x88))/0x6*(-parseInt(_0x4b2a2d(0x84))/0x7)+-parseInt(_0x4b2a2d(0x8b))/0x8*(-parseInt(_0x4b2a2d(0x85))/0x9)+-parseInt(_0x4b2a2d(0x82))/0xa+parseInt(_0x4b2a2d(0x87))/0xb*(-parseInt(_0x4b2a2d(0x89))/0xc);if(_0xf96579===_0x35b772)break;else _0x52889['push'](_0x52889['shift']());}catch(_0x543477){_0x52889['push'](_0x52889['shift']());}}}(a20_0x424a,0x399a0));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';function a20_0x3eda(_0x3c756e,_0x3519f2){_0x3c756e=_0x3c756e-0x80;const _0x424a92=a20_0x424a();let _0x3edac2=_0x424a92[_0x3c756e];return _0x3edac2;}import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';function a20_0x424a(){const _0x314b9b=['2561042iorOpe','120hesoqL','12AFmTkD','21891ASvrAr','1156336mapsdz','48iETNZh','19OsYWZS','1115340yWCXyq','14276kBmGmm','104398kYYHnP','9ctfBeK','1803280rBePcJ'];a20_0x424a=function(){return _0x314b9b;};return a20_0x424a();}import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- function a21_0x275b(_0x2d337e,_0xf3dcc1){_0x2d337e=_0x2d337e-0x139;const _0x579124=a21_0x5791();let _0x275ba5=_0x579124[_0x2d337e];return _0x275ba5;}const a21_0x57c2ec=a21_0x275b;(function(_0x283786,_0x2238e9){const _0xf04875=a21_0x275b,_0x5624a4=_0x283786();while(!![]){try{const _0x8c3ea0=-parseInt(_0xf04875(0x13d))/0x1+parseInt(_0xf04875(0x13e))/0x2+parseInt(_0xf04875(0x145))/0x3*(-parseInt(_0xf04875(0x155))/0x4)+-parseInt(_0xf04875(0x158))/0x5*(parseInt(_0xf04875(0x153))/0x6)+-parseInt(_0xf04875(0x149))/0x7+parseInt(_0xf04875(0x14b))/0x8*(-parseInt(_0xf04875(0x146))/0x9)+parseInt(_0xf04875(0x150))/0xa*(parseInt(_0xf04875(0x143))/0xb);if(_0x8c3ea0===_0x2238e9)break;else _0x5624a4['push'](_0x5624a4['shift']());}catch(_0x2b5a32){_0x5624a4['push'](_0x5624a4['shift']());}}}(a21_0x5791,0x209f7));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';function a21_0x5791(){const _0x5de1b3=['object','\x20in\x20','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','app','No\x20apps\x20configured','entries','apps','globalConfig','13323cpYCio','202100xGllad','defaultApp','List\x20all\x20configured\x20apps','projectPath','merged','319UeeeKZ','globalPath','366219ovRNpj','68427flVnyp','inherit','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','843745xPGSHl','boolean','112jdHArv','list','map','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','push','213110gXedqG','global','\x20config','1500ftWVyk','appcode','8ZEFlKC','.\x20Use\x20`','projectConfig','2020uLnlgr','project'];a21_0x5791=function(){return _0x5de1b3;};return a21_0x5791();}import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0xa967a0,_0x33bbd3){const _0x456046=a21_0x275b,_0x36a47c=[],_0x2c9dd6=_0xa967a0[_0x456046(0x13b)]&&typeof _0xa967a0['apps']===_0x456046(0x15a)?_0xa967a0[_0x456046(0x13b)]:{},_0x2b6939=_0xa967a0[_0x456046(0x13f)]||undefined;for(const [_0x4fc125,_0x3471ba]of Object[_0x456046(0x13a)](_0x2c9dd6)){if(!_0x3471ba||typeof _0x3471ba!=='object'||!_0x3471ba[_0x456046(0x154)])continue;_0x36a47c[_0x456046(0x14f)]({'name':_0x4fc125,'appcode':_0x3471ba['appcode'],'named':!![],'definedIn':_0x33bbd3,'isDefault':_0x4fc125===_0x2b6939,...buildAppProfileListFields(_0x3471ba)});}return _0x36a47c;}function buildMergedItems(_0x4852a7,_0x4c00c4){const _0x490b90=a21_0x275b,{apps:apps={},defaultApp:_0x482dd3}=_0x4852a7,_0x325a82=_0x4c00c4[_0x490b90(0x13c)][_0x490b90(0x13b)]&&typeof _0x4c00c4[_0x490b90(0x13c)][_0x490b90(0x13b)]===_0x490b90(0x15a)?_0x4c00c4[_0x490b90(0x13c)]['apps']:{},_0x123020=_0x4c00c4['projectConfig'][_0x490b90(0x13b)]&&typeof _0x4c00c4[_0x490b90(0x157)][_0x490b90(0x13b)]===_0x490b90(0x15a)?_0x4c00c4[_0x490b90(0x157)][_0x490b90(0x13b)]:{},_0x27fade=_0x4c00c4[_0x490b90(0x157)][_0x490b90(0x147)]===![],_0x50d4cf=Object['entries'](apps),_0xd079e4=_0x50d4cf[_0x490b90(0x14d)](([_0x511f51,_0x4fb482])=>({'name':_0x511f51,'appcode':_0x4fb482['appcode'],'named':!![],'definedIn':appDefinedIn(_0x511f51,_0x325a82,_0x123020,_0x27fade),'isDefault':_0x511f51===_0x482dd3,...buildAppProfileListFields(_0x4fb482)}));return _0xd079e4;}async function execute(_0x2e6f8b){const _0x1613a6=a21_0x275b,_0x3c6f65=_0x2e6f8b['bool'](_0x1613a6(0x151)),_0x8eab73=_0x2e6f8b['bool'](_0x1613a6(0x159)),_0x2bc509=_0x3c6f65?_0x1613a6(0x151):_0x8eab73?'project':'merged',{config:_0x25d2c0,layers:_0x2d4bfd}=readRawConfigWithLayers(),_0x491b83=resolveDefaultAppSource(_0x2d4bfd),{defaultApp:_0x1c67eb}=_0x25d2c0;let _0x3380e4,_0x5679c7;switch(_0x2bc509){case _0x1613a6(0x151):_0x3380e4=buildItemsFromLayer(_0x2d4bfd['globalConfig'],_0x1613a6(0x151)),_0x5679c7=_0x2d4bfd[_0x1613a6(0x144)];break;case _0x1613a6(0x159):_0x3380e4=buildItemsFromLayer(_0x2d4bfd['projectConfig'],_0x1613a6(0x159)),_0x5679c7=_0x2d4bfd['projectPath'];break;default:_0x3380e4=buildMergedItems(_0x25d2c0,_0x2d4bfd);break;}enrichAppListItemsWithMergedSelection(_0x3380e4,_0x2e6f8b['mergedCli']);if(_0x3380e4['length']===0x0){const _0x2ebe2b=_0x2bc509===_0x1613a6(0x142)?'':_0x1613a6(0x15b)+_0x2bc509+_0x1613a6(0x152);return{'ok':!![],'data':[],'message':_0x1613a6(0x139)+_0x2ebe2b+_0x1613a6(0x156)+CLI_BIN_NAME+_0x1613a6(0x14e)};}const _0xe47aa9=_0x3380e4['find'](_0x5f5a48=>_0x5f5a48['isCurrent']===!![]),_0x305fc1=_0x1c67eb??_0xe47aa9?.[_0x1613a6(0x154)]??null,_0x761bb5=_0x2bc509===_0x1613a6(0x142)?{'globalPath':_0x2d4bfd[_0x1613a6(0x144)]??null,'projectPath':_0x2d4bfd[_0x1613a6(0x141)]??null,'defaultApp':_0x305fc1,'defaultAppSource':_0x1c67eb!=null?_0x491b83:null}:{'scope':_0x2bc509,'configPath':_0x5679c7??null};return{'ok':!![],'data':{'items':_0x3380e4,'meta':_0x761bb5}};}export const appListDefinition={'service':a21_0x57c2ec(0x15d),'command':a21_0x57c2ec(0x14c),'description':a21_0x57c2ec(0x140),'risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x57c2ec(0x151),'type':a21_0x57c2ec(0x14a),'description':a21_0x57c2ec(0x148),'default':![]},{'name':a21_0x57c2ec(0x159),'type':a21_0x57c2ec(0x14a),'description':a21_0x57c2ec(0x15c),'default':![]}],'execute':execute};
1
+ const a21_0x45c462=a21_0xa880;(function(_0x67b105,_0x5a4579){const _0x5ced26=a21_0xa880,_0x163cd5=_0x67b105();while(!![]){try{const _0x372efe=parseInt(_0x5ced26(0xd0))/0x1*(-parseInt(_0x5ced26(0xb1))/0x2)+-parseInt(_0x5ced26(0xc1))/0x3*(parseInt(_0x5ced26(0xb5))/0x4)+-parseInt(_0x5ced26(0xb7))/0x5+-parseInt(_0x5ced26(0xba))/0x6*(parseInt(_0x5ced26(0xae))/0x7)+parseInt(_0x5ced26(0xc3))/0x8*(parseInt(_0x5ced26(0xcb))/0x9)+parseInt(_0x5ced26(0xc6))/0xa+parseInt(_0x5ced26(0xcf))/0xb*(parseInt(_0x5ced26(0xaf))/0xc);if(_0x372efe===_0x5a4579)break;else _0x163cd5['push'](_0x163cd5['shift']());}catch(_0x2133d4){_0x163cd5['push'](_0x163cd5['shift']());}}}(a21_0x3a91,0xdf64a));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a21_0x3a91(){const _0x503609=['apps','project','12568920SULIoN','global','bool','mergedCli','entries','9hsEsbx','\x20config','list','projectPath','4019873cNDWiS','1181744XMHblx','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','appcode','find','4532101SOKPws','60hYfHLi','\x20in\x20','2tsSKEt','push','length','globalConfig','36bMtohJ','.\x20Use\x20`','4711890BPMjFl','object','map','6fSYkRL','globalPath','merged','projectConfig','defaultApp','No\x20apps\x20configured','boolean','218049qQzTBy','inherit','10052984meqvfM'];a21_0x3a91=function(){return _0x503609;};return a21_0x3a91();}import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x17cdeb,_0x5aa2de){const _0x3bf3a6=a21_0xa880,_0x351997=[],_0xcc6008=_0x17cdeb[_0x3bf3a6(0xc4)]&&typeof _0x17cdeb[_0x3bf3a6(0xc4)]===_0x3bf3a6(0xb8)?_0x17cdeb[_0x3bf3a6(0xc4)]:{},_0x55122f=_0x17cdeb[_0x3bf3a6(0xbe)]||undefined;for(const [_0x25213f,_0xd638b7]of Object[_0x3bf3a6(0xca)](_0xcc6008)){if(!_0xd638b7||typeof _0xd638b7!=='object'||!_0xd638b7['appcode'])continue;_0x351997[_0x3bf3a6(0xb2)]({'name':_0x25213f,'appcode':_0xd638b7[_0x3bf3a6(0xac)],'named':!![],'definedIn':_0x5aa2de,'isDefault':_0x25213f===_0x55122f,...buildAppProfileListFields(_0xd638b7)});}return _0x351997;}function buildMergedItems(_0x2df5c3,_0x1f9a5d){const _0x3a6fd1=a21_0xa880,{apps:apps={},defaultApp:_0xca2cb7}=_0x2df5c3,_0x3da558=_0x1f9a5d['globalConfig']['apps']&&typeof _0x1f9a5d['globalConfig'][_0x3a6fd1(0xc4)]===_0x3a6fd1(0xb8)?_0x1f9a5d['globalConfig']['apps']:{},_0x3e337c=_0x1f9a5d[_0x3a6fd1(0xbd)][_0x3a6fd1(0xc4)]&&typeof _0x1f9a5d['projectConfig'][_0x3a6fd1(0xc4)]===_0x3a6fd1(0xb8)?_0x1f9a5d[_0x3a6fd1(0xbd)]['apps']:{},_0x533528=_0x1f9a5d['projectConfig'][_0x3a6fd1(0xc2)]===![],_0x3cbb47=Object[_0x3a6fd1(0xca)](apps),_0x49827a=_0x3cbb47[_0x3a6fd1(0xb9)](([_0x4a4ec1,_0x52d5f6])=>({'name':_0x4a4ec1,'appcode':_0x52d5f6[_0x3a6fd1(0xac)],'named':!![],'definedIn':appDefinedIn(_0x4a4ec1,_0x3da558,_0x3e337c,_0x533528),'isDefault':_0x4a4ec1===_0xca2cb7,...buildAppProfileListFields(_0x52d5f6)}));return _0x49827a;}function a21_0xa880(_0xed0f31,_0xa33fa5){_0xed0f31=_0xed0f31-0xab;const _0x3a91a0=a21_0x3a91();let _0xa8807e=_0x3a91a0[_0xed0f31];return _0xa8807e;}async function execute(_0x5d852b){const _0x2e17f2=a21_0xa880,_0x41cf3a=_0x5d852b[_0x2e17f2(0xc8)](_0x2e17f2(0xc7)),_0x44d5e5=_0x5d852b[_0x2e17f2(0xc8)]('project'),_0x3ddf1b=_0x41cf3a?'global':_0x44d5e5?'project':_0x2e17f2(0xbc),{config:_0x3057d7,layers:_0x4af215}=readRawConfigWithLayers(),_0x5588cf=resolveDefaultAppSource(_0x4af215),{defaultApp:_0x152252}=_0x3057d7;let _0xc984c,_0x536b79;switch(_0x3ddf1b){case'global':_0xc984c=buildItemsFromLayer(_0x4af215[_0x2e17f2(0xb4)],_0x2e17f2(0xc7)),_0x536b79=_0x4af215[_0x2e17f2(0xbb)];break;case'project':_0xc984c=buildItemsFromLayer(_0x4af215[_0x2e17f2(0xbd)],_0x2e17f2(0xc5)),_0x536b79=_0x4af215['projectPath'];break;default:_0xc984c=buildMergedItems(_0x3057d7,_0x4af215);break;}enrichAppListItemsWithMergedSelection(_0xc984c,_0x5d852b[_0x2e17f2(0xc9)]);if(_0xc984c[_0x2e17f2(0xb3)]===0x0){const _0x410a20=_0x3ddf1b===_0x2e17f2(0xbc)?'':_0x2e17f2(0xb0)+_0x3ddf1b+_0x2e17f2(0xcc);return{'ok':!![],'data':[],'message':_0x2e17f2(0xbf)+_0x410a20+_0x2e17f2(0xb6)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x591532=_0xc984c[_0x2e17f2(0xad)](_0x436e7f=>_0x436e7f['isCurrent']===!![]),_0x232428=_0x152252??_0x591532?.['appcode']??null,_0x1efa56=_0x3ddf1b==='merged'?{'globalPath':_0x4af215['globalPath']??null,'projectPath':_0x4af215[_0x2e17f2(0xce)]??null,'defaultApp':_0x232428,'defaultAppSource':_0x152252!=null?_0x5588cf:null}:{'scope':_0x3ddf1b,'configPath':_0x536b79??null};return{'ok':!![],'data':{'items':_0xc984c,'meta':_0x1efa56}};}export const appListDefinition={'service':'app','command':a21_0x45c462(0xcd),'description':'List\x20all\x20configured\x20apps','risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x45c462(0xc7),'type':a21_0x45c462(0xc0),'description':a21_0x45c462(0xab),'default':![]},{'name':a21_0x45c462(0xc5),'type':'boolean','description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0x1f94c5=a22_0x3e6d;function a22_0x3e6d(_0x503d6c,_0x2af480){_0x503d6c=_0x503d6c-0xce;const _0x9c8115=a22_0x9c81();let _0x3e6d0b=_0x9c8115[_0x503d6c];return _0x3e6d0b;}(function(_0x998dc3,_0x49a7cd){const _0x2e962e=a22_0x3e6d,_0x3b554e=_0x998dc3();while(!![]){try{const _0x86f4cb=parseInt(_0x2e962e(0xd5))/0x1+-parseInt(_0x2e962e(0xdb))/0x2+parseInt(_0x2e962e(0xdf))/0x3*(-parseInt(_0x2e962e(0xf1))/0x4)+parseInt(_0x2e962e(0xed))/0x5+-parseInt(_0x2e962e(0xe4))/0x6*(-parseInt(_0x2e962e(0xd0))/0x7)+-parseInt(_0x2e962e(0xe5))/0x8+-parseInt(_0x2e962e(0xe2))/0x9*(parseInt(_0x2e962e(0xe3))/0xa);if(_0x86f4cb===_0x49a7cd)break;else _0x3b554e['push'](_0x3b554e['shift']());}catch(_0x239966){_0x3b554e['push'](_0x3b554e['shift']());}}}(a22_0x9c81,0xe11e9));import{CliErrors}from'../../errors.js';function a22_0x9c81(){const _0x349702=['55310zxOjyC','6ddWuEy','6250984usfONt','projectConfig','Missing\x20app\x20name.','App\x20\x22','\x20Note:\x20app\x20\x22','args','global','Use\x20global\x20config\x20scope','4457750pXKZhs','project','\x22\x20not\x20found.','Removed\x20app\x20\x22','1712uJYcRB','boolean','\x22\x20still\x20defined\x20in\x20','name','App\x20profile\x20name\x20to\x20remove','bool','3574130mOoSMp','validation','defaultApp','object','trim','1268836iLEDmH','apps','length','keys','app','\x20Default\x20app\x20changed\x20to\x20\x22','575512XvEXsB','globalConfig','inherit','high-risk-write','2361RPXmzq','Remove\x20an\x20app\x20from\x20config','\x20config.','558eNXaHd'];a22_0x9c81=function(){return _0x349702;};return a22_0x9c81();}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(_0x492eb1){const _0x189029=a22_0x3e6d,_0x34e1d0=_0x492eb1[_0x189029(0xea)][0x0]?.['trim']();if(!_0x34e1d0)throw CliErrors['validation'](_0x189029(0xe7),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}async function execute(_0x2402da){const _0x20ca47=a22_0x3e6d,_0x3bac11=_0x2402da[_0x20ca47(0xea)][0x0]?.[_0x20ca47(0xd4)]();if(!_0x3bac11)throw CliErrors[_0x20ca47(0xd1)]('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');const _0xd8ee5=_0x2402da[_0x20ca47(0xcf)]('global'),{config:_0x2749be,layers:_0x323636}=readRawConfigWithLayers(),_0x361494=_0x2749be[_0x20ca47(0xd6)]??{};if(!_0x361494[_0x3bac11])throw CliErrors['validation'](_0x20ca47(0xe8)+_0x3bac11+_0x20ca47(0xef));const _0x3ce6d7=_0x323636['globalConfig'][_0x20ca47(0xd6)]&&typeof _0x323636[_0x20ca47(0xdc)][_0x20ca47(0xd6)]==='object'?_0x323636['globalConfig'][_0x20ca47(0xd6)]:{},_0x332df1=_0x323636[_0x20ca47(0xe6)][_0x20ca47(0xd6)]&&typeof _0x323636[_0x20ca47(0xe6)]['apps']===_0x20ca47(0xd3)?_0x323636[_0x20ca47(0xe6)][_0x20ca47(0xd6)]:{},_0xad3393=appDefinedIn(_0x3bac11,_0x3ce6d7,_0x332df1,_0x323636[_0x20ca47(0xe6)][_0x20ca47(0xdd)]===![]),_0x354594=resolveAppScopeForWrite(_0x3bac11,_0xd8ee5,_0x323636),_0x37a0f2={'global':_0x354594===_0x20ca47(0xeb)},_0x14c790=readConfig(_0x37a0f2),_0xccbb89=_0x14c790[_0x20ca47(0xd6)];if(!_0xccbb89||!_0xccbb89[_0x3bac11])throw CliErrors[_0x20ca47(0xd1)]('App\x20\x22'+_0x3bac11+_0x20ca47(0xef));delete _0xccbb89[_0x3bac11];let _0x5aa7dd='';if(_0x14c790['defaultApp']===_0x3bac11){const _0x2596a4=Object[_0x20ca47(0xd8)](_0xccbb89);_0x14c790['defaultApp']=_0x2596a4['length']>0x0?_0x2596a4[0x0]:undefined,_0x14c790['defaultApp']?_0x5aa7dd=_0x20ca47(0xda)+_0x14c790['defaultApp']+'\x22.':delete _0x14c790['defaultApp'];}Object[_0x20ca47(0xd8)](_0xccbb89)[_0x20ca47(0xd7)]===0x0&&(delete _0x14c790['apps'],delete _0x14c790[_0x20ca47(0xd2)]);writeConfig(_0x14c790,_0x37a0f2);const _0x1b37b2=_0xad3393==='both'?_0x20ca47(0xe9)+_0x3bac11+_0x20ca47(0xf3)+(_0x354594===_0x20ca47(0xee)?_0x20ca47(0xeb):_0x20ca47(0xee))+_0x20ca47(0xe1):'';return{'ok':!![],'message':_0x20ca47(0xf0)+_0x3bac11+'\x22'+scopeLabel(_0x37a0f2)+'.'+_0x5aa7dd+_0x1b37b2};}export const appRemoveDefinition={'service':a22_0x1f94c5(0xd9),'command':'remove','description':a22_0x1f94c5(0xe0),'risk':a22_0x1f94c5(0xde),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x1f94c5(0xf4),'description':a22_0x1f94c5(0xce),'required':!![]}],'flags':[{'name':a22_0x1f94c5(0xeb),'type':a22_0x1f94c5(0xf2),'description':a22_0x1f94c5(0xec),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x5e1d43=a22_0x50c8;(function(_0x2bb9be,_0x3c648e){const _0x2e2304=a22_0x50c8,_0x5a0ea5=_0x2bb9be();while(!![]){try{const _0x16cfc7=parseInt(_0x2e2304(0x11b))/0x1*(-parseInt(_0x2e2304(0x10d))/0x2)+parseInt(_0x2e2304(0x118))/0x3*(-parseInt(_0x2e2304(0x104))/0x4)+-parseInt(_0x2e2304(0x107))/0x5+parseInt(_0x2e2304(0xfd))/0x6+-parseInt(_0x2e2304(0x110))/0x7+parseInt(_0x2e2304(0x117))/0x8*(parseInt(_0x2e2304(0x108))/0x9)+parseInt(_0x2e2304(0x10c))/0xa;if(_0x16cfc7===_0x3c648e)break;else _0x5a0ea5['push'](_0x5a0ea5['shift']());}catch(_0x5de5e9){_0x5a0ea5['push'](_0x5a0ea5['shift']());}}}(a22_0x15fe,0xd9d46));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a22_0x50c8(_0x3bb684,_0x170c9e){_0x3bb684=_0x3bb684-0xf8;const _0x15fec0=a22_0x15fe();let _0x50c88d=_0x15fec0[_0x3bb684];return _0x50c88d;}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x36202c){const _0x548856=a22_0x50c8,_0x2b06d0=_0x36202c[_0x548856(0x10e)][0x0]?.[_0x548856(0x10a)]();if(!_0x2b06d0)throw CliErrors[_0x548856(0x10b)](_0x548856(0x11c),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}function a22_0x15fe(){const _0x330a4e=['both','app','1611368NzraUu','apps','global','7310370eXxven','442917eyCzha','\x20Note:\x20app\x20\x22','trim','validation','38391160HtAdtj','1399914gTWHNZ','args','projectConfig','10217298evfCeD','object','App\x20\x22','remove','Use\x20global\x20config\x20scope','Usage:\x20','globalConfig','232VGEdDy','6aEylPR','defaultApp','inherit','1ZFHstp','Missing\x20app\x20name.','boolean','App\x20profile\x20name\x20to\x20remove','bool','project','\x22\x20not\x20found.','\x22\x20still\x20defined\x20in\x20','Removed\x20app\x20\x22','319596YynFQS','\x20config.','length','\x20app\x20remove\x20<name>\x20[--global]','keys'];a22_0x15fe=function(){return _0x330a4e;};return a22_0x15fe();}async function execute(_0x45fb54){const _0x4caf09=a22_0x50c8,_0x5d5b3d=_0x45fb54[_0x4caf09(0x10e)][0x0]?.[_0x4caf09(0x10a)]();if(!_0x5d5b3d)throw CliErrors[_0x4caf09(0x10b)]('Missing\x20app\x20name.',_0x4caf09(0x115)+CLI_BIN_NAME+_0x4caf09(0x100));const _0x1d4d6=_0x45fb54[_0x4caf09(0xf8)](_0x4caf09(0x106)),{config:_0x53318a,layers:_0x59ae6f}=readRawConfigWithLayers(),_0x25024a=_0x53318a[_0x4caf09(0x105)]??{};if(!_0x25024a[_0x5d5b3d])throw CliErrors[_0x4caf09(0x10b)](_0x4caf09(0x112)+_0x5d5b3d+_0x4caf09(0xfa));const _0x4dd988=_0x59ae6f[_0x4caf09(0x116)][_0x4caf09(0x105)]&&typeof _0x59ae6f[_0x4caf09(0x116)][_0x4caf09(0x105)]===_0x4caf09(0x111)?_0x59ae6f[_0x4caf09(0x116)][_0x4caf09(0x105)]:{},_0x387e59=_0x59ae6f[_0x4caf09(0x10f)][_0x4caf09(0x105)]&&typeof _0x59ae6f[_0x4caf09(0x10f)][_0x4caf09(0x105)]===_0x4caf09(0x111)?_0x59ae6f[_0x4caf09(0x10f)][_0x4caf09(0x105)]:{},_0xe4a30e=appDefinedIn(_0x5d5b3d,_0x4dd988,_0x387e59,_0x59ae6f[_0x4caf09(0x10f)][_0x4caf09(0x11a)]===![]),_0x569124=resolveAppScopeForWrite(_0x5d5b3d,_0x1d4d6,_0x59ae6f),_0x5b26d3={'global':_0x569124===_0x4caf09(0x106)},_0x189f0d=readConfig(_0x5b26d3),_0x42cb91=_0x189f0d['apps'];if(!_0x42cb91||!_0x42cb91[_0x5d5b3d])throw CliErrors[_0x4caf09(0x10b)](_0x4caf09(0x112)+_0x5d5b3d+'\x22\x20not\x20found.');delete _0x42cb91[_0x5d5b3d];let _0x552bad='';if(_0x189f0d[_0x4caf09(0x119)]===_0x5d5b3d){const _0x2e01a8=Object[_0x4caf09(0x101)](_0x42cb91);_0x189f0d[_0x4caf09(0x119)]=_0x2e01a8[_0x4caf09(0xff)]>0x0?_0x2e01a8[0x0]:undefined,_0x189f0d['defaultApp']?_0x552bad='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x189f0d[_0x4caf09(0x119)]+'\x22.':delete _0x189f0d[_0x4caf09(0x119)];}Object[_0x4caf09(0x101)](_0x42cb91)[_0x4caf09(0xff)]===0x0&&(delete _0x189f0d['apps'],delete _0x189f0d['defaultApp']);writeConfig(_0x189f0d,_0x5b26d3);const _0x1805eb=_0xe4a30e===_0x4caf09(0x102)?_0x4caf09(0x109)+_0x5d5b3d+_0x4caf09(0xfb)+(_0x569124==='project'?_0x4caf09(0x106):_0x4caf09(0xf9))+_0x4caf09(0xfe):'';return{'ok':!![],'message':_0x4caf09(0xfc)+_0x5d5b3d+'\x22'+scopeLabel(_0x5b26d3)+'.'+_0x552bad+_0x1805eb};}export const appRemoveDefinition={'service':a22_0x5e1d43(0x103),'command':a22_0x5e1d43(0x113),'description':'Remove\x20an\x20app\x20from\x20config','risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a22_0x5e1d43(0x11e),'required':!![]}],'flags':[{'name':a22_0x5e1d43(0x106),'type':a22_0x5e1d43(0x11d),'description':a22_0x5e1d43(0x114),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x3542c4,_0x5bb750){const _0x10eba4=a23_0x489e,_0x2f2a61=_0x3542c4();while(!![]){try{const _0x260bb2=-parseInt(_0x10eba4(0x7d))/0x1+-parseInt(_0x10eba4(0x79))/0x2+parseInt(_0x10eba4(0x83))/0x3+parseInt(_0x10eba4(0x7a))/0x4*(parseInt(_0x10eba4(0x86))/0x5)+-parseInt(_0x10eba4(0x85))/0x6*(parseInt(_0x10eba4(0x8a))/0x7)+parseInt(_0x10eba4(0x7f))/0x8+-parseInt(_0x10eba4(0x81))/0x9;if(_0x260bb2===_0x5bb750)break;else _0x2f2a61['push'](_0x2f2a61['shift']());}catch(_0x4a3912){_0x2f2a61['push'](_0x2f2a61['shift']());}}}(a23_0x28f5,0xbe385));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';function a23_0x489e(_0x50c04d,_0x5a5ade){_0x50c04d=_0x50c04d-0x72;const _0x28f5ec=a23_0x28f5();let _0x489ef0=_0x28f5ec[_0x50c04d];return _0x489ef0;}export function enrichAppListItemsWithMergedSelection(_0x2fd6bf,_0xe537cd){const _0x405b42=a23_0x489e;if(!_0xe537cd)return;const _0x5d76b8=_0xe537cd[_0x405b42(0x76)]&&typeof _0xe537cd[_0x405b42(0x76)]===_0x405b42(0x8d)?_0xe537cd['apps']:{},_0x1ecf42=Object['keys'](_0x5d76b8)[_0x405b42(0x84)]>0x0;for(const _0x25961f of _0x2fd6bf){_0x25961f[_0x405b42(0x75)]=![];}const _0x25fba6=_0xe537cd[_0x405b42(0x8c)]!=null?String(_0xe537cd[_0x405b42(0x8c)])[_0x405b42(0x80)]():'';if(_0x1ecf42){const _0x3c7564=_0xe537cd[_0x405b42(0x77)]??_0xe537cd[_0x405b42(0x73)];if(_0x3c7564)for(const _0x56f18c of _0x2fd6bf){_0x56f18c[_0x405b42(0x74)]===!![]&&_0x56f18c['name']===_0x3c7564&&(_0x56f18c[_0x405b42(0x75)]=!![]);}for(const _0x5d8499 of _0x2fd6bf){if(_0x5d8499[_0x405b42(0x74)]!==![])continue;if(_0xe537cd['defaultApp'])continue;_0x25fba6&&String(_0x5d8499[_0x405b42(0x87)]??'')[_0x405b42(0x80)]()===_0x25fba6&&(_0x5d8499['isCurrent']=!![]);}return;}if(!_0x25fba6)return;for(const _0x277b80 of _0x2fd6bf){String(_0x277b80[_0x405b42(0x87)]??'')[_0x405b42(0x80)]()===_0x25fba6&&(_0x277b80[_0x405b42(0x75)]=!![]);}}export function resolveAppScopeForWrite(_0x53da04,_0x3a3d7b,_0xae3c9d){const _0xb78915=a23_0x489e;if(_0x3a3d7b)return'global';const _0x97048c=_0xae3c9d['projectConfig'][_0xb78915(0x76)]&&typeof _0xae3c9d['projectConfig'][_0xb78915(0x76)]===_0xb78915(0x8d)?_0xae3c9d[_0xb78915(0x7e)]['apps']:{},_0x347999=_0xae3c9d[_0xb78915(0x7c)][_0xb78915(0x76)]&&typeof _0xae3c9d[_0xb78915(0x7c)]['apps']==='object'?_0xae3c9d[_0xb78915(0x7c)][_0xb78915(0x76)]:{};if(Object[_0xb78915(0x78)][_0xb78915(0x72)][_0xb78915(0x89)](_0x97048c,_0x53da04))return _0xb78915(0x7b);if(Object[_0xb78915(0x78)]['hasOwnProperty'][_0xb78915(0x89)](_0x347999,_0x53da04))return _0xb78915(0x8b);return'project';}export function appDefinedIn(_0x900051,_0x4a2eb5,_0xaec7d8,_0x45a9fb){const _0x5070bc=a23_0x489e;if(_0x45a9fb)return Object['prototype'][_0x5070bc(0x72)]['call'](_0xaec7d8,_0x900051)?_0x5070bc(0x7b):_0x5070bc(0x8b);const _0x4a0e7d=Object[_0x5070bc(0x78)]['hasOwnProperty']['call'](_0x4a2eb5,_0x900051),_0x4ffbc7=Object[_0x5070bc(0x78)][_0x5070bc(0x72)]['call'](_0xaec7d8,_0x900051);if(_0x4a0e7d&&_0x4ffbc7)return'both';if(_0x4ffbc7)return'project';return'global';}export function resolveDefaultAppSource(_0x5b8dff){const _0x10f7d1=a23_0x489e,_0x3bcff1=_0x5b8dff[_0x10f7d1(0x7e)][_0x10f7d1(0x76)]&&typeof _0x5b8dff['projectConfig'][_0x10f7d1(0x76)]===_0x10f7d1(0x8d)?_0x5b8dff[_0x10f7d1(0x7e)]['apps']:{};if(_0x10f7d1(0x73)in _0x5b8dff[_0x10f7d1(0x7e)])return _0x10f7d1(0x7b);if(Object[_0x10f7d1(0x88)](_0x3bcff1)[_0x10f7d1(0x84)]>0x0)return _0x10f7d1(0x7b);if(_0x5b8dff[_0x10f7d1(0x7e)][_0x10f7d1(0x82)]===![])return null;if(_0x5b8dff[_0x10f7d1(0x7c)][_0x10f7d1(0x73)])return _0x10f7d1(0x8b);return null;}export function getConfigPath(_0x1c6e38={}){const _0x1d76c4=a23_0x489e,_0x2d7605=_0x1c6e38[_0x1d76c4(0x8b)]?_0x1d76c4(0x8b):'project';return resolveWriteConfigPath(_0x2d7605);}export function readConfig(_0x4e9433={}){return readConfigFile(getConfigPath(_0x4e9433));}export function writeConfig(_0x5eaa8c,_0x1a2498={}){writeConfigFile(getConfigPath(_0x1a2498),_0x5eaa8c);}function a23_0x28f5(){const _0x44268b=['currentApp','prototype','2288290pBXfMh','880ZyOeGY','project','globalConfig','406850ySVWiS','projectConfig','9404656IJkoxJ','trim','2754279MFyebB','inherit','3243150iwBgXb','length','4470rLYTvu','23475XbesUN','appcode','keys','call','6139vtRras','global','appCode','object','hasOwnProperty','defaultApp','named','isCurrent','apps'];a23_0x28f5=function(){return _0x44268b;};return a23_0x28f5();}export function scopeLabel(_0x28ca50){return _0x28ca50['global']?'\x20(global)':'';}
1
+ (function(_0x47e702,_0x3c45b4){const _0x51bc36=a23_0x3872,_0x3a4800=_0x47e702();while(!![]){try{const _0x538781=-parseInt(_0x51bc36(0x117))/0x1+parseInt(_0x51bc36(0x100))/0x2*(-parseInt(_0x51bc36(0x10a))/0x3)+parseInt(_0x51bc36(0x10e))/0x4*(-parseInt(_0x51bc36(0xfd))/0x5)+parseInt(_0x51bc36(0x106))/0x6+parseInt(_0x51bc36(0x110))/0x7+-parseInt(_0x51bc36(0x10f))/0x8+parseInt(_0x51bc36(0x115))/0x9;if(_0x538781===_0x3c45b4)break;else _0x3a4800['push'](_0x3a4800['shift']());}catch(_0x232841){_0x3a4800['push'](_0x3a4800['shift']());}}}(a23_0x3716,0x1d8eb));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x7d738f,_0x350bf8){const _0x33021c=a23_0x3872;if(!_0x350bf8)return;const _0x1e1d56=_0x350bf8['apps']&&typeof _0x350bf8[_0x33021c(0x103)]==='object'?_0x350bf8[_0x33021c(0x103)]:{},_0x2f777b=Object[_0x33021c(0x113)](_0x1e1d56)[_0x33021c(0xfe)]>0x0;for(const _0x1513f6 of _0x7d738f){_0x1513f6[_0x33021c(0x10c)]=![];}const _0x43da3b=_0x350bf8[_0x33021c(0x105)]!=null?String(_0x350bf8[_0x33021c(0x105)])[_0x33021c(0xff)]():'';if(_0x2f777b){const _0xef11b9=_0x350bf8['currentApp']??_0x350bf8['defaultApp'];if(_0xef11b9)for(const _0x30d55c of _0x7d738f){_0x30d55c[_0x33021c(0xfc)]===!![]&&_0x30d55c[_0x33021c(0x107)]===_0xef11b9&&(_0x30d55c['isCurrent']=!![]);}for(const _0x221175 of _0x7d738f){if(_0x221175[_0x33021c(0xfc)]!==![])continue;if(_0x350bf8['defaultApp'])continue;_0x43da3b&&String(_0x221175['appcode']??'')['trim']()===_0x43da3b&&(_0x221175[_0x33021c(0x10c)]=!![]);}return;}if(!_0x43da3b)return;for(const _0x51b472 of _0x7d738f){String(_0x51b472[_0x33021c(0x112)]??'')[_0x33021c(0xff)]()===_0x43da3b&&(_0x51b472[_0x33021c(0x10c)]=!![]);}}export function resolveAppScopeForWrite(_0x18a614,_0xca7fed,_0x54df34){const _0x106202=a23_0x3872;if(_0xca7fed)return _0x106202(0x104);const _0x149b19=_0x54df34['projectConfig']['apps']&&typeof _0x54df34[_0x106202(0x10b)][_0x106202(0x103)]===_0x106202(0x111)?_0x54df34[_0x106202(0x10b)][_0x106202(0x103)]:{},_0x1f5f36=_0x54df34[_0x106202(0x10d)][_0x106202(0x103)]&&typeof _0x54df34['globalConfig'][_0x106202(0x103)]===_0x106202(0x111)?_0x54df34[_0x106202(0x10d)][_0x106202(0x103)]:{};if(Object['prototype']['hasOwnProperty'][_0x106202(0xfb)](_0x149b19,_0x18a614))return _0x106202(0x108);if(Object['prototype'][_0x106202(0x116)][_0x106202(0xfb)](_0x1f5f36,_0x18a614))return _0x106202(0x104);return _0x106202(0x108);}export function appDefinedIn(_0x1f7c34,_0x4c824b,_0x2a4090,_0x2e7608){const _0x381bfb=a23_0x3872;if(_0x2e7608)return Object[_0x381bfb(0x109)][_0x381bfb(0x116)]['call'](_0x2a4090,_0x1f7c34)?'project':_0x381bfb(0x104);const _0x4fc774=Object[_0x381bfb(0x109)]['hasOwnProperty'][_0x381bfb(0xfb)](_0x4c824b,_0x1f7c34),_0x2b8ee6=Object[_0x381bfb(0x109)][_0x381bfb(0x116)][_0x381bfb(0xfb)](_0x2a4090,_0x1f7c34);if(_0x4fc774&&_0x2b8ee6)return'both';if(_0x2b8ee6)return'project';return _0x381bfb(0x104);}function a23_0x3872(_0xacffe7,_0x484718){_0xacffe7=_0xacffe7-0xfb;const _0x371623=a23_0x3716();let _0x3872aa=_0x371623[_0xacffe7];return _0x3872aa;}export function resolveDefaultAppSource(_0x220998){const _0x10c18c=a23_0x3872,_0x30fc91=_0x220998[_0x10c18c(0x10b)]['apps']&&typeof _0x220998[_0x10c18c(0x10b)]['apps']===_0x10c18c(0x111)?_0x220998['projectConfig']['apps']:{};if(_0x10c18c(0x101)in _0x220998[_0x10c18c(0x10b)])return _0x10c18c(0x108);if(Object['keys'](_0x30fc91)['length']>0x0)return _0x10c18c(0x108);if(_0x220998[_0x10c18c(0x10b)][_0x10c18c(0x102)]===![])return null;if(_0x220998[_0x10c18c(0x10d)][_0x10c18c(0x101)])return'global';return null;}export function getConfigPath(_0x20c6d7={}){const _0x36a325=a23_0x3872,_0x519938=_0x20c6d7[_0x36a325(0x104)]?_0x36a325(0x104):_0x36a325(0x108);return resolveWriteConfigPath(_0x519938);}export function readConfig(_0x5684d0={}){return readConfigFile(getConfigPath(_0x5684d0));}function a23_0x3716(){const _0x232089=['5430rTFunV','length','trim','95714vCmjYG','defaultApp','inherit','apps','global','appCode','636054SWLOEG','name','project','prototype','3bGiIKB','projectConfig','isCurrent','globalConfig','392XPVywY','642728gchKVd','965650yoXHGX','object','appcode','keys','\x20(global)','2167371aIakWl','hasOwnProperty','129085kRjsRy','call','named'];a23_0x3716=function(){return _0x232089;};return a23_0x3716();}export function writeConfig(_0x2bc02,_0x494c1a={}){writeConfigFile(getConfigPath(_0x494c1a),_0x2bc02);}export function scopeLabel(_0x374090){const _0x1b6fe1=a23_0x3872;return _0x374090[_0x1b6fe1(0x104)]?_0x1b6fe1(0x114):'';}
@@ -1 +1 @@
1
- const a24_0x1224cc=a24_0x5804;(function(_0x181385,_0xd4391e){const _0x3fa6f5=a24_0x5804,_0x1cded2=_0x181385();while(!![]){try{const _0xd87be4=parseInt(_0x3fa6f5(0x11d))/0x1*(-parseInt(_0x3fa6f5(0x110))/0x2)+-parseInt(_0x3fa6f5(0x115))/0x3*(-parseInt(_0x3fa6f5(0x120))/0x4)+-parseInt(_0x3fa6f5(0x103))/0x5*(parseInt(_0x3fa6f5(0x11c))/0x6)+parseInt(_0x3fa6f5(0x121))/0x7+-parseInt(_0x3fa6f5(0x10d))/0x8+parseInt(_0x3fa6f5(0x117))/0x9+parseInt(_0x3fa6f5(0x118))/0xa;if(_0xd87be4===_0xd4391e)break;else _0x1cded2['push'](_0x1cded2['shift']());}catch(_0x22704f){_0x1cded2['push'](_0x1cded2['shift']());}}}(a24_0x3699,0x587f6));import{CliErrors}from'../../errors.js';function a24_0x5804(_0x310d55,_0x5adc66){_0x310d55=_0x310d55-0xff;const _0x369902=a24_0x3699();let _0x5804ee=_0x369902[_0x310d55];return _0x5804ee;}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(_0x38c219){const _0x2373f=a24_0x5804,_0x370aa6=_0x38c219[_0x2373f(0x100)][0x0]?.[_0x2373f(0x10c)]();if(!_0x370aa6)throw CliErrors['validation'](_0x2373f(0x11b),_0x2373f(0x107)+CLI_BIN_NAME+_0x2373f(0x108));}async function execute(_0x40a23a){const _0x439ad5=a24_0x5804,_0x412a5e=_0x40a23a[_0x439ad5(0x100)][0x0]?.[_0x439ad5(0x10c)]();if(!_0x412a5e)throw CliErrors[_0x439ad5(0x116)](_0x439ad5(0x11b),_0x439ad5(0x107)+CLI_BIN_NAME+_0x439ad5(0x108));const _0x570624=_0x40a23a[_0x439ad5(0x10f)](_0x439ad5(0x102)),{config:_0x4992be,layers:_0x170a9c}=readRawConfigWithLayers(),_0xc0457f=_0x4992be[_0x439ad5(0x114)]??{},_0x56318f=_0x170a9c[_0x439ad5(0x101)]['apps']&&typeof _0x170a9c['globalConfig'][_0x439ad5(0x114)]===_0x439ad5(0x105)?_0x170a9c[_0x439ad5(0x101)]['apps']:{},_0xff517f={..._0x56318f,..._0xc0457f};if(!_0xff517f[_0x412a5e]){const _0x33f97e=Object[_0x439ad5(0x10e)](_0xff517f),_0x48517b=_0x33f97e['length']===0x0?'Use\x20`'+CLI_BIN_NAME+_0x439ad5(0x104)+_0x412a5e+'\x20--appcode\x20<code>`\x20first.':_0x439ad5(0x112)+_0x33f97e[_0x439ad5(0xff)](',\x20');throw CliErrors[_0x439ad5(0x116)]('App\x20\x22'+_0x412a5e+_0x439ad5(0x10b),_0x48517b);}let _0x4de748,_0x2ed754='';if(_0x570624)_0x4de748={'global':!![]};else{const _0x10ba52=isInProject()&&!!_0x170a9c['projectPath'];_0x4de748={'global':!_0x10ba52};}const _0x4283bd=readConfig(_0x4de748);_0x4283bd['defaultApp']=_0x412a5e;if(!_0x4de748[_0x439ad5(0x102)]){const _0x94bef5=_0x4283bd[_0x439ad5(0x114)]&&typeof _0x4283bd[_0x439ad5(0x114)]===_0x439ad5(0x105)?_0x4283bd[_0x439ad5(0x114)]:{};!Object[_0x439ad5(0x113)][_0x439ad5(0x106)]['call'](_0x94bef5,_0x412a5e)&&(_0x4283bd[_0x439ad5(0x114)]={..._0x94bef5,[_0x412a5e]:_0xff517f[_0x412a5e]},_0x2ed754=_0x439ad5(0x11a)+_0x412a5e+_0x439ad5(0x11e));}return writeConfig(_0x4283bd,_0x4de748),{'ok':!![],'message':_0x439ad5(0x11f)+_0x412a5e+_0x439ad5(0x119)+_0xff517f[_0x412a5e][_0x439ad5(0x109)]+')'+scopeLabel(_0x4de748)+_0x2ed754};}function a24_0x3699(){const _0x398f3f=['args','globalConfig','global','50WGxZcW','\x20app\x20add\x20','object','hasOwnProperty','Usage:\x20','\x20app\x20use\x20<name>\x20[--global]','appcode','app','\x22\x20not\x20found.','trim','1153680Wwrqwe','keys','bool','43284GYsBIp','Switch\x20the\x20default\x20app','Available:\x20','prototype','apps','450fpUiTB','validation','3506472aKnVgW','2467040HZlANT','\x22\x20(appcode:\x20','\x0aNote:\x20\x22','Missing\x20app\x20name.','214416iiripO','25AhUcKb','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','Default\x20app\x20set\x20to\x20\x22','16648enCJTt','1011458jYxUZX','boolean','write','join'];a24_0x3699=function(){return _0x398f3f;};return a24_0x3699();}export const appUseDefinition={'service':a24_0x1224cc(0x10a),'command':'use','description':a24_0x1224cc(0x111),'risk':a24_0x1224cc(0x123),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':a24_0x1224cc(0x102),'type':a24_0x1224cc(0x122),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x391fc1=a24_0x239b;(function(_0x59adc5,_0x40c260){const _0x2a32aa=a24_0x239b,_0x235833=_0x59adc5();while(!![]){try{const _0x5a9a4f=parseInt(_0x2a32aa(0x1f5))/0x1*(-parseInt(_0x2a32aa(0x1fb))/0x2)+-parseInt(_0x2a32aa(0x205))/0x3*(parseInt(_0x2a32aa(0x1fa))/0x4)+-parseInt(_0x2a32aa(0x212))/0x5*(parseInt(_0x2a32aa(0x217))/0x6)+-parseInt(_0x2a32aa(0x1f9))/0x7*(parseInt(_0x2a32aa(0x200))/0x8)+parseInt(_0x2a32aa(0x213))/0x9*(parseInt(_0x2a32aa(0x214))/0xa)+parseInt(_0x2a32aa(0x20b))/0xb*(parseInt(_0x2a32aa(0x1f4))/0xc)+parseInt(_0x2a32aa(0x20a))/0xd;if(_0x5a9a4f===_0x40c260)break;else _0x235833['push'](_0x235833['shift']());}catch(_0x402486){_0x235833['push'](_0x235833['shift']());}}}(a24_0x4215,0xe12d3));function a24_0x239b(_0x56ef01,_0x4e472f){_0x56ef01=_0x56ef01-0x1ee;const _0x4215ab=a24_0x4215();let _0x239b76=_0x4215ab[_0x56ef01];return _0x239b76;}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';function a24_0x4215(){const _0x499ec0=['Use\x20`','7641865sKqIea','801WPFmFT','155200nsgkbY','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','Usage:\x20','6ZYiaCs','boolean','prototype','object','globalConfig','\x22\x20(appcode:\x20','\x20--appcode\x20<code>`\x20first.','keys','Switch\x20the\x20default\x20app','app','length','13140504rAKvhv','628195prcvGe','appcode','trim','App\x20profile\x20name\x20to\x20activate','636146YyoPxX','844VQTnup','4XBrxcK','Available:\x20','write','projectPath','global','88KvSfag','name','validation','Missing\x20app\x20name.','args','14619SQONVT','hasOwnProperty','call','apps','\x22\x20not\x20found.','42362125yBOeQG','11oVMEua','bool','\x0aNote:\x20\x22','\x20app\x20use\x20<name>\x20[--global]','defaultApp','App\x20\x22'];a24_0x4215=function(){return _0x499ec0;};return a24_0x4215();}async function validateArgs(_0x3fb209){const _0x2cbddf=a24_0x239b,_0x828448=_0x3fb209['args'][0x0]?.['trim']();if(!_0x828448)throw CliErrors[_0x2cbddf(0x202)](_0x2cbddf(0x203),_0x2cbddf(0x216)+CLI_BIN_NAME+_0x2cbddf(0x20e));}async function execute(_0x3ffbf1){const _0x4eec32=a24_0x239b,_0x425552=_0x3ffbf1[_0x4eec32(0x204)][0x0]?.[_0x4eec32(0x1f7)]();if(!_0x425552)throw CliErrors['validation']('Missing\x20app\x20name.',_0x4eec32(0x216)+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');const _0x504c62=_0x3ffbf1[_0x4eec32(0x20c)]('global'),{config:_0x4d948f,layers:_0x384573}=readRawConfigWithLayers(),_0x2fde85=_0x4d948f[_0x4eec32(0x208)]??{},_0x4234a8=_0x384573[_0x4eec32(0x21b)][_0x4eec32(0x208)]&&typeof _0x384573['globalConfig']['apps']===_0x4eec32(0x21a)?_0x384573['globalConfig']['apps']:{},_0x445c84={..._0x4234a8,..._0x2fde85};if(!_0x445c84[_0x425552]){const _0x4edfc2=Object[_0x4eec32(0x1f0)](_0x445c84),_0x48fde4=_0x4edfc2[_0x4eec32(0x1f3)]===0x0?_0x4eec32(0x211)+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x425552+_0x4eec32(0x1ef):_0x4eec32(0x1fc)+_0x4edfc2['join'](',\x20');throw CliErrors[_0x4eec32(0x202)](_0x4eec32(0x210)+_0x425552+_0x4eec32(0x209),_0x48fde4);}let _0x3fc413,_0x57a22d='';if(_0x504c62)_0x3fc413={'global':!![]};else{const _0x5dd9b=isInProject()&&!!_0x384573[_0x4eec32(0x1fe)];_0x3fc413={'global':!_0x5dd9b};}const _0x641046=readConfig(_0x3fc413);_0x641046[_0x4eec32(0x20f)]=_0x425552;if(!_0x3fc413[_0x4eec32(0x1ff)]){const _0x98a3b5=_0x641046['apps']&&typeof _0x641046[_0x4eec32(0x208)]==='object'?_0x641046[_0x4eec32(0x208)]:{};!Object[_0x4eec32(0x219)][_0x4eec32(0x206)][_0x4eec32(0x207)](_0x98a3b5,_0x425552)&&(_0x641046[_0x4eec32(0x208)]={..._0x98a3b5,[_0x425552]:_0x445c84[_0x425552]},_0x57a22d=_0x4eec32(0x20d)+_0x425552+_0x4eec32(0x215));}return writeConfig(_0x641046,_0x3fc413),{'ok':!![],'message':'Default\x20app\x20set\x20to\x20\x22'+_0x425552+_0x4eec32(0x1ee)+_0x445c84[_0x425552][_0x4eec32(0x1f6)]+')'+scopeLabel(_0x3fc413)+_0x57a22d};}export const appUseDefinition={'service':a24_0x391fc1(0x1f2),'command':'use','description':a24_0x391fc1(0x1f1),'risk':a24_0x391fc1(0x1fd),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x391fc1(0x201),'description':a24_0x391fc1(0x1f8),'required':!![]}],'flags':[{'name':a24_0x391fc1(0x1ff),'type':a24_0x391fc1(0x218),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- const a25_0x5220c8=a25_0x58b2;function a25_0x471a(){const _0x46b844=['3800241hZYXHU','nonInteractive','1149misOYQ','8206400dqZiWb','7146VokCdL','!\x20Not\x20logged\x20in','8QnBLHh','Clear\x20login\x20session','yes','3009589LwUWWl','73612JgOnQh','logout','bool','2335SxVlrP','Login\x20via\x20browser','126BDOAfi','12WBojKW','1190HPgwau','1642200vkDQwc','boolean','login','read','log','auth','../../auth/auth-server-ui.js'];a25_0x471a=function(){return _0x46b844;};return a25_0x471a();}(function(_0x347379,_0x36f0cf){const _0x53eb80=a25_0x58b2,_0x350fb3=_0x347379();while(!![]){try{const _0x2ed0e4=parseInt(_0x53eb80(0x96))/0x1*(parseInt(_0x53eb80(0x8c))/0x2)+-parseInt(_0x53eb80(0x8a))/0x3*(-parseInt(_0x53eb80(0x85))/0x4)+parseInt(_0x53eb80(0x88))/0x5*(-parseInt(_0x53eb80(0x98))/0x6)+parseInt(_0x53eb80(0x8d))/0x7+-parseInt(_0x53eb80(0x9a))/0x8*(-parseInt(_0x53eb80(0x94))/0x9)+-parseInt(_0x53eb80(0x97))/0xa+-parseInt(_0x53eb80(0x84))/0xb*(parseInt(_0x53eb80(0x8b))/0xc);if(_0x2ed0e4===_0x36f0cf)break;else _0x350fb3['push'](_0x350fb3['shift']());}catch(_0x577f64){_0x350fb3['push'](_0x350fb3['shift']());}}}(a25_0x471a,0x71092));import{unlinkSync,existsSync}from'node:fs';function a25_0x58b2(_0x2a5459,_0x2d1370){_0x2a5459=_0x2a5459-0x83;const _0x471a71=a25_0x471a();let _0x58b220=_0x471a71[_0x2a5459];return _0x58b220;}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x5220c8(0x92),'command':a25_0x5220c8(0x8f),'description':a25_0x5220c8(0x89),'risk':a25_0x5220c8(0x90),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x5220c8(0x83),'type':a25_0x5220c8(0x8e),'description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0xf8ef95){const _0x53c453=a25_0x5220c8,{runAuthServer:_0x42536c}=await import(_0x53c453(0x93));return await _0x42536c({'autoYes':_0xf8ef95[_0x53c453(0x87)](_0x53c453(0x83)),'nonInteractive':_0xf8ef95[_0x53c453(0x95)]}),{'ok':!![]};}},{'service':a25_0x5220c8(0x92),'command':a25_0x5220c8(0x86),'description':a25_0x5220c8(0x9b),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x539a26){const _0x4e8921=a25_0x5220c8;return existsSync(cookieFile)?(unlinkSync(cookieFile),console['log']('✓\x20Logged\x20out')):console[_0x4e8921(0x91)](_0x4e8921(0x99)),{'ok':!![]};}}];
1
+ const a25_0x1ff7fe=a25_0x21f7;function a25_0x21f7(_0xd213ef,_0x4a1f87){_0xd213ef=_0xd213ef-0x1bd;const _0x2638af=a25_0x2638();let _0x21f761=_0x2638af[_0xd213ef];return _0x21f761;}(function(_0x2124f5,_0x188726){const _0x3b1c6b=a25_0x21f7,_0x2089a6=_0x2124f5();while(!![]){try{const _0x26dbc0=-parseInt(_0x3b1c6b(0x1cf))/0x1*(parseInt(_0x3b1c6b(0x1bd))/0x2)+-parseInt(_0x3b1c6b(0x1c5))/0x3*(parseInt(_0x3b1c6b(0x1c2))/0x4)+-parseInt(_0x3b1c6b(0x1d1))/0x5+-parseInt(_0x3b1c6b(0x1c3))/0x6*(-parseInt(_0x3b1c6b(0x1bf))/0x7)+-parseInt(_0x3b1c6b(0x1ce))/0x8+-parseInt(_0x3b1c6b(0x1c4))/0x9*(-parseInt(_0x3b1c6b(0x1c6))/0xa)+parseInt(_0x3b1c6b(0x1d3))/0xb;if(_0x26dbc0===_0x188726)break;else _0x2089a6['push'](_0x2089a6['shift']());}catch(_0x3f6447){_0x2089a6['push'](_0x2089a6['shift']());}}}(a25_0x2638,0xdd63d));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';function a25_0x2638(){const _0x5ed540=['!\x20Not\x20logged\x20in','login','6634476VIXtVo','78mAlzhm','4670388pPSGPE','3CLJFAa','20IzYPcy','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','Login\x20via\x20browser','boolean','log','Clear\x20login\x20session','../../auth/auth-server-ui.js','bool','5313192ALEcvY','1uObvxs','auth','6439555VhyarF','✓\x20Logged\x20out','39902170dAAAHS','3222842CGqcTL','yes','788081knRLLd'];a25_0x2638=function(){return _0x5ed540;};return a25_0x2638();}export const authDefinitions=[{'service':a25_0x1ff7fe(0x1d0),'command':a25_0x1ff7fe(0x1c1),'description':a25_0x1ff7fe(0x1c8),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x1ff7fe(0x1be),'type':a25_0x1ff7fe(0x1c9),'description':a25_0x1ff7fe(0x1c7),'default':![]}],async 'execute'(_0x306aef){const _0x4fc9dd=a25_0x1ff7fe,{runAuthServer:_0x5288e3}=await import(_0x4fc9dd(0x1cc));return await _0x5288e3({'autoYes':_0x306aef[_0x4fc9dd(0x1cd)]('yes'),'nonInteractive':_0x306aef['nonInteractive']}),{'ok':!![]};}},{'service':a25_0x1ff7fe(0x1d0),'command':'logout','description':a25_0x1ff7fe(0x1cb),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x5cdb8b){const _0x94d625=a25_0x1ff7fe;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x94d625(0x1ca)](_0x94d625(0x1d2))):console[_0x94d625(0x1ca)](_0x94d625(0x1c0)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a26_0x986aa1=a26_0x4308;(function(_0x3525d8,_0x11a134){const _0x477ab4=a26_0x4308,_0x36ab83=_0x3525d8();while(!![]){try{const _0x31b2cf=parseInt(_0x477ab4(0x8c))/0x1+-parseInt(_0x477ab4(0x85))/0x2*(-parseInt(_0x477ab4(0x86))/0x3)+-parseInt(_0x477ab4(0x6c))/0x4+parseInt(_0x477ab4(0x93))/0x5*(-parseInt(_0x477ab4(0x7b))/0x6)+-parseInt(_0x477ab4(0x89))/0x7*(-parseInt(_0x477ab4(0x8d))/0x8)+-parseInt(_0x477ab4(0x79))/0x9*(parseInt(_0x477ab4(0xa6))/0xa)+parseInt(_0x477ab4(0xa3))/0xb;if(_0x31b2cf===_0x11a134)break;else _0x36ab83['push'](_0x36ab83['shift']());}catch(_0x25445e){_0x36ab83['push'](_0x36ab83['shift']());}}}(a26_0x5ac7,0xa1b72));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';function a26_0x4308(_0x1426ca,_0x20348e){_0x1426ca=_0x1426ca-0x64;const _0x5ac736=a26_0x5ac7();let _0x43081c=_0x5ac736[_0x1426ca];return _0x43081c;}function a26_0x5ac7(){const _0xb3aba1=['Script\x20type','Invalid\x20dataset\x20selection.','trim','Alias\x20\x22','Operation\x20type\x20(HOOK\x20only)','10450alNiCB','apiDir','nonInteractive','HOOK','functionNode','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','length','tableName','function-node','join','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','datasetCode','find','type','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','25954533FlqyaI','\x0a\x20*\x20[脚本名称]\x20','\x20api\x20pull`\x20to\x20refresh.','100XdzEyE','write','description','Script\x20description','validation','operation-type','scriptsRootDir','Operation\x20type\x20\x22','string','str','create','.js','\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','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','File\x20already\x20exists:\x20','No\x20operation\x20types\x20found\x20for\x20dataset\x20','close','stderr','after','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','alias','No\x20datasets\x20found\x20for\x20this\x20app.','\x22\x20not\x20found\x20for\x20dataset\x20','includes','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','4093692jhaDod','\x22.\x20','COMMON','keys','\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','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','Select\x20trigger\x20node:','map','Available:\x20','Function\x20name\x20(valid\x20JS\x20identifier)','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','appCode','isInteger','299043CecrnH','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','2904MzsKrZ','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','Dataset\x20not\x20found\x20for\x20code\x20\x22','name','.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','\x20function:\x20','before','question','ENDPOINT','datasetcode','596PkyCoz','4017civUuW','code','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','7CViDBA','Select\x20dataset:','operationType','231548BZxaYz','316528TovVpA'];a26_0x5ac7=function(){return _0xb3aba1;};return a26_0x5ac7();}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';import{assertDatasetSupportsLocalDevelopment,filterDbBackedDatasets}from'../../commands/dataset/capability.js';export const bffCreate={'service':'bff','command':a26_0x986aa1(0xb0),'description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':a26_0x986aa1(0xa7),'flags':[{'name':'type','type':a26_0x986aa1(0xae),'required':!![],'enum':[a26_0x986aa1(0x6e),a26_0x986aa1(0x83),a26_0x986aa1(0x96)],'description':a26_0x986aa1(0x8e)},{'name':a26_0x986aa1(0x7e),'type':a26_0x986aa1(0xae),'required':!![],'description':a26_0x986aa1(0x75)},{'name':'description','type':'string','description':a26_0x986aa1(0xa9)},{'name':a26_0x986aa1(0x66),'type':a26_0x986aa1(0xae),'description':a26_0x986aa1(0xb3)},{'name':a26_0x986aa1(0x84),'type':a26_0x986aa1(0xae),'description':a26_0x986aa1(0x7a)},{'name':'operation-type','type':a26_0x986aa1(0xae),'description':a26_0x986aa1(0x92)},{'name':'function-node','type':a26_0x986aa1(0xae),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':[a26_0x986aa1(0x81),a26_0x986aa1(0x64)]}],async 'validate'(_0x141e1f){const _0x4b2c35=a26_0x986aa1,_0x4bc64e=_0x141e1f[_0x4b2c35(0xaf)](_0x4b2c35(0x7e));if(!isValidBffFunctionName(_0x4bc64e))throw CliErrors[_0x4b2c35(0xaa)]('Invalid\x20function\x20name\x20\x22'+_0x4bc64e+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0xa5beb1){const _0x228be8=a26_0x986aa1,_0x251c01=loadBffProjectConfig(_0xa5beb1['appCode']),_0x2e9813=_0xa5beb1[_0x228be8(0xaf)](_0x228be8(0xa0)),_0xcd9157=_0xa5beb1[_0x228be8(0xaf)](_0x228be8(0x7e)),_0x45a9bb=_0xa5beb1[_0x228be8(0xaf)](_0x228be8(0xa8))||undefined,_0x200325=_0x2e9813===_0x228be8(0x96)?await resolveHookOptions(_0x251c01,_0xa5beb1):undefined,_0x1fa983=buildFilePath(_0x251c01,_0x2e9813,_0xcd9157,_0x200325);if(await fileExists(_0x1fa983))throw CliErrors[_0x228be8(0xaa)](_0x228be8(0xb4)+_0x1fa983);await mkdir(dirname(_0x1fa983),{'recursive':!![]});const _0x2c8583=generateTemplate(_0x2e9813,_0xcd9157,_0xa5beb1[_0x228be8(0x77)],_0x45a9bb,_0x200325);await writeFile(_0x1fa983,_0x2c8583,'utf8');const _0x3fc054={'type':_0x2e9813,'name':_0xcd9157,'path':_0x1fa983};if(_0x45a9bb)_0x3fc054[_0x228be8(0xa8)]=_0x45a9bb;if(_0x200325){if(_0x200325[_0x228be8(0x66)])_0x3fc054[_0x228be8(0x66)]=_0x200325[_0x228be8(0x66)];_0x3fc054[_0x228be8(0x9e)]=_0x200325[_0x228be8(0x9e)],_0x3fc054[_0x228be8(0x8b)]=_0x200325[_0x228be8(0x8b)],_0x3fc054[_0x228be8(0x97)]=_0x200325[_0x228be8(0x97)];}return{'ok':!![],'data':_0x3fc054,'message':'Created\x20'+_0x2e9813+_0x228be8(0x80)+_0xcd9157};}};async function resolveHookOptions(_0x15ce06,_0x1c7e53){const _0x390949=a26_0x986aa1,_0x50bede=loadAliasMap(_0x1c7e53['apiDir'],undefined,resolveApiFilePath(_0x1c7e53['apiDir'],_0x1c7e53[_0x390949(0x77)])),_0x2bbf7f=_0x50bede[_0x390949(0x99)]>0x0;let _0x24a913,_0x32a53d,_0x4fdb2c;const _0x488d7f=_0x1c7e53['str'](_0x390949(0x66)),_0x438520=_0x1c7e53[_0x390949(0xaf)](_0x390949(0x84));if(_0x488d7f){const _0x31ce9f=resolveAlias(_0x1c7e53[_0x390949(0x94)],_0x488d7f,undefined,resolveApiFilePath(_0x1c7e53[_0x390949(0x94)],_0x1c7e53['appCode']));if(!_0x31ce9f){const _0x372203=_0x2bbf7f?'Available\x20aliases:\x20'+_0x50bede[_0x390949(0x73)](_0x10c342=>_0x10c342['alias'])[_0x390949(0x9c)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+_0x390949(0x7c);throw CliErrors['validation'](_0x390949(0x91)+_0x488d7f+'\x22\x20not\x20found.\x20'+_0x372203);}_0x24a913=_0x488d7f,_0x32a53d=_0x31ce9f;}else{if(_0x438520){_0x32a53d=_0x438520;const _0x2823de=_0x50bede[_0x390949(0x9f)](_0x4a1738=>_0x4a1738[_0x390949(0x9e)]===_0x438520);_0x24a913=_0x2823de?.['alias'];}else{if(_0x1c7e53['nonInteractive'])throw CliErrors['validation']('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x2bbf7f){const _0x43e99d=_0x50bede[_0x390949(0x73)](_0x230e19=>_0x230e19['alias']+'\x20('+_0x230e19[_0x390949(0x9a)]+')'),_0x3f79e3=await promptSelect(_0x390949(0x8a),_0x43e99d),_0x39bf5a=_0x50bede[_0x3f79e3];if(!_0x39bf5a)throw CliErrors[_0x390949(0xaa)](_0x390949(0x8f));_0x24a913=_0x39bf5a['alias'],_0x32a53d=_0x39bf5a[_0x390949(0x9e)];}else{const _0x58d718=await listDatasets(_0x1c7e53[_0x390949(0x77)]),_0x386527=filterDbBackedDatasets(_0x58d718);if(_0x386527[_0x390949(0x99)]===0x0)throw CliErrors['validation'](_0x58d718['length']===0x0?_0x390949(0x67):'No\x20DB\x20table\x20datasets\x20found\x20for\x20this\x20app.\x20METADATA\x20datasets\x20cannot\x20be\x20used\x20for\x20BFF\x20HOOK\x20development\x20because\x20the\x20workflow\x20depends\x20on\x20SQL\x20execution.');const _0xb64d68=_0x386527[_0x390949(0x73)](_0x11204f=>_0x11204f[_0x390949(0x7e)]+'\x20('+_0x11204f[_0x390949(0x87)]+')'),_0x49428e=await promptSelect('Select\x20dataset:',_0xb64d68),_0x1000f0=_0x386527[_0x49428e];if(!_0x1000f0)throw CliErrors['validation'](_0x390949(0x8f));_0x32a53d=_0x1000f0[_0x390949(0x87)],_0x24a913=undefined;}}}}const _0x2ea6e4=await listDatasets(_0x1c7e53[_0x390949(0x77)]),_0x573658=_0x2ea6e4[_0x390949(0x9f)](_0x182a70=>_0x182a70[_0x390949(0x87)]===_0x32a53d);if(!_0x573658)throw CliErrors[_0x390949(0xaa)](_0x390949(0x7d)+_0x32a53d+_0x390949(0x6d)+(_0x24a913?_0x390949(0x6b)+CLI_BIN_NAME+_0x390949(0xa5):''));assertDatasetSupportsLocalDevelopment(_0x573658,'BFF\x20HOOK'),_0x4fdb2c=_0x573658['id'];const _0x141ab4=_0x24a913??_0x32a53d,_0x38566a=await listBffDatasetOperations(_0x1c7e53['appCode'],_0x4fdb2c),_0x40ce53=_0x38566a?Object[_0x390949(0x6f)](_0x38566a):[];if(_0x40ce53['length']===0x0)throw CliErrors[_0x390949(0xaa)](_0x390949(0xb5)+_0x141ab4+'.');let _0x183a99;const _0x36a4c7=_0x1c7e53[_0x390949(0xaf)](_0x390949(0xab));if(_0x36a4c7){if(!_0x40ce53[_0x390949(0x69)](_0x36a4c7))throw CliErrors['validation'](_0x390949(0xad)+_0x36a4c7+_0x390949(0x68)+_0x141ab4+'.\x20'+(_0x390949(0x74)+_0x40ce53[_0x390949(0x9c)](',\x20')));_0x183a99=_0x36a4c7;}else{if(_0x1c7e53[_0x390949(0x95)])throw CliErrors['validation'](_0x390949(0x98));const _0x4df4a2=await promptSelect('Select\x20operation\x20type:',_0x40ce53);_0x183a99=_0x40ce53[_0x4df4a2]??_0x40ce53[0x0];}let _0x1786b=normalizeHookFunctionNode(_0x1c7e53[_0x390949(0xaf)](_0x390949(0x9b)));if(!_0x1786b){if(_0x1c7e53['str']('function-node'))throw CliErrors[_0x390949(0xaa)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x1c7e53[_0x390949(0x95)])throw CliErrors[_0x390949(0xaa)](_0x390949(0xa1));const _0x1301fa=await promptSelect(_0x390949(0x72),[_0x390949(0x81),_0x390949(0x64)]);_0x1786b=[_0x390949(0x81),_0x390949(0x64)][_0x1301fa]??_0x390949(0x81);}return{'alias':_0x24a913,'datasetCode':_0x32a53d,'datasetId':_0x4fdb2c,'operationType':_0x183a99,'functionNode':_0x1786b};}async function promptSelect(_0x9e77b5,_0x4c6d2a){const _0x32747f=a26_0x986aa1;if(_0x4c6d2a['length']===0x1)return 0x0;for(const [_0x51f300,_0x268661]of _0x4c6d2a['entries']()){process[_0x32747f(0xb7)][_0x32747f(0xa7)]('\x20\x20'+(_0x51f300+0x1)+'.\x20'+_0x268661+'\x0a');}const _0x232e15=createInterface({'input':process['stdin'],'output':process[_0x32747f(0xb7)]});while(!![]){const _0x2ec075=await new Promise(_0x2f126c=>{const _0x565bef=_0x32747f;_0x232e15[_0x565bef(0x82)](_0x9e77b5+'\x20',_0x2f126c);}),_0x4b10a5=Number['parseInt'](_0x2ec075[_0x32747f(0x90)](),0xa);if(Number[_0x32747f(0x78)](_0x4b10a5)&&_0x4b10a5>=0x1&&_0x4b10a5<=_0x4c6d2a[_0x32747f(0x99)])return _0x232e15[_0x32747f(0xb6)](),_0x4b10a5-0x1;process[_0x32747f(0xb7)][_0x32747f(0xa7)]('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x4c6d2a[_0x32747f(0x99)]+'.\x0a');}}function buildFilePath(_0x1df25a,_0x142ab8,_0x425517,_0xa17df9){const _0x1ed4ce=a26_0x986aa1;if(_0x142ab8===_0x1ed4ce(0x96)){if(!_0xa17df9)throw CliErrors[_0x1ed4ce(0xaa)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x5b5865=_0xa17df9['alias']??_0xa17df9[_0x1ed4ce(0x9e)];return join(_0x1df25a[_0x1ed4ce(0xac)],_0x1ed4ce(0x96),_0x5b5865,_0xa17df9[_0x1ed4ce(0x8b)],_0xa17df9[_0x1ed4ce(0x97)],_0x425517+_0x1ed4ce(0xb1));}return join(_0x1df25a[_0x1ed4ce(0xac)],_0x142ab8,_0x425517+_0x1ed4ce(0xb1));}export function generateTemplate(_0x7cb98d,_0xa5c7e8,_0x366949,_0x3daf6e,_0x14f8bf){const _0x5e0f53=a26_0x986aa1,_0x468a9d=_0x3daf6e?.[_0x5e0f53(0x90)]()||'TODO:\x20add\x20script\x20description';if(_0x7cb98d===_0x5e0f53(0x6e))return _0x5e0f53(0x65)+_0x468a9d+_0x5e0f53(0xa4)+_0xa5c7e8+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0xa5c7e8+_0x5e0f53(0x7f)+_0xa5c7e8+_0x5e0f53(0x9d);if(_0x7cb98d===_0x5e0f53(0x83))return _0x5e0f53(0x6a)+_0x468a9d+_0x5e0f53(0x76)+_0x366949+'/'+_0xa5c7e8+_0x5e0f53(0xb2)+_0xa5c7e8+_0x5e0f53(0x9d);if(!_0x14f8bf)throw CliErrors['validation'](_0x5e0f53(0x88));return _0x5e0f53(0xa2)+_0x468a9d+_0x5e0f53(0x71)+_0x366949+'/'+_0x14f8bf[_0x5e0f53(0x9e)]+'/'+_0x14f8bf[_0x5e0f53(0x8b)]+'\x0a\x20*\x20[触发节点]\x20'+_0x14f8bf[_0x5e0f53(0x97)]+_0x5e0f53(0x70)+_0xa5c7e8+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
1
+ const a26_0x4e2a16=a26_0x209f;(function(_0x107f4e,_0x84fd24){const _0x3e5d29=a26_0x209f,_0x2f91d7=_0x107f4e();while(!![]){try{const _0xaf1cce=parseInt(_0x3e5d29(0x89))/0x1+parseInt(_0x3e5d29(0x7e))/0x2+-parseInt(_0x3e5d29(0x9c))/0x3+parseInt(_0x3e5d29(0x8d))/0x4+parseInt(_0x3e5d29(0xbe))/0x5*(-parseInt(_0x3e5d29(0xb2))/0x6)+-parseInt(_0x3e5d29(0x98))/0x7*(-parseInt(_0x3e5d29(0xa0))/0x8)+-parseInt(_0x3e5d29(0x97))/0x9;if(_0xaf1cce===_0x84fd24)break;else _0x2f91d7['push'](_0x2f91d7['shift']());}catch(_0x21337f){_0x2f91d7['push'](_0x2f91d7['shift']());}}}(a26_0x50cc,0x1b850));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';function a26_0x50cc(){const _0x456010=['\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','datasetCode','\x22\x20not\x20found\x20for\x20dataset\x20','write','No\x20datasets\x20found\x20for\x20this\x20app.','HOOK','18buqKeb','length','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','map','\x22.\x20','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','trim','tableName','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','string','\x22\x20not\x20found.\x20','ENDPOINT','111590BqvuXh','Select\x20trigger\x20node:','.js','scriptsRootDir','stdin','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Operation\x20type\x20\x22','nonInteractive','Script\x20type','\x0a\x20*\x20[触发节点]\x20','Available:\x20','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','includes','File\x20already\x20exists:\x20','COMMON','entries','isInteger','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.',']\x20(','name','Available\x20aliases:\x20','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','308344uChFJB','Select\x20operation\x20type:','find','Trigger\x20node\x20(HOOK\x20only)','functionNode','Alias\x20\x22','description','Script\x20description','code','No\x20api.ts\x20found.\x20Run\x20`','keys','164976FUWiXJ','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','apiDir','234844UobpBe','utf8','stderr','close','operationType','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','question','bff','after','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','1659429RLvcKE','560546iuZepr','function-node','type','validation','521880EWWnde','Function\x20name\x20(valid\x20JS\x20identifier)','Invalid\x20function\x20name\x20\x22','Created\x20','16TcOwGv','create','str','Invalid\x20dataset\x20selection.','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','datasetcode','alias','appCode','before','Dataset\x20not\x20found\x20for\x20code\x20\x22','Select\x20dataset:','Operation\x20type\x20(HOOK\x20only)'];a26_0x50cc=function(){return _0x456010;};return a26_0x50cc();}import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0x4e2a16(0x94),'command':a26_0x4e2a16(0xa1),'description':a26_0x4e2a16(0x8a),'risk':a26_0x4e2a16(0xaf),'flags':[{'name':a26_0x4e2a16(0x9a),'type':a26_0x4e2a16(0xbb),'required':!![],'enum':['COMMON',a26_0x4e2a16(0xbd),a26_0x4e2a16(0xb1)],'description':a26_0x4e2a16(0xc6)},{'name':a26_0x4e2a16(0x7b),'type':a26_0x4e2a16(0xbb),'required':!![],'description':a26_0x4e2a16(0x9d)},{'name':a26_0x4e2a16(0x84),'type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0x85)},{'name':a26_0x4e2a16(0xa6),'type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0xb7)},{'name':a26_0x4e2a16(0xa5),'type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0x78)},{'name':'operation-type','type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0xab)},{'name':a26_0x4e2a16(0x99),'type':a26_0x4e2a16(0xbb),'description':a26_0x4e2a16(0x81),'enum':[a26_0x4e2a16(0xa8),a26_0x4e2a16(0x95)]}],async 'validate'(_0x2fc52c){const _0x2c24b8=a26_0x4e2a16,_0xad8674=_0x2fc52c['str'](_0x2c24b8(0x7b));if(!isValidBffFunctionName(_0xad8674))throw CliErrors['validation'](_0x2c24b8(0x9e)+_0xad8674+_0x2c24b8(0x8b));},async 'execute'(_0x10cb7e){const _0x8ccc5b=a26_0x4e2a16,_0x11e519=loadBffProjectConfig(_0x10cb7e[_0x8ccc5b(0xa7)]),_0x2b045b=_0x10cb7e['str'](_0x8ccc5b(0x9a)),_0x9fcef7=_0x10cb7e[_0x8ccc5b(0xa2)](_0x8ccc5b(0x7b)),_0x34243e=_0x10cb7e[_0x8ccc5b(0xa2)](_0x8ccc5b(0x84))||undefined,_0x30c615=_0x2b045b===_0x8ccc5b(0xb1)?await resolveHookOptions(_0x11e519,_0x10cb7e):undefined,_0xd20fe0=buildFilePath(_0x11e519,_0x2b045b,_0x9fcef7,_0x30c615);if(await fileExists(_0xd20fe0))throw CliErrors[_0x8ccc5b(0x9b)](_0x8ccc5b(0xcb)+_0xd20fe0);await mkdir(dirname(_0xd20fe0),{'recursive':!![]});const _0x46350e=generateTemplate(_0x2b045b,_0x9fcef7,_0x10cb7e[_0x8ccc5b(0xa7)],_0x34243e,_0x30c615);await writeFile(_0xd20fe0,_0x46350e,_0x8ccc5b(0x8e));const _0x888e1d={'type':_0x2b045b,'name':_0x9fcef7,'path':_0xd20fe0};if(_0x34243e)_0x888e1d['description']=_0x34243e;if(_0x30c615){if(_0x30c615[_0x8ccc5b(0xa6)])_0x888e1d['alias']=_0x30c615['alias'];_0x888e1d[_0x8ccc5b(0xad)]=_0x30c615[_0x8ccc5b(0xad)],_0x888e1d[_0x8ccc5b(0x91)]=_0x30c615[_0x8ccc5b(0x91)],_0x888e1d['functionNode']=_0x30c615['functionNode'];}return{'ok':!![],'data':_0x888e1d,'message':_0x8ccc5b(0x9f)+_0x2b045b+'\x20function:\x20'+_0x9fcef7};}};async function resolveHookOptions(_0x5f27c9,_0x4cb7e9){const _0x42b450=a26_0x4e2a16,_0x149d82=loadAliasMap(_0x4cb7e9[_0x42b450(0x8c)],undefined,resolveApiFilePath(_0x4cb7e9[_0x42b450(0x8c)],_0x4cb7e9[_0x42b450(0xa7)])),_0x176d77=_0x149d82['length']>0x0;let _0x2a43e9,_0x46b2d8,_0x46eb80;const _0x19a7e5=_0x4cb7e9[_0x42b450(0xa2)]('alias'),_0x26fae0=_0x4cb7e9[_0x42b450(0xa2)]('datasetcode');if(_0x19a7e5){const _0x3b8ec4=resolveAlias(_0x4cb7e9[_0x42b450(0x8c)],_0x19a7e5,undefined,resolveApiFilePath(_0x4cb7e9[_0x42b450(0x8c)],_0x4cb7e9[_0x42b450(0xa7)]));if(!_0x3b8ec4){const _0x366b0d=_0x176d77?_0x42b450(0x7c)+_0x149d82['map'](_0x2136ba=>_0x2136ba[_0x42b450(0xa6)])['join'](',\x20'):_0x42b450(0x87)+CLI_BIN_NAME+_0x42b450(0xc9);throw CliErrors[_0x42b450(0x9b)](_0x42b450(0x83)+_0x19a7e5+_0x42b450(0xbc)+_0x366b0d);}_0x2a43e9=_0x19a7e5,_0x46b2d8=_0x3b8ec4;}else{if(_0x26fae0){_0x46b2d8=_0x26fae0;const _0x1e08b9=_0x149d82[_0x42b450(0x80)](_0x33ae4e=>_0x33ae4e[_0x42b450(0xad)]===_0x26fae0);_0x2a43e9=_0x1e08b9?.[_0x42b450(0xa6)];}else{if(_0x4cb7e9['nonInteractive'])throw CliErrors[_0x42b450(0x9b)]('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x176d77){const _0x1f9f72=_0x149d82[_0x42b450(0xb5)](_0x60a0ad=>_0x60a0ad[_0x42b450(0xa6)]+'\x20('+_0x60a0ad[_0x42b450(0xb9)]+')'),_0x1a3513=await promptSelect(_0x42b450(0xaa),_0x1f9f72),_0x59de1d=_0x149d82[_0x1a3513];if(!_0x59de1d)throw CliErrors[_0x42b450(0x9b)]('Invalid\x20dataset\x20selection.');_0x2a43e9=_0x59de1d[_0x42b450(0xa6)],_0x46b2d8=_0x59de1d[_0x42b450(0xad)];}else{const _0x19e094=await listDatasets(_0x4cb7e9['appCode']);if(_0x19e094[_0x42b450(0xb3)]===0x0)throw CliErrors[_0x42b450(0x9b)](_0x42b450(0xb0));const _0x5f53fe=_0x19e094[_0x42b450(0xb5)](_0x425615=>_0x425615[_0x42b450(0x7b)]+'\x20['+(_0x425615['source']??'UNKNOWN')+_0x42b450(0x7a)+_0x425615[_0x42b450(0x86)]+')'),_0x40452c=await promptSelect(_0x42b450(0xaa),_0x5f53fe),_0x4ed4db=_0x19e094[_0x40452c];if(!_0x4ed4db)throw CliErrors[_0x42b450(0x9b)](_0x42b450(0xa3));_0x46b2d8=_0x4ed4db[_0x42b450(0x86)],_0x2a43e9=undefined;}}}}const _0x1e95d7=await listDatasets(_0x4cb7e9[_0x42b450(0xa7)]),_0x391771=_0x1e95d7[_0x42b450(0x80)](_0x5f4ebb=>_0x5f4ebb[_0x42b450(0x86)]===_0x46b2d8);if(!_0x391771)throw CliErrors[_0x42b450(0x9b)](_0x42b450(0xa9)+_0x46b2d8+_0x42b450(0xb6)+(_0x2a43e9?_0x42b450(0x7d)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x46eb80=_0x391771['id'];const _0xf3c5fb=_0x2a43e9??_0x46b2d8,_0x553a6b=await listBffDatasetOperations(_0x4cb7e9[_0x42b450(0xa7)],_0x46eb80),_0x573f13=_0x553a6b?Object[_0x42b450(0x88)](_0x553a6b):[];if(_0x573f13[_0x42b450(0xb3)]===0x0)throw CliErrors['validation']('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0xf3c5fb+'.');let _0x30ac32;const _0x58c0dd=_0x4cb7e9[_0x42b450(0xa2)]('operation-type');if(_0x58c0dd){if(!_0x573f13[_0x42b450(0xca)](_0x58c0dd))throw CliErrors['validation'](_0x42b450(0xc4)+_0x58c0dd+_0x42b450(0xae)+_0xf3c5fb+'.\x20'+(_0x42b450(0xc8)+_0x573f13['join'](',\x20')));_0x30ac32=_0x58c0dd;}else{if(_0x4cb7e9[_0x42b450(0xc5)])throw CliErrors['validation']('--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x1468ef=await promptSelect(_0x42b450(0x7f),_0x573f13);_0x30ac32=_0x573f13[_0x1468ef]??_0x573f13[0x0];}let _0x11cbae=normalizeHookFunctionNode(_0x4cb7e9[_0x42b450(0xa2)](_0x42b450(0x99)));if(!_0x11cbae){if(_0x4cb7e9[_0x42b450(0xa2)](_0x42b450(0x99)))throw CliErrors[_0x42b450(0x9b)](_0x42b450(0x79));if(_0x4cb7e9[_0x42b450(0xc5)])throw CliErrors['validation'](_0x42b450(0xc3));const _0x519d0a=await promptSelect(_0x42b450(0xbf),[_0x42b450(0xa8),_0x42b450(0x95)]);_0x11cbae=[_0x42b450(0xa8),'after'][_0x519d0a]??_0x42b450(0xa8);}return{'alias':_0x2a43e9,'datasetCode':_0x46b2d8,'datasetId':_0x46eb80,'operationType':_0x30ac32,'functionNode':_0x11cbae};}async function promptSelect(_0x484a0d,_0x3d84c8){const _0x2417ba=a26_0x4e2a16;if(_0x3d84c8['length']===0x1)return 0x0;for(const [_0x3ba461,_0x9eec80]of _0x3d84c8[_0x2417ba(0xcd)]()){process[_0x2417ba(0x8f)][_0x2417ba(0xaf)]('\x20\x20'+(_0x3ba461+0x1)+'.\x20'+_0x9eec80+'\x0a');}const _0x46c3f6=createInterface({'input':process[_0x2417ba(0xc2)],'output':process[_0x2417ba(0x8f)]});while(!![]){const _0x5b5952=await new Promise(_0x42b5b1=>{const _0x18d5c0=_0x2417ba;_0x46c3f6[_0x18d5c0(0x93)](_0x484a0d+'\x20',_0x42b5b1);}),_0x17a2ee=Number['parseInt'](_0x5b5952['trim'](),0xa);if(Number[_0x2417ba(0xce)](_0x17a2ee)&&_0x17a2ee>=0x1&&_0x17a2ee<=_0x3d84c8['length'])return _0x46c3f6[_0x2417ba(0x90)](),_0x17a2ee-0x1;process[_0x2417ba(0x8f)][_0x2417ba(0xaf)]('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x3d84c8['length']+'.\x0a');}}function a26_0x209f(_0x1c2004,_0x478a81){_0x1c2004=_0x1c2004-0x77;const _0x50cc7d=a26_0x50cc();let _0x209f7b=_0x50cc7d[_0x1c2004];return _0x209f7b;}function buildFilePath(_0x3bc7e8,_0x4f779d,_0xed7c78,_0x5c3bc6){const _0x4cd5e2=a26_0x4e2a16;if(_0x4f779d===_0x4cd5e2(0xb1)){if(!_0x5c3bc6)throw CliErrors[_0x4cd5e2(0x9b)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x2e0953=_0x5c3bc6[_0x4cd5e2(0xa6)]??_0x5c3bc6['datasetCode'];return join(_0x3bc7e8[_0x4cd5e2(0xc1)],_0x4cd5e2(0xb1),_0x2e0953,_0x5c3bc6[_0x4cd5e2(0x91)],_0x5c3bc6[_0x4cd5e2(0x82)],_0xed7c78+'.js');}return join(_0x3bc7e8[_0x4cd5e2(0xc1)],_0x4f779d,_0xed7c78+_0x4cd5e2(0xc0));}export function generateTemplate(_0x3acd0b,_0x2b9e85,_0x441a9f,_0x3338a9,_0x3cae28){const _0x4537df=a26_0x4e2a16,_0x251724=_0x3338a9?.[_0x4537df(0xb8)]()||'TODO:\x20add\x20script\x20description';if(_0x3acd0b===_0x4537df(0xcc))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x251724+'\x0a\x20*\x20[脚本名称]\x20'+_0x2b9e85+_0x4537df(0xac)+_0x2b9e85+'.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'+_0x2b9e85+_0x4537df(0xa4);if(_0x3acd0b==='ENDPOINT')return _0x4537df(0xba)+_0x251724+_0x4537df(0x92)+_0x441a9f+'/'+_0x2b9e85+'\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'+_0x2b9e85+_0x4537df(0xa4);if(!_0x3cae28)throw CliErrors['validation'](_0x4537df(0xb4));return _0x4537df(0x77)+_0x251724+_0x4537df(0x96)+_0x441a9f+'/'+_0x3cae28['datasetCode']+'/'+_0x3cae28[_0x4537df(0x91)]+_0x4537df(0xc7)+_0x3cae28[_0x4537df(0x82)]+'\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'+_0x2b9e85+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
@@ -1 +1 @@
1
- const a27_0x3cee9b=a27_0x43bd;(function(_0x263c38,_0x21f9b4){const _0x55092d=a27_0x43bd,_0x4f8364=_0x263c38();while(!![]){try{const _0x1c20d2=-parseInt(_0x55092d(0x205))/0x1*(-parseInt(_0x55092d(0x202))/0x2)+parseInt(_0x55092d(0x20d))/0x3+-parseInt(_0x55092d(0x1ed))/0x4*(parseInt(_0x55092d(0x212))/0x5)+-parseInt(_0x55092d(0x1f6))/0x6*(parseInt(_0x55092d(0x1ff))/0x7)+-parseInt(_0x55092d(0x1f9))/0x8*(parseInt(_0x55092d(0x1ef))/0x9)+-parseInt(_0x55092d(0x1e2))/0xa+parseInt(_0x55092d(0x1fd))/0xb;if(_0x1c20d2===_0x21f9b4)break;else _0x4f8364['push'](_0x4f8364['shift']());}catch(_0x2b572f){_0x4f8364['push'](_0x4f8364['shift']());}}}(a27_0x2fa2,0xa9f9c));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';function a27_0x43bd(_0x7e81c9,_0x169533){_0x7e81c9=_0x7e81c9-0x1e1;const _0x2fa2ff=a27_0x2fa2();let _0x43bd79=_0x2fa2ff[_0x7e81c9];return _0x43bd79;}import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x3cee9b(0x211),'command':a27_0x3cee9b(0x1e9),'description':a27_0x3cee9b(0x1e6),'risk':a27_0x3cee9b(0x206),'flags':[{'name':'target','type':'string','required':!![],'description':a27_0x3cee9b(0x20c)}],async 'validate'(_0x26e4a1){const _0x5734c8=a27_0x3cee9b,_0x36bdc7=loadBffProjectConfig(_0x26e4a1['appCode']),_0xb824c=await readBffLockFile(_0x36bdc7[_0x5734c8(0x1eb)]);if(!_0xb824c)throw CliErrors[_0x5734c8(0x1fe)](_0x5734c8(0x1f4));},async 'dryRun'(_0x15e287){const _0x159541=a27_0x3cee9b,_0x329728=loadBffProjectConfig(_0x15e287[_0x159541(0x1f8)]),_0x42ccea=await readBffLockFile(_0x329728[_0x159541(0x1eb)]);if(!_0x42ccea)throw CliErrors[_0x159541(0x1fe)](_0x159541(0x1f7));const {appLock:_0x321867}=ensureLockScope(_0x42ccea,_0x15e287[_0x159541(0x1f8)],_0x329728[_0x159541(0x1ee)],_0x159541(0x1e9)),_0x266d7c=_0x15e287['str'](_0x159541(0x20e)),_0x29383b=Object[_0x159541(0x20b)](_0x321867[_0x159541(0x204)]),_0x5af41a=resolveDeleteTarget(_0x266d7c,_0x29383b),_0x513647=_0x321867['functions'][_0x5af41a];if(!_0x513647)throw CliErrors[_0x159541(0x1fe)](_0x159541(0x210)+_0x5af41a+'\x22.');const _0x1ece32=resolveLocalFilePathFromLockKey(_0x329728,_0x5af41a),_0x224cf1=relative(_0x329728['projectRoot'],_0x1ece32),_0x532cc7=join(_0x329728['trashDir'],_0x159541(0x1fa),_0x224cf1);return{'method':_0x159541(0x1e4),'url':_0x159541(0x1e8),'body':{'appCode':_0x15e287[_0x159541(0x1f8)],'target':_0x5af41a,'remoteId':_0x513647[_0x159541(0x1fc)],'localFilePath':_0x1ece32,'trashedPath':_0x532cc7},'description':'Would\x20delete\x20'+_0x5af41a+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'};},async 'execute'(_0x21160c){const _0x545671=a27_0x3cee9b,_0x97dbc1=loadBffProjectConfig(_0x21160c[_0x545671(0x1f8)]),_0x38d809=await readBffLockFile(_0x97dbc1['lockFilePath']);if(!_0x38d809)throw CliErrors['validation'](_0x545671(0x1f7));const {lockData:_0x5e1cdc,appLock:_0x5a4f61}=ensureLockScope(_0x38d809,_0x21160c['appCode'],_0x97dbc1['scriptsRoot'],_0x545671(0x1e9)),_0x25eaa9=JSON[_0x545671(0x1fb)](JSON[_0x545671(0x207)](_0x5e1cdc)),_0x2f9d62=_0x25eaa9['apps'][_0x21160c[_0x545671(0x1f8)]];if(!_0x2f9d62)throw new Error(_0x545671(0x1f1)+_0x21160c['appCode']+_0x545671(0x1f3));const _0x33c192=_0x21160c[_0x545671(0x1f5)](_0x545671(0x20e)),_0x1c5f1d=Object[_0x545671(0x20b)](_0x2f9d62[_0x545671(0x204)]),_0x2f1761=resolveDeleteTarget(_0x33c192,_0x1c5f1d),_0x572946=_0x2f9d62[_0x545671(0x204)][_0x2f1761];if(!_0x572946)throw CliErrors[_0x545671(0x1fe)](_0x545671(0x210)+_0x2f1761+'\x22.');await deleteBffScript(_0x572946['remoteId']),delete _0x2f9d62['functions'][_0x2f1761],_0x2f9d62['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x97dbc1['lockFilePath'],_0x25eaa9);const _0x591bc2=resolveLocalFilePathFromLockKey(_0x97dbc1,_0x2f1761);let _0x5e7309;await fileExists(_0x591bc2)&&(_0x5e7309=await moveToTrash(_0x97dbc1['projectRoot'],_0x97dbc1['trashDir'],_0x591bc2),await cleanupEmptyDirectories(dirname(_0x591bc2),_0x97dbc1[_0x545671(0x1ec)]));await waitForDeleteSettlement(_0x97dbc1['lockFilePath'],_0x21160c[_0x545671(0x1f8)],_0x2f1761,_0x591bc2),await sleep(0x96);const _0x12cfb8={'deleted':_0x2f1761,'remoteId':_0x572946[_0x545671(0x1fc)]};if(_0x5e7309)_0x12cfb8['trashedTo']=_0x5e7309;return{'ok':!![],'data':_0x12cfb8,'message':_0x545671(0x203)+_0x2f1761+(_0x5e7309?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function resolveDeleteTarget(_0x2e05d0,_0x311a7f){const _0x2d7387=a27_0x3cee9b;if(_0x2e05d0[_0x2d7387(0x208)]('/')){const _0x4ff8e7=_0x311a7f['find'](_0x497746=>_0x497746===_0x2e05d0);if(!_0x4ff8e7)throw CliErrors['validation']('Function\x20not\x20found:\x20'+_0x2e05d0);return _0x4ff8e7;}const _0x415bb1=_0x311a7f[_0x2d7387(0x209)](_0x566c82=>_0x566c82[_0x2d7387(0x201)]('/')['at'](-0x1)===_0x2e05d0);if(_0x415bb1[_0x2d7387(0x20f)]===0x0)throw CliErrors[_0x2d7387(0x1fe)](_0x2d7387(0x1e3)+_0x2e05d0);if(_0x415bb1[_0x2d7387(0x20f)]>0x1)throw CliErrors[_0x2d7387(0x1fe)](_0x2d7387(0x1f2)+_0x2e05d0+_0x2d7387(0x20a)+_0x415bb1['map'](_0x215975=>_0x2d7387(0x1ea)+_0x215975)[_0x2d7387(0x1e5)]('\x0a'));return _0x415bb1[0x0];}async function moveToTrash(_0x45e271,_0x16e2a5,_0x4bb44f){const _0x5db316=a27_0x3cee9b,_0x234759=new Date()[_0x5db316(0x200)]()[_0x5db316(0x1e1)](/[:.]/g,'-'),_0x162465=relative(_0x45e271,_0x4bb44f),_0x4c26b8=join(_0x16e2a5,_0x234759,_0x162465);return await mkdir(dirname(_0x4c26b8),{'recursive':!![]}),await rename(_0x4bb44f,_0x4c26b8),_0x4c26b8;}async function cleanupEmptyDirectories(_0x33af36,_0x300c48){const _0x27123a=a27_0x3cee9b;let _0x1f1d29=resolve(_0x33af36);const _0x12cd28=resolve(_0x300c48);while(_0x1f1d29[_0x27123a(0x1f0)](''+_0x12cd28+sep)||_0x1f1d29===_0x12cd28){if(_0x1f1d29===_0x12cd28)return;try{const _0x5b7dbf=await readdir(_0x1f1d29);if(_0x5b7dbf[_0x27123a(0x20f)]>0x0)return;await rmdir(_0x1f1d29);}catch{return;}_0x1f1d29=dirname(_0x1f1d29);}}function a27_0x2fa2(){const _0x4a86d1=['12313LHnSLi','toISOString','split','11392NqJpem','Deleted\x20','functions','82hoYFsr','high-risk-write','stringify','includes','filter','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','keys','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','1411473XozqOu','target','length','No\x20lock\x20entry\x20found\x20for\x20\x22','bff','5ApQVrw','replace','9547000BBKZlm','Function\x20not\x20found:\x20','POST','join','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','Local\x20delete\x20not\x20settled\x20for\x20','/api/management/library/scripts/delete','delete','\x20\x20-\x20','lockFilePath','scriptsRootDir','5328340XzuJJL','scriptsRoot','1392777VBtGlV','startsWith','Lock\x20scope\x20for\x20app\x20\x22','Multiple\x20functions\x20match\x20\x22','\x22\x20not\x20found\x20after\x20ensureLockScope.','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','str','2046GHrOYU','BFF\x20lock\x20file\x20not\x20found.','appCode','64GMmoaw','<timestamp>','parse','remoteId','42716135iSRKjJ','validation'];a27_0x2fa2=function(){return _0x4a86d1;};return a27_0x2fa2();}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x5d8294,_0x3a0981,_0x50c9db,_0x2e0876){const _0x36d475=a27_0x3cee9b;for(let _0x5dd3f4=0x0;_0x5dd3f4<DELETE_SETTLE_RETRY_COUNT;_0x5dd3f4+=0x1){const _0x4c7ca8=await readBffLockFile(_0x5d8294),_0x5e1ef9=!!_0x4c7ca8?.['apps']?.[_0x3a0981]?.['functions']?.[_0x50c9db],_0x450ee3=await fileExists(_0x2e0876);if(!_0x5e1ef9&&!_0x450ee3)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x36d475(0x1e7)+_0x50c9db+'.');}
1
+ const a27_0x309506=a27_0x3150;(function(_0x1e6d99,_0x529b6c){const _0x28da26=a27_0x3150,_0x706093=_0x1e6d99();while(!![]){try{const _0x1844d5=-parseInt(_0x28da26(0x1ce))/0x1*(-parseInt(_0x28da26(0x1e0))/0x2)+-parseInt(_0x28da26(0x1b8))/0x3+parseInt(_0x28da26(0x1dc))/0x4*(parseInt(_0x28da26(0x1df))/0x5)+parseInt(_0x28da26(0x1cd))/0x6+parseInt(_0x28da26(0x1c5))/0x7+parseInt(_0x28da26(0x1b9))/0x8*(parseInt(_0x28da26(0x1bb))/0x9)+-parseInt(_0x28da26(0x1d8))/0xa*(parseInt(_0x28da26(0x1cb))/0xb);if(_0x1844d5===_0x529b6c)break;else _0x706093['push'](_0x706093['shift']());}catch(_0x36ab47){_0x706093['push'](_0x706093['shift']());}}}(a27_0x543f,0x21577));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';function a27_0x543f(){const _0x2dcb62=['Would\x20delete\x20','POST','lockFilePath','7412HCCHEw','filter','Lock\x20scope\x20for\x20app\x20\x22','15SBXDCz','4FRMBqQ','lastSync','scriptsRootDir','string','keys','appCode','projectRoot','trashDir','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','functions','\x20\x20-\x20','startsWith','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','Deleted\x20','length','Function\x20not\x20found:\x20','467775wHGynS','1341608gPrrCm','stringify','9zshydO','scriptsRoot','\x20(local\x20file\x20moved\x20to\x20trash)','replace','find','BFF\x20lock\x20file\x20not\x20found.','parse','toISOString','split','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','16968qQDnOU','<timestamp>','includes','map','delete','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','22nueeNb','\x22\x20not\x20found\x20after\x20ensureLockScope.','1191456jioDUg','67323BChggp','trashedTo','No\x20lock\x20entry\x20found\x20for\x20\x22','validation','high-risk-write','target','apps','remoteId','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','bff','1082070EXzZnR'];a27_0x543f=function(){return _0x2dcb62;};return a27_0x543f();}import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';function a27_0x3150(_0x5868da,_0x2ba5df){_0x5868da=_0x5868da-0x1ac;const _0x543f96=a27_0x543f();let _0x3150f1=_0x543f96[_0x5868da];return _0x3150f1;}import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x309506(0x1d7),'command':a27_0x309506(0x1c9),'description':a27_0x309506(0x1ca),'risk':a27_0x309506(0x1d2),'flags':[{'name':a27_0x309506(0x1d3),'type':a27_0x309506(0x1e3),'required':!![],'description':a27_0x309506(0x1b0)}],async 'validate'(_0x8b3d14){const _0x240d86=a27_0x309506,_0x209fa5=loadBffProjectConfig(_0x8b3d14[_0x240d86(0x1ad)]),_0xaff34b=await readBffLockFile(_0x209fa5[_0x240d86(0x1db)]);if(!_0xaff34b)throw CliErrors[_0x240d86(0x1d1)](_0x240d86(0x1c4));},async 'dryRun'(_0x5cff82){const _0x210477=a27_0x309506,_0x390851=loadBffProjectConfig(_0x5cff82[_0x210477(0x1ad)]),_0x54fa23=await readBffLockFile(_0x390851['lockFilePath']);if(!_0x54fa23)throw CliErrors[_0x210477(0x1d1)](_0x210477(0x1c0));const {appLock:_0x33ab4f}=ensureLockScope(_0x54fa23,_0x5cff82[_0x210477(0x1ad)],_0x390851[_0x210477(0x1bc)],'delete'),_0x1fda40=_0x5cff82['str'](_0x210477(0x1d3)),_0x27dae4=Object[_0x210477(0x1ac)](_0x33ab4f[_0x210477(0x1b1)]),_0xfdf47c=resolveDeleteTarget(_0x1fda40,_0x27dae4),_0x58b2a6=_0x33ab4f[_0x210477(0x1b1)][_0xfdf47c];if(!_0x58b2a6)throw CliErrors[_0x210477(0x1d1)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0xfdf47c+'\x22.');const _0x374406=resolveLocalFilePathFromLockKey(_0x390851,_0xfdf47c),_0x49863c=relative(_0x390851[_0x210477(0x1ae)],_0x374406),_0x1492ec=join(_0x390851[_0x210477(0x1af)],_0x210477(0x1c6),_0x49863c);return{'method':_0x210477(0x1da),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x5cff82[_0x210477(0x1ad)],'target':_0xfdf47c,'remoteId':_0x58b2a6[_0x210477(0x1d5)],'localFilePath':_0x374406,'trashedPath':_0x1492ec},'description':_0x210477(0x1d9)+_0xfdf47c+_0x210477(0x1d6)};},async 'execute'(_0x383d16){const _0x54801f=a27_0x309506,_0x1cb534=loadBffProjectConfig(_0x383d16[_0x54801f(0x1ad)]),_0x4c92f8=await readBffLockFile(_0x1cb534['lockFilePath']);if(!_0x4c92f8)throw CliErrors['validation'](_0x54801f(0x1c0));const {lockData:_0x5446c1,appLock:_0x2c42c9}=ensureLockScope(_0x4c92f8,_0x383d16[_0x54801f(0x1ad)],_0x1cb534[_0x54801f(0x1bc)],_0x54801f(0x1c9)),_0x20428d=JSON[_0x54801f(0x1c1)](JSON[_0x54801f(0x1ba)](_0x5446c1)),_0x4c0b5c=_0x20428d[_0x54801f(0x1d4)][_0x383d16[_0x54801f(0x1ad)]];if(!_0x4c0b5c)throw new Error(_0x54801f(0x1de)+_0x383d16['appCode']+_0x54801f(0x1cc));const _0x3f893e=_0x383d16['str'](_0x54801f(0x1d3)),_0x2cda9d=Object[_0x54801f(0x1ac)](_0x4c0b5c[_0x54801f(0x1b1)]),_0xb0f17d=resolveDeleteTarget(_0x3f893e,_0x2cda9d),_0x4c1803=_0x4c0b5c[_0x54801f(0x1b1)][_0xb0f17d];if(!_0x4c1803)throw CliErrors[_0x54801f(0x1d1)](_0x54801f(0x1d0)+_0xb0f17d+'\x22.');await deleteBffScript(_0x4c1803['remoteId']),delete _0x4c0b5c['functions'][_0xb0f17d],_0x4c0b5c[_0x54801f(0x1e1)]=new Date()[_0x54801f(0x1c2)](),await writeBffLockFile(_0x1cb534['lockFilePath'],_0x20428d);const _0x24e9bb=resolveLocalFilePathFromLockKey(_0x1cb534,_0xb0f17d);let _0x348e87;await fileExists(_0x24e9bb)&&(_0x348e87=await moveToTrash(_0x1cb534[_0x54801f(0x1ae)],_0x1cb534[_0x54801f(0x1af)],_0x24e9bb),await cleanupEmptyDirectories(dirname(_0x24e9bb),_0x1cb534[_0x54801f(0x1e2)]));await waitForDeleteSettlement(_0x1cb534[_0x54801f(0x1db)],_0x383d16[_0x54801f(0x1ad)],_0xb0f17d,_0x24e9bb),await sleep(0x96);const _0x43bb9b={'deleted':_0xb0f17d,'remoteId':_0x4c1803[_0x54801f(0x1d5)]};if(_0x348e87)_0x43bb9b[_0x54801f(0x1cf)]=_0x348e87;return{'ok':!![],'data':_0x43bb9b,'message':_0x54801f(0x1b5)+_0xb0f17d+(_0x348e87?_0x54801f(0x1bd):'')};}};function resolveDeleteTarget(_0x55ad02,_0x359c27){const _0x1bceb7=a27_0x309506;if(_0x55ad02[_0x1bceb7(0x1c7)]('/')){const _0x4cdffe=_0x359c27[_0x1bceb7(0x1bf)](_0x1ced06=>_0x1ced06===_0x55ad02);if(!_0x4cdffe)throw CliErrors[_0x1bceb7(0x1d1)](_0x1bceb7(0x1b7)+_0x55ad02);return _0x4cdffe;}const _0x1147a0=_0x359c27[_0x1bceb7(0x1dd)](_0xdfea8e=>_0xdfea8e[_0x1bceb7(0x1c3)]('/')['at'](-0x1)===_0x55ad02);if(_0x1147a0[_0x1bceb7(0x1b6)]===0x0)throw CliErrors['validation'](_0x1bceb7(0x1b7)+_0x55ad02);if(_0x1147a0[_0x1bceb7(0x1b6)]>0x1)throw CliErrors[_0x1bceb7(0x1d1)]('Multiple\x20functions\x20match\x20\x22'+_0x55ad02+_0x1bceb7(0x1b4)+_0x1147a0[_0x1bceb7(0x1c8)](_0x4f251d=>_0x1bceb7(0x1b2)+_0x4f251d)['join']('\x0a'));return _0x1147a0[0x0];}async function moveToTrash(_0x3a269a,_0x52bb9b,_0x298fe9){const _0x5aa550=a27_0x309506,_0x1d296c=new Date()[_0x5aa550(0x1c2)]()[_0x5aa550(0x1be)](/[:.]/g,'-'),_0x20551e=relative(_0x3a269a,_0x298fe9),_0x483ed8=join(_0x52bb9b,_0x1d296c,_0x20551e);return await mkdir(dirname(_0x483ed8),{'recursive':!![]}),await rename(_0x298fe9,_0x483ed8),_0x483ed8;}async function cleanupEmptyDirectories(_0x254ffb,_0x5c19ef){const _0x586ac0=a27_0x309506;let _0x45c47d=resolve(_0x254ffb);const _0x130f0a=resolve(_0x5c19ef);while(_0x45c47d[_0x586ac0(0x1b3)](''+_0x130f0a+sep)||_0x45c47d===_0x130f0a){if(_0x45c47d===_0x130f0a)return;try{const _0x57200d=await readdir(_0x45c47d);if(_0x57200d[_0x586ac0(0x1b6)]>0x0)return;await rmdir(_0x45c47d);}catch{return;}_0x45c47d=dirname(_0x45c47d);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x191984,_0x50211a,_0xff6983,_0x5f31b4){const _0x548d47=a27_0x309506;for(let _0x3654c8=0x0;_0x3654c8<DELETE_SETTLE_RETRY_COUNT;_0x3654c8+=0x1){const _0x4fc00e=await readBffLockFile(_0x191984),_0x3bdc18=!!_0x4fc00e?.[_0x548d47(0x1d4)]?.[_0x50211a]?.['functions']?.[_0xff6983],_0x21e1ff=await fileExists(_0x5f31b4);if(!_0x3bdc18&&!_0x21e1ff)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error('Local\x20delete\x20not\x20settled\x20for\x20'+_0xff6983+'.');}
@@ -1 +1 @@
1
- const a28_0x36f388=a28_0x16e5;function a28_0x16e5(_0x554b97,_0x388b21){_0x554b97=_0x554b97-0x1a7;const _0xf2a9cc=a28_0xf2a9();let _0x16e592=_0xf2a9cc[_0x554b97];return _0x16e592;}(function(_0x2dbd00,_0xfc0a6b){const _0x5c15bd=a28_0x16e5,_0x2df321=_0x2dbd00();while(!![]){try{const _0x55218e=-parseInt(_0x5c15bd(0x1b4))/0x1+-parseInt(_0x5c15bd(0x1b1))/0x2*(parseInt(_0x5c15bd(0x1bb))/0x3)+parseInt(_0x5c15bd(0x1a7))/0x4*(-parseInt(_0x5c15bd(0x1bd))/0x5)+parseInt(_0x5c15bd(0x1a9))/0x6*(parseInt(_0x5c15bd(0x1c1))/0x7)+-parseInt(_0x5c15bd(0x1af))/0x8*(parseInt(_0x5c15bd(0x1ba))/0x9)+parseInt(_0x5c15bd(0x1bc))/0xa*(-parseInt(_0x5c15bd(0x1ad))/0xb)+parseInt(_0x5c15bd(0x1b6))/0xc;if(_0x55218e===_0xfc0a6b)break;else _0x2df321['push'](_0x2df321['shift']());}catch(_0x1fa710){_0x2df321['push'](_0x2df321['shift']());}}}(a28_0xf2a9,0x29ea9));function a28_0xf2a9(){const _0x10a849=['47935Kmothh','num','boolean','scriptContent','375571TiXhbA','4Ragsrd','number','30aGjKCG','appCode','Return\x20full\x20raw\x20script\x20object','description','479666elqlGH','bool','851464VtZDjW','verbose','1618Rbknqk','bff','read','92479pWhIrv','Script\x20ID','5235252hPhAOL','detail','updatedTime','scriptType','27uSXBoa','90ELeLOB','20NYWQgQ'];a28_0xf2a9=function(){return _0x10a849;};return a28_0xf2a9();}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x36f388(0x1b2),'command':a28_0x36f388(0x1b7),'description':'Get\x20BFF\x20script\x20details\x20by\x20ID','risk':a28_0x36f388(0x1b3),'flags':[{'name':'id','type':a28_0x36f388(0x1a8),'required':!![],'description':a28_0x36f388(0x1b5)},{'name':a28_0x36f388(0x1b0),'type':a28_0x36f388(0x1bf),'description':a28_0x36f388(0x1ab)}],async 'execute'(_0x2ee158){const _0x2f6cf2=a28_0x36f388,_0x5ad642=await getBffScriptInfo(_0x2ee158[_0x2f6cf2(0x1be)]('id')),_0x27b551=_0x2ee158[_0x2f6cf2(0x1ae)]('verbose');if(_0x27b551)return{'ok':!![],'data':_0x5ad642};return{'ok':!![],'data':{'id':_0x5ad642['id'],'appCode':_0x5ad642[_0x2f6cf2(0x1aa)],'scriptType':_0x5ad642[_0x2f6cf2(0x1b9)],'description':_0x5ad642[_0x2f6cf2(0x1ac)]||'(none)','createdTime':_0x5ad642['createdTime']??'','updatedTime':_0x5ad642[_0x2f6cf2(0x1b8)]??'','scriptContent':_0x5ad642[_0x2f6cf2(0x1c0)]??''}};}};
1
+ const a28_0x1b3fa4=a28_0x1eb5;function a28_0x2679(){const _0x1cc260=['createdTime','7762509qsHDEe','updatedTime','bool','6492FeIAil','appCode','scriptContent','bff','1081110KdNRLh','number','num','boolean','Script\x20ID','10iRHLyf','3801133WUNwcl','verbose','75536AuZSDq','Get\x20BFF\x20script\x20details\x20by\x20ID','4939712IQJakQ','detail','740797AdHvhk','read','scriptType','558FplGYt','Return\x20full\x20raw\x20script\x20object'];a28_0x2679=function(){return _0x1cc260;};return a28_0x2679();}(function(_0x4f4012,_0x751a87){const _0x4e32b3=a28_0x1eb5,_0xeec687=_0x4f4012();while(!![]){try{const _0x488153=parseInt(_0x4e32b3(0x1d4))/0x1+-parseInt(_0x4e32b3(0x1be))/0x2*(-parseInt(_0x4e32b3(0x1c4))/0x3)+parseInt(_0x4e32b3(0x1d0))/0x4+-parseInt(_0x4e32b3(0x1cd))/0x5*(parseInt(_0x4e32b3(0x1c8))/0x6)+-parseInt(_0x4e32b3(0x1ce))/0x7+-parseInt(_0x4e32b3(0x1d2))/0x8+parseInt(_0x4e32b3(0x1c1))/0x9;if(_0x488153===_0x751a87)break;else _0xeec687['push'](_0xeec687['shift']());}catch(_0x34c010){_0xeec687['push'](_0xeec687['shift']());}}}(a28_0x2679,0xac23d));function a28_0x1eb5(_0x354534,_0x21cc7c){_0x354534=_0x354534-0x1bc;const _0x2679ff=a28_0x2679();let _0x1eb5a2=_0x2679ff[_0x354534];return _0x1eb5a2;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x1b3fa4(0x1c7),'command':a28_0x1b3fa4(0x1d3),'description':a28_0x1b3fa4(0x1d1),'risk':a28_0x1b3fa4(0x1bc),'flags':[{'name':'id','type':a28_0x1b3fa4(0x1c9),'required':!![],'description':a28_0x1b3fa4(0x1cc)},{'name':'verbose','type':a28_0x1b3fa4(0x1cb),'description':a28_0x1b3fa4(0x1bf)}],async 'execute'(_0x4a3484){const _0x4573ce=a28_0x1b3fa4,_0x4cd1ab=await getBffScriptInfo(_0x4a3484[_0x4573ce(0x1ca)]('id')),_0x3fc3e8=_0x4a3484[_0x4573ce(0x1c3)](_0x4573ce(0x1cf));if(_0x3fc3e8)return{'ok':!![],'data':_0x4cd1ab};return{'ok':!![],'data':{'id':_0x4cd1ab['id'],'appCode':_0x4cd1ab[_0x4573ce(0x1c5)],'scriptType':_0x4cd1ab[_0x4573ce(0x1bd)],'description':_0x4cd1ab['description']||'(none)','createdTime':_0x4cd1ab[_0x4573ce(0x1c0)]??'','updatedTime':_0x4cd1ab[_0x4573ce(0x1c2)]??'','scriptContent':_0x4cd1ab[_0x4573ce(0x1c6)]??''}};}};
@@ -1 +1 @@
1
- function a29_0x56fa(_0x25896c,_0x18f9d1){_0x25896c=_0x25896c-0xee;const _0xac748=a29_0xac74();let _0x56fab0=_0xac748[_0x25896c];return _0x56fab0;}(function(_0x3275cc,_0x11dba7){const _0x297f91=a29_0x56fa,_0x2bc2e3=_0x3275cc();while(!![]){try{const _0x1a52b5=parseInt(_0x297f91(0xf0))/0x1+-parseInt(_0x297f91(0xf7))/0x2*(parseInt(_0x297f91(0xef))/0x3)+parseInt(_0x297f91(0xf4))/0x4*(parseInt(_0x297f91(0xf5))/0x5)+-parseInt(_0x297f91(0xf3))/0x6*(parseInt(_0x297f91(0xf2))/0x7)+-parseInt(_0x297f91(0xf6))/0x8+-parseInt(_0x297f91(0xf1))/0x9+parseInt(_0x297f91(0xee))/0xa;if(_0x1a52b5===_0x11dba7)break;else _0x2bc2e3['push'](_0x2bc2e3['shift']());}catch(_0x4e906b){_0x2bc2e3['push'](_0x2bc2e3['shift']());}}}(a29_0xac74,0xae6c8));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';function a29_0xac74(){const _0x270a3c=['243205pDfook','3092456IGpzqd','2132092pdxcJj','26406600rQGhUH','3gMfplF','946438wBEUue','5312979tnzCGV','7LRzdfH','5270190wakWbj','4IBLUfY'];a29_0xac74=function(){return _0x270a3c;};return a29_0xac74();}import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x167524,_0x3babdc){const _0x46d1b0=a29_0x172e,_0x322098=_0x167524();while(!![]){try{const _0x46ef5e=parseInt(_0x46d1b0(0xfb))/0x1+-parseInt(_0x46d1b0(0x100))/0x2*(parseInt(_0x46d1b0(0x101))/0x3)+-parseInt(_0x46d1b0(0xff))/0x4+-parseInt(_0x46d1b0(0xfe))/0x5+-parseInt(_0x46d1b0(0x102))/0x6+-parseInt(_0x46d1b0(0xfc))/0x7+-parseInt(_0x46d1b0(0xfd))/0x8*(-parseInt(_0x46d1b0(0x103))/0x9);if(_0x46ef5e===_0x3babdc)break;else _0x322098['push'](_0x322098['shift']());}catch(_0x1b64a1){_0x322098['push'](_0x322098['shift']());}}}(a29_0x338b,0x70c77));import{bffList}from'../../commands/bff/list.js';function a29_0x338b(){const _0x17ae31=['1882080qCjLvF','4LhxOXN','1204236HouODb','825726IzAoqC','7574373moJLGF','358937vZKtwU','2262869keuETr','24IYFeMT','3437765FtdZkr'];a29_0x338b=function(){return _0x17ae31;};return a29_0x338b();}import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';function a29_0x172e(_0x5c6abf,_0x14628b){_0x5c6abf=_0x5c6abf-0xfb;const _0x338ba0=a29_0x338b();let _0x172e85=_0x338ba0[_0x5c6abf];return _0x172e85;}import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- function a30_0x5a83(_0x60832d,_0x1cbdda){_0x60832d=_0x60832d-0x8d;const _0x3003d6=a30_0x3003();let _0x5a834d=_0x3003d6[_0x60832d];return _0x5a834d;}const a30_0x22016e=a30_0x5a83;(function(_0x508bd5,_0x25b068){const _0x5108cf=a30_0x5a83,_0x3b60fe=_0x508bd5();while(!![]){try{const _0x488f90=-parseInt(_0x5108cf(0x9b))/0x1+-parseInt(_0x5108cf(0xa0))/0x2+parseInt(_0x5108cf(0x9a))/0x3+-parseInt(_0x5108cf(0xa4))/0x4+parseInt(_0x5108cf(0x8d))/0x5*(parseInt(_0x5108cf(0x9c))/0x6)+-parseInt(_0x5108cf(0x9d))/0x7+parseInt(_0x5108cf(0xa5))/0x8;if(_0x488f90===_0x25b068)break;else _0x3b60fe['push'](_0x3b60fe['shift']());}catch(_0x1ee807){_0x3b60fe['push'](_0x3b60fe['shift']());}}}(a30_0x3003,0x61297));function a30_0x3003(){const _0x15b6c6=['COMMON','str','boolean','ENDPOINT','No\x20BFF\x20scripts\x20found.','(unnamed)','appCode','name','string','Filter\x20by\x20script\x20name','471087nQYLXw','692340fMXkZZ','182202ycsuWI','2606632qqeNnf','Script\x20type\x20filter','Return\x20full\x20script\x20objects','736642FIkWkX','scriptType','verbose','bool','797684WASYQq','13772552IHIdXu','length','functionName','bff','25ZtMvQO','List\x20BFF\x20scripts','type'];a30_0x3003=function(){return _0x15b6c6;};return a30_0x3003();}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x22016e(0xa8),'command':'list','description':a30_0x22016e(0x8e),'risk':'read','flags':[{'name':a30_0x22016e(0x8f),'type':a30_0x22016e(0x98),'description':a30_0x22016e(0x9e),'default':a30_0x22016e(0x93),'enum':[a30_0x22016e(0x93),a30_0x22016e(0x90)]},{'name':a30_0x22016e(0x97),'type':a30_0x22016e(0x98),'description':a30_0x22016e(0x99)},{'name':a30_0x22016e(0xa2),'type':a30_0x22016e(0x92),'description':a30_0x22016e(0x9f)}],async 'execute'(_0x71e63e){const _0x4d0064=a30_0x22016e,_0x4d15ca=await listBffScripts(_0x71e63e[_0x4d0064(0x96)],_0x71e63e[_0x4d0064(0x91)](_0x4d0064(0x8f)),{'scriptName':_0x71e63e[_0x4d0064(0x91)](_0x4d0064(0x97))||undefined}),_0x10d979=_0x71e63e[_0x4d0064(0xa3)](_0x4d0064(0xa2));return{'ok':!![],'data':_0x10d979?_0x4d15ca:_0x4d15ca['map'](_0x3c571e=>({'id':_0x3c571e['id'],'functionName':_0x3c571e[_0x4d0064(0xa7)]??'','description':_0x3c571e['description']||_0x4d0064(0x95),'scriptType':_0x3c571e[_0x4d0064(0xa1)]})),'message':_0x4d15ca[_0x4d0064(0xa6)]===0x0?_0x4d0064(0x94):undefined};}};
1
+ const a30_0x58d819=a30_0x2f91;function a30_0x369f(){const _0x2d464d=['(unnamed)','1643916rIhNWu','type','length','Return\x20full\x20script\x20objects','boolean','2BBbHZc','appCode','description','15188634zejANc','24TzuaPz','scriptType','Script\x20type\x20filter','str','verbose','29027aIZNpO','list','No\x20BFF\x20scripts\x20found.','2746520cOHGma','578774ZdkZpH','List\x20BFF\x20scripts','read','string','201330Pumbhm','3217676ZnlViX','functionName','ENDPOINT'];a30_0x369f=function(){return _0x2d464d;};return a30_0x369f();}(function(_0x122719,_0x4f635c){const _0x4615b4=a30_0x2f91,_0x4d7c79=_0x122719();while(!![]){try{const _0x48e988=-parseInt(_0x4615b4(0x137))/0x1*(-parseInt(_0x4615b4(0x12e))/0x2)+parseInt(_0x4615b4(0x13f))/0x3+-parseInt(_0x4615b4(0x140))/0x4+-parseInt(_0x4615b4(0x13a))/0x5+-parseInt(_0x4615b4(0x144))/0x6+-parseInt(_0x4615b4(0x13b))/0x7*(-parseInt(_0x4615b4(0x132))/0x8)+parseInt(_0x4615b4(0x131))/0x9;if(_0x48e988===_0x4f635c)break;else _0x4d7c79['push'](_0x4d7c79['shift']());}catch(_0xf6a27a){_0x4d7c79['push'](_0x4d7c79['shift']());}}}(a30_0x369f,0x62a84));import{listBffScripts}from'../../core/api-client.js';function a30_0x2f91(_0xa544f8,_0x2c47d0){_0xa544f8=_0xa544f8-0x12c;const _0x369f3d=a30_0x369f();let _0x2f9175=_0x369f3d[_0xa544f8];return _0x2f9175;}export const bffList={'service':'bff','command':a30_0x58d819(0x138),'description':a30_0x58d819(0x13c),'risk':a30_0x58d819(0x13d),'flags':[{'name':a30_0x58d819(0x145),'type':a30_0x58d819(0x13e),'description':a30_0x58d819(0x134),'default':'ENDPOINT','enum':[a30_0x58d819(0x142),'COMMON']},{'name':'name','type':a30_0x58d819(0x13e),'description':'Filter\x20by\x20script\x20name'},{'name':a30_0x58d819(0x136),'type':a30_0x58d819(0x12d),'description':a30_0x58d819(0x12c)}],async 'execute'(_0x252201){const _0x50834e=a30_0x58d819,_0x4b074=await listBffScripts(_0x252201[_0x50834e(0x12f)],_0x252201[_0x50834e(0x135)]('type'),{'scriptName':_0x252201[_0x50834e(0x135)]('name')||undefined}),_0x447791=_0x252201['bool']('verbose');return{'ok':!![],'data':_0x447791?_0x4b074:_0x4b074['map'](_0x6e4fd1=>({'id':_0x6e4fd1['id'],'functionName':_0x6e4fd1[_0x50834e(0x141)]??'','description':_0x6e4fd1[_0x50834e(0x130)]||_0x50834e(0x143),'scriptType':_0x6e4fd1[_0x50834e(0x133)]})),'message':_0x4b074[_0x50834e(0x146)]===0x0?_0x50834e(0x139):undefined};}};
@@ -1 +1 @@
1
- const a31_0x1dcbc8=a31_0x35c5;(function(_0x23ef84,_0x362b98){const _0x5327ba=a31_0x35c5,_0xca7012=_0x23ef84();while(!![]){try{const _0x47cd45=parseInt(_0x5327ba(0xab))/0x1*(-parseInt(_0x5327ba(0xea))/0x2)+-parseInt(_0x5327ba(0xbe))/0x3+parseInt(_0x5327ba(0xdd))/0x4+-parseInt(_0x5327ba(0xca))/0x5*(parseInt(_0x5327ba(0xcc))/0x6)+parseInt(_0x5327ba(0xe7))/0x7+-parseInt(_0x5327ba(0xae))/0x8*(-parseInt(_0x5327ba(0xb2))/0x9)+parseInt(_0x5327ba(0xc4))/0xa*(parseInt(_0x5327ba(0xd5))/0xb);if(_0x47cd45===_0x362b98)break;else _0xca7012['push'](_0xca7012['shift']());}catch(_0x17474b){_0xca7012['push'](_0xca7012['shift']());}}}(a31_0x12e9,0xb15f5));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';function a31_0x12e9(){const _0x6c9cef=['Remote\x20script\x20missing\x20content.','\x20skipped,\x20','message','Remote\x20script\x20missing\x20id.','449067tKlsmr','unresolvable\x20target\x20path','appCode','8pjWIco','alias','question','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','19863yOyomM','force','functions','datasetCode','push','all','string','scriptType','functionNode','Pull\x20complete:\x20','functionName','utf8','3029766jTdxjx','length','scriptsRoot','Force\x20overwrite\x20local\x20unsynced\x20changes','stringify','pull','950olcieI','\x22\x20not\x20found\x20after\x20ensureLockScope.','stderr','lockFilePath','COMMON','hookLocation','4806055VUFzua','version','6lnDUrx','type','\x20remote\x20BFF\x20script(s)\x20for\x20pull','Force\x20pull\x20cancelled.','toLowerCase','lockKey','trim','scriptContent','stdin','268004SuVAws','parse','apiDir','apps','hash','Pull\x20only\x20this\x20script\x20type','filePath','write','4731172fnmxVV','HOOK','skipped','includes','Would\x20inspect\x20','operationType','No\x20remote\x20BFF\x20scripts\x20found.','ENDPOINT','bool','str','3816897nYsRVC','yes','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','6kQhGym','Pull\x20remote\x20BFF\x20scripts\x20to\x20local'];a31_0x12e9=function(){return _0x6c9cef;};return a31_0x12e9();}import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':'bff','command':a31_0x1dcbc8(0xc3),'description':a31_0x1dcbc8(0xeb),'risk':a31_0x1dcbc8(0xdc),'flags':[{'name':a31_0x1dcbc8(0xcd),'type':a31_0x1dcbc8(0xb8),'description':a31_0x1dcbc8(0xda),'enum':[a31_0x1dcbc8(0xc8),a31_0x1dcbc8(0xe4),a31_0x1dcbc8(0xde)]},{'name':a31_0x1dcbc8(0xb3),'type':'boolean','description':a31_0x1dcbc8(0xc1)}],async 'dryRun'(_0x2bd9b4){const _0x58fc15=a31_0x1dcbc8,_0x1abe3d=loadBffProjectConfig(_0x2bd9b4[_0x58fc15(0xad)]),_0x39e5ef=await readBffLockFile(_0x1abe3d[_0x58fc15(0xc7)]),{appLock:_0x222bc9}=ensureLockScope(_0x39e5ef??createEmptyBffLock(),_0x2bd9b4[_0x58fc15(0xad)],_0x1abe3d[_0x58fc15(0xc0)],'pull'),_0x3ad42d=normalizeBffType(_0x2bd9b4[_0x58fc15(0xe6)](_0x58fc15(0xcd)))??undefined,_0x15c9f2=buildDatasetCodeToAliasMap(_0x2bd9b4[_0x58fc15(0xd7)],_0x2bd9b4[_0x58fc15(0xad)]),[_0x585835,_0x3fc864]=await Promise[_0x58fc15(0xb7)]([listBffScripts(_0x2bd9b4['appCode'],_0x3ad42d),getBffScriptStatistics(_0x2bd9b4[_0x58fc15(0xad)])]),_0x490a72=createHookLocationMap(_0x3fc864),_0x40e733=[];for(const _0x110052 of _0x585835){const _0x543c97=resolveRemoteScriptTarget(_0x1abe3d,_0x110052,_0x490a72,_0x222bc9[_0x58fc15(0xb4)],_0x15c9f2);if(!_0x543c97){_0x40e733['push']({'scriptType':_0x110052[_0x58fc15(0xb9)],'functionName':_0x110052[_0x58fc15(0xbc)]??'','status':_0x58fc15(0xdf),'reason':_0x58fc15(0xac)});continue;}const _0x5df81e=_0x222bc9[_0x58fc15(0xb4)][_0x543c97[_0x58fc15(0xd1)]],_0x32bfe8=_0x110052['scriptContent']!=null?computeContentHash(_0x110052[_0x58fc15(0xd3)]):undefined,_0x49b93a=await hasUnsyncedLocalChanges(_0x543c97[_0x58fc15(0xdb)],_0x5df81e,_0x32bfe8);_0x40e733[_0x58fc15(0xb6)]({'lockKey':_0x543c97[_0x58fc15(0xd1)],'filePath':_0x543c97[_0x58fc15(0xdb)],'remoteId':_0x110052['id']??null,'status':_0x49b93a?'conflict':'would_pull'});}return{'method':'GET','url':'/api/management/library/scripts/list?appCode='+_0x2bd9b4['appCode']+(_0x3ad42d?'&type='+_0x3ad42d:''),'body':{'appCode':_0x2bd9b4[_0x58fc15(0xad)],'filterType':_0x3ad42d??null,'files':_0x40e733},'description':_0x58fc15(0xe1)+_0x40e733[_0x58fc15(0xbf)]+_0x58fc15(0xce)};},async 'execute'(_0x329468){const _0x2b4603=a31_0x1dcbc8,_0x88f613=loadBffProjectConfig(_0x329468[_0x2b4603(0xad)]),_0x1b55b1=await readBffLockFile(_0x88f613[_0x2b4603(0xc7)]),{lockData:_0x1c2160,appLock:_0x4ec830}=ensureLockScope(_0x1b55b1??createEmptyBffLock(),_0x329468[_0x2b4603(0xad)],_0x88f613[_0x2b4603(0xc0)],_0x2b4603(0xc3)),_0x54b55b=normalizeBffType(_0x329468[_0x2b4603(0xe6)](_0x2b4603(0xcd)))??undefined;if(_0x329468[_0x2b4603(0xe6)](_0x2b4603(0xcd))&&!_0x54b55b)throw CliErrors['validation'](_0x2b4603(0xe9));const [_0x2c0c56,_0x585191]=await Promise[_0x2b4603(0xb7)]([listBffScripts(_0x329468[_0x2b4603(0xad)],_0x54b55b),getBffScriptStatistics(_0x329468[_0x2b4603(0xad)])]);if(_0x2c0c56[_0x2b4603(0xbf)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x2b4603(0xe3)};const _0x47ebf1=_0x329468[_0x2b4603(0xe5)](_0x2b4603(0xb3));if(_0x47ebf1&&!_0x329468['nonInteractive']){const _0x4841df=await confirmForce();if(!_0x4841df)throw CliErrors['cancelled'](_0x2b4603(0xcf));}if(_0x47ebf1&&_0x329468['nonInteractive']){}const _0xea7d84=buildDatasetCodeToAliasMap(_0x329468[_0x2b4603(0xd7)],_0x329468[_0x2b4603(0xad)]),_0x283b48=createHookLocationMap(_0x585191),_0x20f7e1=JSON[_0x2b4603(0xd6)](JSON[_0x2b4603(0xc2)](_0x1c2160)),_0x4fed1d=_0x329468[_0x2b4603(0xad)],_0x36dfe6=_0x20f7e1[_0x2b4603(0xd8)][_0x4fed1d];if(!_0x36dfe6)throw new Error('Lock\x20scope\x20for\x20app\x20\x22'+_0x4fed1d+_0x2b4603(0xc5));const _0x218e33=[],_0x50050d=[],_0x540e56=[];for(const _0x52ad64 of _0x2c0c56){const _0x2f3dc1=resolveRemoteScriptTarget(_0x88f613,_0x52ad64,_0x283b48,_0x4ec830[_0x2b4603(0xb4)],_0xea7d84);if(!_0x2f3dc1){_0x50050d[_0x2b4603(0xb6)]({'lockKey':_0x52ad64[_0x2b4603(0xb9)]+'/'+_0x52ad64[_0x2b4603(0xbc)],'reason':'unresolvable\x20target\x20path'});continue;}const _0x34de1d=_0x4ec830['functions'][_0x2f3dc1[_0x2b4603(0xd1)]];try{if(!_0x52ad64['id'])throw new Error(_0x2b4603(0xaa));if(_0x52ad64['scriptContent']==null)throw new Error(_0x2b4603(0xec));const _0x13b532=_0x52ad64[_0x2b4603(0xd3)],_0x57a17a=computeContentHash(_0x13b532);if(!_0x47ebf1){const _0x4003f3=await hasUnsyncedLocalChanges(_0x2f3dc1['filePath'],_0x34de1d,_0x57a17a);if(_0x4003f3){_0x50050d['push']({'lockKey':_0x2f3dc1['lockKey'],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x2f3dc1[_0x2b4603(0xdb)]),await writeFile(_0x2f3dc1['filePath'],_0x13b532,_0x2b4603(0xbd));const _0x18b446={'hash':_0x57a17a,'remoteId':_0x52ad64['id'],'version':_0x52ad64[_0x2b4603(0xcb)]};_0x2f3dc1[_0x2b4603(0xcd)]===_0x2b4603(0xde)&&_0x2f3dc1['hookLocation']&&(_0x18b446[_0x2b4603(0xaf)]=_0x2f3dc1[_0x2b4603(0xc9)]['alias'],_0x18b446['datasetCode']=_0x2f3dc1[_0x2b4603(0xc9)][_0x2b4603(0xb5)],_0x18b446[_0x2b4603(0xe2)]=_0x2f3dc1[_0x2b4603(0xc9)][_0x2b4603(0xe2)],_0x18b446[_0x2b4603(0xba)]=_0x2f3dc1[_0x2b4603(0xc9)]['functionNode']),_0x36dfe6[_0x2b4603(0xb4)][_0x2f3dc1[_0x2b4603(0xd1)]]=_0x18b446,_0x218e33['push']({'lockKey':_0x2f3dc1[_0x2b4603(0xd1)],'remoteId':_0x52ad64['id']});}catch(_0x2df731){_0x540e56[_0x2b4603(0xb6)]({'lockKey':_0x2f3dc1['lockKey'],'error':_0x2df731 instanceof Error?_0x2df731[_0x2b4603(0xee)]:String(_0x2df731)});}}return _0x36dfe6['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x88f613['lockFilePath'],_0x20f7e1),{'ok':_0x540e56[_0x2b4603(0xbf)]===0x0,'data':{'pulled':_0x218e33,'skipped':_0x50050d,'failed':_0x540e56},'message':_0x2b4603(0xbb)+_0x218e33['length']+'\x20pulled,\x20'+_0x50050d[_0x2b4603(0xbf)]+_0x2b4603(0xed)+_0x540e56[_0x2b4603(0xbf)]+'\x20failed'};}};async function hasUnsyncedLocalChanges(_0x1c0f72,_0xeab735,_0x1b91ed){const _0x9d04aa=a31_0x1dcbc8;if(!await fileExists(_0x1c0f72))return![];const _0x5d4e7f=await computeFileHash(_0x1c0f72);if(!_0xeab735)return _0x1b91ed?_0x5d4e7f!==_0x1b91ed:!![];return _0x5d4e7f!==_0xeab735[_0x9d04aa(0xd9)];}function buildDatasetCodeToAliasMap(_0x2741ab,_0x4e3085){const _0x4cd19b=a31_0x1dcbc8,_0xa32b26=loadAliasMap(_0x2741ab,undefined,resolveApiFilePath(_0x2741ab,_0x4e3085));return new Map(_0xa32b26['map'](_0x138f03=>[_0x138f03[_0x4cd19b(0xb5)],_0x138f03['alias']]));}function a31_0x35c5(_0x82d949,_0x42c36d){_0x82d949=_0x82d949-0xaa;const _0x12e9cb=a31_0x12e9();let _0x35c599=_0x12e9cb[_0x82d949];return _0x35c599;}async function confirmForce(){const _0x350421=a31_0x1dcbc8,_0x441a5d=createInterface({'input':process[_0x350421(0xd4)],'output':process[_0x350421(0xc6)]}),_0x51d840=await new Promise(_0x1031a1=>{const _0x59445a=_0x350421;_0x441a5d[_0x59445a(0xb0)](_0x59445a(0xb1),_0x1031a1);});return _0x441a5d['close'](),['y',_0x350421(0xe8)][_0x350421(0xe0)](_0x51d840[_0x350421(0xd2)]()[_0x350421(0xd0)]());}
1
+ const a31_0x251216=a31_0x237d;(function(_0x2aad19,_0x2bff61){const _0x430188=a31_0x237d,_0x1f8b0e=_0x2aad19();while(!![]){try{const _0xb26e5e=parseInt(_0x430188(0x9d))/0x1*(-parseInt(_0x430188(0xd7))/0x2)+parseInt(_0x430188(0xa4))/0x3*(parseInt(_0x430188(0xd2))/0x4)+-parseInt(_0x430188(0xad))/0x5+parseInt(_0x430188(0xcb))/0x6*(parseInt(_0x430188(0xb6))/0x7)+-parseInt(_0x430188(0xde))/0x8*(parseInt(_0x430188(0xa6))/0x9)+-parseInt(_0x430188(0xdd))/0xa*(-parseInt(_0x430188(0xd4))/0xb)+-parseInt(_0x430188(0xe6))/0xc*(-parseInt(_0x430188(0xb9))/0xd);if(_0xb26e5e===_0x2bff61)break;else _0x1f8b0e['push'](_0x1f8b0e['shift']());}catch(_0x16ec93){_0x1f8b0e['push'](_0x1f8b0e['shift']());}}}(a31_0x14c5,0x7134d));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';function a31_0x237d(_0x32ae10,_0x3d3e10){_0x32ae10=_0x32ae10-0x9c;const _0x14c594=a31_0x14c5();let _0x237d2e=_0x14c594[_0x32ae10];return _0x237d2e;}function a31_0x14c5(){const _0x5770fc=['unresolvable\x20target\x20path','close','functions','/api/management/library/scripts/list?appCode=','all','2190GwEVdY','1480664GKzuXc','operationType','Lock\x20scope\x20for\x20app\x20\x22','Force\x20overwrite\x20local\x20unsynced\x20changes','Pull\x20complete:\x20','stderr','Remote\x20script\x20missing\x20id.','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','594732KIWRkV','skipped','2qJEtqm','scriptsRoot','\x20failed','scriptContent','map','hash','toLowerCase','187098GxKfSq','str','27SyqWyc','length','apps','lockKey','appCode','alias','boolean','3235220tsvpwu','datasetCode','hookLocation','question','yes','version','would_pull','COMMON','pull','35AmXgHh','local\x20unsynced\x20changes','bff','182JGHiUk','parse','stdin','Pull\x20only\x20this\x20script\x20type','force','\x20skipped,\x20','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','\x20remote\x20BFF\x20script(s)\x20for\x20pull','\x20pulled,\x20','scriptType','type','apiDir','filePath','string','includes','HOOK','functionNode','ENDPOINT','779238qLrDhL','&type=','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','functionName','cancelled','message','push','8qqlSas','lockFilePath','22099bTedXV','validation','nonInteractive','241936mIfFqI'];a31_0x14c5=function(){return _0x5770fc;};return a31_0x14c5();}import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0x251216(0xb8),'command':a31_0x251216(0xb5),'description':a31_0x251216(0xbf),'risk':'write','flags':[{'name':a31_0x251216(0xc3),'type':a31_0x251216(0xc6),'description':a31_0x251216(0xbc),'enum':[a31_0x251216(0xb4),a31_0x251216(0xca),a31_0x251216(0xc8)]},{'name':a31_0x251216(0xbd),'type':a31_0x251216(0xac),'description':a31_0x251216(0xe1)}],async 'dryRun'(_0x11c19c){const _0x3d6a8b=a31_0x251216,_0x538360=loadBffProjectConfig(_0x11c19c[_0x3d6a8b(0xaa)]),_0x301832=await readBffLockFile(_0x538360[_0x3d6a8b(0xd3)]),{appLock:_0x4a272d}=ensureLockScope(_0x301832??createEmptyBffLock(),_0x11c19c['appCode'],_0x538360[_0x3d6a8b(0x9e)],_0x3d6a8b(0xb5)),_0x470869=normalizeBffType(_0x11c19c[_0x3d6a8b(0xa5)](_0x3d6a8b(0xc3)))??undefined,_0x2cf79c=buildDatasetCodeToAliasMap(_0x11c19c[_0x3d6a8b(0xc4)],_0x11c19c[_0x3d6a8b(0xaa)]),[_0x5a113d,_0x51765f]=await Promise[_0x3d6a8b(0xdc)]([listBffScripts(_0x11c19c[_0x3d6a8b(0xaa)],_0x470869),getBffScriptStatistics(_0x11c19c[_0x3d6a8b(0xaa)])]),_0x397152=createHookLocationMap(_0x51765f),_0x1937f6=[];for(const _0xcda5ef of _0x5a113d){const _0x1df3ed=resolveRemoteScriptTarget(_0x538360,_0xcda5ef,_0x397152,_0x4a272d[_0x3d6a8b(0xda)],_0x2cf79c);if(!_0x1df3ed){_0x1937f6[_0x3d6a8b(0xd1)]({'scriptType':_0xcda5ef['scriptType'],'functionName':_0xcda5ef[_0x3d6a8b(0xce)]??'','status':_0x3d6a8b(0x9c),'reason':_0x3d6a8b(0xd8)});continue;}const _0x13efc7=_0x4a272d[_0x3d6a8b(0xda)][_0x1df3ed[_0x3d6a8b(0xa9)]],_0x3a74d9=_0xcda5ef[_0x3d6a8b(0xa0)]!=null?computeContentHash(_0xcda5ef[_0x3d6a8b(0xa0)]):undefined,_0x3f15a2=await hasUnsyncedLocalChanges(_0x1df3ed['filePath'],_0x13efc7,_0x3a74d9);_0x1937f6[_0x3d6a8b(0xd1)]({'lockKey':_0x1df3ed[_0x3d6a8b(0xa9)],'filePath':_0x1df3ed[_0x3d6a8b(0xc5)],'remoteId':_0xcda5ef['id']??null,'status':_0x3f15a2?'conflict':_0x3d6a8b(0xb3)});}return{'method':'GET','url':_0x3d6a8b(0xdb)+_0x11c19c[_0x3d6a8b(0xaa)]+(_0x470869?_0x3d6a8b(0xcc)+_0x470869:''),'body':{'appCode':_0x11c19c[_0x3d6a8b(0xaa)],'filterType':_0x470869??null,'files':_0x1937f6},'description':'Would\x20inspect\x20'+_0x1937f6['length']+_0x3d6a8b(0xc0)};},async 'execute'(_0x5de6d3){const _0x4223d8=a31_0x251216,_0x397a82=loadBffProjectConfig(_0x5de6d3[_0x4223d8(0xaa)]),_0x2a7559=await readBffLockFile(_0x397a82[_0x4223d8(0xd3)]),{lockData:_0x4aa2a1,appLock:_0x3fabc}=ensureLockScope(_0x2a7559??createEmptyBffLock(),_0x5de6d3['appCode'],_0x397a82[_0x4223d8(0x9e)],_0x4223d8(0xb5)),_0x5597f0=normalizeBffType(_0x5de6d3[_0x4223d8(0xa5)](_0x4223d8(0xc3)))??undefined;if(_0x5de6d3[_0x4223d8(0xa5)](_0x4223d8(0xc3))&&!_0x5597f0)throw CliErrors[_0x4223d8(0xd5)](_0x4223d8(0xcd));const [_0x28757e,_0x46f89d]=await Promise[_0x4223d8(0xdc)]([listBffScripts(_0x5de6d3[_0x4223d8(0xaa)],_0x5597f0),getBffScriptStatistics(_0x5de6d3[_0x4223d8(0xaa)])]);if(_0x28757e['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20BFF\x20scripts\x20found.'};const _0x4c1f9d=_0x5de6d3['bool']('force');if(_0x4c1f9d&&!_0x5de6d3[_0x4223d8(0xd6)]){const _0x571a9e=await confirmForce();if(!_0x571a9e)throw CliErrors[_0x4223d8(0xcf)]('Force\x20pull\x20cancelled.');}if(_0x4c1f9d&&_0x5de6d3[_0x4223d8(0xd6)]){}const _0x4ed29a=buildDatasetCodeToAliasMap(_0x5de6d3[_0x4223d8(0xc4)],_0x5de6d3['appCode']),_0x37b480=createHookLocationMap(_0x46f89d),_0x1c824a=JSON[_0x4223d8(0xba)](JSON['stringify'](_0x4aa2a1)),_0x1ef2e9=_0x5de6d3[_0x4223d8(0xaa)],_0x1a8379=_0x1c824a[_0x4223d8(0xa8)][_0x1ef2e9];if(!_0x1a8379)throw new Error(_0x4223d8(0xe0)+_0x1ef2e9+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x4c0155=[],_0x5cbbe3=[],_0x404043=[];for(const _0x3a7acf of _0x28757e){const _0x27cac6=resolveRemoteScriptTarget(_0x397a82,_0x3a7acf,_0x37b480,_0x3fabc[_0x4223d8(0xda)],_0x4ed29a);if(!_0x27cac6){_0x5cbbe3[_0x4223d8(0xd1)]({'lockKey':_0x3a7acf[_0x4223d8(0xc2)]+'/'+_0x3a7acf[_0x4223d8(0xce)],'reason':'unresolvable\x20target\x20path'});continue;}const _0xad9886=_0x3fabc[_0x4223d8(0xda)][_0x27cac6[_0x4223d8(0xa9)]];try{if(!_0x3a7acf['id'])throw new Error(_0x4223d8(0xe4));if(_0x3a7acf[_0x4223d8(0xa0)]==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x3ded57=_0x3a7acf[_0x4223d8(0xa0)],_0x27d56d=computeContentHash(_0x3ded57);if(!_0x4c1f9d){const _0x134648=await hasUnsyncedLocalChanges(_0x27cac6['filePath'],_0xad9886,_0x27d56d);if(_0x134648){_0x5cbbe3['push']({'lockKey':_0x27cac6[_0x4223d8(0xa9)],'reason':_0x4223d8(0xb7)});continue;}}await ensureParentDirectory(_0x27cac6['filePath']),await writeFile(_0x27cac6[_0x4223d8(0xc5)],_0x3ded57,'utf8');const _0x4bfe33={'hash':_0x27d56d,'remoteId':_0x3a7acf['id'],'version':_0x3a7acf[_0x4223d8(0xb2)]};_0x27cac6['type']===_0x4223d8(0xc8)&&_0x27cac6[_0x4223d8(0xaf)]&&(_0x4bfe33[_0x4223d8(0xab)]=_0x27cac6['hookLocation'][_0x4223d8(0xab)],_0x4bfe33[_0x4223d8(0xae)]=_0x27cac6['hookLocation']['datasetCode'],_0x4bfe33[_0x4223d8(0xdf)]=_0x27cac6['hookLocation'][_0x4223d8(0xdf)],_0x4bfe33[_0x4223d8(0xc9)]=_0x27cac6[_0x4223d8(0xaf)][_0x4223d8(0xc9)]),_0x1a8379[_0x4223d8(0xda)][_0x27cac6[_0x4223d8(0xa9)]]=_0x4bfe33,_0x4c0155[_0x4223d8(0xd1)]({'lockKey':_0x27cac6[_0x4223d8(0xa9)],'remoteId':_0x3a7acf['id']});}catch(_0x5a1adf){_0x404043[_0x4223d8(0xd1)]({'lockKey':_0x27cac6[_0x4223d8(0xa9)],'error':_0x5a1adf instanceof Error?_0x5a1adf[_0x4223d8(0xd0)]:String(_0x5a1adf)});}}return _0x1a8379['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x397a82[_0x4223d8(0xd3)],_0x1c824a),{'ok':_0x404043[_0x4223d8(0xa7)]===0x0,'data':{'pulled':_0x4c0155,'skipped':_0x5cbbe3,'failed':_0x404043},'message':_0x4223d8(0xe2)+_0x4c0155['length']+_0x4223d8(0xc1)+_0x5cbbe3[_0x4223d8(0xa7)]+_0x4223d8(0xbe)+_0x404043[_0x4223d8(0xa7)]+_0x4223d8(0x9f)};}};async function hasUnsyncedLocalChanges(_0x4e40a6,_0x20153a,_0x2f4f07){const _0x5e60b9=a31_0x251216;if(!await fileExists(_0x4e40a6))return![];const _0x4f8709=await computeFileHash(_0x4e40a6);if(!_0x20153a)return _0x2f4f07?_0x4f8709!==_0x2f4f07:!![];return _0x4f8709!==_0x20153a[_0x5e60b9(0xa2)];}function buildDatasetCodeToAliasMap(_0xc5e52e,_0x4ac0f3){const _0x321781=a31_0x251216,_0x447619=loadAliasMap(_0xc5e52e,undefined,resolveApiFilePath(_0xc5e52e,_0x4ac0f3));return new Map(_0x447619[_0x321781(0xa1)](_0xecc09d=>[_0xecc09d[_0x321781(0xae)],_0xecc09d['alias']]));}async function confirmForce(){const _0x393d3a=a31_0x251216,_0x314468=createInterface({'input':process[_0x393d3a(0xbb)],'output':process[_0x393d3a(0xe3)]}),_0x5a9664=await new Promise(_0x34e40f=>{const _0x496289=_0x393d3a;_0x314468[_0x496289(0xb0)](_0x496289(0xe5),_0x34e40f);});return _0x314468[_0x393d3a(0xd9)](),['y',_0x393d3a(0xb1)][_0x393d3a(0xc7)](_0x5a9664['trim']()[_0x393d3a(0xa3)]());}