@lovrabet/rabetbase-cli 2.2.1-beta.2 → 2.2.2-beta.1

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_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
+ const a19_0x533661=a19_0x3223;(function(_0x402afa,_0x265b38){const _0x19a86c=a19_0x3223,_0x4d6f09=_0x402afa();while(!![]){try{const _0x2dd208=-parseInt(_0x19a86c(0x191))/0x1*(-parseInt(_0x19a86c(0x18f))/0x2)+parseInt(_0x19a86c(0x18d))/0x3+parseInt(_0x19a86c(0x196))/0x4*(parseInt(_0x19a86c(0x184))/0x5)+parseInt(_0x19a86c(0x185))/0x6*(-parseInt(_0x19a86c(0x189))/0x7)+-parseInt(_0x19a86c(0x195))/0x8+-parseInt(_0x19a86c(0x198))/0x9+parseInt(_0x19a86c(0x18b))/0xa*(parseInt(_0x19a86c(0x188))/0xb);if(_0x2dd208===_0x265b38)break;else _0x4d6f09['push'](_0x4d6f09['shift']());}catch(_0x4163a0){_0x4d6f09['push'](_0x4d6f09['shift']());}}}(a19_0x315f,0x4230f));import{listRemoteApps}from'../../core/api-client.js';function a19_0x315f(){const _0xcca30f=['appName','6oJnUqo','appDesc','80890UbLTJu','map','app','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','3511424blNbMT','4PmJRBd','../../core/api-client.js','2653794XLoCDn','2053755oQthBr','24PacVFm','appCode','remote','38907SLlFZu','474369pjpHlu','read','1480FxPhSf','cookie','297252ZRJwvM'];a19_0x315f=function(){return _0xcca30f;};return a19_0x315f();}function a19_0x3223(_0xbed27f,_0x42d74b){_0xbed27f=_0xbed27f-0x184;const _0x315f50=a19_0x315f();let _0x322395=_0x315f50[_0xbed27f];return _0x322395;}async function execute(_0x26c823){const _0xa5c3fd=a19_0x3223,{setActiveCookie:_0x2df3b5}=await import(_0xa5c3fd(0x197));_0x2df3b5(_0x26c823[_0xa5c3fd(0x18c)]);const _0x559dc3=await listRemoteApps();return{'ok':!![],'data':{'items':_0x559dc3[_0xa5c3fd(0x192)](_0x231667=>({..._0x231667['id']!=null?{'id':_0x231667['id']}:{},'appCode':_0x231667[_0xa5c3fd(0x186)],'appName':_0x231667[_0xa5c3fd(0x18e)],..._0x231667[_0xa5c3fd(0x190)]!=null?{'appDesc':_0x231667[_0xa5c3fd(0x190)]}:{}})),'meta':{'source':'platform'}}};}export const appRemoteDefinition={'service':a19_0x533661(0x193),'command':a19_0x533661(0x187),'description':a19_0x533661(0x194),'risk':a19_0x533661(0x18a),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -1 +1 @@
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
+ (function(_0x4a56c7,_0x31f194){const _0x5ce36c=a20_0x1207,_0x2fca64=_0x4a56c7();while(!![]){try{const _0x535a9c=parseInt(_0x5ce36c(0x8b))/0x1+-parseInt(_0x5ce36c(0x89))/0x2+parseInt(_0x5ce36c(0x83))/0x3+-parseInt(_0x5ce36c(0x84))/0x4*(parseInt(_0x5ce36c(0x85))/0x5)+parseInt(_0x5ce36c(0x8c))/0x6*(parseInt(_0x5ce36c(0x86))/0x7)+parseInt(_0x5ce36c(0x88))/0x8+parseInt(_0x5ce36c(0x8a))/0x9*(parseInt(_0x5ce36c(0x87))/0xa);if(_0x535a9c===_0x31f194)break;else _0x2fca64['push'](_0x2fca64['shift']());}catch(_0x2c1407){_0x2fca64['push'](_0x2fca64['shift']());}}}(a20_0x30a5,0x808b2));import{appListDefinition}from'../../commands/app/list.js';function a20_0x30a5(){const _0x1b5a3f=['1323GJIAVD','82502NZPamc','72144xljbXF','1272561ZRdLRg','116056wNAwKz','140CyUJbQ','525FNMgaw','6550Momrjk','6138672NKYmxj','1866404WzbpzC'];a20_0x30a5=function(){return _0x1b5a3f;};return a20_0x30a5();}import{appRemoteDefinition}from'../../commands/app/discover.js';function a20_0x1207(_0xed70d6,_0x566ddb){_0xed70d6=_0xed70d6-0x83;const _0x30a5d0=a20_0x30a5();let _0x12077b=_0x30a5d0[_0xed70d6];return _0x12077b;}import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- const 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
+ const a21_0xead002=a21_0x1bed;(function(_0xcc560f,_0x15fbf2){const _0x2caf70=a21_0x1bed,_0x2fcbe9=_0xcc560f();while(!![]){try{const _0x1ae558=-parseInt(_0x2caf70(0x160))/0x1+parseInt(_0x2caf70(0x159))/0x2+parseInt(_0x2caf70(0x15a))/0x3*(parseInt(_0x2caf70(0x14b))/0x4)+-parseInt(_0x2caf70(0x163))/0x5+parseInt(_0x2caf70(0x167))/0x6*(-parseInt(_0x2caf70(0x169))/0x7)+-parseInt(_0x2caf70(0x14c))/0x8+parseInt(_0x2caf70(0x164))/0x9*(parseInt(_0x2caf70(0x14d))/0xa);if(_0x1ae558===_0x15fbf2)break;else _0x2fcbe9['push'](_0x2fcbe9['shift']());}catch(_0x507b61){_0x2fcbe9['push'](_0x2fcbe9['shift']());}}}(a21_0xdfc7,0xae1d9));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';function a21_0x1bed(_0x16f74c,_0x5643d0){_0x16f74c=_0x16f74c-0x145;const _0xdfc75c=a21_0xdfc7();let _0x1bed42=_0xdfc75c[_0x16f74c];return _0x1bed42;}import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x303798,_0x3dcf7d){const _0x20db67=a21_0x1bed,_0x51a44b=[],_0x3424c7=_0x303798[_0x20db67(0x147)]&&typeof _0x303798[_0x20db67(0x147)]===_0x20db67(0x148)?_0x303798[_0x20db67(0x147)]:{},_0x101e7a=_0x303798['defaultApp']||undefined;for(const [_0xeb1ff9,_0x7ef364]of Object[_0x20db67(0x158)](_0x3424c7)){if(!_0x7ef364||typeof _0x7ef364!==_0x20db67(0x148)||!_0x7ef364[_0x20db67(0x151)])continue;_0x51a44b[_0x20db67(0x155)]({'name':_0xeb1ff9,'appcode':_0x7ef364[_0x20db67(0x151)],'named':!![],'definedIn':_0x3dcf7d,'isDefault':_0xeb1ff9===_0x101e7a,...buildAppProfileListFields(_0x7ef364)});}return _0x51a44b;}function buildMergedItems(_0x3fbdd9,_0xb9cfbd){const _0x2c01e7=a21_0x1bed,{apps:apps={},defaultApp:_0xcd6c85}=_0x3fbdd9,_0x4796ad=_0xb9cfbd[_0x2c01e7(0x168)]['apps']&&typeof _0xb9cfbd[_0x2c01e7(0x168)]['apps']===_0x2c01e7(0x148)?_0xb9cfbd[_0x2c01e7(0x168)][_0x2c01e7(0x147)]:{},_0x54b3bd=_0xb9cfbd[_0x2c01e7(0x152)][_0x2c01e7(0x147)]&&typeof _0xb9cfbd[_0x2c01e7(0x152)]['apps']===_0x2c01e7(0x148)?_0xb9cfbd[_0x2c01e7(0x152)]['apps']:{},_0x23d1a2=_0xb9cfbd[_0x2c01e7(0x152)][_0x2c01e7(0x14f)]===![],_0x2faf02=Object[_0x2c01e7(0x158)](apps),_0x5c4a42=_0x2faf02[_0x2c01e7(0x16a)](([_0x22f72f,_0x45156f])=>({'name':_0x22f72f,'appcode':_0x45156f[_0x2c01e7(0x151)],'named':!![],'definedIn':appDefinedIn(_0x22f72f,_0x4796ad,_0x54b3bd,_0x23d1a2),'isDefault':_0x22f72f===_0xcd6c85,...buildAppProfileListFields(_0x45156f)}));return _0x5c4a42;}async function execute(_0x50b467){const _0x41d787=a21_0x1bed,_0x46769b=_0x50b467['bool'](_0x41d787(0x161)),_0x22048b=_0x50b467[_0x41d787(0x146)]('project'),_0x58f3c5=_0x46769b?_0x41d787(0x161):_0x22048b?_0x41d787(0x149):_0x41d787(0x15b),{config:_0x439c11,layers:_0x4c2fc1}=readRawConfigWithLayers(),_0x28b99b=resolveDefaultAppSource(_0x4c2fc1),{defaultApp:_0x15b167}=_0x439c11;let _0x167df7,_0x1d183f;switch(_0x58f3c5){case'global':_0x167df7=buildItemsFromLayer(_0x4c2fc1[_0x41d787(0x168)],'global'),_0x1d183f=_0x4c2fc1['globalPath'];break;case'project':_0x167df7=buildItemsFromLayer(_0x4c2fc1[_0x41d787(0x152)],_0x41d787(0x149)),_0x1d183f=_0x4c2fc1[_0x41d787(0x15d)];break;default:_0x167df7=buildMergedItems(_0x439c11,_0x4c2fc1);break;}enrichAppListItemsWithMergedSelection(_0x167df7,_0x50b467[_0x41d787(0x15f)]);if(_0x167df7[_0x41d787(0x156)]===0x0){const _0x69165a=_0x58f3c5===_0x41d787(0x15b)?'':_0x41d787(0x14a)+_0x58f3c5+_0x41d787(0x165);return{'ok':!![],'data':[],'message':_0x41d787(0x154)+_0x69165a+_0x41d787(0x14e)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x5d1d99=_0x167df7[_0x41d787(0x15e)](_0x1da833=>_0x1da833[_0x41d787(0x150)]===!![]),_0x277543=_0x15b167??_0x5d1d99?.[_0x41d787(0x151)]??null,_0x40bfd6=_0x58f3c5===_0x41d787(0x15b)?{'globalPath':_0x4c2fc1[_0x41d787(0x162)]??null,'projectPath':_0x4c2fc1[_0x41d787(0x15d)]??null,'defaultApp':_0x277543,'defaultAppSource':_0x15b167!=null?_0x28b99b:null}:{'scope':_0x58f3c5,'configPath':_0x1d183f??null};return{'ok':!![],'data':{'items':_0x167df7,'meta':_0x40bfd6}};}function a21_0xdfc7(){const _0x2cceab=['find','mergedCli','1307739NbYQHU','global','globalPath','6603890nklxHp','2904921PpiOWn','\x20config','app','627162tqitNK','globalConfig','21UTiZcQ','map','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','bool','apps','object','project','\x20in\x20','196YLbSJZ','7634456dYJGhe','70vzSVzI','.\x20Use\x20`','inherit','isCurrent','appcode','projectConfig','list','No\x20apps\x20configured','push','length','read','entries','2499220XDUjYg','67383vJLACK','merged','boolean','projectPath'];a21_0xdfc7=function(){return _0x2cceab;};return a21_0xdfc7();}export const appListDefinition={'service':a21_0xead002(0x166),'command':a21_0xead002(0x153),'description':'List\x20all\x20configured\x20apps','risk':a21_0xead002(0x157),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0xead002(0x161),'type':a21_0xead002(0x15c),'description':a21_0xead002(0x145),'default':![]},{'name':a21_0xead002(0x149),'type':'boolean','description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};
@@ -1 +1 @@
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
+ const a22_0x340396=a22_0x5efa;(function(_0x562a75,_0x2ce35a){const _0x331e6b=a22_0x5efa,_0xd3a56e=_0x562a75();while(!![]){try{const _0x5adcda=-parseInt(_0x331e6b(0xd1))/0x1+-parseInt(_0x331e6b(0xcd))/0x2*(parseInt(_0x331e6b(0xc6))/0x3)+-parseInt(_0x331e6b(0xb9))/0x4+parseInt(_0x331e6b(0xcb))/0x5*(parseInt(_0x331e6b(0xb6))/0x6)+parseInt(_0x331e6b(0xc5))/0x7*(parseInt(_0x331e6b(0xac))/0x8)+parseInt(_0x331e6b(0xbb))/0x9*(parseInt(_0x331e6b(0xb3))/0xa)+parseInt(_0x331e6b(0xc3))/0xb*(parseInt(_0x331e6b(0xca))/0xc);if(_0x5adcda===_0x2ce35a)break;else _0xd3a56e['push'](_0xd3a56e['shift']());}catch(_0x16f3fe){_0xd3a56e['push'](_0xd3a56e['shift']());}}}(a22_0x13db,0xb84f1));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a22_0x13db(){const _0x325ac4=['defaultApp','App\x20\x22','147209DjLyZt','\x20Note:\x20app\x20\x22','6805688rcDxkY','boolean','Missing\x20app\x20name.','Removed\x20app\x20\x22','trim','project','remove','4745140FJXsCx','\x22\x20not\x20found.','object','4656558NRxBod','global','\x22\x20still\x20defined\x20in\x20','2115592MjJMKJ','\x20app\x20remove\x20<name>\x20[--global]','9UEtaBL','high-risk-write','\x20config.','validation','args','apps','\x20Default\x20app\x20changed\x20to\x20\x22','keys','7447NJMWpp','inherit','7MdjUJd','1137QKogMf','projectConfig','name','Usage:\x20','10980JkgJqL','5waklXk','globalConfig','6806Sozdab','length'];a22_0x13db=function(){return _0x325ac4;};return a22_0x13db();}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0xa0196d){const _0x6c14d1=a22_0x5efa,_0x844c6d=_0xa0196d[_0x6c14d1(0xbf)][0x0]?.[_0x6c14d1(0xb0)]();if(!_0x844c6d)throw CliErrors[_0x6c14d1(0xbe)](_0x6c14d1(0xae),_0x6c14d1(0xc9)+CLI_BIN_NAME+_0x6c14d1(0xba));}function a22_0x5efa(_0x107cda,_0x590beb){_0x107cda=_0x107cda-0xac;const _0x13dbc5=a22_0x13db();let _0x5efa75=_0x13dbc5[_0x107cda];return _0x5efa75;}async function execute(_0x1dc688){const _0x3bffd8=a22_0x5efa,_0x18cba8=_0x1dc688['args'][0x0]?.[_0x3bffd8(0xb0)]();if(!_0x18cba8)throw CliErrors['validation']('Missing\x20app\x20name.',_0x3bffd8(0xc9)+CLI_BIN_NAME+_0x3bffd8(0xba));const _0x76abc=_0x1dc688['bool'](_0x3bffd8(0xb7)),{config:_0x398f54,layers:_0x466bc2}=readRawConfigWithLayers(),_0x3ad877=_0x398f54[_0x3bffd8(0xc0)]??{};if(!_0x3ad877[_0x18cba8])throw CliErrors['validation'](_0x3bffd8(0xd0)+_0x18cba8+_0x3bffd8(0xb4));const _0x1b031d=_0x466bc2[_0x3bffd8(0xcc)]['apps']&&typeof _0x466bc2[_0x3bffd8(0xcc)][_0x3bffd8(0xc0)]===_0x3bffd8(0xb5)?_0x466bc2['globalConfig'][_0x3bffd8(0xc0)]:{},_0xf18d4d=_0x466bc2[_0x3bffd8(0xc7)][_0x3bffd8(0xc0)]&&typeof _0x466bc2[_0x3bffd8(0xc7)][_0x3bffd8(0xc0)]===_0x3bffd8(0xb5)?_0x466bc2[_0x3bffd8(0xc7)][_0x3bffd8(0xc0)]:{},_0x47bc0e=appDefinedIn(_0x18cba8,_0x1b031d,_0xf18d4d,_0x466bc2[_0x3bffd8(0xc7)][_0x3bffd8(0xc4)]===![]),_0x1ef720=resolveAppScopeForWrite(_0x18cba8,_0x76abc,_0x466bc2),_0x33ddb8={'global':_0x1ef720===_0x3bffd8(0xb7)},_0x17eb71=readConfig(_0x33ddb8),_0x48853f=_0x17eb71[_0x3bffd8(0xc0)];if(!_0x48853f||!_0x48853f[_0x18cba8])throw CliErrors['validation'](_0x3bffd8(0xd0)+_0x18cba8+_0x3bffd8(0xb4));delete _0x48853f[_0x18cba8];let _0xf5c818='';if(_0x17eb71[_0x3bffd8(0xcf)]===_0x18cba8){const _0x3ea4a3=Object[_0x3bffd8(0xc2)](_0x48853f);_0x17eb71[_0x3bffd8(0xcf)]=_0x3ea4a3['length']>0x0?_0x3ea4a3[0x0]:undefined,_0x17eb71[_0x3bffd8(0xcf)]?_0xf5c818=_0x3bffd8(0xc1)+_0x17eb71['defaultApp']+'\x22.':delete _0x17eb71[_0x3bffd8(0xcf)];}Object[_0x3bffd8(0xc2)](_0x48853f)[_0x3bffd8(0xce)]===0x0&&(delete _0x17eb71[_0x3bffd8(0xc0)],delete _0x17eb71['defaultApp']);writeConfig(_0x17eb71,_0x33ddb8);const _0x42ac22=_0x47bc0e==='both'?_0x3bffd8(0xd2)+_0x18cba8+_0x3bffd8(0xb8)+(_0x1ef720===_0x3bffd8(0xb1)?_0x3bffd8(0xb7):_0x3bffd8(0xb1))+_0x3bffd8(0xbd):'';return{'ok':!![],'message':_0x3bffd8(0xaf)+_0x18cba8+'\x22'+scopeLabel(_0x33ddb8)+'.'+_0xf5c818+_0x42ac22};}export const appRemoveDefinition={'service':'app','command':a22_0x340396(0xb2),'description':'Remove\x20an\x20app\x20from\x20config','risk':a22_0x340396(0xbc),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x340396(0xc8),'description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':[{'name':a22_0x340396(0xb7),'type':a22_0x340396(0xad),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
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
+ (function(_0x5cb799,_0x228fc8){const _0x3fa613=a23_0x8d66,_0x151244=_0x5cb799();while(!![]){try{const _0xb08e0a=parseInt(_0x3fa613(0x11f))/0x1*(parseInt(_0x3fa613(0x11e))/0x2)+parseInt(_0x3fa613(0x126))/0x3*(-parseInt(_0x3fa613(0x11c))/0x4)+-parseInt(_0x3fa613(0x123))/0x5+parseInt(_0x3fa613(0x119))/0x6*(parseInt(_0x3fa613(0x114))/0x7)+-parseInt(_0x3fa613(0x11d))/0x8*(-parseInt(_0x3fa613(0x117))/0x9)+-parseInt(_0x3fa613(0x113))/0xa*(-parseInt(_0x3fa613(0x127))/0xb)+-parseInt(_0x3fa613(0x111))/0xc*(parseInt(_0x3fa613(0x121))/0xd);if(_0xb08e0a===_0x228fc8)break;else _0x151244['push'](_0x151244['shift']());}catch(_0x7d2ecc){_0x151244['push'](_0x151244['shift']());}}}(a23_0x2341,0x6725d));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x26c224,_0x1fd6ab){const _0x44fda6=a23_0x8d66;if(!_0x1fd6ab)return;const _0x2a682d=_0x1fd6ab[_0x44fda6(0x116)]&&typeof _0x1fd6ab['apps']===_0x44fda6(0x10f)?_0x1fd6ab[_0x44fda6(0x116)]:{},_0x2f681f=Object['keys'](_0x2a682d)[_0x44fda6(0x12c)]>0x0;for(const _0xcb1449 of _0x26c224){_0xcb1449[_0x44fda6(0x128)]=![];}const _0xeeaf97=_0x1fd6ab[_0x44fda6(0x12b)]!=null?String(_0x1fd6ab[_0x44fda6(0x12b)])['trim']():'';if(_0x2f681f){const _0x1b3b1c=_0x1fd6ab[_0x44fda6(0x112)]??_0x1fd6ab[_0x44fda6(0x12f)];if(_0x1b3b1c)for(const _0x3e249 of _0x26c224){_0x3e249[_0x44fda6(0x110)]===!![]&&_0x3e249['name']===_0x1b3b1c&&(_0x3e249[_0x44fda6(0x128)]=!![]);}for(const _0x55cb88 of _0x26c224){if(_0x55cb88[_0x44fda6(0x110)]!==![])continue;if(_0x1fd6ab[_0x44fda6(0x12f)])continue;_0xeeaf97&&String(_0x55cb88['appcode']??'')[_0x44fda6(0x124)]()===_0xeeaf97&&(_0x55cb88[_0x44fda6(0x128)]=!![]);}return;}if(!_0xeeaf97)return;for(const _0x3cf48d of _0x26c224){String(_0x3cf48d[_0x44fda6(0x115)]??'')['trim']()===_0xeeaf97&&(_0x3cf48d[_0x44fda6(0x128)]=!![]);}}export function resolveAppScopeForWrite(_0x3dc8bf,_0x33f33f,_0x2f5e16){const _0x2863c2=a23_0x8d66;if(_0x33f33f)return'global';const _0x175ef9=_0x2f5e16[_0x2863c2(0x118)]['apps']&&typeof _0x2f5e16[_0x2863c2(0x118)][_0x2863c2(0x116)]===_0x2863c2(0x10f)?_0x2f5e16[_0x2863c2(0x118)][_0x2863c2(0x116)]:{},_0x5afde4=_0x2f5e16[_0x2863c2(0x12a)][_0x2863c2(0x116)]&&typeof _0x2f5e16['globalConfig'][_0x2863c2(0x116)]===_0x2863c2(0x10f)?_0x2f5e16[_0x2863c2(0x12a)][_0x2863c2(0x116)]:{};if(Object[_0x2863c2(0x11b)][_0x2863c2(0x129)][_0x2863c2(0x125)](_0x175ef9,_0x3dc8bf))return _0x2863c2(0x12d);if(Object['prototype'][_0x2863c2(0x129)][_0x2863c2(0x125)](_0x5afde4,_0x3dc8bf))return _0x2863c2(0x12e);return _0x2863c2(0x12d);}export function appDefinedIn(_0x18601f,_0x30f834,_0x557840,_0x266c00){const _0x3e2187=a23_0x8d66;if(_0x266c00)return Object[_0x3e2187(0x11b)][_0x3e2187(0x129)][_0x3e2187(0x125)](_0x557840,_0x18601f)?_0x3e2187(0x12d):_0x3e2187(0x12e);const _0x4091f6=Object['prototype']['hasOwnProperty'][_0x3e2187(0x125)](_0x30f834,_0x18601f),_0x2b5037=Object[_0x3e2187(0x11b)]['hasOwnProperty'][_0x3e2187(0x125)](_0x557840,_0x18601f);if(_0x4091f6&&_0x2b5037)return'both';if(_0x2b5037)return'project';return _0x3e2187(0x12e);}export function resolveDefaultAppSource(_0x4e6eca){const _0x2e5b37=a23_0x8d66,_0x3ea9b9=_0x4e6eca['projectConfig'][_0x2e5b37(0x116)]&&typeof _0x4e6eca[_0x2e5b37(0x118)]['apps']===_0x2e5b37(0x10f)?_0x4e6eca['projectConfig'][_0x2e5b37(0x116)]:{};if(_0x2e5b37(0x12f)in _0x4e6eca[_0x2e5b37(0x118)])return _0x2e5b37(0x12d);if(Object[_0x2e5b37(0x11a)](_0x3ea9b9)[_0x2e5b37(0x12c)]>0x0)return _0x2e5b37(0x12d);if(_0x4e6eca['projectConfig'][_0x2e5b37(0x122)]===![])return null;if(_0x4e6eca['globalConfig']['defaultApp'])return _0x2e5b37(0x12e);return null;}export function getConfigPath(_0x4c6bd5={}){const _0x44bf70=a23_0x8d66,_0x2bab58=_0x4c6bd5['global']?_0x44bf70(0x12e):_0x44bf70(0x12d);return resolveWriteConfigPath(_0x2bab58);}export function readConfig(_0x3ba8b0={}){return readConfigFile(getConfigPath(_0x3ba8b0));}function a23_0x8d66(_0x1ece6e,_0x22fb5e){_0x1ece6e=_0x1ece6e-0x10f;const _0x234101=a23_0x2341();let _0x8d666d=_0x234101[_0x1ece6e];return _0x8d666d;}function a23_0x2341(){const _0x25923e=['trim','call','21NZCYTx','11fJhlHJ','isCurrent','hasOwnProperty','globalConfig','appCode','length','project','global','defaultApp','object','named','12tCqhSn','currentApp','6045420awvxCl','3738hoRNOC','appcode','apps','306lfZiHR','projectConfig','2466IkwBjs','keys','prototype','378708ZSgZxn','84200JfhMiw','64772OTIEDr','2mVjnEQ','\x20(global)','358007yrvsmx','inherit','669335XgLkDi'];a23_0x2341=function(){return _0x25923e;};return a23_0x2341();}export function writeConfig(_0x3eac2c,_0x193fa3={}){writeConfigFile(getConfigPath(_0x193fa3),_0x3eac2c);}export function scopeLabel(_0x2a50e4){const _0x10185c=a23_0x8d66;return _0x2a50e4['global']?_0x10185c(0x120):'';}
@@ -1 +1 @@
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
+ const a24_0x664511=a24_0x1efd;(function(_0x4d25af,_0x24d002){const _0x32a986=a24_0x1efd,_0x142af0=_0x4d25af();while(!![]){try{const _0x7ef42=-parseInt(_0x32a986(0x142))/0x1+parseInt(_0x32a986(0x146))/0x2+parseInt(_0x32a986(0x139))/0x3+parseInt(_0x32a986(0x140))/0x4+parseInt(_0x32a986(0x13b))/0x5*(parseInt(_0x32a986(0x145))/0x6)+-parseInt(_0x32a986(0x13e))/0x7+-parseInt(_0x32a986(0x12e))/0x8;if(_0x7ef42===_0x24d002)break;else _0x142af0['push'](_0x142af0['shift']());}catch(_0x31ca6a){_0x142af0['push'](_0x142af0['shift']());}}}(a24_0x165c,0xb540f));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0xa8292b){const _0x26ca25=a24_0x1efd,_0x1edb66=_0xa8292b[_0x26ca25(0x127)][0x0]?.[_0x26ca25(0x149)]();if(!_0x1edb66)throw CliErrors[_0x26ca25(0x144)]('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x26ca25(0x137));}function a24_0x1efd(_0x518850,_0x384faa){_0x518850=_0x518850-0x125;const _0x165c2f=a24_0x165c();let _0x1efd7d=_0x165c2f[_0x518850];return _0x1efd7d;}async function execute(_0x1b02ae){const _0x4f7e90=a24_0x1efd,_0x54ab8b=_0x1b02ae[_0x4f7e90(0x127)][0x0]?.[_0x4f7e90(0x149)]();if(!_0x54ab8b)throw CliErrors['validation'](_0x4f7e90(0x129),_0x4f7e90(0x131)+CLI_BIN_NAME+_0x4f7e90(0x137));const _0x17f7c8=_0x1b02ae[_0x4f7e90(0x141)](_0x4f7e90(0x12a)),{config:_0x4bb824,layers:_0x473d3e}=readRawConfigWithLayers(),_0x333c01=_0x4bb824['apps']??{},_0x404091=_0x473d3e[_0x4f7e90(0x13c)][_0x4f7e90(0x12d)]&&typeof _0x473d3e[_0x4f7e90(0x13c)][_0x4f7e90(0x12d)]===_0x4f7e90(0x12f)?_0x473d3e[_0x4f7e90(0x13c)][_0x4f7e90(0x12d)]:{},_0x2a6bce={..._0x404091,..._0x333c01};if(!_0x2a6bce[_0x54ab8b]){const _0x180e85=Object[_0x4f7e90(0x133)](_0x2a6bce),_0x12b393=_0x180e85['length']===0x0?'Use\x20`'+CLI_BIN_NAME+_0x4f7e90(0x12c)+_0x54ab8b+'\x20--appcode\x20<code>`\x20first.':_0x4f7e90(0x132)+_0x180e85['join'](',\x20');throw CliErrors[_0x4f7e90(0x144)]('App\x20\x22'+_0x54ab8b+_0x4f7e90(0x148),_0x12b393);}let _0x2e9445,_0x1d2c9f='';if(_0x17f7c8)_0x2e9445={'global':!![]};else{const _0x12ac3d=isInProject()&&!!_0x473d3e['projectPath'];_0x2e9445={'global':!_0x12ac3d};}const _0x47428a=readConfig(_0x2e9445);_0x47428a[_0x4f7e90(0x13a)]=_0x54ab8b;if(!_0x2e9445[_0x4f7e90(0x12a)]){const _0x2815e1=_0x47428a[_0x4f7e90(0x12d)]&&typeof _0x47428a[_0x4f7e90(0x12d)]===_0x4f7e90(0x12f)?_0x47428a[_0x4f7e90(0x12d)]:{};!Object[_0x4f7e90(0x126)][_0x4f7e90(0x12b)][_0x4f7e90(0x143)](_0x2815e1,_0x54ab8b)&&(_0x47428a['apps']={..._0x2815e1,[_0x54ab8b]:_0x2a6bce[_0x54ab8b]},_0x1d2c9f=_0x4f7e90(0x13f)+_0x54ab8b+_0x4f7e90(0x135));}return writeConfig(_0x47428a,_0x2e9445),{'ok':!![],'message':_0x4f7e90(0x125)+_0x54ab8b+_0x4f7e90(0x13d)+_0x2a6bce[_0x54ab8b]['appcode']+')'+scopeLabel(_0x2e9445)+_0x1d2c9f};}export const appUseDefinition={'service':a24_0x664511(0x128),'command':a24_0x664511(0x14a),'description':a24_0x664511(0x130),'risk':a24_0x664511(0x138),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a24_0x664511(0x136),'required':!![]}],'flags':[{'name':a24_0x664511(0x12a),'type':a24_0x664511(0x134),'description':a24_0x664511(0x147),'default':![]}],'validate':validateArgs,'execute':execute};function a24_0x165c(){const _0x222714=['2212266OZdmnK','\x0aNote:\x20\x22','3986712MnjKqc','bool','1334764dmNygR','call','validation','6JLcYGK','678866NNnLmE','Use\x20global\x20config\x20scope','\x22\x20not\x20found.','trim','use','Default\x20app\x20set\x20to\x20\x22','prototype','args','app','Missing\x20app\x20name.','global','hasOwnProperty','\x20app\x20add\x20','apps','4318856KJsGxz','object','Switch\x20the\x20default\x20app','Usage:\x20','Available:\x20','keys','boolean','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','App\x20profile\x20name\x20to\x20activate','\x20app\x20use\x20<name>\x20[--global]','write','2652678wgVgtV','defaultApp','3563685Ucxwrc','globalConfig','\x22\x20(appcode:\x20'];a24_0x165c=function(){return _0x222714;};return a24_0x165c();}
@@ -1 +1 @@
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
+ const a25_0x227440=a25_0x33a5;(function(_0x598912,_0x52adcb){const _0xa1bcbe=a25_0x33a5,_0x2e4792=_0x598912();while(!![]){try{const _0x47fa46=-parseInt(_0xa1bcbe(0x10d))/0x1+parseInt(_0xa1bcbe(0x116))/0x2*(parseInt(_0xa1bcbe(0x102))/0x3)+-parseInt(_0xa1bcbe(0x112))/0x4*(parseInt(_0xa1bcbe(0x110))/0x5)+-parseInt(_0xa1bcbe(0x100))/0x6+parseInt(_0xa1bcbe(0x10a))/0x7*(parseInt(_0xa1bcbe(0x111))/0x8)+-parseInt(_0xa1bcbe(0x10b))/0x9+-parseInt(_0xa1bcbe(0x105))/0xa*(-parseInt(_0xa1bcbe(0x107))/0xb);if(_0x47fa46===_0x52adcb)break;else _0x2e4792['push'](_0x2e4792['shift']());}catch(_0x411fe3){_0x2e4792['push'](_0x2e4792['shift']());}}}(a25_0x31d6,0x32343));import{unlinkSync,existsSync}from'node:fs';function a25_0x33a5(_0x20ba2c,_0x9be63e){_0x20ba2c=_0x20ba2c-0x100;const _0x31d606=a25_0x31d6();let _0x33a58d=_0x31d606[_0x20ba2c];return _0x33a58d;}import{cookieFile}from'../../auth/constant.js';function a25_0x31d6(){const _0x24bcac=['Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','61917qcEZZd','!\x20Not\x20logged\x20in','nonInteractive','10zYBqsY','boolean','4021479kgvRQn','Clear\x20login\x20session','write','49UplEGk','1416303EOYqzM','bool','208050JqxoxC','log','auth','6095jAOLaK','433064vlOpqE','660wnANNw','✓\x20Logged\x20out','yes','login','34JmlXEL','1939176xPjBLN'];a25_0x31d6=function(){return _0x24bcac;};return a25_0x31d6();}export const authDefinitions=[{'service':a25_0x227440(0x10f),'command':a25_0x227440(0x115),'description':'Login\x20via\x20browser','risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x227440(0x114),'type':a25_0x227440(0x106),'description':a25_0x227440(0x101),'default':![]}],async 'execute'(_0x1b2749){const _0x14d881=a25_0x227440,{runAuthServer:_0x3ab1e6}=await import('../../auth/auth-server-ui.js');return await _0x3ab1e6({'autoYes':_0x1b2749[_0x14d881(0x10c)]('yes'),'nonInteractive':_0x1b2749[_0x14d881(0x104)]}),{'ok':!![]};}},{'service':a25_0x227440(0x10f),'command':'logout','description':a25_0x227440(0x108),'risk':a25_0x227440(0x109),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x43200e){const _0x1f3b6a=a25_0x227440;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x1f3b6a(0x10e)](_0x1f3b6a(0x113))):console[_0x1f3b6a(0x10e)](_0x1f3b6a(0x103)),{'ok':!![]};}}];
@@ -1 +1 @@
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
+ const a26_0x2abed4=a26_0x5a67;(function(_0xe5128b,_0xa5732a){const _0x2a3ff5=a26_0x5a67,_0x2cebf3=_0xe5128b();while(!![]){try{const _0x113352=-parseInt(_0x2a3ff5(0x190))/0x1*(parseInt(_0x2a3ff5(0x1b8))/0x2)+parseInt(_0x2a3ff5(0x1c6))/0x3*(-parseInt(_0x2a3ff5(0x19c))/0x4)+-parseInt(_0x2a3ff5(0x1e0))/0x5+parseInt(_0x2a3ff5(0x1bb))/0x6*(parseInt(_0x2a3ff5(0x1b7))/0x7)+-parseInt(_0x2a3ff5(0x1b2))/0x8*(-parseInt(_0x2a3ff5(0x1b1))/0x9)+parseInt(_0x2a3ff5(0x18c))/0xa*(-parseInt(_0x2a3ff5(0x1d5))/0xb)+-parseInt(_0x2a3ff5(0x199))/0xc*(-parseInt(_0x2a3ff5(0x1d4))/0xd);if(_0x113352===_0xa5732a)break;else _0x2cebf3['push'](_0x2cebf3['shift']());}catch(_0x30faa0){_0x2cebf3['push'](_0x2cebf3['shift']());}}}(a26_0x4af1,0x52c01));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_0x4af1(){const _0x265cf0=['168tYBWRJ','4pqxpHB','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','find','25434hgjHai','functionNode','Trigger\x20node\x20(HOOK\x20only)','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','trim','validation','Created\x20','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','bff','Available\x20aliases:\x20','source','696537VVPDqH','length','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','description','UNKNOWN','\x22\x20not\x20found\x20for\x20dataset\x20','isInteger','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','scriptsRootDir','apiDir','write','No\x20datasets\x20found\x20for\x20this\x20app.','\x22\x20not\x20found.\x20','after','13beYpRS','8030iRyVOd','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','before','Dataset\x20not\x20found\x20for\x20code\x20\x22','.js','operation-type','keys','datasetcode','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','3167360hXRBEy','\x20function:\x20','question','join','entries','\x0a\x20*\x20[脚本名称]\x20','3130JPQzFo','str','parseInt','stderr','139193FbFzvD','Operation\x20type\x20(HOOK\x20only)','operationType','nonInteractive','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','includes','utf8','Alias\x20\x22','Script\x20type','17916420OWeHvQ','appCode','\x20api\x20pull`\x20to\x20refresh.','4MEGEvX','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Operation\x20type\x20\x22','stdin','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','Function\x20name\x20(valid\x20JS\x20identifier)','TODO:\x20add\x20script\x20description','tableName','File\x20already\x20exists:\x20','ENDPOINT','code','Select\x20dataset:','close','string','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','map','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','function-node','Invalid\x20dataset\x20selection.','\x22.\x20','80793ALhDEy','104qAEvLM','alias','datasetCode','Invalid\x20function\x20name\x20\x22','HOOK'];a26_0x4af1=function(){return _0x265cf0;};return a26_0x4af1();}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_0x2abed4(0x1c3),'command':'create','description':a26_0x2abed4(0x194),'risk':a26_0x2abed4(0x1d0),'flags':[{'name':'type','type':a26_0x2abed4(0x1a9),'required':!![],'enum':['COMMON',a26_0x2abed4(0x1a5),a26_0x2abed4(0x1b6)],'description':a26_0x2abed4(0x198)},{'name':a26_0x2abed4(0x1aa),'type':a26_0x2abed4(0x1a9),'required':!![],'description':a26_0x2abed4(0x1a1)},{'name':a26_0x2abed4(0x1c9),'type':a26_0x2abed4(0x1a9),'description':'Script\x20description'},{'name':'alias','type':'string','description':a26_0x2abed4(0x1de)},{'name':a26_0x2abed4(0x1dc),'type':a26_0x2abed4(0x1a9),'description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':a26_0x2abed4(0x1da),'type':a26_0x2abed4(0x1a9),'description':a26_0x2abed4(0x191)},{'name':a26_0x2abed4(0x1ae),'type':a26_0x2abed4(0x1a9),'description':a26_0x2abed4(0x1bd),'enum':[a26_0x2abed4(0x1d7),a26_0x2abed4(0x1d3)]}],async 'validate'(_0x14f590){const _0x36a575=a26_0x2abed4,_0x2aa694=_0x14f590[_0x36a575(0x18d)](_0x36a575(0x1aa));if(!isValidBffFunctionName(_0x2aa694))throw CliErrors[_0x36a575(0x1c0)](_0x36a575(0x1b5)+_0x2aa694+_0x36a575(0x1c8));},async 'execute'(_0x4fceff){const _0x599ec2=a26_0x2abed4,_0x2da232=loadBffProjectConfig(_0x4fceff[_0x599ec2(0x19a)]),_0x1f16c1=_0x4fceff['str']('type'),_0x13d3f1=_0x4fceff[_0x599ec2(0x18d)]('name'),_0x2737a0=_0x4fceff['str'](_0x599ec2(0x1c9))||undefined,_0x20f5cb=_0x1f16c1===_0x599ec2(0x1b6)?await resolveHookOptions(_0x2da232,_0x4fceff):undefined,_0x581e3c=buildFilePath(_0x2da232,_0x1f16c1,_0x13d3f1,_0x20f5cb);if(await fileExists(_0x581e3c))throw CliErrors[_0x599ec2(0x1c0)](_0x599ec2(0x1a4)+_0x581e3c);await mkdir(dirname(_0x581e3c),{'recursive':!![]});const _0x1a8b23=generateTemplate(_0x1f16c1,_0x13d3f1,_0x4fceff['appCode'],_0x2737a0,_0x20f5cb);await writeFile(_0x581e3c,_0x1a8b23,_0x599ec2(0x196));const _0xba8a33={'type':_0x1f16c1,'name':_0x13d3f1,'path':_0x581e3c};if(_0x2737a0)_0xba8a33['description']=_0x2737a0;if(_0x20f5cb){if(_0x20f5cb[_0x599ec2(0x1b3)])_0xba8a33[_0x599ec2(0x1b3)]=_0x20f5cb[_0x599ec2(0x1b3)];_0xba8a33[_0x599ec2(0x1b4)]=_0x20f5cb[_0x599ec2(0x1b4)],_0xba8a33[_0x599ec2(0x192)]=_0x20f5cb[_0x599ec2(0x192)],_0xba8a33[_0x599ec2(0x1bc)]=_0x20f5cb['functionNode'];}return{'ok':!![],'data':_0xba8a33,'message':_0x599ec2(0x1c1)+_0x1f16c1+_0x599ec2(0x1e1)+_0x13d3f1};}};async function resolveHookOptions(_0x376cf1,_0x5e882e){const _0x35b38f=a26_0x2abed4,_0x455cdd=loadAliasMap(_0x5e882e[_0x35b38f(0x1cf)],undefined,resolveApiFilePath(_0x5e882e['apiDir'],_0x5e882e[_0x35b38f(0x19a)])),_0x471131=_0x455cdd[_0x35b38f(0x1c7)]>0x0;let _0x578321,_0xd477e,_0x32c9ba;const _0x229eea=_0x5e882e[_0x35b38f(0x18d)](_0x35b38f(0x1b3)),_0x4c7a85=_0x5e882e[_0x35b38f(0x18d)]('datasetcode');if(_0x229eea){const _0x289155=resolveAlias(_0x5e882e[_0x35b38f(0x1cf)],_0x229eea,undefined,resolveApiFilePath(_0x5e882e[_0x35b38f(0x1cf)],_0x5e882e[_0x35b38f(0x19a)]));if(!_0x289155){const _0x3ec62d=_0x471131?_0x35b38f(0x1c4)+_0x455cdd[_0x35b38f(0x1ac)](_0x7fae2a=>_0x7fae2a[_0x35b38f(0x1b3)])[_0x35b38f(0x189)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+_0x35b38f(0x1dd);throw CliErrors[_0x35b38f(0x1c0)](_0x35b38f(0x197)+_0x229eea+_0x35b38f(0x1d2)+_0x3ec62d);}_0x578321=_0x229eea,_0xd477e=_0x289155;}else{if(_0x4c7a85){_0xd477e=_0x4c7a85;const _0x1cd1bf=_0x455cdd['find'](_0x243a0b=>_0x243a0b['datasetCode']===_0x4c7a85);_0x578321=_0x1cd1bf?.[_0x35b38f(0x1b3)];}else{if(_0x5e882e[_0x35b38f(0x193)])throw CliErrors[_0x35b38f(0x1c0)]('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x471131){const _0x2c2aec=_0x455cdd[_0x35b38f(0x1ac)](_0x113e99=>_0x113e99[_0x35b38f(0x1b3)]+'\x20('+_0x113e99[_0x35b38f(0x1a3)]+')'),_0xe94ef5=await promptSelect(_0x35b38f(0x1a7),_0x2c2aec),_0x3c392e=_0x455cdd[_0xe94ef5];if(!_0x3c392e)throw CliErrors[_0x35b38f(0x1c0)](_0x35b38f(0x1af));_0x578321=_0x3c392e[_0x35b38f(0x1b3)],_0xd477e=_0x3c392e[_0x35b38f(0x1b4)];}else{const _0x46d2cf=await listDatasets(_0x5e882e[_0x35b38f(0x19a)]);if(_0x46d2cf[_0x35b38f(0x1c7)]===0x0)throw CliErrors[_0x35b38f(0x1c0)](_0x35b38f(0x1d1));const _0x5df4ab=_0x46d2cf[_0x35b38f(0x1ac)](_0x2fbfe0=>_0x2fbfe0['name']+'\x20['+(_0x2fbfe0[_0x35b38f(0x1c5)]??_0x35b38f(0x1ca))+']\x20('+_0x2fbfe0['code']+')'),_0x1bebc1=await promptSelect(_0x35b38f(0x1a7),_0x5df4ab),_0x7f0c0b=_0x46d2cf[_0x1bebc1];if(!_0x7f0c0b)throw CliErrors[_0x35b38f(0x1c0)](_0x35b38f(0x1af));_0xd477e=_0x7f0c0b[_0x35b38f(0x1a6)],_0x578321=undefined;}}}}const _0x460097=await listDatasets(_0x5e882e[_0x35b38f(0x19a)]),_0x139d14=_0x460097[_0x35b38f(0x1ba)](_0x3d2ef6=>_0x3d2ef6[_0x35b38f(0x1a6)]===_0xd477e);if(!_0x139d14)throw CliErrors[_0x35b38f(0x1c0)](_0x35b38f(0x1d8)+_0xd477e+_0x35b38f(0x1b0)+(_0x578321?'The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'+CLI_BIN_NAME+_0x35b38f(0x19b):''));_0x32c9ba=_0x139d14['id'];const _0x4443a0=_0x578321??_0xd477e,_0x121dba=await listBffDatasetOperations(_0x5e882e[_0x35b38f(0x19a)],_0x32c9ba),_0x2989b4=_0x121dba?Object[_0x35b38f(0x1db)](_0x121dba):[];if(_0x2989b4[_0x35b38f(0x1c7)]===0x0)throw CliErrors[_0x35b38f(0x1c0)]('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x4443a0+'.');let _0x26cb33;const _0x355322=_0x5e882e[_0x35b38f(0x18d)](_0x35b38f(0x1da));if(_0x355322){if(!_0x2989b4[_0x35b38f(0x195)](_0x355322))throw CliErrors[_0x35b38f(0x1c0)](_0x35b38f(0x19e)+_0x355322+_0x35b38f(0x1cb)+_0x4443a0+'.\x20'+('Available:\x20'+_0x2989b4[_0x35b38f(0x189)](',\x20')));_0x26cb33=_0x355322;}else{if(_0x5e882e['nonInteractive'])throw CliErrors[_0x35b38f(0x1c0)](_0x35b38f(0x1df));const _0x580da8=await promptSelect('Select\x20operation\x20type:',_0x2989b4);_0x26cb33=_0x2989b4[_0x580da8]??_0x2989b4[0x0];}let _0x196300=normalizeHookFunctionNode(_0x5e882e[_0x35b38f(0x18d)]('function-node'));if(!_0x196300){if(_0x5e882e[_0x35b38f(0x18d)]('function-node'))throw CliErrors['validation'](_0x35b38f(0x1b9));if(_0x5e882e[_0x35b38f(0x193)])throw CliErrors[_0x35b38f(0x1c0)](_0x35b38f(0x1c2));const _0x5c4453=await promptSelect('Select\x20trigger\x20node:',['before',_0x35b38f(0x1d3)]);_0x196300=[_0x35b38f(0x1d7),_0x35b38f(0x1d3)][_0x5c4453]??_0x35b38f(0x1d7);}return{'alias':_0x578321,'datasetCode':_0xd477e,'datasetId':_0x32c9ba,'operationType':_0x26cb33,'functionNode':_0x196300};}async function promptSelect(_0x32738b,_0x142e33){const _0x7368ba=a26_0x2abed4;if(_0x142e33['length']===0x1)return 0x0;for(const [_0xafffc3,_0x108e58]of _0x142e33[_0x7368ba(0x18a)]()){process[_0x7368ba(0x18f)][_0x7368ba(0x1d0)]('\x20\x20'+(_0xafffc3+0x1)+'.\x20'+_0x108e58+'\x0a');}const _0x391c57=createInterface({'input':process[_0x7368ba(0x19f)],'output':process[_0x7368ba(0x18f)]});while(!![]){const _0xb7781a=await new Promise(_0x1448b8=>{const _0x362818=_0x7368ba;_0x391c57[_0x362818(0x188)](_0x32738b+'\x20',_0x1448b8);}),_0x510ca4=Number[_0x7368ba(0x18e)](_0xb7781a[_0x7368ba(0x1bf)](),0xa);if(Number[_0x7368ba(0x1cc)](_0x510ca4)&&_0x510ca4>=0x1&&_0x510ca4<=_0x142e33[_0x7368ba(0x1c7)])return _0x391c57[_0x7368ba(0x1a8)](),_0x510ca4-0x1;process['stderr']['write'](_0x7368ba(0x1cd)+_0x142e33[_0x7368ba(0x1c7)]+'.\x0a');}}function a26_0x5a67(_0x588cf5,_0x31b7be){_0x588cf5=_0x588cf5-0x188;const _0x4af191=a26_0x4af1();let _0x5a675d=_0x4af191[_0x588cf5];return _0x5a675d;}function buildFilePath(_0x35cefe,_0x1162e0,_0x5ecc58,_0x1c74b9){const _0x3cbdac=a26_0x2abed4;if(_0x1162e0===_0x3cbdac(0x1b6)){if(!_0x1c74b9)throw CliErrors[_0x3cbdac(0x1c0)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x544af4=_0x1c74b9[_0x3cbdac(0x1b3)]??_0x1c74b9['datasetCode'];return join(_0x35cefe[_0x3cbdac(0x1ce)],_0x3cbdac(0x1b6),_0x544af4,_0x1c74b9[_0x3cbdac(0x192)],_0x1c74b9[_0x3cbdac(0x1bc)],_0x5ecc58+_0x3cbdac(0x1d9));}return join(_0x35cefe['scriptsRootDir'],_0x1162e0,_0x5ecc58+_0x3cbdac(0x1d9));}export function generateTemplate(_0x32ea92,_0x3cf9a9,_0x3e0dd6,_0x573a71,_0x354bbb){const _0x224eda=a26_0x2abed4,_0x443c70=_0x573a71?.['trim']()||_0x224eda(0x1a2);if(_0x32ea92==='COMMON')return _0x224eda(0x1ad)+_0x443c70+_0x224eda(0x18b)+_0x3cf9a9+_0x224eda(0x1d6)+_0x3cf9a9+_0x224eda(0x1ab)+_0x3cf9a9+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x32ea92==='ENDPOINT')return'/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x443c70+_0x224eda(0x1be)+_0x3e0dd6+'/'+_0x3cf9a9+'\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'+_0x3cf9a9+_0x224eda(0x19d);if(!_0x354bbb)throw CliErrors[_0x224eda(0x1c0)](_0x224eda(0x1a0));return'/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x443c70+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0x3e0dd6+'/'+_0x354bbb[_0x224eda(0x1b4)]+'/'+_0x354bbb['operationType']+'\x0a\x20*\x20[触发节点]\x20'+_0x354bbb[_0x224eda(0x1bc)]+'\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'+_0x3cf9a9+_0x224eda(0x19d);}
@@ -1 +1 @@
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
+ const a27_0x34c4c2=a27_0x194e;(function(_0x987658,_0x57bdc0){const _0x6f95c8=a27_0x194e,_0xaf535d=_0x987658();while(!![]){try{const _0x2478ba=-parseInt(_0x6f95c8(0x210))/0x1*(-parseInt(_0x6f95c8(0x1fa))/0x2)+-parseInt(_0x6f95c8(0x1e7))/0x3*(-parseInt(_0x6f95c8(0x202))/0x4)+parseInt(_0x6f95c8(0x207))/0x5+-parseInt(_0x6f95c8(0x211))/0x6+-parseInt(_0x6f95c8(0x21a))/0x7*(parseInt(_0x6f95c8(0x1f8))/0x8)+parseInt(_0x6f95c8(0x201))/0x9+parseInt(_0x6f95c8(0x1f5))/0xa;if(_0x2478ba===_0x57bdc0)break;else _0xaf535d['push'](_0xaf535d['shift']());}catch(_0x37bf47){_0xaf535d['push'](_0xaf535d['shift']());}}}(a27_0x316a,0xcaa52));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x34c4c2(0x213),'command':a27_0x34c4c2(0x208),'description':a27_0x34c4c2(0x215),'risk':a27_0x34c4c2(0x212),'flags':[{'name':a27_0x34c4c2(0x1ed),'type':a27_0x34c4c2(0x1fc),'required':!![],'description':a27_0x34c4c2(0x203)}],async 'validate'(_0x3d136c){const _0xcd1d9d=a27_0x34c4c2,_0x14ecff=loadBffProjectConfig(_0x3d136c['appCode']),_0x223e5b=await readBffLockFile(_0x14ecff[_0xcd1d9d(0x20a)]);if(!_0x223e5b)throw CliErrors[_0xcd1d9d(0x209)]('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x5ebddd){const _0x378da6=a27_0x34c4c2,_0x34abe4=loadBffProjectConfig(_0x5ebddd[_0x378da6(0x20d)]),_0x5e43d9=await readBffLockFile(_0x34abe4['lockFilePath']);if(!_0x5e43d9)throw CliErrors[_0x378da6(0x209)]('BFF\x20lock\x20file\x20not\x20found.');const {appLock:_0x3dd660}=ensureLockScope(_0x5e43d9,_0x5ebddd[_0x378da6(0x20d)],_0x34abe4[_0x378da6(0x20b)],'delete'),_0x5095c1=_0x5ebddd['str'](_0x378da6(0x1ed)),_0x368986=Object['keys'](_0x3dd660[_0x378da6(0x20e)]),_0x16d848=resolveDeleteTarget(_0x5095c1,_0x368986),_0x5b4717=_0x3dd660[_0x378da6(0x20e)][_0x16d848];if(!_0x5b4717)throw CliErrors[_0x378da6(0x209)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x16d848+'\x22.');const _0x515eaf=resolveLocalFilePathFromLockKey(_0x34abe4,_0x16d848),_0x18b5de=relative(_0x34abe4[_0x378da6(0x21b)],_0x515eaf),_0x350d0f=join(_0x34abe4[_0x378da6(0x218)],_0x378da6(0x1ea),_0x18b5de);return{'method':_0x378da6(0x20c),'url':_0x378da6(0x20f),'body':{'appCode':_0x5ebddd[_0x378da6(0x20d)],'target':_0x16d848,'remoteId':_0x5b4717[_0x378da6(0x217)],'localFilePath':_0x515eaf,'trashedPath':_0x350d0f},'description':'Would\x20delete\x20'+_0x16d848+_0x378da6(0x1ff)};},async 'execute'(_0x344c5c){const _0x416f34=a27_0x34c4c2,_0x225a10=loadBffProjectConfig(_0x344c5c[_0x416f34(0x20d)]),_0xeb3a97=await readBffLockFile(_0x225a10['lockFilePath']);if(!_0xeb3a97)throw CliErrors[_0x416f34(0x209)](_0x416f34(0x1eb));const {lockData:_0x2af9ee,appLock:_0x3d307f}=ensureLockScope(_0xeb3a97,_0x344c5c[_0x416f34(0x20d)],_0x225a10[_0x416f34(0x20b)],_0x416f34(0x208)),_0x71a0dc=JSON['parse'](JSON[_0x416f34(0x1e9)](_0x2af9ee)),_0x5aca06=_0x71a0dc[_0x416f34(0x1f7)][_0x344c5c[_0x416f34(0x20d)]];if(!_0x5aca06)throw new Error(_0x416f34(0x1f1)+_0x344c5c['appCode']+_0x416f34(0x204));const _0x23c9f2=_0x344c5c[_0x416f34(0x1ec)](_0x416f34(0x1ed)),_0x2c3986=Object[_0x416f34(0x219)](_0x5aca06['functions']),_0x1b867e=resolveDeleteTarget(_0x23c9f2,_0x2c3986),_0x489fab=_0x5aca06[_0x416f34(0x20e)][_0x1b867e];if(!_0x489fab)throw CliErrors[_0x416f34(0x209)](_0x416f34(0x1f9)+_0x1b867e+'\x22.');await deleteBffScript(_0x489fab[_0x416f34(0x217)]),delete _0x5aca06[_0x416f34(0x20e)][_0x1b867e],_0x5aca06['lastSync']=new Date()[_0x416f34(0x1f6)](),await writeBffLockFile(_0x225a10[_0x416f34(0x20a)],_0x71a0dc);const _0x1809d2=resolveLocalFilePathFromLockKey(_0x225a10,_0x1b867e);let _0x3edd01;await fileExists(_0x1809d2)&&(_0x3edd01=await moveToTrash(_0x225a10[_0x416f34(0x21b)],_0x225a10[_0x416f34(0x218)],_0x1809d2),await cleanupEmptyDirectories(dirname(_0x1809d2),_0x225a10[_0x416f34(0x205)]));await waitForDeleteSettlement(_0x225a10[_0x416f34(0x20a)],_0x344c5c[_0x416f34(0x20d)],_0x1b867e,_0x1809d2),await sleep(0x96);const _0x1e2d4c={'deleted':_0x1b867e,'remoteId':_0x489fab['remoteId']};if(_0x3edd01)_0x1e2d4c[_0x416f34(0x200)]=_0x3edd01;return{'ok':!![],'data':_0x1e2d4c,'message':_0x416f34(0x1f0)+_0x1b867e+(_0x3edd01?_0x416f34(0x1f3):'')};}};function resolveDeleteTarget(_0x4dece6,_0x1a421e){const _0x4b8865=a27_0x34c4c2;if(_0x4dece6[_0x4b8865(0x1e6)]('/')){const _0x1abe0e=_0x1a421e[_0x4b8865(0x1ee)](_0x1ef62f=>_0x1ef62f===_0x4dece6);if(!_0x1abe0e)throw CliErrors[_0x4b8865(0x209)](_0x4b8865(0x214)+_0x4dece6);return _0x1abe0e;}const _0x31f733=_0x1a421e[_0x4b8865(0x1e8)](_0x539b1f=>_0x539b1f[_0x4b8865(0x206)]('/')['at'](-0x1)===_0x4dece6);if(_0x31f733[_0x4b8865(0x1fd)]===0x0)throw CliErrors[_0x4b8865(0x209)](_0x4b8865(0x214)+_0x4dece6);if(_0x31f733['length']>0x1)throw CliErrors[_0x4b8865(0x209)]('Multiple\x20functions\x20match\x20\x22'+_0x4dece6+_0x4b8865(0x1f2)+_0x31f733[_0x4b8865(0x1ef)](_0xb29e4c=>_0x4b8865(0x1f4)+_0xb29e4c)[_0x4b8865(0x1fe)]('\x0a'));return _0x31f733[0x0];}async function moveToTrash(_0x559d24,_0x5346cb,_0x4242cf){const _0x10bac3=a27_0x34c4c2,_0x3147c5=new Date()[_0x10bac3(0x1f6)]()[_0x10bac3(0x216)](/[:.]/g,'-'),_0x2406d0=relative(_0x559d24,_0x4242cf),_0x55bf3b=join(_0x5346cb,_0x3147c5,_0x2406d0);return await mkdir(dirname(_0x55bf3b),{'recursive':!![]}),await rename(_0x4242cf,_0x55bf3b),_0x55bf3b;}function a27_0x194e(_0x44c783,_0x3cce6c){_0x44c783=_0x44c783-0x1e6;const _0x316ae6=a27_0x316a();let _0x194e45=_0x316ae6[_0x44c783];return _0x194e45;}async function cleanupEmptyDirectories(_0xc6944a,_0x5ab137){const _0x407096=a27_0x34c4c2;let _0x3c9246=resolve(_0xc6944a);const _0x4cc55c=resolve(_0x5ab137);while(_0x3c9246[_0x407096(0x1fb)](''+_0x4cc55c+sep)||_0x3c9246===_0x4cc55c){if(_0x3c9246===_0x4cc55c)return;try{const _0x1f4ef9=await readdir(_0x3c9246);if(_0x1f4ef9[_0x407096(0x1fd)]>0x0)return;await rmdir(_0x3c9246);}catch{return;}_0x3c9246=dirname(_0x3c9246);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;function a27_0x316a(){const _0x469fcd=['Function\x20not\x20found:\x20','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','replace','remoteId','trashDir','keys','230643AAUqno','projectRoot','includes','117pzaGtZ','filter','stringify','<timestamp>','BFF\x20lock\x20file\x20not\x20found.','str','target','find','map','Deleted\x20','Lock\x20scope\x20for\x20app\x20\x22','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','\x20(local\x20file\x20moved\x20to\x20trash)','\x20\x20-\x20','8422180zZgveH','toISOString','apps','296jTwfnv','No\x20lock\x20entry\x20found\x20for\x20\x22','260394JJHQis','startsWith','string','length','join','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','trashedTo','5388696KCDnPn','92476cJAuSr','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','\x22\x20not\x20found\x20after\x20ensureLockScope.','scriptsRootDir','split','5172780XKKkRQ','delete','validation','lockFilePath','scriptsRoot','POST','appCode','functions','/api/management/library/scripts/delete','2DqANPg','9530436ppoFFH','high-risk-write','bff'];a27_0x316a=function(){return _0x469fcd;};return a27_0x316a();}async function waitForDeleteSettlement(_0x3862ac,_0x230509,_0x5a26bd,_0x8a3c87){const _0x27974f=a27_0x34c4c2;for(let _0xb7335d=0x0;_0xb7335d<DELETE_SETTLE_RETRY_COUNT;_0xb7335d+=0x1){const _0x1e93e8=await readBffLockFile(_0x3862ac),_0xd63f92=!!_0x1e93e8?.[_0x27974f(0x1f7)]?.[_0x230509]?.[_0x27974f(0x20e)]?.[_0x5a26bd],_0x457b68=await fileExists(_0x8a3c87);if(!_0xd63f92&&!_0x457b68)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error('Local\x20delete\x20not\x20settled\x20for\x20'+_0x5a26bd+'.');}
@@ -1 +1 @@
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
+ const a28_0x31cb6c=a28_0x2c28;function a28_0x2c28(_0x22c66e,_0x470c7c){_0x22c66e=_0x22c66e-0x84;const _0x5f1882=a28_0x5f18();let _0x2c2853=_0x5f1882[_0x22c66e];return _0x2c2853;}(function(_0x2994ad,_0x45443a){const _0x212bb8=a28_0x2c28,_0x463a21=_0x2994ad();while(!![]){try{const _0x3f7954=parseInt(_0x212bb8(0x91))/0x1*(-parseInt(_0x212bb8(0x92))/0x2)+parseInt(_0x212bb8(0x9b))/0x3*(-parseInt(_0x212bb8(0x8a))/0x4)+parseInt(_0x212bb8(0x8b))/0x5+parseInt(_0x212bb8(0x94))/0x6*(-parseInt(_0x212bb8(0x99))/0x7)+parseInt(_0x212bb8(0x9a))/0x8*(parseInt(_0x212bb8(0x93))/0x9)+parseInt(_0x212bb8(0x84))/0xa+-parseInt(_0x212bb8(0x85))/0xb;if(_0x3f7954===_0x45443a)break;else _0x463a21['push'](_0x463a21['shift']());}catch(_0x1d4212){_0x463a21['push'](_0x463a21['shift']());}}}(a28_0x5f18,0x9d62a));import{getBffScriptInfo}from'../../core/api-client.js';function a28_0x5f18(){const _0x423832=['195419SqRIFn','40PaDPyK','6OySigB','12267400qlynqo','5194255vUUSGY','number','scriptContent','updatedTime','description','1805164vFfSHm','6260615mNgpDc','Get\x20BFF\x20script\x20details\x20by\x20ID','Script\x20ID','Return\x20full\x20raw\x20script\x20object','num','boolean','616089XSQUHa','2ThREJY','583497fhOEvP','36CvObqz','verbose','scriptType','appCode','(none)'];a28_0x5f18=function(){return _0x423832;};return a28_0x5f18();}export const bffDetail={'service':'bff','command':'detail','description':a28_0x31cb6c(0x8c),'risk':'read','flags':[{'name':'id','type':a28_0x31cb6c(0x86),'required':!![],'description':a28_0x31cb6c(0x8d)},{'name':'verbose','type':a28_0x31cb6c(0x90),'description':a28_0x31cb6c(0x8e)}],async 'execute'(_0x3dd679){const _0x35e727=a28_0x31cb6c,_0x1b940a=await getBffScriptInfo(_0x3dd679[_0x35e727(0x8f)]('id')),_0x35636d=_0x3dd679['bool'](_0x35e727(0x95));if(_0x35636d)return{'ok':!![],'data':_0x1b940a};return{'ok':!![],'data':{'id':_0x1b940a['id'],'appCode':_0x1b940a[_0x35e727(0x97)],'scriptType':_0x1b940a[_0x35e727(0x96)],'description':_0x1b940a[_0x35e727(0x89)]||_0x35e727(0x98),'createdTime':_0x1b940a['createdTime']??'','updatedTime':_0x1b940a[_0x35e727(0x88)]??'','scriptContent':_0x1b940a[_0x35e727(0x87)]??''}};}};
@@ -1 +1 @@
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
+ (function(_0x5ec853,_0x963bf6){const _0x3d356e=a29_0xb4f3,_0x303ad7=_0x5ec853();while(!![]){try{const _0x16615a=-parseInt(_0x3d356e(0x8e))/0x1*(-parseInt(_0x3d356e(0x86))/0x2)+-parseInt(_0x3d356e(0x8a))/0x3*(-parseInt(_0x3d356e(0x8b))/0x4)+-parseInt(_0x3d356e(0x8f))/0x5+-parseInt(_0x3d356e(0x8d))/0x6*(parseInt(_0x3d356e(0x89))/0x7)+parseInt(_0x3d356e(0x88))/0x8*(-parseInt(_0x3d356e(0x8c))/0x9)+-parseInt(_0x3d356e(0x87))/0xa+parseInt(_0x3d356e(0x85))/0xb;if(_0x16615a===_0x963bf6)break;else _0x303ad7['push'](_0x303ad7['shift']());}catch(_0x36ba52){_0x303ad7['push'](_0x303ad7['shift']());}}}(a29_0xaece,0x408fa));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';function a29_0xaece(){const _0x452e42=['8842042aZeITT','468luvJEo','3489070tQZvYW','904UwZLkb','7DiheRV','3042QglWLN','2036WRVqlY','23481MSxEjv','1424262ZHtqXI','619noTeQR','1596255NJmmXR'];a29_0xaece=function(){return _0x452e42;};return a29_0xaece();}import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';function a29_0xb4f3(_0x9d60b4,_0x6a5b51){_0x9d60b4=_0x9d60b4-0x85;const _0xaeceb6=a29_0xaece();let _0xb4f393=_0xaeceb6[_0x9d60b4];return _0xb4f393;}export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
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
+ const a30_0x255bf5=a30_0x12bf;(function(_0x2b96ac,_0x560c31){const _0x3a4514=a30_0x12bf,_0x54920a=_0x2b96ac();while(!![]){try{const _0x53c7ae=-parseInt(_0x3a4514(0x14e))/0x1+-parseInt(_0x3a4514(0x151))/0x2+-parseInt(_0x3a4514(0x140))/0x3+parseInt(_0x3a4514(0x14c))/0x4+parseInt(_0x3a4514(0x158))/0x5+parseInt(_0x3a4514(0x149))/0x6*(parseInt(_0x3a4514(0x156))/0x7)+-parseInt(_0x3a4514(0x150))/0x8*(-parseInt(_0x3a4514(0x142))/0x9);if(_0x53c7ae===_0x560c31)break;else _0x54920a['push'](_0x54920a['shift']());}catch(_0x8c1b2c){_0x54920a['push'](_0x54920a['shift']());}}}(a30_0x1c6c,0x354af));function a30_0x1c6c(){const _0x21fa71=['bool','214947GSlpLV','appCode','176xgHhSM','649736apQoxc','read','bff','description','string','1178387fmXspN','Filter\x20by\x20script\x20name','564785pnMyGL','str','ENDPOINT','map','list','114153SUdvCj','Script\x20type\x20filter','83511WIyvNi','boolean','name','verbose','Return\x20full\x20script\x20objects','type','COMMON','12cToegl','(unnamed)','No\x20BFF\x20scripts\x20found.','569504hcgXHd'];a30_0x1c6c=function(){return _0x21fa71;};return a30_0x1c6c();}function a30_0x12bf(_0x5844ec,_0x5d30a6){_0x5844ec=_0x5844ec-0x13e;const _0x1c6cc2=a30_0x1c6c();let _0x12bf1d=_0x1c6cc2[_0x5844ec];return _0x12bf1d;}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x255bf5(0x153),'command':a30_0x255bf5(0x13f),'description':'List\x20BFF\x20scripts','risk':a30_0x255bf5(0x152),'flags':[{'name':a30_0x255bf5(0x147),'type':'string','description':a30_0x255bf5(0x141),'default':a30_0x255bf5(0x15a),'enum':['ENDPOINT',a30_0x255bf5(0x148)]},{'name':'name','type':a30_0x255bf5(0x155),'description':a30_0x255bf5(0x157)},{'name':'verbose','type':a30_0x255bf5(0x143),'description':a30_0x255bf5(0x146)}],async 'execute'(_0x3c4159){const _0x248757=a30_0x255bf5,_0x192907=await listBffScripts(_0x3c4159[_0x248757(0x14f)],_0x3c4159[_0x248757(0x159)](_0x248757(0x147)),{'scriptName':_0x3c4159[_0x248757(0x159)](_0x248757(0x144))||undefined}),_0x11eeed=_0x3c4159[_0x248757(0x14d)](_0x248757(0x145));return{'ok':!![],'data':_0x11eeed?_0x192907:_0x192907[_0x248757(0x13e)](_0x57f3c9=>({'id':_0x57f3c9['id'],'functionName':_0x57f3c9['functionName']??'','description':_0x57f3c9[_0x248757(0x154)]||_0x248757(0x14a),'scriptType':_0x57f3c9['scriptType']})),'message':_0x192907['length']===0x0?_0x248757(0x14b):undefined};}};
@@ -1 +1 @@
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)]());}
1
+ const a31_0x180738=a31_0x2202;(function(_0x545954,_0x4f02d5){const _0x2d0cbb=a31_0x2202,_0xdb1ee8=_0x545954();while(!![]){try{const _0x532969=-parseInt(_0x2d0cbb(0x12c))/0x1*(parseInt(_0x2d0cbb(0x15e))/0x2)+-parseInt(_0x2d0cbb(0x163))/0x3*(-parseInt(_0x2d0cbb(0x130))/0x4)+-parseInt(_0x2d0cbb(0x134))/0x5+-parseInt(_0x2d0cbb(0x14b))/0x6*(parseInt(_0x2d0cbb(0x158))/0x7)+parseInt(_0x2d0cbb(0x148))/0x8+parseInt(_0x2d0cbb(0x135))/0x9*(parseInt(_0x2d0cbb(0x12e))/0xa)+-parseInt(_0x2d0cbb(0x142))/0xb;if(_0x532969===_0x4f02d5)break;else _0xdb1ee8['push'](_0xdb1ee8['shift']());}catch(_0xadfe45){_0xdb1ee8['push'](_0xdb1ee8['shift']());}}}(a31_0x595b,0xa6965));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a31_0x595b(){const _0x5c504=['COMMON','question','lockKey','&type=','hookLocation','stderr','string','72ZEqxlw','/api/management/library/scripts/list?appCode=','291070KCoAqV','type','117688PTDPaQ','scriptType','str','trim','5743180nKUxPl','342viRypz','\x20failed','bff','toLowerCase','ENDPOINT','filePath','bool','\x22\x20not\x20found\x20after\x20ensureLockScope.','push','message','unresolvable\x20target\x20path','Remote\x20script\x20missing\x20content.','datasetCode','6854661jDoHHa','alias','map','scriptsRoot','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','appCode','7793552wWzOwf','boolean','\x20pulled,\x20','408EEdPjt','skipped','Pull\x20only\x20this\x20script\x20type','Lock\x20scope\x20for\x20app\x20\x22','toISOString','length','lastSync','yes','Force\x20pull\x20cancelled.','lockFilePath','\x20remote\x20BFF\x20script(s)\x20for\x20pull','apiDir','would_pull','74256AhLqIz','operationType','functions','stringify','apps','HOOK','634HDYhmA','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','pull','force','cancelled','114srLJeE','all','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','Would\x20inspect\x20','functionNode','stdin','Force\x20overwrite\x20local\x20unsynced\x20changes','No\x20remote\x20BFF\x20scripts\x20found.','Remote\x20script\x20missing\x20id.','scriptContent'];a31_0x595b=function(){return _0x5c504;};return a31_0x595b();}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_0x180738(0x137),'command':a31_0x180738(0x160),'description':a31_0x180738(0x15f),'risk':'write','flags':[{'name':a31_0x180738(0x12f),'type':a31_0x180738(0x12b),'description':a31_0x180738(0x14d),'enum':[a31_0x180738(0x125),a31_0x180738(0x139),a31_0x180738(0x15d)]},{'name':'force','type':a31_0x180738(0x149),'description':a31_0x180738(0x121)}],async 'dryRun'(_0x5cdd36){const _0x254016=a31_0x180738,_0x49c78a=loadBffProjectConfig(_0x5cdd36[_0x254016(0x147)]),_0x2cb64d=await readBffLockFile(_0x49c78a[_0x254016(0x154)]),{appLock:_0x5538b7}=ensureLockScope(_0x2cb64d??createEmptyBffLock(),_0x5cdd36[_0x254016(0x147)],_0x49c78a[_0x254016(0x145)],'pull'),_0xd2dcff=normalizeBffType(_0x5cdd36['str'](_0x254016(0x12f)))??undefined,_0x3bee87=buildDatasetCodeToAliasMap(_0x5cdd36['apiDir'],_0x5cdd36[_0x254016(0x147)]),[_0x22e610,_0x179b2c]=await Promise[_0x254016(0x164)]([listBffScripts(_0x5cdd36['appCode'],_0xd2dcff),getBffScriptStatistics(_0x5cdd36[_0x254016(0x147)])]),_0x15a6ec=createHookLocationMap(_0x179b2c),_0x4e72e4=[];for(const _0x451b8c of _0x22e610){const _0x38543a=resolveRemoteScriptTarget(_0x49c78a,_0x451b8c,_0x15a6ec,_0x5538b7[_0x254016(0x15a)],_0x3bee87);if(!_0x38543a){_0x4e72e4[_0x254016(0x13d)]({'scriptType':_0x451b8c[_0x254016(0x131)],'functionName':_0x451b8c['functionName']??'','status':_0x254016(0x14c),'reason':_0x254016(0x13f)});continue;}const _0x4f2612=_0x5538b7['functions'][_0x38543a[_0x254016(0x127)]],_0x5d844c=_0x451b8c[_0x254016(0x124)]!=null?computeContentHash(_0x451b8c[_0x254016(0x124)]):undefined,_0x43b095=await hasUnsyncedLocalChanges(_0x38543a[_0x254016(0x13a)],_0x4f2612,_0x5d844c);_0x4e72e4['push']({'lockKey':_0x38543a[_0x254016(0x127)],'filePath':_0x38543a[_0x254016(0x13a)],'remoteId':_0x451b8c['id']??null,'status':_0x43b095?'conflict':_0x254016(0x157)});}return{'method':'GET','url':_0x254016(0x12d)+_0x5cdd36[_0x254016(0x147)]+(_0xd2dcff?_0x254016(0x128)+_0xd2dcff:''),'body':{'appCode':_0x5cdd36[_0x254016(0x147)],'filterType':_0xd2dcff??null,'files':_0x4e72e4},'description':_0x254016(0x166)+_0x4e72e4[_0x254016(0x150)]+_0x254016(0x155)};},async 'execute'(_0x276c14){const _0x4be06c=a31_0x180738,_0x29f642=loadBffProjectConfig(_0x276c14[_0x4be06c(0x147)]),_0x4ee5a7=await readBffLockFile(_0x29f642['lockFilePath']),{lockData:_0x4a6acf,appLock:_0x5e7824}=ensureLockScope(_0x4ee5a7??createEmptyBffLock(),_0x276c14[_0x4be06c(0x147)],_0x29f642[_0x4be06c(0x145)],_0x4be06c(0x160)),_0x10e6bf=normalizeBffType(_0x276c14[_0x4be06c(0x132)](_0x4be06c(0x12f)))??undefined;if(_0x276c14[_0x4be06c(0x132)](_0x4be06c(0x12f))&&!_0x10e6bf)throw CliErrors['validation'](_0x4be06c(0x146));const [_0x16ca76,_0x570ed0]=await Promise[_0x4be06c(0x164)]([listBffScripts(_0x276c14[_0x4be06c(0x147)],_0x10e6bf),getBffScriptStatistics(_0x276c14[_0x4be06c(0x147)])]);if(_0x16ca76[_0x4be06c(0x150)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x4be06c(0x122)};const _0x278bdd=_0x276c14[_0x4be06c(0x13b)](_0x4be06c(0x161));if(_0x278bdd&&!_0x276c14['nonInteractive']){const _0x49fb8e=await confirmForce();if(!_0x49fb8e)throw CliErrors[_0x4be06c(0x162)](_0x4be06c(0x153));}if(_0x278bdd&&_0x276c14['nonInteractive']){}const _0xf3e3b1=buildDatasetCodeToAliasMap(_0x276c14[_0x4be06c(0x156)],_0x276c14[_0x4be06c(0x147)]),_0x401c4d=createHookLocationMap(_0x570ed0),_0x30b5a4=JSON['parse'](JSON[_0x4be06c(0x15b)](_0x4a6acf)),_0x739cc6=_0x276c14[_0x4be06c(0x147)],_0x2cbcb6=_0x30b5a4[_0x4be06c(0x15c)][_0x739cc6];if(!_0x2cbcb6)throw new Error(_0x4be06c(0x14e)+_0x739cc6+_0x4be06c(0x13c));const _0x13f7c7=[],_0x2cc943=[],_0x27da6f=[];for(const _0x4cbfa7 of _0x16ca76){const _0x20b020=resolveRemoteScriptTarget(_0x29f642,_0x4cbfa7,_0x401c4d,_0x5e7824[_0x4be06c(0x15a)],_0xf3e3b1);if(!_0x20b020){_0x2cc943['push']({'lockKey':_0x4cbfa7['scriptType']+'/'+_0x4cbfa7['functionName'],'reason':_0x4be06c(0x13f)});continue;}const _0x3c1184=_0x5e7824['functions'][_0x20b020[_0x4be06c(0x127)]];try{if(!_0x4cbfa7['id'])throw new Error(_0x4be06c(0x123));if(_0x4cbfa7['scriptContent']==null)throw new Error(_0x4be06c(0x140));const _0x25b857=_0x4cbfa7[_0x4be06c(0x124)],_0x3202f4=computeContentHash(_0x25b857);if(!_0x278bdd){const _0x3cdede=await hasUnsyncedLocalChanges(_0x20b020['filePath'],_0x3c1184,_0x3202f4);if(_0x3cdede){_0x2cc943[_0x4be06c(0x13d)]({'lockKey':_0x20b020[_0x4be06c(0x127)],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x20b020['filePath']),await writeFile(_0x20b020[_0x4be06c(0x13a)],_0x25b857,'utf8');const _0x16fa3b={'hash':_0x3202f4,'remoteId':_0x4cbfa7['id'],'version':_0x4cbfa7['version']};_0x20b020['type']===_0x4be06c(0x15d)&&_0x20b020[_0x4be06c(0x129)]&&(_0x16fa3b[_0x4be06c(0x143)]=_0x20b020[_0x4be06c(0x129)][_0x4be06c(0x143)],_0x16fa3b['datasetCode']=_0x20b020[_0x4be06c(0x129)][_0x4be06c(0x141)],_0x16fa3b[_0x4be06c(0x159)]=_0x20b020[_0x4be06c(0x129)]['operationType'],_0x16fa3b[_0x4be06c(0x167)]=_0x20b020[_0x4be06c(0x129)][_0x4be06c(0x167)]),_0x2cbcb6['functions'][_0x20b020[_0x4be06c(0x127)]]=_0x16fa3b,_0x13f7c7[_0x4be06c(0x13d)]({'lockKey':_0x20b020['lockKey'],'remoteId':_0x4cbfa7['id']});}catch(_0x127ccd){_0x27da6f['push']({'lockKey':_0x20b020['lockKey'],'error':_0x127ccd instanceof Error?_0x127ccd[_0x4be06c(0x13e)]:String(_0x127ccd)});}}return _0x2cbcb6[_0x4be06c(0x151)]=new Date()[_0x4be06c(0x14f)](),await writeBffLockFile(_0x29f642['lockFilePath'],_0x30b5a4),{'ok':_0x27da6f[_0x4be06c(0x150)]===0x0,'data':{'pulled':_0x13f7c7,'skipped':_0x2cc943,'failed':_0x27da6f},'message':'Pull\x20complete:\x20'+_0x13f7c7[_0x4be06c(0x150)]+_0x4be06c(0x14a)+_0x2cc943[_0x4be06c(0x150)]+'\x20skipped,\x20'+_0x27da6f[_0x4be06c(0x150)]+_0x4be06c(0x136)};}};function a31_0x2202(_0x44a248,_0x1703c7){_0x44a248=_0x44a248-0x120;const _0x595b16=a31_0x595b();let _0x220245=_0x595b16[_0x44a248];return _0x220245;}async function hasUnsyncedLocalChanges(_0x587384,_0x332f62,_0x4f1407){if(!await fileExists(_0x587384))return![];const _0x2ebf81=await computeFileHash(_0x587384);if(!_0x332f62)return _0x4f1407?_0x2ebf81!==_0x4f1407:!![];return _0x2ebf81!==_0x332f62['hash'];}function buildDatasetCodeToAliasMap(_0x22233f,_0x191c93){const _0x67d55d=a31_0x180738,_0x177d82=loadAliasMap(_0x22233f,undefined,resolveApiFilePath(_0x22233f,_0x191c93));return new Map(_0x177d82[_0x67d55d(0x144)](_0x5345d5=>[_0x5345d5['datasetCode'],_0x5345d5[_0x67d55d(0x143)]]));}async function confirmForce(){const _0x5db07d=a31_0x180738,_0x193ed3=createInterface({'input':process[_0x5db07d(0x120)],'output':process[_0x5db07d(0x12a)]}),_0xd65d3c=await new Promise(_0x5f0c7c=>{const _0x5ec89c=_0x5db07d;_0x193ed3[_0x5ec89c(0x126)](_0x5ec89c(0x165),_0x5f0c7c);});return _0x193ed3['close'](),['y',_0x5db07d(0x152)]['includes'](_0xd65d3c[_0x5db07d(0x133)]()[_0x5db07d(0x138)]());}