@lovrabet/rabetbase-cli 2.2.3-beta.1 → 2.2.3

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 (205) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/create.js +1 -1
  28. package/lib/commands/bff/delete.js +1 -1
  29. package/lib/commands/bff/detail.js +1 -1
  30. package/lib/commands/bff/index.js +1 -1
  31. package/lib/commands/bff/list.js +1 -1
  32. package/lib/commands/bff/pull.js +1 -1
  33. package/lib/commands/bff/push.js +1 -1
  34. package/lib/commands/bff/status.js +1 -1
  35. package/lib/commands/cli-update.js +1 -1
  36. package/lib/commands/codegen/index.js +1 -1
  37. package/lib/commands/codegen/sdk.js +1 -1
  38. package/lib/commands/codegen/sql.js +1 -1
  39. package/lib/commands/common/app-selector.js +1 -1
  40. package/lib/commands/common/flags.js +1 -1
  41. package/lib/commands/common/validate.js +1 -1
  42. package/lib/commands/config/get.js +1 -1
  43. package/lib/commands/config/index.js +1 -1
  44. package/lib/commands/config/list.js +1 -1
  45. package/lib/commands/config/set.js +1 -1
  46. package/lib/commands/config/shared.js +1 -1
  47. package/lib/commands/data/filter.js +1 -1
  48. package/lib/commands/data/getOne.js +1 -1
  49. package/lib/commands/data/index.js +1 -1
  50. package/lib/commands/data/shared.js +1 -1
  51. package/lib/commands/dataset/capability.js +1 -1
  52. package/lib/commands/dataset/delete.js +1 -1
  53. package/lib/commands/dataset/detail.js +1 -1
  54. package/lib/commands/dataset/extend-update.js +1 -1
  55. package/lib/commands/dataset/field-update.js +1 -1
  56. package/lib/commands/dataset/index.js +1 -1
  57. package/lib/commands/dataset/list.js +1 -1
  58. package/lib/commands/dataset/operations.js +1 -1
  59. package/lib/commands/dataset/relation-create.js +1 -1
  60. package/lib/commands/dataset/relation-delete.js +1 -1
  61. package/lib/commands/dataset/relation-shared.js +1 -1
  62. package/lib/commands/dataset/relation-update.js +1 -1
  63. package/lib/commands/dataset/relations.js +1 -1
  64. package/lib/commands/dataset/rename.js +1 -1
  65. package/lib/commands/db/analyze-cancel.js +1 -1
  66. package/lib/commands/db/analyze-start.js +1 -1
  67. package/lib/commands/db/analyze-status.js +1 -1
  68. package/lib/commands/db/create.js +1 -1
  69. package/lib/commands/db/delete.js +1 -1
  70. package/lib/commands/db/detail.js +1 -1
  71. package/lib/commands/db/diff.js +1 -1
  72. package/lib/commands/db/index.js +1 -1
  73. package/lib/commands/db/list.js +1 -1
  74. package/lib/commands/db/shared.js +1 -1
  75. package/lib/commands/db/tables.js +1 -1
  76. package/lib/commands/db/test.js +1 -1
  77. package/lib/commands/db/update.js +1 -1
  78. package/lib/commands/doctor.js +1 -1
  79. package/lib/commands/init/index.js +1 -1
  80. package/lib/commands/issue/index.js +1 -1
  81. package/lib/commands/issue/nudge.js +1 -1
  82. package/lib/commands/issue/report.js +1 -1
  83. package/lib/commands/issue/shared.js +1 -1
  84. package/lib/commands/logs/index.js +1 -1
  85. package/lib/commands/menu/index.js +1 -1
  86. package/lib/commands/menu/list.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/relation-audit.js +1 -1
  104. package/lib/commands/page/shared.js +1 -1
  105. package/lib/commands/page/standard-page-status.js +1 -1
  106. package/lib/commands/page/sync.js +1 -1
  107. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  108. package/lib/commands/project/create/format-elapsed.js +1 -1
  109. package/lib/commands/project/create/main.js +1 -1
  110. package/lib/commands/project/create/non-interactive.js +1 -1
  111. package/lib/commands/project/create/project-template-path.js +1 -1
  112. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  113. package/lib/commands/project/create/use-format-code.js +1 -1
  114. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  115. package/lib/commands/project/index.js +1 -1
  116. package/lib/commands/project/init.js +1 -1
  117. package/lib/commands/project/upgrade.js +1 -1
  118. package/lib/commands/registry.js +1 -1
  119. package/lib/commands/run/index.js +1 -1
  120. package/lib/commands/schema.js +1 -1
  121. package/lib/commands/skill/index.js +1 -1
  122. package/lib/commands/sql/create.js +1 -1
  123. package/lib/commands/sql/delete.js +1 -1
  124. package/lib/commands/sql/detail.js +1 -1
  125. package/lib/commands/sql/exec.js +1 -1
  126. package/lib/commands/sql/index.js +1 -1
  127. package/lib/commands/sql/list.js +1 -1
  128. package/lib/commands/sql/pull.js +1 -1
  129. package/lib/commands/sql/push.js +1 -1
  130. package/lib/commands/sql/save.js +1 -1
  131. package/lib/commands/sql/shared.js +1 -1
  132. package/lib/commands/sql/status.js +1 -1
  133. package/lib/commands/sql/validate.js +1 -1
  134. package/lib/config/schema.js +1 -1
  135. package/lib/constant/cdn.js +1 -1
  136. package/lib/constant/cli.js +1 -1
  137. package/lib/constant/defaults.js +1 -1
  138. package/lib/constant/domain.js +1 -1
  139. package/lib/constant/env.js +1 -1
  140. package/lib/constant/output.js +1 -1
  141. package/lib/constant/paths.js +1 -1
  142. package/lib/constant/risk.js +1 -1
  143. package/lib/context.js +1 -1
  144. package/lib/core/alias-resolver.js +1 -1
  145. package/lib/core/api-client.js +1 -1
  146. package/lib/core/bff/config.js +1 -1
  147. package/lib/core/bff/file-system.js +1 -1
  148. package/lib/core/bff/hash.js +1 -1
  149. package/lib/core/bff/lock.js +1 -1
  150. package/lib/core/bff/utils.js +1 -1
  151. package/lib/core/db-resolver.js +1 -1
  152. package/lib/core/page/file-system.js +1 -1
  153. package/lib/core/page/hash.js +1 -1
  154. package/lib/core/page/lock.js +1 -1
  155. package/lib/core/sql-sync/config.js +1 -1
  156. package/lib/core/sql-sync/file-system.js +1 -1
  157. package/lib/core/sql-sync/hash.js +1 -1
  158. package/lib/core/sql-sync/lock.js +1 -1
  159. package/lib/core/sql-sync/utils.js +1 -1
  160. package/lib/core/sql-validator.js +1 -1
  161. package/lib/errors.js +1 -1
  162. package/lib/framework/build-all-flags.js +1 -1
  163. package/lib/framework/flags.js +1 -1
  164. package/lib/framework/help.js +1 -1
  165. package/lib/framework/index.js +1 -1
  166. package/lib/framework/output.js +1 -1
  167. package/lib/framework/response.js +1 -1
  168. package/lib/framework/runner-alias.js +1 -1
  169. package/lib/framework/runner.js +1 -1
  170. package/lib/framework/schema-export.js +1 -1
  171. package/lib/framework/types.js +1 -1
  172. package/lib/generated/build-info.js +1 -1
  173. package/lib/help.js +1 -1
  174. package/lib/skills/main.js +1 -1
  175. package/lib/skills/npx-skills-add.js +1 -1
  176. package/lib/telemetry/cli-command-trace.js +1 -1
  177. package/lib/telemetry/cli-help-trace.js +1 -1
  178. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  179. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  180. package/lib/telemetry/send-cli-trace-log.js +1 -1
  181. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  182. package/lib/utils/ai_config.js +1 -1
  183. package/lib/utils/apply-jq-filter.js +1 -1
  184. package/lib/utils/cdn-config.js +1 -1
  185. package/lib/utils/check-sdk-version.js +1 -1
  186. package/lib/utils/cli-version-check.js +1 -1
  187. package/lib/utils/cli-version-policy.js +1 -1
  188. package/lib/utils/config.js +1 -1
  189. package/lib/utils/copy-directory.js +1 -1
  190. package/lib/utils/entity-with-id.js +1 -1
  191. package/lib/utils/file-utils.js +1 -1
  192. package/lib/utils/guides-cdn.js +1 -1
  193. package/lib/utils/http-client.js +1 -1
  194. package/lib/utils/is-non-interactive.js +1 -1
  195. package/lib/utils/logger.js +1 -1
  196. package/lib/utils/params.js +1 -1
  197. package/lib/utils/platform.js +1 -1
  198. package/lib/utils/rules-cdn.js +1 -1
  199. package/lib/utils/sleep.js +1 -1
  200. package/lib/utils/template-replacer.js +1 -1
  201. package/lib/utils/update-notice.js +1 -1
  202. package/lib/utils/version.js +1 -1
  203. package/lib/utils/with-active-cookie.js +1 -1
  204. package/lib/utils/write-cli-side-channel.js +1 -1
  205. package/package.json +1 -1
@@ -1 +1 @@
1
- const a19_0x345931=a19_0x5d72;function a19_0x5d72(_0x383901,_0x11a2ef){_0x383901=_0x383901-0x6b;const _0x5a9fc4=a19_0x5a9f();let _0x5d72e5=_0x5a9fc4[_0x383901];return _0x5d72e5;}function a19_0x5a9f(){const _0x1babe1=['12jRdblR','1802133IqJBer','164gWUXqf','../../core/api-client.js','app','3823239gKZtCz','appDesc','21180252szrVyx','appCode','14523360rmpHMd','380zfmROx','9228syevCj','platform','22WtAPnv','cookie','9754866LmbXJY','16Fcmqkm','13223qUwUZs','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login'];a19_0x5a9f=function(){return _0x1babe1;};return a19_0x5a9f();}(function(_0x484e16,_0x490862){const _0x2a2cd7=a19_0x5d72,_0x406655=_0x484e16();while(!![]){try{const _0x9819af=parseInt(_0x2a2cd7(0x7c))/0x1*(parseInt(_0x2a2cd7(0x6d))/0x2)+-parseInt(_0x2a2cd7(0x6c))/0x3*(-parseInt(_0x2a2cd7(0x6b))/0x4)+parseInt(_0x2a2cd7(0x75))/0x5*(parseInt(_0x2a2cd7(0x76))/0x6)+parseInt(_0x2a2cd7(0x70))/0x7*(-parseInt(_0x2a2cd7(0x7b))/0x8)+parseInt(_0x2a2cd7(0x7a))/0x9+parseInt(_0x2a2cd7(0x74))/0xa+parseInt(_0x2a2cd7(0x78))/0xb*(-parseInt(_0x2a2cd7(0x72))/0xc);if(_0x9819af===_0x490862)break;else _0x406655['push'](_0x406655['shift']());}catch(_0x245a90){_0x406655['push'](_0x406655['shift']());}}}(a19_0x5a9f,0xdfe81));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x486698){const _0x5c47ca=a19_0x5d72,{setActiveCookie:_0x2bb368}=await import(_0x5c47ca(0x6e));_0x2bb368(_0x486698[_0x5c47ca(0x79)]);const _0xf1797=await listRemoteApps();return{'ok':!![],'data':{'items':_0xf1797['map'](_0x275ec4=>({..._0x275ec4['id']!=null?{'id':_0x275ec4['id']}:{},'appCode':_0x275ec4[_0x5c47ca(0x73)],'appName':_0x275ec4['appName'],..._0x275ec4[_0x5c47ca(0x71)]!=null?{'appDesc':_0x275ec4[_0x5c47ca(0x71)]}:{}})),'meta':{'source':_0x5c47ca(0x77)}}};}export const appRemoteDefinition={'service':a19_0x345931(0x6f),'command':'remote','description':a19_0x345931(0x7d),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ const a19_0x985d39=a19_0x451e;(function(_0x117ae6,_0xaa1539){const _0x10f8cb=a19_0x451e,_0x5777ef=_0x117ae6();while(!![]){try{const _0x3f472a=parseInt(_0x10f8cb(0xf2))/0x1+-parseInt(_0x10f8cb(0xf7))/0x2*(-parseInt(_0x10f8cb(0xfe))/0x3)+parseInt(_0x10f8cb(0xf6))/0x4*(-parseInt(_0x10f8cb(0xfc))/0x5)+parseInt(_0x10f8cb(0xf3))/0x6*(-parseInt(_0x10f8cb(0xfd))/0x7)+-parseInt(_0x10f8cb(0xf5))/0x8+-parseInt(_0x10f8cb(0xf9))/0x9+parseInt(_0x10f8cb(0xef))/0xa;if(_0x3f472a===_0xaa1539)break;else _0x5777ef['push'](_0x5777ef['shift']());}catch(_0x2adfed){_0x5777ef['push'](_0x5777ef['shift']());}}}(a19_0x3a7a,0x62051));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x2536d4){const _0x5dfa7f=a19_0x451e,{setActiveCookie:_0x23150b}=await import('../../core/api-client.js');_0x23150b(_0x2536d4[_0x5dfa7f(0xf1)]);const _0xd526b4=await listRemoteApps();return{'ok':!![],'data':{'items':_0xd526b4[_0x5dfa7f(0x100)](_0x301f34=>({..._0x301f34['id']!=null?{'id':_0x301f34['id']}:{},'appCode':_0x301f34[_0x5dfa7f(0xf8)],'appName':_0x301f34[_0x5dfa7f(0xee)],..._0x301f34[_0x5dfa7f(0xff)]!=null?{'appDesc':_0x301f34[_0x5dfa7f(0xff)]}:{}})),'meta':{'source':'platform'}}};}function a19_0x451e(_0x22b9c5,_0x4bca1d){_0x22b9c5=_0x22b9c5-0xee;const _0x3a7a57=a19_0x3a7a();let _0x451e09=_0x3a7a57[_0x22b9c5];return _0x451e09;}export const appRemoteDefinition={'service':a19_0x985d39(0xfa),'command':a19_0x985d39(0xf0),'description':a19_0x985d39(0xfb),'risk':a19_0x985d39(0xf4),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};function a19_0x3a7a(){const _0x1dca17=['3241794dMjoaj','read','1506080LBIsfF','200hxjPns','1438snMjFV','appCode','6571611WqhkSk','app','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','78920JmzRvI','7HPDnBG','2991RDZyUn','appDesc','map','appName','18242770mGtuiF','remote','cookie','108307YJUYnK'];a19_0x3a7a=function(){return _0x1dca17;};return a19_0x3a7a();}
@@ -1 +1 @@
1
- function a20_0x934a(){const _0x4a8b08=['6585395UwibqL','4314258MGroBr','871961cmQOqx','4931127NcXjJj','29599507iWbgbf','2411084OpzQeL','780276KBWYRU'];a20_0x934a=function(){return _0x4a8b08;};return a20_0x934a();}(function(_0x1b552a,_0x361a96){const _0x310867=a20_0x4d3c,_0x43d257=_0x1b552a();while(!![]){try{const _0x35da90=-parseInt(_0x310867(0xf0))/0x1+-parseInt(_0x310867(0xf3))/0x2+-parseInt(_0x310867(0xf1))/0x3+-parseInt(_0x310867(0xf4))/0x4+parseInt(_0x310867(0xf5))/0x5+-parseInt(_0x310867(0xef))/0x6+parseInt(_0x310867(0xf2))/0x7;if(_0x35da90===_0x361a96)break;else _0x43d257['push'](_0x43d257['shift']());}catch(_0x2d3164){_0x43d257['push'](_0x43d257['shift']());}}}(a20_0x934a,0xde3b0));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_0x4d3c(_0xca2b13,_0x2dc4ab){_0xca2b13=_0xca2b13-0xef;const _0x934ad8=a20_0x934a();let _0x4d3c8c=_0x934ad8[_0xca2b13];return _0x4d3c8c;}export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ function a20_0x6891(_0xd9d99b,_0x3a3e38){_0xd9d99b=_0xd9d99b-0xb2;const _0x224357=a20_0x2243();let _0x68913=_0x224357[_0xd9d99b];return _0x68913;}(function(_0x43407a,_0x582705){const _0x54738f=a20_0x6891,_0x198423=_0x43407a();while(!![]){try{const _0x52f8f3=parseInt(_0x54738f(0xb4))/0x1+parseInt(_0x54738f(0xb2))/0x2*(parseInt(_0x54738f(0xb5))/0x3)+parseInt(_0x54738f(0xb7))/0x4+parseInt(_0x54738f(0xb8))/0x5*(-parseInt(_0x54738f(0xb3))/0x6)+parseInt(_0x54738f(0xb6))/0x7+-parseInt(_0x54738f(0xb9))/0x8+-parseInt(_0x54738f(0xba))/0x9;if(_0x52f8f3===_0x582705)break;else _0x198423['push'](_0x198423['shift']());}catch(_0x6695a5){_0x198423['push'](_0x198423['shift']());}}}(a20_0x2243,0x3acfa));function a20_0x2243(){const _0x5dc682=['1390384RghSoY','6205635mJsxYJ','2RjYgjN','522BTDCGZ','161975FzsiDQ','1019661GpnDSl','2971528aOyMoN','1777272JcKwxv','15315ZJoYCP'];a20_0x2243=function(){return _0x5dc682;};return a20_0x2243();}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';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- const a21_0x9bf46d=a21_0x1778;function a21_0x57fe(){const _0x24d9ab=['28378xkwfqT','22020sDoxMX','No\x20apps\x20configured','isCurrent','object','2hsrbbI','globalPath','\x20config','project','globalConfig','109150ACvPUt','length','9ptJYui','entries','mergedCli','global','appcode','app','88578IwgzfJ','330FeMlzz','598800YWsXDH','351920LBZDdj','apps','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','push','bool','.\x20Use\x20`','inherit','read','projectPath','81071pfwvUU','merged','defaultApp','projectConfig'];a21_0x57fe=function(){return _0x24d9ab;};return a21_0x57fe();}(function(_0xe52374,_0x1f512c){const _0x4b8542=a21_0x1778,_0x229643=_0xe52374();while(!![]){try{const _0x1977e6=-parseInt(_0x4b8542(0xa5))/0x1*(-parseInt(_0x4b8542(0xae))/0x2)+parseInt(_0x4b8542(0xbb))/0x3+-parseInt(_0x4b8542(0xbd))/0x4+-parseInt(_0x4b8542(0xb3))/0x5+parseInt(_0x4b8542(0xbc))/0x6*(parseInt(_0x4b8542(0xa9))/0x7)+-parseInt(_0x4b8542(0xbe))/0x8+parseInt(_0x4b8542(0xb5))/0x9*(-parseInt(_0x4b8542(0xaa))/0xa);if(_0x1977e6===_0x1f512c)break;else _0x229643['push'](_0x229643['shift']());}catch(_0x1cc065){_0x229643['push'](_0x229643['shift']());}}}(a21_0x57fe,0x1c485));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';function a21_0x1778(_0x13f609,_0x31540e){_0x13f609=_0x13f609-0xa3;const _0x57fe11=a21_0x57fe();let _0x177837=_0x57fe11[_0x13f609];return _0x177837;}import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x3327ec,_0xdfcaa2){const _0x4073cf=a21_0x1778,_0x454447=[],_0x2947ae=_0x3327ec[_0x4073cf(0xbf)]&&typeof _0x3327ec[_0x4073cf(0xbf)]===_0x4073cf(0xad)?_0x3327ec['apps']:{},_0x4efe06=_0x3327ec[_0x4073cf(0xa7)]||undefined;for(const [_0x451edc,_0x287054]of Object[_0x4073cf(0xb6)](_0x2947ae)){if(!_0x287054||typeof _0x287054!==_0x4073cf(0xad)||!_0x287054[_0x4073cf(0xb9)])continue;_0x454447[_0x4073cf(0xc1)]({'name':_0x451edc,'appcode':_0x287054['appcode'],'named':!![],'definedIn':_0xdfcaa2,'isDefault':_0x451edc===_0x4efe06,...buildAppProfileListFields(_0x287054)});}return _0x454447;}function buildMergedItems(_0x305f04,_0x4e8940){const _0x35fc25=a21_0x1778,{apps:apps={},defaultApp:_0x1bee46}=_0x305f04,_0x5de663=_0x4e8940[_0x35fc25(0xb2)][_0x35fc25(0xbf)]&&typeof _0x4e8940[_0x35fc25(0xb2)]['apps']===_0x35fc25(0xad)?_0x4e8940[_0x35fc25(0xb2)][_0x35fc25(0xbf)]:{},_0x578a68=_0x4e8940[_0x35fc25(0xa8)][_0x35fc25(0xbf)]&&typeof _0x4e8940[_0x35fc25(0xa8)][_0x35fc25(0xbf)]===_0x35fc25(0xad)?_0x4e8940['projectConfig'][_0x35fc25(0xbf)]:{},_0x5c5426=_0x4e8940[_0x35fc25(0xa8)][_0x35fc25(0xc4)]===![],_0x176068=Object['entries'](apps),_0x1c3de7=_0x176068['map'](([_0x3f7422,_0x4a8468])=>({'name':_0x3f7422,'appcode':_0x4a8468['appcode'],'named':!![],'definedIn':appDefinedIn(_0x3f7422,_0x5de663,_0x578a68,_0x5c5426),'isDefault':_0x3f7422===_0x1bee46,...buildAppProfileListFields(_0x4a8468)}));return _0x1c3de7;}async function execute(_0x355733){const _0x59bbc5=a21_0x1778,_0x40bc94=_0x355733[_0x59bbc5(0xc2)](_0x59bbc5(0xb8)),_0x2cf985=_0x355733[_0x59bbc5(0xc2)](_0x59bbc5(0xb1)),_0xc76c62=_0x40bc94?_0x59bbc5(0xb8):_0x2cf985?'project':_0x59bbc5(0xa6),{config:_0x19251e,layers:_0x392f3b}=readRawConfigWithLayers(),_0x4801f2=resolveDefaultAppSource(_0x392f3b),{defaultApp:_0x4244f7}=_0x19251e;let _0x1acde3,_0x3bf46d;switch(_0xc76c62){case _0x59bbc5(0xb8):_0x1acde3=buildItemsFromLayer(_0x392f3b['globalConfig'],_0x59bbc5(0xb8)),_0x3bf46d=_0x392f3b[_0x59bbc5(0xaf)];break;case'project':_0x1acde3=buildItemsFromLayer(_0x392f3b[_0x59bbc5(0xa8)],'project'),_0x3bf46d=_0x392f3b[_0x59bbc5(0xa4)];break;default:_0x1acde3=buildMergedItems(_0x19251e,_0x392f3b);break;}enrichAppListItemsWithMergedSelection(_0x1acde3,_0x355733[_0x59bbc5(0xb7)]);if(_0x1acde3[_0x59bbc5(0xb4)]===0x0){const _0x4a58f3=_0xc76c62===_0x59bbc5(0xa6)?'':'\x20in\x20'+_0xc76c62+_0x59bbc5(0xb0);return{'ok':!![],'data':[],'message':_0x59bbc5(0xab)+_0x4a58f3+_0x59bbc5(0xc3)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x8598a5=_0x1acde3['find'](_0x298b87=>_0x298b87[_0x59bbc5(0xac)]===!![]),_0xbf2df5=_0x4244f7??_0x8598a5?.['appcode']??null,_0x158ba4=_0xc76c62==='merged'?{'globalPath':_0x392f3b['globalPath']??null,'projectPath':_0x392f3b[_0x59bbc5(0xa4)]??null,'defaultApp':_0xbf2df5,'defaultAppSource':_0x4244f7!=null?_0x4801f2:null}:{'scope':_0xc76c62,'configPath':_0x3bf46d??null};return{'ok':!![],'data':{'items':_0x1acde3,'meta':_0x158ba4}};}export const appListDefinition={'service':a21_0x9bf46d(0xba),'command':'list','description':'List\x20all\x20configured\x20apps','risk':a21_0x9bf46d(0xa3),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x9bf46d(0xb8),'type':'boolean','description':a21_0x9bf46d(0xc0),'default':![]},{'name':a21_0x9bf46d(0xb1),'type':'boolean','description':'Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','default':![]}],'execute':execute};
1
+ const a21_0x120dee=a21_0x27ff;(function(_0x4238d6,_0x567000){const _0x21bde4=a21_0x27ff,_0x2139a0=_0x4238d6();while(!![]){try{const _0x3a13de=parseInt(_0x21bde4(0x1a9))/0x1*(parseInt(_0x21bde4(0x1ba))/0x2)+parseInt(_0x21bde4(0x1a2))/0x3+parseInt(_0x21bde4(0x1af))/0x4+parseInt(_0x21bde4(0x1ac))/0x5*(parseInt(_0x21bde4(0x1a6))/0x6)+-parseInt(_0x21bde4(0x1a0))/0x7*(-parseInt(_0x21bde4(0x1b1))/0x8)+parseInt(_0x21bde4(0x19e))/0x9+-parseInt(_0x21bde4(0x1ad))/0xa*(parseInt(_0x21bde4(0x1b3))/0xb);if(_0x3a13de===_0x567000)break;else _0x2139a0['push'](_0x2139a0['shift']());}catch(_0x4581f1){_0x2139a0['push'](_0x2139a0['shift']());}}}(a21_0x16bb,0xad372));function a21_0x27ff(_0x4d6066,_0x2d9b96){_0x4d6066=_0x4d6066-0x199;const _0x16bbb7=a21_0x16bb();let _0x27ff70=_0x16bbb7[_0x4d6066];return _0x27ff70;}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(_0x3afd3c,_0x41b565){const _0xdbb0a5=a21_0x27ff,_0x215738=[],_0x3b04ad=_0x3afd3c[_0xdbb0a5(0x1ab)]&&typeof _0x3afd3c[_0xdbb0a5(0x1ab)]===_0xdbb0a5(0x1a4)?_0x3afd3c[_0xdbb0a5(0x1ab)]:{},_0x58b18c=_0x3afd3c['defaultApp']||undefined;for(const [_0x40ea44,_0x531662]of Object[_0xdbb0a5(0x1b5)](_0x3b04ad)){if(!_0x531662||typeof _0x531662!=='object'||!_0x531662['appcode'])continue;_0x215738[_0xdbb0a5(0x1b7)]({'name':_0x40ea44,'appcode':_0x531662['appcode'],'named':!![],'definedIn':_0x41b565,'isDefault':_0x40ea44===_0x58b18c,...buildAppProfileListFields(_0x531662)});}return _0x215738;}function a21_0x16bb(){const _0x4d0be7=['bool','3720741TnOcIQ','boolean','object','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','5247258wGpyCH','appcode','list','232234VCRWfs','global','apps','5jAeRhg','44143370KdxJXn','\x20in\x20','1962376HeXYnq','app','152KItbUc','project','11OpXPLF','inherit','entries','globalConfig','push','find','List\x20all\x20configured\x20apps','10GUsmhC','globalPath','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','isCurrent','mergedCli','merged','map','projectConfig','4239675nRZVcx','.\x20Use\x20`','326494pDUJiJ'];a21_0x16bb=function(){return _0x4d0be7;};return a21_0x16bb();}function buildMergedItems(_0x52ea49,_0x30ff32){const _0x2c3bbf=a21_0x27ff,{apps:apps={},defaultApp:_0x4748ff}=_0x52ea49,_0x5348f4=_0x30ff32[_0x2c3bbf(0x1b6)][_0x2c3bbf(0x1ab)]&&typeof _0x30ff32[_0x2c3bbf(0x1b6)][_0x2c3bbf(0x1ab)]===_0x2c3bbf(0x1a4)?_0x30ff32[_0x2c3bbf(0x1b6)][_0x2c3bbf(0x1ab)]:{},_0x4e27d3=_0x30ff32['projectConfig']['apps']&&typeof _0x30ff32[_0x2c3bbf(0x19d)][_0x2c3bbf(0x1ab)]===_0x2c3bbf(0x1a4)?_0x30ff32[_0x2c3bbf(0x19d)][_0x2c3bbf(0x1ab)]:{},_0x2bec40=_0x30ff32[_0x2c3bbf(0x19d)][_0x2c3bbf(0x1b4)]===![],_0x1562ca=Object[_0x2c3bbf(0x1b5)](apps),_0x3b8e6b=_0x1562ca[_0x2c3bbf(0x19c)](([_0x1dabf9,_0xbb7e15])=>({'name':_0x1dabf9,'appcode':_0xbb7e15['appcode'],'named':!![],'definedIn':appDefinedIn(_0x1dabf9,_0x5348f4,_0x4e27d3,_0x2bec40),'isDefault':_0x1dabf9===_0x4748ff,...buildAppProfileListFields(_0xbb7e15)}));return _0x3b8e6b;}async function execute(_0x15b939){const _0x19df54=a21_0x27ff,_0xd89cd2=_0x15b939[_0x19df54(0x1a1)](_0x19df54(0x1aa)),_0x1e0546=_0x15b939[_0x19df54(0x1a1)](_0x19df54(0x1b2)),_0x4051be=_0xd89cd2?_0x19df54(0x1aa):_0x1e0546?_0x19df54(0x1b2):'merged',{config:_0x4f5c8c,layers:_0x505a07}=readRawConfigWithLayers(),_0x5c8290=resolveDefaultAppSource(_0x505a07),{defaultApp:_0x39ce89}=_0x4f5c8c;let _0x4c4930,_0x290063;switch(_0x4051be){case _0x19df54(0x1aa):_0x4c4930=buildItemsFromLayer(_0x505a07[_0x19df54(0x1b6)],'global'),_0x290063=_0x505a07[_0x19df54(0x1bb)];break;case _0x19df54(0x1b2):_0x4c4930=buildItemsFromLayer(_0x505a07['projectConfig'],_0x19df54(0x1b2)),_0x290063=_0x505a07['projectPath'];break;default:_0x4c4930=buildMergedItems(_0x4f5c8c,_0x505a07);break;}enrichAppListItemsWithMergedSelection(_0x4c4930,_0x15b939[_0x19df54(0x19a)]);if(_0x4c4930['length']===0x0){const _0x17753f=_0x4051be===_0x19df54(0x19b)?'':_0x19df54(0x1ae)+_0x4051be+'\x20config';return{'ok':!![],'data':[],'message':'No\x20apps\x20configured'+_0x17753f+_0x19df54(0x19f)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x591f0b=_0x4c4930[_0x19df54(0x1b8)](_0x5f0cb6=>_0x5f0cb6[_0x19df54(0x199)]===!![]),_0xf48b13=_0x39ce89??_0x591f0b?.[_0x19df54(0x1a7)]??null,_0x58f8b1=_0x4051be===_0x19df54(0x19b)?{'globalPath':_0x505a07['globalPath']??null,'projectPath':_0x505a07['projectPath']??null,'defaultApp':_0xf48b13,'defaultAppSource':_0x39ce89!=null?_0x5c8290:null}:{'scope':_0x4051be,'configPath':_0x290063??null};return{'ok':!![],'data':{'items':_0x4c4930,'meta':_0x58f8b1}};}export const appListDefinition={'service':a21_0x120dee(0x1b0),'command':a21_0x120dee(0x1a8),'description':a21_0x120dee(0x1b9),'risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x120dee(0x1aa),'type':a21_0x120dee(0x1a3),'description':a21_0x120dee(0x1a5),'default':![]},{'name':'project','type':'boolean','description':a21_0x120dee(0x1bc),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0x53bace=a22_0x5f30;(function(_0x4def36,_0x83e704){const _0x58366f=a22_0x5f30,_0x24e4ed=_0x4def36();while(!![]){try{const _0x44ed36=parseInt(_0x58366f(0xf4))/0x1*(parseInt(_0x58366f(0x113))/0x2)+parseInt(_0x58366f(0x104))/0x3*(parseInt(_0x58366f(0xf5))/0x4)+parseInt(_0x58366f(0x10f))/0x5*(parseInt(_0x58366f(0xfd))/0x6)+-parseInt(_0x58366f(0xfc))/0x7+parseInt(_0x58366f(0x107))/0x8+-parseInt(_0x58366f(0x100))/0x9*(-parseInt(_0x58366f(0xf6))/0xa)+-parseInt(_0x58366f(0xef))/0xb;if(_0x44ed36===_0x83e704)break;else _0x24e4ed['push'](_0x24e4ed['shift']());}catch(_0x5d4dd3){_0x24e4ed['push'](_0x24e4ed['shift']());}}}(a22_0x263c,0xac19f));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a22_0x5f30(_0x47beaa,_0x43d137){_0x47beaa=_0x47beaa-0xef;const _0x263cef=a22_0x263c();let _0x5f304c=_0x263cef[_0x47beaa];return _0x5f304c;}function a22_0x263c(){const _0x305770=['Use\x20global\x20config\x20scope','validation','bool','projectConfig','Usage:\x20','565glPDcM','project','\x20config.','\x20Default\x20app\x20changed\x20to\x20\x22','7186QaJPRv','keys','11561550KKlWJz','trim','global','\x20app\x20remove\x20<name>\x20[--global]','App\x20\x22','84aiuSRK','4DfISSm','40760lExeZq','apps','Removed\x20app\x20\x22','name','defaultApp','object','5837790IVKrFY','29622GkCCwp','\x22\x20not\x20found.','length','1575HRfPtr','remove','Missing\x20app\x20name.','inherit','2497008zuLrFo','both','App\x20profile\x20name\x20to\x20remove','1476944AUvCSY','app','globalConfig'];a22_0x263c=function(){return _0x305770;};return a22_0x263c();}import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x5e3185){const _0x24fd93=a22_0x5f30,_0x5d20f3=_0x5e3185['args'][0x0]?.[_0x24fd93(0xf0)]();if(!_0x5d20f3)throw CliErrors[_0x24fd93(0x10b)](_0x24fd93(0x102),'Usage:\x20'+CLI_BIN_NAME+_0x24fd93(0xf2));}async function execute(_0x25e1b7){const _0x13afc3=a22_0x5f30,_0xf48d8f=_0x25e1b7['args'][0x0]?.['trim']();if(!_0xf48d8f)throw CliErrors[_0x13afc3(0x10b)](_0x13afc3(0x102),_0x13afc3(0x10e)+CLI_BIN_NAME+_0x13afc3(0xf2));const _0x86604a=_0x25e1b7[_0x13afc3(0x10c)](_0x13afc3(0xf1)),{config:_0x360cbe,layers:_0xfc130f}=readRawConfigWithLayers(),_0xeed9bd=_0x360cbe['apps']??{};if(!_0xeed9bd[_0xf48d8f])throw CliErrors[_0x13afc3(0x10b)](_0x13afc3(0xf3)+_0xf48d8f+'\x22\x20not\x20found.');const _0x37910d=_0xfc130f[_0x13afc3(0x109)]['apps']&&typeof _0xfc130f[_0x13afc3(0x109)][_0x13afc3(0xf7)]===_0x13afc3(0xfb)?_0xfc130f['globalConfig'][_0x13afc3(0xf7)]:{},_0x94a46c=_0xfc130f[_0x13afc3(0x10d)][_0x13afc3(0xf7)]&&typeof _0xfc130f[_0x13afc3(0x10d)][_0x13afc3(0xf7)]===_0x13afc3(0xfb)?_0xfc130f[_0x13afc3(0x10d)][_0x13afc3(0xf7)]:{},_0xe5b512=appDefinedIn(_0xf48d8f,_0x37910d,_0x94a46c,_0xfc130f[_0x13afc3(0x10d)][_0x13afc3(0x103)]===![]),_0x43cb45=resolveAppScopeForWrite(_0xf48d8f,_0x86604a,_0xfc130f),_0x510166={'global':_0x43cb45===_0x13afc3(0xf1)},_0x238369=readConfig(_0x510166),_0x2db289=_0x238369[_0x13afc3(0xf7)];if(!_0x2db289||!_0x2db289[_0xf48d8f])throw CliErrors[_0x13afc3(0x10b)](_0x13afc3(0xf3)+_0xf48d8f+_0x13afc3(0xfe));delete _0x2db289[_0xf48d8f];let _0x2e2025='';if(_0x238369[_0x13afc3(0xfa)]===_0xf48d8f){const _0x172ac1=Object[_0x13afc3(0x114)](_0x2db289);_0x238369['defaultApp']=_0x172ac1[_0x13afc3(0xff)]>0x0?_0x172ac1[0x0]:undefined,_0x238369['defaultApp']?_0x2e2025=_0x13afc3(0x112)+_0x238369[_0x13afc3(0xfa)]+'\x22.':delete _0x238369[_0x13afc3(0xfa)];}Object[_0x13afc3(0x114)](_0x2db289)[_0x13afc3(0xff)]===0x0&&(delete _0x238369[_0x13afc3(0xf7)],delete _0x238369['defaultApp']);writeConfig(_0x238369,_0x510166);const _0x2ea84a=_0xe5b512===_0x13afc3(0x105)?'\x20Note:\x20app\x20\x22'+_0xf48d8f+'\x22\x20still\x20defined\x20in\x20'+(_0x43cb45===_0x13afc3(0x110)?_0x13afc3(0xf1):_0x13afc3(0x110))+_0x13afc3(0x111):'';return{'ok':!![],'message':_0x13afc3(0xf8)+_0xf48d8f+'\x22'+scopeLabel(_0x510166)+'.'+_0x2e2025+_0x2ea84a};}export const appRemoveDefinition={'service':a22_0x53bace(0x108),'command':a22_0x53bace(0x101),'description':'Remove\x20an\x20app\x20from\x20config','risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x53bace(0xf9),'description':a22_0x53bace(0x106),'required':!![]}],'flags':[{'name':'global','type':'boolean','description':a22_0x53bace(0x10a),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x525daf=a22_0x4238;(function(_0x175ada,_0x434341){const _0x48e046=a22_0x4238,_0x5bfd5b=_0x175ada();while(!![]){try{const _0x54b126=-parseInt(_0x48e046(0x81))/0x1*(-parseInt(_0x48e046(0x75))/0x2)+-parseInt(_0x48e046(0x91))/0x3*(parseInt(_0x48e046(0x7f))/0x4)+parseInt(_0x48e046(0x80))/0x5+-parseInt(_0x48e046(0x78))/0x6*(parseInt(_0x48e046(0x95))/0x7)+-parseInt(_0x48e046(0x72))/0x8*(-parseInt(_0x48e046(0x83))/0x9)+parseInt(_0x48e046(0x97))/0xa*(-parseInt(_0x48e046(0x77))/0xb)+parseInt(_0x48e046(0x89))/0xc;if(_0x54b126===_0x434341)break;else _0x5bfd5b['push'](_0x5bfd5b['shift']());}catch(_0x47fe1f){_0x5bfd5b['push'](_0x5bfd5b['shift']());}}}(a22_0x2434,0xaee2c));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';function a22_0x4238(_0xbc09e2,_0x25116d){_0xbc09e2=_0xbc09e2-0x70;const _0x2434ad=a22_0x2434();let _0x42384d=_0x2434ad[_0xbc09e2];return _0x42384d;}async function validateArgs(_0x52132f){const _0x2126d3=a22_0x4238,_0x1aeb2a=_0x52132f[_0x2126d3(0x84)][0x0]?.[_0x2126d3(0x82)]();if(!_0x1aeb2a)throw CliErrors[_0x2126d3(0x7a)](_0x2126d3(0x70),_0x2126d3(0x8f)+CLI_BIN_NAME+_0x2126d3(0x7e));}async function execute(_0x8cd9f8){const _0x5135e1=a22_0x4238,_0x485b9c=_0x8cd9f8['args'][0x0]?.[_0x5135e1(0x82)]();if(!_0x485b9c)throw CliErrors[_0x5135e1(0x7a)]('Missing\x20app\x20name.',_0x5135e1(0x8f)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');const _0x1c15d9=_0x8cd9f8[_0x5135e1(0x7b)](_0x5135e1(0x93)),{config:_0x3e9cae,layers:_0x3b5178}=readRawConfigWithLayers(),_0x213226=_0x3e9cae['apps']??{};if(!_0x213226[_0x485b9c])throw CliErrors[_0x5135e1(0x7a)](_0x5135e1(0x86)+_0x485b9c+_0x5135e1(0x8a));const _0x2750f6=_0x3b5178[_0x5135e1(0x8c)][_0x5135e1(0x73)]&&typeof _0x3b5178[_0x5135e1(0x8c)]['apps']==='object'?_0x3b5178[_0x5135e1(0x8c)]['apps']:{},_0x50299d=_0x3b5178['projectConfig'][_0x5135e1(0x73)]&&typeof _0x3b5178['projectConfig'][_0x5135e1(0x73)]===_0x5135e1(0x96)?_0x3b5178[_0x5135e1(0x7d)][_0x5135e1(0x73)]:{},_0x115696=appDefinedIn(_0x485b9c,_0x2750f6,_0x50299d,_0x3b5178[_0x5135e1(0x7d)]['inherit']===![]),_0xbf9598=resolveAppScopeForWrite(_0x485b9c,_0x1c15d9,_0x3b5178),_0x3d3271={'global':_0xbf9598===_0x5135e1(0x93)},_0x28a40c=readConfig(_0x3d3271),_0x375814=_0x28a40c['apps'];if(!_0x375814||!_0x375814[_0x485b9c])throw CliErrors[_0x5135e1(0x7a)](_0x5135e1(0x86)+_0x485b9c+_0x5135e1(0x8a));delete _0x375814[_0x485b9c];let _0x260a84='';if(_0x28a40c[_0x5135e1(0x8e)]===_0x485b9c){const _0x386f1c=Object[_0x5135e1(0x88)](_0x375814);_0x28a40c[_0x5135e1(0x8e)]=_0x386f1c[_0x5135e1(0x79)]>0x0?_0x386f1c[0x0]:undefined,_0x28a40c[_0x5135e1(0x8e)]?_0x260a84='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x28a40c[_0x5135e1(0x8e)]+'\x22.':delete _0x28a40c[_0x5135e1(0x8e)];}Object[_0x5135e1(0x88)](_0x375814)[_0x5135e1(0x79)]===0x0&&(delete _0x28a40c['apps'],delete _0x28a40c[_0x5135e1(0x8e)]);writeConfig(_0x28a40c,_0x3d3271);const _0x3f2ba9=_0x115696===_0x5135e1(0x8d)?_0x5135e1(0x8b)+_0x485b9c+_0x5135e1(0x76)+(_0xbf9598==='project'?_0x5135e1(0x93):_0x5135e1(0x74))+_0x5135e1(0x7c):'';return{'ok':!![],'message':_0x5135e1(0x94)+_0x485b9c+'\x22'+scopeLabel(_0x3d3271)+'.'+_0x260a84+_0x3f2ba9};}function a22_0x2434(){const _0xd1470c=['App\x20profile\x20name\x20to\x20remove','global','Removed\x20app\x20\x22','2262631wvGTjX','object','580extbui','Missing\x20app\x20name.','app','9010280EnOWLd','apps','project','43062OOsLqS','\x22\x20still\x20defined\x20in\x20','213114cmJHon','6WwGhbK','length','validation','bool','\x20config.','projectConfig','\x20app\x20remove\x20<name>\x20[--global]','81028JfcFtc','2054880htzgnf','27Ojffxr','trim','9fqRzna','args','Use\x20global\x20config\x20scope','App\x20\x22','name','keys','4425252frZHwh','\x22\x20not\x20found.','\x20Note:\x20app\x20\x22','globalConfig','both','defaultApp','Usage:\x20','boolean','48qXkuyR'];a22_0x2434=function(){return _0xd1470c;};return a22_0x2434();}export const appRemoveDefinition={'service':a22_0x525daf(0x71),'command':'remove','description':'Remove\x20an\x20app\x20from\x20config','risk':'high-risk-write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x525daf(0x87),'description':a22_0x525daf(0x92),'required':!![]}],'flags':[{'name':a22_0x525daf(0x93),'type':a22_0x525daf(0x90),'description':a22_0x525daf(0x85),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x744d19,_0x59eac2){const _0xfa3bf0=a23_0x5206,_0x589a9f=_0x744d19();while(!![]){try{const _0x36a2f9=parseInt(_0xfa3bf0(0xfd))/0x1+-parseInt(_0xfa3bf0(0x109))/0x2*(parseInt(_0xfa3bf0(0x106))/0x3)+-parseInt(_0xfa3bf0(0x111))/0x4*(-parseInt(_0xfa3bf0(0xf9))/0x5)+-parseInt(_0xfa3bf0(0xfe))/0x6*(-parseInt(_0xfa3bf0(0xfb))/0x7)+parseInt(_0xfa3bf0(0xfc))/0x8*(-parseInt(_0xfa3bf0(0xfa))/0x9)+parseInt(_0xfa3bf0(0xf7))/0xa+-parseInt(_0xfa3bf0(0x113))/0xb;if(_0x36a2f9===_0x59eac2)break;else _0x589a9f['push'](_0x589a9f['shift']());}catch(_0x3f5558){_0x589a9f['push'](_0x589a9f['shift']());}}}(a23_0x45e6,0x2697a));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x24b6d6,_0x518631){const _0x252bcf=a23_0x5206;if(!_0x518631)return;const _0xa49c1e=_0x518631[_0x252bcf(0x112)]&&typeof _0x518631[_0x252bcf(0x112)]===_0x252bcf(0x114)?_0x518631[_0x252bcf(0x112)]:{},_0xd94c1=Object[_0x252bcf(0x10d)](_0xa49c1e)[_0x252bcf(0x10f)]>0x0;for(const _0x45db31 of _0x24b6d6){_0x45db31['isCurrent']=![];}const _0x930f3f=_0x518631['appCode']!=null?String(_0x518631[_0x252bcf(0x100)])[_0x252bcf(0x110)]():'';if(_0xd94c1){const _0x2b5609=_0x518631[_0x252bcf(0x10c)]??_0x518631[_0x252bcf(0x103)];if(_0x2b5609)for(const _0x334d1e of _0x24b6d6){_0x334d1e[_0x252bcf(0x10e)]===!![]&&_0x334d1e[_0x252bcf(0x105)]===_0x2b5609&&(_0x334d1e['isCurrent']=!![]);}for(const _0x455cfb of _0x24b6d6){if(_0x455cfb[_0x252bcf(0x10e)]!==![])continue;if(_0x518631[_0x252bcf(0x103)])continue;_0x930f3f&&String(_0x455cfb['appcode']??'')['trim']()===_0x930f3f&&(_0x455cfb['isCurrent']=!![]);}return;}if(!_0x930f3f)return;for(const _0x60abca of _0x24b6d6){String(_0x60abca['appcode']??'')['trim']()===_0x930f3f&&(_0x60abca[_0x252bcf(0x10a)]=!![]);}}export function resolveAppScopeForWrite(_0x49da01,_0x35aabd,_0x1f8ed1){const _0x5987a0=a23_0x5206;if(_0x35aabd)return'global';const _0x1c352f=_0x1f8ed1[_0x5987a0(0x107)][_0x5987a0(0x112)]&&typeof _0x1f8ed1[_0x5987a0(0x107)][_0x5987a0(0x112)]===_0x5987a0(0x114)?_0x1f8ed1[_0x5987a0(0x107)][_0x5987a0(0x112)]:{},_0x2960dc=_0x1f8ed1[_0x5987a0(0x101)][_0x5987a0(0x112)]&&typeof _0x1f8ed1[_0x5987a0(0x101)][_0x5987a0(0x112)]===_0x5987a0(0x114)?_0x1f8ed1[_0x5987a0(0x101)][_0x5987a0(0x112)]:{};if(Object[_0x5987a0(0x116)][_0x5987a0(0x115)][_0x5987a0(0x102)](_0x1c352f,_0x49da01))return'project';if(Object['prototype'][_0x5987a0(0x115)][_0x5987a0(0x102)](_0x2960dc,_0x49da01))return _0x5987a0(0xf8);return _0x5987a0(0x108);}function a23_0x45e6(){const _0x3626d2=['prototype','1467070FRTYAi','global','367445QprkXK','221949dELlBc','12271scpSAQ','32AXlYnP','298590qQKwkj','1050ZEIQJN','\x20(global)','appCode','globalConfig','call','defaultApp','both','name','606039xnFNsM','projectConfig','project','2bVpwTw','isCurrent','inherit','currentApp','keys','named','length','trim','12vAvbPk','apps','5651888aMcuLL','object','hasOwnProperty'];a23_0x45e6=function(){return _0x3626d2;};return a23_0x45e6();}export function appDefinedIn(_0x36de38,_0x19565d,_0x21b4e6,_0x465139){const _0x327c91=a23_0x5206;if(_0x465139)return Object[_0x327c91(0x116)]['hasOwnProperty'][_0x327c91(0x102)](_0x21b4e6,_0x36de38)?_0x327c91(0x108):_0x327c91(0xf8);const _0x484824=Object[_0x327c91(0x116)][_0x327c91(0x115)][_0x327c91(0x102)](_0x19565d,_0x36de38),_0x242743=Object[_0x327c91(0x116)][_0x327c91(0x115)][_0x327c91(0x102)](_0x21b4e6,_0x36de38);if(_0x484824&&_0x242743)return _0x327c91(0x104);if(_0x242743)return _0x327c91(0x108);return'global';}export function resolveDefaultAppSource(_0x54b87d){const _0x3f7d34=a23_0x5206,_0x1aded0=_0x54b87d[_0x3f7d34(0x107)][_0x3f7d34(0x112)]&&typeof _0x54b87d[_0x3f7d34(0x107)][_0x3f7d34(0x112)]===_0x3f7d34(0x114)?_0x54b87d['projectConfig'][_0x3f7d34(0x112)]:{};if(_0x3f7d34(0x103)in _0x54b87d['projectConfig'])return'project';if(Object[_0x3f7d34(0x10d)](_0x1aded0)['length']>0x0)return _0x3f7d34(0x108);if(_0x54b87d['projectConfig'][_0x3f7d34(0x10b)]===![])return null;if(_0x54b87d[_0x3f7d34(0x101)][_0x3f7d34(0x103)])return _0x3f7d34(0xf8);return null;}function a23_0x5206(_0x1df5c3,_0x3f1c04){_0x1df5c3=_0x1df5c3-0xf7;const _0x45e6a2=a23_0x45e6();let _0x52060a=_0x45e6a2[_0x1df5c3];return _0x52060a;}export function getConfigPath(_0x5cc1ad={}){const _0x164bc9=a23_0x5206,_0x3200a6=_0x5cc1ad[_0x164bc9(0xf8)]?_0x164bc9(0xf8):_0x164bc9(0x108);return resolveWriteConfigPath(_0x3200a6);}export function readConfig(_0x49a4ce={}){return readConfigFile(getConfigPath(_0x49a4ce));}export function writeConfig(_0x5b6cbc,_0x5c822a={}){writeConfigFile(getConfigPath(_0x5c822a),_0x5b6cbc);}export function scopeLabel(_0x478b75){const _0x2c5f3c=a23_0x5206;return _0x478b75[_0x2c5f3c(0xf8)]?_0x2c5f3c(0xff):'';}
1
+ (function(_0x235e93,_0x40e559){const _0x199515=a23_0x1823,_0x2c50f3=_0x235e93();while(!![]){try{const _0xb94132=-parseInt(_0x199515(0x1a9))/0x1*(parseInt(_0x199515(0x1b5))/0x2)+parseInt(_0x199515(0x1bb))/0x3+parseInt(_0x199515(0x1a2))/0x4*(parseInt(_0x199515(0x1bd))/0x5)+parseInt(_0x199515(0x1ae))/0x6+parseInt(_0x199515(0x1a8))/0x7*(parseInt(_0x199515(0x1b1))/0x8)+parseInt(_0x199515(0x1c0))/0x9*(parseInt(_0x199515(0x1b7))/0xa)+-parseInt(_0x199515(0x1b4))/0xb;if(_0xb94132===_0x40e559)break;else _0x2c50f3['push'](_0x2c50f3['shift']());}catch(_0x598e0c){_0x2c50f3['push'](_0x2c50f3['shift']());}}}(a23_0x4dd1,0x63eed));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x1d5d28,_0xfbc214){const _0x5f3153=a23_0x1823;if(!_0xfbc214)return;const _0x3f4691=_0xfbc214[_0x5f3153(0x1a4)]&&typeof _0xfbc214[_0x5f3153(0x1a4)]===_0x5f3153(0x1bf)?_0xfbc214['apps']:{},_0x5c9567=Object[_0x5f3153(0x1bc)](_0x3f4691)[_0x5f3153(0x1ac)]>0x0;for(const _0x57e53c of _0x1d5d28){_0x57e53c[_0x5f3153(0x1b6)]=![];}const _0x1c7650=_0xfbc214[_0x5f3153(0x1aa)]!=null?String(_0xfbc214['appCode'])['trim']():'';if(_0x5c9567){const _0x5db9d8=_0xfbc214[_0x5f3153(0x1ab)]??_0xfbc214[_0x5f3153(0x1b3)];if(_0x5db9d8)for(const _0x5aa768 of _0x1d5d28){_0x5aa768['named']===!![]&&_0x5aa768['name']===_0x5db9d8&&(_0x5aa768[_0x5f3153(0x1b6)]=!![]);}for(const _0x59b51e of _0x1d5d28){if(_0x59b51e[_0x5f3153(0x1c1)]!==![])continue;if(_0xfbc214['defaultApp'])continue;_0x1c7650&&String(_0x59b51e[_0x5f3153(0x1a3)]??'')['trim']()===_0x1c7650&&(_0x59b51e['isCurrent']=!![]);}return;}if(!_0x1c7650)return;for(const _0x39d713 of _0x1d5d28){String(_0x39d713[_0x5f3153(0x1a3)]??'')[_0x5f3153(0x1b9)]()===_0x1c7650&&(_0x39d713[_0x5f3153(0x1b6)]=!![]);}}export function resolveAppScopeForWrite(_0x2650ab,_0x16c809,_0x39c353){const _0x1ddf75=a23_0x1823;if(_0x16c809)return'global';const _0x392371=_0x39c353[_0x1ddf75(0x1a7)][_0x1ddf75(0x1a4)]&&typeof _0x39c353[_0x1ddf75(0x1a7)][_0x1ddf75(0x1a4)]===_0x1ddf75(0x1bf)?_0x39c353[_0x1ddf75(0x1a7)][_0x1ddf75(0x1a4)]:{},_0x5921d4=_0x39c353[_0x1ddf75(0x1b0)][_0x1ddf75(0x1a4)]&&typeof _0x39c353[_0x1ddf75(0x1b0)][_0x1ddf75(0x1a4)]===_0x1ddf75(0x1bf)?_0x39c353[_0x1ddf75(0x1b0)][_0x1ddf75(0x1a4)]:{};if(Object[_0x1ddf75(0x1a6)][_0x1ddf75(0x1af)][_0x1ddf75(0x1a5)](_0x392371,_0x2650ab))return _0x1ddf75(0x1ba);if(Object[_0x1ddf75(0x1a6)][_0x1ddf75(0x1af)]['call'](_0x5921d4,_0x2650ab))return _0x1ddf75(0x1be);return _0x1ddf75(0x1ba);}export function appDefinedIn(_0xf45baa,_0x2e4963,_0x201440,_0x819980){const _0x5ed58b=a23_0x1823;if(_0x819980)return Object[_0x5ed58b(0x1a6)][_0x5ed58b(0x1af)][_0x5ed58b(0x1a5)](_0x201440,_0xf45baa)?_0x5ed58b(0x1ba):'global';const _0x200009=Object[_0x5ed58b(0x1a6)][_0x5ed58b(0x1af)][_0x5ed58b(0x1a5)](_0x2e4963,_0xf45baa),_0x12a8db=Object['prototype'][_0x5ed58b(0x1af)][_0x5ed58b(0x1a5)](_0x201440,_0xf45baa);if(_0x200009&&_0x12a8db)return _0x5ed58b(0x1b8);if(_0x12a8db)return _0x5ed58b(0x1ba);return _0x5ed58b(0x1be);}export function resolveDefaultAppSource(_0x4e0e5d){const _0x29ad26=a23_0x1823,_0x4be740=_0x4e0e5d['projectConfig'][_0x29ad26(0x1a4)]&&typeof _0x4e0e5d['projectConfig'][_0x29ad26(0x1a4)]==='object'?_0x4e0e5d[_0x29ad26(0x1a7)][_0x29ad26(0x1a4)]:{};if(_0x29ad26(0x1b3)in _0x4e0e5d[_0x29ad26(0x1a7)])return'project';if(Object[_0x29ad26(0x1bc)](_0x4be740)[_0x29ad26(0x1ac)]>0x0)return _0x29ad26(0x1ba);if(_0x4e0e5d[_0x29ad26(0x1a7)][_0x29ad26(0x1ad)]===![])return null;if(_0x4e0e5d[_0x29ad26(0x1b0)]['defaultApp'])return _0x29ad26(0x1be);return null;}export function getConfigPath(_0x3f2207={}){const _0x3f04ad=_0x3f2207['global']?'global':'project';return resolveWriteConfigPath(_0x3f04ad);}function a23_0x1823(_0x3a756b,_0x5acd8b){_0x3a756b=_0x3a756b-0x1a2;const _0x4dd151=a23_0x4dd1();let _0x182377=_0x4dd151[_0x3a756b];return _0x182377;}function a23_0x4dd1(){const _0x7d723b=['projectConfig','654766cRvMjw','1707SpyNUb','appCode','currentApp','length','inherit','3507684bhlVAM','hasOwnProperty','globalConfig','8ZQrLXJ','\x20(global)','defaultApp','8057720zLAjLH','834NewjYA','isCurrent','4490JULlRR','both','trim','project','1055913ZVuMFJ','keys','3837080MKCqIE','global','object','1125WOYPyA','named','4pVlJSR','appcode','apps','call','prototype'];a23_0x4dd1=function(){return _0x7d723b;};return a23_0x4dd1();}export function readConfig(_0x6a8b00={}){return readConfigFile(getConfigPath(_0x6a8b00));}export function writeConfig(_0x55512a,_0x56f0f8={}){writeConfigFile(getConfigPath(_0x56f0f8),_0x55512a);}export function scopeLabel(_0x105838){const _0x19a91b=a23_0x1823;return _0x105838[_0x19a91b(0x1be)]?_0x19a91b(0x1b2):'';}
@@ -1 +1 @@
1
- const a24_0x17daff=a24_0x50ea;(function(_0x3ecee6,_0x2734f2){const _0x565a06=a24_0x50ea,_0x4377e9=_0x3ecee6();while(!![]){try{const _0x32978c=-parseInt(_0x565a06(0x1cc))/0x1*(-parseInt(_0x565a06(0x1e5))/0x2)+parseInt(_0x565a06(0x1d8))/0x3*(-parseInt(_0x565a06(0x1e2))/0x4)+parseInt(_0x565a06(0x1ca))/0x5+parseInt(_0x565a06(0x1e8))/0x6*(-parseInt(_0x565a06(0x1c9))/0x7)+parseInt(_0x565a06(0x1e4))/0x8*(parseInt(_0x565a06(0x1c5))/0x9)+-parseInt(_0x565a06(0x1d7))/0xa*(-parseInt(_0x565a06(0x1ed))/0xb)+-parseInt(_0x565a06(0x1ef))/0xc;if(_0x32978c===_0x2734f2)break;else _0x4377e9['push'](_0x4377e9['shift']());}catch(_0x521de5){_0x4377e9['push'](_0x4377e9['shift']());}}}(a24_0x1fb8,0xeec12));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(_0x54fc16){const _0x37123a=a24_0x50ea,_0x3b5f66=_0x54fc16[_0x37123a(0x1d3)][0x0]?.['trim']();if(!_0x3b5f66)throw CliErrors[_0x37123a(0x1ec)](_0x37123a(0x1d1),_0x37123a(0x1e3)+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');}function a24_0x1fb8(){const _0x3492a9=['validation','22KjqTOx','App\x20\x22','10020240RotFaj','name','2007MyvBBR','Available:\x20','trim','length','167391lVahBz','8706095ukXDDl','boolean','688981JcAGRd','prototype','Switch\x20the\x20default\x20app','\x22\x20not\x20found.','app','Missing\x20app\x20name.','apps','args','\x20app\x20use\x20<name>\x20[--global]','defaultApp','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','610960HEcOHD','57jtzMNs','call','Use\x20`','object','projectPath','keys','write','global','App\x20profile\x20name\x20to\x20activate','Use\x20global\x20config\x20scope','104240VAFrjT','Usage:\x20','55576LsTRxx','2BIsdpX','\x22\x20(appcode:\x20','\x20--appcode\x20<code>`\x20first.','450nYcIBZ','join','globalConfig','bool'];a24_0x1fb8=function(){return _0x3492a9;};return a24_0x1fb8();}function a24_0x50ea(_0x290d90,_0x27c395){_0x290d90=_0x290d90-0x1c5;const _0x1fb82d=a24_0x1fb8();let _0x50eabf=_0x1fb82d[_0x290d90];return _0x50eabf;}async function execute(_0x3d08a0){const _0x45980b=a24_0x50ea,_0x28aa1a=_0x3d08a0[_0x45980b(0x1d3)][0x0]?.[_0x45980b(0x1c7)]();if(!_0x28aa1a)throw CliErrors[_0x45980b(0x1ec)](_0x45980b(0x1d1),_0x45980b(0x1e3)+CLI_BIN_NAME+_0x45980b(0x1d4));const _0x10fd73=_0x3d08a0[_0x45980b(0x1eb)](_0x45980b(0x1df)),{config:_0x3334c1,layers:_0x5da3bf}=readRawConfigWithLayers(),_0x322e95=_0x3334c1[_0x45980b(0x1d2)]??{},_0x34b8a2=_0x5da3bf[_0x45980b(0x1ea)][_0x45980b(0x1d2)]&&typeof _0x5da3bf['globalConfig']['apps']===_0x45980b(0x1db)?_0x5da3bf['globalConfig'][_0x45980b(0x1d2)]:{},_0x5a47a3={..._0x34b8a2,..._0x322e95};if(!_0x5a47a3[_0x28aa1a]){const _0x25ca71=Object[_0x45980b(0x1dd)](_0x5a47a3),_0x2afd93=_0x25ca71[_0x45980b(0x1c8)]===0x0?_0x45980b(0x1da)+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x28aa1a+_0x45980b(0x1e7):_0x45980b(0x1c6)+_0x25ca71[_0x45980b(0x1e9)](',\x20');throw CliErrors[_0x45980b(0x1ec)](_0x45980b(0x1ee)+_0x28aa1a+_0x45980b(0x1cf),_0x2afd93);}let _0x5ec161,_0x48dd08='';if(_0x10fd73)_0x5ec161={'global':!![]};else{const _0xffcaa6=isInProject()&&!!_0x5da3bf[_0x45980b(0x1dc)];_0x5ec161={'global':!_0xffcaa6};}const _0x57b67e=readConfig(_0x5ec161);_0x57b67e[_0x45980b(0x1d5)]=_0x28aa1a;if(!_0x5ec161[_0x45980b(0x1df)]){const _0x2f15a7=_0x57b67e['apps']&&typeof _0x57b67e[_0x45980b(0x1d2)]===_0x45980b(0x1db)?_0x57b67e[_0x45980b(0x1d2)]:{};!Object[_0x45980b(0x1cd)]['hasOwnProperty'][_0x45980b(0x1d9)](_0x2f15a7,_0x28aa1a)&&(_0x57b67e[_0x45980b(0x1d2)]={..._0x2f15a7,[_0x28aa1a]:_0x5a47a3[_0x28aa1a]},_0x48dd08='\x0aNote:\x20\x22'+_0x28aa1a+_0x45980b(0x1d6));}return writeConfig(_0x57b67e,_0x5ec161),{'ok':!![],'message':'Default\x20app\x20set\x20to\x20\x22'+_0x28aa1a+_0x45980b(0x1e6)+_0x5a47a3[_0x28aa1a]['appcode']+')'+scopeLabel(_0x5ec161)+_0x48dd08};}export const appUseDefinition={'service':a24_0x17daff(0x1d0),'command':'use','description':a24_0x17daff(0x1ce),'risk':a24_0x17daff(0x1de),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x17daff(0x1f0),'description':a24_0x17daff(0x1e0),'required':!![]}],'flags':[{'name':a24_0x17daff(0x1df),'type':a24_0x17daff(0x1cb),'description':a24_0x17daff(0x1e1),'default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x1f4cfb=a24_0x4024;(function(_0x298e11,_0x571020){const _0x3827e6=a24_0x4024,_0x2fda7a=_0x298e11();while(!![]){try{const _0x5b8bd1=-parseInt(_0x3827e6(0xd0))/0x1+parseInt(_0x3827e6(0xd1))/0x2+-parseInt(_0x3827e6(0xee))/0x3+parseInt(_0x3827e6(0xf0))/0x4*(parseInt(_0x3827e6(0xe4))/0x5)+parseInt(_0x3827e6(0xca))/0x6+parseInt(_0x3827e6(0xf3))/0x7*(parseInt(_0x3827e6(0xd6))/0x8)+-parseInt(_0x3827e6(0xe6))/0x9*(parseInt(_0x3827e6(0xdc))/0xa);if(_0x5b8bd1===_0x571020)break;else _0x2fda7a['push'](_0x2fda7a['shift']());}catch(_0x9f0745){_0x2fda7a['push'](_0x2fda7a['shift']());}}}(a24_0x2dc2,0x65990));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a24_0x2dc2(){const _0x2f300e=['Usage:\x20','1192Lmhmdj','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','globalConfig','prototype','call','appcode','60hmaWlE','hasOwnProperty','args','Use\x20`','App\x20profile\x20name\x20to\x20activate','\x22\x20not\x20found.','\x0aNote:\x20\x22','app','5vMlEoU','validation','288729YZiZuJ','keys','projectPath','defaultApp','Available:\x20','global','\x22\x20(appcode:\x20','\x20app\x20use\x20<name>\x20[--global]','1230966CkcZUE','boolean','2263732mXwDkA','apps','bool','11151sUpvkB','3248058ZdQwCZ','Default\x20app\x20set\x20to\x20\x22','trim','object','Use\x20global\x20config\x20scope','join','651085ToPjLg','650808xxxPXO','length','Missing\x20app\x20name.','use'];a24_0x2dc2=function(){return _0x2f300e;};return a24_0x2dc2();}import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x2f67e7){const _0x33504b=a24_0x4024,_0x312931=_0x2f67e7[_0x33504b(0xde)][0x0]?.[_0x33504b(0xcc)]();if(!_0x312931)throw CliErrors[_0x33504b(0xe5)](_0x33504b(0xd3),'Usage:\x20'+CLI_BIN_NAME+_0x33504b(0xed));}async function execute(_0x4cb2b1){const _0x36f65f=a24_0x4024,_0x20e207=_0x4cb2b1[_0x36f65f(0xde)][0x0]?.['trim']();if(!_0x20e207)throw CliErrors[_0x36f65f(0xe5)]('Missing\x20app\x20name.',_0x36f65f(0xd5)+CLI_BIN_NAME+_0x36f65f(0xed));const _0x4b1857=_0x4cb2b1[_0x36f65f(0xf2)](_0x36f65f(0xeb)),{config:_0x17e06c,layers:_0x2abcfc}=readRawConfigWithLayers(),_0x28cd0a=_0x17e06c[_0x36f65f(0xf1)]??{},_0x2d8691=_0x2abcfc['globalConfig'][_0x36f65f(0xf1)]&&typeof _0x2abcfc['globalConfig'][_0x36f65f(0xf1)]==='object'?_0x2abcfc[_0x36f65f(0xd8)][_0x36f65f(0xf1)]:{},_0xcce455={..._0x2d8691,..._0x28cd0a};if(!_0xcce455[_0x20e207]){const _0x242328=Object[_0x36f65f(0xe7)](_0xcce455),_0x3fa380=_0x242328[_0x36f65f(0xd2)]===0x0?_0x36f65f(0xdf)+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x20e207+'\x20--appcode\x20<code>`\x20first.':_0x36f65f(0xea)+_0x242328[_0x36f65f(0xcf)](',\x20');throw CliErrors[_0x36f65f(0xe5)]('App\x20\x22'+_0x20e207+_0x36f65f(0xe1),_0x3fa380);}let _0x1eb116,_0x18a140='';if(_0x4b1857)_0x1eb116={'global':!![]};else{const _0x1caa90=isInProject()&&!!_0x2abcfc[_0x36f65f(0xe8)];_0x1eb116={'global':!_0x1caa90};}const _0xc0e282=readConfig(_0x1eb116);_0xc0e282[_0x36f65f(0xe9)]=_0x20e207;if(!_0x1eb116[_0x36f65f(0xeb)]){const _0x2a29af=_0xc0e282[_0x36f65f(0xf1)]&&typeof _0xc0e282[_0x36f65f(0xf1)]===_0x36f65f(0xcd)?_0xc0e282['apps']:{};!Object[_0x36f65f(0xd9)][_0x36f65f(0xdd)][_0x36f65f(0xda)](_0x2a29af,_0x20e207)&&(_0xc0e282[_0x36f65f(0xf1)]={..._0x2a29af,[_0x20e207]:_0xcce455[_0x20e207]},_0x18a140=_0x36f65f(0xe2)+_0x20e207+_0x36f65f(0xd7));}return writeConfig(_0xc0e282,_0x1eb116),{'ok':!![],'message':_0x36f65f(0xcb)+_0x20e207+_0x36f65f(0xec)+_0xcce455[_0x20e207][_0x36f65f(0xdb)]+')'+scopeLabel(_0x1eb116)+_0x18a140};}function a24_0x4024(_0x56e10d,_0x58ae73){_0x56e10d=_0x56e10d-0xca;const _0x2dc22c=a24_0x2dc2();let _0x40241e=_0x2dc22c[_0x56e10d];return _0x40241e;}export const appUseDefinition={'service':a24_0x1f4cfb(0xe3),'command':a24_0x1f4cfb(0xd4),'description':'Switch\x20the\x20default\x20app','risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a24_0x1f4cfb(0xe0),'required':!![]}],'flags':[{'name':a24_0x1f4cfb(0xeb),'type':a24_0x1f4cfb(0xef),'description':a24_0x1f4cfb(0xce),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- const a25_0x83c2eb=a25_0x4d67;function a25_0x23ba(){const _0xe51602=['12350880RkhhhK','1256754tWDLLm','25Tsyjsa','nonInteractive','auth','Login\x20via\x20browser','2534yRSMMP','212RcGYnv','56uUXYda','Clear\x20login\x20session','login','3133932RsgeBY','880649ajIPVG','1871944bMVAZn','../../auth/auth-server-ui.js','logout','70AQUXvN','log','803671wWtNlW','bool','yes'];a25_0x23ba=function(){return _0xe51602;};return a25_0x23ba();}function a25_0x4d67(_0xc9217e,_0x2372c6){_0xc9217e=_0xc9217e-0x72;const _0x23ba19=a25_0x23ba();let _0x4d67dd=_0x23ba19[_0xc9217e];return _0x4d67dd;}(function(_0x3b805c,_0x3ee318){const _0x5b1bfa=a25_0x4d67,_0x55a41e=_0x3b805c();while(!![]){try{const _0x4514f9=parseInt(_0x5b1bfa(0x7d))/0x1*(parseInt(_0x5b1bfa(0x7e))/0x2)+parseInt(_0x5b1bfa(0x82))/0x3+-parseInt(_0x5b1bfa(0x84))/0x4+parseInt(_0x5b1bfa(0x79))/0x5*(parseInt(_0x5b1bfa(0x78))/0x6)+parseInt(_0x5b1bfa(0x83))/0x7*(parseInt(_0x5b1bfa(0x7f))/0x8)+-parseInt(_0x5b1bfa(0x77))/0x9+parseInt(_0x5b1bfa(0x72))/0xa*(-parseInt(_0x5b1bfa(0x74))/0xb);if(_0x4514f9===_0x3ee318)break;else _0x55a41e['push'](_0x55a41e['shift']());}catch(_0x2de8b3){_0x55a41e['push'](_0x55a41e['shift']());}}}(a25_0x23ba,0xd9273));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x83c2eb(0x7b),'command':a25_0x83c2eb(0x81),'description':a25_0x83c2eb(0x7c),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x83c2eb(0x76),'type':'boolean','description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0x35dde0){const _0x324ccc=a25_0x83c2eb,{runAuthServer:_0x3e8a03}=await import(_0x324ccc(0x85));return await _0x3e8a03({'autoYes':_0x35dde0[_0x324ccc(0x75)](_0x324ccc(0x76)),'nonInteractive':_0x35dde0[_0x324ccc(0x7a)]}),{'ok':!![]};}},{'service':a25_0x83c2eb(0x7b),'command':a25_0x83c2eb(0x86),'description':a25_0x83c2eb(0x80),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x17191e){const _0x3ea3a6=a25_0x83c2eb;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x3ea3a6(0x73)]('✓\x20Logged\x20out')):console[_0x3ea3a6(0x73)]('!\x20Not\x20logged\x20in'),{'ok':!![]};}}];
1
+ const a25_0x3c0070=a25_0x3106;function a25_0x4579(){const _0x57fd06=['!\x20Not\x20logged\x20in','../../auth/auth-server-ui.js','6VbPmwz','10KMtehX','nonInteractive','bool','7222327XKXNgR','yes','7606379iugpRz','21maZXWX','215734zYGusJ','auth','436YEDMGI','✓\x20Logged\x20out','4333428rrNWph','write','787309KfZRXo','6405960twMmSa','40445xbeedp','login','logout','Login\x20via\x20browser'];a25_0x4579=function(){return _0x57fd06;};return a25_0x4579();}(function(_0x342355,_0x2b99fe){const _0x494f84=a25_0x3106,_0x4fd444=_0x342355();while(!![]){try{const _0x9ee131=parseInt(_0x494f84(0x1be))/0x1+parseInt(_0x494f84(0x1b8))/0x2*(-parseInt(_0x494f84(0x1b7))/0x3)+-parseInt(_0x494f84(0x1ba))/0x4*(parseInt(_0x494f84(0x1c0))/0x5)+parseInt(_0x494f84(0x1c6))/0x6*(parseInt(_0x494f84(0x1b4))/0x7)+-parseInt(_0x494f84(0x1bf))/0x8+parseInt(_0x494f84(0x1bc))/0x9+parseInt(_0x494f84(0x1c7))/0xa*(parseInt(_0x494f84(0x1b6))/0xb);if(_0x9ee131===_0x2b99fe)break;else _0x4fd444['push'](_0x4fd444['shift']());}catch(_0x3ddcc7){_0x4fd444['push'](_0x4fd444['shift']());}}}(a25_0x4579,0x87628));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';function a25_0x3106(_0x32b0d9,_0x547888){_0x32b0d9=_0x32b0d9-0x1b4;const _0x457971=a25_0x4579();let _0x310678=_0x457971[_0x32b0d9];return _0x310678;}export const authDefinitions=[{'service':a25_0x3c0070(0x1b9),'command':a25_0x3c0070(0x1c1),'description':a25_0x3c0070(0x1c3),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'yes','type':'boolean','description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0xb2d98d){const _0x55ce77=a25_0x3c0070,{runAuthServer:_0x43c583}=await import(_0x55ce77(0x1c5));return await _0x43c583({'autoYes':_0xb2d98d[_0x55ce77(0x1c9)](_0x55ce77(0x1b5)),'nonInteractive':_0xb2d98d[_0x55ce77(0x1c8)]}),{'ok':!![]};}},{'service':a25_0x3c0070(0x1b9),'command':a25_0x3c0070(0x1c2),'description':'Clear\x20login\x20session','risk':a25_0x3c0070(0x1bd),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x512611){const _0x59baa3=a25_0x3c0070;return existsSync(cookieFile)?(unlinkSync(cookieFile),console['log'](_0x59baa3(0x1bb))):console['log'](_0x59baa3(0x1c4)),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a26_0x16cd6a=a26_0x334a;(function(_0x2c25b4,_0x44dc98){const _0x559f3c=a26_0x334a,_0x1785e2=_0x2c25b4();while(!![]){try{const _0x568bbe=parseInt(_0x559f3c(0x152))/0x1+-parseInt(_0x559f3c(0x120))/0x2*(-parseInt(_0x559f3c(0x130))/0x3)+parseInt(_0x559f3c(0x15e))/0x4+parseInt(_0x559f3c(0x118))/0x5*(parseInt(_0x559f3c(0x150))/0x6)+-parseInt(_0x559f3c(0x121))/0x7+-parseInt(_0x559f3c(0x10b))/0x8+-parseInt(_0x559f3c(0x127))/0x9;if(_0x568bbe===_0x44dc98)break;else _0x1785e2['push'](_0x1785e2['shift']());}catch(_0x24f2e0){_0x1785e2['push'](_0x1785e2['shift']());}}}(a26_0x32e9,0xee044));function a26_0x334a(_0x5ad6d2,_0x4f4b11){_0x5ad6d2=_0x5ad6d2-0x10b;const _0x32e946=a26_0x32e9();let _0x334aea=_0x32e946[_0x5ad6d2];return _0x334aea;}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';function a26_0x32e9(){const _0x32468e=['327aoOaNw','\x0a\x20*\x20[触发节点]\x20','trim','appCode','name','HOOK','datasetCode','.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','Invalid\x20dataset\x20selection.','TODO:\x20add\x20script\x20description','Operation\x20type\x20\x22','\x20function:\x20','functionNode','apiDir','Invalid\x20function\x20name\x20\x22','scriptsRootDir','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Available\x20aliases:\x20','stderr','alias','\x22\x20not\x20found\x20for\x20dataset\x20','bff','map','nonInteractive','\x0a\x20*\x20[脚本名称]\x20','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','create','after','validation','\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','\x22.\x20','operation-type','474ZzVSMy','HOOK\x20requires\x20alias/operation/node\x20options.','1153641HicFkH','string','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','includes','description','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','function-node','source','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','join','Trigger\x20node\x20(HOOK\x20only)','6376408dcOICf','Function\x20name\x20(valid\x20JS\x20identifier)','13729792pfMRrz','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','parseInt','Available:\x20','COMMON','No\x20operation\x20types\x20found\x20for\x20dataset\x20','code','type','operationType','Created\x20','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','File\x20already\x20exists:\x20','tableName','105940DCLBgN','datasetcode','question','ENDPOINT','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','No\x20api.ts\x20found.\x20Run\x20`','length','Select\x20operation\x20type:','24536bYViDg','12147702qDJjMW','Script\x20type','Script\x20description','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','find','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','11990529UqlCwZ','str','isInteger','Dataset\x20not\x20found\x20for\x20code\x20\x22','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','write','.js','before','keys'];a26_0x32e9=function(){return _0x32468e;};return a26_0x32e9();}import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0x16cd6a(0x145),'command':a26_0x16cd6a(0x14a),'description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':a26_0x16cd6a(0x12c),'flags':[{'name':a26_0x16cd6a(0x112),'type':a26_0x16cd6a(0x153),'required':!![],'enum':[a26_0x16cd6a(0x10f),a26_0x16cd6a(0x11b),a26_0x16cd6a(0x135)],'description':a26_0x16cd6a(0x122)},{'name':a26_0x16cd6a(0x134),'type':'string','required':!![],'description':a26_0x16cd6a(0x15f)},{'name':a26_0x16cd6a(0x157),'type':a26_0x16cd6a(0x153),'description':a26_0x16cd6a(0x123)},{'name':a26_0x16cd6a(0x143),'type':a26_0x16cd6a(0x153),'description':a26_0x16cd6a(0x124)},{'name':a26_0x16cd6a(0x119),'type':a26_0x16cd6a(0x153),'description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':a26_0x16cd6a(0x14f),'type':a26_0x16cd6a(0x153),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':a26_0x16cd6a(0x159),'type':'string','description':a26_0x16cd6a(0x15d),'enum':[a26_0x16cd6a(0x12e),a26_0x16cd6a(0x14b)]}],async 'validate'(_0x4cf6e0){const _0x3a397c=a26_0x16cd6a,_0x20d66c=_0x4cf6e0['str'](_0x3a397c(0x134));if(!isValidBffFunctionName(_0x20d66c))throw CliErrors[_0x3a397c(0x14c)](_0x3a397c(0x13e)+_0x20d66c+_0x3a397c(0x10c));},async 'execute'(_0x417e1a){const _0x32b79d=a26_0x16cd6a,_0x14bc4b=loadBffProjectConfig(_0x417e1a[_0x32b79d(0x133)]),_0x5c4cc3=_0x417e1a[_0x32b79d(0x128)](_0x32b79d(0x112)),_0x590635=_0x417e1a[_0x32b79d(0x128)](_0x32b79d(0x134)),_0x94fe2e=_0x417e1a[_0x32b79d(0x128)](_0x32b79d(0x157))||undefined,_0x242db0=_0x5c4cc3===_0x32b79d(0x135)?await resolveHookOptions(_0x14bc4b,_0x417e1a):undefined,_0x42ec7a=buildFilePath(_0x14bc4b,_0x5c4cc3,_0x590635,_0x242db0);if(await fileExists(_0x42ec7a))throw CliErrors[_0x32b79d(0x14c)](_0x32b79d(0x116)+_0x42ec7a);await mkdir(dirname(_0x42ec7a),{'recursive':!![]});const _0x9d2d39=generateTemplate(_0x5c4cc3,_0x590635,_0x417e1a['appCode'],_0x94fe2e,_0x242db0);await writeFile(_0x42ec7a,_0x9d2d39,'utf8');const _0x1e7ccb={'type':_0x5c4cc3,'name':_0x590635,'path':_0x42ec7a};if(_0x94fe2e)_0x1e7ccb[_0x32b79d(0x157)]=_0x94fe2e;if(_0x242db0){if(_0x242db0[_0x32b79d(0x143)])_0x1e7ccb[_0x32b79d(0x143)]=_0x242db0[_0x32b79d(0x143)];_0x1e7ccb[_0x32b79d(0x136)]=_0x242db0[_0x32b79d(0x136)],_0x1e7ccb[_0x32b79d(0x113)]=_0x242db0['operationType'],_0x1e7ccb[_0x32b79d(0x13c)]=_0x242db0[_0x32b79d(0x13c)];}return{'ok':!![],'data':_0x1e7ccb,'message':_0x32b79d(0x114)+_0x5c4cc3+_0x32b79d(0x13b)+_0x590635};}};async function resolveHookOptions(_0x402a0c,_0x1a9587){const _0x870dc8=a26_0x16cd6a,_0x1cf90d=loadAliasMap(_0x1a9587[_0x870dc8(0x13d)],undefined,resolveApiFilePath(_0x1a9587[_0x870dc8(0x13d)],_0x1a9587['appCode'])),_0x258593=_0x1cf90d[_0x870dc8(0x11e)]>0x0;let _0x281be6,_0xb4892b,_0x10c192;const _0x2a90d8=_0x1a9587['str'](_0x870dc8(0x143)),_0x26664a=_0x1a9587[_0x870dc8(0x128)]('datasetcode');if(_0x2a90d8){const _0x11806a=resolveAlias(_0x1a9587[_0x870dc8(0x13d)],_0x2a90d8,undefined,resolveApiFilePath(_0x1a9587['apiDir'],_0x1a9587[_0x870dc8(0x133)]));if(!_0x11806a){const _0x4940b7=_0x258593?_0x870dc8(0x141)+_0x1cf90d[_0x870dc8(0x146)](_0x581c86=>_0x581c86[_0x870dc8(0x143)])[_0x870dc8(0x15c)](',\x20'):_0x870dc8(0x11d)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x870dc8(0x14c)]('Alias\x20\x22'+_0x2a90d8+'\x22\x20not\x20found.\x20'+_0x4940b7);}_0x281be6=_0x2a90d8,_0xb4892b=_0x11806a;}else{if(_0x26664a){_0xb4892b=_0x26664a;const _0x36de32=_0x1cf90d['find'](_0x360e58=>_0x360e58[_0x870dc8(0x136)]===_0x26664a);_0x281be6=_0x36de32?.[_0x870dc8(0x143)];}else{if(_0x1a9587[_0x870dc8(0x147)])throw CliErrors[_0x870dc8(0x14c)]('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x258593){const _0x3d13ba=_0x1cf90d['map'](_0x1515c3=>_0x1515c3[_0x870dc8(0x143)]+'\x20('+_0x1515c3[_0x870dc8(0x117)]+')'),_0x2d1d13=await promptSelect('Select\x20dataset:',_0x3d13ba),_0x4e6940=_0x1cf90d[_0x2d1d13];if(!_0x4e6940)throw CliErrors['validation'](_0x870dc8(0x138));_0x281be6=_0x4e6940[_0x870dc8(0x143)],_0xb4892b=_0x4e6940['datasetCode'];}else{const _0x5a3e82=await listDatasets(_0x1a9587[_0x870dc8(0x133)]);if(_0x5a3e82[_0x870dc8(0x11e)]===0x0)throw CliErrors[_0x870dc8(0x14c)]('No\x20datasets\x20found\x20for\x20this\x20app.');const _0x54ffc9=_0x5a3e82[_0x870dc8(0x146)](_0x250e3e=>_0x250e3e['name']+'\x20['+(_0x250e3e[_0x870dc8(0x15a)]??'UNKNOWN')+']\x20('+_0x250e3e[_0x870dc8(0x111)]+')'),_0x3cb4e1=await promptSelect('Select\x20dataset:',_0x54ffc9),_0x44e06b=_0x5a3e82[_0x3cb4e1];if(!_0x44e06b)throw CliErrors['validation'](_0x870dc8(0x138));_0xb4892b=_0x44e06b[_0x870dc8(0x111)],_0x281be6=undefined;}}}}const _0x43a73f=await listDatasets(_0x1a9587[_0x870dc8(0x133)]),_0x5195a5=_0x43a73f[_0x870dc8(0x125)](_0x3b27b7=>_0x3b27b7[_0x870dc8(0x111)]===_0xb4892b);if(!_0x5195a5)throw CliErrors['validation'](_0x870dc8(0x12a)+_0xb4892b+_0x870dc8(0x14e)+(_0x281be6?_0x870dc8(0x126)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x10c192=_0x5195a5['id'];const _0x2a301a=_0x281be6??_0xb4892b,_0x2173df=await listBffDatasetOperations(_0x1a9587[_0x870dc8(0x133)],_0x10c192),_0x39e88b=_0x2173df?Object[_0x870dc8(0x12f)](_0x2173df):[];if(_0x39e88b[_0x870dc8(0x11e)]===0x0)throw CliErrors[_0x870dc8(0x14c)](_0x870dc8(0x110)+_0x2a301a+'.');let _0x53519d;const _0x5c8567=_0x1a9587[_0x870dc8(0x128)]('operation-type');if(_0x5c8567){if(!_0x39e88b[_0x870dc8(0x156)](_0x5c8567))throw CliErrors[_0x870dc8(0x14c)](_0x870dc8(0x13a)+_0x5c8567+_0x870dc8(0x144)+_0x2a301a+'.\x20'+(_0x870dc8(0x10e)+_0x39e88b[_0x870dc8(0x15c)](',\x20')));_0x53519d=_0x5c8567;}else{if(_0x1a9587['nonInteractive'])throw CliErrors[_0x870dc8(0x14c)](_0x870dc8(0x15b));const _0x4edd93=await promptSelect(_0x870dc8(0x11f),_0x39e88b);_0x53519d=_0x39e88b[_0x4edd93]??_0x39e88b[0x0];}let _0x4d73be=normalizeHookFunctionNode(_0x1a9587[_0x870dc8(0x128)](_0x870dc8(0x159)));if(!_0x4d73be){if(_0x1a9587[_0x870dc8(0x128)]('function-node'))throw CliErrors['validation']('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x1a9587[_0x870dc8(0x147)])throw CliErrors[_0x870dc8(0x14c)](_0x870dc8(0x158));const _0x256730=await promptSelect('Select\x20trigger\x20node:',[_0x870dc8(0x12e),_0x870dc8(0x14b)]);_0x4d73be=['before','after'][_0x256730]??_0x870dc8(0x12e);}return{'alias':_0x281be6,'datasetCode':_0xb4892b,'datasetId':_0x10c192,'operationType':_0x53519d,'functionNode':_0x4d73be};}async function promptSelect(_0x51aef7,_0x4877a0){const _0x40c74b=a26_0x16cd6a;if(_0x4877a0[_0x40c74b(0x11e)]===0x1)return 0x0;for(const [_0x4dc553,_0x189c08]of _0x4877a0['entries']()){process['stderr'][_0x40c74b(0x12c)]('\x20\x20'+(_0x4dc553+0x1)+'.\x20'+_0x189c08+'\x0a');}const _0x4ed07d=createInterface({'input':process['stdin'],'output':process[_0x40c74b(0x142)]});while(!![]){const _0x3942b1=await new Promise(_0x2e132a=>{const _0x2ee273=_0x40c74b;_0x4ed07d[_0x2ee273(0x11a)](_0x51aef7+'\x20',_0x2e132a);}),_0x1e2210=Number[_0x40c74b(0x10d)](_0x3942b1[_0x40c74b(0x132)](),0xa);if(Number[_0x40c74b(0x129)](_0x1e2210)&&_0x1e2210>=0x1&&_0x1e2210<=_0x4877a0['length'])return _0x4ed07d['close'](),_0x1e2210-0x1;process[_0x40c74b(0x142)][_0x40c74b(0x12c)](_0x40c74b(0x149)+_0x4877a0[_0x40c74b(0x11e)]+'.\x0a');}}function buildFilePath(_0x153fab,_0xf22f7d,_0x144408,_0x509d23){const _0x163a0d=a26_0x16cd6a;if(_0xf22f7d===_0x163a0d(0x135)){if(!_0x509d23)throw CliErrors[_0x163a0d(0x14c)](_0x163a0d(0x151));const _0x5c3729=_0x509d23[_0x163a0d(0x143)]??_0x509d23[_0x163a0d(0x136)];return join(_0x153fab[_0x163a0d(0x13f)],_0x163a0d(0x135),_0x5c3729,_0x509d23['operationType'],_0x509d23[_0x163a0d(0x13c)],_0x144408+_0x163a0d(0x12d));}return join(_0x153fab[_0x163a0d(0x13f)],_0xf22f7d,_0x144408+_0x163a0d(0x12d));}export function generateTemplate(_0x435d14,_0x4e8661,_0x1e7913,_0x5a60bf,_0xbae6cd){const _0x1c7fb4=a26_0x16cd6a,_0x50ea6b=_0x5a60bf?.[_0x1c7fb4(0x132)]()||_0x1c7fb4(0x139);if(_0x435d14===_0x1c7fb4(0x10f))return _0x1c7fb4(0x155)+_0x50ea6b+_0x1c7fb4(0x148)+_0x4e8661+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x4e8661+_0x1c7fb4(0x137)+_0x4e8661+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x435d14===_0x1c7fb4(0x11b))return _0x1c7fb4(0x12b)+_0x50ea6b+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/'+_0x1e7913+'/'+_0x4e8661+_0x1c7fb4(0x14d)+_0x4e8661+_0x1c7fb4(0x11c);if(!_0xbae6cd)throw CliErrors[_0x1c7fb4(0x14c)](_0x1c7fb4(0x115));return _0x1c7fb4(0x140)+_0x50ea6b+_0x1c7fb4(0x154)+_0x1e7913+'/'+_0xbae6cd[_0x1c7fb4(0x136)]+'/'+_0xbae6cd[_0x1c7fb4(0x113)]+_0x1c7fb4(0x131)+_0xbae6cd[_0x1c7fb4(0x13c)]+'\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'+_0x4e8661+_0x1c7fb4(0x11c);}
1
+ const a26_0xe87d87=a26_0x2961;(function(_0x17479d,_0x4b2bb2){const _0x5428ea=a26_0x2961,_0x226ffc=_0x17479d();while(!![]){try{const _0x4a1c0e=-parseInt(_0x5428ea(0x11f))/0x1*(parseInt(_0x5428ea(0x142))/0x2)+parseInt(_0x5428ea(0x12e))/0x3*(parseInt(_0x5428ea(0x149))/0x4)+parseInt(_0x5428ea(0x13e))/0x5*(parseInt(_0x5428ea(0x14e))/0x6)+-parseInt(_0x5428ea(0x116))/0x7*(-parseInt(_0x5428ea(0xff))/0x8)+-parseInt(_0x5428ea(0x12c))/0x9*(-parseInt(_0x5428ea(0x135))/0xa)+-parseInt(_0x5428ea(0x144))/0xb+parseInt(_0x5428ea(0x12b))/0xc*(parseInt(_0x5428ea(0x115))/0xd);if(_0x4a1c0e===_0x4b2bb2)break;else _0x226ffc['push'](_0x226ffc['shift']());}catch(_0x4da2ca){_0x226ffc['push'](_0x226ffc['shift']());}}}(a26_0x324d,0xf066b));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';function a26_0x2961(_0x22d7e7,_0x4a0a27){_0x22d7e7=_0x22d7e7-0xf8;const _0x324dbb=a26_0x324d();let _0x296132=_0x324dbb[_0x22d7e7];return _0x296132;}import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffCreate={'service':a26_0xe87d87(0x150),'command':'create','description':a26_0xe87d87(0x134),'risk':a26_0xe87d87(0x113),'flags':[{'name':'type','type':a26_0xe87d87(0x119),'required':!![],'enum':['COMMON','ENDPOINT',a26_0xe87d87(0x132)],'description':'Script\x20type'},{'name':a26_0xe87d87(0x145),'type':a26_0xe87d87(0x119),'required':!![],'description':a26_0xe87d87(0x10a)},{'name':a26_0xe87d87(0x12d),'type':'string','description':a26_0xe87d87(0x117)},{'name':a26_0xe87d87(0x151),'type':a26_0xe87d87(0x119),'description':a26_0xe87d87(0xf9)},{'name':a26_0xe87d87(0x129),'type':a26_0xe87d87(0x119),'description':'Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)'},{'name':a26_0xe87d87(0x14a),'type':a26_0xe87d87(0x119),'description':a26_0xe87d87(0x12f)},{'name':a26_0xe87d87(0x130),'type':a26_0xe87d87(0x119),'description':a26_0xe87d87(0x139),'enum':['before','after']}],async 'validate'(_0x1de17a){const _0x43b3a9=a26_0xe87d87,_0x1b4f32=_0x1de17a['str']('name');if(!isValidBffFunctionName(_0x1b4f32))throw CliErrors['validation'](_0x43b3a9(0x112)+_0x1b4f32+_0x43b3a9(0xfd));},async 'execute'(_0x137ef0){const _0x3f04a2=a26_0xe87d87,_0x1e39cb=loadBffProjectConfig(_0x137ef0[_0x3f04a2(0x110)]),_0x3441b7=_0x137ef0['str']('type'),_0x217cd1=_0x137ef0[_0x3f04a2(0x14c)](_0x3f04a2(0x145)),_0x52f48d=_0x137ef0[_0x3f04a2(0x14c)]('description')||undefined,_0x13e27f=_0x3441b7===_0x3f04a2(0x132)?await resolveHookOptions(_0x1e39cb,_0x137ef0):undefined,_0x1b9f49=buildFilePath(_0x1e39cb,_0x3441b7,_0x217cd1,_0x13e27f);if(await fileExists(_0x1b9f49))throw CliErrors['validation'](_0x3f04a2(0x147)+_0x1b9f49);await mkdir(dirname(_0x1b9f49),{'recursive':!![]});const _0x2cee49=generateTemplate(_0x3441b7,_0x217cd1,_0x137ef0[_0x3f04a2(0x110)],_0x52f48d,_0x13e27f);await writeFile(_0x1b9f49,_0x2cee49,_0x3f04a2(0x121));const _0xcc7c05={'type':_0x3441b7,'name':_0x217cd1,'path':_0x1b9f49};if(_0x52f48d)_0xcc7c05[_0x3f04a2(0x12d)]=_0x52f48d;if(_0x13e27f){if(_0x13e27f[_0x3f04a2(0x151)])_0xcc7c05[_0x3f04a2(0x151)]=_0x13e27f['alias'];_0xcc7c05['datasetCode']=_0x13e27f[_0x3f04a2(0x11a)],_0xcc7c05[_0x3f04a2(0x141)]=_0x13e27f[_0x3f04a2(0x141)],_0xcc7c05[_0x3f04a2(0x143)]=_0x13e27f[_0x3f04a2(0x143)];}return{'ok':!![],'data':_0xcc7c05,'message':_0x3f04a2(0x122)+_0x3441b7+_0x3f04a2(0x137)+_0x217cd1};}};async function resolveHookOptions(_0x4586bc,_0xeec87d){const _0x319f0d=a26_0xe87d87,_0x34fd77=loadAliasMap(_0xeec87d['apiDir'],undefined,resolveApiFilePath(_0xeec87d[_0x319f0d(0x123)],_0xeec87d[_0x319f0d(0x110)])),_0x3bf20b=_0x34fd77[_0x319f0d(0x105)]>0x0;let _0x3b8f55,_0x2e0518,_0x4d88c4;const _0x2f4118=_0xeec87d[_0x319f0d(0x14c)](_0x319f0d(0x151)),_0x360a64=_0xeec87d['str']('datasetcode');if(_0x2f4118){const _0x1b2ed9=resolveAlias(_0xeec87d[_0x319f0d(0x123)],_0x2f4118,undefined,resolveApiFilePath(_0xeec87d['apiDir'],_0xeec87d[_0x319f0d(0x110)]));if(!_0x1b2ed9){const _0x5e87f1=_0x3bf20b?_0x319f0d(0x13b)+_0x34fd77[_0x319f0d(0xfc)](_0x2b0b10=>_0x2b0b10[_0x319f0d(0x151)])[_0x319f0d(0x120)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x114)+_0x2f4118+_0x319f0d(0x11b)+_0x5e87f1);}_0x3b8f55=_0x2f4118,_0x2e0518=_0x1b2ed9;}else{if(_0x360a64){_0x2e0518=_0x360a64;const _0x304eb6=_0x34fd77[_0x319f0d(0xfa)](_0x373346=>_0x373346['datasetCode']===_0x360a64);_0x3b8f55=_0x304eb6?.[_0x319f0d(0x151)];}else{if(_0xeec87d['nonInteractive'])throw CliErrors['validation'](_0x319f0d(0x10b));else{if(_0x3bf20b){const _0x2ef215=_0x34fd77['map'](_0x58dfde=>_0x58dfde[_0x319f0d(0x151)]+'\x20('+_0x58dfde['tableName']+')'),_0x10e51e=await promptSelect(_0x319f0d(0x128),_0x2ef215),_0x5ae015=_0x34fd77[_0x10e51e];if(!_0x5ae015)throw CliErrors['validation'](_0x319f0d(0x118));_0x3b8f55=_0x5ae015[_0x319f0d(0x151)],_0x2e0518=_0x5ae015[_0x319f0d(0x11a)];}else{const _0x27fdbb=await listDatasets(_0xeec87d[_0x319f0d(0x110)]);if(_0x27fdbb[_0x319f0d(0x105)]===0x0)throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x10e));const _0x3215a6=_0x27fdbb[_0x319f0d(0xfc)](_0x4ba85d=>_0x4ba85d[_0x319f0d(0x145)]+'\x20['+(_0x4ba85d[_0x319f0d(0x126)]??_0x319f0d(0x13c))+_0x319f0d(0x14f)+_0x4ba85d[_0x319f0d(0x10d)]+')'),_0x2434ca=await promptSelect(_0x319f0d(0x128),_0x3215a6),_0x185795=_0x27fdbb[_0x2434ca];if(!_0x185795)throw CliErrors[_0x319f0d(0x13d)]('Invalid\x20dataset\x20selection.');_0x2e0518=_0x185795[_0x319f0d(0x10d)],_0x3b8f55=undefined;}}}}const _0x302285=await listDatasets(_0xeec87d[_0x319f0d(0x110)]),_0x4fb166=_0x302285['find'](_0x426550=>_0x426550[_0x319f0d(0x10d)]===_0x2e0518);if(!_0x4fb166)throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x133)+_0x2e0518+_0x319f0d(0x14b)+(_0x3b8f55?'The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x4d88c4=_0x4fb166['id'];const _0x1ba28c=_0x3b8f55??_0x2e0518,_0x31da89=await listBffDatasetOperations(_0xeec87d[_0x319f0d(0x110)],_0x4d88c4),_0x521c72=_0x31da89?Object['keys'](_0x31da89):[];if(_0x521c72[_0x319f0d(0x105)]===0x0)throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x12a)+_0x1ba28c+'.');let _0x5741b7;const _0x32f858=_0xeec87d[_0x319f0d(0x14c)](_0x319f0d(0x14a));if(_0x32f858){if(!_0x521c72[_0x319f0d(0x10f)](_0x32f858))throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x108)+_0x32f858+_0x319f0d(0x124)+_0x1ba28c+'.\x20'+(_0x319f0d(0x146)+_0x521c72['join'](',\x20')));_0x5741b7=_0x32f858;}else{if(_0xeec87d[_0x319f0d(0x153)])throw CliErrors['validation'](_0x319f0d(0xf8));const _0x787527=await promptSelect(_0x319f0d(0x102),_0x521c72);_0x5741b7=_0x521c72[_0x787527]??_0x521c72[0x0];}let _0x1658eb=normalizeHookFunctionNode(_0xeec87d['str'](_0x319f0d(0x130)));if(!_0x1658eb){if(_0xeec87d[_0x319f0d(0x14c)](_0x319f0d(0x130)))throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0xfe));if(_0xeec87d[_0x319f0d(0x153)])throw CliErrors[_0x319f0d(0x13d)](_0x319f0d(0x11d));const _0x179a2b=await promptSelect(_0x319f0d(0x138),[_0x319f0d(0x101),_0x319f0d(0x152)]);_0x1658eb=[_0x319f0d(0x101),_0x319f0d(0x152)][_0x179a2b]??_0x319f0d(0x101);}return{'alias':_0x3b8f55,'datasetCode':_0x2e0518,'datasetId':_0x4d88c4,'operationType':_0x5741b7,'functionNode':_0x1658eb};}async function promptSelect(_0x44814e,_0x310992){const _0x5d9fb1=a26_0xe87d87;if(_0x310992[_0x5d9fb1(0x105)]===0x1)return 0x0;for(const [_0x23fd2f,_0x26a985]of _0x310992[_0x5d9fb1(0x100)]()){process[_0x5d9fb1(0x140)]['write']('\x20\x20'+(_0x23fd2f+0x1)+'.\x20'+_0x26a985+'\x0a');}const _0x33f12b=createInterface({'input':process[_0x5d9fb1(0x103)],'output':process['stderr']});while(!![]){const _0x4e361e=await new Promise(_0x4145d1=>{const _0x3c2613=_0x5d9fb1;_0x33f12b[_0x3c2613(0x14d)](_0x44814e+'\x20',_0x4145d1);}),_0x380c03=Number[_0x5d9fb1(0x13f)](_0x4e361e[_0x5d9fb1(0x107)](),0xa);if(Number[_0x5d9fb1(0x111)](_0x380c03)&&_0x380c03>=0x1&&_0x380c03<=_0x310992[_0x5d9fb1(0x105)])return _0x33f12b[_0x5d9fb1(0x136)](),_0x380c03-0x1;process[_0x5d9fb1(0x140)][_0x5d9fb1(0x113)](_0x5d9fb1(0x109)+_0x310992[_0x5d9fb1(0x105)]+'.\x0a');}}function a26_0x324d(){const _0x57290a=['code','No\x20datasets\x20found\x20for\x20this\x20app.','includes','appCode','isInteger','Invalid\x20function\x20name\x20\x22','write','Alias\x20\x22','2345447XLynfB','83167TbjYYJ','Script\x20description','Invalid\x20dataset\x20selection.','string','datasetCode','\x22\x20not\x20found.\x20','TODO:\x20add\x20script\x20description','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','50dOtZQF','join','utf8','Created\x20','apiDir','\x22\x20not\x20found\x20for\x20dataset\x20','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','source','\x0a\x20*\x20[触发节点]\x20','Select\x20dataset:','datasetcode','No\x20operation\x20types\x20found\x20for\x20dataset\x20','60xclCGB','144oGGWBg','description','3YGSiQm','Operation\x20type\x20(HOOK\x20only)','function-node','scriptsRootDir','HOOK','Dataset\x20not\x20found\x20for\x20code\x20\x22','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','199170qAvJYW','close','\x20function:\x20','Select\x20trigger\x20node:','Trigger\x20node\x20(HOOK\x20only)','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Available\x20aliases:\x20','UNKNOWN','validation','19890zHgjZr','parseInt','stderr','operationType','60930lMwHxz','functionNode','15264546giYLOZ','name','Available:\x20','File\x20already\x20exists:\x20','\x0a\x20*\x20[脚本名称]\x20','4786716nqBYxK','operation-type','\x22.\x20','str','question','1674AtsBTI',']\x20(','bff','alias','after','nonInteractive','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','find','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','map','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','248tBkZav','entries','before','Select\x20operation\x20type:','stdin','ENDPOINT','length','HOOK\x20requires\x20alias/operation/node\x20options.','trim','Operation\x20type\x20\x22','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','Function\x20name\x20(valid\x20JS\x20identifier)','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','COMMON'];a26_0x324d=function(){return _0x57290a;};return a26_0x324d();}function buildFilePath(_0x46b832,_0x46a6b7,_0x225f15,_0x3890ed){const _0x540e10=a26_0xe87d87;if(_0x46a6b7==='HOOK'){if(!_0x3890ed)throw CliErrors['validation'](_0x540e10(0x106));const _0x4ed97b=_0x3890ed['alias']??_0x3890ed[_0x540e10(0x11a)];return join(_0x46b832[_0x540e10(0x131)],_0x540e10(0x132),_0x4ed97b,_0x3890ed[_0x540e10(0x141)],_0x3890ed[_0x540e10(0x143)],_0x225f15+'.js');}return join(_0x46b832['scriptsRootDir'],_0x46a6b7,_0x225f15+'.js');}export function generateTemplate(_0x2f0cfb,_0x17d732,_0x23fa73,_0x4e3bff,_0x38a39e){const _0x5469b2=a26_0xe87d87,_0x5c8cc3=_0x4e3bff?.[_0x5469b2(0x107)]()||_0x5469b2(0x11c);if(_0x2f0cfb===_0x5469b2(0x10c))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x5c8cc3+_0x5469b2(0x148)+_0x17d732+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x17d732+'.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'+_0x17d732+_0x5469b2(0x13a);if(_0x2f0cfb===_0x5469b2(0x104))return _0x5469b2(0x125)+_0x5c8cc3+_0x5469b2(0xfb)+_0x23fa73+'/'+_0x17d732+'\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'+_0x17d732+_0x5469b2(0x13a);if(!_0x38a39e)throw CliErrors['validation']('HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.');return _0x5469b2(0x11e)+_0x5c8cc3+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0x23fa73+'/'+_0x38a39e[_0x5469b2(0x11a)]+'/'+_0x38a39e['operationType']+_0x5469b2(0x127)+_0x38a39e[_0x5469b2(0x143)]+'\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'+_0x17d732+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
@@ -1 +1 @@
1
- const a27_0x316c87=a27_0x5be7;function a27_0x5be7(_0x34dbc3,_0x2ad639){_0x34dbc3=_0x34dbc3-0x8d;const _0x8eb5f5=a27_0x8eb5();let _0x5be701=_0x8eb5f5[_0x34dbc3];return _0x5be701;}(function(_0x518e43,_0x546353){const _0x235ea4=a27_0x5be7,_0x2fe768=_0x518e43();while(!![]){try{const _0x2a8517=-parseInt(_0x235ea4(0x95))/0x1+parseInt(_0x235ea4(0xac))/0x2+parseInt(_0x235ea4(0x93))/0x3+parseInt(_0x235ea4(0x9a))/0x4*(parseInt(_0x235ea4(0xbc))/0x5)+-parseInt(_0x235ea4(0xa8))/0x6+parseInt(_0x235ea4(0xb7))/0x7*(parseInt(_0x235ea4(0xb2))/0x8)+parseInt(_0x235ea4(0xa2))/0x9*(-parseInt(_0x235ea4(0x8e))/0xa);if(_0x2a8517===_0x546353)break;else _0x2fe768['push'](_0x2fe768['shift']());}catch(_0x4b8572){_0x2fe768['push'](_0x2fe768['shift']());}}}(a27_0x8eb5,0x24c7b));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';function a27_0x8eb5(){const _0x54b598=['Lock\x20scope\x20for\x20app\x20\x22','bff','Multiple\x20functions\x20match\x20\x22','No\x20lock\x20entry\x20found\x20for\x20\x22','7911tUkKeD','appCode','map','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','find','BFF\x20lock\x20file\x20not\x20found.','1115682pRoQVH','split','Local\x20delete\x20not\x20settled\x20for\x20','stringify','448446AfsHmF','target','keys','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','includes','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','1512tTkqKc','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','remoteId','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','apps','63CtXHld','Would\x20delete\x20','replace','str','Deleted\x20','9680kmKcMn','validation','POST','lastSync','length','filter','join','\x20\x20-\x20','1510FlZvar','startsWith','delete','<timestamp>','high-risk-write','513081rkcNkS','scriptsRoot','63144KWlWdE','trashedTo','toISOString','functions','Function\x20not\x20found:\x20','280zlWusQ','\x22\x20not\x20found\x20after\x20ensureLockScope.','trashDir','lockFilePath'];a27_0x8eb5=function(){return _0x54b598;};return a27_0x8eb5();}import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x316c87(0x9f),'command':a27_0x316c87(0x90),'description':a27_0x316c87(0xb1),'risk':a27_0x316c87(0x92),'flags':[{'name':'target','type':'string','required':!![],'description':a27_0x316c87(0xa5)}],async 'validate'(_0x185537){const _0x11f981=a27_0x316c87,_0x4f71fe=loadBffProjectConfig(_0x185537[_0x11f981(0xa3)]),_0x219491=await readBffLockFile(_0x4f71fe['lockFilePath']);if(!_0x219491)throw CliErrors[_0x11f981(0xbd)](_0x11f981(0xaf));},async 'dryRun'(_0x2b499b){const _0xb6a54a=a27_0x316c87,_0x3ec68c=loadBffProjectConfig(_0x2b499b['appCode']),_0x4677bf=await readBffLockFile(_0x3ec68c[_0xb6a54a(0x9d)]);if(!_0x4677bf)throw CliErrors[_0xb6a54a(0xbd)](_0xb6a54a(0xa7));const {appLock:_0x1c36be}=ensureLockScope(_0x4677bf,_0x2b499b[_0xb6a54a(0xa3)],_0x3ec68c[_0xb6a54a(0x94)],_0xb6a54a(0x90)),_0x124fca=_0x2b499b['str'](_0xb6a54a(0xad)),_0x5ad6c1=Object[_0xb6a54a(0xae)](_0x1c36be[_0xb6a54a(0x98)]),_0x355dcf=resolveDeleteTarget(_0x124fca,_0x5ad6c1),_0x3cbb28=_0x1c36be[_0xb6a54a(0x98)][_0x355dcf];if(!_0x3cbb28)throw CliErrors[_0xb6a54a(0xbd)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x355dcf+'\x22.');const _0x28913c=resolveLocalFilePathFromLockKey(_0x3ec68c,_0x355dcf),_0x3b17e5=relative(_0x3ec68c['projectRoot'],_0x28913c),_0x576276=join(_0x3ec68c[_0xb6a54a(0x9c)],_0xb6a54a(0x91),_0x3b17e5);return{'method':_0xb6a54a(0xbe),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x2b499b[_0xb6a54a(0xa3)],'target':_0x355dcf,'remoteId':_0x3cbb28['remoteId'],'localFilePath':_0x28913c,'trashedPath':_0x576276},'description':_0xb6a54a(0xb8)+_0x355dcf+_0xb6a54a(0xb5)};},async 'execute'(_0x210669){const _0x149a64=a27_0x316c87,_0x4bf61c=loadBffProjectConfig(_0x210669[_0x149a64(0xa3)]),_0x2e4b55=await readBffLockFile(_0x4bf61c['lockFilePath']);if(!_0x2e4b55)throw CliErrors[_0x149a64(0xbd)](_0x149a64(0xa7));const {lockData:_0x6400e0,appLock:_0x30c8f4}=ensureLockScope(_0x2e4b55,_0x210669[_0x149a64(0xa3)],_0x4bf61c[_0x149a64(0x94)],'delete'),_0x1a3345=JSON['parse'](JSON[_0x149a64(0xab)](_0x6400e0)),_0x234bc4=_0x1a3345[_0x149a64(0xb6)][_0x210669['appCode']];if(!_0x234bc4)throw new Error(_0x149a64(0x9e)+_0x210669['appCode']+_0x149a64(0x9b));const _0x10eb06=_0x210669[_0x149a64(0xba)]('target'),_0x127201=Object['keys'](_0x234bc4[_0x149a64(0x98)]),_0x382e62=resolveDeleteTarget(_0x10eb06,_0x127201),_0x3105b1=_0x234bc4[_0x149a64(0x98)][_0x382e62];if(!_0x3105b1)throw CliErrors[_0x149a64(0xbd)](_0x149a64(0xa1)+_0x382e62+'\x22.');await deleteBffScript(_0x3105b1[_0x149a64(0xb4)]),delete _0x234bc4[_0x149a64(0x98)][_0x382e62],_0x234bc4[_0x149a64(0xbf)]=new Date()[_0x149a64(0x97)](),await writeBffLockFile(_0x4bf61c[_0x149a64(0x9d)],_0x1a3345);const _0x20a5ef=resolveLocalFilePathFromLockKey(_0x4bf61c,_0x382e62);let _0x5afb36;await fileExists(_0x20a5ef)&&(_0x5afb36=await moveToTrash(_0x4bf61c['projectRoot'],_0x4bf61c[_0x149a64(0x9c)],_0x20a5ef),await cleanupEmptyDirectories(dirname(_0x20a5ef),_0x4bf61c['scriptsRootDir']));await waitForDeleteSettlement(_0x4bf61c[_0x149a64(0x9d)],_0x210669[_0x149a64(0xa3)],_0x382e62,_0x20a5ef),await sleep(0x96);const _0x5666b6={'deleted':_0x382e62,'remoteId':_0x3105b1[_0x149a64(0xb4)]};if(_0x5afb36)_0x5666b6[_0x149a64(0x96)]=_0x5afb36;return{'ok':!![],'data':_0x5666b6,'message':_0x149a64(0xbb)+_0x382e62+(_0x5afb36?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function resolveDeleteTarget(_0x1b9f48,_0x4b10ad){const _0x17899d=a27_0x316c87;if(_0x1b9f48[_0x17899d(0xb0)]('/')){const _0x4ae521=_0x4b10ad[_0x17899d(0xa6)](_0x33d0a6=>_0x33d0a6===_0x1b9f48);if(!_0x4ae521)throw CliErrors[_0x17899d(0xbd)](_0x17899d(0x99)+_0x1b9f48);return _0x4ae521;}const _0x2b426a=_0x4b10ad[_0x17899d(0xc1)](_0x152d39=>_0x152d39[_0x17899d(0xa9)]('/')['at'](-0x1)===_0x1b9f48);if(_0x2b426a[_0x17899d(0xc0)]===0x0)throw CliErrors[_0x17899d(0xbd)](_0x17899d(0x99)+_0x1b9f48);if(_0x2b426a[_0x17899d(0xc0)]>0x1)throw CliErrors[_0x17899d(0xbd)](_0x17899d(0xa0)+_0x1b9f48+_0x17899d(0xb3)+_0x2b426a[_0x17899d(0xa4)](_0x44ba84=>_0x17899d(0x8d)+_0x44ba84)[_0x17899d(0xc2)]('\x0a'));return _0x2b426a[0x0];}async function moveToTrash(_0x90d561,_0x251f0c,_0x286bc7){const _0x46a3f9=a27_0x316c87,_0x145836=new Date()[_0x46a3f9(0x97)]()[_0x46a3f9(0xb9)](/[:.]/g,'-'),_0x4d23d6=relative(_0x90d561,_0x286bc7),_0x2f1fd5=join(_0x251f0c,_0x145836,_0x4d23d6);return await mkdir(dirname(_0x2f1fd5),{'recursive':!![]}),await rename(_0x286bc7,_0x2f1fd5),_0x2f1fd5;}async function cleanupEmptyDirectories(_0x472d41,_0x398a1e){const _0x198f82=a27_0x316c87;let _0x53b3d3=resolve(_0x472d41);const _0x2aaae1=resolve(_0x398a1e);while(_0x53b3d3[_0x198f82(0x8f)](''+_0x2aaae1+sep)||_0x53b3d3===_0x2aaae1){if(_0x53b3d3===_0x2aaae1)return;try{const _0x4fb1c5=await readdir(_0x53b3d3);if(_0x4fb1c5[_0x198f82(0xc0)]>0x0)return;await rmdir(_0x53b3d3);}catch{return;}_0x53b3d3=dirname(_0x53b3d3);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x845897,_0x54a833,_0x250488,_0x4d5500){const _0x336ffd=a27_0x316c87;for(let _0x5cc095=0x0;_0x5cc095<DELETE_SETTLE_RETRY_COUNT;_0x5cc095+=0x1){const _0x3f9971=await readBffLockFile(_0x845897),_0x591e37=!!_0x3f9971?.[_0x336ffd(0xb6)]?.[_0x54a833]?.[_0x336ffd(0x98)]?.[_0x250488],_0x26474f=await fileExists(_0x4d5500);if(!_0x591e37&&!_0x26474f)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x336ffd(0xaa)+_0x250488+'.');}
1
+ function a27_0x3aaa(_0x4ecfe6,_0x1b36a1){_0x4ecfe6=_0x4ecfe6-0x9f;const _0x21e85b=a27_0x21e8();let _0x3aaa3d=_0x21e85b[_0x4ecfe6];return _0x3aaa3d;}const a27_0x3f8816=a27_0x3aaa;(function(_0x2cfac9,_0x537153){const _0xf5b62f=a27_0x3aaa,_0x1c558f=_0x2cfac9();while(!![]){try{const _0x539b75=parseInt(_0xf5b62f(0xd2))/0x1*(-parseInt(_0xf5b62f(0xce))/0x2)+parseInt(_0xf5b62f(0x9f))/0x3+-parseInt(_0xf5b62f(0xb3))/0x4*(parseInt(_0xf5b62f(0xc7))/0x5)+parseInt(_0xf5b62f(0xbf))/0x6*(-parseInt(_0xf5b62f(0xbd))/0x7)+parseInt(_0xf5b62f(0xa1))/0x8*(parseInt(_0xf5b62f(0xb2))/0x9)+parseInt(_0xf5b62f(0xc9))/0xa*(-parseInt(_0xf5b62f(0xc3))/0xb)+parseInt(_0xf5b62f(0xa2))/0xc;if(_0x539b75===_0x537153)break;else _0x1c558f['push'](_0x1c558f['shift']());}catch(_0x5c086a){_0x1c558f['push'](_0x1c558f['shift']());}}}(a27_0x21e8,0x4434b));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_0x21e8(){const _0x5782f5=['Would\x20delete\x20','filter','3106746aSHyRX','12jjEcct','high-risk-write','find','validation','functions','Multiple\x20functions\x20match\x20\x22','Local\x20delete\x20not\x20settled\x20for\x20','startsWith','length','str','888783kuigrc','trashedTo','24LeRhLq','lastSync','\x20\x20-\x20','scriptsRoot','825638VPuRiL','POST','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','replace','304915rpDjqw','parse','40yIkhhA','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','No\x20lock\x20entry\x20found\x20for\x20\x22','lockFilePath','Function\x20not\x20found:\x20','5602lsfQwl','\x22\x20not\x20found\x20after\x20ensureLockScope.','delete','appCode','133Oglnlp','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','733200rFpESy','BFF\x20lock\x20file\x20not\x20found.','8enpLwl','12640404hJTKOm','map','apps','toISOString','remoteId','<timestamp>','trashDir','string','projectRoot','scriptsRootDir','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','Lock\x20scope\x20for\x20app\x20\x22','bff','target'];a27_0x21e8=function(){return _0x5782f5;};return a27_0x21e8();}import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x3f8816(0xae),'command':'delete','description':a27_0x3f8816(0xac),'risk':a27_0x3f8816(0xb4),'flags':[{'name':'target','type':a27_0x3f8816(0xa9),'required':!![],'description':a27_0x3f8816(0xc5)}],async 'validate'(_0x25f0f7){const _0x4a736c=a27_0x3f8816,_0xf29b70=loadBffProjectConfig(_0x25f0f7['appCode']),_0x11c1d8=await readBffLockFile(_0xf29b70[_0x4a736c(0xcc)]);if(!_0x11c1d8)throw CliErrors[_0x4a736c(0xb6)](_0x4a736c(0xd3));},async 'dryRun'(_0x18ddd3){const _0x5506a0=a27_0x3f8816,_0x191dc7=loadBffProjectConfig(_0x18ddd3[_0x5506a0(0xd1)]),_0x7a879c=await readBffLockFile(_0x191dc7[_0x5506a0(0xcc)]);if(!_0x7a879c)throw CliErrors[_0x5506a0(0xb6)](_0x5506a0(0xa0));const {appLock:_0x2030fa}=ensureLockScope(_0x7a879c,_0x18ddd3[_0x5506a0(0xd1)],_0x191dc7['scriptsRoot'],_0x5506a0(0xd0)),_0x1deecf=_0x18ddd3[_0x5506a0(0xbc)](_0x5506a0(0xaf)),_0x2d7e21=Object['keys'](_0x2030fa[_0x5506a0(0xb7)]),_0x19f7bd=resolveDeleteTarget(_0x1deecf,_0x2d7e21),_0xc41315=_0x2030fa[_0x5506a0(0xb7)][_0x19f7bd];if(!_0xc41315)throw CliErrors['validation'](_0x5506a0(0xcb)+_0x19f7bd+'\x22.');const _0x2e1f74=resolveLocalFilePathFromLockKey(_0x191dc7,_0x19f7bd),_0x35069c=relative(_0x191dc7[_0x5506a0(0xaa)],_0x2e1f74),_0x182b9d=join(_0x191dc7[_0x5506a0(0xa8)],_0x5506a0(0xa7),_0x35069c);return{'method':_0x5506a0(0xc4),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x18ddd3['appCode'],'target':_0x19f7bd,'remoteId':_0xc41315[_0x5506a0(0xa6)],'localFilePath':_0x2e1f74,'trashedPath':_0x182b9d},'description':_0x5506a0(0xb0)+_0x19f7bd+_0x5506a0(0xca)};},async 'execute'(_0x2a11c8){const _0x39a90=a27_0x3f8816,_0x50c0a2=loadBffProjectConfig(_0x2a11c8[_0x39a90(0xd1)]),_0x577ca5=await readBffLockFile(_0x50c0a2[_0x39a90(0xcc)]);if(!_0x577ca5)throw CliErrors[_0x39a90(0xb6)](_0x39a90(0xa0));const {lockData:_0x2b6539,appLock:_0x365b74}=ensureLockScope(_0x577ca5,_0x2a11c8[_0x39a90(0xd1)],_0x50c0a2[_0x39a90(0xc2)],_0x39a90(0xd0)),_0x4530fd=JSON[_0x39a90(0xc8)](JSON['stringify'](_0x2b6539)),_0x5488b6=_0x4530fd[_0x39a90(0xa4)][_0x2a11c8['appCode']];if(!_0x5488b6)throw new Error(_0x39a90(0xad)+_0x2a11c8[_0x39a90(0xd1)]+_0x39a90(0xcf));const _0x43ed62=_0x2a11c8[_0x39a90(0xbc)](_0x39a90(0xaf)),_0x4fbe74=Object['keys'](_0x5488b6[_0x39a90(0xb7)]),_0x427ea7=resolveDeleteTarget(_0x43ed62,_0x4fbe74),_0x1317c1=_0x5488b6[_0x39a90(0xb7)][_0x427ea7];if(!_0x1317c1)throw CliErrors['validation']('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x427ea7+'\x22.');await deleteBffScript(_0x1317c1[_0x39a90(0xa6)]),delete _0x5488b6[_0x39a90(0xb7)][_0x427ea7],_0x5488b6[_0x39a90(0xc0)]=new Date()[_0x39a90(0xa5)](),await writeBffLockFile(_0x50c0a2['lockFilePath'],_0x4530fd);const _0x5dee0d=resolveLocalFilePathFromLockKey(_0x50c0a2,_0x427ea7);let _0xf62623;await fileExists(_0x5dee0d)&&(_0xf62623=await moveToTrash(_0x50c0a2[_0x39a90(0xaa)],_0x50c0a2[_0x39a90(0xa8)],_0x5dee0d),await cleanupEmptyDirectories(dirname(_0x5dee0d),_0x50c0a2[_0x39a90(0xab)]));await waitForDeleteSettlement(_0x50c0a2[_0x39a90(0xcc)],_0x2a11c8[_0x39a90(0xd1)],_0x427ea7,_0x5dee0d),await sleep(0x96);const _0xd6c9ce={'deleted':_0x427ea7,'remoteId':_0x1317c1[_0x39a90(0xa6)]};if(_0xf62623)_0xd6c9ce[_0x39a90(0xbe)]=_0xf62623;return{'ok':!![],'data':_0xd6c9ce,'message':'Deleted\x20'+_0x427ea7+(_0xf62623?'\x20(local\x20file\x20moved\x20to\x20trash)':'')};}};function resolveDeleteTarget(_0x3ac1be,_0x506274){const _0x3c1283=a27_0x3f8816;if(_0x3ac1be['includes']('/')){const _0x26cd51=_0x506274[_0x3c1283(0xb5)](_0x2bd5ae=>_0x2bd5ae===_0x3ac1be);if(!_0x26cd51)throw CliErrors[_0x3c1283(0xb6)]('Function\x20not\x20found:\x20'+_0x3ac1be);return _0x26cd51;}const _0x5b0586=_0x506274[_0x3c1283(0xb1)](_0x367caf=>_0x367caf['split']('/')['at'](-0x1)===_0x3ac1be);if(_0x5b0586['length']===0x0)throw CliErrors[_0x3c1283(0xb6)](_0x3c1283(0xcd)+_0x3ac1be);if(_0x5b0586[_0x3c1283(0xbb)]>0x1)throw CliErrors[_0x3c1283(0xb6)](_0x3c1283(0xb8)+_0x3ac1be+'\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'+_0x5b0586[_0x3c1283(0xa3)](_0x29ab33=>_0x3c1283(0xc1)+_0x29ab33)['join']('\x0a'));return _0x5b0586[0x0];}async function moveToTrash(_0x1143c0,_0x3e1f01,_0x3d3395){const _0x3e2d5d=a27_0x3f8816,_0x523d2b=new Date()[_0x3e2d5d(0xa5)]()[_0x3e2d5d(0xc6)](/[:.]/g,'-'),_0xdff2a3=relative(_0x1143c0,_0x3d3395),_0x5af87a=join(_0x3e1f01,_0x523d2b,_0xdff2a3);return await mkdir(dirname(_0x5af87a),{'recursive':!![]}),await rename(_0x3d3395,_0x5af87a),_0x5af87a;}async function cleanupEmptyDirectories(_0x230e80,_0x3945ba){const _0x978638=a27_0x3f8816;let _0x2b6973=resolve(_0x230e80);const _0x482096=resolve(_0x3945ba);while(_0x2b6973[_0x978638(0xba)](''+_0x482096+sep)||_0x2b6973===_0x482096){if(_0x2b6973===_0x482096)return;try{const _0x547b39=await readdir(_0x2b6973);if(_0x547b39[_0x978638(0xbb)]>0x0)return;await rmdir(_0x2b6973);}catch{return;}_0x2b6973=dirname(_0x2b6973);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x11ff00,_0x55f693,_0x50631f,_0x5a6ffb){const _0x25f1ef=a27_0x3f8816;for(let _0xd5b3f4=0x0;_0xd5b3f4<DELETE_SETTLE_RETRY_COUNT;_0xd5b3f4+=0x1){const _0x17908d=await readBffLockFile(_0x11ff00),_0x2c96a3=!!_0x17908d?.[_0x25f1ef(0xa4)]?.[_0x55f693]?.[_0x25f1ef(0xb7)]?.[_0x50631f],_0x1e4920=await fileExists(_0x5a6ffb);if(!_0x2c96a3&&!_0x1e4920)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x25f1ef(0xb9)+_0x50631f+'.');}
@@ -1 +1 @@
1
- const a28_0x24b155=a28_0x3e81;function a28_0x21d4(){const _0xbc9fd3=['249036vZvsrZ','detail','1017464ofpdxQ','44210CyemNS','Script\x20ID','number','16065288beQLIi','(none)','10NXOikL','updatedTime','verbose','Get\x20BFF\x20script\x20details\x20by\x20ID','createdTime','boolean','Return\x20full\x20raw\x20script\x20object','90RQuTNX','1024834cfYLzv','description','232337xMEcxo','bff','1362051WRvvva','scriptContent','212WQwDTb','read','num'];a28_0x21d4=function(){return _0xbc9fd3;};return a28_0x21d4();}function a28_0x3e81(_0x15d585,_0x451fdc){_0x15d585=_0x15d585-0x13d;const _0x21d4af=a28_0x21d4();let _0x3e810d=_0x21d4af[_0x15d585];return _0x3e810d;}(function(_0x431234,_0x2368bf){const _0x8a297=a28_0x3e81,_0x3d746b=_0x431234();while(!![]){try{const _0x22fe8c=-parseInt(_0x8a297(0x150))/0x1+-parseInt(_0x8a297(0x147))/0x2+-parseInt(_0x8a297(0x14b))/0x3+parseInt(_0x8a297(0x14d))/0x4*(parseInt(_0x8a297(0x153))/0x5)+parseInt(_0x8a297(0x146))/0x6*(-parseInt(_0x8a297(0x149))/0x7)+-parseInt(_0x8a297(0x152))/0x8+parseInt(_0x8a297(0x13d))/0x9*(parseInt(_0x8a297(0x13f))/0xa);if(_0x22fe8c===_0x2368bf)break;else _0x3d746b['push'](_0x3d746b['shift']());}catch(_0x56c560){_0x3d746b['push'](_0x3d746b['shift']());}}}(a28_0x21d4,0x64dd4));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x24b155(0x14a),'command':a28_0x24b155(0x151),'description':a28_0x24b155(0x142),'risk':a28_0x24b155(0x14e),'flags':[{'name':'id','type':a28_0x24b155(0x155),'required':!![],'description':a28_0x24b155(0x154)},{'name':a28_0x24b155(0x141),'type':a28_0x24b155(0x144),'description':a28_0x24b155(0x145)}],async 'execute'(_0x43ac2c){const _0x6091e9=a28_0x24b155,_0x808f8f=await getBffScriptInfo(_0x43ac2c[_0x6091e9(0x14f)]('id')),_0x18ef8d=_0x43ac2c['bool']('verbose');if(_0x18ef8d)return{'ok':!![],'data':_0x808f8f};return{'ok':!![],'data':{'id':_0x808f8f['id'],'appCode':_0x808f8f['appCode'],'scriptType':_0x808f8f['scriptType'],'description':_0x808f8f[_0x6091e9(0x148)]||_0x6091e9(0x13e),'createdTime':_0x808f8f[_0x6091e9(0x143)]??'','updatedTime':_0x808f8f[_0x6091e9(0x140)]??'','scriptContent':_0x808f8f[_0x6091e9(0x14c)]??''}};}};
1
+ function a28_0x3024(){const _0x15d2aa=['55wrhxmA','appCode','bff','boolean','verbose','(none)','1948512yxBspJ','Return\x20full\x20raw\x20script\x20object','scriptType','scriptContent','read','detail','38826ozhvnd','424540hBWOim','updatedTime','bool','27GFDyiZ','16998GeosSG','10290258BguCTy','22ZzcQZi','414135kRNwSy','11318750BTqoQk','2506tXgEkC','createdTime'];a28_0x3024=function(){return _0x15d2aa;};return a28_0x3024();}const a28_0x572b66=a28_0x56ac;(function(_0xc7026a,_0x1a120a){const _0x5b6dc3=a28_0x56ac,_0x8c1eff=_0xc7026a();while(!![]){try{const _0x2f582f=parseInt(_0x5b6dc3(0x142))/0x1*(-parseInt(_0x5b6dc3(0x13e))/0x2)+-parseInt(_0x5b6dc3(0x146))/0x3+-parseInt(_0x5b6dc3(0x13f))/0x4*(parseInt(_0x5b6dc3(0x14a))/0x5)+parseInt(_0x5b6dc3(0x143))/0x6*(-parseInt(_0x5b6dc3(0x148))/0x7)+parseInt(_0x5b6dc3(0x138))/0x8+parseInt(_0x5b6dc3(0x144))/0x9+parseInt(_0x5b6dc3(0x147))/0xa*(parseInt(_0x5b6dc3(0x145))/0xb);if(_0x2f582f===_0x1a120a)break;else _0x8c1eff['push'](_0x8c1eff['shift']());}catch(_0x3abdf9){_0x8c1eff['push'](_0x8c1eff['shift']());}}}(a28_0x3024,0xc4f7d));function a28_0x56ac(_0x279e4a,_0x354f74){_0x279e4a=_0x279e4a-0x133;const _0x3024f1=a28_0x3024();let _0x56ac69=_0x3024f1[_0x279e4a];return _0x56ac69;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x572b66(0x134),'command':a28_0x572b66(0x13d),'description':'Get\x20BFF\x20script\x20details\x20by\x20ID','risk':a28_0x572b66(0x13c),'flags':[{'name':'id','type':'number','required':!![],'description':'Script\x20ID'},{'name':a28_0x572b66(0x136),'type':a28_0x572b66(0x135),'description':a28_0x572b66(0x139)}],async 'execute'(_0x12ace3){const _0x583e21=a28_0x572b66,_0x504c26=await getBffScriptInfo(_0x12ace3['num']('id')),_0x576e77=_0x12ace3[_0x583e21(0x141)](_0x583e21(0x136));if(_0x576e77)return{'ok':!![],'data':_0x504c26};return{'ok':!![],'data':{'id':_0x504c26['id'],'appCode':_0x504c26[_0x583e21(0x133)],'scriptType':_0x504c26[_0x583e21(0x13a)],'description':_0x504c26['description']||_0x583e21(0x137),'createdTime':_0x504c26[_0x583e21(0x149)]??'','updatedTime':_0x504c26[_0x583e21(0x140)]??'','scriptContent':_0x504c26[_0x583e21(0x13b)]??''}};}};
@@ -1 +1 @@
1
- (function(_0x1a0d6d,_0x1efa70){const _0xa177a7=a29_0x1fe4,_0xe8f6ed=_0x1a0d6d();while(!![]){try{const _0x5164fc=-parseInt(_0xa177a7(0x1e8))/0x1+parseInt(_0xa177a7(0x1e9))/0x2*(-parseInt(_0xa177a7(0x1e4))/0x3)+-parseInt(_0xa177a7(0x1e5))/0x4+-parseInt(_0xa177a7(0x1e6))/0x5+-parseInt(_0xa177a7(0x1e2))/0x6+parseInt(_0xa177a7(0x1e3))/0x7*(parseInt(_0xa177a7(0x1e1))/0x8)+-parseInt(_0xa177a7(0x1e7))/0x9*(-parseInt(_0xa177a7(0x1e0))/0xa);if(_0x5164fc===_0x1efa70)break;else _0xe8f6ed['push'](_0xe8f6ed['shift']());}catch(_0x77a4dd){_0xe8f6ed['push'](_0xe8f6ed['shift']());}}}(a29_0x9eee,0xe354a));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';function a29_0x1fe4(_0x86d05,_0x16e923){_0x86d05=_0x86d05-0x1e0;const _0x9eee9=a29_0x9eee();let _0x1fe46a=_0x9eee9[_0x86d05];return _0x1fe46a;}function a29_0x9eee(){const _0x45cdc3=['2799ewZWsq','5514724QJlomy','3764980GhMDXe','9bmsxio','750148jOmEsW','2102bpYKuj','42390290pYNXHX','8464072tuLqgV','3020904dIiJcN','7ZsfHpG'];a29_0x9eee=function(){return _0x45cdc3;};return a29_0x9eee();}export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x2a9b39,_0x4a7aaf){const _0x4a033a=a29_0x5ea8,_0xa3ab16=_0x2a9b39();while(!![]){try{const _0x30ee2c=parseInt(_0x4a033a(0x1ba))/0x1+parseInt(_0x4a033a(0x1c3))/0x2+-parseInt(_0x4a033a(0x1bc))/0x3*(-parseInt(_0x4a033a(0x1c2))/0x4)+-parseInt(_0x4a033a(0x1be))/0x5*(-parseInt(_0x4a033a(0x1bd))/0x6)+-parseInt(_0x4a033a(0x1c1))/0x7+parseInt(_0x4a033a(0x1bb))/0x8*(-parseInt(_0x4a033a(0x1bf))/0x9)+parseInt(_0x4a033a(0x1c4))/0xa*(-parseInt(_0x4a033a(0x1c0))/0xb);if(_0x30ee2c===_0x4a7aaf)break;else _0xa3ab16['push'](_0xa3ab16['shift']());}catch(_0xe7ff6c){_0xa3ab16['push'](_0xa3ab16['shift']());}}}(a29_0x4384,0xbe1a7));function a29_0x4384(){const _0x3baede=['869791YoRxkN','929560XtKVCt','1266VvgPei','4878162XCltwa','5wwSbGz','36IDvkfH','12802724oxVmKl','3658333zrXHCj','2148QVCUkm','2041028NxQMpx','10BWlvoe'];a29_0x4384=function(){return _0x3baede;};return a29_0x4384();}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_0x5ea8(_0x3f0252,_0x18b906){_0x3f0252=_0x3f0252-0x1ba;const _0x4384a1=a29_0x4384();let _0x5ea88d=_0x4384a1[_0x3f0252];return _0x5ea88d;}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 +1 @@
1
- const a30_0x480423=a30_0x2f9c;(function(_0x1b77dd,_0xa01d6){const _0x2a0306=a30_0x2f9c,_0x295bb2=_0x1b77dd();while(!![]){try{const _0x24e1e6=-parseInt(_0x2a0306(0x116))/0x1+parseInt(_0x2a0306(0x120))/0x2*(-parseInt(_0x2a0306(0x12c))/0x3)+-parseInt(_0x2a0306(0x123))/0x4*(parseInt(_0x2a0306(0x113))/0x5)+parseInt(_0x2a0306(0x118))/0x6*(-parseInt(_0x2a0306(0x126))/0x7)+-parseInt(_0x2a0306(0x11c))/0x8*(parseInt(_0x2a0306(0x11f))/0x9)+-parseInt(_0x2a0306(0x11b))/0xa+parseInt(_0x2a0306(0x11e))/0xb;if(_0x24e1e6===_0xa01d6)break;else _0x295bb2['push'](_0x295bb2['shift']());}catch(_0xf36c33){_0x295bb2['push'](_0x295bb2['shift']());}}}(a30_0x5511,0xc7bf5));function a30_0x5511(){const _0x50b07f=['7848318FFxUom','COMMON','scriptType','12473530MvSPcA','75736JgdWAI','Script\x20type\x20filter','81079999AjFrDp','693aTEdmi','562322VXRtNU','verbose','str','1138612rNRFnI','description','Return\x20full\x20script\x20objects','7PBVTbX','appCode','List\x20BFF\x20scripts','type','length','No\x20BFF\x20scripts\x20found.','15UwamDW','ENDPOINT','functionName','map','name','20zbyxlU','read','Filter\x20by\x20script\x20name','723962ZMuubg','string'];a30_0x5511=function(){return _0x50b07f;};return a30_0x5511();}function a30_0x2f9c(_0x1cb4df,_0x553b7d){_0x1cb4df=_0x1cb4df-0x112;const _0x551140=a30_0x5511();let _0x2f9c39=_0x551140[_0x1cb4df];return _0x2f9c39;}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':'bff','command':'list','description':a30_0x480423(0x128),'risk':a30_0x480423(0x114),'flags':[{'name':a30_0x480423(0x129),'type':'string','description':a30_0x480423(0x11d),'default':a30_0x480423(0x12d),'enum':['ENDPOINT',a30_0x480423(0x119)]},{'name':a30_0x480423(0x112),'type':a30_0x480423(0x117),'description':a30_0x480423(0x115)},{'name':a30_0x480423(0x121),'type':'boolean','description':a30_0x480423(0x125)}],async 'execute'(_0x213d48){const _0x20d5de=a30_0x480423,_0x5e4e20=await listBffScripts(_0x213d48[_0x20d5de(0x127)],_0x213d48['str']('type'),{'scriptName':_0x213d48[_0x20d5de(0x122)]('name')||undefined}),_0x5f5659=_0x213d48['bool']('verbose');return{'ok':!![],'data':_0x5f5659?_0x5e4e20:_0x5e4e20[_0x20d5de(0x12f)](_0xc3443a=>({'id':_0xc3443a['id'],'functionName':_0xc3443a[_0x20d5de(0x12e)]??'','description':_0xc3443a[_0x20d5de(0x124)]||'(unnamed)','scriptType':_0xc3443a[_0x20d5de(0x11a)]})),'message':_0x5e4e20[_0x20d5de(0x12a)]===0x0?_0x20d5de(0x12b):undefined};}};
1
+ const a30_0x3a2a9e=a30_0x272e;function a30_0x272e(_0x3d5042,_0x27546e){_0x3d5042=_0x3d5042-0x14f;const _0x3cc136=a30_0x3cc1();let _0x272e6d=_0x3cc136[_0x3d5042];return _0x272e6d;}(function(_0x3db453,_0x5a18f3){const _0x570efa=a30_0x272e,_0x3f4c9d=_0x3db453();while(!![]){try{const _0x2ec507=-parseInt(_0x570efa(0x156))/0x1*(parseInt(_0x570efa(0x15b))/0x2)+-parseInt(_0x570efa(0x163))/0x3+-parseInt(_0x570efa(0x15e))/0x4+parseInt(_0x570efa(0x159))/0x5+-parseInt(_0x570efa(0x165))/0x6*(parseInt(_0x570efa(0x15f))/0x7)+-parseInt(_0x570efa(0x161))/0x8*(parseInt(_0x570efa(0x155))/0x9)+parseInt(_0x570efa(0x151))/0xa;if(_0x2ec507===_0x5a18f3)break;else _0x3f4c9d['push'](_0x3f4c9d['shift']());}catch(_0xa32092){_0x3f4c9d['push'](_0x3f4c9d['shift']());}}}(a30_0x3cc1,0x301d3));import{listBffScripts}from'../../core/api-client.js';function a30_0x3cc1(){const _0x5d39c3=['bool','971292BXEOIE','171507aBImgz','list','264pKfbEm','boolean','192408UxlJGm','read','90gSxidV','List\x20BFF\x20scripts','verbose','No\x20BFF\x20scripts\x20found.','name','8958850EvYdBQ','type','string','str','33651uHgWhz','67777CYaYQJ','bff','(unnamed)','834140tmVzqp','map','2KrXFfF','Script\x20type\x20filter'];a30_0x3cc1=function(){return _0x5d39c3;};return a30_0x3cc1();}export const bffList={'service':a30_0x3a2a9e(0x157),'command':a30_0x3a2a9e(0x160),'description':a30_0x3a2a9e(0x166),'risk':a30_0x3a2a9e(0x164),'flags':[{'name':a30_0x3a2a9e(0x152),'type':a30_0x3a2a9e(0x153),'description':a30_0x3a2a9e(0x15c),'default':'ENDPOINT','enum':['ENDPOINT','COMMON']},{'name':a30_0x3a2a9e(0x150),'type':a30_0x3a2a9e(0x153),'description':'Filter\x20by\x20script\x20name'},{'name':a30_0x3a2a9e(0x167),'type':a30_0x3a2a9e(0x162),'description':'Return\x20full\x20script\x20objects'}],async 'execute'(_0x2f851b){const _0x1c9460=a30_0x3a2a9e,_0x5ac4c8=await listBffScripts(_0x2f851b['appCode'],_0x2f851b['str'](_0x1c9460(0x152)),{'scriptName':_0x2f851b[_0x1c9460(0x154)]('name')||undefined}),_0x29990b=_0x2f851b[_0x1c9460(0x15d)]('verbose');return{'ok':!![],'data':_0x29990b?_0x5ac4c8:_0x5ac4c8[_0x1c9460(0x15a)](_0x4f1384=>({'id':_0x4f1384['id'],'functionName':_0x4f1384['functionName']??'','description':_0x4f1384['description']||_0x1c9460(0x158),'scriptType':_0x4f1384['scriptType']})),'message':_0x5ac4c8['length']===0x0?_0x1c9460(0x14f):undefined};}};
@@ -1 +1 @@
1
- const a31_0xb5e7c5=a31_0x3e38;(function(_0x2d5ee2,_0x50073b){const _0x499fc3=a31_0x3e38,_0x548a8d=_0x2d5ee2();while(!![]){try{const _0x5e93b4=parseInt(_0x499fc3(0x19b))/0x1+parseInt(_0x499fc3(0x1ab))/0x2*(-parseInt(_0x499fc3(0x196))/0x3)+parseInt(_0x499fc3(0x18d))/0x4*(-parseInt(_0x499fc3(0x186))/0x5)+-parseInt(_0x499fc3(0x16f))/0x6+parseInt(_0x499fc3(0x19f))/0x7+-parseInt(_0x499fc3(0x181))/0x8+parseInt(_0x499fc3(0x1a3))/0x9*(parseInt(_0x499fc3(0x16d))/0xa);if(_0x5e93b4===_0x50073b)break;else _0x548a8d['push'](_0x548a8d['shift']());}catch(_0x344798){_0x548a8d['push'](_0x548a8d['shift']());}}}(a31_0x5d00,0x911f9));function a31_0x5d00(){const _0x1c9f66=['scriptsRoot','length','alias','\x20failed','Force\x20overwrite\x20local\x20unsynced\x20changes','validation','Remote\x20script\x20missing\x20id.','Force\x20pull\x20cancelled.','54915uPkXfT','apps','version','includes','type','895527epVbfU','unresolvable\x20target\x20path','filePath','Lock\x20scope\x20for\x20app\x20\x22','6027609YuqueJ','appCode','functionName','trim','10412154Tdawae','Would\x20inspect\x20','utf8','scriptContent','Remote\x20script\x20missing\x20content.','bff','hash','lockKey','114kuDbZr','bool','map','local\x20unsynced\x20changes','cancelled','Pull\x20complete:\x20','pull','\x20remote\x20BFF\x20script(s)\x20for\x20pull','conflict','force','10oxljDh','parse','1424718vrKUbG','operationType','nonInteractive','functions','datasetCode','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','would_pull','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','toISOString','lockFilePath','toLowerCase','COMMON','scriptType','hookLocation','push','GET','HOOK','skipped','3426584BZnjeL','No\x20remote\x20BFF\x20scripts\x20found.','stderr','functionNode','\x20skipped,\x20','117295CdEYNc','stdin','message','\x22\x20not\x20found\x20after\x20ensureLockScope.','apiDir','all','str','104iZrWyk'];a31_0x5d00=function(){return _0x1c9f66;};return a31_0x5d00();}import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0xb5e7c5(0x1a8),'command':a31_0xb5e7c5(0x1b1),'description':a31_0xb5e7c5(0x176),'risk':'write','flags':[{'name':'type','type':'string','description':'Pull\x20only\x20this\x20script\x20type','enum':[a31_0xb5e7c5(0x17a),'ENDPOINT',a31_0xb5e7c5(0x17f)]},{'name':a31_0xb5e7c5(0x16c),'type':'boolean','description':a31_0xb5e7c5(0x192)}],async 'dryRun'(_0x2a4a7b){const _0x5c7b6f=a31_0xb5e7c5,_0x181ff9=loadBffProjectConfig(_0x2a4a7b[_0x5c7b6f(0x1a0)]),_0x46337f=await readBffLockFile(_0x181ff9['lockFilePath']),{appLock:_0x1339f5}=ensureLockScope(_0x46337f??createEmptyBffLock(),_0x2a4a7b[_0x5c7b6f(0x1a0)],_0x181ff9[_0x5c7b6f(0x18e)],_0x5c7b6f(0x1b1)),_0x331a27=normalizeBffType(_0x2a4a7b['str'](_0x5c7b6f(0x19a)))??undefined,_0x1ee3e5=buildDatasetCodeToAliasMap(_0x2a4a7b['apiDir'],_0x2a4a7b['appCode']),[_0x1ff21c,_0x4db55f]=await Promise[_0x5c7b6f(0x18b)]([listBffScripts(_0x2a4a7b[_0x5c7b6f(0x1a0)],_0x331a27),getBffScriptStatistics(_0x2a4a7b[_0x5c7b6f(0x1a0)])]),_0x19a2bf=createHookLocationMap(_0x4db55f),_0x58b235=[];for(const _0xff6ff7 of _0x1ff21c){const _0x34a5a5=resolveRemoteScriptTarget(_0x181ff9,_0xff6ff7,_0x19a2bf,_0x1339f5[_0x5c7b6f(0x172)],_0x1ee3e5);if(!_0x34a5a5){_0x58b235[_0x5c7b6f(0x17d)]({'scriptType':_0xff6ff7[_0x5c7b6f(0x17b)],'functionName':_0xff6ff7[_0x5c7b6f(0x1a1)]??'','status':_0x5c7b6f(0x180),'reason':_0x5c7b6f(0x19c)});continue;}const _0x3bfeed=_0x1339f5[_0x5c7b6f(0x172)][_0x34a5a5[_0x5c7b6f(0x1aa)]],_0x4b3b1e=_0xff6ff7[_0x5c7b6f(0x1a6)]!=null?computeContentHash(_0xff6ff7[_0x5c7b6f(0x1a6)]):undefined,_0x3ca623=await hasUnsyncedLocalChanges(_0x34a5a5[_0x5c7b6f(0x19d)],_0x3bfeed,_0x4b3b1e);_0x58b235[_0x5c7b6f(0x17d)]({'lockKey':_0x34a5a5[_0x5c7b6f(0x1aa)],'filePath':_0x34a5a5[_0x5c7b6f(0x19d)],'remoteId':_0xff6ff7['id']??null,'status':_0x3ca623?_0x5c7b6f(0x16b):_0x5c7b6f(0x175)});}return{'method':_0x5c7b6f(0x17e),'url':'/api/management/library/scripts/list?appCode='+_0x2a4a7b[_0x5c7b6f(0x1a0)]+(_0x331a27?'&type='+_0x331a27:''),'body':{'appCode':_0x2a4a7b[_0x5c7b6f(0x1a0)],'filterType':_0x331a27??null,'files':_0x58b235},'description':_0x5c7b6f(0x1a4)+_0x58b235['length']+_0x5c7b6f(0x16a)};},async 'execute'(_0x249af3){const _0x4790f5=a31_0xb5e7c5,_0x3ea664=loadBffProjectConfig(_0x249af3[_0x4790f5(0x1a0)]),_0x1344c8=await readBffLockFile(_0x3ea664[_0x4790f5(0x178)]),{lockData:_0x2183d6,appLock:_0x41ce36}=ensureLockScope(_0x1344c8??createEmptyBffLock(),_0x249af3[_0x4790f5(0x1a0)],_0x3ea664[_0x4790f5(0x18e)],_0x4790f5(0x1b1)),_0x259d6d=normalizeBffType(_0x249af3[_0x4790f5(0x18c)]('type'))??undefined;if(_0x249af3[_0x4790f5(0x18c)](_0x4790f5(0x19a))&&!_0x259d6d)throw CliErrors[_0x4790f5(0x193)]('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0x3385de,_0x4ad375]=await Promise[_0x4790f5(0x18b)]([listBffScripts(_0x249af3[_0x4790f5(0x1a0)],_0x259d6d),getBffScriptStatistics(_0x249af3[_0x4790f5(0x1a0)])]);if(_0x3385de[_0x4790f5(0x18f)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x4790f5(0x182)};const _0x361be7=_0x249af3[_0x4790f5(0x1ac)](_0x4790f5(0x16c));if(_0x361be7&&!_0x249af3[_0x4790f5(0x171)]){const _0x7f6df8=await confirmForce();if(!_0x7f6df8)throw CliErrors[_0x4790f5(0x1af)](_0x4790f5(0x195));}if(_0x361be7&&_0x249af3[_0x4790f5(0x171)]){}const _0x181a58=buildDatasetCodeToAliasMap(_0x249af3[_0x4790f5(0x18a)],_0x249af3['appCode']),_0x478803=createHookLocationMap(_0x4ad375),_0x1032ed=JSON[_0x4790f5(0x16e)](JSON['stringify'](_0x2183d6)),_0x5c5cf0=_0x249af3['appCode'],_0x30732f=_0x1032ed[_0x4790f5(0x197)][_0x5c5cf0];if(!_0x30732f)throw new Error(_0x4790f5(0x19e)+_0x5c5cf0+_0x4790f5(0x189));const _0x479062=[],_0x197324=[],_0x3c1f69=[];for(const _0x303e7a of _0x3385de){const _0x10c65e=resolveRemoteScriptTarget(_0x3ea664,_0x303e7a,_0x478803,_0x41ce36['functions'],_0x181a58);if(!_0x10c65e){_0x197324['push']({'lockKey':_0x303e7a[_0x4790f5(0x17b)]+'/'+_0x303e7a[_0x4790f5(0x1a1)],'reason':_0x4790f5(0x19c)});continue;}const _0x263f0a=_0x41ce36[_0x4790f5(0x172)][_0x10c65e[_0x4790f5(0x1aa)]];try{if(!_0x303e7a['id'])throw new Error(_0x4790f5(0x194));if(_0x303e7a[_0x4790f5(0x1a6)]==null)throw new Error(_0x4790f5(0x1a7));const _0x4b8bd4=_0x303e7a[_0x4790f5(0x1a6)],_0x5ea1cf=computeContentHash(_0x4b8bd4);if(!_0x361be7){const _0x41d980=await hasUnsyncedLocalChanges(_0x10c65e[_0x4790f5(0x19d)],_0x263f0a,_0x5ea1cf);if(_0x41d980){_0x197324['push']({'lockKey':_0x10c65e['lockKey'],'reason':_0x4790f5(0x1ae)});continue;}}await ensureParentDirectory(_0x10c65e[_0x4790f5(0x19d)]),await writeFile(_0x10c65e[_0x4790f5(0x19d)],_0x4b8bd4,_0x4790f5(0x1a5));const _0x24a6a9={'hash':_0x5ea1cf,'remoteId':_0x303e7a['id'],'version':_0x303e7a[_0x4790f5(0x198)]};_0x10c65e[_0x4790f5(0x19a)]===_0x4790f5(0x17f)&&_0x10c65e[_0x4790f5(0x17c)]&&(_0x24a6a9['alias']=_0x10c65e['hookLocation'][_0x4790f5(0x190)],_0x24a6a9[_0x4790f5(0x173)]=_0x10c65e[_0x4790f5(0x17c)]['datasetCode'],_0x24a6a9[_0x4790f5(0x170)]=_0x10c65e[_0x4790f5(0x17c)]['operationType'],_0x24a6a9[_0x4790f5(0x184)]=_0x10c65e[_0x4790f5(0x17c)]['functionNode']),_0x30732f[_0x4790f5(0x172)][_0x10c65e[_0x4790f5(0x1aa)]]=_0x24a6a9,_0x479062['push']({'lockKey':_0x10c65e[_0x4790f5(0x1aa)],'remoteId':_0x303e7a['id']});}catch(_0x60e0c){_0x3c1f69[_0x4790f5(0x17d)]({'lockKey':_0x10c65e[_0x4790f5(0x1aa)],'error':_0x60e0c instanceof Error?_0x60e0c[_0x4790f5(0x188)]:String(_0x60e0c)});}}return _0x30732f['lastSync']=new Date()[_0x4790f5(0x177)](),await writeBffLockFile(_0x3ea664[_0x4790f5(0x178)],_0x1032ed),{'ok':_0x3c1f69[_0x4790f5(0x18f)]===0x0,'data':{'pulled':_0x479062,'skipped':_0x197324,'failed':_0x3c1f69},'message':_0x4790f5(0x1b0)+_0x479062[_0x4790f5(0x18f)]+'\x20pulled,\x20'+_0x197324[_0x4790f5(0x18f)]+_0x4790f5(0x185)+_0x3c1f69[_0x4790f5(0x18f)]+_0x4790f5(0x191)};}};async function hasUnsyncedLocalChanges(_0x7006af,_0x451f6c,_0x493016){const _0x526a46=a31_0xb5e7c5;if(!await fileExists(_0x7006af))return![];const _0x10354e=await computeFileHash(_0x7006af);if(!_0x451f6c)return _0x493016?_0x10354e!==_0x493016:!![];return _0x10354e!==_0x451f6c[_0x526a46(0x1a9)];}function a31_0x3e38(_0x4e1240,_0x453a70){_0x4e1240=_0x4e1240-0x16a;const _0x5d0061=a31_0x5d00();let _0x3e3817=_0x5d0061[_0x4e1240];return _0x3e3817;}function buildDatasetCodeToAliasMap(_0x4a70a0,_0x22580e){const _0x3f190b=a31_0xb5e7c5,_0x39eac7=loadAliasMap(_0x4a70a0,undefined,resolveApiFilePath(_0x4a70a0,_0x22580e));return new Map(_0x39eac7[_0x3f190b(0x1ad)](_0x1b923a=>[_0x1b923a[_0x3f190b(0x173)],_0x1b923a[_0x3f190b(0x190)]]));}async function confirmForce(){const _0x181d85=a31_0xb5e7c5,_0x2c9e21=createInterface({'input':process[_0x181d85(0x187)],'output':process[_0x181d85(0x183)]}),_0xde11b6=await new Promise(_0x5516fa=>{const _0x45c0a4=_0x181d85;_0x2c9e21['question'](_0x45c0a4(0x174),_0x5516fa);});return _0x2c9e21['close'](),['y','yes'][_0x181d85(0x199)](_0xde11b6[_0x181d85(0x1a2)]()[_0x181d85(0x179)]());}
1
+ const a31_0x2ef08d=a31_0x43ee;(function(_0x4214a5,_0x31315e){const _0x387e73=a31_0x43ee,_0x1e6258=_0x4214a5();while(!![]){try{const _0x499888=parseInt(_0x387e73(0x1fd))/0x1*(-parseInt(_0x387e73(0x1ef))/0x2)+-parseInt(_0x387e73(0x1e9))/0x3*(parseInt(_0x387e73(0x1f9))/0x4)+-parseInt(_0x387e73(0x207))/0x5*(parseInt(_0x387e73(0x208))/0x6)+parseInt(_0x387e73(0x212))/0x7+parseInt(_0x387e73(0x1f7))/0x8+parseInt(_0x387e73(0x201))/0x9+-parseInt(_0x387e73(0x21e))/0xa*(parseInt(_0x387e73(0x20f))/0xb);if(_0x499888===_0x31315e)break;else _0x1e6258['push'](_0x1e6258['shift']());}catch(_0x3d0aa){_0x1e6258['push'](_0x1e6258['shift']());}}}(a31_0x9095,0xd6381));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';function a31_0x9095(){const _0x34afa5=['Lock\x20scope\x20for\x20app\x20\x22','HOOK','functionNode','toISOString','No\x20remote\x20BFF\x20scripts\x20found.','trim','boolean','hookLocation','close','nonInteractive','unresolvable\x20target\x20path','670WbHSSp','filePath','question','Pull\x20only\x20this\x20script\x20type','all','ENDPOINT','stringify','parse','local\x20unsynced\x20changes','datasetCode','apiDir','\x20pulled,\x20','scriptsRoot','lockKey','operationType','write','str','351993CcDios','length','Force\x20pull\x20cancelled.','message','GET','functionName','18sWlFjy','bool','\x20failed','stdin','functions','would_pull','COMMON','map','12824736XTqGne','&type=','4fdjjMh','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','lockFilePath','lastSync','157303JCZRYs','bff','\x22\x20not\x20found\x20after\x20ensureLockScope.','type','10732410lxpnIv','scriptType','pull','Would\x20inspect\x20','validation','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','5PLnnWs','2035722sbofdD','appCode','Force\x20overwrite\x20local\x20unsynced\x20changes','stderr','string','force','apps','208868mrozMD','scriptContent','push','8584800qZkJJk'];a31_0x9095=function(){return _0x34afa5;};return a31_0x9095();}import{resolveApiFilePath}from'../../context.js';function a31_0x43ee(_0x36dde8,_0x479043){_0x36dde8=_0x36dde8-0x1df;const _0x909563=a31_0x9095();let _0x43ee5b=_0x909563[_0x36dde8];return _0x43ee5b;}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_0x2ef08d(0x1fe),'command':a31_0x2ef08d(0x203),'description':a31_0x2ef08d(0x206),'risk':a31_0x2ef08d(0x1e7),'flags':[{'name':a31_0x2ef08d(0x200),'type':a31_0x2ef08d(0x20c),'description':a31_0x2ef08d(0x221),'enum':[a31_0x2ef08d(0x1f5),a31_0x2ef08d(0x223),a31_0x2ef08d(0x214)]},{'name':a31_0x2ef08d(0x20d),'type':a31_0x2ef08d(0x219),'description':a31_0x2ef08d(0x20a)}],async 'dryRun'(_0x57a08a){const _0x152b21=a31_0x2ef08d,_0x4452b9=loadBffProjectConfig(_0x57a08a[_0x152b21(0x209)]),_0x5b18f8=await readBffLockFile(_0x4452b9[_0x152b21(0x1fb)]),{appLock:_0x3daa2a}=ensureLockScope(_0x5b18f8??createEmptyBffLock(),_0x57a08a[_0x152b21(0x209)],_0x4452b9['scriptsRoot'],_0x152b21(0x203)),_0x46a6ac=normalizeBffType(_0x57a08a[_0x152b21(0x1e8)]('type'))??undefined,_0x1484ba=buildDatasetCodeToAliasMap(_0x57a08a[_0x152b21(0x1e2)],_0x57a08a['appCode']),[_0x3f98a7,_0x2f2918]=await Promise[_0x152b21(0x222)]([listBffScripts(_0x57a08a[_0x152b21(0x209)],_0x46a6ac),getBffScriptStatistics(_0x57a08a['appCode'])]),_0x5a27bf=createHookLocationMap(_0x2f2918),_0x289da6=[];for(const _0x1b0bcd of _0x3f98a7){const _0x453bee=resolveRemoteScriptTarget(_0x4452b9,_0x1b0bcd,_0x5a27bf,_0x3daa2a[_0x152b21(0x1f3)],_0x1484ba);if(!_0x453bee){_0x289da6[_0x152b21(0x211)]({'scriptType':_0x1b0bcd[_0x152b21(0x202)],'functionName':_0x1b0bcd[_0x152b21(0x1ee)]??'','status':'skipped','reason':'unresolvable\x20target\x20path'});continue;}const _0x7d0d48=_0x3daa2a[_0x152b21(0x1f3)][_0x453bee[_0x152b21(0x1e5)]],_0x1b6c34=_0x1b0bcd[_0x152b21(0x210)]!=null?computeContentHash(_0x1b0bcd[_0x152b21(0x210)]):undefined,_0x2eb2ee=await hasUnsyncedLocalChanges(_0x453bee[_0x152b21(0x21f)],_0x7d0d48,_0x1b6c34);_0x289da6[_0x152b21(0x211)]({'lockKey':_0x453bee[_0x152b21(0x1e5)],'filePath':_0x453bee[_0x152b21(0x21f)],'remoteId':_0x1b0bcd['id']??null,'status':_0x2eb2ee?'conflict':_0x152b21(0x1f4)});}return{'method':_0x152b21(0x1ed),'url':'/api/management/library/scripts/list?appCode='+_0x57a08a[_0x152b21(0x209)]+(_0x46a6ac?_0x152b21(0x1f8)+_0x46a6ac:''),'body':{'appCode':_0x57a08a['appCode'],'filterType':_0x46a6ac??null,'files':_0x289da6},'description':_0x152b21(0x204)+_0x289da6['length']+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x3040cd){const _0x317559=a31_0x2ef08d,_0x46b134=loadBffProjectConfig(_0x3040cd['appCode']),_0x1c8073=await readBffLockFile(_0x46b134['lockFilePath']),{lockData:_0xbccfbe,appLock:_0x36687d}=ensureLockScope(_0x1c8073??createEmptyBffLock(),_0x3040cd[_0x317559(0x209)],_0x46b134[_0x317559(0x1e4)],_0x317559(0x203)),_0x125246=normalizeBffType(_0x3040cd['str']('type'))??undefined;if(_0x3040cd[_0x317559(0x1e8)](_0x317559(0x200))&&!_0x125246)throw CliErrors[_0x317559(0x205)]('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0x5d1ebd,_0x4f60e3]=await Promise[_0x317559(0x222)]([listBffScripts(_0x3040cd[_0x317559(0x209)],_0x125246),getBffScriptStatistics(_0x3040cd['appCode'])]);if(_0x5d1ebd['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x317559(0x217)};const _0x49fb2b=_0x3040cd[_0x317559(0x1f0)](_0x317559(0x20d));if(_0x49fb2b&&!_0x3040cd['nonInteractive']){const _0x4c61ca=await confirmForce();if(!_0x4c61ca)throw CliErrors['cancelled'](_0x317559(0x1eb));}if(_0x49fb2b&&_0x3040cd[_0x317559(0x21c)]){}const _0x24e777=buildDatasetCodeToAliasMap(_0x3040cd[_0x317559(0x1e2)],_0x3040cd[_0x317559(0x209)]),_0x3dd312=createHookLocationMap(_0x4f60e3),_0x1595c1=JSON[_0x317559(0x1df)](JSON[_0x317559(0x224)](_0xbccfbe)),_0x4af2d7=_0x3040cd[_0x317559(0x209)],_0x23832c=_0x1595c1[_0x317559(0x20e)][_0x4af2d7];if(!_0x23832c)throw new Error(_0x317559(0x213)+_0x4af2d7+_0x317559(0x1ff));const _0x43ed9b=[],_0x3b9733=[],_0x16af98=[];for(const _0x4e464e of _0x5d1ebd){const _0x16b6ab=resolveRemoteScriptTarget(_0x46b134,_0x4e464e,_0x3dd312,_0x36687d[_0x317559(0x1f3)],_0x24e777);if(!_0x16b6ab){_0x3b9733['push']({'lockKey':_0x4e464e[_0x317559(0x202)]+'/'+_0x4e464e[_0x317559(0x1ee)],'reason':_0x317559(0x21d)});continue;}const _0x57fa5c=_0x36687d[_0x317559(0x1f3)][_0x16b6ab[_0x317559(0x1e5)]];try{if(!_0x4e464e['id'])throw new Error('Remote\x20script\x20missing\x20id.');if(_0x4e464e['scriptContent']==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x5f551f=_0x4e464e[_0x317559(0x210)],_0x3f80c0=computeContentHash(_0x5f551f);if(!_0x49fb2b){const _0x3fee53=await hasUnsyncedLocalChanges(_0x16b6ab[_0x317559(0x21f)],_0x57fa5c,_0x3f80c0);if(_0x3fee53){_0x3b9733[_0x317559(0x211)]({'lockKey':_0x16b6ab[_0x317559(0x1e5)],'reason':_0x317559(0x1e0)});continue;}}await ensureParentDirectory(_0x16b6ab['filePath']),await writeFile(_0x16b6ab[_0x317559(0x21f)],_0x5f551f,'utf8');const _0x4a700b={'hash':_0x3f80c0,'remoteId':_0x4e464e['id'],'version':_0x4e464e['version']};_0x16b6ab['type']===_0x317559(0x214)&&_0x16b6ab[_0x317559(0x21a)]&&(_0x4a700b['alias']=_0x16b6ab[_0x317559(0x21a)]['alias'],_0x4a700b[_0x317559(0x1e1)]=_0x16b6ab[_0x317559(0x21a)][_0x317559(0x1e1)],_0x4a700b[_0x317559(0x1e6)]=_0x16b6ab[_0x317559(0x21a)][_0x317559(0x1e6)],_0x4a700b['functionNode']=_0x16b6ab['hookLocation'][_0x317559(0x215)]),_0x23832c[_0x317559(0x1f3)][_0x16b6ab[_0x317559(0x1e5)]]=_0x4a700b,_0x43ed9b['push']({'lockKey':_0x16b6ab['lockKey'],'remoteId':_0x4e464e['id']});}catch(_0x12f326){_0x16af98[_0x317559(0x211)]({'lockKey':_0x16b6ab[_0x317559(0x1e5)],'error':_0x12f326 instanceof Error?_0x12f326[_0x317559(0x1ec)]:String(_0x12f326)});}}return _0x23832c[_0x317559(0x1fc)]=new Date()[_0x317559(0x216)](),await writeBffLockFile(_0x46b134[_0x317559(0x1fb)],_0x1595c1),{'ok':_0x16af98[_0x317559(0x1ea)]===0x0,'data':{'pulled':_0x43ed9b,'skipped':_0x3b9733,'failed':_0x16af98},'message':'Pull\x20complete:\x20'+_0x43ed9b[_0x317559(0x1ea)]+_0x317559(0x1e3)+_0x3b9733[_0x317559(0x1ea)]+'\x20skipped,\x20'+_0x16af98['length']+_0x317559(0x1f1)};}};async function hasUnsyncedLocalChanges(_0x550722,_0xf84009,_0x2077a2){if(!await fileExists(_0x550722))return![];const _0x40fc62=await computeFileHash(_0x550722);if(!_0xf84009)return _0x2077a2?_0x40fc62!==_0x2077a2:!![];return _0x40fc62!==_0xf84009['hash'];}function buildDatasetCodeToAliasMap(_0x445e8d,_0x3ab0d0){const _0x462ae1=a31_0x2ef08d,_0x347187=loadAliasMap(_0x445e8d,undefined,resolveApiFilePath(_0x445e8d,_0x3ab0d0));return new Map(_0x347187[_0x462ae1(0x1f6)](_0x5e16c0=>[_0x5e16c0[_0x462ae1(0x1e1)],_0x5e16c0['alias']]));}async function confirmForce(){const _0x9048e6=a31_0x2ef08d,_0x31b868=createInterface({'input':process[_0x9048e6(0x1f2)],'output':process[_0x9048e6(0x20b)]}),_0x3abaf6=await new Promise(_0x13dd58=>{const _0x1ca22b=_0x9048e6;_0x31b868[_0x1ca22b(0x220)](_0x1ca22b(0x1fa),_0x13dd58);});return _0x31b868[_0x9048e6(0x21b)](),['y','yes']['includes'](_0x3abaf6[_0x9048e6(0x218)]()['toLowerCase']());}