@lovrabet/rabetbase-cli 2.1.14-beta.0 → 2.1.14-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/README.md +18 -0
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/fetch-model-list.js +1 -1
  4. package/lib/api/generate-api-file.js +1 -1
  5. package/lib/auth/auth-server-ui.js +1 -1
  6. package/lib/auth/auth-server.js +1 -1
  7. package/lib/auth/constant.js +1 -1
  8. package/lib/auth/get-cookie.js +1 -1
  9. package/lib/auth/get-session-user.js +1 -1
  10. package/lib/auth/is-session-valid.js +1 -1
  11. package/lib/auth/login-success-html.js +1 -1
  12. package/lib/auth/logout.js +1 -1
  13. package/lib/cli-flags.js +1 -1
  14. package/lib/cli.js +1 -1
  15. package/lib/commands/api/generate.js +1 -1
  16. package/lib/commands/api/index.js +1 -1
  17. package/lib/commands/api/list.js +1 -1
  18. package/lib/commands/api/pull.js +1 -1
  19. package/lib/commands/api/shared.js +1 -1
  20. package/lib/commands/app/add.js +1 -1
  21. package/lib/commands/app/discover.js +1 -1
  22. package/lib/commands/app/index.js +1 -1
  23. package/lib/commands/app/list.js +1 -1
  24. package/lib/commands/app/remove.js +1 -1
  25. package/lib/commands/app/shared.js +1 -1
  26. package/lib/commands/app/use.js +1 -1
  27. package/lib/commands/auth/index.js +1 -1
  28. package/lib/commands/bff/create.js +1 -1
  29. package/lib/commands/bff/delete.js +1 -1
  30. package/lib/commands/bff/detail.js +1 -1
  31. package/lib/commands/bff/index.js +1 -1
  32. package/lib/commands/bff/list.js +1 -1
  33. package/lib/commands/bff/pull.js +1 -1
  34. package/lib/commands/bff/push.js +1 -1
  35. package/lib/commands/bff/status.js +1 -1
  36. package/lib/commands/cli-update.js +1 -1
  37. package/lib/commands/codegen/index.js +1 -1
  38. package/lib/commands/codegen/sdk.js +1 -1
  39. package/lib/commands/codegen/sql.js +1 -1
  40. package/lib/commands/common/app-selector.js +1 -1
  41. package/lib/commands/common/flags.js +1 -1
  42. package/lib/commands/common/validate.js +1 -1
  43. package/lib/commands/config/get.js +1 -1
  44. package/lib/commands/config/index.js +1 -1
  45. package/lib/commands/config/list.js +1 -1
  46. package/lib/commands/config/set.js +1 -1
  47. package/lib/commands/config/shared.js +1 -1
  48. package/lib/commands/data/filter.js +1 -1
  49. package/lib/commands/data/getOne.js +1 -1
  50. package/lib/commands/data/index.js +1 -1
  51. package/lib/commands/data/shared.js +1 -1
  52. package/lib/commands/dataset/capability.js +1 -1
  53. package/lib/commands/dataset/delete.js +1 -1
  54. package/lib/commands/dataset/detail.js +1 -1
  55. package/lib/commands/dataset/extend-update.js +1 -0
  56. package/lib/commands/dataset/field-update.js +1 -1
  57. package/lib/commands/dataset/index.js +1 -1
  58. package/lib/commands/dataset/link-create.js +1 -1
  59. package/lib/commands/dataset/link-delete.js +1 -1
  60. package/lib/commands/dataset/link-shared.js +1 -1
  61. package/lib/commands/dataset/link-update.js +1 -1
  62. package/lib/commands/dataset/links.js +1 -1
  63. package/lib/commands/dataset/list.js +1 -1
  64. package/lib/commands/dataset/operations.js +1 -1
  65. package/lib/commands/dataset/rename.js +1 -1
  66. package/lib/commands/db/analyze-cancel.js +1 -1
  67. package/lib/commands/db/analyze-start.js +1 -1
  68. package/lib/commands/db/analyze-status.js +1 -1
  69. package/lib/commands/db/create.js +1 -1
  70. package/lib/commands/db/delete.js +1 -1
  71. package/lib/commands/db/detail.js +1 -1
  72. package/lib/commands/db/diff.js +1 -1
  73. package/lib/commands/db/index.js +1 -1
  74. package/lib/commands/db/list.js +1 -1
  75. package/lib/commands/db/shared.js +1 -1
  76. package/lib/commands/db/tables.js +1 -1
  77. package/lib/commands/db/test.js +1 -1
  78. package/lib/commands/db/update.js +1 -1
  79. package/lib/commands/doctor.js +1 -1
  80. package/lib/commands/init/index.js +1 -1
  81. package/lib/commands/issue/index.js +1 -1
  82. package/lib/commands/issue/nudge.js +1 -1
  83. package/lib/commands/issue/report.js +1 -1
  84. package/lib/commands/issue/shared.js +1 -1
  85. package/lib/commands/logs/index.js +1 -1
  86. package/lib/commands/menu/index.js +1 -1
  87. package/lib/commands/menu/shared/compare-table.js +1 -1
  88. package/lib/commands/menu/shared/index.js +1 -1
  89. package/lib/commands/menu/shared/inquirer.js +1 -1
  90. package/lib/commands/menu/shared/local-pages.js +1 -1
  91. package/lib/commands/menu/shared/logic.js +1 -1
  92. package/lib/commands/menu/shared/service.js +1 -1
  93. package/lib/commands/menu/shared/sync-core.js +1 -1
  94. package/lib/commands/menu/shared/update-core.js +1 -1
  95. package/lib/commands/menu/shared/valid-url.js +1 -1
  96. package/lib/commands/menu/sync.js +1 -1
  97. package/lib/commands/menu/update.js +1 -1
  98. package/lib/commands/page/generate-start.js +1 -1
  99. package/lib/commands/page/generate-status.js +1 -1
  100. package/lib/commands/page/index.js +1 -1
  101. package/lib/commands/page/pull.js +1 -1
  102. package/lib/commands/page/push.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/version.js +1 -1
  201. package/lib/utils/with-active-cookie.js +1 -1
  202. package/lib/utils/write-cli-side-channel.js +1 -1
  203. package/package.json +3 -3
@@ -1 +1 @@
1
- const a18_0x1f06e8=a18_0x29f6;(function(_0x1c7247,_0x4f8601){const _0x1a3a1b=a18_0x29f6,_0x18ac1d=_0x1c7247();while(!![]){try{const _0x4d8167=-parseInt(_0x1a3a1b(0x128))/0x1*(-parseInt(_0x1a3a1b(0x12a))/0x2)+-parseInt(_0x1a3a1b(0x118))/0x3*(-parseInt(_0x1a3a1b(0x12c))/0x4)+parseInt(_0x1a3a1b(0x12b))/0x5*(parseInt(_0x1a3a1b(0x11c))/0x6)+-parseInt(_0x1a3a1b(0x125))/0x7*(-parseInt(_0x1a3a1b(0x12d))/0x8)+parseInt(_0x1a3a1b(0x111))/0x9+-parseInt(_0x1a3a1b(0x129))/0xa+-parseInt(_0x1a3a1b(0x121))/0xb*(parseInt(_0x1a3a1b(0x116))/0xc);if(_0x4d8167===_0x4f8601)break;else _0x18ac1d['push'](_0x18ac1d['shift']());}catch(_0x2f5661){_0x18ac1d['push'](_0x18ac1d['shift']());}}}(a18_0x2e21,0x79b1e));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{collectAppProfileOverrides,getAppProfileFlagDefs}from'../../config/schema.js';function a18_0x2e21(){const _0x3d4fde=['defaultApp','87725JMKYDf','\x20app\x20add\x20<name>\x20--appcode\x20<code>','apps','string','189OdhHcW','write','args','19fOlVXN','7419830McAAEP','21402kYwYRk','34530yZypFd','4Llexgt','64072uoBbBc','App\x20profile\x20name','flagMissing','str','Updated','appcode','validation','global','6677181EKDFhW','Add\x20or\x20update\x20an\x20app\x20in\x20config','Usage:\x20','boolean','Added','396mkzfrO','name','487779oJnaFF','Missing\x20app\x20name.','Use\x20global\x20config\x20scope','App\x20code','156qnhDLm','\x22\x20(appcode:\x20','trim','\x20Set\x20as\x20default\x20app.'];a18_0x2e21=function(){return _0x3d4fde;};return a18_0x2e21();}import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x4e9eb1){const _0x13a72f=a18_0x29f6,_0x52fa51=_0x4e9eb1[_0x13a72f(0x127)][0x0]?.[_0x13a72f(0x11e)]();if(!_0x52fa51)throw CliErrors[_0x13a72f(0x133)](_0x13a72f(0x119),_0x13a72f(0x113)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>');}async function execute(_0x55c6b1){const _0x5c1638=a18_0x29f6,_0x2e4716=_0x55c6b1[_0x5c1638(0x127)][0x0]?.[_0x5c1638(0x11e)]();if(!_0x2e4716)throw CliErrors[_0x5c1638(0x133)]('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x5c1638(0x122));const _0x43b001=_0x55c6b1[_0x5c1638(0x130)](_0x5c1638(0x132));if(!_0x43b001)throw CliErrors[_0x5c1638(0x12f)](_0x5c1638(0x132),_0x5c1638(0x113)+CLI_BIN_NAME+_0x5c1638(0x122));const _0x58c9aa={'global':_0x55c6b1['bool']('global')},_0x37e1fb=readConfig(_0x58c9aa);if(!_0x37e1fb['apps'])_0x37e1fb[_0x5c1638(0x123)]={};const _0x5a70c9={'appcode':_0x43b001,...collectAppProfileOverrides(_0x151ec2=>_0x55c6b1[_0x5c1638(0x130)](_0x151ec2))},_0x44652d=_0x37e1fb['apps'],_0x48a2f6=!!_0x44652d[_0x2e4716];_0x44652d[_0x2e4716]=_0x5a70c9;if(!_0x37e1fb[_0x5c1638(0x120)])_0x37e1fb['defaultApp']=_0x2e4716;writeConfig(_0x37e1fb,_0x58c9aa);const _0x4af91e=!_0x48a2f6&&_0x37e1fb[_0x5c1638(0x120)]===_0x2e4716?_0x5c1638(0x11f):'',_0x4a8499=(_0x48a2f6?_0x5c1638(0x131):_0x5c1638(0x115))+'\x20app\x20\x22'+_0x2e4716+_0x5c1638(0x11d)+_0x43b001+')'+scopeLabel(_0x58c9aa)+'.'+_0x4af91e;return{'ok':!![],'message':_0x4a8499};}function a18_0x29f6(_0x48a23b,_0x2f9afd){_0x48a23b=_0x48a23b-0x111;const _0x2e21e4=a18_0x2e21();let _0x29f6d6=_0x2e21e4[_0x48a23b];return _0x29f6d6;}export const appAddDefinition={'service':'app','command':'add','description':a18_0x1f06e8(0x112),'risk':a18_0x1f06e8(0x126),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a18_0x1f06e8(0x117),'description':a18_0x1f06e8(0x12e),'required':!![]}],'flags':[{'name':a18_0x1f06e8(0x132),'type':a18_0x1f06e8(0x124),'description':a18_0x1f06e8(0x11b),'required':!![]},{'name':a18_0x1f06e8(0x134),'type':a18_0x1f06e8(0x114),'description':a18_0x1f06e8(0x11a),'default':![]},...getAppProfileFlagDefs()],'validate':validateArgs,'execute':execute};
1
+ const a18_0x3ffa62=a18_0x1d79;(function(_0x10d3f5,_0x165bfd){const _0x4026b0=a18_0x1d79,_0x20cbec=_0x10d3f5();while(!![]){try{const _0x4423df=-parseInt(_0x4026b0(0x93))/0x1*(parseInt(_0x4026b0(0x96))/0x2)+-parseInt(_0x4026b0(0xae))/0x3*(parseInt(_0x4026b0(0xaf))/0x4)+parseInt(_0x4026b0(0xad))/0x5*(parseInt(_0x4026b0(0xa8))/0x6)+-parseInt(_0x4026b0(0xa6))/0x7*(-parseInt(_0x4026b0(0x9f))/0x8)+-parseInt(_0x4026b0(0x8f))/0x9*(-parseInt(_0x4026b0(0x94))/0xa)+parseInt(_0x4026b0(0xb1))/0xb*(parseInt(_0x4026b0(0xa1))/0xc)+parseInt(_0x4026b0(0xa7))/0xd;if(_0x4423df===_0x165bfd)break;else _0x20cbec['push'](_0x20cbec['shift']());}catch(_0x38d25d){_0x20cbec['push'](_0x20cbec['shift']());}}}(a18_0x5247,0xb6312));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{collectAppProfileOverrides,getAppProfileFlagDefs}from'../../config/schema.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x352c23){const _0x3f8c09=a18_0x1d79,_0x2f2eaf=_0x352c23[_0x3f8c09(0x9c)][0x0]?.[_0x3f8c09(0xb4)]();if(!_0x2f2eaf)throw CliErrors[_0x3f8c09(0xab)](_0x3f8c09(0x92),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>');}async function execute(_0x30f65a){const _0x3f0aaf=a18_0x1d79,_0x5ad47c=_0x30f65a[_0x3f0aaf(0x9c)][0x0]?.[_0x3f0aaf(0xb4)]();if(!_0x5ad47c)throw CliErrors[_0x3f0aaf(0xab)](_0x3f0aaf(0x92),_0x3f0aaf(0xa3)+CLI_BIN_NAME+_0x3f0aaf(0x9a));const _0x1bd87c=_0x30f65a[_0x3f0aaf(0x91)](_0x3f0aaf(0xa4));if(!_0x1bd87c)throw CliErrors[_0x3f0aaf(0xac)](_0x3f0aaf(0xa4),_0x3f0aaf(0xa3)+CLI_BIN_NAME+_0x3f0aaf(0x9a));const _0x13fe1c={'global':_0x30f65a[_0x3f0aaf(0x98)](_0x3f0aaf(0x95))},_0x368cce=readConfig(_0x13fe1c);if(!_0x368cce[_0x3f0aaf(0x99)])_0x368cce['apps']={};const _0x205561={'appcode':_0x1bd87c,...collectAppProfileOverrides(_0x409fd3=>_0x30f65a[_0x3f0aaf(0x91)](_0x409fd3))},_0x472d4c=_0x368cce['apps'],_0x55d1d7=!!_0x472d4c[_0x5ad47c];_0x472d4c[_0x5ad47c]=_0x205561;if(!_0x368cce[_0x3f0aaf(0xa5)])_0x368cce[_0x3f0aaf(0xa5)]=_0x5ad47c;writeConfig(_0x368cce,_0x13fe1c);const _0x35a207=!_0x55d1d7&&_0x368cce[_0x3f0aaf(0xa5)]===_0x5ad47c?_0x3f0aaf(0xa9):'',_0x10f342=(_0x55d1d7?_0x3f0aaf(0xa0):_0x3f0aaf(0x9e))+_0x3f0aaf(0xaa)+_0x5ad47c+_0x3f0aaf(0x9b)+_0x1bd87c+')'+scopeLabel(_0x13fe1c)+'.'+_0x35a207;return{'ok':!![],'message':_0x10f342};}export const appAddDefinition={'service':a18_0x3ffa62(0x90),'command':a18_0x3ffa62(0x9d),'description':a18_0x3ffa62(0xb3),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a18_0x3ffa62(0x97),'description':'App\x20profile\x20name','required':!![]}],'flags':[{'name':a18_0x3ffa62(0xa4),'type':a18_0x3ffa62(0xa2),'description':'App\x20code','required':!![]},{'name':'global','type':a18_0x3ffa62(0xb2),'description':a18_0x3ffa62(0xb0),'default':![]},...getAppProfileFlagDefs()],'validate':validateArgs,'execute':execute};function a18_0x1d79(_0x1e8e52,_0xff93ea){_0x1e8e52=_0x1e8e52-0x8f;const _0x524795=a18_0x5247();let _0x1d79a9=_0x524795[_0x1e8e52];return _0x1d79a9;}function a18_0x5247(){const _0x3924ed=['apps','\x20app\x20add\x20<name>\x20--appcode\x20<code>','\x22\x20(appcode:\x20','args','add','Added','5070328VyQyLu','Updated','50556hkucRc','string','Usage:\x20','appcode','defaultApp','7mOxXqj','14772667nxGYId','240JybZTe','\x20Set\x20as\x20default\x20app.','\x20app\x20\x22','validation','flagMissing','81140jUmjeP','9YKqWGA','1556372dPaxca','Use\x20global\x20config\x20scope','1364WFHiry','boolean','Add\x20or\x20update\x20an\x20app\x20in\x20config','trim','3610917cikQbe','app','str','Missing\x20app\x20name.','46GjWngA','10MBZZgz','global','62146IqKFlz','name','bool'];a18_0x5247=function(){return _0x3924ed;};return a18_0x5247();}
@@ -1 +1 @@
1
- function a19_0x4839(_0x4c572b,_0x14b298){_0x4c572b=_0x4c572b-0x7a;const _0x241574=a19_0x2415();let _0x483962=_0x241574[_0x4c572b];return _0x483962;}const a19_0x229e6d=a19_0x4839;(function(_0x187a4e,_0x4db176){const _0x4b4b16=a19_0x4839,_0x11747f=_0x187a4e();while(!![]){try{const _0x5d0b59=-parseInt(_0x4b4b16(0x88))/0x1*(parseInt(_0x4b4b16(0x7c))/0x2)+-parseInt(_0x4b4b16(0x81))/0x3+-parseInt(_0x4b4b16(0x83))/0x4+parseInt(_0x4b4b16(0x7a))/0x5*(-parseInt(_0x4b4b16(0x7e))/0x6)+-parseInt(_0x4b4b16(0x8a))/0x7+parseInt(_0x4b4b16(0x8b))/0x8*(-parseInt(_0x4b4b16(0x86))/0x9)+parseInt(_0x4b4b16(0x7d))/0xa*(parseInt(_0x4b4b16(0x87))/0xb);if(_0x5d0b59===_0x4db176)break;else _0x11747f['push'](_0x11747f['shift']());}catch(_0x4ad2c3){_0x11747f['push'](_0x11747f['shift']());}}}(a19_0x2415,0x44e5d));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x317ffc){const _0x1db66f=a19_0x4839,{setActiveCookie:_0xe80f79}=await import('../../core/api-client.js');_0xe80f79(_0x317ffc['cookie']);const _0x4c772b=await listRemoteApps();return{'ok':!![],'data':{'items':_0x4c772b[_0x1db66f(0x84)](_0xc9fa53=>({..._0xc9fa53['id']!=null?{'id':_0xc9fa53['id']}:{},'appCode':_0xc9fa53[_0x1db66f(0x89)],'appName':_0xc9fa53['appName'],..._0xc9fa53[_0x1db66f(0x7b)]!=null?{'appDesc':_0xc9fa53[_0x1db66f(0x7b)]}:{}})),'meta':{'source':'platform'}}};}export const appRemoteDefinition={'service':a19_0x229e6d(0x7f),'command':a19_0x229e6d(0x85),'description':a19_0x229e6d(0x82),'risk':a19_0x229e6d(0x80),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};function a19_0x2415(){const _0x4f9432=['appDesc','16314gYsRvK','50MkPqhf','916818SrNDkj','app','read','929394EcsfYW','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','2230276hRRHpu','map','remote','2034gzlwpV','5971009dWBIzS','69gTVOTq','appCode','2352651SMVBzx','18152fhokjy','5muGAQB'];a19_0x2415=function(){return _0x4f9432;};return a19_0x2415();}
1
+ function a19_0x2bab(_0x2a66e8,_0x429f8d){_0x2a66e8=_0x2a66e8-0x141;const _0x5d6105=a19_0x5d61();let _0x2babf1=_0x5d6105[_0x2a66e8];return _0x2babf1;}const a19_0x235971=a19_0x2bab;(function(_0x585ce4,_0x1290cb){const _0x3316b3=a19_0x2bab,_0x1c835f=_0x585ce4();while(!![]){try{const _0x2fb701=-parseInt(_0x3316b3(0x14c))/0x1+parseInt(_0x3316b3(0x14b))/0x2*(-parseInt(_0x3316b3(0x141))/0x3)+parseInt(_0x3316b3(0x146))/0x4*(parseInt(_0x3316b3(0x14f))/0x5)+parseInt(_0x3316b3(0x150))/0x6*(-parseInt(_0x3316b3(0x147))/0x7)+-parseInt(_0x3316b3(0x144))/0x8*(-parseInt(_0x3316b3(0x153))/0x9)+parseInt(_0x3316b3(0x142))/0xa+parseInt(_0x3316b3(0x14e))/0xb;if(_0x2fb701===_0x1290cb)break;else _0x1c835f['push'](_0x1c835f['shift']());}catch(_0x2686ea){_0x1c835f['push'](_0x1c835f['shift']());}}}(a19_0x5d61,0x64b3f));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x4a8b89){const _0x593e75=a19_0x2bab,{setActiveCookie:_0x2920fe}=await import(_0x593e75(0x14d));_0x2920fe(_0x4a8b89[_0x593e75(0x143)]);const _0x7484b8=await listRemoteApps();return{'ok':!![],'data':{'items':_0x7484b8['map'](_0x28f309=>({..._0x28f309['id']!=null?{'id':_0x28f309['id']}:{},'appCode':_0x28f309[_0x593e75(0x149)],'appName':_0x28f309[_0x593e75(0x154)],..._0x28f309['appDesc']!=null?{'appDesc':_0x28f309[_0x593e75(0x148)]}:{}})),'meta':{'source':_0x593e75(0x145)}}};}function a19_0x5d61(){const _0x1573f5=['11255seSted','114QvOEMc','app','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','738sGrdNI','appName','144099hetFwu','5217310HinZKP','cookie','60040ljthFZ','platform','628qGdDQN','242809UrcHug','appDesc','appCode','read','10zLcRJc','647877WNNQWY','../../core/api-client.js','5159286aEtjrS'];a19_0x5d61=function(){return _0x1573f5;};return a19_0x5d61();}export const appRemoteDefinition={'service':a19_0x235971(0x151),'command':'remote','description':a19_0x235971(0x152),'risk':a19_0x235971(0x14a),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -1 +1 @@
1
- function a20_0x3982(_0x1b37b5,_0x187599){_0x1b37b5=_0x1b37b5-0x105;const _0x29b98d=a20_0x29b9();let _0x398233=_0x29b98d[_0x1b37b5];return _0x398233;}(function(_0xeced83,_0x33fb84){const _0x3a18c1=a20_0x3982,_0x2a009e=_0xeced83();while(!![]){try{const _0x162a4d=parseInt(_0x3a18c1(0x10a))/0x1*(-parseInt(_0x3a18c1(0x108))/0x2)+parseInt(_0x3a18c1(0x10d))/0x3+-parseInt(_0x3a18c1(0x107))/0x4+-parseInt(_0x3a18c1(0x105))/0x5*(parseInt(_0x3a18c1(0x109))/0x6)+-parseInt(_0x3a18c1(0x10c))/0x7+-parseInt(_0x3a18c1(0x106))/0x8+parseInt(_0x3a18c1(0x10b))/0x9;if(_0x162a4d===_0x33fb84)break;else _0x2a009e['push'](_0x2a009e['shift']());}catch(_0x2b8d85){_0x2a009e['push'](_0x2a009e['shift']());}}}(a20_0x29b9,0xca330));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';function a20_0x29b9(){const _0x524405=['7919065MgLaDl','4287870BWVFlJ','5LeXfSq','1224160jYpJLu','4972324rsBXyD','1121586EEtPcV','6643506jwgoYu','1CirsJx','32349222xeEEUe'];a20_0x29b9=function(){return _0x524405;};return a20_0x29b9();}import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ (function(_0x535b1e,_0x36978a){const _0xc5b21=a20_0x1e5b,_0x1f6060=_0x535b1e();while(!![]){try{const _0x22591d=-parseInt(_0xc5b21(0xe6))/0x1+-parseInt(_0xc5b21(0xe9))/0x2*(parseInt(_0xc5b21(0xe4))/0x3)+-parseInt(_0xc5b21(0xe2))/0x4+-parseInt(_0xc5b21(0xe8))/0x5*(-parseInt(_0xc5b21(0xeb))/0x6)+parseInt(_0xc5b21(0xe3))/0x7*(-parseInt(_0xc5b21(0xe7))/0x8)+parseInt(_0xc5b21(0xe5))/0x9+-parseInt(_0xc5b21(0xea))/0xa*(-parseInt(_0xc5b21(0xec))/0xb);if(_0x22591d===_0x36978a)break;else _0x1f6060['push'](_0x1f6060['shift']());}catch(_0xf1c8e3){_0x1f6060['push'](_0x1f6060['shift']());}}}(a20_0x21c6,0xc4ee7));function a20_0x1e5b(_0x482a97,_0x280272){_0x482a97=_0x482a97-0xe2;const _0x21c695=a20_0x21c6();let _0x1e5b7f=_0x21c695[_0x482a97];return _0x1e5b7f;}import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';function a20_0x21c6(){const _0x4f4102=['5411808URlKla','266rdMBQI','93QUClVE','13023315xtyGlz','221603oWVzdV','2528mBukAm','3213135PQdvyo','54182ebMOda','230YWmRWc','6ycRZHU','546821IqMrSp'];a20_0x21c6=function(){return _0x4f4102;};return a20_0x21c6();}export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- const a21_0x40cdb0=a21_0x449a;function a21_0x449a(_0x3496f9,_0x3ae65b){_0x3496f9=_0x3496f9-0x16e;const _0x527201=a21_0x5272();let _0x449a1e=_0x527201[_0x3496f9];return _0x449a1e;}(function(_0x2f05d2,_0x5e2a5c){const _0x23d887=a21_0x449a,_0x218120=_0x2f05d2();while(!![]){try{const _0x16b510=parseInt(_0x23d887(0x170))/0x1*(parseInt(_0x23d887(0x17a))/0x2)+-parseInt(_0x23d887(0x189))/0x3*(-parseInt(_0x23d887(0x179))/0x4)+parseInt(_0x23d887(0x190))/0x5+parseInt(_0x23d887(0x178))/0x6*(parseInt(_0x23d887(0x176))/0x7)+-parseInt(_0x23d887(0x17e))/0x8*(-parseInt(_0x23d887(0x173))/0x9)+parseInt(_0x23d887(0x188))/0xa*(parseInt(_0x23d887(0x185))/0xb)+-parseInt(_0x23d887(0x18a))/0xc;if(_0x16b510===_0x5e2a5c)break;else _0x218120['push'](_0x218120['shift']());}catch(_0x2d30ce){_0x218120['push'](_0x218120['shift']());}}}(a21_0x5272,0x63ce8));import{readRawConfigWithLayers}from'../../context.js';function a21_0x5272(){const _0x1a8171=['app','global','appcode','read','232881tlgUIr','No\x20apps\x20configured','list','290hCVfPI','54060PDOPOX','23736672bNlfdx','projectPath','project','\x20config','bool','globalConfig','1937065aJFSuS','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','boolean','21ujTtba','merged','globalPath','9kAhhOm','defaultApp','apps','1112860jxgarV','object','12ZFUEcn','12qtCCzY','40126mvmPvi','projectConfig','push','entries','4737192bEkouH','.\x20Use\x20`','find'];a21_0x5272=function(){return _0x1a8171;};return a21_0x5272();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x1d283a,_0x55339a){const _0x29dfe7=a21_0x449a,_0x4226a2=[],_0x3d5561=_0x1d283a[_0x29dfe7(0x175)]&&typeof _0x1d283a[_0x29dfe7(0x175)]===_0x29dfe7(0x177)?_0x1d283a[_0x29dfe7(0x175)]:{},_0x2aa186=_0x1d283a[_0x29dfe7(0x174)]||undefined;for(const [_0x521eeb,_0x22781b]of Object[_0x29dfe7(0x17d)](_0x3d5561)){if(!_0x22781b||typeof _0x22781b!=='object'||!_0x22781b[_0x29dfe7(0x183)])continue;_0x4226a2[_0x29dfe7(0x17c)]({'name':_0x521eeb,'appcode':_0x22781b[_0x29dfe7(0x183)],'named':!![],'definedIn':_0x55339a,'isDefault':_0x521eeb===_0x2aa186,...buildAppProfileListFields(_0x22781b)});}return _0x4226a2;}function buildMergedItems(_0x3a4cf2,_0x3d67c0){const _0x3f1702=a21_0x449a,{apps:apps={},defaultApp:_0x2d0a10}=_0x3a4cf2,_0x3651c8=_0x3d67c0[_0x3f1702(0x18f)][_0x3f1702(0x175)]&&typeof _0x3d67c0[_0x3f1702(0x18f)][_0x3f1702(0x175)]===_0x3f1702(0x177)?_0x3d67c0[_0x3f1702(0x18f)][_0x3f1702(0x175)]:{},_0x29643e=_0x3d67c0[_0x3f1702(0x17b)][_0x3f1702(0x175)]&&typeof _0x3d67c0[_0x3f1702(0x17b)][_0x3f1702(0x175)]===_0x3f1702(0x177)?_0x3d67c0[_0x3f1702(0x17b)][_0x3f1702(0x175)]:{},_0xa8cd4d=_0x3d67c0['projectConfig']['inherit']===![],_0x171927=Object['entries'](apps),_0x1f2976=_0x171927['map'](([_0x2ba33b,_0x459d81])=>({'name':_0x2ba33b,'appcode':_0x459d81[_0x3f1702(0x183)],'named':!![],'definedIn':appDefinedIn(_0x2ba33b,_0x3651c8,_0x29643e,_0xa8cd4d),'isDefault':_0x2ba33b===_0x2d0a10,...buildAppProfileListFields(_0x459d81)}));return _0x1f2976;}async function execute(_0x50c21a){const _0x42228d=a21_0x449a,_0x2405e7=_0x50c21a[_0x42228d(0x18e)](_0x42228d(0x182)),_0x712856=_0x50c21a['bool']('project'),_0x62b9b6=_0x2405e7?_0x42228d(0x182):_0x712856?_0x42228d(0x18c):_0x42228d(0x171),{config:_0x1c21c6,layers:_0x55645c}=readRawConfigWithLayers(),_0x46acb5=resolveDefaultAppSource(_0x55645c),{defaultApp:_0x166265}=_0x1c21c6;let _0x37bebb,_0x1cd068;switch(_0x62b9b6){case _0x42228d(0x182):_0x37bebb=buildItemsFromLayer(_0x55645c[_0x42228d(0x18f)],_0x42228d(0x182)),_0x1cd068=_0x55645c[_0x42228d(0x172)];break;case _0x42228d(0x18c):_0x37bebb=buildItemsFromLayer(_0x55645c['projectConfig'],'project'),_0x1cd068=_0x55645c[_0x42228d(0x18b)];break;default:_0x37bebb=buildMergedItems(_0x1c21c6,_0x55645c);break;}enrichAppListItemsWithMergedSelection(_0x37bebb,_0x50c21a['mergedCli']);if(_0x37bebb['length']===0x0){const _0x35c131=_0x62b9b6===_0x42228d(0x171)?'':'\x20in\x20'+_0x62b9b6+_0x42228d(0x18d);return{'ok':!![],'data':[],'message':_0x42228d(0x186)+_0x35c131+_0x42228d(0x17f)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x3ee0d1=_0x37bebb[_0x42228d(0x180)](_0x26cccf=>_0x26cccf['isCurrent']===!![]),_0x1eb99b=_0x166265??_0x3ee0d1?.[_0x42228d(0x183)]??null,_0x5941b3=_0x62b9b6===_0x42228d(0x171)?{'globalPath':_0x55645c[_0x42228d(0x172)]??null,'projectPath':_0x55645c[_0x42228d(0x18b)]??null,'defaultApp':_0x1eb99b,'defaultAppSource':_0x166265!=null?_0x46acb5:null}:{'scope':_0x62b9b6,'configPath':_0x1cd068??null};return{'ok':!![],'data':{'items':_0x37bebb,'meta':_0x5941b3}};}export const appListDefinition={'service':a21_0x40cdb0(0x181),'command':a21_0x40cdb0(0x187),'description':'List\x20all\x20configured\x20apps','risk':a21_0x40cdb0(0x184),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x40cdb0(0x182),'type':a21_0x40cdb0(0x16f),'description':'Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','default':![]},{'name':a21_0x40cdb0(0x18c),'type':'boolean','description':a21_0x40cdb0(0x16e),'default':![]}],'execute':execute};
1
+ const a21_0x75a2aa=a21_0x5bd1;(function(_0x7ec12,_0x5e90c2){const _0xc5c9d1=a21_0x5bd1,_0x27a396=_0x7ec12();while(!![]){try{const _0xe6dc90=-parseInt(_0xc5c9d1(0x1a3))/0x1*(parseInt(_0xc5c9d1(0x1b5))/0x2)+parseInt(_0xc5c9d1(0x1b1))/0x3+-parseInt(_0xc5c9d1(0x19c))/0x4+parseInt(_0xc5c9d1(0x1b7))/0x5*(-parseInt(_0xc5c9d1(0x1b2))/0x6)+parseInt(_0xc5c9d1(0x1b0))/0x7+parseInt(_0xc5c9d1(0x1a8))/0x8+parseInt(_0xc5c9d1(0x1ab))/0x9;if(_0xe6dc90===_0x5e90c2)break;else _0x27a396['push'](_0x27a396['shift']());}catch(_0x5af194){_0x27a396['push'](_0x27a396['shift']());}}}(a21_0x37b0,0xc1dc8));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x38beb3,_0x47373f){const _0x5e05cc=a21_0x5bd1,_0x5a2fe8=[],_0x19ff7d=_0x38beb3['apps']&&typeof _0x38beb3[_0x5e05cc(0x1a2)]==='object'?_0x38beb3['apps']:{},_0x2e7aaa=_0x38beb3['defaultApp']||undefined;for(const [_0x2de676,_0x21615c]of Object['entries'](_0x19ff7d)){if(!_0x21615c||typeof _0x21615c!==_0x5e05cc(0x19b)||!_0x21615c[_0x5e05cc(0x1b6)])continue;_0x5a2fe8['push']({'name':_0x2de676,'appcode':_0x21615c['appcode'],'named':!![],'definedIn':_0x47373f,'isDefault':_0x2de676===_0x2e7aaa,...buildAppProfileListFields(_0x21615c)});}return _0x5a2fe8;}function buildMergedItems(_0x4d177b,_0x137358){const _0x54d2ca=a21_0x5bd1,{apps:apps={},defaultApp:_0x4de6d3}=_0x4d177b,_0x3f04f2=_0x137358['globalConfig'][_0x54d2ca(0x1a2)]&&typeof _0x137358[_0x54d2ca(0x1ad)][_0x54d2ca(0x1a2)]===_0x54d2ca(0x19b)?_0x137358[_0x54d2ca(0x1ad)]['apps']:{},_0x6cf98f=_0x137358[_0x54d2ca(0x1a0)][_0x54d2ca(0x1a2)]&&typeof _0x137358[_0x54d2ca(0x1a0)][_0x54d2ca(0x1a2)]===_0x54d2ca(0x19b)?_0x137358[_0x54d2ca(0x1a0)][_0x54d2ca(0x1a2)]:{},_0x2a83ff=_0x137358[_0x54d2ca(0x1a0)][_0x54d2ca(0x1aa)]===![],_0x40525=Object['entries'](apps),_0x54eedb=_0x40525['map'](([_0xf729da,_0x4eef11])=>({'name':_0xf729da,'appcode':_0x4eef11[_0x54d2ca(0x1b6)],'named':!![],'definedIn':appDefinedIn(_0xf729da,_0x3f04f2,_0x6cf98f,_0x2a83ff),'isDefault':_0xf729da===_0x4de6d3,...buildAppProfileListFields(_0x4eef11)}));return _0x54eedb;}async function execute(_0x19bbdc){const _0x2263ac=a21_0x5bd1,_0x2bbce0=_0x19bbdc['bool'](_0x2263ac(0x19d)),_0x16abed=_0x19bbdc[_0x2263ac(0x1af)](_0x2263ac(0x19e)),_0x525fbd=_0x2bbce0?_0x2263ac(0x19d):_0x16abed?_0x2263ac(0x19e):'merged',{config:_0x2eed24,layers:_0x2d8e94}=readRawConfigWithLayers(),_0x135911=resolveDefaultAppSource(_0x2d8e94),{defaultApp:_0x4454ac}=_0x2eed24;let _0x1e85bb,_0x51f437;switch(_0x525fbd){case _0x2263ac(0x19d):_0x1e85bb=buildItemsFromLayer(_0x2d8e94[_0x2263ac(0x1ad)],'global'),_0x51f437=_0x2d8e94[_0x2263ac(0x1ae)];break;case _0x2263ac(0x19e):_0x1e85bb=buildItemsFromLayer(_0x2d8e94['projectConfig'],'project'),_0x51f437=_0x2d8e94['projectPath'];break;default:_0x1e85bb=buildMergedItems(_0x2eed24,_0x2d8e94);break;}enrichAppListItemsWithMergedSelection(_0x1e85bb,_0x19bbdc['mergedCli']);if(_0x1e85bb[_0x2263ac(0x19a)]===0x0){const _0x78583f=_0x525fbd===_0x2263ac(0x1a5)?'':'\x20in\x20'+_0x525fbd+_0x2263ac(0x1a1);return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x78583f+_0x2263ac(0x1ac)+CLI_BIN_NAME+_0x2263ac(0x1a6)};}const _0x218aba=_0x1e85bb[_0x2263ac(0x19f)](_0x101d05=>_0x101d05['isCurrent']===!![]),_0x306e72=_0x4454ac??_0x218aba?.[_0x2263ac(0x1b6)]??null,_0x1063bf=_0x525fbd===_0x2263ac(0x1a5)?{'globalPath':_0x2d8e94[_0x2263ac(0x1ae)]??null,'projectPath':_0x2d8e94[_0x2263ac(0x1b3)]??null,'defaultApp':_0x306e72,'defaultAppSource':_0x4454ac!=null?_0x135911:null}:{'scope':_0x525fbd,'configPath':_0x51f437??null};return{'ok':!![],'data':{'items':_0x1e85bb,'meta':_0x1063bf}};}function a21_0x5bd1(_0x4409ad,_0x7b20b6){_0x4409ad=_0x4409ad-0x19a;const _0x37b0ea=a21_0x37b0();let _0x5bd1ae=_0x37b0ea[_0x4409ad];return _0x5bd1ae;}function a21_0x37b0(){const _0x56c9ae=['12sNDrBH','projectPath','boolean','31508TSlAoh','appcode','3470555iJxNpv','length','object','917524mvGXgL','global','project','find','projectConfig','\x20config','apps','3qnfxHb','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','merged','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','7929864iPRElp','read','inherit','9024759FeWPaV','.\x20Use\x20`','globalConfig','globalPath','bool','2044924yqyaCM','518415jvRnSU'];a21_0x37b0=function(){return _0x56c9ae;};return a21_0x37b0();}export const appListDefinition={'service':'app','command':'list','description':'List\x20all\x20configured\x20apps','risk':a21_0x75a2aa(0x1a9),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x75a2aa(0x19d),'type':a21_0x75a2aa(0x1b4),'description':a21_0x75a2aa(0x1a7),'default':![]},{'name':'project','type':a21_0x75a2aa(0x1b4),'description':a21_0x75a2aa(0x1a4),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0xd167a5=a22_0x5ce2;(function(_0x3db799,_0x41e043){const _0x55a35e=a22_0x5ce2,_0xec28b6=_0x3db799();while(!![]){try{const _0x5be0ab=parseInt(_0x55a35e(0xba))/0x1*(-parseInt(_0x55a35e(0xd2))/0x2)+-parseInt(_0x55a35e(0xc0))/0x3*(-parseInt(_0x55a35e(0xc2))/0x4)+-parseInt(_0x55a35e(0xc1))/0x5*(parseInt(_0x55a35e(0xc5))/0x6)+-parseInt(_0x55a35e(0xbf))/0x7*(-parseInt(_0x55a35e(0xaf))/0x8)+parseInt(_0x55a35e(0xb8))/0x9+parseInt(_0x55a35e(0xcd))/0xa+-parseInt(_0x55a35e(0xc7))/0xb*(-parseInt(_0x55a35e(0xc6))/0xc);if(_0x5be0ab===_0x41e043)break;else _0xec28b6['push'](_0xec28b6['shift']());}catch(_0xf060d2){_0xec28b6['push'](_0xec28b6['shift']());}}}(a22_0x3494,0x610b3));import{CliErrors}from'../../errors.js';function a22_0x3494(){const _0x50e616=['remove','\x20app\x20remove\x20<name>\x20[--global]','projectConfig','bool','1767636yQbpUD','App\x20\x22','127376kwNdHo','boolean','global','trim','globalConfig','14LTCiVY','12309aFCejY','5SOedmo','56iogBff','App\x20profile\x20name\x20to\x20remove','validation','4077102EicKsl','4106172XwumZw','11sRsIQS','Removed\x20app\x20\x22','Use\x20global\x20config\x20scope','apps','\x22\x20still\x20defined\x20in\x20','length','6422290wwLpKh','Remove\x20an\x20app\x20from\x20config','object','project','\x20Note:\x20app\x20\x22','4SMjfeX','name','high-risk-write','inherit','defaultApp','Usage:\x20','args','both','374016TYDONd','app','Missing\x20app\x20name.','\x20config.','keys'];a22_0x3494=function(){return _0x50e616;};return a22_0x3494();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0xcb87a4){const _0x2c7ce5=a22_0x5ce2,_0x7c129c=_0xcb87a4['args'][0x0]?.[_0x2c7ce5(0xbd)]();if(!_0x7c129c)throw CliErrors['validation'](_0x2c7ce5(0xb1),_0x2c7ce5(0xd7)+CLI_BIN_NAME+_0x2c7ce5(0xb5));}async function execute(_0x19943d){const _0x58f823=a22_0x5ce2,_0x280183=_0x19943d[_0x58f823(0xd8)][0x0]?.[_0x58f823(0xbd)]();if(!_0x280183)throw CliErrors[_0x58f823(0xc4)](_0x58f823(0xb1),_0x58f823(0xd7)+CLI_BIN_NAME+_0x58f823(0xb5));const _0x554da2=_0x19943d[_0x58f823(0xb7)]('global'),{config:_0x533a1e,layers:_0x39de9f}=readRawConfigWithLayers(),_0x2a9cbb=_0x533a1e[_0x58f823(0xca)]??{};if(!_0x2a9cbb[_0x280183])throw CliErrors['validation']('App\x20\x22'+_0x280183+'\x22\x20not\x20found.');const _0x1d5f1d=_0x39de9f[_0x58f823(0xbe)][_0x58f823(0xca)]&&typeof _0x39de9f[_0x58f823(0xbe)][_0x58f823(0xca)]==='object'?_0x39de9f['globalConfig'][_0x58f823(0xca)]:{},_0x557383=_0x39de9f[_0x58f823(0xb6)][_0x58f823(0xca)]&&typeof _0x39de9f[_0x58f823(0xb6)][_0x58f823(0xca)]===_0x58f823(0xcf)?_0x39de9f[_0x58f823(0xb6)][_0x58f823(0xca)]:{},_0x4fafe5=appDefinedIn(_0x280183,_0x1d5f1d,_0x557383,_0x39de9f['projectConfig'][_0x58f823(0xd5)]===![]),_0x1ec728=resolveAppScopeForWrite(_0x280183,_0x554da2,_0x39de9f),_0x3254a4={'global':_0x1ec728===_0x58f823(0xbc)},_0x49ec43=readConfig(_0x3254a4),_0x560e0e=_0x49ec43['apps'];if(!_0x560e0e||!_0x560e0e[_0x280183])throw CliErrors['validation'](_0x58f823(0xb9)+_0x280183+'\x22\x20not\x20found.');delete _0x560e0e[_0x280183];let _0x57d9a3='';if(_0x49ec43[_0x58f823(0xd6)]===_0x280183){const _0x4d6256=Object[_0x58f823(0xb3)](_0x560e0e);_0x49ec43[_0x58f823(0xd6)]=_0x4d6256['length']>0x0?_0x4d6256[0x0]:undefined,_0x49ec43[_0x58f823(0xd6)]?_0x57d9a3='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x49ec43[_0x58f823(0xd6)]+'\x22.':delete _0x49ec43[_0x58f823(0xd6)];}Object[_0x58f823(0xb3)](_0x560e0e)[_0x58f823(0xcc)]===0x0&&(delete _0x49ec43['apps'],delete _0x49ec43['defaultApp']);writeConfig(_0x49ec43,_0x3254a4);const _0x5de24f=_0x4fafe5===_0x58f823(0xae)?_0x58f823(0xd1)+_0x280183+_0x58f823(0xcb)+(_0x1ec728==='project'?_0x58f823(0xbc):_0x58f823(0xd0))+_0x58f823(0xb2):'';return{'ok':!![],'message':_0x58f823(0xc8)+_0x280183+'\x22'+scopeLabel(_0x3254a4)+'.'+_0x57d9a3+_0x5de24f};}function a22_0x5ce2(_0x1600bb,_0x3bb3c2){_0x1600bb=_0x1600bb-0xae;const _0x349441=a22_0x3494();let _0x5ce2ec=_0x349441[_0x1600bb];return _0x5ce2ec;}export const appRemoveDefinition={'service':a22_0xd167a5(0xb0),'command':a22_0xd167a5(0xb4),'description':a22_0xd167a5(0xce),'risk':a22_0xd167a5(0xd4),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0xd167a5(0xd3),'description':a22_0xd167a5(0xc3),'required':!![]}],'flags':[{'name':a22_0xd167a5(0xbc),'type':a22_0xd167a5(0xbb),'description':a22_0xd167a5(0xc9),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x4576b2=a22_0x5c0d;(function(_0x5b351b,_0x33bcfb){const _0x19c9ad=a22_0x5c0d,_0x46c268=_0x5b351b();while(!![]){try{const _0x3fd335=-parseInt(_0x19c9ad(0x1ae))/0x1*(-parseInt(_0x19c9ad(0x1b9))/0x2)+-parseInt(_0x19c9ad(0x1a7))/0x3+-parseInt(_0x19c9ad(0x1c3))/0x4*(parseInt(_0x19c9ad(0x1b6))/0x5)+-parseInt(_0x19c9ad(0x1a6))/0x6+-parseInt(_0x19c9ad(0x1b8))/0x7+-parseInt(_0x19c9ad(0x1ab))/0x8+-parseInt(_0x19c9ad(0x1a9))/0x9*(-parseInt(_0x19c9ad(0x1bb))/0xa);if(_0x3fd335===_0x33bcfb)break;else _0x46c268['push'](_0x46c268['shift']());}catch(_0x4d99ba){_0x46c268['push'](_0x46c268['shift']());}}}(a22_0x25f5,0x34a6c));function a22_0x25f5(){const _0x5481ab=['\x20config.','\x22\x20still\x20defined\x20in\x20','defaultApp','\x20Default\x20app\x20changed\x20to\x20\x22','\x20app\x20remove\x20<name>\x20[--global]','project','Use\x20global\x20config\x20scope','1506796fhssWS','\x22\x20not\x20found.','trim','globalConfig','Missing\x20app\x20name.','length','projectConfig','App\x20profile\x20name\x20to\x20remove','apps','object','\x20Note:\x20app\x20\x22','62448IXzcVo','38331YGRCnn','inherit','8167059PCdkGL','Remove\x20an\x20app\x20from\x20config','2636592GpWBeJ','global','Removed\x20app\x20\x22','122501ZqVCMD','App\x20\x22','args','boolean','validation','keys','bool','name','5RNckiA','Usage:\x20','1451345nFqrYo','4OdOEjY','high-risk-write','10FDwIcV'];a22_0x25f5=function(){return _0x5481ab;};return a22_0x25f5();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a22_0x5c0d(_0xc07a5f,_0x535150){_0xc07a5f=_0xc07a5f-0x1a5;const _0x25f52e=a22_0x25f5();let _0x5c0d67=_0x25f52e[_0xc07a5f];return _0x5c0d67;}import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x23dac8){const _0x1b3286=a22_0x5c0d,_0x409164=_0x23dac8[_0x1b3286(0x1b0)][0x0]?.['trim']();if(!_0x409164)throw CliErrors[_0x1b3286(0x1b2)](_0x1b3286(0x1c7),_0x1b3286(0x1b7)+CLI_BIN_NAME+_0x1b3286(0x1c0));}async function execute(_0x95568c){const _0x41f245=a22_0x5c0d,_0x20debf=_0x95568c[_0x41f245(0x1b0)][0x0]?.[_0x41f245(0x1c5)]();if(!_0x20debf)throw CliErrors[_0x41f245(0x1b2)](_0x41f245(0x1c7),_0x41f245(0x1b7)+CLI_BIN_NAME+_0x41f245(0x1c0));const _0x280334=_0x95568c[_0x41f245(0x1b4)]('global'),{config:_0x194a07,layers:_0x75c269}=readRawConfigWithLayers(),_0xfe0724=_0x194a07['apps']??{};if(!_0xfe0724[_0x20debf])throw CliErrors[_0x41f245(0x1b2)](_0x41f245(0x1af)+_0x20debf+_0x41f245(0x1c4));const _0x16c7a0=_0x75c269[_0x41f245(0x1c6)]['apps']&&typeof _0x75c269[_0x41f245(0x1c6)][_0x41f245(0x1cb)]===_0x41f245(0x1cc)?_0x75c269[_0x41f245(0x1c6)][_0x41f245(0x1cb)]:{},_0x4cf1d1=_0x75c269[_0x41f245(0x1c9)][_0x41f245(0x1cb)]&&typeof _0x75c269[_0x41f245(0x1c9)][_0x41f245(0x1cb)]===_0x41f245(0x1cc)?_0x75c269[_0x41f245(0x1c9)][_0x41f245(0x1cb)]:{},_0x48452f=appDefinedIn(_0x20debf,_0x16c7a0,_0x4cf1d1,_0x75c269[_0x41f245(0x1c9)][_0x41f245(0x1a8)]===![]),_0x42877d=resolveAppScopeForWrite(_0x20debf,_0x280334,_0x75c269),_0x45e0e0={'global':_0x42877d==='global'},_0x5a3159=readConfig(_0x45e0e0),_0x4d88e7=_0x5a3159[_0x41f245(0x1cb)];if(!_0x4d88e7||!_0x4d88e7[_0x20debf])throw CliErrors['validation'](_0x41f245(0x1af)+_0x20debf+_0x41f245(0x1c4));delete _0x4d88e7[_0x20debf];let _0x44e350='';if(_0x5a3159[_0x41f245(0x1be)]===_0x20debf){const _0x24aad9=Object[_0x41f245(0x1b3)](_0x4d88e7);_0x5a3159[_0x41f245(0x1be)]=_0x24aad9[_0x41f245(0x1c8)]>0x0?_0x24aad9[0x0]:undefined,_0x5a3159['defaultApp']?_0x44e350=_0x41f245(0x1bf)+_0x5a3159['defaultApp']+'\x22.':delete _0x5a3159[_0x41f245(0x1be)];}Object[_0x41f245(0x1b3)](_0x4d88e7)[_0x41f245(0x1c8)]===0x0&&(delete _0x5a3159[_0x41f245(0x1cb)],delete _0x5a3159[_0x41f245(0x1be)]);writeConfig(_0x5a3159,_0x45e0e0);const _0x102f38=_0x48452f==='both'?_0x41f245(0x1a5)+_0x20debf+_0x41f245(0x1bd)+(_0x42877d===_0x41f245(0x1c1)?_0x41f245(0x1ac):_0x41f245(0x1c1))+_0x41f245(0x1bc):'';return{'ok':!![],'message':_0x41f245(0x1ad)+_0x20debf+'\x22'+scopeLabel(_0x45e0e0)+'.'+_0x44e350+_0x102f38};}export const appRemoveDefinition={'service':'app','command':'remove','description':a22_0x4576b2(0x1aa),'risk':a22_0x4576b2(0x1ba),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x4576b2(0x1b5),'description':a22_0x4576b2(0x1ca),'required':!![]}],'flags':[{'name':a22_0x4576b2(0x1ac),'type':a22_0x4576b2(0x1b1),'description':a22_0x4576b2(0x1c2),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x224996,_0x294379){const _0x4e426f=a23_0x6349,_0x3c575d=_0x224996();while(!![]){try{const _0x2c912=-parseInt(_0x4e426f(0xcb))/0x1*(parseInt(_0x4e426f(0xba))/0x2)+parseInt(_0x4e426f(0xb6))/0x3*(parseInt(_0x4e426f(0xc7))/0x4)+-parseInt(_0x4e426f(0xc4))/0x5*(-parseInt(_0x4e426f(0xc1))/0x6)+parseInt(_0x4e426f(0xd4))/0x7+-parseInt(_0x4e426f(0xcd))/0x8+-parseInt(_0x4e426f(0xbe))/0x9*(parseInt(_0x4e426f(0xd3))/0xa)+parseInt(_0x4e426f(0xbf))/0xb*(parseInt(_0x4e426f(0xc5))/0xc);if(_0x2c912===_0x294379)break;else _0x3c575d['push'](_0x3c575d['shift']());}catch(_0x3d9c53){_0x3c575d['push'](_0x3c575d['shift']());}}}(a23_0x229e,0x357f4));function a23_0x6349(_0x12fd83,_0x4d5374){_0x12fd83=_0x12fd83-0xb6;const _0x229eac=a23_0x229e();let _0x63490=_0x229eac[_0x12fd83];return _0x63490;}import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x56e4f9,_0x486740){const _0xf3dcf8=a23_0x6349;if(!_0x486740)return;const _0x19d179=_0x486740[_0xf3dcf8(0xbd)]&&typeof _0x486740['apps']===_0xf3dcf8(0xb8)?_0x486740['apps']:{},_0x2afd61=Object['keys'](_0x19d179)['length']>0x0;for(const _0x40677e of _0x56e4f9){_0x40677e[_0xf3dcf8(0xc2)]=![];}const _0x449900=_0x486740[_0xf3dcf8(0xbb)]!=null?String(_0x486740[_0xf3dcf8(0xbb)])[_0xf3dcf8(0xbc)]():'';if(_0x2afd61){const _0x1fae3d=_0x486740[_0xf3dcf8(0xc6)]??_0x486740['defaultApp'];if(_0x1fae3d)for(const _0x25a458 of _0x56e4f9){_0x25a458[_0xf3dcf8(0xd5)]===!![]&&_0x25a458[_0xf3dcf8(0xd0)]===_0x1fae3d&&(_0x25a458[_0xf3dcf8(0xc2)]=!![]);}for(const _0x9d57a4 of _0x56e4f9){if(_0x9d57a4[_0xf3dcf8(0xd5)]!==![])continue;if(_0x486740[_0xf3dcf8(0xcf)])continue;_0x449900&&String(_0x9d57a4[_0xf3dcf8(0xc0)]??'')[_0xf3dcf8(0xbc)]()===_0x449900&&(_0x9d57a4[_0xf3dcf8(0xc2)]=!![]);}return;}if(!_0x449900)return;for(const _0x3eaa01 of _0x56e4f9){String(_0x3eaa01['appcode']??'')['trim']()===_0x449900&&(_0x3eaa01[_0xf3dcf8(0xc2)]=!![]);}}export function resolveAppScopeForWrite(_0xc95746,_0x225f21,_0x4765d4){const _0xdeb527=a23_0x6349;if(_0x225f21)return _0xdeb527(0xb7);const _0x276602=_0x4765d4[_0xdeb527(0xd2)][_0xdeb527(0xbd)]&&typeof _0x4765d4[_0xdeb527(0xd2)]['apps']==='object'?_0x4765d4[_0xdeb527(0xd2)][_0xdeb527(0xbd)]:{},_0x1b288c=_0x4765d4[_0xdeb527(0xd1)][_0xdeb527(0xbd)]&&typeof _0x4765d4[_0xdeb527(0xd1)][_0xdeb527(0xbd)]===_0xdeb527(0xb8)?_0x4765d4['globalConfig'][_0xdeb527(0xbd)]:{};if(Object[_0xdeb527(0xc3)]['hasOwnProperty'][_0xdeb527(0xd6)](_0x276602,_0xc95746))return _0xdeb527(0xc9);if(Object[_0xdeb527(0xc3)][_0xdeb527(0xb9)][_0xdeb527(0xd6)](_0x1b288c,_0xc95746))return _0xdeb527(0xb7);return _0xdeb527(0xc9);}export function appDefinedIn(_0x2badbc,_0x555b0a,_0x14392f,_0x85e469){const _0x1c7e2c=a23_0x6349;if(_0x85e469)return Object[_0x1c7e2c(0xc3)][_0x1c7e2c(0xb9)][_0x1c7e2c(0xd6)](_0x14392f,_0x2badbc)?_0x1c7e2c(0xc9):_0x1c7e2c(0xb7);const _0x52159c=Object[_0x1c7e2c(0xc3)]['hasOwnProperty']['call'](_0x555b0a,_0x2badbc),_0x5f5de3=Object[_0x1c7e2c(0xc3)][_0x1c7e2c(0xb9)][_0x1c7e2c(0xd6)](_0x14392f,_0x2badbc);if(_0x52159c&&_0x5f5de3)return _0x1c7e2c(0xca);if(_0x5f5de3)return'project';return _0x1c7e2c(0xb7);}export function resolveDefaultAppSource(_0x4926cf){const _0x24aefe=a23_0x6349,_0x21def4=_0x4926cf['projectConfig']['apps']&&typeof _0x4926cf[_0x24aefe(0xd2)]['apps']===_0x24aefe(0xb8)?_0x4926cf[_0x24aefe(0xd2)][_0x24aefe(0xbd)]:{};if(_0x24aefe(0xcf)in _0x4926cf[_0x24aefe(0xd2)])return _0x24aefe(0xc9);if(Object[_0x24aefe(0xce)](_0x21def4)[_0x24aefe(0xcc)]>0x0)return _0x24aefe(0xc9);if(_0x4926cf[_0x24aefe(0xd2)]['inherit']===![])return null;if(_0x4926cf[_0x24aefe(0xd1)][_0x24aefe(0xcf)])return _0x24aefe(0xb7);return null;}export function getConfigPath(_0x13c201={}){const _0x1068b1=a23_0x6349,_0x271482=_0x13c201[_0x1068b1(0xb7)]?_0x1068b1(0xb7):_0x1068b1(0xc9);return resolveWriteConfigPath(_0x271482);}function a23_0x229e(){const _0x2534c3=['keys','defaultApp','name','globalConfig','projectConfig','197040sUCpRb','301966CCSaCZ','named','call','312099fDaVep','global','object','hasOwnProperty','2ZnPdgj','appCode','trim','apps','9JGwoHx','2629KbkXgY','appcode','6OvMvNs','isCurrent','prototype','528455rHpKeZ','2916XZuBLM','currentApp','8SaxJYN','\x20(global)','project','both','98052qhYRdM','length','624736jnyfVe'];a23_0x229e=function(){return _0x2534c3;};return a23_0x229e();}export function readConfig(_0x370abf={}){return readConfigFile(getConfigPath(_0x370abf));}export function writeConfig(_0x557b81,_0x54f19f={}){writeConfigFile(getConfigPath(_0x54f19f),_0x557b81);}export function scopeLabel(_0x42fd85){const _0x4ae3e6=a23_0x6349;return _0x42fd85[_0x4ae3e6(0xb7)]?_0x4ae3e6(0xc8):'';}
1
+ (function(_0x145f5c,_0x45dc4c){const _0x56ce4d=a23_0x5efe,_0x156a1d=_0x145f5c();while(!![]){try{const _0x3ef692=-parseInt(_0x56ce4d(0xb1))/0x1+parseInt(_0x56ce4d(0xba))/0x2+-parseInt(_0x56ce4d(0xab))/0x3+-parseInt(_0x56ce4d(0xbe))/0x4*(parseInt(_0x56ce4d(0xaf))/0x5)+parseInt(_0x56ce4d(0xad))/0x6+-parseInt(_0x56ce4d(0xa2))/0x7+parseInt(_0x56ce4d(0xb0))/0x8;if(_0x3ef692===_0x45dc4c)break;else _0x156a1d['push'](_0x156a1d['shift']());}catch(_0x22e3ef){_0x156a1d['push'](_0x156a1d['shift']());}}}(a23_0x4737,0x65ef4));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';function a23_0x4737(){const _0x574228=['prototype','project','\x20(global)','trim','both','call','1808346qIetBU','length','3330396hjiqfm','apps','79775amZqQB','10354680JprApX','399717vTaEIV','globalConfig','appCode','global','named','projectConfig','hasOwnProperty','currentApp','object','1256180qjctGY','isCurrent','appcode','name','84wIyqub','5056891XESOsA','keys','defaultApp'];a23_0x4737=function(){return _0x574228;};return a23_0x4737();}export function enrichAppListItemsWithMergedSelection(_0x10fa5e,_0x171014){const _0x3b390b=a23_0x5efe;if(!_0x171014)return;const _0x26ef7b=_0x171014[_0x3b390b(0xae)]&&typeof _0x171014[_0x3b390b(0xae)]===_0x3b390b(0xb9)?_0x171014[_0x3b390b(0xae)]:{},_0x38e074=Object['keys'](_0x26ef7b)[_0x3b390b(0xac)]>0x0;for(const _0x4b8d46 of _0x10fa5e){_0x4b8d46[_0x3b390b(0xbb)]=![];}const _0x2a9834=_0x171014[_0x3b390b(0xb3)]!=null?String(_0x171014[_0x3b390b(0xb3)])['trim']():'';if(_0x38e074){const _0x100d9e=_0x171014[_0x3b390b(0xb8)]??_0x171014[_0x3b390b(0xa4)];if(_0x100d9e)for(const _0x2efecd of _0x10fa5e){_0x2efecd[_0x3b390b(0xb5)]===!![]&&_0x2efecd[_0x3b390b(0xbd)]===_0x100d9e&&(_0x2efecd['isCurrent']=!![]);}for(const _0x13b326 of _0x10fa5e){if(_0x13b326[_0x3b390b(0xb5)]!==![])continue;if(_0x171014[_0x3b390b(0xa4)])continue;_0x2a9834&&String(_0x13b326[_0x3b390b(0xbc)]??'')['trim']()===_0x2a9834&&(_0x13b326[_0x3b390b(0xbb)]=!![]);}return;}if(!_0x2a9834)return;for(const _0x352c9f of _0x10fa5e){String(_0x352c9f['appcode']??'')[_0x3b390b(0xa8)]()===_0x2a9834&&(_0x352c9f[_0x3b390b(0xbb)]=!![]);}}export function resolveAppScopeForWrite(_0x398f63,_0x12ee14,_0x2cd99f){const _0x750540=a23_0x5efe;if(_0x12ee14)return _0x750540(0xb4);const _0x1fa552=_0x2cd99f[_0x750540(0xb6)][_0x750540(0xae)]&&typeof _0x2cd99f['projectConfig'][_0x750540(0xae)]===_0x750540(0xb9)?_0x2cd99f[_0x750540(0xb6)][_0x750540(0xae)]:{},_0x1031c8=_0x2cd99f[_0x750540(0xb2)][_0x750540(0xae)]&&typeof _0x2cd99f[_0x750540(0xb2)][_0x750540(0xae)]===_0x750540(0xb9)?_0x2cd99f[_0x750540(0xb2)][_0x750540(0xae)]:{};if(Object[_0x750540(0xa5)]['hasOwnProperty'][_0x750540(0xaa)](_0x1fa552,_0x398f63))return _0x750540(0xa6);if(Object[_0x750540(0xa5)][_0x750540(0xb7)][_0x750540(0xaa)](_0x1031c8,_0x398f63))return _0x750540(0xb4);return _0x750540(0xa6);}export function appDefinedIn(_0x2a49c2,_0x5ea257,_0x1ebb1a,_0x1a9667){const _0x191f8f=a23_0x5efe;if(_0x1a9667)return Object['prototype'][_0x191f8f(0xb7)]['call'](_0x1ebb1a,_0x2a49c2)?_0x191f8f(0xa6):'global';const _0x41953c=Object[_0x191f8f(0xa5)]['hasOwnProperty'][_0x191f8f(0xaa)](_0x5ea257,_0x2a49c2),_0x670304=Object[_0x191f8f(0xa5)][_0x191f8f(0xb7)][_0x191f8f(0xaa)](_0x1ebb1a,_0x2a49c2);if(_0x41953c&&_0x670304)return _0x191f8f(0xa9);if(_0x670304)return _0x191f8f(0xa6);return _0x191f8f(0xb4);}export function resolveDefaultAppSource(_0x5307a9){const _0x99bac9=a23_0x5efe,_0x308848=_0x5307a9[_0x99bac9(0xb6)][_0x99bac9(0xae)]&&typeof _0x5307a9[_0x99bac9(0xb6)]['apps']===_0x99bac9(0xb9)?_0x5307a9[_0x99bac9(0xb6)][_0x99bac9(0xae)]:{};if(_0x99bac9(0xa4)in _0x5307a9[_0x99bac9(0xb6)])return _0x99bac9(0xa6);if(Object[_0x99bac9(0xa3)](_0x308848)[_0x99bac9(0xac)]>0x0)return'project';if(_0x5307a9[_0x99bac9(0xb6)]['inherit']===![])return null;if(_0x5307a9[_0x99bac9(0xb2)][_0x99bac9(0xa4)])return'global';return null;}export function getConfigPath(_0x26ddb8={}){const _0x724416=a23_0x5efe,_0x5e133f=_0x26ddb8[_0x724416(0xb4)]?_0x724416(0xb4):_0x724416(0xa6);return resolveWriteConfigPath(_0x5e133f);}export function readConfig(_0x410f33={}){return readConfigFile(getConfigPath(_0x410f33));}function a23_0x5efe(_0xaf88d3,_0x2327b6){_0xaf88d3=_0xaf88d3-0xa2;const _0x473725=a23_0x4737();let _0x5efeda=_0x473725[_0xaf88d3];return _0x5efeda;}export function writeConfig(_0x15e0f8,_0x457623={}){writeConfigFile(getConfigPath(_0x457623),_0x15e0f8);}export function scopeLabel(_0x155e44){const _0x2ea62c=a23_0x5efe;return _0x155e44[_0x2ea62c(0xb4)]?_0x2ea62c(0xa7):'';}
@@ -1 +1 @@
1
- function a24_0x4e4f(){const _0x3426fc=['validation','5083428QkgqNh','boolean','61315DsNOPv','bool','globalConfig','args','\x20app\x20use\x20<name>\x20[--global]','120vASmmi','App\x20\x22','296Ikgqis','\x20--appcode\x20<code>`\x20first.','456gsPKqQ','global','Missing\x20app\x20name.','1863510upEdRH','\x0aNote:\x20\x22','apps','use','projectPath','defaultApp','\x20app\x20add\x20','2aApZaE','Usage:\x20','appcode','65712quHMrC','Switch\x20the\x20default\x20app','app','Default\x20app\x20set\x20to\x20\x22','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','hasOwnProperty','105mueFQq','trim','call','1073871lCNmOS','join','keys','Use\x20`','303427aLeXyI','8397160xwHkWW','object'];a24_0x4e4f=function(){return _0x3426fc;};return a24_0x4e4f();}const a24_0x5d9934=a24_0x12fc;(function(_0x24a1ec,_0x5d2443){const _0x1ad19b=a24_0x12fc,_0x50743e=_0x24a1ec();while(!![]){try{const _0x2d2e61=parseInt(_0x1ad19b(0xaf))/0x1*(-parseInt(_0x1ad19b(0x9f))/0x2)+-parseInt(_0x1ad19b(0xb3))/0x3+-parseInt(_0x1ad19b(0x93))/0x4*(parseInt(_0x1ad19b(0xb5))/0x5)+parseInt(_0x1ad19b(0xa2))/0x6*(-parseInt(_0x1ad19b(0xa8))/0x7)+-parseInt(_0x1ad19b(0xb0))/0x8+parseInt(_0x1ad19b(0xab))/0x9*(-parseInt(_0x1ad19b(0xba))/0xa)+-parseInt(_0x1ad19b(0x98))/0xb*(-parseInt(_0x1ad19b(0x95))/0xc);if(_0x2d2e61===_0x5d2443)break;else _0x50743e['push'](_0x50743e['shift']());}catch(_0x3641cb){_0x50743e['push'](_0x50743e['shift']());}}}(a24_0x4e4f,0xd86be));function a24_0x12fc(_0x276904,_0x46476f){_0x276904=_0x276904-0x93;const _0x4e4f1c=a24_0x4e4f();let _0x12fcd4=_0x4e4f1c[_0x276904];return _0x12fcd4;}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(_0x3592e1){const _0x456ce0=a24_0x12fc,_0x50a575=_0x3592e1[_0x456ce0(0xb8)][0x0]?.[_0x456ce0(0xa9)]();if(!_0x50a575)throw CliErrors[_0x456ce0(0xb2)]('Missing\x20app\x20name.',_0x456ce0(0xa0)+CLI_BIN_NAME+_0x456ce0(0xb9));}async function execute(_0x5c55d5){const _0x4c577d=a24_0x12fc,_0x25ef80=_0x5c55d5[_0x4c577d(0xb8)][0x0]?.[_0x4c577d(0xa9)]();if(!_0x25ef80)throw CliErrors[_0x4c577d(0xb2)](_0x4c577d(0x97),_0x4c577d(0xa0)+CLI_BIN_NAME+_0x4c577d(0xb9));const _0x53d49b=_0x5c55d5[_0x4c577d(0xb6)](_0x4c577d(0x96)),{config:_0x3b834b,layers:_0x5500dc}=readRawConfigWithLayers(),_0xd7946e=_0x3b834b['apps']??{},_0x3ec283=_0x5500dc[_0x4c577d(0xb7)]['apps']&&typeof _0x5500dc[_0x4c577d(0xb7)]['apps']==='object'?_0x5500dc[_0x4c577d(0xb7)][_0x4c577d(0x9a)]:{},_0x527fe6={..._0x3ec283,..._0xd7946e};if(!_0x527fe6[_0x25ef80]){const _0x4ca3d6=Object[_0x4c577d(0xad)](_0x527fe6),_0x3e8e90=_0x4ca3d6['length']===0x0?_0x4c577d(0xae)+CLI_BIN_NAME+_0x4c577d(0x9e)+_0x25ef80+_0x4c577d(0x94):'Available:\x20'+_0x4ca3d6[_0x4c577d(0xac)](',\x20');throw CliErrors['validation'](_0x4c577d(0xbb)+_0x25ef80+'\x22\x20not\x20found.',_0x3e8e90);}let _0x74022e,_0x1fb31f='';if(_0x53d49b)_0x74022e={'global':!![]};else{const _0x4913b0=isInProject()&&!!_0x5500dc[_0x4c577d(0x9c)];_0x74022e={'global':!_0x4913b0};}const _0x5eb849=readConfig(_0x74022e);_0x5eb849[_0x4c577d(0x9d)]=_0x25ef80;if(!_0x74022e[_0x4c577d(0x96)]){const _0x56c488=_0x5eb849[_0x4c577d(0x9a)]&&typeof _0x5eb849['apps']===_0x4c577d(0xb1)?_0x5eb849[_0x4c577d(0x9a)]:{};!Object['prototype'][_0x4c577d(0xa7)][_0x4c577d(0xaa)](_0x56c488,_0x25ef80)&&(_0x5eb849[_0x4c577d(0x9a)]={..._0x56c488,[_0x25ef80]:_0x527fe6[_0x25ef80]},_0x1fb31f=_0x4c577d(0x99)+_0x25ef80+_0x4c577d(0xa6));}return writeConfig(_0x5eb849,_0x74022e),{'ok':!![],'message':_0x4c577d(0xa5)+_0x25ef80+'\x22\x20(appcode:\x20'+_0x527fe6[_0x25ef80][_0x4c577d(0xa1)]+')'+scopeLabel(_0x74022e)+_0x1fb31f};}export const appUseDefinition={'service':a24_0x5d9934(0xa4),'command':a24_0x5d9934(0x9b),'description':a24_0x5d9934(0xa3),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':'global','type':a24_0x5d9934(0xb4),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x4e7d25=a24_0x364d;function a24_0x364d(_0x41ae03,_0x549bb3){_0x41ae03=_0x41ae03-0x122;const _0xfe29bd=a24_0xfe29();let _0x364d17=_0xfe29bd[_0x41ae03];return _0x364d17;}(function(_0x25e7c6,_0x498db5){const _0x30f4a3=a24_0x364d,_0x10a1f4=_0x25e7c6();while(!![]){try{const _0x43b954=-parseInt(_0x30f4a3(0x142))/0x1+-parseInt(_0x30f4a3(0x141))/0x2+-parseInt(_0x30f4a3(0x12c))/0x3*(-parseInt(_0x30f4a3(0x124))/0x4)+parseInt(_0x30f4a3(0x138))/0x5+parseInt(_0x30f4a3(0x122))/0x6*(parseInt(_0x30f4a3(0x131))/0x7)+-parseInt(_0x30f4a3(0x143))/0x8*(-parseInt(_0x30f4a3(0x140))/0x9)+parseInt(_0x30f4a3(0x128))/0xa;if(_0x43b954===_0x498db5)break;else _0x10a1f4['push'](_0x10a1f4['shift']());}catch(_0x1cf6bc){_0x10a1f4['push'](_0x10a1f4['shift']());}}}(a24_0xfe29,0x5f276));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(_0x1d4deb){const _0x69b0e5=a24_0x364d,_0x1362f7=_0x1d4deb[_0x69b0e5(0x12f)][0x0]?.[_0x69b0e5(0x136)]();if(!_0x1362f7)throw CliErrors[_0x69b0e5(0x13f)]('Missing\x20app\x20name.',_0x69b0e5(0x129)+CLI_BIN_NAME+_0x69b0e5(0x13a));}async function execute(_0x243af8){const _0x2fdbb3=a24_0x364d,_0x46aef8=_0x243af8[_0x2fdbb3(0x12f)][0x0]?.[_0x2fdbb3(0x136)]();if(!_0x46aef8)throw CliErrors[_0x2fdbb3(0x13f)](_0x2fdbb3(0x12e),_0x2fdbb3(0x129)+CLI_BIN_NAME+_0x2fdbb3(0x13a));const _0x3354a0=_0x243af8['bool']('global'),{config:_0x19700c,layers:_0x5d2663}=readRawConfigWithLayers(),_0x489326=_0x19700c[_0x2fdbb3(0x13c)]??{},_0x2b2e20=_0x5d2663['globalConfig'][_0x2fdbb3(0x13c)]&&typeof _0x5d2663[_0x2fdbb3(0x132)][_0x2fdbb3(0x13c)]===_0x2fdbb3(0x12d)?_0x5d2663[_0x2fdbb3(0x132)][_0x2fdbb3(0x13c)]:{},_0x258455={..._0x2b2e20,..._0x489326};if(!_0x258455[_0x46aef8]){const _0x4746e1=Object['keys'](_0x258455),_0x15d4df=_0x4746e1[_0x2fdbb3(0x127)]===0x0?'Use\x20`'+CLI_BIN_NAME+_0x2fdbb3(0x130)+_0x46aef8+_0x2fdbb3(0x12a):'Available:\x20'+_0x4746e1[_0x2fdbb3(0x134)](',\x20');throw CliErrors['validation'](_0x2fdbb3(0x144)+_0x46aef8+_0x2fdbb3(0x137),_0x15d4df);}let _0x2366b0,_0x33f330='';if(_0x3354a0)_0x2366b0={'global':!![]};else{const _0xe9ca7=isInProject()&&!!_0x5d2663['projectPath'];_0x2366b0={'global':!_0xe9ca7};}const _0x546f99=readConfig(_0x2366b0);_0x546f99['defaultApp']=_0x46aef8;if(!_0x2366b0[_0x2fdbb3(0x145)]){const _0x267e61=_0x546f99[_0x2fdbb3(0x13c)]&&typeof _0x546f99[_0x2fdbb3(0x13c)]===_0x2fdbb3(0x12d)?_0x546f99[_0x2fdbb3(0x13c)]:{};!Object[_0x2fdbb3(0x13d)][_0x2fdbb3(0x133)][_0x2fdbb3(0x12b)](_0x267e61,_0x46aef8)&&(_0x546f99['apps']={..._0x267e61,[_0x46aef8]:_0x258455[_0x46aef8]},_0x33f330=_0x2fdbb3(0x123)+_0x46aef8+_0x2fdbb3(0x13e));}return writeConfig(_0x546f99,_0x2366b0),{'ok':!![],'message':'Default\x20app\x20set\x20to\x20\x22'+_0x46aef8+_0x2fdbb3(0x139)+_0x258455[_0x46aef8]['appcode']+')'+scopeLabel(_0x2366b0)+_0x33f330};}export const appUseDefinition={'service':'app','command':'use','description':a24_0x4e7d25(0x13b),'risk':a24_0x4e7d25(0x126),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a24_0x4e7d25(0x125),'required':!![]}],'flags':[{'name':'global','type':'boolean','description':a24_0x4e7d25(0x135),'default':![]}],'validate':validateArgs,'execute':execute};function a24_0xfe29(){const _0x3e3d0e=['\x20app\x20use\x20<name>\x20[--global]','Switch\x20the\x20default\x20app','apps','prototype','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','validation','15039qnFbbJ','1281614zsQUVL','757159WYAXeZ','168WTBECz','App\x20\x22','global','2698464OZgmsV','\x0aNote:\x20\x22','1650004dpYkUI','App\x20profile\x20name\x20to\x20activate','write','length','8794770TiLhtL','Usage:\x20','\x20--appcode\x20<code>`\x20first.','call','3CKnrQh','object','Missing\x20app\x20name.','args','\x20app\x20add\x20','7awJUiT','globalConfig','hasOwnProperty','join','Use\x20global\x20config\x20scope','trim','\x22\x20not\x20found.','54515pmBytI','\x22\x20(appcode:\x20'];a24_0xfe29=function(){return _0x3e3d0e;};return a24_0xfe29();}
@@ -1 +1 @@
1
- const a25_0x27ade2=a25_0x3b61;(function(_0x4697ba,_0xd7d9ab){const _0x54c763=a25_0x3b61,_0x37099e=_0x4697ba();while(!![]){try{const _0x5e1c9f=-parseInt(_0x54c763(0x7e))/0x1*(-parseInt(_0x54c763(0x77))/0x2)+-parseInt(_0x54c763(0x6c))/0x3+-parseInt(_0x54c763(0x7a))/0x4+-parseInt(_0x54c763(0x6f))/0x5*(parseInt(_0x54c763(0x7c))/0x6)+parseInt(_0x54c763(0x80))/0x7+-parseInt(_0x54c763(0x74))/0x8*(-parseInt(_0x54c763(0x6b))/0x9)+-parseInt(_0x54c763(0x6a))/0xa*(-parseInt(_0x54c763(0x73))/0xb);if(_0x5e1c9f===_0xd7d9ab)break;else _0x37099e['push'](_0x37099e['shift']());}catch(_0x1b7363){_0x37099e['push'](_0x37099e['shift']());}}}(a25_0x416e,0x47df6));function a25_0x3b61(_0x73ad52,_0xb7641d){_0x73ad52=_0x73ad52-0x6a;const _0x416e03=a25_0x416e();let _0x3b6111=_0x416e03[_0x73ad52];return _0x3b6111;}import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x27ade2(0x71),'command':a25_0x27ade2(0x79),'description':a25_0x27ade2(0x75),'risk':a25_0x27ade2(0x6e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x27ade2(0x7d),'type':a25_0x27ade2(0x7b),'description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0x54373e){const _0x1bb278=a25_0x27ade2,{runAuthServer:_0x1361a3}=await import(_0x1bb278(0x70));return await _0x1361a3({'autoYes':_0x54373e[_0x1bb278(0x78)](_0x1bb278(0x7d)),'nonInteractive':_0x54373e[_0x1bb278(0x76)]}),{'ok':!![]};}},{'service':'auth','command':a25_0x27ade2(0x7f),'description':'Clear\x20login\x20session','risk':a25_0x27ade2(0x72),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4cc97c){const _0x42cf25=a25_0x27ade2;return existsSync(cookieFile)?(unlinkSync(cookieFile),console['log']('✓\x20Logged\x20out')):console['log'](_0x42cf25(0x6d)),{'ok':!![]};}}];function a25_0x416e(){const _0x3c5995=['4601750gLLKVi','521487mUiaiA','1213482NaJWsz','!\x20Not\x20logged\x20in','read','1317660mFjfyJ','../../auth/auth-server-ui.js','auth','write','11vXRxSH','64mddMrj','Login\x20via\x20browser','nonInteractive','6ZhXNsT','bool','login','2075612yHcdmG','boolean','6RiTvtE','yes','170531GVeREQ','logout','322049jqjRXK'];a25_0x416e=function(){return _0x3c5995;};return a25_0x416e();}
1
+ const a25_0x1ee404=a25_0x59c3;function a25_0x59c3(_0x22d3b6,_0x6d7037){_0x22d3b6=_0x22d3b6-0xf3;const _0x5963c2=a25_0x5963();let _0x59c39e=_0x5963c2[_0x22d3b6];return _0x59c39e;}(function(_0x4f0cca,_0xa65ab0){const _0xa54aa6=a25_0x59c3,_0xe9c9e9=_0x4f0cca();while(!![]){try{const _0x235c81=-parseInt(_0xa54aa6(0xfb))/0x1+parseInt(_0xa54aa6(0x102))/0x2*(parseInt(_0xa54aa6(0xf6))/0x3)+parseInt(_0xa54aa6(0x101))/0x4*(-parseInt(_0xa54aa6(0x106))/0x5)+parseInt(_0xa54aa6(0xf9))/0x6+parseInt(_0xa54aa6(0xf7))/0x7*(-parseInt(_0xa54aa6(0xf5))/0x8)+parseInt(_0xa54aa6(0xff))/0x9+parseInt(_0xa54aa6(0xfa))/0xa;if(_0x235c81===_0xa65ab0)break;else _0xe9c9e9['push'](_0xe9c9e9['shift']());}catch(_0x369ef4){_0xe9c9e9['push'](_0xe9c9e9['shift']());}}}(a25_0x5963,0xb026d));function a25_0x5963(){const _0xfffdf3=['nonInteractive','Clear\x20login\x20session','1782904ppgQZW','9jhNxAl','35WgYkGE','yes','7055796LteNBQ','897650kIZUnR','918902NOjmGR','Login\x20via\x20browser','write','logout','3406977GTgJJw','auth','4ISikcx','832534csBxRv','!\x20Not\x20logged\x20in','boolean','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','691755GtDBIQ','../../auth/auth-server-ui.js'];a25_0x5963=function(){return _0xfffdf3;};return a25_0x5963();}import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x1ee404(0x100),'command':'login','description':a25_0x1ee404(0xfc),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x1ee404(0xf8),'type':a25_0x1ee404(0x104),'description':a25_0x1ee404(0x105),'default':![]}],async 'execute'(_0x4e22d7){const _0xc15e2c=a25_0x1ee404,{runAuthServer:_0x4774f9}=await import(_0xc15e2c(0x107));return await _0x4774f9({'autoYes':_0x4e22d7['bool'](_0xc15e2c(0xf8)),'nonInteractive':_0x4e22d7[_0xc15e2c(0xf3)]}),{'ok':!![]};}},{'service':a25_0x1ee404(0x100),'command':a25_0x1ee404(0xfe),'description':a25_0x1ee404(0xf4),'risk':a25_0x1ee404(0xfd),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x257022){const _0x48e684=a25_0x1ee404;return existsSync(cookieFile)?(unlinkSync(cookieFile),console['log']('✓\x20Logged\x20out')):console['log'](_0x48e684(0x103)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a26_0x3656b6=a26_0x5550;function a26_0x5550(_0x1004b3,_0x279c58){_0x1004b3=_0x1004b3-0xfd;const _0xde2227=a26_0xde22();let _0x555026=_0xde2227[_0x1004b3];return _0x555026;}(function(_0x3b3e54,_0x5048b){const _0x47743b=a26_0x5550,_0x9775f4=_0x3b3e54();while(!![]){try{const _0x422b63=parseInt(_0x47743b(0x11f))/0x1*(-parseInt(_0x47743b(0x12b))/0x2)+-parseInt(_0x47743b(0x13f))/0x3+parseInt(_0x47743b(0x12d))/0x4*(parseInt(_0x47743b(0x149))/0x5)+-parseInt(_0x47743b(0x13a))/0x6*(-parseInt(_0x47743b(0x11c))/0x7)+parseInt(_0x47743b(0x12e))/0x8*(parseInt(_0x47743b(0x11d))/0x9)+-parseInt(_0x47743b(0x141))/0xa*(-parseInt(_0x47743b(0x125))/0xb)+parseInt(_0x47743b(0x142))/0xc*(parseInt(_0x47743b(0x116))/0xd);if(_0x422b63===_0x5048b)break;else _0x9775f4['push'](_0x9775f4['shift']());}catch(_0x3ac9d4){_0x9775f4['push'](_0x9775f4['shift']());}}}(a26_0xde22,0xc0863));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{assertDatasetSupportsLocalDevelopment,filterDbBackedDatasets}from'../../commands/dataset/capability.js';export const bffCreate={'service':a26_0x3656b6(0x129),'command':'create','description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':'write','flags':[{'name':a26_0x3656b6(0x145),'type':a26_0x3656b6(0x10d),'required':!![],'enum':[a26_0x3656b6(0x154),a26_0x3656b6(0x109),a26_0x3656b6(0x148)],'description':a26_0x3656b6(0x104)},{'name':a26_0x3656b6(0xff),'type':a26_0x3656b6(0x10d),'required':!![],'description':a26_0x3656b6(0x14d)},{'name':a26_0x3656b6(0x131),'type':'string','description':a26_0x3656b6(0x153)},{'name':'alias','type':a26_0x3656b6(0x10d),'description':a26_0x3656b6(0x150)},{'name':a26_0x3656b6(0x130),'type':a26_0x3656b6(0x10d),'description':a26_0x3656b6(0x155)},{'name':a26_0x3656b6(0x115),'type':a26_0x3656b6(0x10d),'description':a26_0x3656b6(0x12f)},{'name':a26_0x3656b6(0x146),'type':a26_0x3656b6(0x10d),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':[a26_0x3656b6(0x156),a26_0x3656b6(0x117)]}],async 'validate'(_0x2fe5fb){const _0x2d85a4=a26_0x3656b6,_0x391205=_0x2fe5fb[_0x2d85a4(0x151)](_0x2d85a4(0xff));if(!isValidBffFunctionName(_0x391205))throw CliErrors['validation']('Invalid\x20function\x20name\x20\x22'+_0x391205+_0x2d85a4(0x144));},async 'execute'(_0x21c6c6){const _0x112708=a26_0x3656b6,_0x2f6e50=loadBffProjectConfig(_0x21c6c6[_0x112708(0x143)]),_0x258f13=_0x21c6c6['str']('type'),_0x1c37f9=_0x21c6c6['str']('name'),_0xaa1d38=_0x21c6c6[_0x112708(0x151)]('description')||undefined,_0x5ae573=_0x258f13===_0x112708(0x148)?await resolveHookOptions(_0x2f6e50,_0x21c6c6):undefined,_0x25a78d=buildFilePath(_0x2f6e50,_0x258f13,_0x1c37f9,_0x5ae573);if(await fileExists(_0x25a78d))throw CliErrors['validation'](_0x112708(0x110)+_0x25a78d);await mkdir(dirname(_0x25a78d),{'recursive':!![]});const _0x4781e2=generateTemplate(_0x258f13,_0x1c37f9,_0x21c6c6[_0x112708(0x143)],_0xaa1d38,_0x5ae573);await writeFile(_0x25a78d,_0x4781e2,_0x112708(0x100));const _0x93be2c={'type':_0x258f13,'name':_0x1c37f9,'path':_0x25a78d};if(_0xaa1d38)_0x93be2c['description']=_0xaa1d38;if(_0x5ae573){if(_0x5ae573['alias'])_0x93be2c['alias']=_0x5ae573[_0x112708(0x112)];_0x93be2c[_0x112708(0x13e)]=_0x5ae573[_0x112708(0x13e)],_0x93be2c[_0x112708(0x139)]=_0x5ae573['operationType'],_0x93be2c[_0x112708(0x113)]=_0x5ae573['functionNode'];}return{'ok':!![],'data':_0x93be2c,'message':_0x112708(0x133)+_0x258f13+_0x112708(0x147)+_0x1c37f9};}};async function resolveHookOptions(_0x27e2f8,_0x238804){const _0x3835d0=a26_0x3656b6,_0x4cd834=loadAliasMap(_0x238804['apiDir'],undefined,resolveApiFilePath(_0x238804[_0x3835d0(0x12c)],_0x238804[_0x3835d0(0x143)])),_0x1d5920=_0x4cd834[_0x3835d0(0x11a)]>0x0;let _0x5d69fb,_0x18ae7c,_0x20afb0;const _0x39148e=_0x238804[_0x3835d0(0x151)](_0x3835d0(0x112)),_0x49ace0=_0x238804[_0x3835d0(0x151)](_0x3835d0(0x130));if(_0x39148e){const _0x33e085=resolveAlias(_0x238804[_0x3835d0(0x12c)],_0x39148e,undefined,resolveApiFilePath(_0x238804[_0x3835d0(0x12c)],_0x238804['appCode']));if(!_0x33e085){const _0x1c68b3=_0x1d5920?_0x3835d0(0x10f)+_0x4cd834[_0x3835d0(0x128)](_0x238470=>_0x238470[_0x3835d0(0x112)])[_0x3835d0(0x138)](',\x20'):_0x3835d0(0x135)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x106)+_0x39148e+'\x22\x20not\x20found.\x20'+_0x1c68b3);}_0x5d69fb=_0x39148e,_0x18ae7c=_0x33e085;}else{if(_0x49ace0){_0x18ae7c=_0x49ace0;const _0x424fd2=_0x4cd834['find'](_0xf98d61=>_0xf98d61[_0x3835d0(0x13e)]===_0x49ace0);_0x5d69fb=_0x424fd2?.[_0x3835d0(0x112)];}else{if(_0x238804[_0x3835d0(0x103)])throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x123));else{if(_0x1d5920){const _0x4ab268=_0x4cd834['map'](_0x255de7=>_0x255de7[_0x3835d0(0x112)]+'\x20('+_0x255de7[_0x3835d0(0xfd)]+')'),_0x200eca=await promptSelect(_0x3835d0(0x105),_0x4ab268),_0x1da8a3=_0x4cd834[_0x200eca];if(!_0x1da8a3)throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x14e));_0x5d69fb=_0x1da8a3['alias'],_0x18ae7c=_0x1da8a3['datasetCode'];}else{const _0x56b9ac=await listDatasets(_0x238804[_0x3835d0(0x143)]),_0x3c9977=filterDbBackedDatasets(_0x56b9ac);if(_0x3c9977[_0x3835d0(0x11a)]===0x0)throw CliErrors[_0x3835d0(0x10a)](_0x56b9ac[_0x3835d0(0x11a)]===0x0?_0x3835d0(0x10b):_0x3835d0(0x11b));const _0x15649c=_0x3c9977['map'](_0x10b1c4=>_0x10b1c4[_0x3835d0(0xff)]+'\x20('+_0x10b1c4[_0x3835d0(0x107)]+')'),_0x510449=await promptSelect(_0x3835d0(0x105),_0x15649c),_0xa9f62b=_0x3c9977[_0x510449];if(!_0xa9f62b)throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x14e));_0x18ae7c=_0xa9f62b[_0x3835d0(0x107)],_0x5d69fb=undefined;}}}}const _0x5c6f50=await listDatasets(_0x238804[_0x3835d0(0x143)]),_0x3cf774=_0x5c6f50[_0x3835d0(0x14b)](_0xab83ed=>_0xab83ed[_0x3835d0(0x107)]===_0x18ae7c);if(!_0x3cf774)throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x134)+_0x18ae7c+'\x22.\x20'+(_0x5d69fb?_0x3835d0(0x12a)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));assertDatasetSupportsLocalDevelopment(_0x3cf774,'BFF\x20HOOK'),_0x20afb0=_0x3cf774['id'];const _0x59de10=_0x5d69fb??_0x18ae7c,_0x46077c=await listBffDatasetOperations(_0x238804[_0x3835d0(0x143)],_0x20afb0),_0x213101=_0x46077c?Object['keys'](_0x46077c):[];if(_0x213101[_0x3835d0(0x11a)]===0x0)throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x10e)+_0x59de10+'.');let _0x17d44c;const _0x4123f9=_0x238804[_0x3835d0(0x151)](_0x3835d0(0x115));if(_0x4123f9){if(!_0x213101['includes'](_0x4123f9))throw CliErrors['validation'](_0x3835d0(0x111)+_0x4123f9+_0x3835d0(0x102)+_0x59de10+'.\x20'+(_0x3835d0(0x140)+_0x213101[_0x3835d0(0x138)](',\x20')));_0x17d44c=_0x4123f9;}else{if(_0x238804[_0x3835d0(0x103)])throw CliErrors[_0x3835d0(0x10a)]('--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x2f3a41=await promptSelect(_0x3835d0(0x132),_0x213101);_0x17d44c=_0x213101[_0x2f3a41]??_0x213101[0x0];}let _0x24d68d=normalizeHookFunctionNode(_0x238804[_0x3835d0(0x151)]('function-node'));if(!_0x24d68d){if(_0x238804['str'](_0x3835d0(0x146)))throw CliErrors[_0x3835d0(0x10a)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x238804['nonInteractive'])throw CliErrors['validation'](_0x3835d0(0x124));const _0x392b49=await promptSelect('Select\x20trigger\x20node:',[_0x3835d0(0x156),'after']);_0x24d68d=[_0x3835d0(0x156),_0x3835d0(0x117)][_0x392b49]??'before';}return{'alias':_0x5d69fb,'datasetCode':_0x18ae7c,'datasetId':_0x20afb0,'operationType':_0x17d44c,'functionNode':_0x24d68d};}function a26_0xde22(){const _0x402970=['20MuYuci','close','find','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','Function\x20name\x20(valid\x20JS\x20identifier)','Invalid\x20dataset\x20selection.','parseInt','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','str','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Script\x20description','COMMON','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','before','isInteger','tableName','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','name','utf8','scriptsRootDir','\x22\x20not\x20found\x20for\x20dataset\x20','nonInteractive','Script\x20type','Select\x20dataset:','Alias\x20\x22','code','stderr','ENDPOINT','validation','No\x20datasets\x20found\x20for\x20this\x20app.','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','string','No\x20operation\x20types\x20found\x20for\x20dataset\x20','Available\x20aliases:\x20','File\x20already\x20exists:\x20','Operation\x20type\x20\x22','alias','functionNode','stdin','operation-type','10672103KZfUpo','after','write','trim','length','No\x20DB\x20table\x20datasets\x20found\x20for\x20this\x20app.\x20METADATA\x20datasets\x20cannot\x20be\x20used\x20for\x20BFF\x20HOOK\x20development\x20because\x20the\x20workflow\x20depends\x20on\x20SQL\x20execution.','7jZAeCK','45gWAsgq','\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','1210813kXlzEV','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','\x0a\x20*\x20[脚本名称]\x20','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','11CNCzsH','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','.js','map','bff','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','2dHQGTv','apiDir','715672UyCDYL','630992kaDPTo','Operation\x20type\x20(HOOK\x20only)','datasetcode','description','Select\x20operation\x20type:','Created\x20','Dataset\x20not\x20found\x20for\x20code\x20\x22','No\x20api.ts\x20found.\x20Run\x20`','TODO:\x20add\x20script\x20description','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','join','operationType','789354qOUowi','\x0a\x20*\x20[触发节点]\x20','question','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','datasetCode','3831105TueoCa','Available:\x20','12138950pDBJvH','12fQWvRQ','appCode','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','type','function-node','\x20function:\x20','HOOK'];a26_0xde22=function(){return _0x402970;};return a26_0xde22();}async function promptSelect(_0x28da6c,_0x18b904){const _0x1ceb44=a26_0x3656b6;if(_0x18b904[_0x1ceb44(0x11a)]===0x1)return 0x0;for(const [_0x324116,_0x35281a]of _0x18b904['entries']()){process[_0x1ceb44(0x108)][_0x1ceb44(0x118)]('\x20\x20'+(_0x324116+0x1)+'.\x20'+_0x35281a+'\x0a');}const _0x16a722=createInterface({'input':process[_0x1ceb44(0x114)],'output':process[_0x1ceb44(0x108)]});while(!![]){const _0x1da22b=await new Promise(_0x56c19f=>{const _0x5660db=_0x1ceb44;_0x16a722[_0x5660db(0x13c)](_0x28da6c+'\x20',_0x56c19f);}),_0x31b3bc=Number[_0x1ceb44(0x14f)](_0x1da22b[_0x1ceb44(0x119)](),0xa);if(Number[_0x1ceb44(0x157)](_0x31b3bc)&&_0x31b3bc>=0x1&&_0x31b3bc<=_0x18b904[_0x1ceb44(0x11a)])return _0x16a722[_0x1ceb44(0x14a)](),_0x31b3bc-0x1;process[_0x1ceb44(0x108)]['write'](_0x1ceb44(0x14c)+_0x18b904[_0x1ceb44(0x11a)]+'.\x0a');}}function buildFilePath(_0x3a4f63,_0x394984,_0x201463,_0x16435a){const _0x2fb1e8=a26_0x3656b6;if(_0x394984===_0x2fb1e8(0x148)){if(!_0x16435a)throw CliErrors[_0x2fb1e8(0x10a)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x3ff5f4=_0x16435a[_0x2fb1e8(0x112)]??_0x16435a[_0x2fb1e8(0x13e)];return join(_0x3a4f63[_0x2fb1e8(0x101)],_0x2fb1e8(0x148),_0x3ff5f4,_0x16435a[_0x2fb1e8(0x139)],_0x16435a[_0x2fb1e8(0x113)],_0x201463+_0x2fb1e8(0x127));}return join(_0x3a4f63['scriptsRootDir'],_0x394984,_0x201463+_0x2fb1e8(0x127));}export function generateTemplate(_0x40ceca,_0x5b534d,_0x2f53e5,_0x233dea,_0x2a2613){const _0x4cff71=a26_0x3656b6,_0x5d8846=_0x233dea?.[_0x4cff71(0x119)]()||_0x4cff71(0x136);if(_0x40ceca===_0x4cff71(0x154))return _0x4cff71(0x152)+_0x5d8846+_0x4cff71(0x121)+_0x5b534d+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x5b534d+'.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'+_0x5b534d+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x40ceca==='ENDPOINT')return _0x4cff71(0x122)+_0x5d8846+_0x4cff71(0x137)+_0x2f53e5+'/'+_0x5b534d+_0x4cff71(0x11e)+_0x5b534d+_0x4cff71(0xfe);if(!_0x2a2613)throw CliErrors[_0x4cff71(0x10a)](_0x4cff71(0x126));return _0x4cff71(0x13d)+_0x5d8846+_0x4cff71(0x10c)+_0x2f53e5+'/'+_0x2a2613[_0x4cff71(0x13e)]+'/'+_0x2a2613[_0x4cff71(0x139)]+_0x4cff71(0x13b)+_0x2a2613[_0x4cff71(0x113)]+_0x4cff71(0x120)+_0x5b534d+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
1
+ const a26_0x7341ee=a26_0x530a;(function(_0x41e87d,_0x1e849b){const _0x569cf5=a26_0x530a,_0x296e43=_0x41e87d();while(!![]){try{const _0x16f57f=-parseInt(_0x569cf5(0x14a))/0x1+-parseInt(_0x569cf5(0x15b))/0x2*(-parseInt(_0x569cf5(0x191))/0x3)+parseInt(_0x569cf5(0x17f))/0x4*(parseInt(_0x569cf5(0x143))/0x5)+parseInt(_0x569cf5(0x16d))/0x6*(-parseInt(_0x569cf5(0x151))/0x7)+parseInt(_0x569cf5(0x14b))/0x8+parseInt(_0x569cf5(0x15c))/0x9+-parseInt(_0x569cf5(0x17a))/0xa*(parseInt(_0x569cf5(0x183))/0xb);if(_0x16f57f===_0x1e849b)break;else _0x296e43['push'](_0x296e43['shift']());}catch(_0x3fe52a){_0x296e43['push'](_0x296e43['shift']());}}}(a26_0x50ed,0x1bb5c));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';function a26_0x50ed(){const _0x31a31b=['No\x20DB\x20table\x20datasets\x20found\x20for\x20this\x20app.\x20METADATA\x20datasets\x20cannot\x20be\x20used\x20for\x20BFF\x20HOOK\x20development\x20because\x20the\x20workflow\x20depends\x20on\x20SQL\x20execution.','COMMON','6HQoVAQ','HOOK\x20requires\x20alias/operation/node\x20options.','ENDPOINT','bff','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','nonInteractive','operation-type','description','find','isInteger','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','\x20api\x20pull`\x20to\x20refresh.','datasetcode','568360ZipmBS','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','File\x20already\x20exists:\x20','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Trigger\x20node\x20(HOOK\x20only)','240028tfHZSq','Operation\x20type\x20\x22','before','validation','11SkkhJs','Select\x20operation\x20type:','after','.js','map','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','string','scriptsRootDir','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Invalid\x20dataset\x20selection.','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','write','Available:\x20','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','3czQqoG','alias','BFF\x20HOOK','10VwlTwA','Dataset\x20not\x20found\x20for\x20code\x20\x22','name','No\x20api.ts\x20found.\x20Run\x20`','stderr','datasetCode','close','203908wBFfEb','1611120LTocCl','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','\x22\x20not\x20found\x20for\x20dataset\x20','\x22.\x20','\x20function:\x20','apiDir','153671CYoFhk','appCode','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','\x22\x20not\x20found.\x20','Select\x20trigger\x20node:','includes','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','functionNode','utf8','15110SFXrvN','605142Mbraqt','str','Script\x20type','TODO:\x20add\x20script\x20description','keys','function-node','HOOK','type','code','\x0a\x20*\x20[脚本名称]\x20','Function\x20name\x20(valid\x20JS\x20identifier)','length','trim','operationType','create'];a26_0x50ed=function(){return _0x31a31b;};return a26_0x50ed();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{assertDatasetSupportsLocalDevelopment,filterDbBackedDatasets}from'../../commands/dataset/capability.js';export const bffCreate={'service':a26_0x7341ee(0x170),'command':a26_0x7341ee(0x16a),'description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':a26_0x7341ee(0x18e),'flags':[{'name':'type','type':'string','required':!![],'enum':[a26_0x7341ee(0x16c),a26_0x7341ee(0x16f),a26_0x7341ee(0x162)],'description':a26_0x7341ee(0x15e)},{'name':a26_0x7341ee(0x145),'type':a26_0x7341ee(0x189),'required':!![],'description':a26_0x7341ee(0x166)},{'name':a26_0x7341ee(0x174),'type':a26_0x7341ee(0x189),'description':'Script\x20description'},{'name':'alias','type':a26_0x7341ee(0x189),'description':'Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)'},{'name':'datasetcode','type':a26_0x7341ee(0x189),'description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':a26_0x7341ee(0x173),'type':a26_0x7341ee(0x189),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':a26_0x7341ee(0x161),'type':a26_0x7341ee(0x189),'description':a26_0x7341ee(0x17e),'enum':['before','after']}],async 'validate'(_0x2ff9e2){const _0x46e80b=a26_0x7341ee,_0xa213f3=_0x2ff9e2[_0x46e80b(0x15d)](_0x46e80b(0x145));if(!isValidBffFunctionName(_0xa213f3))throw CliErrors[_0x46e80b(0x182)]('Invalid\x20function\x20name\x20\x22'+_0xa213f3+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0x474dde){const _0x3016db=a26_0x7341ee,_0x50629f=loadBffProjectConfig(_0x474dde[_0x3016db(0x152)]),_0x48eace=_0x474dde[_0x3016db(0x15d)](_0x3016db(0x163)),_0x8e3ba9=_0x474dde[_0x3016db(0x15d)](_0x3016db(0x145)),_0x13ad39=_0x474dde[_0x3016db(0x15d)]('description')||undefined,_0x440843=_0x48eace===_0x3016db(0x162)?await resolveHookOptions(_0x50629f,_0x474dde):undefined,_0x5be9f8=buildFilePath(_0x50629f,_0x48eace,_0x8e3ba9,_0x440843);if(await fileExists(_0x5be9f8))throw CliErrors[_0x3016db(0x182)](_0x3016db(0x17c)+_0x5be9f8);await mkdir(dirname(_0x5be9f8),{'recursive':!![]});const _0x2b10bd=generateTemplate(_0x48eace,_0x8e3ba9,_0x474dde[_0x3016db(0x152)],_0x13ad39,_0x440843);await writeFile(_0x5be9f8,_0x2b10bd,_0x3016db(0x15a));const _0x3cd0af={'type':_0x48eace,'name':_0x8e3ba9,'path':_0x5be9f8};if(_0x13ad39)_0x3cd0af[_0x3016db(0x174)]=_0x13ad39;if(_0x440843){if(_0x440843[_0x3016db(0x192)])_0x3cd0af['alias']=_0x440843[_0x3016db(0x192)];_0x3cd0af[_0x3016db(0x148)]=_0x440843[_0x3016db(0x148)],_0x3cd0af[_0x3016db(0x169)]=_0x440843['operationType'],_0x3cd0af[_0x3016db(0x159)]=_0x440843[_0x3016db(0x159)];}return{'ok':!![],'data':_0x3cd0af,'message':'Created\x20'+_0x48eace+_0x3016db(0x14f)+_0x8e3ba9};}};function a26_0x530a(_0x45d6cb,_0x3b5cd6){_0x45d6cb=_0x45d6cb-0x143;const _0x50ed0a=a26_0x50ed();let _0x530a18=_0x50ed0a[_0x45d6cb];return _0x530a18;}async function resolveHookOptions(_0x597511,_0x35683d){const _0x5def5f=a26_0x7341ee,_0x1cb5ba=loadAliasMap(_0x35683d[_0x5def5f(0x150)],undefined,resolveApiFilePath(_0x35683d[_0x5def5f(0x150)],_0x35683d[_0x5def5f(0x152)])),_0x36c93f=_0x1cb5ba['length']>0x0;let _0xdb8d53,_0x1e360e,_0x57d337;const _0x5c8f35=_0x35683d['str'](_0x5def5f(0x192)),_0x31fb6a=_0x35683d[_0x5def5f(0x15d)](_0x5def5f(0x179));if(_0x5c8f35){const _0x4f6f8e=resolveAlias(_0x35683d[_0x5def5f(0x150)],_0x5c8f35,undefined,resolveApiFilePath(_0x35683d[_0x5def5f(0x150)],_0x35683d[_0x5def5f(0x152)]));if(!_0x4f6f8e){const _0x130b5b=_0x36c93f?'Available\x20aliases:\x20'+_0x1cb5ba[_0x5def5f(0x187)](_0x327a97=>_0x327a97[_0x5def5f(0x192)])['join'](',\x20'):_0x5def5f(0x146)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x5def5f(0x182)]('Alias\x20\x22'+_0x5c8f35+_0x5def5f(0x154)+_0x130b5b);}_0xdb8d53=_0x5c8f35,_0x1e360e=_0x4f6f8e;}else{if(_0x31fb6a){_0x1e360e=_0x31fb6a;const _0x2cf323=_0x1cb5ba[_0x5def5f(0x175)](_0x456187=>_0x456187['datasetCode']===_0x31fb6a);_0xdb8d53=_0x2cf323?.[_0x5def5f(0x192)];}else{if(_0x35683d['nonInteractive'])throw CliErrors[_0x5def5f(0x182)]('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x36c93f){const _0x1c0ec1=_0x1cb5ba['map'](_0x52af3a=>_0x52af3a[_0x5def5f(0x192)]+'\x20('+_0x52af3a['tableName']+')'),_0x396943=await promptSelect('Select\x20dataset:',_0x1c0ec1),_0x31add2=_0x1cb5ba[_0x396943];if(!_0x31add2)throw CliErrors[_0x5def5f(0x182)](_0x5def5f(0x18c));_0xdb8d53=_0x31add2['alias'],_0x1e360e=_0x31add2[_0x5def5f(0x148)];}else{const _0x18a8c8=await listDatasets(_0x35683d[_0x5def5f(0x152)]),_0x1c46ba=filterDbBackedDatasets(_0x18a8c8);if(_0x1c46ba[_0x5def5f(0x167)]===0x0)throw CliErrors['validation'](_0x18a8c8['length']===0x0?'No\x20datasets\x20found\x20for\x20this\x20app.':_0x5def5f(0x16b));const _0x418a29=_0x1c46ba['map'](_0x332974=>_0x332974[_0x5def5f(0x145)]+'\x20('+_0x332974[_0x5def5f(0x164)]+')'),_0x2db561=await promptSelect('Select\x20dataset:',_0x418a29),_0x2551c5=_0x1c46ba[_0x2db561];if(!_0x2551c5)throw CliErrors['validation']('Invalid\x20dataset\x20selection.');_0x1e360e=_0x2551c5[_0x5def5f(0x164)],_0xdb8d53=undefined;}}}}const _0x186d47=await listDatasets(_0x35683d[_0x5def5f(0x152)]),_0x14bac8=_0x186d47[_0x5def5f(0x175)](_0x107b9d=>_0x107b9d['code']===_0x1e360e);if(!_0x14bac8)throw CliErrors[_0x5def5f(0x182)](_0x5def5f(0x144)+_0x1e360e+_0x5def5f(0x14e)+(_0xdb8d53?_0x5def5f(0x17b)+CLI_BIN_NAME+_0x5def5f(0x178):''));assertDatasetSupportsLocalDevelopment(_0x14bac8,_0x5def5f(0x193)),_0x57d337=_0x14bac8['id'];const _0x50f177=_0xdb8d53??_0x1e360e,_0x2190a9=await listBffDatasetOperations(_0x35683d['appCode'],_0x57d337),_0x1333d6=_0x2190a9?Object[_0x5def5f(0x160)](_0x2190a9):[];if(_0x1333d6['length']===0x0)throw CliErrors['validation']('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x50f177+'.');let _0x20b1fc;const _0x425bd4=_0x35683d[_0x5def5f(0x15d)](_0x5def5f(0x173));if(_0x425bd4){if(!_0x1333d6[_0x5def5f(0x156)](_0x425bd4))throw CliErrors[_0x5def5f(0x182)](_0x5def5f(0x180)+_0x425bd4+_0x5def5f(0x14d)+_0x50f177+'.\x20'+(_0x5def5f(0x18f)+_0x1333d6['join'](',\x20')));_0x20b1fc=_0x425bd4;}else{if(_0x35683d[_0x5def5f(0x172)])throw CliErrors[_0x5def5f(0x182)]('--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x5d04dd=await promptSelect(_0x5def5f(0x184),_0x1333d6);_0x20b1fc=_0x1333d6[_0x5d04dd]??_0x1333d6[0x0];}let _0x5f4b24=normalizeHookFunctionNode(_0x35683d[_0x5def5f(0x15d)](_0x5def5f(0x161)));if(!_0x5f4b24){if(_0x35683d[_0x5def5f(0x15d)](_0x5def5f(0x161)))throw CliErrors[_0x5def5f(0x182)](_0x5def5f(0x190));if(_0x35683d[_0x5def5f(0x172)])throw CliErrors[_0x5def5f(0x182)](_0x5def5f(0x188));const _0x265bb3=await promptSelect(_0x5def5f(0x155),[_0x5def5f(0x181),_0x5def5f(0x185)]);_0x5f4b24=['before',_0x5def5f(0x185)][_0x265bb3]??'before';}return{'alias':_0xdb8d53,'datasetCode':_0x1e360e,'datasetId':_0x57d337,'operationType':_0x20b1fc,'functionNode':_0x5f4b24};}async function promptSelect(_0x31bd85,_0x326a9d){const _0x1de6ea=a26_0x7341ee;if(_0x326a9d[_0x1de6ea(0x167)]===0x1)return 0x0;for(const [_0x15795e,_0xad6f32]of _0x326a9d['entries']()){process[_0x1de6ea(0x147)][_0x1de6ea(0x18e)]('\x20\x20'+(_0x15795e+0x1)+'.\x20'+_0xad6f32+'\x0a');}const _0x141584=createInterface({'input':process['stdin'],'output':process[_0x1de6ea(0x147)]});while(!![]){const _0x41cec3=await new Promise(_0x207b41=>{_0x141584['question'](_0x31bd85+'\x20',_0x207b41);}),_0xc89bf7=Number['parseInt'](_0x41cec3[_0x1de6ea(0x168)](),0xa);if(Number[_0x1de6ea(0x176)](_0xc89bf7)&&_0xc89bf7>=0x1&&_0xc89bf7<=_0x326a9d[_0x1de6ea(0x167)])return _0x141584[_0x1de6ea(0x149)](),_0xc89bf7-0x1;process[_0x1de6ea(0x147)][_0x1de6ea(0x18e)](_0x1de6ea(0x18d)+_0x326a9d[_0x1de6ea(0x167)]+'.\x0a');}}function buildFilePath(_0x4b7abb,_0x1d0806,_0x4ab7c4,_0x260582){const _0x28b293=a26_0x7341ee;if(_0x1d0806===_0x28b293(0x162)){if(!_0x260582)throw CliErrors['validation'](_0x28b293(0x16e));const _0x3498a8=_0x260582[_0x28b293(0x192)]??_0x260582[_0x28b293(0x148)];return join(_0x4b7abb[_0x28b293(0x18a)],_0x28b293(0x162),_0x3498a8,_0x260582[_0x28b293(0x169)],_0x260582[_0x28b293(0x159)],_0x4ab7c4+_0x28b293(0x186));}return join(_0x4b7abb[_0x28b293(0x18a)],_0x1d0806,_0x4ab7c4+'.js');}export function generateTemplate(_0x35f905,_0x3c3523,_0x27997d,_0x58e021,_0x57cd32){const _0x5ada5d=a26_0x7341ee,_0x3721aa=_0x58e021?.[_0x5ada5d(0x168)]()||_0x5ada5d(0x15f);if(_0x35f905===_0x5ada5d(0x16c))return _0x5ada5d(0x17d)+_0x3721aa+_0x5ada5d(0x165)+_0x3c3523+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x3c3523+_0x5ada5d(0x14c)+_0x3c3523+_0x5ada5d(0x18b);if(_0x35f905===_0x5ada5d(0x16f))return'/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x3721aa+_0x5ada5d(0x153)+_0x27997d+'/'+_0x3c3523+_0x5ada5d(0x157)+_0x3c3523+_0x5ada5d(0x18b);if(!_0x57cd32)throw CliErrors[_0x5ada5d(0x182)](_0x5ada5d(0x177));return _0x5ada5d(0x158)+_0x3721aa+_0x5ada5d(0x171)+_0x27997d+'/'+_0x57cd32['datasetCode']+'/'+_0x57cd32[_0x5ada5d(0x169)]+'\x0a\x20*\x20[触发节点]\x20'+_0x57cd32[_0x5ada5d(0x159)]+'\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'+_0x3c3523+_0x5ada5d(0x18b);}
@@ -1 +1 @@
1
- const a27_0x2b03df=a27_0x9632;function a27_0x9632(_0x17c2ba,_0x4ae134){_0x17c2ba=_0x17c2ba-0x82;const _0x58d52a=a27_0x58d5();let _0x963261=_0x58d52a[_0x17c2ba];return _0x963261;}(function(_0xff1e27,_0x319c32){const _0x4966d1=a27_0x9632,_0x3e515b=_0xff1e27();while(!![]){try{const _0x147f00=-parseInt(_0x4966d1(0x8c))/0x1*(parseInt(_0x4966d1(0x89))/0x2)+parseInt(_0x4966d1(0xa5))/0x3+-parseInt(_0x4966d1(0xb4))/0x4*(parseInt(_0x4966d1(0x8f))/0x5)+parseInt(_0x4966d1(0x93))/0x6*(-parseInt(_0x4966d1(0xa4))/0x7)+-parseInt(_0x4966d1(0xa8))/0x8+-parseInt(_0x4966d1(0xad))/0x9+parseInt(_0x4966d1(0xab))/0xa;if(_0x147f00===_0x319c32)break;else _0x3e515b['push'](_0x3e515b['shift']());}catch(_0x5eb79c){_0x3e515b['push'](_0x3e515b['shift']());}}}(a27_0x58d5,0x8cd85));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';function a27_0x58d5(){const _0x213e31=['5470216nUzYQP','startsWith','toISOString','18098550kvRfyF','target','1033605VjHrrJ','map','delete','No\x20lock\x20entry\x20found\x20for\x20\x22','\x20\x20-\x20','scriptsRootDir','Multiple\x20functions\x20match\x20\x22','4iHNwmf','scriptsRoot','POST','validation','Deleted\x20','str','functions','lockFilePath','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','Lock\x20scope\x20for\x20app\x20\x22','549664EQBQJp','BFF\x20lock\x20file\x20not\x20found.','high-risk-write','2HgYRzl','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','Function\x20not\x20found:\x20','235715KjhEGg','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','Local\x20delete\x20not\x20settled\x20for\x20','string','5596326dgykwr','split','trashDir','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','/api/management/library/scripts/delete','replace','find','appCode','\x22\x20not\x20found\x20after\x20ensureLockScope.','projectRoot','filter','apps','includes','length','Would\x20delete\x20','bff','\x20(local\x20file\x20moved\x20to\x20trash)','7cczSQs','3285588YHmsYz','remoteId','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'];a27_0x58d5=function(){return _0x213e31;};return a27_0x58d5();}export const bffDelete={'service':a27_0x2b03df(0xa2),'command':a27_0x2b03df(0xaf),'description':a27_0x2b03df(0x96),'risk':a27_0x2b03df(0x8b),'flags':[{'name':a27_0x2b03df(0xac),'type':a27_0x2b03df(0x92),'required':!![],'description':a27_0x2b03df(0x8d)}],async 'validate'(_0x37f911){const _0x21cf81=a27_0x2b03df,_0x1de87b=loadBffProjectConfig(_0x37f911[_0x21cf81(0x9a)]),_0x459e53=await readBffLockFile(_0x1de87b[_0x21cf81(0x86)]);if(!_0x459e53)throw CliErrors[_0x21cf81(0x82)](_0x21cf81(0x90));},async 'dryRun'(_0x5edd2d){const _0x228a72=a27_0x2b03df,_0x1c38e2=loadBffProjectConfig(_0x5edd2d[_0x228a72(0x9a)]),_0x59c60f=await readBffLockFile(_0x1c38e2['lockFilePath']);if(!_0x59c60f)throw CliErrors[_0x228a72(0x82)]('BFF\x20lock\x20file\x20not\x20found.');const {appLock:_0x1678aa}=ensureLockScope(_0x59c60f,_0x5edd2d[_0x228a72(0x9a)],_0x1c38e2['scriptsRoot'],_0x228a72(0xaf)),_0x3b0a8b=_0x5edd2d[_0x228a72(0x84)]('target'),_0x5ee1da=Object['keys'](_0x1678aa[_0x228a72(0x85)]),_0x17c4e9=resolveDeleteTarget(_0x3b0a8b,_0x5ee1da),_0x1c07aa=_0x1678aa['functions'][_0x17c4e9];if(!_0x1c07aa)throw CliErrors['validation'](_0x228a72(0xb0)+_0x17c4e9+'\x22.');const _0x413b21=resolveLocalFilePathFromLockKey(_0x1c38e2,_0x17c4e9),_0x549f7a=relative(_0x1c38e2['projectRoot'],_0x413b21),_0xcf2aa1=join(_0x1c38e2[_0x228a72(0x95)],'<timestamp>',_0x549f7a);return{'method':_0x228a72(0xb6),'url':_0x228a72(0x97),'body':{'appCode':_0x5edd2d[_0x228a72(0x9a)],'target':_0x17c4e9,'remoteId':_0x1c07aa['remoteId'],'localFilePath':_0x413b21,'trashedPath':_0xcf2aa1},'description':_0x228a72(0xa1)+_0x17c4e9+_0x228a72(0x87)};},async 'execute'(_0x2ec8ac){const _0x5e48dc=a27_0x2b03df,_0x1fdf29=loadBffProjectConfig(_0x2ec8ac[_0x5e48dc(0x9a)]),_0x50834c=await readBffLockFile(_0x1fdf29['lockFilePath']);if(!_0x50834c)throw CliErrors[_0x5e48dc(0x82)](_0x5e48dc(0x8a));const {lockData:_0x386553,appLock:_0x16d143}=ensureLockScope(_0x50834c,_0x2ec8ac[_0x5e48dc(0x9a)],_0x1fdf29[_0x5e48dc(0xb5)],_0x5e48dc(0xaf)),_0x2930ad=JSON['parse'](JSON['stringify'](_0x386553)),_0x3fc1dd=_0x2930ad[_0x5e48dc(0x9e)][_0x2ec8ac[_0x5e48dc(0x9a)]];if(!_0x3fc1dd)throw new Error(_0x5e48dc(0x88)+_0x2ec8ac[_0x5e48dc(0x9a)]+_0x5e48dc(0x9b));const _0x160d9d=_0x2ec8ac[_0x5e48dc(0x84)]('target'),_0x11e350=Object['keys'](_0x3fc1dd[_0x5e48dc(0x85)]),_0x248a86=resolveDeleteTarget(_0x160d9d,_0x11e350),_0x2e0048=_0x3fc1dd[_0x5e48dc(0x85)][_0x248a86];if(!_0x2e0048)throw CliErrors[_0x5e48dc(0x82)](_0x5e48dc(0xb0)+_0x248a86+'\x22.');await deleteBffScript(_0x2e0048['remoteId']),delete _0x3fc1dd[_0x5e48dc(0x85)][_0x248a86],_0x3fc1dd['lastSync']=new Date()[_0x5e48dc(0xaa)](),await writeBffLockFile(_0x1fdf29['lockFilePath'],_0x2930ad);const _0x30ac2d=resolveLocalFilePathFromLockKey(_0x1fdf29,_0x248a86);let _0x17dccc;await fileExists(_0x30ac2d)&&(_0x17dccc=await moveToTrash(_0x1fdf29[_0x5e48dc(0x9c)],_0x1fdf29[_0x5e48dc(0x95)],_0x30ac2d),await cleanupEmptyDirectories(dirname(_0x30ac2d),_0x1fdf29[_0x5e48dc(0xb2)]));await waitForDeleteSettlement(_0x1fdf29[_0x5e48dc(0x86)],_0x2ec8ac[_0x5e48dc(0x9a)],_0x248a86,_0x30ac2d),await sleep(0x96);const _0x3e6be5={'deleted':_0x248a86,'remoteId':_0x2e0048[_0x5e48dc(0xa6)]};if(_0x17dccc)_0x3e6be5['trashedTo']=_0x17dccc;return{'ok':!![],'data':_0x3e6be5,'message':_0x5e48dc(0x83)+_0x248a86+(_0x17dccc?_0x5e48dc(0xa3):'')};}};function resolveDeleteTarget(_0x39af81,_0x2acadd){const _0x463445=a27_0x2b03df;if(_0x39af81[_0x463445(0x9f)]('/')){const _0x9e4c60=_0x2acadd[_0x463445(0x99)](_0x259951=>_0x259951===_0x39af81);if(!_0x9e4c60)throw CliErrors[_0x463445(0x82)](_0x463445(0x8e)+_0x39af81);return _0x9e4c60;}const _0xaa089a=_0x2acadd[_0x463445(0x9d)](_0xf1ea44=>_0xf1ea44[_0x463445(0x94)]('/')['at'](-0x1)===_0x39af81);if(_0xaa089a[_0x463445(0xa0)]===0x0)throw CliErrors[_0x463445(0x82)]('Function\x20not\x20found:\x20'+_0x39af81);if(_0xaa089a['length']>0x1)throw CliErrors[_0x463445(0x82)](_0x463445(0xb3)+_0x39af81+_0x463445(0xa7)+_0xaa089a[_0x463445(0xae)](_0x1efc3c=>_0x463445(0xb1)+_0x1efc3c)['join']('\x0a'));return _0xaa089a[0x0];}async function moveToTrash(_0x46d0f0,_0x44ad29,_0x508b44){const _0x37b698=a27_0x2b03df,_0x3041fe=new Date()[_0x37b698(0xaa)]()[_0x37b698(0x98)](/[:.]/g,'-'),_0x3828d7=relative(_0x46d0f0,_0x508b44),_0x3b83f9=join(_0x44ad29,_0x3041fe,_0x3828d7);return await mkdir(dirname(_0x3b83f9),{'recursive':!![]}),await rename(_0x508b44,_0x3b83f9),_0x3b83f9;}async function cleanupEmptyDirectories(_0xa517c3,_0x288408){const _0x500734=a27_0x2b03df;let _0x15465c=resolve(_0xa517c3);const _0x31c4c3=resolve(_0x288408);while(_0x15465c[_0x500734(0xa9)](''+_0x31c4c3+sep)||_0x15465c===_0x31c4c3){if(_0x15465c===_0x31c4c3)return;try{const _0x48c904=await readdir(_0x15465c);if(_0x48c904[_0x500734(0xa0)]>0x0)return;await rmdir(_0x15465c);}catch{return;}_0x15465c=dirname(_0x15465c);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x484c87,_0x5056cc,_0x540edd,_0x23561c){const _0x1793e6=a27_0x2b03df;for(let _0x45ea17=0x0;_0x45ea17<DELETE_SETTLE_RETRY_COUNT;_0x45ea17+=0x1){const _0x445256=await readBffLockFile(_0x484c87),_0x265df2=!!_0x445256?.[_0x1793e6(0x9e)]?.[_0x5056cc]?.[_0x1793e6(0x85)]?.[_0x540edd],_0x5a4b5e=await fileExists(_0x23561c);if(!_0x265df2&&!_0x5a4b5e)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x1793e6(0x91)+_0x540edd+'.');}
1
+ function a27_0x3390(){const _0x4d9742=['Lock\x20scope\x20for\x20app\x20\x22','remoteId','str','startsWith','toISOString','Multiple\x20functions\x20match\x20\x22','trashDir','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','trashedTo','Deleted\x20','Local\x20delete\x20not\x20settled\x20for\x20','string','2074ovoqMM','filter','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','POST','parse','replace','No\x20lock\x20entry\x20found\x20for\x20\x22','\x20(local\x20file\x20moved\x20to\x20trash)','7397230GPMGLk','find','target','apps','\x22\x20not\x20found\x20after\x20ensureLockScope.','lockFilePath','75605UpMFTJ','27yPjxpH','validation','96DmYevB','scriptsRoot','lastSync','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','scriptsRootDir','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','appCode','stringify','BFF\x20lock\x20file\x20not\x20found.','Function\x20not\x20found:\x20','/api/management/library/scripts/delete','join','3583864UKbEvB','bff','212LtjejW','3868612yPnvAK','length','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','delete','keys','2363193tjejYX','projectRoot','functions','high-risk-write','3610824mWOQDx','includes'];a27_0x3390=function(){return _0x4d9742;};return a27_0x3390();}const a27_0x31f6be=a27_0x4383;(function(_0x58912d,_0x36024b){const _0xacf896=a27_0x4383,_0x471394=_0x58912d();while(!![]){try{const _0x171325=parseInt(_0xacf896(0x1a4))/0x1*(-parseInt(_0xacf896(0x18c))/0x2)+parseInt(_0xacf896(0x192))/0x3+-parseInt(_0xacf896(0x18d))/0x4+parseInt(_0xacf896(0x17b))/0x5*(-parseInt(_0xacf896(0x17e))/0x6)+-parseInt(_0xacf896(0x196))/0x7+-parseInt(_0xacf896(0x18a))/0x8+parseInt(_0xacf896(0x17c))/0x9*(parseInt(_0xacf896(0x1ac))/0xa);if(_0x171325===_0x36024b)break;else _0x471394['push'](_0x471394['shift']());}catch(_0x35cfa5){_0x471394['push'](_0x471394['shift']());}}}(a27_0x3390,0x95f08));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';function a27_0x4383(_0x3afedf,_0x2fc617){_0x3afedf=_0x3afedf-0x179;const _0x3390c7=a27_0x3390();let _0x43832a=_0x3390c7[_0x3afedf];return _0x43832a;}import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x31f6be(0x18b),'command':a27_0x31f6be(0x190),'description':a27_0x31f6be(0x18f),'risk':a27_0x31f6be(0x195),'flags':[{'name':a27_0x31f6be(0x1ae),'type':a27_0x31f6be(0x1a3),'required':!![],'description':a27_0x31f6be(0x1a6)}],async 'validate'(_0x59ef11){const _0x158966=a27_0x31f6be,_0x3947b8=loadBffProjectConfig(_0x59ef11['appCode']),_0x57c10f=await readBffLockFile(_0x3947b8[_0x158966(0x17a)]);if(!_0x57c10f)throw CliErrors['validation'](_0x158966(0x183));},async 'dryRun'(_0x80c0a8){const _0x26b681=a27_0x31f6be,_0x4c03ba=loadBffProjectConfig(_0x80c0a8['appCode']),_0x24a525=await readBffLockFile(_0x4c03ba[_0x26b681(0x17a)]);if(!_0x24a525)throw CliErrors[_0x26b681(0x17d)](_0x26b681(0x186));const {appLock:_0x4fe91c}=ensureLockScope(_0x24a525,_0x80c0a8[_0x26b681(0x184)],_0x4c03ba[_0x26b681(0x17f)],_0x26b681(0x190)),_0x30af54=_0x80c0a8[_0x26b681(0x19a)](_0x26b681(0x1ae)),_0x2c8ee4=Object['keys'](_0x4fe91c[_0x26b681(0x194)]),_0x5a6ab0=resolveDeleteTarget(_0x30af54,_0x2c8ee4),_0x5dcc7d=_0x4fe91c[_0x26b681(0x194)][_0x5a6ab0];if(!_0x5dcc7d)throw CliErrors['validation']('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x5a6ab0+'\x22.');const _0x5113e6=resolveLocalFilePathFromLockKey(_0x4c03ba,_0x5a6ab0),_0x4413ed=relative(_0x4c03ba['projectRoot'],_0x5113e6),_0x303471=join(_0x4c03ba[_0x26b681(0x19e)],'<timestamp>',_0x4413ed);return{'method':_0x26b681(0x1a7),'url':_0x26b681(0x188),'body':{'appCode':_0x80c0a8[_0x26b681(0x184)],'target':_0x5a6ab0,'remoteId':_0x5dcc7d[_0x26b681(0x199)],'localFilePath':_0x5113e6,'trashedPath':_0x303471},'description':'Would\x20delete\x20'+_0x5a6ab0+_0x26b681(0x19f)};},async 'execute'(_0x27f902){const _0x331622=a27_0x31f6be,_0xae31c2=loadBffProjectConfig(_0x27f902[_0x331622(0x184)]),_0x5c9752=await readBffLockFile(_0xae31c2[_0x331622(0x17a)]);if(!_0x5c9752)throw CliErrors['validation']('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x577eac,appLock:_0x41362d}=ensureLockScope(_0x5c9752,_0x27f902['appCode'],_0xae31c2[_0x331622(0x17f)],_0x331622(0x190)),_0x1afaba=JSON[_0x331622(0x1a8)](JSON[_0x331622(0x185)](_0x577eac)),_0x12305e=_0x1afaba[_0x331622(0x1af)][_0x27f902[_0x331622(0x184)]];if(!_0x12305e)throw new Error(_0x331622(0x198)+_0x27f902[_0x331622(0x184)]+_0x331622(0x179));const _0x37b41c=_0x27f902['str'](_0x331622(0x1ae)),_0x5b5605=Object[_0x331622(0x191)](_0x12305e[_0x331622(0x194)]),_0x2762ff=resolveDeleteTarget(_0x37b41c,_0x5b5605),_0x37ffa0=_0x12305e['functions'][_0x2762ff];if(!_0x37ffa0)throw CliErrors['validation'](_0x331622(0x1aa)+_0x2762ff+'\x22.');await deleteBffScript(_0x37ffa0[_0x331622(0x199)]),delete _0x12305e['functions'][_0x2762ff],_0x12305e[_0x331622(0x180)]=new Date()[_0x331622(0x19c)](),await writeBffLockFile(_0xae31c2['lockFilePath'],_0x1afaba);const _0x2511d0=resolveLocalFilePathFromLockKey(_0xae31c2,_0x2762ff);let _0x121ad9;await fileExists(_0x2511d0)&&(_0x121ad9=await moveToTrash(_0xae31c2[_0x331622(0x193)],_0xae31c2['trashDir'],_0x2511d0),await cleanupEmptyDirectories(dirname(_0x2511d0),_0xae31c2[_0x331622(0x182)]));await waitForDeleteSettlement(_0xae31c2['lockFilePath'],_0x27f902[_0x331622(0x184)],_0x2762ff,_0x2511d0),await sleep(0x96);const _0x63c275={'deleted':_0x2762ff,'remoteId':_0x37ffa0[_0x331622(0x199)]};if(_0x121ad9)_0x63c275[_0x331622(0x1a0)]=_0x121ad9;return{'ok':!![],'data':_0x63c275,'message':_0x331622(0x1a1)+_0x2762ff+(_0x121ad9?_0x331622(0x1ab):'')};}};function resolveDeleteTarget(_0x73c415,_0x487d4a){const _0x2010b7=a27_0x31f6be;if(_0x73c415[_0x2010b7(0x197)]('/')){const _0x570eac=_0x487d4a[_0x2010b7(0x1ad)](_0x2a9b52=>_0x2a9b52===_0x73c415);if(!_0x570eac)throw CliErrors[_0x2010b7(0x17d)](_0x2010b7(0x187)+_0x73c415);return _0x570eac;}const _0x15cc9c=_0x487d4a[_0x2010b7(0x1a5)](_0x9ab07=>_0x9ab07['split']('/')['at'](-0x1)===_0x73c415);if(_0x15cc9c[_0x2010b7(0x18e)]===0x0)throw CliErrors[_0x2010b7(0x17d)](_0x2010b7(0x187)+_0x73c415);if(_0x15cc9c[_0x2010b7(0x18e)]>0x1)throw CliErrors[_0x2010b7(0x17d)](_0x2010b7(0x19d)+_0x73c415+_0x2010b7(0x181)+_0x15cc9c['map'](_0x131b3e=>'\x20\x20-\x20'+_0x131b3e)[_0x2010b7(0x189)]('\x0a'));return _0x15cc9c[0x0];}async function moveToTrash(_0x1ec407,_0x1c6344,_0x823c6c){const _0x540b08=a27_0x31f6be,_0x97cde7=new Date()[_0x540b08(0x19c)]()[_0x540b08(0x1a9)](/[:.]/g,'-'),_0x114aae=relative(_0x1ec407,_0x823c6c),_0x2d1bc0=join(_0x1c6344,_0x97cde7,_0x114aae);return await mkdir(dirname(_0x2d1bc0),{'recursive':!![]}),await rename(_0x823c6c,_0x2d1bc0),_0x2d1bc0;}async function cleanupEmptyDirectories(_0x531521,_0x4f7ec2){const _0x47a84b=a27_0x31f6be;let _0x3a9ba5=resolve(_0x531521);const _0x164608=resolve(_0x4f7ec2);while(_0x3a9ba5[_0x47a84b(0x19b)](''+_0x164608+sep)||_0x3a9ba5===_0x164608){if(_0x3a9ba5===_0x164608)return;try{const _0x12aa1e=await readdir(_0x3a9ba5);if(_0x12aa1e[_0x47a84b(0x18e)]>0x0)return;await rmdir(_0x3a9ba5);}catch{return;}_0x3a9ba5=dirname(_0x3a9ba5);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x49bdb4,_0x136525,_0x97770d,_0x1ebea2){const _0x571730=a27_0x31f6be;for(let _0x146384=0x0;_0x146384<DELETE_SETTLE_RETRY_COUNT;_0x146384+=0x1){const _0x282d9d=await readBffLockFile(_0x49bdb4),_0x2b2d4a=!!_0x282d9d?.['apps']?.[_0x136525]?.[_0x571730(0x194)]?.[_0x97770d],_0x39e685=await fileExists(_0x1ebea2);if(!_0x2b2d4a&&!_0x39e685)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x571730(0x1a2)+_0x97770d+'.');}
@@ -1 +1 @@
1
- const a28_0x38e328=a28_0x107b;(function(_0x3a8f4a,_0x54dd2d){const _0x2ce650=a28_0x107b,_0x235106=_0x3a8f4a();while(!![]){try{const _0x4fd571=parseInt(_0x2ce650(0x127))/0x1+-parseInt(_0x2ce650(0x119))/0x2*(-parseInt(_0x2ce650(0x11e))/0x3)+parseInt(_0x2ce650(0x126))/0x4*(parseInt(_0x2ce650(0x123))/0x5)+parseInt(_0x2ce650(0x11c))/0x6+-parseInt(_0x2ce650(0x12b))/0x7+-parseInt(_0x2ce650(0x11f))/0x8+-parseInt(_0x2ce650(0x120))/0x9;if(_0x4fd571===_0x54dd2d)break;else _0x235106['push'](_0x235106['shift']());}catch(_0x1a429d){_0x235106['push'](_0x235106['shift']());}}}(a28_0x3c43,0xa0fc1));function a28_0x107b(_0x472419,_0x1c01ff){_0x472419=_0x472419-0x116;const _0x3c4387=a28_0x3c43();let _0x107b65=_0x3c4387[_0x472419];return _0x107b65;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x38e328(0x12a),'command':a28_0x38e328(0x116),'description':a28_0x38e328(0x117),'risk':a28_0x38e328(0x11d),'flags':[{'name':'id','type':a28_0x38e328(0x11a),'required':!![],'description':'Script\x20ID'},{'name':a28_0x38e328(0x125),'type':a28_0x38e328(0x121),'description':'Return\x20full\x20raw\x20script\x20object'}],async 'execute'(_0x49b5ae){const _0x453ee4=a28_0x38e328,_0x2be5de=await getBffScriptInfo(_0x49b5ae[_0x453ee4(0x118)]('id')),_0x519578=_0x49b5ae['bool'](_0x453ee4(0x125));if(_0x519578)return{'ok':!![],'data':_0x2be5de};return{'ok':!![],'data':{'id':_0x2be5de['id'],'appCode':_0x2be5de['appCode'],'scriptType':_0x2be5de[_0x453ee4(0x12c)],'description':_0x2be5de[_0x453ee4(0x11b)]||_0x453ee4(0x122),'createdTime':_0x2be5de[_0x453ee4(0x129)]??'','updatedTime':_0x2be5de[_0x453ee4(0x124)]??'','scriptContent':_0x2be5de[_0x453ee4(0x128)]??''}};}};function a28_0x3c43(){const _0x27851a=['4921412sTaYui','218564cPLwxb','scriptContent','createdTime','bff','1440999GElkLj','scriptType','detail','Get\x20BFF\x20script\x20details\x20by\x20ID','num','2vnJBNw','number','description','7303302ntWwaq','read','3086871dHBpFA','5164248Dvcjgy','19658790VbcyaU','boolean','(none)','5zqyMOP','updatedTime','verbose'];a28_0x3c43=function(){return _0x27851a;};return a28_0x3c43();}
1
+ const a28_0x30787f=a28_0x2c2d;(function(_0x4d6a7b,_0x5d570a){const _0x1ba49b=a28_0x2c2d,_0x8ae1aa=_0x4d6a7b();while(!![]){try{const _0x1178eb=parseInt(_0x1ba49b(0x1a2))/0x1+-parseInt(_0x1ba49b(0x199))/0x2*(parseInt(_0x1ba49b(0x197))/0x3)+parseInt(_0x1ba49b(0x18b))/0x4+-parseInt(_0x1ba49b(0x193))/0x5*(parseInt(_0x1ba49b(0x19c))/0x6)+parseInt(_0x1ba49b(0x195))/0x7*(parseInt(_0x1ba49b(0x198))/0x8)+-parseInt(_0x1ba49b(0x1a1))/0x9*(-parseInt(_0x1ba49b(0x1a3))/0xa)+-parseInt(_0x1ba49b(0x1a0))/0xb;if(_0x1178eb===_0x5d570a)break;else _0x8ae1aa['push'](_0x8ae1aa['shift']());}catch(_0x11ac0b){_0x8ae1aa['push'](_0x8ae1aa['shift']());}}}(a28_0x3c75,0x8a7e2));import{getBffScriptInfo}from'../../core/api-client.js';function a28_0x2c2d(_0x212795,_0x47cbf5){_0x212795=_0x212795-0x18b;const _0x3c7596=a28_0x3c75();let _0x2c2dcb=_0x3c7596[_0x212795];return _0x2c2dcb;}function a28_0x3c75(){const _0x1af0ae=['(none)','16990721MlVgkr','82107yejyBf','1116766RWLDDQ','1090lJhHRS','Return\x20full\x20raw\x20script\x20object','Script\x20ID','1190612jrLSFH','updatedTime','createdTime','description','appCode','boolean','num','verbose','1754385ebvfng','scriptType','7iCkxvj','number','3RJsCXr','8906152KCepWo','715174QOgGBz','Get\x20BFF\x20script\x20details\x20by\x20ID','scriptContent','18ofiKCn','detail','bff'];a28_0x3c75=function(){return _0x1af0ae;};return a28_0x3c75();}export const bffDetail={'service':a28_0x30787f(0x19e),'command':a28_0x30787f(0x19d),'description':a28_0x30787f(0x19a),'risk':'read','flags':[{'name':'id','type':a28_0x30787f(0x196),'required':!![],'description':a28_0x30787f(0x1a5)},{'name':a28_0x30787f(0x192),'type':a28_0x30787f(0x190),'description':a28_0x30787f(0x1a4)}],async 'execute'(_0x357421){const _0x23896b=a28_0x30787f,_0x191a6b=await getBffScriptInfo(_0x357421[_0x23896b(0x191)]('id')),_0x452ee2=_0x357421['bool'](_0x23896b(0x192));if(_0x452ee2)return{'ok':!![],'data':_0x191a6b};return{'ok':!![],'data':{'id':_0x191a6b['id'],'appCode':_0x191a6b[_0x23896b(0x18f)],'scriptType':_0x191a6b[_0x23896b(0x194)],'description':_0x191a6b[_0x23896b(0x18e)]||_0x23896b(0x19f),'createdTime':_0x191a6b[_0x23896b(0x18d)]??'','updatedTime':_0x191a6b[_0x23896b(0x18c)]??'','scriptContent':_0x191a6b[_0x23896b(0x19b)]??''}};}};
@@ -1 +1 @@
1
- function a29_0x29f7(_0x27ec0b,_0x448f3d){_0x27ec0b=_0x27ec0b-0x83;const _0x54229b=a29_0x5422();let _0x29f727=_0x54229b[_0x27ec0b];return _0x29f727;}(function(_0x20c6d8,_0x31ea12){const _0x2a73f4=a29_0x29f7,_0x389255=_0x20c6d8();while(!![]){try{const _0x592026=-parseInt(_0x2a73f4(0x8e))/0x1*(-parseInt(_0x2a73f4(0x86))/0x2)+parseInt(_0x2a73f4(0x84))/0x3*(-parseInt(_0x2a73f4(0x89))/0x4)+-parseInt(_0x2a73f4(0x8d))/0x5*(parseInt(_0x2a73f4(0x8a))/0x6)+parseInt(_0x2a73f4(0x83))/0x7*(-parseInt(_0x2a73f4(0x87))/0x8)+parseInt(_0x2a73f4(0x8f))/0x9*(-parseInt(_0x2a73f4(0x88))/0xa)+-parseInt(_0x2a73f4(0x85))/0xb+parseInt(_0x2a73f4(0x8c))/0xc*(parseInt(_0x2a73f4(0x8b))/0xd);if(_0x592026===_0x31ea12)break;else _0x389255['push'](_0x389255['shift']());}catch(_0x1a0e90){_0x389255['push'](_0x389255['shift']());}}}(a29_0x5422,0x4120a));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';function a29_0x5422(){const _0x563bd0=['8YXpsQp','110XDaVOQ','187380tGFJah','52308NZLmoT','13RcvGck','17608308UrNAPe','275qaQUEv','123BBlNiD','301023HvRZyf','2650249gTMZgc','3SFlmNB','3441361rXjhhQ','6262GNnGeG'];a29_0x5422=function(){return _0x563bd0;};return a29_0x5422();}import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x103b86,_0x3994cf){const _0x322666=a29_0x55b1,_0x16bfc2=_0x103b86();while(!![]){try{const _0x52a0ad=-parseInt(_0x322666(0xac))/0x1*(parseInt(_0x322666(0xae))/0x2)+parseInt(_0x322666(0xb6))/0x3*(-parseInt(_0x322666(0xad))/0x4)+parseInt(_0x322666(0xb3))/0x5*(parseInt(_0x322666(0xb4))/0x6)+parseInt(_0x322666(0xb1))/0x7+parseInt(_0x322666(0xb7))/0x8*(parseInt(_0x322666(0xb2))/0x9)+-parseInt(_0x322666(0xaf))/0xa*(parseInt(_0x322666(0xb0))/0xb)+parseInt(_0x322666(0xb5))/0xc;if(_0x52a0ad===_0x3994cf)break;else _0x16bfc2['push'](_0x16bfc2['shift']());}catch(_0x1b164e){_0x16bfc2['push'](_0x16bfc2['shift']());}}}(a29_0x44ae,0x558ee));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';function a29_0x44ae(){const _0x2acd2e=['6724YlpznN','65138vEUkFx','10xnavAK','6247417QwPPCf','911211KniVmL','9CanKuQ','30AKqWWE','12774EybnOl','16513896ltLQZZ','399myfYDC','1412272MNbmHH','17xhhPcr'];a29_0x44ae=function(){return _0x2acd2e;};return a29_0x44ae();}function a29_0x55b1(_0x3f2ded,_0x44d59c){_0x3f2ded=_0x3f2ded-0xac;const _0x44aeed=a29_0x44ae();let _0x55b19f=_0x44aeed[_0x3f2ded];return _0x55b19f;}import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- const a30_0x3098c0=a30_0x4d62;function a30_0x4ed6(){const _0x5ceefc=['bool','No\x20BFF\x20scripts\x20found.','str','List\x20BFF\x20scripts','name','402rIlTkm','33430aOOAkn','appCode','Filter\x20by\x20script\x20name','5476getaJw','map','5784571nFDOEW','(unnamed)','read','53823rwBzwu','length','ENDPOINT','3395uOcXGR','list','functionName','string','boolean','COMMON','1234029dcLLSM','Return\x20full\x20script\x20objects','verbose','84MLvFqB','type','517nufIJE','bff','7349432jAXdSu','1ChBGgo','description','2237674hzmaSK','9aYJmrb'];a30_0x4ed6=function(){return _0x5ceefc;};return a30_0x4ed6();}function a30_0x4d62(_0x49df89,_0x1e11d2){_0x49df89=_0x49df89-0xa1;const _0x4ed6cf=a30_0x4ed6();let _0x4d62ab=_0x4ed6cf[_0x49df89];return _0x4d62ab;}(function(_0xac054b,_0x13c930){const _0x381958=a30_0x4d62,_0x10124f=_0xac054b();while(!![]){try{const _0x3eb774=-parseInt(_0x381958(0xb5))/0x1*(-parseInt(_0x381958(0xb7))/0x2)+parseInt(_0x381958(0xad))/0x3+parseInt(_0x381958(0xc2))/0x4*(parseInt(_0x381958(0xa7))/0x5)+parseInt(_0x381958(0xbe))/0x6*(parseInt(_0x381958(0xa4))/0x7)+parseInt(_0x381958(0xb4))/0x8*(parseInt(_0x381958(0xb8))/0x9)+parseInt(_0x381958(0xbf))/0xa*(-parseInt(_0x381958(0xb2))/0xb)+parseInt(_0x381958(0xb0))/0xc*(-parseInt(_0x381958(0xa1))/0xd);if(_0x3eb774===_0x13c930)break;else _0x10124f['push'](_0x10124f['shift']());}catch(_0xf67db6){_0x10124f['push'](_0x10124f['shift']());}}}(a30_0x4ed6,0x97c73));import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x3098c0(0xb3),'command':a30_0x3098c0(0xa8),'description':a30_0x3098c0(0xbc),'risk':a30_0x3098c0(0xa3),'flags':[{'name':a30_0x3098c0(0xb1),'type':a30_0x3098c0(0xaa),'description':'Script\x20type\x20filter','default':'ENDPOINT','enum':[a30_0x3098c0(0xa6),a30_0x3098c0(0xac)]},{'name':a30_0x3098c0(0xbd),'type':a30_0x3098c0(0xaa),'description':a30_0x3098c0(0xc1)},{'name':a30_0x3098c0(0xaf),'type':a30_0x3098c0(0xab),'description':a30_0x3098c0(0xae)}],async 'execute'(_0x2acd5b){const _0x543066=a30_0x3098c0,_0x3a06f0=await listBffScripts(_0x2acd5b[_0x543066(0xc0)],_0x2acd5b[_0x543066(0xbb)](_0x543066(0xb1)),{'scriptName':_0x2acd5b[_0x543066(0xbb)]('name')||undefined}),_0x16980c=_0x2acd5b[_0x543066(0xb9)](_0x543066(0xaf));return{'ok':!![],'data':_0x16980c?_0x3a06f0:_0x3a06f0[_0x543066(0xc3)](_0x4cbc5a=>({'id':_0x4cbc5a['id'],'functionName':_0x4cbc5a[_0x543066(0xa9)]??'','description':_0x4cbc5a[_0x543066(0xb6)]||_0x543066(0xa2),'scriptType':_0x4cbc5a['scriptType']})),'message':_0x3a06f0[_0x543066(0xa5)]===0x0?_0x543066(0xba):undefined};}};
1
+ const a30_0x497cf1=a30_0x5a20;function a30_0x5a20(_0x5eab70,_0x19a350){_0x5eab70=_0x5eab70-0x144;const _0x53fd2e=a30_0x53fd();let _0x5a20fc=_0x53fd2e[_0x5eab70];return _0x5a20fc;}(function(_0x39e310,_0x15b014){const _0x85b3bf=a30_0x5a20,_0x24327a=_0x39e310();while(!![]){try{const _0x50c867=parseInt(_0x85b3bf(0x15e))/0x1+parseInt(_0x85b3bf(0x145))/0x2+-parseInt(_0x85b3bf(0x156))/0x3*(parseInt(_0x85b3bf(0x159))/0x4)+parseInt(_0x85b3bf(0x157))/0x5+-parseInt(_0x85b3bf(0x148))/0x6*(-parseInt(_0x85b3bf(0x154))/0x7)+parseInt(_0x85b3bf(0x15d))/0x8+-parseInt(_0x85b3bf(0x14e))/0x9*(parseInt(_0x85b3bf(0x147))/0xa);if(_0x50c867===_0x15b014)break;else _0x24327a['push'](_0x24327a['shift']());}catch(_0x490e8c){_0x24327a['push'](_0x24327a['shift']());}}}(a30_0x53fd,0x3aeac));function a30_0x53fd(){const _0x20c26d=['356264mIXkNf','Return\x20full\x20script\x20objects','string','map','1301528asyYzl','51264SwWIUd','functionName','ENDPOINT','verbose','148406JLwDHd','read','3515410tPRGmQ','1072542dMEmSa','str','type','list','Filter\x20by\x20script\x20name','(unnamed)','9pqiore','Script\x20type\x20filter','length','bff','List\x20BFF\x20scripts','No\x20BFF\x20scripts\x20found.','7AhDnAK','appCode','6hzPQkl','1520410QRwMkk','boolean'];a30_0x53fd=function(){return _0x20c26d;};return a30_0x53fd();}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x497cf1(0x151),'command':a30_0x497cf1(0x14b),'description':a30_0x497cf1(0x152),'risk':a30_0x497cf1(0x146),'flags':[{'name':a30_0x497cf1(0x14a),'type':a30_0x497cf1(0x15b),'description':a30_0x497cf1(0x14f),'default':'ENDPOINT','enum':[a30_0x497cf1(0x160),'COMMON']},{'name':'name','type':a30_0x497cf1(0x15b),'description':a30_0x497cf1(0x14c)},{'name':a30_0x497cf1(0x144),'type':a30_0x497cf1(0x158),'description':a30_0x497cf1(0x15a)}],async 'execute'(_0x3e2bf6){const _0x56c22f=a30_0x497cf1,_0x2e6fb1=await listBffScripts(_0x3e2bf6[_0x56c22f(0x155)],_0x3e2bf6['str'](_0x56c22f(0x14a)),{'scriptName':_0x3e2bf6[_0x56c22f(0x149)]('name')||undefined}),_0x4e7f2b=_0x3e2bf6['bool'](_0x56c22f(0x144));return{'ok':!![],'data':_0x4e7f2b?_0x2e6fb1:_0x2e6fb1[_0x56c22f(0x15c)](_0x13591b=>({'id':_0x13591b['id'],'functionName':_0x13591b[_0x56c22f(0x15f)]??'','description':_0x13591b['description']||_0x56c22f(0x14d),'scriptType':_0x13591b['scriptType']})),'message':_0x2e6fb1[_0x56c22f(0x150)]===0x0?_0x56c22f(0x153):undefined};}};
@@ -1 +1 @@
1
- const a31_0x2f3ca9=a31_0x5d77;function a31_0x5d77(_0x43d4b3,_0x45ae92){_0x43d4b3=_0x43d4b3-0x11b;const _0x578f4f=a31_0x578f();let _0x5d77b7=_0x578f4f[_0x43d4b3];return _0x5d77b7;}(function(_0x53f28e,_0x98649b){const _0x127e20=a31_0x5d77,_0x488f30=_0x53f28e();while(!![]){try{const _0x3a7879=parseInt(_0x127e20(0x11d))/0x1+-parseInt(_0x127e20(0x13a))/0x2+-parseInt(_0x127e20(0x145))/0x3*(parseInt(_0x127e20(0x13d))/0x4)+-parseInt(_0x127e20(0x133))/0x5+-parseInt(_0x127e20(0x13b))/0x6*(parseInt(_0x127e20(0x14a))/0x7)+parseInt(_0x127e20(0x146))/0x8*(-parseInt(_0x127e20(0x142))/0x9)+parseInt(_0x127e20(0x150))/0xa;if(_0x3a7879===_0x98649b)break;else _0x488f30['push'](_0x488f30['shift']());}catch(_0x53538b){_0x488f30['push'](_0x488f30['shift']());}}}(a31_0x578f,0x45f94));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';function a31_0x578f(){const _0x38491b=['lockKey','operationType','528865iRftXW','lockFilePath','apps','close','hash','str','conflict','1034666dehSHE','774EhAsxa','length','1017740PgEawz','alias','Remote\x20script\x20missing\x20id.','nonInteractive','type','44136plOumK','push','scriptType','3tTwiYL','608cTzoga','validation','question','boolean','18074fqlfAa','pull','string','stderr','\x20pulled,\x20','\x20remote\x20BFF\x20script(s)\x20for\x20pull','16318240rmhrvW','ENDPOINT','skipped','/api/management/library/scripts/list?appCode=','functions','all','\x22\x20not\x20found\x20after\x20ensureLockScope.','Pull\x20only\x20this\x20script\x20type','functionNode','hookLocation','includes','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','write','trim','cancelled','message','scriptsRoot','apiDir','yes','238111LkNaxq','stdin','utf8','unresolvable\x20target\x20path','map','toLowerCase','COMMON','Force\x20pull\x20cancelled.','filePath','Lock\x20scope\x20for\x20app\x20\x22','scriptContent','stringify','parse','would_pull','Would\x20inspect\x20','datasetCode','functionName','HOOK','appCode','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20'];a31_0x578f=function(){return _0x38491b;};return a31_0x578f();}import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':'bff','command':'pull','description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a31_0x2f3ca9(0x15c),'flags':[{'name':a31_0x2f3ca9(0x141),'type':a31_0x2f3ca9(0x14c),'description':a31_0x2f3ca9(0x157),'enum':[a31_0x2f3ca9(0x123),a31_0x2f3ca9(0x151),'HOOK']},{'name':'force','type':a31_0x2f3ca9(0x149),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x13b6a6){const _0x41cf7c=a31_0x2f3ca9,_0x3759a6=loadBffProjectConfig(_0x13b6a6[_0x41cf7c(0x12f)]),_0x4a4872=await readBffLockFile(_0x3759a6['lockFilePath']),{appLock:_0x55ff57}=ensureLockScope(_0x4a4872??createEmptyBffLock(),_0x13b6a6['appCode'],_0x3759a6[_0x41cf7c(0x160)],_0x41cf7c(0x14b)),_0x562de0=normalizeBffType(_0x13b6a6[_0x41cf7c(0x138)](_0x41cf7c(0x141)))??undefined,_0x426c65=buildDatasetCodeToAliasMap(_0x13b6a6[_0x41cf7c(0x11b)],_0x13b6a6[_0x41cf7c(0x12f)]),[_0x4d45ac,_0x48da11]=await Promise[_0x41cf7c(0x155)]([listBffScripts(_0x13b6a6[_0x41cf7c(0x12f)],_0x562de0),getBffScriptStatistics(_0x13b6a6['appCode'])]),_0x4f30d0=createHookLocationMap(_0x48da11),_0x337045=[];for(const _0x3b4528 of _0x4d45ac){const _0x32c7fb=resolveRemoteScriptTarget(_0x3759a6,_0x3b4528,_0x4f30d0,_0x55ff57[_0x41cf7c(0x154)],_0x426c65);if(!_0x32c7fb){_0x337045[_0x41cf7c(0x143)]({'scriptType':_0x3b4528[_0x41cf7c(0x144)],'functionName':_0x3b4528[_0x41cf7c(0x12d)]??'','status':_0x41cf7c(0x152),'reason':_0x41cf7c(0x120)});continue;}const _0x2c7256=_0x55ff57[_0x41cf7c(0x154)][_0x32c7fb[_0x41cf7c(0x131)]],_0x3e29ca=_0x3b4528['scriptContent']!=null?computeContentHash(_0x3b4528[_0x41cf7c(0x127)]):undefined,_0x4bab3c=await hasUnsyncedLocalChanges(_0x32c7fb[_0x41cf7c(0x125)],_0x2c7256,_0x3e29ca);_0x337045['push']({'lockKey':_0x32c7fb[_0x41cf7c(0x131)],'filePath':_0x32c7fb[_0x41cf7c(0x125)],'remoteId':_0x3b4528['id']??null,'status':_0x4bab3c?_0x41cf7c(0x139):_0x41cf7c(0x12a)});}return{'method':'GET','url':_0x41cf7c(0x153)+_0x13b6a6[_0x41cf7c(0x12f)]+(_0x562de0?'&type='+_0x562de0:''),'body':{'appCode':_0x13b6a6[_0x41cf7c(0x12f)],'filterType':_0x562de0??null,'files':_0x337045},'description':_0x41cf7c(0x12b)+_0x337045['length']+_0x41cf7c(0x14f)};},async 'execute'(_0x130f2e){const _0x49114a=a31_0x2f3ca9,_0x1938d5=loadBffProjectConfig(_0x130f2e[_0x49114a(0x12f)]),_0x49be81=await readBffLockFile(_0x1938d5[_0x49114a(0x134)]),{lockData:_0x5449fe,appLock:_0x23fea7}=ensureLockScope(_0x49be81??createEmptyBffLock(),_0x130f2e[_0x49114a(0x12f)],_0x1938d5[_0x49114a(0x160)],_0x49114a(0x14b)),_0x198a4e=normalizeBffType(_0x130f2e[_0x49114a(0x138)]('type'))??undefined;if(_0x130f2e['str'](_0x49114a(0x141))&&!_0x198a4e)throw CliErrors[_0x49114a(0x147)](_0x49114a(0x15b));const [_0x222ea7,_0x31f12a]=await Promise[_0x49114a(0x155)]([listBffScripts(_0x130f2e[_0x49114a(0x12f)],_0x198a4e),getBffScriptStatistics(_0x130f2e[_0x49114a(0x12f)])]);if(_0x222ea7['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20BFF\x20scripts\x20found.'};const _0x1fbe95=_0x130f2e['bool']('force');if(_0x1fbe95&&!_0x130f2e[_0x49114a(0x140)]){const _0x213433=await confirmForce();if(!_0x213433)throw CliErrors[_0x49114a(0x15e)](_0x49114a(0x124));}if(_0x1fbe95&&_0x130f2e[_0x49114a(0x140)]){}const _0x5831cd=buildDatasetCodeToAliasMap(_0x130f2e[_0x49114a(0x11b)],_0x130f2e[_0x49114a(0x12f)]),_0x516196=createHookLocationMap(_0x31f12a),_0x48cb90=JSON[_0x49114a(0x129)](JSON[_0x49114a(0x128)](_0x5449fe)),_0x361f6e=_0x130f2e[_0x49114a(0x12f)],_0x57f930=_0x48cb90[_0x49114a(0x135)][_0x361f6e];if(!_0x57f930)throw new Error(_0x49114a(0x126)+_0x361f6e+_0x49114a(0x156));const _0x1d1d1b=[],_0x43aec6=[],_0x4cce03=[];for(const _0x4983f7 of _0x222ea7){const _0x1df32e=resolveRemoteScriptTarget(_0x1938d5,_0x4983f7,_0x516196,_0x23fea7[_0x49114a(0x154)],_0x5831cd);if(!_0x1df32e){_0x43aec6[_0x49114a(0x143)]({'lockKey':_0x4983f7['scriptType']+'/'+_0x4983f7[_0x49114a(0x12d)],'reason':_0x49114a(0x120)});continue;}const _0x298437=_0x23fea7[_0x49114a(0x154)][_0x1df32e['lockKey']];try{if(!_0x4983f7['id'])throw new Error(_0x49114a(0x13f));if(_0x4983f7['scriptContent']==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x14951a=_0x4983f7[_0x49114a(0x127)],_0x4ff6cc=computeContentHash(_0x14951a);if(!_0x1fbe95){const _0x59dcf7=await hasUnsyncedLocalChanges(_0x1df32e[_0x49114a(0x125)],_0x298437,_0x4ff6cc);if(_0x59dcf7){_0x43aec6['push']({'lockKey':_0x1df32e['lockKey'],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x1df32e['filePath']),await writeFile(_0x1df32e[_0x49114a(0x125)],_0x14951a,_0x49114a(0x11f));const _0x564b2d={'hash':_0x4ff6cc,'remoteId':_0x4983f7['id'],'version':_0x4983f7['version']};_0x1df32e[_0x49114a(0x141)]===_0x49114a(0x12e)&&_0x1df32e[_0x49114a(0x159)]&&(_0x564b2d[_0x49114a(0x13e)]=_0x1df32e[_0x49114a(0x159)][_0x49114a(0x13e)],_0x564b2d['datasetCode']=_0x1df32e['hookLocation']['datasetCode'],_0x564b2d['operationType']=_0x1df32e[_0x49114a(0x159)][_0x49114a(0x132)],_0x564b2d[_0x49114a(0x158)]=_0x1df32e[_0x49114a(0x159)]['functionNode']),_0x57f930[_0x49114a(0x154)][_0x1df32e['lockKey']]=_0x564b2d,_0x1d1d1b['push']({'lockKey':_0x1df32e['lockKey'],'remoteId':_0x4983f7['id']});}catch(_0x51a204){_0x4cce03[_0x49114a(0x143)]({'lockKey':_0x1df32e[_0x49114a(0x131)],'error':_0x51a204 instanceof Error?_0x51a204[_0x49114a(0x15f)]:String(_0x51a204)});}}return _0x57f930['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x1938d5['lockFilePath'],_0x48cb90),{'ok':_0x4cce03[_0x49114a(0x13c)]===0x0,'data':{'pulled':_0x1d1d1b,'skipped':_0x43aec6,'failed':_0x4cce03},'message':'Pull\x20complete:\x20'+_0x1d1d1b[_0x49114a(0x13c)]+_0x49114a(0x14e)+_0x43aec6[_0x49114a(0x13c)]+'\x20skipped,\x20'+_0x4cce03[_0x49114a(0x13c)]+'\x20failed'};}};async function hasUnsyncedLocalChanges(_0x2c9e15,_0xb18633,_0x46ece5){const _0x3ec4a3=a31_0x2f3ca9;if(!await fileExists(_0x2c9e15))return![];const _0x16081e=await computeFileHash(_0x2c9e15);if(!_0xb18633)return _0x46ece5?_0x16081e!==_0x46ece5:!![];return _0x16081e!==_0xb18633[_0x3ec4a3(0x137)];}function buildDatasetCodeToAliasMap(_0x34a3ed,_0x387fd2){const _0x407345=a31_0x2f3ca9,_0x17d9c6=loadAliasMap(_0x34a3ed,undefined,resolveApiFilePath(_0x34a3ed,_0x387fd2));return new Map(_0x17d9c6[_0x407345(0x121)](_0x4ebd59=>[_0x4ebd59[_0x407345(0x12c)],_0x4ebd59[_0x407345(0x13e)]]));}async function confirmForce(){const _0x257123=a31_0x2f3ca9,_0x5f55e2=createInterface({'input':process[_0x257123(0x11e)],'output':process[_0x257123(0x14d)]}),_0x4bc784=await new Promise(_0x207aab=>{const _0x294a60=_0x257123;_0x5f55e2[_0x294a60(0x148)](_0x294a60(0x130),_0x207aab);});return _0x5f55e2[_0x257123(0x136)](),['y',_0x257123(0x11c)][_0x257123(0x15a)](_0x4bc784[_0x257123(0x15d)]()[_0x257123(0x122)]());}
1
+ const a31_0x4f64ba=a31_0x23e7;(function(_0x3145c9,_0xdf81ac){const _0x3a6d9c=a31_0x23e7,_0x3ba2ca=_0x3145c9();while(!![]){try{const _0x2df14d=-parseInt(_0x3a6d9c(0xdf))/0x1*(-parseInt(_0x3a6d9c(0xb8))/0x2)+-parseInt(_0x3a6d9c(0xf2))/0x3*(-parseInt(_0x3a6d9c(0xb4))/0x4)+parseInt(_0x3a6d9c(0xf1))/0x5*(-parseInt(_0x3a6d9c(0xc0))/0x6)+-parseInt(_0x3a6d9c(0xde))/0x7*(parseInt(_0x3a6d9c(0xac))/0x8)+parseInt(_0x3a6d9c(0xd0))/0x9*(parseInt(_0x3a6d9c(0xb0))/0xa)+parseInt(_0x3a6d9c(0xda))/0xb*(parseInt(_0x3a6d9c(0xbd))/0xc)+-parseInt(_0x3a6d9c(0xe1))/0xd;if(_0x2df14d===_0xdf81ac)break;else _0x3ba2ca['push'](_0x3ba2ca['shift']());}catch(_0x43c53d){_0x3ba2ca['push'](_0x3ba2ca['shift']());}}}(a31_0x2973,0xce3fe));import{createInterface}from'node:readline';function a31_0x2973(){const _0x564845=['filePath','ENDPOINT','map','8982XfNXeL','apiDir','Remote\x20script\x20missing\x20id.','scriptsRoot','question','stderr','all','lockKey','cancelled','boolean','47256WmuHWG','push','lastSync','functions','35tgPIvt','1185WUTXgK','hookLocation','3281278ayjNbe','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','stdin','alias','unresolvable\x20target\x20path','Lock\x20scope\x20for\x20app\x20\x22','str','datasetCode','scriptType','trim','bff','appCode','message','HOOK','/api/management/library/scripts/list?appCode=','functionNode','15NYdkBa','9Ljmivh','skipped','force','\x20pulled,\x20','\x22\x20not\x20found\x20after\x20ensureLockScope.','length','Pull\x20complete:\x20','1792496vvTDNi','validation','\x20skipped,\x20','bool','4640xBduhd','scriptContent','COMMON','GET','1447668YMMnHi','Force\x20pull\x20cancelled.','string','nonInteractive','976eNMAqE','apps','utf8','version','hash','852JMpFeF','operationType','\x20remote\x20BFF\x20script(s)\x20for\x20pull','429210LaaaWC','lockFilePath','stringify','type','write','Pull\x20only\x20this\x20script\x20type','toLowerCase','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','parse','pull','includes','close','functionName'];a31_0x2973=function(){return _0x564845;};return a31_0x2973();}function a31_0x23e7(_0x2114b1,_0x3ccccc){_0x2114b1=_0x2114b1-0xa7;const _0x2973a5=a31_0x2973();let _0x23e7fd=_0x2973a5[_0x2114b1];return _0x23e7fd;}import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0x4f64ba(0xeb),'command':a31_0x4f64ba(0xc9),'description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a31_0x4f64ba(0xc4),'flags':[{'name':a31_0x4f64ba(0xc3),'type':a31_0x4f64ba(0xb6),'description':a31_0x4f64ba(0xc5),'enum':[a31_0x4f64ba(0xb2),a31_0x4f64ba(0xce),a31_0x4f64ba(0xee)]},{'name':a31_0x4f64ba(0xa7),'type':a31_0x4f64ba(0xd9),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x10d249){const _0x503cfe=a31_0x4f64ba,_0x2b1082=loadBffProjectConfig(_0x10d249[_0x503cfe(0xec)]),_0x5052d7=await readBffLockFile(_0x2b1082[_0x503cfe(0xc1)]),{appLock:_0xcb6a55}=ensureLockScope(_0x5052d7??createEmptyBffLock(),_0x10d249[_0x503cfe(0xec)],_0x2b1082[_0x503cfe(0xd3)],_0x503cfe(0xc9)),_0x63258b=normalizeBffType(_0x10d249[_0x503cfe(0xe7)](_0x503cfe(0xc3)))??undefined,_0x46a560=buildDatasetCodeToAliasMap(_0x10d249[_0x503cfe(0xd1)],_0x10d249[_0x503cfe(0xec)]),[_0x51af2c,_0x252ac6]=await Promise[_0x503cfe(0xd6)]([listBffScripts(_0x10d249[_0x503cfe(0xec)],_0x63258b),getBffScriptStatistics(_0x10d249['appCode'])]),_0x3159f5=createHookLocationMap(_0x252ac6),_0x56cffb=[];for(const _0x72242 of _0x51af2c){const _0x1e1506=resolveRemoteScriptTarget(_0x2b1082,_0x72242,_0x3159f5,_0xcb6a55[_0x503cfe(0xdd)],_0x46a560);if(!_0x1e1506){_0x56cffb[_0x503cfe(0xdb)]({'scriptType':_0x72242[_0x503cfe(0xe9)],'functionName':_0x72242[_0x503cfe(0xcc)]??'','status':_0x503cfe(0xf3),'reason':'unresolvable\x20target\x20path'});continue;}const _0x1b97c6=_0xcb6a55[_0x503cfe(0xdd)][_0x1e1506['lockKey']],_0x56a86d=_0x72242[_0x503cfe(0xb1)]!=null?computeContentHash(_0x72242['scriptContent']):undefined,_0x28ce99=await hasUnsyncedLocalChanges(_0x1e1506[_0x503cfe(0xcd)],_0x1b97c6,_0x56a86d);_0x56cffb['push']({'lockKey':_0x1e1506[_0x503cfe(0xd7)],'filePath':_0x1e1506['filePath'],'remoteId':_0x72242['id']??null,'status':_0x28ce99?'conflict':'would_pull'});}return{'method':_0x503cfe(0xb3),'url':_0x503cfe(0xef)+_0x10d249[_0x503cfe(0xec)]+(_0x63258b?'&type='+_0x63258b:''),'body':{'appCode':_0x10d249[_0x503cfe(0xec)],'filterType':_0x63258b??null,'files':_0x56cffb},'description':'Would\x20inspect\x20'+_0x56cffb[_0x503cfe(0xaa)]+_0x503cfe(0xbf)};},async 'execute'(_0x4f8ecf){const _0x4a44ef=a31_0x4f64ba,_0x565b13=loadBffProjectConfig(_0x4f8ecf[_0x4a44ef(0xec)]),_0x361ada=await readBffLockFile(_0x565b13[_0x4a44ef(0xc1)]),{lockData:_0x439dea,appLock:_0xef2e29}=ensureLockScope(_0x361ada??createEmptyBffLock(),_0x4f8ecf[_0x4a44ef(0xec)],_0x565b13[_0x4a44ef(0xd3)],'pull'),_0x29aea8=normalizeBffType(_0x4f8ecf[_0x4a44ef(0xe7)](_0x4a44ef(0xc3)))??undefined;if(_0x4f8ecf['str'](_0x4a44ef(0xc3))&&!_0x29aea8)throw CliErrors[_0x4a44ef(0xad)](_0x4a44ef(0xc7));const [_0x100b7b,_0x57a1c5]=await Promise[_0x4a44ef(0xd6)]([listBffScripts(_0x4f8ecf[_0x4a44ef(0xec)],_0x29aea8),getBffScriptStatistics(_0x4f8ecf[_0x4a44ef(0xec)])]);if(_0x100b7b[_0x4a44ef(0xaa)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20BFF\x20scripts\x20found.'};const _0x214473=_0x4f8ecf[_0x4a44ef(0xaf)]('force');if(_0x214473&&!_0x4f8ecf[_0x4a44ef(0xb7)]){const _0x6611f4=await confirmForce();if(!_0x6611f4)throw CliErrors[_0x4a44ef(0xd8)](_0x4a44ef(0xb5));}if(_0x214473&&_0x4f8ecf[_0x4a44ef(0xb7)]){}const _0x57db3a=buildDatasetCodeToAliasMap(_0x4f8ecf[_0x4a44ef(0xd1)],_0x4f8ecf['appCode']),_0x3dec64=createHookLocationMap(_0x57a1c5),_0x3febbb=JSON[_0x4a44ef(0xc8)](JSON[_0x4a44ef(0xc2)](_0x439dea)),_0x29dd4c=_0x4f8ecf['appCode'],_0x14fc60=_0x3febbb[_0x4a44ef(0xb9)][_0x29dd4c];if(!_0x14fc60)throw new Error(_0x4a44ef(0xe6)+_0x29dd4c+_0x4a44ef(0xa9));const _0x2bc6db=[],_0x1c0f9f=[],_0x54e92a=[];for(const _0x14a26b of _0x100b7b){const _0x166f23=resolveRemoteScriptTarget(_0x565b13,_0x14a26b,_0x3dec64,_0xef2e29['functions'],_0x57db3a);if(!_0x166f23){_0x1c0f9f[_0x4a44ef(0xdb)]({'lockKey':_0x14a26b[_0x4a44ef(0xe9)]+'/'+_0x14a26b['functionName'],'reason':_0x4a44ef(0xe5)});continue;}const _0x302dd3=_0xef2e29[_0x4a44ef(0xdd)][_0x166f23['lockKey']];try{if(!_0x14a26b['id'])throw new Error(_0x4a44ef(0xd2));if(_0x14a26b[_0x4a44ef(0xb1)]==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x154347=_0x14a26b[_0x4a44ef(0xb1)],_0x42529b=computeContentHash(_0x154347);if(!_0x214473){const _0x4be403=await hasUnsyncedLocalChanges(_0x166f23[_0x4a44ef(0xcd)],_0x302dd3,_0x42529b);if(_0x4be403){_0x1c0f9f[_0x4a44ef(0xdb)]({'lockKey':_0x166f23[_0x4a44ef(0xd7)],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x166f23[_0x4a44ef(0xcd)]),await writeFile(_0x166f23['filePath'],_0x154347,_0x4a44ef(0xba));const _0x176631={'hash':_0x42529b,'remoteId':_0x14a26b['id'],'version':_0x14a26b[_0x4a44ef(0xbb)]};_0x166f23[_0x4a44ef(0xc3)]===_0x4a44ef(0xee)&&_0x166f23[_0x4a44ef(0xe0)]&&(_0x176631[_0x4a44ef(0xe4)]=_0x166f23['hookLocation']['alias'],_0x176631[_0x4a44ef(0xe8)]=_0x166f23[_0x4a44ef(0xe0)][_0x4a44ef(0xe8)],_0x176631[_0x4a44ef(0xbe)]=_0x166f23[_0x4a44ef(0xe0)][_0x4a44ef(0xbe)],_0x176631[_0x4a44ef(0xf0)]=_0x166f23[_0x4a44ef(0xe0)]['functionNode']),_0x14fc60[_0x4a44ef(0xdd)][_0x166f23[_0x4a44ef(0xd7)]]=_0x176631,_0x2bc6db[_0x4a44ef(0xdb)]({'lockKey':_0x166f23[_0x4a44ef(0xd7)],'remoteId':_0x14a26b['id']});}catch(_0x507ba6){_0x54e92a[_0x4a44ef(0xdb)]({'lockKey':_0x166f23[_0x4a44ef(0xd7)],'error':_0x507ba6 instanceof Error?_0x507ba6[_0x4a44ef(0xed)]:String(_0x507ba6)});}}return _0x14fc60[_0x4a44ef(0xdc)]=new Date()['toISOString'](),await writeBffLockFile(_0x565b13['lockFilePath'],_0x3febbb),{'ok':_0x54e92a[_0x4a44ef(0xaa)]===0x0,'data':{'pulled':_0x2bc6db,'skipped':_0x1c0f9f,'failed':_0x54e92a},'message':_0x4a44ef(0xab)+_0x2bc6db['length']+_0x4a44ef(0xa8)+_0x1c0f9f['length']+_0x4a44ef(0xae)+_0x54e92a[_0x4a44ef(0xaa)]+'\x20failed'};}};async function hasUnsyncedLocalChanges(_0x35e676,_0xeb1099,_0x53b06e){const _0x3784d4=a31_0x4f64ba;if(!await fileExists(_0x35e676))return![];const _0x4eceec=await computeFileHash(_0x35e676);if(!_0xeb1099)return _0x53b06e?_0x4eceec!==_0x53b06e:!![];return _0x4eceec!==_0xeb1099[_0x3784d4(0xbc)];}function buildDatasetCodeToAliasMap(_0x3de80d,_0x160703){const _0x4c2a80=a31_0x4f64ba,_0x2f4bc6=loadAliasMap(_0x3de80d,undefined,resolveApiFilePath(_0x3de80d,_0x160703));return new Map(_0x2f4bc6[_0x4c2a80(0xcf)](_0x189a5e=>[_0x189a5e[_0x4c2a80(0xe8)],_0x189a5e[_0x4c2a80(0xe4)]]));}async function confirmForce(){const _0x543a5a=a31_0x4f64ba,_0x5cc97d=createInterface({'input':process[_0x543a5a(0xe3)],'output':process[_0x543a5a(0xd5)]}),_0x13db49=await new Promise(_0x1416ec=>{const _0x21a81a=_0x543a5a;_0x5cc97d[_0x21a81a(0xd4)](_0x21a81a(0xe2),_0x1416ec);});return _0x5cc97d[_0x543a5a(0xcb)](),['y','yes'][_0x543a5a(0xca)](_0x13db49[_0x543a5a(0xea)]()[_0x543a5a(0xc6)]());}