@lovrabet/rabetbase-cli 2.3.2 → 2.3.3-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) 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/app-config/delete.js +1 -1
  27. package/lib/commands/app-config/get.js +1 -1
  28. package/lib/commands/app-config/index.js +1 -1
  29. package/lib/commands/app-config/list.js +1 -1
  30. package/lib/commands/app-config/set.js +1 -1
  31. package/lib/commands/app-config/shared.js +1 -1
  32. package/lib/commands/auth/index.js +1 -1
  33. package/lib/commands/bff/create.js +1 -1
  34. package/lib/commands/bff/delete.js +1 -1
  35. package/lib/commands/bff/detail.js +1 -1
  36. package/lib/commands/bff/index.js +1 -1
  37. package/lib/commands/bff/list.js +1 -1
  38. package/lib/commands/bff/pull.js +1 -1
  39. package/lib/commands/bff/push.js +1 -1
  40. package/lib/commands/bff/status.js +1 -1
  41. package/lib/commands/cli-skill/index.js +1 -1
  42. package/lib/commands/cli-update.js +1 -1
  43. package/lib/commands/codegen/index.js +1 -1
  44. package/lib/commands/codegen/sdk.js +1 -1
  45. package/lib/commands/codegen/sql.js +1 -1
  46. package/lib/commands/common/app-selector.js +1 -1
  47. package/lib/commands/common/flags.js +1 -1
  48. package/lib/commands/common/validate.js +1 -1
  49. package/lib/commands/config/get.js +1 -1
  50. package/lib/commands/config/index.js +1 -1
  51. package/lib/commands/config/list.js +1 -1
  52. package/lib/commands/config/set.js +1 -1
  53. package/lib/commands/config/shared.js +1 -1
  54. package/lib/commands/data/filter.js +1 -1
  55. package/lib/commands/data/getOne.js +1 -1
  56. package/lib/commands/data/index.js +1 -1
  57. package/lib/commands/data/shared.js +1 -1
  58. package/lib/commands/dataset/business-group-update.js +1 -1
  59. package/lib/commands/dataset/capability.js +1 -1
  60. package/lib/commands/dataset/delete.js +1 -1
  61. package/lib/commands/dataset/detail.js +1 -1
  62. package/lib/commands/dataset/extend-update.js +1 -1
  63. package/lib/commands/dataset/field-update.js +1 -1
  64. package/lib/commands/dataset/generate.js +1 -0
  65. package/lib/commands/dataset/index.js +1 -1
  66. package/lib/commands/dataset/list.js +1 -1
  67. package/lib/commands/dataset/operations.js +1 -1
  68. package/lib/commands/dataset/relation-audit.js +1 -1
  69. package/lib/commands/dataset/relation-create.js +1 -1
  70. package/lib/commands/dataset/relation-delete.js +1 -1
  71. package/lib/commands/dataset/relation-shared.js +1 -1
  72. package/lib/commands/dataset/relation-update.js +1 -1
  73. package/lib/commands/dataset/relations.js +1 -1
  74. package/lib/commands/dataset/rename.js +1 -1
  75. package/lib/commands/dataset/restore.js +1 -1
  76. package/lib/commands/db/analyze-cancel.js +1 -1
  77. package/lib/commands/db/analyze-start.js +1 -1
  78. package/lib/commands/db/analyze-status.js +1 -1
  79. package/lib/commands/db/create.js +1 -1
  80. package/lib/commands/db/delete.js +1 -1
  81. package/lib/commands/db/detail.js +1 -1
  82. package/lib/commands/db/diff.js +1 -1
  83. package/lib/commands/db/index.js +1 -1
  84. package/lib/commands/db/list.js +1 -1
  85. package/lib/commands/db/shared.js +1 -1
  86. package/lib/commands/db/tables.js +1 -1
  87. package/lib/commands/db/test.js +1 -1
  88. package/lib/commands/db/update.js +1 -1
  89. package/lib/commands/doctor.js +1 -1
  90. package/lib/commands/init/index.js +1 -1
  91. package/lib/commands/issue/index.js +1 -1
  92. package/lib/commands/issue/nudge.js +1 -1
  93. package/lib/commands/issue/report.js +1 -1
  94. package/lib/commands/issue/shared.js +1 -1
  95. package/lib/commands/logs/index.js +1 -1
  96. package/lib/commands/menu/index.js +1 -1
  97. package/lib/commands/menu/list.js +1 -1
  98. package/lib/commands/menu/shared/compare-table.js +1 -1
  99. package/lib/commands/menu/shared/index.js +1 -1
  100. package/lib/commands/menu/shared/inquirer.js +1 -1
  101. package/lib/commands/menu/shared/local-pages.js +1 -1
  102. package/lib/commands/menu/shared/logic.js +1 -1
  103. package/lib/commands/menu/shared/service.js +1 -1
  104. package/lib/commands/menu/shared/sync-core.js +1 -1
  105. package/lib/commands/menu/shared/update-core.js +1 -1
  106. package/lib/commands/menu/shared/valid-url.js +1 -1
  107. package/lib/commands/menu/sync.js +1 -1
  108. package/lib/commands/menu/update.js +1 -1
  109. package/lib/commands/page/generate-start.js +1 -1
  110. package/lib/commands/page/generate-status.js +1 -1
  111. package/lib/commands/page/index.js +1 -1
  112. package/lib/commands/page/pull.js +1 -1
  113. package/lib/commands/page/push.js +1 -1
  114. package/lib/commands/page/relation-audit.js +1 -1
  115. package/lib/commands/page/shared.js +1 -1
  116. package/lib/commands/page/standard-page-status.js +1 -1
  117. package/lib/commands/page/sync.js +1 -1
  118. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  119. package/lib/commands/project/create/format-elapsed.js +1 -1
  120. package/lib/commands/project/create/main.js +1 -1
  121. package/lib/commands/project/create/non-interactive.js +1 -1
  122. package/lib/commands/project/create/project-template-path.js +1 -1
  123. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  124. package/lib/commands/project/create/use-format-code.js +1 -1
  125. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  126. package/lib/commands/project/index.js +1 -1
  127. package/lib/commands/project/init.js +1 -1
  128. package/lib/commands/project/upgrade.js +1 -1
  129. package/lib/commands/registry.js +1 -1
  130. package/lib/commands/run/index.js +1 -1
  131. package/lib/commands/schema.js +1 -1
  132. package/lib/commands/sql/create.js +1 -1
  133. package/lib/commands/sql/delete.js +1 -1
  134. package/lib/commands/sql/detail.js +1 -1
  135. package/lib/commands/sql/exec.js +1 -1
  136. package/lib/commands/sql/index.js +1 -1
  137. package/lib/commands/sql/list.js +1 -1
  138. package/lib/commands/sql/pull.js +1 -1
  139. package/lib/commands/sql/push.js +1 -1
  140. package/lib/commands/sql/save.js +1 -1
  141. package/lib/commands/sql/shared.js +1 -1
  142. package/lib/commands/sql/status.js +1 -1
  143. package/lib/commands/sql/validate.js +1 -1
  144. package/lib/commands/workspace/index.js +1 -1
  145. package/lib/config/schema.js +1 -1
  146. package/lib/constant/cdn.js +1 -1
  147. package/lib/constant/cli.js +1 -1
  148. package/lib/constant/defaults.js +1 -1
  149. package/lib/constant/domain.js +1 -1
  150. package/lib/constant/env.js +1 -1
  151. package/lib/constant/output.js +1 -1
  152. package/lib/constant/paths.js +1 -1
  153. package/lib/constant/risk.js +1 -1
  154. package/lib/context/app-resolver.js +1 -1
  155. package/lib/context/auth-resolver.js +1 -1
  156. package/lib/context/config-loader.js +1 -1
  157. package/lib/context.js +1 -1
  158. package/lib/core/alias-resolver.js +1 -1
  159. package/lib/core/api-client.js +1 -1
  160. package/lib/core/bff/config.js +1 -1
  161. package/lib/core/bff/file-system.js +1 -1
  162. package/lib/core/bff/hash.js +1 -1
  163. package/lib/core/bff/lock.js +1 -1
  164. package/lib/core/bff/utils.js +1 -1
  165. package/lib/core/db-resolver.js +1 -1
  166. package/lib/core/page/file-system.js +1 -1
  167. package/lib/core/page/hash.js +1 -1
  168. package/lib/core/page/lock.js +1 -1
  169. package/lib/core/sql-sync/config.js +1 -1
  170. package/lib/core/sql-sync/file-system.js +1 -1
  171. package/lib/core/sql-sync/hash.js +1 -1
  172. package/lib/core/sql-sync/lock.js +1 -1
  173. package/lib/core/sql-sync/utils.js +1 -1
  174. package/lib/core/sql-validator.js +1 -1
  175. package/lib/errors.js +1 -1
  176. package/lib/framework/build-all-flags.js +1 -1
  177. package/lib/framework/flags.js +1 -1
  178. package/lib/framework/help.js +1 -1
  179. package/lib/framework/index.js +1 -1
  180. package/lib/framework/output.js +1 -1
  181. package/lib/framework/response.js +1 -1
  182. package/lib/framework/runner-alias.js +1 -1
  183. package/lib/framework/runner.js +1 -1
  184. package/lib/framework/schema-export.js +1 -1
  185. package/lib/framework/types.js +1 -1
  186. package/lib/generated/build-info.js +1 -1
  187. package/lib/help.js +1 -1
  188. package/lib/skills/main.js +1 -1
  189. package/lib/skills/npx-skills-add.js +1 -1
  190. package/lib/telemetry/cli-command-trace.js +1 -1
  191. package/lib/telemetry/cli-help-trace.js +1 -1
  192. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  193. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  194. package/lib/telemetry/send-cli-trace-log.js +1 -1
  195. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  196. package/lib/utils/ai_config.js +1 -1
  197. package/lib/utils/apply-jq-filter.js +1 -1
  198. package/lib/utils/cdn-config.js +1 -1
  199. package/lib/utils/check-sdk-version.js +1 -1
  200. package/lib/utils/cli-version-check.js +1 -1
  201. package/lib/utils/cli-version-policy.js +1 -1
  202. package/lib/utils/config.js +1 -1
  203. package/lib/utils/copy-directory.js +1 -1
  204. package/lib/utils/entity-with-id.js +1 -1
  205. package/lib/utils/file-utils.js +1 -1
  206. package/lib/utils/guides-cdn.js +1 -1
  207. package/lib/utils/http-client.js +1 -1
  208. package/lib/utils/is-non-interactive.js +1 -1
  209. package/lib/utils/logger.js +1 -1
  210. package/lib/utils/params.js +1 -1
  211. package/lib/utils/platform.js +1 -1
  212. package/lib/utils/rules-cdn.js +1 -1
  213. package/lib/utils/sleep.js +1 -1
  214. package/lib/utils/template-replacer.js +1 -1
  215. package/lib/utils/update-notice.js +1 -1
  216. package/lib/utils/version.js +1 -1
  217. package/lib/utils/with-active-cookie.js +1 -1
  218. package/lib/utils/write-cli-side-channel.js +1 -1
  219. package/package.json +1 -1
@@ -1 +1 @@
1
- const a33_0x8a756a=a33_0x7c3e;(function(_0x2b5df1,_0x36bf9c){const _0x44e15d=a33_0x7c3e,_0x388252=_0x2b5df1();while(!![]){try{const _0x408a2e=-parseInt(_0x44e15d(0x1f4))/0x1+-parseInt(_0x44e15d(0x1f0))/0x2+-parseInt(_0x44e15d(0x1f7))/0x3+-parseInt(_0x44e15d(0x203))/0x4*(parseInt(_0x44e15d(0x212))/0x5)+parseInt(_0x44e15d(0x20f))/0x6*(-parseInt(_0x44e15d(0x20e))/0x7)+-parseInt(_0x44e15d(0x1f3))/0x8*(-parseInt(_0x44e15d(0x200))/0x9)+-parseInt(_0x44e15d(0x215))/0xa*(-parseInt(_0x44e15d(0x211))/0xb);if(_0x408a2e===_0x36bf9c)break;else _0x388252['push'](_0x388252['shift']());}catch(_0x17d488){_0x388252['push'](_0x388252['shift']());}}}(a33_0x4750,0x92342));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';function a33_0x4750(){const _0x45036f=['scriptsRoot','lockFilePath','string','high-risk-write','Multiple\x20functions\x20match\x20\x22','lastSync','567zhdQHH','26370UqTpgG','BFF\x20lock\x20file\x20not\x20found.','3916hecjLr','45SpWnBu','No\x20lock\x20entry\x20found\x20for\x20\x22','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','56130GLGNwA','apps','delete','replace','\x20(local\x20file\x20moved\x20to\x20trash)','remoteId','keys','POST','bff','1413246jQSQuY','find','appCode','9163424rAwaSt','237899cTpNtS','str','length','3327786jJlhaB','\x22\x20not\x20found\x20after\x20ensureLockScope.','join','target','stringify','Lock\x20scope\x20for\x20app\x20\x22','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','trashedTo','Would\x20delete\x20','9KaQtlf','toISOString','projectRoot','60012rXtZju','validation','functions','<timestamp>','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'];a33_0x4750=function(){return _0x45036f;};return a33_0x4750();}export const bffDelete={'service':a33_0x8a756a(0x1ef),'command':a33_0x8a756a(0x217),'description':a33_0x8a756a(0x214),'risk':a33_0x8a756a(0x20b),'flags':[{'name':a33_0x8a756a(0x1fa),'type':a33_0x8a756a(0x20a),'required':!![],'description':'Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name'}],async 'validate'(_0x1ed643){const _0x342e5e=a33_0x8a756a,_0xfbf186=loadBffProjectConfig(_0x1ed643[_0x342e5e(0x1f2)]),_0x53fe86=await readBffLockFile(_0xfbf186[_0x342e5e(0x209)]);if(!_0x53fe86)throw CliErrors[_0x342e5e(0x204)]('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x569076){const _0x5d28ef=a33_0x8a756a,_0xc785e0=loadBffProjectConfig(_0x569076[_0x5d28ef(0x1f2)]),_0x1bfd35=await readBffLockFile(_0xc785e0['lockFilePath']);if(!_0x1bfd35)throw CliErrors[_0x5d28ef(0x204)](_0x5d28ef(0x210));const {appLock:_0x255634}=ensureLockScope(_0x1bfd35,_0x569076['appCode'],_0xc785e0[_0x5d28ef(0x208)],_0x5d28ef(0x217)),_0x4a175c=_0x569076[_0x5d28ef(0x1f5)](_0x5d28ef(0x1fa)),_0x7e8393=Object[_0x5d28ef(0x21b)](_0x255634['functions']),_0x281907=resolveDeleteTarget(_0x4a175c,_0x7e8393),_0x58856e=_0x255634[_0x5d28ef(0x205)][_0x281907];if(!_0x58856e)throw CliErrors[_0x5d28ef(0x204)](_0x5d28ef(0x213)+_0x281907+'\x22.');const _0x24e3fe=resolveLocalFilePathFromLockKey(_0xc785e0,_0x281907),_0x17adbc=relative(_0xc785e0[_0x5d28ef(0x202)],_0x24e3fe),_0x52bdd1=join(_0xc785e0['trashDir'],_0x5d28ef(0x206),_0x17adbc);return{'method':_0x5d28ef(0x21c),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x569076[_0x5d28ef(0x1f2)],'target':_0x281907,'remoteId':_0x58856e[_0x5d28ef(0x21a)],'localFilePath':_0x24e3fe,'trashedPath':_0x52bdd1},'description':_0x5d28ef(0x1ff)+_0x281907+_0x5d28ef(0x1fd)};},async 'execute'(_0x32e891){const _0x140274=a33_0x8a756a,_0x1ca996=loadBffProjectConfig(_0x32e891[_0x140274(0x1f2)]),_0x4cf90d=await readBffLockFile(_0x1ca996[_0x140274(0x209)]);if(!_0x4cf90d)throw CliErrors['validation'](_0x140274(0x210));const {lockData:_0x23ab11,appLock:_0x3ab655}=ensureLockScope(_0x4cf90d,_0x32e891['appCode'],_0x1ca996[_0x140274(0x208)],'delete'),_0xd705f9=JSON['parse'](JSON[_0x140274(0x1fb)](_0x23ab11)),_0x37780d=_0xd705f9['apps'][_0x32e891['appCode']];if(!_0x37780d)throw new Error(_0x140274(0x1fc)+_0x32e891[_0x140274(0x1f2)]+_0x140274(0x1f8));const _0x1460cc=_0x32e891['str']('target'),_0x1e96a3=Object['keys'](_0x37780d['functions']),_0x20f87d=resolveDeleteTarget(_0x1460cc,_0x1e96a3),_0x5e348f=_0x37780d[_0x140274(0x205)][_0x20f87d];if(!_0x5e348f)throw CliErrors[_0x140274(0x204)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x20f87d+'\x22.');await deleteBffScript(_0x5e348f[_0x140274(0x21a)]),delete _0x37780d[_0x140274(0x205)][_0x20f87d],_0x37780d[_0x140274(0x20d)]=new Date()[_0x140274(0x201)](),await writeBffLockFile(_0x1ca996[_0x140274(0x209)],_0xd705f9);const _0x5abcd0=resolveLocalFilePathFromLockKey(_0x1ca996,_0x20f87d);let _0x23eb59;await fileExists(_0x5abcd0)&&(_0x23eb59=await moveToTrash(_0x1ca996['projectRoot'],_0x1ca996['trashDir'],_0x5abcd0),await cleanupEmptyDirectories(dirname(_0x5abcd0),_0x1ca996['scriptsRootDir']));await waitForDeleteSettlement(_0x1ca996[_0x140274(0x209)],_0x32e891[_0x140274(0x1f2)],_0x20f87d,_0x5abcd0),await sleep(0x96);const _0x53c83d={'deleted':_0x20f87d,'remoteId':_0x5e348f[_0x140274(0x21a)]};if(_0x23eb59)_0x53c83d[_0x140274(0x1fe)]=_0x23eb59;return{'ok':!![],'data':_0x53c83d,'message':'Deleted\x20'+_0x20f87d+(_0x23eb59?_0x140274(0x219):'')};}};function resolveDeleteTarget(_0x43a0f0,_0x7e9a1e){const _0x5c762d=a33_0x8a756a;if(_0x43a0f0['includes']('/')){const _0x5562a7=_0x7e9a1e[_0x5c762d(0x1f1)](_0x502414=>_0x502414===_0x43a0f0);if(!_0x5562a7)throw CliErrors[_0x5c762d(0x204)]('Function\x20not\x20found:\x20'+_0x43a0f0);return _0x5562a7;}const _0x1c1e94=_0x7e9a1e['filter'](_0x304d8f=>_0x304d8f['split']('/')['at'](-0x1)===_0x43a0f0);if(_0x1c1e94[_0x5c762d(0x1f6)]===0x0)throw CliErrors[_0x5c762d(0x204)]('Function\x20not\x20found:\x20'+_0x43a0f0);if(_0x1c1e94[_0x5c762d(0x1f6)]>0x1)throw CliErrors[_0x5c762d(0x204)](_0x5c762d(0x20c)+_0x43a0f0+_0x5c762d(0x207)+_0x1c1e94['map'](_0x86ed04=>'\x20\x20-\x20'+_0x86ed04)[_0x5c762d(0x1f9)]('\x0a'));return _0x1c1e94[0x0];}async function moveToTrash(_0x53b21d,_0x48f69a,_0x24c8a5){const _0x4d9206=a33_0x8a756a,_0x571a7b=new Date()[_0x4d9206(0x201)]()[_0x4d9206(0x218)](/[:.]/g,'-'),_0x1d591f=relative(_0x53b21d,_0x24c8a5),_0x51bb2e=join(_0x48f69a,_0x571a7b,_0x1d591f);return await mkdir(dirname(_0x51bb2e),{'recursive':!![]}),await rename(_0x24c8a5,_0x51bb2e),_0x51bb2e;}function a33_0x7c3e(_0xe20a2b,_0x5a9baa){_0xe20a2b=_0xe20a2b-0x1ef;const _0x47509b=a33_0x4750();let _0x7c3e5d=_0x47509b[_0xe20a2b];return _0x7c3e5d;}async function cleanupEmptyDirectories(_0x9a27f8,_0x138d46){const _0x527ce5=a33_0x8a756a;let _0x2225a8=resolve(_0x9a27f8);const _0x2bf15c=resolve(_0x138d46);while(_0x2225a8['startsWith'](''+_0x2bf15c+sep)||_0x2225a8===_0x2bf15c){if(_0x2225a8===_0x2bf15c)return;try{const _0x2dd087=await readdir(_0x2225a8);if(_0x2dd087[_0x527ce5(0x1f6)]>0x0)return;await rmdir(_0x2225a8);}catch{return;}_0x2225a8=dirname(_0x2225a8);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x3d0ab2,_0x2dceac,_0x43d955,_0x4111c0){const _0x352710=a33_0x8a756a;for(let _0x3d2c4d=0x0;_0x3d2c4d<DELETE_SETTLE_RETRY_COUNT;_0x3d2c4d+=0x1){const _0x5f1d79=await readBffLockFile(_0x3d0ab2),_0x2e8a56=!!_0x5f1d79?.[_0x352710(0x216)]?.[_0x2dceac]?.[_0x352710(0x205)]?.[_0x43d955],_0x5397ca=await fileExists(_0x4111c0);if(!_0x2e8a56&&!_0x5397ca)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error('Local\x20delete\x20not\x20settled\x20for\x20'+_0x43d955+'.');}
1
+ const a33_0x515958=a33_0x1ed6;(function(_0x4fb50c,_0x4a0b38){const _0x18a082=a33_0x1ed6,_0x369feb=_0x4fb50c();while(!![]){try{const _0x299a95=-parseInt(_0x18a082(0x21c))/0x1*(parseInt(_0x18a082(0x211))/0x2)+-parseInt(_0x18a082(0x20b))/0x3+-parseInt(_0x18a082(0x216))/0x4+parseInt(_0x18a082(0x219))/0x5*(-parseInt(_0x18a082(0x21b))/0x6)+-parseInt(_0x18a082(0x21d))/0x7+parseInt(_0x18a082(0x1fd))/0x8+-parseInt(_0x18a082(0x1f5))/0x9*(-parseInt(_0x18a082(0x1fc))/0xa);if(_0x299a95===_0x4a0b38)break;else _0x369feb['push'](_0x369feb['shift']());}catch(_0x52460e){_0x369feb['push'](_0x369feb['shift']());}}}(a33_0x719d,0x292f7));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a33_0x515958(0x218),'command':a33_0x515958(0x220),'description':a33_0x515958(0x1f7),'risk':a33_0x515958(0x1fb),'flags':[{'name':a33_0x515958(0x20c),'type':a33_0x515958(0x210),'required':!![],'description':a33_0x515958(0x1fe)}],async 'validate'(_0x3c0a2b){const _0x53ae4a=a33_0x515958,_0xc92e71=loadBffProjectConfig(_0x3c0a2b[_0x53ae4a(0x201)]),_0x5e7698=await readBffLockFile(_0xc92e71[_0x53ae4a(0x1f3)]);if(!_0x5e7698)throw CliErrors[_0x53ae4a(0x202)](_0x53ae4a(0x1f9));},async 'dryRun'(_0x23bea1){const _0x51c920=a33_0x515958,_0x4604a3=loadBffProjectConfig(_0x23bea1['appCode']),_0x62e13c=await readBffLockFile(_0x4604a3[_0x51c920(0x1f3)]);if(!_0x62e13c)throw CliErrors['validation'](_0x51c920(0x1f6));const {appLock:_0x4e1702}=ensureLockScope(_0x62e13c,_0x23bea1[_0x51c920(0x201)],_0x4604a3['scriptsRoot'],'delete'),_0x3fa5b0=_0x23bea1[_0x51c920(0x213)](_0x51c920(0x20c)),_0x1f8ca4=Object[_0x51c920(0x1f2)](_0x4e1702[_0x51c920(0x1f8)]),_0x5f06b3=resolveDeleteTarget(_0x3fa5b0,_0x1f8ca4),_0x57e6af=_0x4e1702['functions'][_0x5f06b3];if(!_0x57e6af)throw CliErrors[_0x51c920(0x202)](_0x51c920(0x21e)+_0x5f06b3+'\x22.');const _0x2f1e32=resolveLocalFilePathFromLockKey(_0x4604a3,_0x5f06b3),_0x5f44bb=relative(_0x4604a3[_0x51c920(0x224)],_0x2f1e32),_0x300f82=join(_0x4604a3[_0x51c920(0x209)],_0x51c920(0x203),_0x5f44bb);return{'method':_0x51c920(0x20d),'url':_0x51c920(0x21a),'body':{'appCode':_0x23bea1[_0x51c920(0x201)],'target':_0x5f06b3,'remoteId':_0x57e6af['remoteId'],'localFilePath':_0x2f1e32,'trashedPath':_0x300f82},'description':'Would\x20delete\x20'+_0x5f06b3+_0x51c920(0x208)};},async 'execute'(_0x5c8b46){const _0x695070=a33_0x515958,_0x189b78=loadBffProjectConfig(_0x5c8b46['appCode']),_0x3ba52d=await readBffLockFile(_0x189b78[_0x695070(0x1f3)]);if(!_0x3ba52d)throw CliErrors[_0x695070(0x202)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x3432c5,appLock:_0x4730bc}=ensureLockScope(_0x3ba52d,_0x5c8b46[_0x695070(0x201)],_0x189b78[_0x695070(0x1ff)],_0x695070(0x220)),_0x35c30a=JSON[_0x695070(0x214)](JSON[_0x695070(0x20a)](_0x3432c5)),_0xd1f5af=_0x35c30a[_0x695070(0x229)][_0x5c8b46['appCode']];if(!_0xd1f5af)throw new Error(_0x695070(0x217)+_0x5c8b46[_0x695070(0x201)]+_0x695070(0x205));const _0x5c5c94=_0x5c8b46[_0x695070(0x213)](_0x695070(0x20c)),_0x3d0f21=Object[_0x695070(0x1f2)](_0xd1f5af['functions']),_0x4df3f1=resolveDeleteTarget(_0x5c5c94,_0x3d0f21),_0x2101d5=_0xd1f5af[_0x695070(0x1f8)][_0x4df3f1];if(!_0x2101d5)throw CliErrors['validation'](_0x695070(0x21e)+_0x4df3f1+'\x22.');await deleteBffScript(_0x2101d5[_0x695070(0x225)]),delete _0xd1f5af[_0x695070(0x1f8)][_0x4df3f1],_0xd1f5af[_0x695070(0x222)]=new Date()[_0x695070(0x227)](),await writeBffLockFile(_0x189b78[_0x695070(0x1f3)],_0x35c30a);const _0x351f84=resolveLocalFilePathFromLockKey(_0x189b78,_0x4df3f1);let _0x309d1c;await fileExists(_0x351f84)&&(_0x309d1c=await moveToTrash(_0x189b78['projectRoot'],_0x189b78[_0x695070(0x209)],_0x351f84),await cleanupEmptyDirectories(dirname(_0x351f84),_0x189b78[_0x695070(0x206)]));await waitForDeleteSettlement(_0x189b78[_0x695070(0x1f3)],_0x5c8b46[_0x695070(0x201)],_0x4df3f1,_0x351f84),await sleep(0x96);const _0xa936dc={'deleted':_0x4df3f1,'remoteId':_0x2101d5['remoteId']};if(_0x309d1c)_0xa936dc[_0x695070(0x212)]=_0x309d1c;return{'ok':!![],'data':_0xa936dc,'message':_0x695070(0x204)+_0x4df3f1+(_0x309d1c?_0x695070(0x1f1):'')};}};function resolveDeleteTarget(_0x110afc,_0x4e0a78){const _0x5899ab=a33_0x515958;if(_0x110afc[_0x5899ab(0x215)]('/')){const _0x2770a3=_0x4e0a78[_0x5899ab(0x22a)](_0x6b643b=>_0x6b643b===_0x110afc);if(!_0x2770a3)throw CliErrors['validation'](_0x5899ab(0x228)+_0x110afc);return _0x2770a3;}const _0x2c51b7=_0x4e0a78[_0x5899ab(0x223)](_0x4e4309=>_0x4e4309['split']('/')['at'](-0x1)===_0x110afc);if(_0x2c51b7[_0x5899ab(0x200)]===0x0)throw CliErrors[_0x5899ab(0x202)](_0x5899ab(0x228)+_0x110afc);if(_0x2c51b7[_0x5899ab(0x200)]>0x1)throw CliErrors[_0x5899ab(0x202)](_0x5899ab(0x1fa)+_0x110afc+_0x5899ab(0x207)+_0x2c51b7[_0x5899ab(0x20f)](_0x44ef0b=>_0x5899ab(0x21f)+_0x44ef0b)[_0x5899ab(0x226)]('\x0a'));return _0x2c51b7[0x0];}async function moveToTrash(_0x27bf87,_0x519438,_0x4528af){const _0x1e69ab=a33_0x515958,_0x3471c4=new Date()['toISOString']()[_0x1e69ab(0x1f4)](/[:.]/g,'-'),_0x20f906=relative(_0x27bf87,_0x4528af),_0x7464ee=join(_0x519438,_0x3471c4,_0x20f906);return await mkdir(dirname(_0x7464ee),{'recursive':!![]}),await rename(_0x4528af,_0x7464ee),_0x7464ee;}function a33_0x1ed6(_0x30e6d6,_0x483e7c){_0x30e6d6=_0x30e6d6-0x1f1;const _0x719ddd=a33_0x719d();let _0x1ed622=_0x719ddd[_0x30e6d6];return _0x1ed622;}async function cleanupEmptyDirectories(_0x1d66a1,_0x2d1c33){const _0x2760df=a33_0x515958;let _0x36ec31=resolve(_0x1d66a1);const _0x5377be=resolve(_0x2d1c33);while(_0x36ec31[_0x2760df(0x221)](''+_0x5377be+sep)||_0x36ec31===_0x5377be){if(_0x36ec31===_0x5377be)return;try{const _0x390ffd=await readdir(_0x36ec31);if(_0x390ffd[_0x2760df(0x200)]>0x0)return;await rmdir(_0x36ec31);}catch{return;}_0x36ec31=dirname(_0x36ec31);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x10a9c9,_0x24931c,_0x38932c,_0x2b277e){const _0x556087=a33_0x515958;for(let _0x3a9a23=0x0;_0x3a9a23<DELETE_SETTLE_RETRY_COUNT;_0x3a9a23+=0x1){const _0x44737a=await readBffLockFile(_0x10a9c9),_0x5a660c=!!_0x44737a?.[_0x556087(0x229)]?.[_0x24931c]?.['functions']?.[_0x38932c],_0x1e76a6=await fileExists(_0x2b277e);if(!_0x5a660c&&!_0x1e76a6)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x556087(0x20e)+_0x38932c+'.');}function a33_0x719d(){const _0x5d06ff=['2602360dGPXrf','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','scriptsRoot','length','appCode','validation','<timestamp>','Deleted\x20','\x22\x20not\x20found\x20after\x20ensureLockScope.','scriptsRootDir','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','trashDir','stringify','218451LmktuX','target','POST','Local\x20delete\x20not\x20settled\x20for\x20','map','string','634vWKJsq','trashedTo','str','parse','includes','11060foKSaH','Lock\x20scope\x20for\x20app\x20\x22','bff','85DaLdIK','/api/management/library/scripts/delete','38904cTsaxR','689bXcowS','2147117SLJbvT','No\x20lock\x20entry\x20found\x20for\x20\x22','\x20\x20-\x20','delete','startsWith','lastSync','filter','projectRoot','remoteId','join','toISOString','Function\x20not\x20found:\x20','apps','find','\x20(local\x20file\x20moved\x20to\x20trash)','keys','lockFilePath','replace','2494593tXyQIT','BFF\x20lock\x20file\x20not\x20found.','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','functions','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','Multiple\x20functions\x20match\x20\x22','high-risk-write','20bEgCwB'];a33_0x719d=function(){return _0x5d06ff;};return a33_0x719d();}
@@ -1 +1 @@
1
- function a34_0x43c4(){const _0x50cd1d=['boolean','20KxXMNe','(none)','detail','scriptType','18cvZeXT','appCode','86395uyEYUQ','2799GyPyoi','1299408CaoGbB','Return\x20full\x20raw\x20script\x20object','bff','2656UXWwvs','Get\x20BFF\x20script\x20details\x20by\x20ID','createdTime','211897wfBRoc','110577zoDVnS','read','num','description','Script\x20ID','921774KnopDt','verbose','4442270LoAQhi'];a34_0x43c4=function(){return _0x50cd1d;};return a34_0x43c4();}function a34_0x47cb(_0x1d9b8c,_0x155318){_0x1d9b8c=_0x1d9b8c-0x193;const _0x43c41c=a34_0x43c4();let _0x47cb31=_0x43c41c[_0x1d9b8c];return _0x47cb31;}const a34_0x136c1c=a34_0x47cb;(function(_0x5670b9,_0x12d783){const _0x1395ac=a34_0x47cb,_0x4047a6=_0x5670b9();while(!![]){try{const _0x386a16=parseInt(_0x1395ac(0x1a7))/0x1+-parseInt(_0x1395ac(0x199))/0x2*(parseInt(_0x1395ac(0x1a8))/0x3)+parseInt(_0x1395ac(0x1a1))/0x4+-parseInt(_0x1395ac(0x19f))/0x5+-parseInt(_0x1395ac(0x19d))/0x6*(-parseInt(_0x1395ac(0x195))/0x7)+-parseInt(_0x1395ac(0x1a4))/0x8*(-parseInt(_0x1395ac(0x1a0))/0x9)+-parseInt(_0x1395ac(0x197))/0xa;if(_0x386a16===_0x12d783)break;else _0x4047a6['push'](_0x4047a6['shift']());}catch(_0x50749d){_0x4047a6['push'](_0x4047a6['shift']());}}}(a34_0x43c4,0x32097));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a34_0x136c1c(0x1a3),'command':a34_0x136c1c(0x19b),'description':a34_0x136c1c(0x1a5),'risk':a34_0x136c1c(0x1a9),'flags':[{'name':'id','type':'number','required':!![],'description':a34_0x136c1c(0x194)},{'name':a34_0x136c1c(0x196),'type':a34_0x136c1c(0x198),'description':a34_0x136c1c(0x1a2)}],async 'execute'(_0xb999cc){const _0xc78880=a34_0x136c1c,_0x489040=await getBffScriptInfo(_0xb999cc[_0xc78880(0x1aa)]('id')),_0x33b2cb=_0xb999cc['bool'](_0xc78880(0x196));if(_0x33b2cb)return{'ok':!![],'data':_0x489040};return{'ok':!![],'data':{'id':_0x489040['id'],'appCode':_0x489040[_0xc78880(0x19e)],'scriptType':_0x489040[_0xc78880(0x19c)],'description':_0x489040[_0xc78880(0x193)]||_0xc78880(0x19a),'createdTime':_0x489040[_0xc78880(0x1a6)]??'','updatedTime':_0x489040['updatedTime']??'','scriptContent':_0x489040['scriptContent']??''}};}};
1
+ const a34_0x2b3950=a34_0x311c;(function(_0x438f7d,_0x584373){const _0x5790fd=a34_0x311c,_0x617dfb=_0x438f7d();while(!![]){try{const _0xbf4617=parseInt(_0x5790fd(0x1a8))/0x1+parseInt(_0x5790fd(0x1b0))/0x2+-parseInt(_0x5790fd(0x1a3))/0x3*(-parseInt(_0x5790fd(0x1b8))/0x4)+parseInt(_0x5790fd(0x1ae))/0x5*(parseInt(_0x5790fd(0x1a5))/0x6)+parseInt(_0x5790fd(0x1ad))/0x7+parseInt(_0x5790fd(0x1aa))/0x8*(parseInt(_0x5790fd(0x1b6))/0x9)+parseInt(_0x5790fd(0x1af))/0xa*(-parseInt(_0x5790fd(0x1ac))/0xb);if(_0xbf4617===_0x584373)break;else _0x617dfb['push'](_0x617dfb['shift']());}catch(_0x43988d){_0x617dfb['push'](_0x617dfb['shift']());}}}(a34_0x484a,0xa50fc));import{getBffScriptInfo}from'../../core/api-client.js';function a34_0x484a(){const _0x212035=['detail','407uWooGC','2627289PlqXxM','1040txOHUO','1081260BpqKPB','776948RGUaCL','(none)','Get\x20BFF\x20script\x20details\x20by\x20ID','bff','boolean','read','9JlnWvv','createdTime','744924YctAcY','verbose','num','15IQoQMs','scriptType','35202klSYfN','bool','scriptContent','1307260bEfZMg','appCode','3633616mYpNfm'];a34_0x484a=function(){return _0x212035;};return a34_0x484a();}function a34_0x311c(_0x1e714f,_0x328343){_0x1e714f=_0x1e714f-0x1a1;const _0x484a45=a34_0x484a();let _0x311cf4=_0x484a45[_0x1e714f];return _0x311cf4;}export const bffDetail={'service':a34_0x2b3950(0x1b3),'command':a34_0x2b3950(0x1ab),'description':a34_0x2b3950(0x1b2),'risk':a34_0x2b3950(0x1b5),'flags':[{'name':'id','type':'number','required':!![],'description':'Script\x20ID'},{'name':a34_0x2b3950(0x1a1),'type':a34_0x2b3950(0x1b4),'description':'Return\x20full\x20raw\x20script\x20object'}],async 'execute'(_0x3910f7){const _0x48e853=a34_0x2b3950,_0x37358b=await getBffScriptInfo(_0x3910f7[_0x48e853(0x1a2)]('id')),_0x979d1c=_0x3910f7[_0x48e853(0x1a6)](_0x48e853(0x1a1));if(_0x979d1c)return{'ok':!![],'data':_0x37358b};return{'ok':!![],'data':{'id':_0x37358b['id'],'appCode':_0x37358b[_0x48e853(0x1a9)],'scriptType':_0x37358b[_0x48e853(0x1a4)],'description':_0x37358b['description']||_0x48e853(0x1b1),'createdTime':_0x37358b[_0x48e853(0x1b7)]??'','updatedTime':_0x37358b['updatedTime']??'','scriptContent':_0x37358b[_0x48e853(0x1a7)]??''}};}};
@@ -1 +1 @@
1
- function a35_0x2627(){const _0x17cdcd=['212838yqBgNe','10nbyzsF','76rZlMod','8170448QwEPCG','106385MWrZwF','20604GxamMq','216SDuvgd','17703fdglJF','3670UKgWZl','737208szGTzn','1122PVUkQz'];a35_0x2627=function(){return _0x17cdcd;};return a35_0x2627();}(function(_0x8f53cb,_0x2a4b27){const _0x1f4e3c=a35_0x30cf,_0x5de8be=_0x8f53cb();while(!![]){try{const _0x5cd31d=-parseInt(_0x1f4e3c(0x118))/0x1+-parseInt(_0x1f4e3c(0x114))/0x2+parseInt(_0x1f4e3c(0x119))/0x3*(-parseInt(_0x1f4e3c(0x116))/0x4)+parseInt(_0x1f4e3c(0x11c))/0x5*(-parseInt(_0x1f4e3c(0x113))/0x6)+parseInt(_0x1f4e3c(0x11b))/0x7*(-parseInt(_0x1f4e3c(0x11a))/0x8)+-parseInt(_0x1f4e3c(0x112))/0x9*(parseInt(_0x1f4e3c(0x115))/0xa)+parseInt(_0x1f4e3c(0x117))/0xb;if(_0x5cd31d===_0x2a4b27)break;else _0x5de8be['push'](_0x5de8be['shift']());}catch(_0x1ffc55){_0x5de8be['push'](_0x5de8be['shift']());}}}(a35_0x2627,0x1b593));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';function a35_0x30cf(_0x47c8f8,_0x5ab552){_0x47c8f8=_0x47c8f8-0x112;const _0x2627bb=a35_0x2627();let _0x30cf0c=_0x2627bb[_0x47c8f8];return _0x30cf0c;}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';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ (function(_0x2cc881,_0x3ed910){const _0x798221=a35_0x393c,_0x44decb=_0x2cc881();while(!![]){try{const _0x4b8e7f=-parseInt(_0x798221(0x162))/0x1*(parseInt(_0x798221(0x16a))/0x2)+-parseInt(_0x798221(0x169))/0x3*(parseInt(_0x798221(0x168))/0x4)+-parseInt(_0x798221(0x16d))/0x5*(parseInt(_0x798221(0x164))/0x6)+parseInt(_0x798221(0x16b))/0x7+-parseInt(_0x798221(0x167))/0x8*(-parseInt(_0x798221(0x16c))/0x9)+-parseInt(_0x798221(0x163))/0xa*(-parseInt(_0x798221(0x165))/0xb)+parseInt(_0x798221(0x166))/0xc;if(_0x4b8e7f===_0x3ed910)break;else _0x44decb['push'](_0x44decb['shift']());}catch(_0x5bc54b){_0x44decb['push'](_0x44decb['shift']());}}}(a35_0x31ab,0xc541e));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';function a35_0x31ab(){const _0x104b39=['18KegtLC','12769361JjUTmE','4908828eaTfMO','363936sxfLir','136okthmg','116958ItnXEp','21288FPrqXP','573671HFBWKP','234CDwgFD','317105GbSVLs','48pHQBBW','10fEcxHw'];a35_0x31ab=function(){return _0x104b39;};return a35_0x31ab();}function a35_0x393c(_0x3f9623,_0x965002){_0x3f9623=_0x3f9623-0x162;const _0x31ab79=a35_0x31ab();let _0x393ca8=_0x31ab79[_0x3f9623];return _0x393ca8;}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';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- function a36_0xdb2e(_0x58e4bf,_0x471396){_0x58e4bf=_0x58e4bf-0x173;const _0x88132f=a36_0x8813();let _0xdb2e85=_0x88132f[_0x58e4bf];return _0xdb2e85;}const a36_0x54f6ee=a36_0xdb2e;(function(_0x287e8c,_0x303f0e){const _0x3d1673=a36_0xdb2e,_0x7ed628=_0x287e8c();while(!![]){try{const _0x556dd0=-parseInt(_0x3d1673(0x187))/0x1*(parseInt(_0x3d1673(0x186))/0x2)+-parseInt(_0x3d1673(0x173))/0x3+parseInt(_0x3d1673(0x192))/0x4+-parseInt(_0x3d1673(0x17b))/0x5*(parseInt(_0x3d1673(0x180))/0x6)+-parseInt(_0x3d1673(0x177))/0x7*(parseInt(_0x3d1673(0x18d))/0x8)+parseInt(_0x3d1673(0x191))/0x9+parseInt(_0x3d1673(0x17a))/0xa;if(_0x556dd0===_0x303f0e)break;else _0x7ed628['push'](_0x7ed628['shift']());}catch(_0x557efb){_0x7ed628['push'](_0x7ed628['shift']());}}}(a36_0x8813,0x4ad5b));import{listBffScripts}from'../../core/api-client.js';function a36_0x8813(){const _0x173dd2=['read','boolean','8034950UNBYDN','5SblliD','COMMON','bool','Filter\x20by\x20script\x20name','type','3246798bqGaSa','map','verbose','scriptType','functionName','Return\x20full\x20script\x20objects','698VtIXLb','877OGpZJY','list','description','bff','appCode','ENDPOINT','24yxnicP','str','string','No\x20BFF\x20scripts\x20found.','2239983iqascO','2308128vugxlk','411144WtHHiC','(unnamed)','name','List\x20BFF\x20scripts','790153RfxmEH'];a36_0x8813=function(){return _0x173dd2;};return a36_0x8813();}export const bffList={'service':a36_0x54f6ee(0x18a),'command':a36_0x54f6ee(0x188),'description':a36_0x54f6ee(0x176),'risk':a36_0x54f6ee(0x178),'flags':[{'name':a36_0x54f6ee(0x17f),'type':'string','description':'Script\x20type\x20filter','default':'ENDPOINT','enum':[a36_0x54f6ee(0x18c),a36_0x54f6ee(0x17c)]},{'name':a36_0x54f6ee(0x175),'type':a36_0x54f6ee(0x18f),'description':a36_0x54f6ee(0x17e)},{'name':a36_0x54f6ee(0x182),'type':a36_0x54f6ee(0x179),'description':a36_0x54f6ee(0x185)}],async 'execute'(_0x18e2f0){const _0x436c0b=a36_0x54f6ee,_0x1d64fb=await listBffScripts(_0x18e2f0[_0x436c0b(0x18b)],_0x18e2f0['str'](_0x436c0b(0x17f)),{'scriptName':_0x18e2f0[_0x436c0b(0x18e)](_0x436c0b(0x175))||undefined}),_0x52ab01=_0x18e2f0[_0x436c0b(0x17d)](_0x436c0b(0x182));return{'ok':!![],'data':_0x52ab01?_0x1d64fb:_0x1d64fb[_0x436c0b(0x181)](_0x308aeb=>({'id':_0x308aeb['id'],'functionName':_0x308aeb[_0x436c0b(0x184)]??'','description':_0x308aeb[_0x436c0b(0x189)]||_0x436c0b(0x174),'scriptType':_0x308aeb[_0x436c0b(0x183)]})),'message':_0x1d64fb['length']===0x0?_0x436c0b(0x190):undefined};}};
1
+ const a36_0x314a4b=a36_0x2497;function a36_0x511e(){const _0x2cb598=['1683020JtqGmy','511791SEbkaZ','2010TQutTF','30KHxWws','572480cmQglO','(unnamed)','ENDPOINT','37377zFLYqg','read','bool','type','verbose','List\x20BFF\x20scripts','name','6JrJUis','boolean','316595xLPWad','3588624ZuepZX','appCode','No\x20BFF\x20scripts\x20found.','Script\x20type\x20filter','length','Return\x20full\x20script\x20objects','description','2279151HFVfEU','string','map','scriptType','str'];a36_0x511e=function(){return _0x2cb598;};return a36_0x511e();}(function(_0x135840,_0x579cc5){const _0x1a8554=a36_0x2497,_0x4e90d9=_0x135840();while(!![]){try{const _0x4ca97d=-parseInt(_0x1a8554(0x180))/0x1+-parseInt(_0x1a8554(0x17e))/0x2*(-parseInt(_0x1a8554(0x18e))/0x3)+-parseInt(_0x1a8554(0x18d))/0x4+-parseInt(_0x1a8554(0x174))/0x5*(-parseInt(_0x1a8554(0x190))/0x6)+parseInt(_0x1a8554(0x188))/0x7+parseInt(_0x1a8554(0x181))/0x8+-parseInt(_0x1a8554(0x177))/0x9*(parseInt(_0x1a8554(0x18f))/0xa);if(_0x4ca97d===_0x579cc5)break;else _0x4e90d9['push'](_0x4e90d9['shift']());}catch(_0x1d5466){_0x4e90d9['push'](_0x4e90d9['shift']());}}}(a36_0x511e,0x45e83));function a36_0x2497(_0x51a8cd,_0x2114ea){_0x51a8cd=_0x51a8cd-0x174;const _0x511e94=a36_0x511e();let _0x249702=_0x511e94[_0x51a8cd];return _0x249702;}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':'bff','command':'list','description':a36_0x314a4b(0x17c),'risk':a36_0x314a4b(0x178),'flags':[{'name':a36_0x314a4b(0x17a),'type':a36_0x314a4b(0x189),'description':a36_0x314a4b(0x184),'default':a36_0x314a4b(0x176),'enum':['ENDPOINT','COMMON']},{'name':a36_0x314a4b(0x17d),'type':a36_0x314a4b(0x189),'description':'Filter\x20by\x20script\x20name'},{'name':a36_0x314a4b(0x17b),'type':a36_0x314a4b(0x17f),'description':a36_0x314a4b(0x186)}],async 'execute'(_0x2d1f00){const _0x599e6b=a36_0x314a4b,_0x5be762=await listBffScripts(_0x2d1f00[_0x599e6b(0x182)],_0x2d1f00[_0x599e6b(0x18c)](_0x599e6b(0x17a)),{'scriptName':_0x2d1f00[_0x599e6b(0x18c)](_0x599e6b(0x17d))||undefined}),_0x1214dc=_0x2d1f00[_0x599e6b(0x179)](_0x599e6b(0x17b));return{'ok':!![],'data':_0x1214dc?_0x5be762:_0x5be762[_0x599e6b(0x18a)](_0x1143c7=>({'id':_0x1143c7['id'],'functionName':_0x1143c7['functionName']??'','description':_0x1143c7[_0x599e6b(0x187)]||_0x599e6b(0x175),'scriptType':_0x1143c7[_0x599e6b(0x18b)]})),'message':_0x5be762[_0x599e6b(0x185)]===0x0?_0x599e6b(0x183):undefined};}};
@@ -1 +1 @@
1
- const a37_0x4a4738=a37_0x33a1;function a37_0xd60c(){const _0x570afa=['pull','apiDir','Remote\x20script\x20missing\x20content.','ENDPOINT','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','toISOString','filePath','scriptContent','648QmybLB','yes','unresolvable\x20target\x20path','nonInteractive','HOOK','alias','question','skipped','all','functions','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','length','1270dxPRJg','Remote\x20script\x20missing\x20id.','34601hlafus','appCode','62931aNxIxR','stringify','bff','COMMON','\x20failed','push','apps','Force\x20overwrite\x20local\x20unsynced\x20changes','functionName','scriptType','datasetCode','str','1284768zjLLNW','scriptsRoot','conflict','boolean','operationType','utf8','Force\x20pull\x20cancelled.','Would\x20inspect\x20','No\x20remote\x20BFF\x20scripts\x20found.','version','type','1006fLOvKA','GET','258YmRWpK','5pkrdxH','local\x20unsynced\x20changes','would_pull','message','includes','hookLocation','map','string','790639OKDnkn','lastSync','3524204uPDZIJ','&type=','functionNode','\x20remote\x20BFF\x20script(s)\x20for\x20pull','force','stderr','toLowerCase','/api/management/library/scripts/list?appCode=','cancelled','write','\x20pulled,\x20','validation','Lock\x20scope\x20for\x20app\x20\x22','4459062uueWfj','lockKey','lockFilePath'];a37_0xd60c=function(){return _0x570afa;};return a37_0xd60c();}(function(_0xdb6df3,_0x50c00d){const _0x3b40ea=a37_0x33a1,_0x3e5ecd=_0xdb6df3();while(!![]){try{const _0x489630=-parseInt(_0x3b40ea(0x121))/0x1+-parseInt(_0x3b40ea(0x116))/0x2*(parseInt(_0x3b40ea(0x118))/0x3)+parseInt(_0x3b40ea(0x123))/0x4+-parseInt(_0x3b40ea(0x119))/0x5*(-parseInt(_0x3b40ea(0x130))/0x6)+parseInt(_0x3b40ea(0x149))/0x7*(-parseInt(_0x3b40ea(0x13b))/0x8)+-parseInt(_0x3b40ea(0x10b))/0x9+-parseInt(_0x3b40ea(0x147))/0xa*(-parseInt(_0x3b40ea(0x14b))/0xb);if(_0x489630===_0x50c00d)break;else _0x3e5ecd['push'](_0x3e5ecd['shift']());}catch(_0x13b3b4){_0x3e5ecd['push'](_0x3e5ecd['shift']());}}}(a37_0xd60c,0xedbc3));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';function a37_0x33a1(_0x2cc0ca,_0x750414){_0x2cc0ca=_0x2cc0ca-0x103;const _0xd60c4f=a37_0xd60c();let _0x33a1ec=_0xd60c4f[_0x2cc0ca];return _0x33a1ec;}import{CliErrors}from'../../errors.js';export const bffPull={'service':a37_0x4a4738(0x14d),'command':'pull','description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a37_0x4a4738(0x12c),'flags':[{'name':'type','type':a37_0x4a4738(0x120),'description':'Pull\x20only\x20this\x20script\x20type','enum':[a37_0x4a4738(0x14e),a37_0x4a4738(0x136),'HOOK']},{'name':a37_0x4a4738(0x127),'type':a37_0x4a4738(0x10e),'description':a37_0x4a4738(0x106)}],async 'dryRun'(_0x5c880b){const _0x258758=a37_0x4a4738,_0xee88cc=loadBffProjectConfig(_0x5c880b[_0x258758(0x14a)]),_0x4fbabb=await readBffLockFile(_0xee88cc[_0x258758(0x132)]),{appLock:_0x34a5f2}=ensureLockScope(_0x4fbabb??createEmptyBffLock(),_0x5c880b[_0x258758(0x14a)],_0xee88cc[_0x258758(0x10c)],_0x258758(0x133)),_0x22ec0f=normalizeBffType(_0x5c880b[_0x258758(0x10a)](_0x258758(0x115)))??undefined,_0x60275a=buildDatasetCodeToAliasMap(_0x5c880b[_0x258758(0x134)],_0x5c880b[_0x258758(0x14a)]),[_0x47de84,_0x55f675]=await Promise['all']([listBffScripts(_0x5c880b[_0x258758(0x14a)],_0x22ec0f),getBffScriptStatistics(_0x5c880b[_0x258758(0x14a)])]),_0x16855d=createHookLocationMap(_0x55f675),_0x5c1add=[];for(const _0x1cba6f of _0x47de84){const _0x59d3c5=resolveRemoteScriptTarget(_0xee88cc,_0x1cba6f,_0x16855d,_0x34a5f2['functions'],_0x60275a);if(!_0x59d3c5){_0x5c1add[_0x258758(0x104)]({'scriptType':_0x1cba6f[_0x258758(0x108)],'functionName':_0x1cba6f[_0x258758(0x107)]??'','status':_0x258758(0x142),'reason':'unresolvable\x20target\x20path'});continue;}const _0x4c7127=_0x34a5f2[_0x258758(0x144)][_0x59d3c5[_0x258758(0x131)]],_0x441ecb=_0x1cba6f[_0x258758(0x13a)]!=null?computeContentHash(_0x1cba6f['scriptContent']):undefined,_0x20aa8a=await hasUnsyncedLocalChanges(_0x59d3c5[_0x258758(0x139)],_0x4c7127,_0x441ecb);_0x5c1add[_0x258758(0x104)]({'lockKey':_0x59d3c5['lockKey'],'filePath':_0x59d3c5[_0x258758(0x139)],'remoteId':_0x1cba6f['id']??null,'status':_0x20aa8a?_0x258758(0x10d):_0x258758(0x11b)});}return{'method':_0x258758(0x117),'url':_0x258758(0x12a)+_0x5c880b['appCode']+(_0x22ec0f?_0x258758(0x124)+_0x22ec0f:''),'body':{'appCode':_0x5c880b[_0x258758(0x14a)],'filterType':_0x22ec0f??null,'files':_0x5c1add},'description':_0x258758(0x112)+_0x5c1add['length']+_0x258758(0x126)};},async 'execute'(_0x37e5f8){const _0x42da95=a37_0x4a4738,_0x1d5235=loadBffProjectConfig(_0x37e5f8[_0x42da95(0x14a)]),_0xf9137a=await readBffLockFile(_0x1d5235['lockFilePath']),{lockData:_0x495182,appLock:_0x1c0a9a}=ensureLockScope(_0xf9137a??createEmptyBffLock(),_0x37e5f8[_0x42da95(0x14a)],_0x1d5235[_0x42da95(0x10c)],_0x42da95(0x133)),_0x451a0a=normalizeBffType(_0x37e5f8['str'](_0x42da95(0x115)))??undefined;if(_0x37e5f8[_0x42da95(0x10a)](_0x42da95(0x115))&&!_0x451a0a)throw CliErrors[_0x42da95(0x12e)](_0x42da95(0x145));const [_0x2efd6a,_0x994ae0]=await Promise[_0x42da95(0x143)]([listBffScripts(_0x37e5f8[_0x42da95(0x14a)],_0x451a0a),getBffScriptStatistics(_0x37e5f8['appCode'])]);if(_0x2efd6a['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x42da95(0x113)};const _0x3af2ad=_0x37e5f8['bool'](_0x42da95(0x127));if(_0x3af2ad&&!_0x37e5f8[_0x42da95(0x13e)]){const _0x19aac2=await confirmForce();if(!_0x19aac2)throw CliErrors[_0x42da95(0x12b)](_0x42da95(0x111));}if(_0x3af2ad&&_0x37e5f8['nonInteractive']){}const _0x88a05a=buildDatasetCodeToAliasMap(_0x37e5f8[_0x42da95(0x134)],_0x37e5f8[_0x42da95(0x14a)]),_0x5f4072=createHookLocationMap(_0x994ae0),_0x310506=JSON['parse'](JSON[_0x42da95(0x14c)](_0x495182)),_0x56cf97=_0x37e5f8[_0x42da95(0x14a)],_0x43e1c5=_0x310506[_0x42da95(0x105)][_0x56cf97];if(!_0x43e1c5)throw new Error(_0x42da95(0x12f)+_0x56cf97+'\x22\x20not\x20found\x20after\x20ensureLockScope.');const _0x1db21f=[],_0x507591=[],_0x15232e=[];for(const _0x489823 of _0x2efd6a){const _0x41417e=resolveRemoteScriptTarget(_0x1d5235,_0x489823,_0x5f4072,_0x1c0a9a[_0x42da95(0x144)],_0x88a05a);if(!_0x41417e){_0x507591['push']({'lockKey':_0x489823[_0x42da95(0x108)]+'/'+_0x489823[_0x42da95(0x107)],'reason':_0x42da95(0x13d)});continue;}const _0x3837a7=_0x1c0a9a[_0x42da95(0x144)][_0x41417e[_0x42da95(0x131)]];try{if(!_0x489823['id'])throw new Error(_0x42da95(0x148));if(_0x489823[_0x42da95(0x13a)]==null)throw new Error(_0x42da95(0x135));const _0x26569d=_0x489823[_0x42da95(0x13a)],_0x592428=computeContentHash(_0x26569d);if(!_0x3af2ad){const _0x259164=await hasUnsyncedLocalChanges(_0x41417e[_0x42da95(0x139)],_0x3837a7,_0x592428);if(_0x259164){_0x507591['push']({'lockKey':_0x41417e[_0x42da95(0x131)],'reason':_0x42da95(0x11a)});continue;}}await ensureParentDirectory(_0x41417e[_0x42da95(0x139)]),await writeFile(_0x41417e[_0x42da95(0x139)],_0x26569d,_0x42da95(0x110));const _0xf6f59e={'hash':_0x592428,'remoteId':_0x489823['id'],'version':_0x489823[_0x42da95(0x114)]};_0x41417e[_0x42da95(0x115)]===_0x42da95(0x13f)&&_0x41417e[_0x42da95(0x11e)]&&(_0xf6f59e[_0x42da95(0x140)]=_0x41417e[_0x42da95(0x11e)][_0x42da95(0x140)],_0xf6f59e[_0x42da95(0x109)]=_0x41417e[_0x42da95(0x11e)]['datasetCode'],_0xf6f59e[_0x42da95(0x10f)]=_0x41417e[_0x42da95(0x11e)][_0x42da95(0x10f)],_0xf6f59e[_0x42da95(0x125)]=_0x41417e[_0x42da95(0x11e)][_0x42da95(0x125)]),_0x43e1c5[_0x42da95(0x144)][_0x41417e[_0x42da95(0x131)]]=_0xf6f59e,_0x1db21f[_0x42da95(0x104)]({'lockKey':_0x41417e[_0x42da95(0x131)],'remoteId':_0x489823['id']});}catch(_0x4e7b27){_0x15232e[_0x42da95(0x104)]({'lockKey':_0x41417e[_0x42da95(0x131)],'error':_0x4e7b27 instanceof Error?_0x4e7b27[_0x42da95(0x11c)]:String(_0x4e7b27)});}}return _0x43e1c5[_0x42da95(0x122)]=new Date()[_0x42da95(0x138)](),await writeBffLockFile(_0x1d5235[_0x42da95(0x132)],_0x310506),{'ok':_0x15232e[_0x42da95(0x146)]===0x0,'data':{'pulled':_0x1db21f,'skipped':_0x507591,'failed':_0x15232e},'message':'Pull\x20complete:\x20'+_0x1db21f[_0x42da95(0x146)]+_0x42da95(0x12d)+_0x507591[_0x42da95(0x146)]+'\x20skipped,\x20'+_0x15232e[_0x42da95(0x146)]+_0x42da95(0x103)};}};async function hasUnsyncedLocalChanges(_0x5aaaec,_0x125bda,_0x22aa37){if(!await fileExists(_0x5aaaec))return![];const _0x18c6cf=await computeFileHash(_0x5aaaec);if(!_0x125bda)return _0x22aa37?_0x18c6cf!==_0x22aa37:!![];return _0x18c6cf!==_0x125bda['hash'];}function buildDatasetCodeToAliasMap(_0x56b0d6,_0xd805e7){const _0x5695c4=a37_0x4a4738,_0x58d1fa=loadAliasMap(_0x56b0d6,undefined,resolveApiFilePath(_0x56b0d6,_0xd805e7));return new Map(_0x58d1fa[_0x5695c4(0x11f)](_0x31ef7e=>[_0x31ef7e[_0x5695c4(0x109)],_0x31ef7e[_0x5695c4(0x140)]]));}async function confirmForce(){const _0x2ecd5f=a37_0x4a4738,_0x286df6=createInterface({'input':process['stdin'],'output':process[_0x2ecd5f(0x128)]}),_0x257d7b=await new Promise(_0x5a030e=>{const _0x14e877=_0x2ecd5f;_0x286df6[_0x14e877(0x141)](_0x14e877(0x137),_0x5a030e);});return _0x286df6['close'](),['y',_0x2ecd5f(0x13c)][_0x2ecd5f(0x11d)](_0x257d7b['trim']()[_0x2ecd5f(0x129)]());}
1
+ const a37_0x108758=a37_0x52ee;(function(_0x2f95ba,_0x43f48e){const _0x274c71=a37_0x52ee,_0x49b07c=_0x2f95ba();while(!![]){try{const _0x58b9a0=-parseInt(_0x274c71(0xe7))/0x1*(-parseInt(_0x274c71(0x10d))/0x2)+-parseInt(_0x274c71(0x116))/0x3+-parseInt(_0x274c71(0x102))/0x4*(-parseInt(_0x274c71(0x101))/0x5)+-parseInt(_0x274c71(0xfe))/0x6*(-parseInt(_0x274c71(0x113))/0x7)+parseInt(_0x274c71(0x123))/0x8*(-parseInt(_0x274c71(0x10a))/0x9)+parseInt(_0x274c71(0xf7))/0xa*(parseInt(_0x274c71(0x124))/0xb)+parseInt(_0x274c71(0xe9))/0xc*(parseInt(_0x274c71(0x12d))/0xd);if(_0x58b9a0===_0x43f48e)break;else _0x49b07c['push'](_0x49b07c['shift']());}catch(_0x339371){_0x49b07c['push'](_0x49b07c['shift']());}}}(a37_0x1d41,0xb74cb));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a37_0x1d41(){const _0x550460=['HOOK','functionName','4533648TlBIgI','alias','Pull\x20complete:\x20','525288sLoAkB','yes','lastSync','functions','lockKey','scriptsRoot','apps','lockFilePath','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','Pull\x20only\x20this\x20script\x20type','No\x20remote\x20BFF\x20scripts\x20found.','map','toISOString','17528DbOGKd','7249PaSIcV','would_pull','\x20pulled,\x20','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','Remote\x20script\x20missing\x20content.','COMMON','all','stderr','force','26uuNFTZ','GET','length','10003cddKiW','hash','680172BwgFSK','Lock\x20scope\x20for\x20app\x20\x22','Force\x20pull\x20cancelled.','bff','filePath','pull','version','utf8','stdin','type','bool','\x20skipped,\x20','nonInteractive','skipped','3570xTHpCw','string','stringify','ENDPOINT','operationType','scriptContent','push','6lVDLlN','conflict','appCode','5PxdqwM','779524PBAlyc','boolean','str','\x22\x20not\x20found\x20after\x20ensureLockScope.','includes','message','toLowerCase','datasetCode','2610eAKyJq','scriptType','local\x20unsynced\x20changes','74WWIuMc','question','hookLocation','apiDir'];a37_0x1d41=function(){return _0x550460;};return a37_0x1d41();}import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';function a37_0x52ee(_0x4fffa4,_0x3ae2fd){_0x4fffa4=_0x4fffa4-0xe5;const _0x1d4163=a37_0x1d41();let _0x52eecc=_0x1d4163[_0x4fffa4];return _0x52eecc;}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':a37_0x108758(0xec),'command':a37_0x108758(0xee),'description':a37_0x108758(0x127),'risk':'write','flags':[{'name':'type','type':a37_0x108758(0xf8),'description':a37_0x108758(0x11f),'enum':[a37_0x108758(0x129),a37_0x108758(0xfa),a37_0x108758(0x111)]},{'name':a37_0x108758(0x12c),'type':a37_0x108758(0x103),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x419815){const _0x45b9b2=a37_0x108758,_0x9c0174=loadBffProjectConfig(_0x419815['appCode']),_0x2952f4=await readBffLockFile(_0x9c0174[_0x45b9b2(0x11d)]),{appLock:_0x338916}=ensureLockScope(_0x2952f4??createEmptyBffLock(),_0x419815[_0x45b9b2(0x100)],_0x9c0174[_0x45b9b2(0x11b)],_0x45b9b2(0xee)),_0xd8c67c=normalizeBffType(_0x419815[_0x45b9b2(0x104)](_0x45b9b2(0xf2)))??undefined,_0x4742e5=buildDatasetCodeToAliasMap(_0x419815[_0x45b9b2(0x110)],_0x419815['appCode']),[_0x12ddc4,_0x103ca1]=await Promise['all']([listBffScripts(_0x419815[_0x45b9b2(0x100)],_0xd8c67c),getBffScriptStatistics(_0x419815[_0x45b9b2(0x100)])]),_0x5b0c8e=createHookLocationMap(_0x103ca1),_0x51357c=[];for(const _0x20bf25 of _0x12ddc4){const _0x233763=resolveRemoteScriptTarget(_0x9c0174,_0x20bf25,_0x5b0c8e,_0x338916[_0x45b9b2(0x119)],_0x4742e5);if(!_0x233763){_0x51357c[_0x45b9b2(0xfd)]({'scriptType':_0x20bf25[_0x45b9b2(0x10b)],'functionName':_0x20bf25[_0x45b9b2(0x112)]??'','status':_0x45b9b2(0xf6),'reason':'unresolvable\x20target\x20path'});continue;}const _0x4dc930=_0x338916['functions'][_0x233763['lockKey']],_0x46ad0a=_0x20bf25['scriptContent']!=null?computeContentHash(_0x20bf25[_0x45b9b2(0xfc)]):undefined,_0x210734=await hasUnsyncedLocalChanges(_0x233763[_0x45b9b2(0xed)],_0x4dc930,_0x46ad0a);_0x51357c[_0x45b9b2(0xfd)]({'lockKey':_0x233763[_0x45b9b2(0x11a)],'filePath':_0x233763['filePath'],'remoteId':_0x20bf25['id']??null,'status':_0x210734?_0x45b9b2(0xff):_0x45b9b2(0x125)});}return{'method':_0x45b9b2(0xe5),'url':'/api/management/library/scripts/list?appCode='+_0x419815[_0x45b9b2(0x100)]+(_0xd8c67c?'&type='+_0xd8c67c:''),'body':{'appCode':_0x419815[_0x45b9b2(0x100)],'filterType':_0xd8c67c??null,'files':_0x51357c},'description':'Would\x20inspect\x20'+_0x51357c[_0x45b9b2(0xe6)]+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x5e693d){const _0x12049f=a37_0x108758,_0x5e2266=loadBffProjectConfig(_0x5e693d['appCode']),_0x232288=await readBffLockFile(_0x5e2266['lockFilePath']),{lockData:_0x2cd3cb,appLock:_0x3e78e2}=ensureLockScope(_0x232288??createEmptyBffLock(),_0x5e693d[_0x12049f(0x100)],_0x5e2266[_0x12049f(0x11b)],_0x12049f(0xee)),_0x2f525c=normalizeBffType(_0x5e693d[_0x12049f(0x104)](_0x12049f(0xf2)))??undefined;if(_0x5e693d[_0x12049f(0x104)]('type')&&!_0x2f525c)throw CliErrors['validation']('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0x3e44f7,_0x34222f]=await Promise[_0x12049f(0x12a)]([listBffScripts(_0x5e693d['appCode'],_0x2f525c),getBffScriptStatistics(_0x5e693d[_0x12049f(0x100)])]);if(_0x3e44f7[_0x12049f(0xe6)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x12049f(0x120)};const _0x111c80=_0x5e693d[_0x12049f(0xf3)](_0x12049f(0x12c));if(_0x111c80&&!_0x5e693d['nonInteractive']){const _0x590abb=await confirmForce();if(!_0x590abb)throw CliErrors['cancelled'](_0x12049f(0xeb));}if(_0x111c80&&_0x5e693d[_0x12049f(0xf5)]){}const _0x19654f=buildDatasetCodeToAliasMap(_0x5e693d[_0x12049f(0x110)],_0x5e693d[_0x12049f(0x100)]),_0x3ad9f7=createHookLocationMap(_0x34222f),_0x38e5fb=JSON['parse'](JSON[_0x12049f(0xf9)](_0x2cd3cb)),_0x3f2573=_0x5e693d[_0x12049f(0x100)],_0x474f28=_0x38e5fb[_0x12049f(0x11c)][_0x3f2573];if(!_0x474f28)throw new Error(_0x12049f(0xea)+_0x3f2573+_0x12049f(0x105));const _0x421cad=[],_0x459127=[],_0x4464f1=[];for(const _0xea3e16 of _0x3e44f7){const _0xb1269f=resolveRemoteScriptTarget(_0x5e2266,_0xea3e16,_0x3ad9f7,_0x3e78e2['functions'],_0x19654f);if(!_0xb1269f){_0x459127['push']({'lockKey':_0xea3e16[_0x12049f(0x10b)]+'/'+_0xea3e16[_0x12049f(0x112)],'reason':'unresolvable\x20target\x20path'});continue;}const _0x5890ce=_0x3e78e2[_0x12049f(0x119)][_0xb1269f[_0x12049f(0x11a)]];try{if(!_0xea3e16['id'])throw new Error('Remote\x20script\x20missing\x20id.');if(_0xea3e16[_0x12049f(0xfc)]==null)throw new Error(_0x12049f(0x128));const _0x31221c=_0xea3e16[_0x12049f(0xfc)],_0x21c4cf=computeContentHash(_0x31221c);if(!_0x111c80){const _0x29cc93=await hasUnsyncedLocalChanges(_0xb1269f[_0x12049f(0xed)],_0x5890ce,_0x21c4cf);if(_0x29cc93){_0x459127['push']({'lockKey':_0xb1269f[_0x12049f(0x11a)],'reason':_0x12049f(0x10c)});continue;}}await ensureParentDirectory(_0xb1269f[_0x12049f(0xed)]),await writeFile(_0xb1269f['filePath'],_0x31221c,_0x12049f(0xf0));const _0x15739d={'hash':_0x21c4cf,'remoteId':_0xea3e16['id'],'version':_0xea3e16[_0x12049f(0xef)]};_0xb1269f[_0x12049f(0xf2)]===_0x12049f(0x111)&&_0xb1269f['hookLocation']&&(_0x15739d[_0x12049f(0x114)]=_0xb1269f[_0x12049f(0x10f)][_0x12049f(0x114)],_0x15739d[_0x12049f(0x109)]=_0xb1269f[_0x12049f(0x10f)]['datasetCode'],_0x15739d[_0x12049f(0xfb)]=_0xb1269f[_0x12049f(0x10f)][_0x12049f(0xfb)],_0x15739d['functionNode']=_0xb1269f[_0x12049f(0x10f)]['functionNode']),_0x474f28['functions'][_0xb1269f[_0x12049f(0x11a)]]=_0x15739d,_0x421cad[_0x12049f(0xfd)]({'lockKey':_0xb1269f['lockKey'],'remoteId':_0xea3e16['id']});}catch(_0x330258){_0x4464f1[_0x12049f(0xfd)]({'lockKey':_0xb1269f[_0x12049f(0x11a)],'error':_0x330258 instanceof Error?_0x330258[_0x12049f(0x107)]:String(_0x330258)});}}return _0x474f28[_0x12049f(0x118)]=new Date()[_0x12049f(0x122)](),await writeBffLockFile(_0x5e2266[_0x12049f(0x11d)],_0x38e5fb),{'ok':_0x4464f1[_0x12049f(0xe6)]===0x0,'data':{'pulled':_0x421cad,'skipped':_0x459127,'failed':_0x4464f1},'message':_0x12049f(0x115)+_0x421cad[_0x12049f(0xe6)]+_0x12049f(0x126)+_0x459127[_0x12049f(0xe6)]+_0x12049f(0xf4)+_0x4464f1[_0x12049f(0xe6)]+'\x20failed'};}};async function hasUnsyncedLocalChanges(_0xcf70b3,_0x50513c,_0x10a3d6){const _0x2a17ce=a37_0x108758;if(!await fileExists(_0xcf70b3))return![];const _0x2b4275=await computeFileHash(_0xcf70b3);if(!_0x50513c)return _0x10a3d6?_0x2b4275!==_0x10a3d6:!![];return _0x2b4275!==_0x50513c[_0x2a17ce(0xe8)];}function buildDatasetCodeToAliasMap(_0x4bce6e,_0x2c6b69){const _0x50e0d9=a37_0x108758,_0x3e7c54=loadAliasMap(_0x4bce6e,undefined,resolveApiFilePath(_0x4bce6e,_0x2c6b69));return new Map(_0x3e7c54[_0x50e0d9(0x121)](_0x376b1a=>[_0x376b1a['datasetCode'],_0x376b1a[_0x50e0d9(0x114)]]));}async function confirmForce(){const _0x129fa0=a37_0x108758,_0x21f946=createInterface({'input':process[_0x129fa0(0xf1)],'output':process[_0x129fa0(0x12b)]}),_0x428c81=await new Promise(_0x197d97=>{const _0x3bd8f6=_0x129fa0;_0x21f946[_0x3bd8f6(0x10e)](_0x3bd8f6(0x11e),_0x197d97);});return _0x21f946['close'](),['y',_0x129fa0(0x117)][_0x129fa0(0x106)](_0x428c81['trim']()[_0x129fa0(0x108)]());}
@@ -1 +1 @@
1
- const a38_0x3d0aee=a38_0x2be4;function a38_0x4e07(){const _0x2a679e=['validation','No\x20local\x20BFF\x20functions\x20found.','scriptsRoot','datasetCode','82577ipPBhZ','filePath','Push\x20only\x20this\x20script\x20type','unchanged','datasetId','820176mDohlY','operationType','234444qrNQGq','version','aliasToDatasetCode','cleared','bool','message','75890bslrcx','24SwWZJQ','toISOString','Force\x20push\x20ignoring\x20hash\x20protection','filter','runtime\x20cache\x20not\x20needed','name','/api/management/library/scripts/save','script','POST','lastSync','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','alias','utf8','ENDPOINT','1584621kWJtit','apiDir','type','2363lzrDoC','184hCXyxR','63Icesiq','str','high-risk-write','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','runtime\x20cache\x20clear\x20failed','values','154NfgOAL','lockKey','functionNode','apps','hash','some','Push\x20local\x20BFF\x20scripts\x20to\x20remote','\x22.\x20','force','get','Would\x20inspect\x20','description','string','would_push','every','functions','Lock\x20scope\x20for\x20app\x20\x22','has','boolean','appCode','stringify','\x22\x20not\x20found\x20after\x20ensureLockScope.','lockFilePath','\x20skipped,\x20','7081022WcVKxU','attempted','push','762TNYahV','datasetCodeToDataset',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','update','set','map','940tBTaOo','status','Push\x20complete:\x20','parse','\x20local\x20BFF\x20script(s)\x20for\x20push\x20and\x20clear\x20runtime\x20cache\x20if\x20files\x20are\x20uploaded','HOOK','remoteId','length','Local\x20function\x20not\x20found:\x20'];a38_0x4e07=function(){return _0x2a679e;};return a38_0x4e07();}(function(_0x5138c2,_0x4777cb){const _0x172b3b=a38_0x2be4,_0x45d0de=_0x5138c2();while(!![]){try{const _0x2bddf2=-parseInt(_0x172b3b(0xbd))/0x1*(parseInt(_0x172b3b(0xe0))/0x2)+-parseInt(_0x172b3b(0xba))/0x3+-parseInt(_0x172b3b(0xbe))/0x4*(-parseInt(_0x172b3b(0xab))/0x5)+parseInt(_0x172b3b(0xa5))/0x6*(parseInt(_0x172b3b(0xc5))/0x7)+-parseInt(_0x172b3b(0xa3))/0x8*(-parseInt(_0x172b3b(0xbf))/0x9)+parseInt(_0x172b3b(0xe6))/0xa*(parseInt(_0x172b3b(0xf3))/0xb)+parseInt(_0x172b3b(0xac))/0xc*(-parseInt(_0x172b3b(0xdd))/0xd);if(_0x2bddf2===_0x4777cb)break;else _0x45d0de['push'](_0x45d0de['shift']());}catch(_0x296616){_0x45d0de['push'](_0x45d0de['shift']());}}}(a38_0x4e07,0x7117e));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets,clearBffScriptCache}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{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';import{sleep}from'../../utils/sleep.js';import{CliErrors}from'../../errors.js';function a38_0x2be4(_0x1e76bf,_0x308b99){_0x1e76bf=_0x1e76bf-0x9f;const _0x4e078f=a38_0x4e07();let _0x2be4b4=_0x4e078f[_0x1e76bf];return _0x2be4b4;}import{CLI_BIN_NAME}from'../../constant/cli.js';const CACHE_CLEAR_ATTEMPTS=0x2,CACHE_CLEAR_INTERVAL_MS=0x12c;export const bffPush={'service':'bff','command':'push','description':a38_0x3d0aee(0xcb),'risk':a38_0x3d0aee(0xc1),'flags':[{'name':a38_0x3d0aee(0xbc),'type':a38_0x3d0aee(0xd1),'description':a38_0x3d0aee(0xa0),'enum':['COMMON',a38_0x3d0aee(0xb9),a38_0x3d0aee(0xeb)]},{'name':'name','type':a38_0x3d0aee(0xd1),'description':'Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)'},{'name':'force','type':a38_0x3d0aee(0xd7),'description':a38_0x3d0aee(0xae)}],async 'dryRun'(_0x24fd57){const _0x5bfff6=a38_0x3d0aee,_0x2ed767=loadBffProjectConfig(_0x24fd57['appCode']),_0x4987d6=await readBffLockFile(_0x2ed767[_0x5bfff6(0xdb)]),{appLock:_0x4580ce}=ensureLockScope(_0x4987d6??createEmptyBffLock(),_0x24fd57[_0x5bfff6(0xd8)],_0x2ed767[_0x5bfff6(0xf1)],_0x5bfff6(0xdf)),_0x3547f8=await getTargetFunctions(_0x2ed767,_0x24fd57),_0x5525a2=_0x24fd57[_0x5bfff6(0xa9)](_0x5bfff6(0xcd)),_0x214104=[];for(const _0x41d4aa of _0x3547f8){const _0x1054ca=await computeFileHash(_0x41d4aa[_0x5bfff6(0x9f)]),_0x3441c1=_0x4580ce['functions'][_0x41d4aa[_0x5bfff6(0xc6)]],_0x50fa18=!!_0x3441c1&&_0x3441c1[_0x5bfff6(0xc9)]===_0x1054ca;_0x214104[_0x5bfff6(0xdf)]({'lockKey':_0x41d4aa[_0x5bfff6(0xc6)],'filePath':_0x41d4aa[_0x5bfff6(0x9f)],'remoteId':_0x3441c1?.[_0x5bfff6(0xec)]??null,'mode':_0x3441c1?.[_0x5bfff6(0xec)]?_0x5bfff6(0xe3):'create','status':!_0x5525a2&&_0x50fa18?_0x5bfff6(0xa1):'would_push'});}return{'method':_0x5bfff6(0xb4),'url':_0x5bfff6(0xb2),'body':{'appCode':_0x24fd57[_0x5bfff6(0xd8)],'force':_0x5525a2,'files':_0x214104,'cacheClearAtRuntime':_0x214104[_0x5bfff6(0xca)](_0x35ba6a=>_0x35ba6a['status']===_0x5bfff6(0xd2)),'cacheClearAtRuntimeTimes':_0x214104['some'](_0x3b20eb=>_0x3b20eb[_0x5bfff6(0xe7)]===_0x5bfff6(0xd2))?CACHE_CLEAR_ATTEMPTS:0x0},'description':_0x5bfff6(0xcf)+_0x214104[_0x5bfff6(0xed)]+_0x5bfff6(0xea)};},async 'execute'(_0xf887b6){const _0xf4e066=a38_0x3d0aee,_0x4af3f0=loadBffProjectConfig(_0xf887b6['appCode']),_0x4fb0ef=await readBffLockFile(_0x4af3f0[_0xf4e066(0xdb)]),{lockData:_0x2e3af5,appLock:_0x162e6a}=ensureLockScope(_0x4fb0ef??createEmptyBffLock(),_0xf887b6['appCode'],_0x4af3f0[_0xf4e066(0xf1)],_0xf4e066(0xdf)),_0x392f95=await getTargetFunctions(_0x4af3f0,_0xf887b6);if(_0x392f95[_0xf4e066(0xed)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0xf4e066(0xf0)};const _0xd72ce8=_0xf887b6[_0xf4e066(0xa9)](_0xf4e066(0xcd)),_0x1cb721=JSON[_0xf4e066(0xe9)](JSON[_0xf4e066(0xd9)](_0x2e3af5)),_0x58eaa5=_0x1cb721[_0xf4e066(0xc8)][_0xf887b6['appCode']];if(!_0x58eaa5)throw new Error(_0xf4e066(0xd5)+_0xf887b6[_0xf4e066(0xd8)]+_0xf4e066(0xda));const _0x258cb1=await buildHookMaps(_0xf887b6[_0xf4e066(0xd8)],_0xf887b6[_0xf4e066(0xbb)],_0x392f95,_0x58eaa5),_0x150762=[],_0x23a5df=[],_0x1fefda=[];for(const _0xb48da8 of _0x392f95){const _0x2d9df8=await computeFileHash(_0xb48da8['filePath']),_0x1b3e15=_0x58eaa5[_0xf4e066(0xd4)][_0xb48da8['lockKey']];if(!_0xd72ce8&&_0x1b3e15&&_0x1b3e15[_0xf4e066(0xc9)]===_0x2d9df8){_0x23a5df[_0xf4e066(0xdf)]({'lockKey':_0xb48da8[_0xf4e066(0xc6)],'reason':_0xf4e066(0xa1)});continue;}try{await uploadSingleFunction(_0xf887b6[_0xf4e066(0xd8)],_0xb48da8,_0x58eaa5,_0x258cb1);const _0x295f50=_0x58eaa5[_0xf4e066(0xd4)][_0xb48da8[_0xf4e066(0xc6)]];_0x150762[_0xf4e066(0xdf)]({'lockKey':_0xb48da8[_0xf4e066(0xc6)],'remoteId':_0x295f50?.['remoteId']??0x0});}catch(_0x25daab){_0x1fefda['push']({'lockKey':_0xb48da8['lockKey'],'error':_0x25daab instanceof Error?_0x25daab[_0xf4e066(0xaa)]:String(_0x25daab)});}}_0x58eaa5[_0xf4e066(0xb5)]=new Date()[_0xf4e066(0xad)](),await writeBffLockFile(_0x4af3f0[_0xf4e066(0xdb)],_0x1cb721),await waitForUploadedLockEntries(_0x4af3f0[_0xf4e066(0xdb)],_0xf887b6[_0xf4e066(0xd8)],_0x150762[_0xf4e066(0xe5)](_0x487e11=>_0x487e11['lockKey']));let _0x1cf29b={'attempted':![],'cleared':![]};if(_0x150762[_0xf4e066(0xed)]>0x0)try{let _0x55cd3a='';for(let _0x391140=0x0;_0x391140<CACHE_CLEAR_ATTEMPTS;_0x391140+=0x1){_0x55cd3a=await clearBffScriptCache(),_0x391140<CACHE_CLEAR_ATTEMPTS-0x1&&await sleep(CACHE_CLEAR_INTERVAL_MS);}_0x1cf29b={'attempted':!![],'cleared':!![],'message':_0x55cd3a||'Runtime\x20script\x20cache\x20cleared.'};}catch(_0x3c8add){_0x1cf29b={'attempted':!![],'cleared':![],'error':_0x3c8add instanceof Error?_0x3c8add[_0xf4e066(0xaa)]:String(_0x3c8add)};}const _0x3995ed=_0x1fefda['length']===0x0&&(_0x1cf29b['attempted']?_0x1cf29b[_0xf4e066(0xa8)]:!![]),_0x56a225=_0x1cf29b[_0xf4e066(0xde)]?_0x1cf29b[_0xf4e066(0xa8)]?'runtime\x20cache\x20cleared':_0xf4e066(0xc3):_0xf4e066(0xb0);return{'ok':_0x3995ed,'data':{'uploaded':_0x150762,'skipped':_0x23a5df,'failed':_0x1fefda,'cacheClear':_0x1cf29b},'message':_0xf4e066(0xe8)+_0x150762['length']+'\x20uploaded,\x20'+_0x23a5df[_0xf4e066(0xed)]+_0xf4e066(0xdc)+_0x1fefda[_0xf4e066(0xed)]+'\x20failed,\x20'+_0x56a225};}};async function getTargetFunctions(_0x396846,_0x5f0da5){const _0x4d48ef=a38_0x3d0aee,_0xa530f8=_0x5f0da5[_0x4d48ef(0xc0)](_0x4d48ef(0xbc)),_0x798c1b=_0x5f0da5[_0x4d48ef(0xc0)](_0x4d48ef(0xb1)),_0x221261=normalizeBffType(_0xa530f8)??undefined;if(_0x798c1b&&!_0x221261)throw CliErrors[_0x4d48ef(0xef)](_0x4d48ef(0xb6));const _0x4bdec1=await scanLocalBffFunctions(_0x396846,_0x221261);if(_0x798c1b){const _0x1d42e6=_0x4bdec1[_0x4d48ef(0xaf)](_0x45f952=>_0x45f952[_0x4d48ef(0xb1)]===_0x798c1b);if(_0x1d42e6[_0x4d48ef(0xed)]===0x0)throw CliErrors[_0x4d48ef(0xef)](_0x4d48ef(0xee)+_0x221261+'/'+_0x798c1b);return _0x1d42e6;}return _0x4bdec1;}async function buildHookMaps(_0x5ecb14,_0xaefe61,_0x58b0c4,_0x2ed2dd){const _0x252b72=a38_0x3d0aee,_0x44243c=_0x58b0c4[_0x252b72(0xca)](_0x8ec9e3=>_0x8ec9e3['type']==='HOOK');if(!_0x44243c)return{'aliasToDatasetCode':new Map(),'datasetCodeToDataset':new Map()};const _0xfb7493=loadAliasMap(_0xaefe61,undefined,resolveApiFilePath(_0xaefe61,_0x5ecb14)),_0x526e8a=new Map(_0xfb7493[_0x252b72(0xe5)](_0x39258d=>[_0x39258d[_0x252b72(0xb7)],_0x39258d[_0x252b72(0xf2)]]));for(const _0x3763da of Object[_0x252b72(0xc4)](_0x2ed2dd['functions'])){_0x3763da['alias']&&_0x3763da[_0x252b72(0xf2)]&&!_0x526e8a[_0x252b72(0xd6)](_0x3763da['alias'])&&_0x526e8a[_0x252b72(0xe4)](_0x3763da['alias'],_0x3763da[_0x252b72(0xf2)]);}const _0x2affb0=await listDatasets(_0x5ecb14),_0x449895=new Map(_0x2affb0[_0x252b72(0xe5)](_0x29bf74=>[_0x29bf74['code'],_0x29bf74]));return{'aliasToDatasetCode':_0x526e8a,'datasetCodeToDataset':_0x449895};}async function uploadSingleFunction(_0x14bd2a,_0x20063a,_0x33b51b,_0x18ef66){const _0x235bd1=a38_0x3d0aee,_0x18921d=await readFile(_0x20063a[_0x235bd1(0x9f)],_0x235bd1(0xb8)),_0x577134=await computeFileHash(_0x20063a[_0x235bd1(0x9f)]),_0x28c847=_0x33b51b[_0x235bd1(0xd4)][_0x20063a['lockKey']];if(_0x28c847?.['remoteId']&&_0x28c847[_0x235bd1(0xa6)]==null)throw CliErrors[_0x235bd1(0xef)](_0x20063a[_0x235bd1(0xc6)]+_0x235bd1(0xe2));let _0x30fbd4=extractScriptDescription(_0x18921d);if(!_0x30fbd4&&_0x28c847?.['remoteId']){const _0x55b3bc=await getBffScriptInfo(_0x28c847[_0x235bd1(0xec)]);_0x30fbd4=_0x55b3bc['description']||undefined;}const _0x1aabd3={'appCode':_0x14bd2a,'functionName':_0x20063a[_0x235bd1(0xb1)],'scriptType':_0x20063a['type'],'scriptContent':_0x18921d};if(_0x28c847?.[_0x235bd1(0xec)])_0x1aabd3['id']=_0x28c847[_0x235bd1(0xec)];if(_0x28c847?.[_0x235bd1(0xa6)]!=null)_0x1aabd3[_0x235bd1(0xa6)]=_0x28c847[_0x235bd1(0xa6)];if(_0x30fbd4)_0x1aabd3[_0x235bd1(0xd0)]=_0x30fbd4;if(_0x20063a[_0x235bd1(0xbc)]===_0x235bd1(0xeb)){const _0x4fdb34=_0x20063a[_0x235bd1(0xb7)];if(!_0x4fdb34||!_0x20063a[_0x235bd1(0xa4)]||!_0x20063a['functionNode'])throw CliErrors['validation']('Incomplete\x20HOOK\x20path:\x20'+_0x20063a[_0x235bd1(0xc6)]);const _0x46f3c9=_0x18ef66[_0x235bd1(0xa7)][_0x235bd1(0xce)](_0x4fdb34)??_0x28c847?.[_0x235bd1(0xf2)]??_0x4fdb34,_0x50022f=_0x18ef66[_0x235bd1(0xe1)][_0x235bd1(0xce)](_0x46f3c9);if(!_0x50022f)throw CliErrors[_0x235bd1(0xef)]('Cannot\x20resolve\x20dataset\x20for\x20\x22'+_0x4fdb34+_0x235bd1(0xcc)+('Run\x20`'+CLI_BIN_NAME+_0x235bd1(0xc2)));_0x1aabd3[_0x235bd1(0xa2)]=_0x50022f['id'],_0x1aabd3['operationType']=_0x20063a[_0x235bd1(0xa4)],_0x1aabd3[_0x235bd1(0xc7)]=_0x20063a[_0x235bd1(0xc7)];}const _0x4f7d31=await saveBffScript(_0x1aabd3),_0x2b13e1=_0x4f7d31['id'],_0xc6b23b=_0x4f7d31[_0x235bd1(0xb3)]??await getBffScriptInfo(_0x2b13e1),_0x596eb5={'hash':_0x577134,'remoteId':_0x2b13e1,'version':_0xc6b23b['version']};if(_0x20063a[_0x235bd1(0xbc)]==='HOOK'){const _0x2a97b7=_0x20063a[_0x235bd1(0xb7)],_0x18ec9d=_0x18ef66[_0x235bd1(0xa7)]['get'](_0x2a97b7)??_0x28c847?.[_0x235bd1(0xf2)]??_0x2a97b7;_0x18ef66[_0x235bd1(0xa7)][_0x235bd1(0xd6)](_0x2a97b7)?_0x596eb5[_0x235bd1(0xb7)]=_0x2a97b7:_0x596eb5[_0x235bd1(0xb7)]=_0x28c847?.['alias'],_0x596eb5[_0x235bd1(0xf2)]=_0x18ec9d,_0x596eb5[_0x235bd1(0xa4)]=_0x20063a[_0x235bd1(0xa4)],_0x596eb5[_0x235bd1(0xc7)]=_0x20063a[_0x235bd1(0xc7)];}_0x33b51b[_0x235bd1(0xd4)][_0x20063a[_0x235bd1(0xc6)]]=_0x596eb5;}const LOCK_SETTLE_RETRY_COUNT=0x14,LOCK_SETTLE_DELAY_MS=0x64;async function waitForUploadedLockEntries(_0x16bfe2,_0x5407ae,_0x5e8cb4){const _0x4a3273=a38_0x3d0aee;if(_0x5e8cb4['length']===0x0)return;for(let _0x370570=0x0;_0x370570<LOCK_SETTLE_RETRY_COUNT;_0x370570+=0x1){const _0x532b82=await readBffLockFile(_0x16bfe2),_0x554472=_0x532b82?.['apps']?.[_0x5407ae]?.[_0x4a3273(0xd4)]??{},_0x46ec93=_0x5e8cb4[_0x4a3273(0xd3)](_0xb93f5d=>!!_0x554472[_0xb93f5d]?.['remoteId']);if(_0x46ec93)return;await sleep(LOCK_SETTLE_DELAY_MS);}throw new Error('Lock\x20file\x20not\x20settled\x20after\x20push\x20for\x20'+_0x5e8cb4['join'](',\x20')+'.');}
1
+ function a38_0x2c1a(){const _0x18dc97=['values','27276aZqEJG','parse','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','cleared','set','\x22\x20not\x20found\x20after\x20ensureLockScope.','lastSync','type','Incomplete\x20HOOK\x20path:\x20','alias','some','boolean','aliasToDatasetCode','appCode','status','code','get','has','lockKey','396252ajsKCV','Push\x20local\x20BFF\x20scripts\x20to\x20remote','unchanged','Push\x20complete:\x20','update','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','datasetId','push','1547142NphPYG','59226lZQQPy','3763930YjFBSY','script','bool',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','bff','\x20uploaded,\x20','1892AltZRl','Lock\x20scope\x20for\x20app\x20\x22','7JEMToT','str','9LqXPjP','message','length','functionNode','map','Run\x20`','attempted','force','operationType','\x22.\x20','\x20failed,\x20','Force\x20push\x20ignoring\x20hash\x20protection','datasetCodeToDataset','functions','\x20skipped,\x20','datasetCode','POST','scriptsRoot','runtime\x20cache\x20cleared','ENDPOINT','stringify','8ymlrYm','validation','Push\x20only\x20this\x20script\x20type','apps','high-risk-write','hash','version','439724NymUDF','COMMON','string','create','description','Would\x20inspect\x20','join','name','remoteId','filePath','lockFilePath','10ZooxCM','runtime\x20cache\x20clear\x20failed','Lock\x20file\x20not\x20settled\x20after\x20push\x20for\x20','HOOK','3723488okpeVO','would_push'];a38_0x2c1a=function(){return _0x18dc97;};return a38_0x2c1a();}const a38_0x57b252=a38_0x48ec;(function(_0x4392b8,_0x45667d){const _0x15783c=a38_0x48ec,_0x489f0a=_0x4392b8();while(!![]){try{const _0x38f276=-parseInt(_0x15783c(0x134))/0x1+parseInt(_0x15783c(0x12d))/0x2*(-parseInt(_0x15783c(0x10d))/0x3)+-parseInt(_0x15783c(0x104))/0x4*(-parseInt(_0x15783c(0xe9))/0x5)+parseInt(_0x15783c(0x10c))/0x6*(parseInt(_0x15783c(0x116))/0x7)+-parseInt(_0x15783c(0xed))/0x8*(parseInt(_0x15783c(0x118))/0x9)+parseInt(_0x15783c(0x10e))/0xa+-parseInt(_0x15783c(0x114))/0xb*(-parseInt(_0x15783c(0xf0))/0xc);if(_0x38f276===_0x45667d)break;else _0x489f0a['push'](_0x489f0a['shift']());}catch(_0x4182ce){_0x489f0a['push'](_0x489f0a['shift']());}}}(a38_0x2c1a,0x3a664));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets,clearBffScriptCache}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{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';import{sleep}from'../../utils/sleep.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';const CACHE_CLEAR_ATTEMPTS=0x2,CACHE_CLEAR_INTERVAL_MS=0x12c;export const bffPush={'service':a38_0x57b252(0x112),'command':a38_0x57b252(0x10b),'description':a38_0x57b252(0x105),'risk':a38_0x57b252(0x131),'flags':[{'name':a38_0x57b252(0xf8),'type':a38_0x57b252(0x136),'description':a38_0x57b252(0x12f),'enum':[a38_0x57b252(0x135),a38_0x57b252(0x12b),a38_0x57b252(0xec)]},{'name':'name','type':a38_0x57b252(0x136),'description':a38_0x57b252(0xf2)},{'name':'force','type':a38_0x57b252(0xfc),'description':a38_0x57b252(0x123)}],async 'dryRun'(_0x43d859){const _0xceb9f8=a38_0x57b252,_0x1c4e75=loadBffProjectConfig(_0x43d859[_0xceb9f8(0xfe)]),_0x5c4167=await readBffLockFile(_0x1c4e75[_0xceb9f8(0xe8)]),{appLock:_0x2318ee}=ensureLockScope(_0x5c4167??createEmptyBffLock(),_0x43d859[_0xceb9f8(0xfe)],_0x1c4e75[_0xceb9f8(0x129)],_0xceb9f8(0x10b)),_0x2361f6=await getTargetFunctions(_0x1c4e75,_0x43d859),_0x4c36b8=_0x43d859[_0xceb9f8(0x110)](_0xceb9f8(0x11f)),_0x7f55cf=[];for(const _0xa33794 of _0x2361f6){const _0x1b9cc7=await computeFileHash(_0xa33794['filePath']),_0x2a3917=_0x2318ee[_0xceb9f8(0x125)][_0xa33794[_0xceb9f8(0x103)]],_0x3c0073=!!_0x2a3917&&_0x2a3917[_0xceb9f8(0x132)]===_0x1b9cc7;_0x7f55cf[_0xceb9f8(0x10b)]({'lockKey':_0xa33794['lockKey'],'filePath':_0xa33794[_0xceb9f8(0xe7)],'remoteId':_0x2a3917?.[_0xceb9f8(0xe6)]??null,'mode':_0x2a3917?.[_0xceb9f8(0xe6)]?_0xceb9f8(0x108):_0xceb9f8(0x137),'status':!_0x4c36b8&&_0x3c0073?_0xceb9f8(0x106):_0xceb9f8(0xee)});}return{'method':_0xceb9f8(0x128),'url':'/api/management/library/scripts/save','body':{'appCode':_0x43d859[_0xceb9f8(0xfe)],'force':_0x4c36b8,'files':_0x7f55cf,'cacheClearAtRuntime':_0x7f55cf[_0xceb9f8(0xfb)](_0x4ecc6a=>_0x4ecc6a['status']===_0xceb9f8(0xee)),'cacheClearAtRuntimeTimes':_0x7f55cf[_0xceb9f8(0xfb)](_0x5ddc1d=>_0x5ddc1d[_0xceb9f8(0xff)]===_0xceb9f8(0xee))?CACHE_CLEAR_ATTEMPTS:0x0},'description':_0xceb9f8(0x139)+_0x7f55cf['length']+'\x20local\x20BFF\x20script(s)\x20for\x20push\x20and\x20clear\x20runtime\x20cache\x20if\x20files\x20are\x20uploaded'};},async 'execute'(_0x1fa870){const _0xf56435=a38_0x57b252,_0x3696aa=loadBffProjectConfig(_0x1fa870[_0xf56435(0xfe)]),_0x48b74a=await readBffLockFile(_0x3696aa['lockFilePath']),{lockData:_0x50af19,appLock:_0x895a1}=ensureLockScope(_0x48b74a??createEmptyBffLock(),_0x1fa870[_0xf56435(0xfe)],_0x3696aa[_0xf56435(0x129)],_0xf56435(0x10b)),_0x231666=await getTargetFunctions(_0x3696aa,_0x1fa870);if(_0x231666['length']===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':'No\x20local\x20BFF\x20functions\x20found.'};const _0x3b1c99=_0x1fa870[_0xf56435(0x110)](_0xf56435(0x11f)),_0x15d6b0=JSON[_0xf56435(0xf1)](JSON[_0xf56435(0x12c)](_0x50af19)),_0x52d5d2=_0x15d6b0[_0xf56435(0x130)][_0x1fa870[_0xf56435(0xfe)]];if(!_0x52d5d2)throw new Error(_0xf56435(0x115)+_0x1fa870[_0xf56435(0xfe)]+_0xf56435(0xf6));const _0x3fb509=await buildHookMaps(_0x1fa870['appCode'],_0x1fa870['apiDir'],_0x231666,_0x52d5d2),_0x4412a3=[],_0x473566=[],_0x34be0a=[];for(const _0x224c90 of _0x231666){const _0x2e9bb7=await computeFileHash(_0x224c90[_0xf56435(0xe7)]),_0x23d421=_0x52d5d2['functions'][_0x224c90[_0xf56435(0x103)]];if(!_0x3b1c99&&_0x23d421&&_0x23d421[_0xf56435(0x132)]===_0x2e9bb7){_0x473566[_0xf56435(0x10b)]({'lockKey':_0x224c90[_0xf56435(0x103)],'reason':'unchanged'});continue;}try{await uploadSingleFunction(_0x1fa870['appCode'],_0x224c90,_0x52d5d2,_0x3fb509);const _0x5ee947=_0x52d5d2[_0xf56435(0x125)][_0x224c90['lockKey']];_0x4412a3[_0xf56435(0x10b)]({'lockKey':_0x224c90[_0xf56435(0x103)],'remoteId':_0x5ee947?.[_0xf56435(0xe6)]??0x0});}catch(_0x334fad){_0x34be0a[_0xf56435(0x10b)]({'lockKey':_0x224c90[_0xf56435(0x103)],'error':_0x334fad instanceof Error?_0x334fad[_0xf56435(0x119)]:String(_0x334fad)});}}_0x52d5d2[_0xf56435(0xf7)]=new Date()['toISOString'](),await writeBffLockFile(_0x3696aa[_0xf56435(0xe8)],_0x15d6b0),await waitForUploadedLockEntries(_0x3696aa['lockFilePath'],_0x1fa870[_0xf56435(0xfe)],_0x4412a3['map'](_0x33100d=>_0x33100d['lockKey']));let _0x4f4a60={'attempted':![],'cleared':![]};if(_0x4412a3[_0xf56435(0x11a)]>0x0)try{let _0x3e30ad='';for(let _0x2acc44=0x0;_0x2acc44<CACHE_CLEAR_ATTEMPTS;_0x2acc44+=0x1){_0x3e30ad=await clearBffScriptCache(),_0x2acc44<CACHE_CLEAR_ATTEMPTS-0x1&&await sleep(CACHE_CLEAR_INTERVAL_MS);}_0x4f4a60={'attempted':!![],'cleared':!![],'message':_0x3e30ad||'Runtime\x20script\x20cache\x20cleared.'};}catch(_0x4ca97c){_0x4f4a60={'attempted':!![],'cleared':![],'error':_0x4ca97c instanceof Error?_0x4ca97c[_0xf56435(0x119)]:String(_0x4ca97c)};}const _0x2e82bb=_0x34be0a[_0xf56435(0x11a)]===0x0&&(_0x4f4a60[_0xf56435(0x11e)]?_0x4f4a60[_0xf56435(0xf4)]:!![]),_0x31e3c5=_0x4f4a60['attempted']?_0x4f4a60['cleared']?_0xf56435(0x12a):_0xf56435(0xea):'runtime\x20cache\x20not\x20needed';return{'ok':_0x2e82bb,'data':{'uploaded':_0x4412a3,'skipped':_0x473566,'failed':_0x34be0a,'cacheClear':_0x4f4a60},'message':_0xf56435(0x107)+_0x4412a3['length']+_0xf56435(0x113)+_0x473566[_0xf56435(0x11a)]+_0xf56435(0x126)+_0x34be0a[_0xf56435(0x11a)]+_0xf56435(0x122)+_0x31e3c5};}};async function getTargetFunctions(_0x3fce26,_0x191487){const _0x7d5ca=a38_0x57b252,_0x148758=_0x191487[_0x7d5ca(0x117)](_0x7d5ca(0xf8)),_0x414f66=_0x191487[_0x7d5ca(0x117)](_0x7d5ca(0x13b)),_0x304542=normalizeBffType(_0x148758)??undefined;if(_0x414f66&&!_0x304542)throw CliErrors[_0x7d5ca(0x12e)](_0x7d5ca(0xf3));const _0x2cc331=await scanLocalBffFunctions(_0x3fce26,_0x304542);if(_0x414f66){const _0x406884=_0x2cc331['filter'](_0x151f48=>_0x151f48[_0x7d5ca(0x13b)]===_0x414f66);if(_0x406884['length']===0x0)throw CliErrors[_0x7d5ca(0x12e)]('Local\x20function\x20not\x20found:\x20'+_0x304542+'/'+_0x414f66);return _0x406884;}return _0x2cc331;}async function buildHookMaps(_0x8fa5f8,_0x288682,_0x8e108,_0x1312c1){const _0x4f5394=a38_0x57b252,_0x20b8d6=_0x8e108['some'](_0x265878=>_0x265878['type']==='HOOK');if(!_0x20b8d6)return{'aliasToDatasetCode':new Map(),'datasetCodeToDataset':new Map()};const _0x50412e=loadAliasMap(_0x288682,undefined,resolveApiFilePath(_0x288682,_0x8fa5f8)),_0x52b708=new Map(_0x50412e[_0x4f5394(0x11c)](_0x2534d7=>[_0x2534d7[_0x4f5394(0xfa)],_0x2534d7['datasetCode']]));for(const _0x348432 of Object[_0x4f5394(0xef)](_0x1312c1['functions'])){_0x348432[_0x4f5394(0xfa)]&&_0x348432[_0x4f5394(0x127)]&&!_0x52b708[_0x4f5394(0x102)](_0x348432[_0x4f5394(0xfa)])&&_0x52b708[_0x4f5394(0xf5)](_0x348432['alias'],_0x348432[_0x4f5394(0x127)]);}const _0x228b61=await listDatasets(_0x8fa5f8),_0x57d685=new Map(_0x228b61['map'](_0x408881=>[_0x408881[_0x4f5394(0x100)],_0x408881]));return{'aliasToDatasetCode':_0x52b708,'datasetCodeToDataset':_0x57d685};}async function uploadSingleFunction(_0xf6df37,_0x57e9b0,_0x34bc1d,_0x5b641d){const _0x4c77c6=a38_0x57b252,_0x5d01b5=await readFile(_0x57e9b0[_0x4c77c6(0xe7)],'utf8'),_0x237142=await computeFileHash(_0x57e9b0['filePath']),_0x56f25e=_0x34bc1d[_0x4c77c6(0x125)][_0x57e9b0['lockKey']];if(_0x56f25e?.[_0x4c77c6(0xe6)]&&_0x56f25e[_0x4c77c6(0x133)]==null)throw CliErrors[_0x4c77c6(0x12e)](_0x57e9b0[_0x4c77c6(0x103)]+_0x4c77c6(0x111));let _0x29f88c=extractScriptDescription(_0x5d01b5);if(!_0x29f88c&&_0x56f25e?.[_0x4c77c6(0xe6)]){const _0x59b794=await getBffScriptInfo(_0x56f25e[_0x4c77c6(0xe6)]);_0x29f88c=_0x59b794[_0x4c77c6(0x138)]||undefined;}const _0x36c4c8={'appCode':_0xf6df37,'functionName':_0x57e9b0[_0x4c77c6(0x13b)],'scriptType':_0x57e9b0[_0x4c77c6(0xf8)],'scriptContent':_0x5d01b5};if(_0x56f25e?.[_0x4c77c6(0xe6)])_0x36c4c8['id']=_0x56f25e[_0x4c77c6(0xe6)];if(_0x56f25e?.[_0x4c77c6(0x133)]!=null)_0x36c4c8[_0x4c77c6(0x133)]=_0x56f25e['version'];if(_0x29f88c)_0x36c4c8[_0x4c77c6(0x138)]=_0x29f88c;if(_0x57e9b0[_0x4c77c6(0xf8)]==='HOOK'){const _0x42e114=_0x57e9b0[_0x4c77c6(0xfa)];if(!_0x42e114||!_0x57e9b0['operationType']||!_0x57e9b0['functionNode'])throw CliErrors[_0x4c77c6(0x12e)](_0x4c77c6(0xf9)+_0x57e9b0['lockKey']);const _0x30ff2d=_0x5b641d[_0x4c77c6(0xfd)][_0x4c77c6(0x101)](_0x42e114)??_0x56f25e?.[_0x4c77c6(0x127)]??_0x42e114,_0x4046e7=_0x5b641d[_0x4c77c6(0x124)][_0x4c77c6(0x101)](_0x30ff2d);if(!_0x4046e7)throw CliErrors[_0x4c77c6(0x12e)]('Cannot\x20resolve\x20dataset\x20for\x20\x22'+_0x42e114+_0x4c77c6(0x121)+(_0x4c77c6(0x11d)+CLI_BIN_NAME+_0x4c77c6(0x109)));_0x36c4c8[_0x4c77c6(0x10a)]=_0x4046e7['id'],_0x36c4c8[_0x4c77c6(0x120)]=_0x57e9b0['operationType'],_0x36c4c8[_0x4c77c6(0x11b)]=_0x57e9b0[_0x4c77c6(0x11b)];}const _0x5159f9=await saveBffScript(_0x36c4c8),_0xb0068d=_0x5159f9['id'],_0x37ce78=_0x5159f9[_0x4c77c6(0x10f)]??await getBffScriptInfo(_0xb0068d),_0x461d9d={'hash':_0x237142,'remoteId':_0xb0068d,'version':_0x37ce78[_0x4c77c6(0x133)]};if(_0x57e9b0[_0x4c77c6(0xf8)]==='HOOK'){const _0x14c6ef=_0x57e9b0[_0x4c77c6(0xfa)],_0x45bbe9=_0x5b641d[_0x4c77c6(0xfd)][_0x4c77c6(0x101)](_0x14c6ef)??_0x56f25e?.[_0x4c77c6(0x127)]??_0x14c6ef;_0x5b641d[_0x4c77c6(0xfd)]['has'](_0x14c6ef)?_0x461d9d['alias']=_0x14c6ef:_0x461d9d[_0x4c77c6(0xfa)]=_0x56f25e?.[_0x4c77c6(0xfa)],_0x461d9d[_0x4c77c6(0x127)]=_0x45bbe9,_0x461d9d[_0x4c77c6(0x120)]=_0x57e9b0['operationType'],_0x461d9d[_0x4c77c6(0x11b)]=_0x57e9b0[_0x4c77c6(0x11b)];}_0x34bc1d[_0x4c77c6(0x125)][_0x57e9b0[_0x4c77c6(0x103)]]=_0x461d9d;}function a38_0x48ec(_0x502df1,_0x274fe5){_0x502df1=_0x502df1-0xe6;const _0x2c1ad9=a38_0x2c1a();let _0x48ec48=_0x2c1ad9[_0x502df1];return _0x48ec48;}const LOCK_SETTLE_RETRY_COUNT=0x14,LOCK_SETTLE_DELAY_MS=0x64;async function waitForUploadedLockEntries(_0x2c7324,_0xfebdc7,_0x4161db){const _0x51a3ee=a38_0x57b252;if(_0x4161db[_0x51a3ee(0x11a)]===0x0)return;for(let _0x46af1b=0x0;_0x46af1b<LOCK_SETTLE_RETRY_COUNT;_0x46af1b+=0x1){const _0x48a0e6=await readBffLockFile(_0x2c7324),_0x5e86a7=_0x48a0e6?.['apps']?.[_0xfebdc7]?.[_0x51a3ee(0x125)]??{},_0x221240=_0x4161db['every'](_0x316232=>!!_0x5e86a7[_0x316232]?.[_0x51a3ee(0xe6)]);if(_0x221240)return;await sleep(LOCK_SETTLE_DELAY_MS);}throw new Error(_0x51a3ee(0xeb)+_0x4161db[_0x51a3ee(0x13a)](',\x20')+'.');}
@@ -1 +1 @@
1
- const a39_0x29d9d7=a39_0x10ad;(function(_0x165c52,_0x498e05){const _0xdb0e04=a39_0x10ad,_0x3cfda1=_0x165c52();while(!![]){try{const _0xfedf9d=-parseInt(_0xdb0e04(0x1f7))/0x1+parseInt(_0xdb0e04(0x1f2))/0x2*(parseInt(_0xdb0e04(0x1fc))/0x3)+-parseInt(_0xdb0e04(0x20a))/0x4+parseInt(_0xdb0e04(0x1ff))/0x5+parseInt(_0xdb0e04(0x208))/0x6+-parseInt(_0xdb0e04(0x20c))/0x7+-parseInt(_0xdb0e04(0x1f4))/0x8*(-parseInt(_0xdb0e04(0x209))/0x9);if(_0xfedf9d===_0x498e05)break;else _0x3cfda1['push'](_0x3cfda1['shift']());}catch(_0x46754d){_0x3cfda1['push'](_0x3cfda1['shift']());}}}(a39_0x38fd,0x7d691));function a39_0x10ad(_0x17c921,_0x5c3e50){_0x17c921=_0x17c921-0x1ed;const _0x38fd69=a39_0x38fd();let _0x10ad9c=_0x38fd69[_0x17c921];return _0x10ad9c;}import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';function a39_0x38fd(){const _0x5ce71e=['1964496qBDKGt','has','2674644PFjyUL','push','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','functions','Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally','map','1065930QpdNbc','hash','26440uKYifO','filePath','\x20remote-only','602648guCyru','alias','lockKey','\x20added,\x20','all','3CcjZJY','status','\x20unchanged','4343775sCduIU','All\x20BFF\x20scripts\x20are\x20in\x20sync.','scriptsRoot','length','apiDir','remote','\x20modified,\x20','lockFilePath','appCode','1286160mLwkog','1017tTAcBR'];a39_0x38fd=function(){return _0x5ce71e;};return a39_0x38fd();}import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,resolveRemoteScriptTarget,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';export const bffStatus={'service':'bff','command':a39_0x29d9d7(0x1fd),'description':a39_0x29d9d7(0x1ee),'risk':'read','flags':[{'name':'remote','type':'boolean','description':a39_0x29d9d7(0x1f0)}],async 'execute'(_0xee0e1c){const _0x176943=a39_0x29d9d7,_0xb3a7e3=loadBffProjectConfig(_0xee0e1c[_0x176943(0x207)]),_0x14d0da=await readBffLockFile(_0xb3a7e3[_0x176943(0x206)]),{appLock:_0x1a0e1a}=ensureLockScope(_0x14d0da??createEmptyBffLock(),_0xee0e1c[_0x176943(0x207)],_0xb3a7e3[_0x176943(0x201)],_0x176943(0x1fd)),_0x1f7b6e=await scanLocalBffFunctions(_0xb3a7e3),_0x1318d0=[],_0x159c3a=[],_0x252407=[];for(const _0x264aa2 of _0x1f7b6e){const _0x4c85a4=await computeFileHash(_0x264aa2[_0x176943(0x1f5)]),_0x7b9eb9=_0x1a0e1a[_0x176943(0x1ef)][_0x264aa2[_0x176943(0x1f9)]];if(!_0x7b9eb9)_0x1318d0[_0x176943(0x1ed)](_0x264aa2[_0x176943(0x1f9)]);else _0x7b9eb9[_0x176943(0x1f3)]!==_0x4c85a4?_0x159c3a[_0x176943(0x1ed)](_0x264aa2[_0x176943(0x1f9)]):_0x252407['push'](_0x264aa2[_0x176943(0x1f9)]);}const _0x550c2b=[];if(_0xee0e1c['bool'](_0x176943(0x204))){const _0x345a91=loadAliasMap(_0xee0e1c['apiDir'],undefined,resolveApiFilePath(_0xee0e1c[_0x176943(0x203)],_0xee0e1c['appCode'])),_0x336105=new Map(_0x345a91[_0x176943(0x1f1)](_0x3bc38d=>[_0x3bc38d['datasetCode'],_0x3bc38d[_0x176943(0x1f8)]])),[_0x15db0e,_0x396aae]=await Promise[_0x176943(0x1fb)]([listBffScripts(_0xee0e1c['appCode']),getBffScriptStatistics(_0xee0e1c[_0x176943(0x207)])]),_0x5cf3e2=createHookLocationMap(_0x396aae),_0x2d833c=new Set(_0x1f7b6e[_0x176943(0x1f1)](_0x256a93=>_0x256a93['lockKey']));for(const _0x3e1078 of _0x15db0e){const _0x5ddfa8=resolveRemoteScriptTarget(_0xb3a7e3,_0x3e1078,_0x5cf3e2,_0x1a0e1a[_0x176943(0x1ef)],_0x336105);_0x5ddfa8&&!_0x2d833c[_0x176943(0x20b)](_0x5ddfa8[_0x176943(0x1f9)])&&_0x550c2b[_0x176943(0x1ed)](_0x5ddfa8[_0x176943(0x1f9)]);}}const _0xc8351a=_0x1318d0[_0x176943(0x202)]===0x0&&_0x159c3a[_0x176943(0x202)]===0x0&&_0x550c2b['length']===0x0;return{'ok':!![],'data':{'added':_0x1318d0,'modified':_0x159c3a,'unchanged':_0x252407,'remoteOnly':_0x550c2b},'message':_0xc8351a?_0x176943(0x200):_0x1318d0['length']+_0x176943(0x1fa)+_0x159c3a['length']+_0x176943(0x205)+_0x252407[_0x176943(0x202)]+_0x176943(0x1fe)+(_0x550c2b[_0x176943(0x202)]>0x0?',\x20'+_0x550c2b[_0x176943(0x202)]+_0x176943(0x1f6):'')};}};
1
+ const a39_0x31990a=a39_0x1e7b;(function(_0x24d031,_0x4e74d7){const _0x2a4106=a39_0x1e7b,_0x12dc11=_0x24d031();while(!![]){try{const _0x505d18=-parseInt(_0x2a4106(0x1e1))/0x1+-parseInt(_0x2a4106(0x1e4))/0x2*(-parseInt(_0x2a4106(0x1e3))/0x3)+-parseInt(_0x2a4106(0x1d4))/0x4*(parseInt(_0x2a4106(0x1ec))/0x5)+parseInt(_0x2a4106(0x1e2))/0x6+-parseInt(_0x2a4106(0x1d6))/0x7*(parseInt(_0x2a4106(0x1e6))/0x8)+parseInt(_0x2a4106(0x1ed))/0x9+parseInt(_0x2a4106(0x1eb))/0xa*(parseInt(_0x2a4106(0x1d7))/0xb);if(_0x505d18===_0x4e74d7)break;else _0x12dc11['push'](_0x12dc11['shift']());}catch(_0xb5d52){_0x12dc11['push'](_0x12dc11['shift']());}}}(a39_0x2391,0xcd1fa));import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';function a39_0x1e7b(_0x57fdae,_0x261b36){_0x57fdae=_0x57fdae-0x1d2;const _0x2391bd=a39_0x2391();let _0x1e7b93=_0x2391bd[_0x57fdae];return _0x1e7b93;}import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,resolveRemoteScriptTarget,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';function a39_0x2391(){const _0x5c1e61=['map','21534060rLFJVz','160svKlJH','662166vpuNkt','\x20unchanged','has','alias','filePath','functions','\x20modified,\x20','lockKey','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','push','125012ecbKvN','Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally','7VhncoI','11EAJyiO','datasetCode','hash','\x20added,\x20','length','status','lockFilePath','All\x20BFF\x20scripts\x20are\x20in\x20sync.','\x20remote-only','remote','1421770PfzUAl','1343286fmgjnp','75gwQjwc','76730LxzoGc','apiDir','1183472uCCsal','scriptsRoot','appCode','all'];a39_0x2391=function(){return _0x5c1e61;};return a39_0x2391();}import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';export const bffStatus={'service':'bff','command':'status','description':a39_0x31990a(0x1d2),'risk':'read','flags':[{'name':'remote','type':'boolean','description':a39_0x31990a(0x1d5)}],async 'execute'(_0x532496){const _0xd9a573=a39_0x31990a,_0x4c211b=loadBffProjectConfig(_0x532496[_0xd9a573(0x1e8)]),_0x4da211=await readBffLockFile(_0x4c211b[_0xd9a573(0x1dd)]),{appLock:_0x4bd3cc}=ensureLockScope(_0x4da211??createEmptyBffLock(),_0x532496[_0xd9a573(0x1e8)],_0x4c211b[_0xd9a573(0x1e7)],_0xd9a573(0x1dc)),_0x3b3c86=await scanLocalBffFunctions(_0x4c211b),_0x2aa530=[],_0x580379=[],_0x56939f=[];for(const _0x14a16a of _0x3b3c86){const _0x34c067=await computeFileHash(_0x14a16a[_0xd9a573(0x1f1)]),_0x44b6b8=_0x4bd3cc[_0xd9a573(0x1f2)][_0x14a16a[_0xd9a573(0x1f4)]];if(!_0x44b6b8)_0x2aa530[_0xd9a573(0x1d3)](_0x14a16a[_0xd9a573(0x1f4)]);else _0x44b6b8[_0xd9a573(0x1d9)]!==_0x34c067?_0x580379[_0xd9a573(0x1d3)](_0x14a16a[_0xd9a573(0x1f4)]):_0x56939f[_0xd9a573(0x1d3)](_0x14a16a[_0xd9a573(0x1f4)]);}const _0x5a0982=[];if(_0x532496['bool'](_0xd9a573(0x1e0))){const _0x78d58=loadAliasMap(_0x532496[_0xd9a573(0x1e5)],undefined,resolveApiFilePath(_0x532496['apiDir'],_0x532496[_0xd9a573(0x1e8)])),_0x9313b0=new Map(_0x78d58[_0xd9a573(0x1ea)](_0x298c07=>[_0x298c07[_0xd9a573(0x1d8)],_0x298c07[_0xd9a573(0x1f0)]])),[_0x6d5537,_0x4a35c7]=await Promise[_0xd9a573(0x1e9)]([listBffScripts(_0x532496[_0xd9a573(0x1e8)]),getBffScriptStatistics(_0x532496['appCode'])]),_0x279ba2=createHookLocationMap(_0x4a35c7),_0xba268f=new Set(_0x3b3c86[_0xd9a573(0x1ea)](_0x49758b=>_0x49758b[_0xd9a573(0x1f4)]));for(const _0x5388f1 of _0x6d5537){const _0x2ad0c3=resolveRemoteScriptTarget(_0x4c211b,_0x5388f1,_0x279ba2,_0x4bd3cc['functions'],_0x9313b0);_0x2ad0c3&&!_0xba268f[_0xd9a573(0x1ef)](_0x2ad0c3[_0xd9a573(0x1f4)])&&_0x5a0982[_0xd9a573(0x1d3)](_0x2ad0c3[_0xd9a573(0x1f4)]);}}const _0x18e830=_0x2aa530[_0xd9a573(0x1db)]===0x0&&_0x580379[_0xd9a573(0x1db)]===0x0&&_0x5a0982[_0xd9a573(0x1db)]===0x0;return{'ok':!![],'data':{'added':_0x2aa530,'modified':_0x580379,'unchanged':_0x56939f,'remoteOnly':_0x5a0982},'message':_0x18e830?_0xd9a573(0x1de):_0x2aa530['length']+_0xd9a573(0x1da)+_0x580379[_0xd9a573(0x1db)]+_0xd9a573(0x1f3)+_0x56939f['length']+_0xd9a573(0x1ee)+(_0x5a0982[_0xd9a573(0x1db)]>0x0?',\x20'+_0x5a0982['length']+_0xd9a573(0x1df):'')};}};
@@ -1 +1 @@
1
- const a40_0xcc3c64=a40_0x1230;function a40_0x304a(){const _0x3ac8a0=['apiError','2158yPHyaG','4iMrBmB','npx\x20skills\x20add\x20failed:\x20','380720CvQoTY','../../skills/npx-skills-add.js','write','inherit','pipe','Check\x20network\x20connectivity\x20and\x20try\x20again,\x20or\x20run:\x20','setLogPath','Installing\x20CLI\x20Built-in\x20Skill\x20via\x20npx.','7091000TIInTI','9273282zMkqSX',')...','881871ZXjYVc','Install\x20or\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill','7aQGDQj','nonInteractive','info','1122SWXRGl','11345436MnUMSe','cli-skill-install','9070632HCzCSU','cwd','log','error','2943uaYZBS'];a40_0x304a=function(){return _0x3ac8a0;};return a40_0x304a();}(function(_0x306a57,_0x165acf){const _0x1dc017=a40_0x1230,_0x63a24a=_0x306a57();while(!![]){try{const _0x5b1baa=parseInt(_0x1dc017(0x93))/0x1+parseInt(_0x1dc017(0xa1))/0x2*(-parseInt(_0x1dc017(0x9f))/0x3)+-parseInt(_0x1dc017(0xa2))/0x4*(parseInt(_0x1dc017(0x90))/0x5)+-parseInt(_0x1dc017(0x91))/0x6*(parseInt(_0x1dc017(0x95))/0x7)+-parseInt(_0x1dc017(0x9b))/0x8+parseInt(_0x1dc017(0x99))/0x9+-parseInt(_0x1dc017(0xa4))/0xa*(-parseInt(_0x1dc017(0x98))/0xb);if(_0x5b1baa===_0x165acf)break;else _0x63a24a['push'](_0x63a24a['shift']());}catch(_0x1bbbda){_0x63a24a['push'](_0x63a24a['shift']());}}}(a40_0x304a,0xd4570));import{CliErrors}from'../../errors.js';import{logger}from'../../utils/logger.js';function a40_0x1230(_0x2fa53f,_0x1edc9f){_0x2fa53f=_0x2fa53f-0x89;const _0x304a28=a40_0x304a();let _0x123092=_0x304a28[_0x2fa53f];return _0x123092;}export const cliSkillDefinitions=[{'service':'cli-skill','command':'install','description':a40_0xcc3c64(0x94),'risk':a40_0xcc3c64(0x8a),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x13da9c){const _0x59a8c0=a40_0xcc3c64;logger[_0x59a8c0(0x8e)](process[_0x59a8c0(0x9c)]()),logger[_0x59a8c0(0x97)](_0x59a8c0(0x9a),_0x59a8c0(0x8f));const {NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE:_0x54e27d,RABETBASE_SKILL_SOURCE:_0x4245c1,runNpxSkillsAddGlobal:_0xe02c9c}=await import(_0x59a8c0(0x89)),_0x5edb2f=_0x13da9c[_0x59a8c0(0x96)]?_0x59a8c0(0x8c):_0x59a8c0(0x8b);console[_0x59a8c0(0x9d)]('Installing\x20CLI\x20Built-in\x20Skill\x20via\x20npx\x20('+_0x54e27d+_0x59a8c0(0x92));const _0x3dd58f=_0xe02c9c(process[_0x59a8c0(0x9c)](),_0x4245c1,{'stdio':_0x5edb2f});if(_0x3dd58f['skipped'])console['log']('Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20CLI\x20Built-in\x20Skill\x20is\x20already\x20present.');else{if(_0x3dd58f['ok'])console[_0x59a8c0(0x9d)]('CLI\x20Built-in\x20Skill\x20installed');else throw CliErrors[_0x59a8c0(0xa0)](_0x59a8c0(0xa3)+(_0x3dd58f[_0x59a8c0(0x9e)]||'unknown'),_0x59a8c0(0x8d)+_0x54e27d);}return{'ok':!![]};}}];
1
+ const a40_0x379975=a40_0x5646;function a40_0x5646(_0x3bfbfd,_0x5bfa4d){_0x3bfbfd=_0x3bfbfd-0x114;const _0x2fbd67=a40_0x2fbd();let _0x5646a8=_0x2fbd67[_0x3bfbfd];return _0x5646a8;}function a40_0x2fbd(){const _0xa7400=['128917kENXjO','apiError','709744VAdvip','8sWGhEb',')...','Installing\x20CLI\x20Built-in\x20Skill\x20via\x20npx.','1338318IpVIZi','CLI\x20Built-in\x20Skill\x20installed','inherit','pipe','log','npx\x20skills\x20add\x20failed:\x20','nonInteractive','401864EsQxxn','9dixsYl','install','info','2wgRSsC','error','write','cwd','6494900YOadaL','Check\x20network\x20connectivity\x20and\x20try\x20again,\x20or\x20run:\x20','setLogPath','cli-skill-install','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20CLI\x20Built-in\x20Skill\x20is\x20already\x20present.','82161mivzlr','Install\x20or\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill','1001590yChEkD'];a40_0x2fbd=function(){return _0xa7400;};return a40_0x2fbd();}(function(_0x16018e,_0x3a97e0){const _0x3fd700=a40_0x5646,_0x452200=_0x16018e();while(!![]){try{const _0x4d1cf5=-parseInt(_0x3fd700(0x118))/0x1*(-parseInt(_0x3fd700(0x129))/0x2)+parseInt(_0x3fd700(0x115))/0x3+parseInt(_0x3fd700(0x125))/0x4+parseInt(_0x3fd700(0x117))/0x5+parseInt(_0x3fd700(0x11e))/0x6+parseInt(_0x3fd700(0x11a))/0x7*(parseInt(_0x3fd700(0x11b))/0x8)+parseInt(_0x3fd700(0x126))/0x9*(-parseInt(_0x3fd700(0x12d))/0xa);if(_0x4d1cf5===_0x3a97e0)break;else _0x452200['push'](_0x452200['shift']());}catch(_0x1a4a5c){_0x452200['push'](_0x452200['shift']());}}}(a40_0x2fbd,0x203cb));import{CliErrors}from'../../errors.js';import{logger}from'../../utils/logger.js';export const cliSkillDefinitions=[{'service':'cli-skill','command':a40_0x379975(0x127),'description':a40_0x379975(0x116),'risk':a40_0x379975(0x12b),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x57dfdb){const _0x3ebe31=a40_0x379975;logger[_0x3ebe31(0x12f)](process[_0x3ebe31(0x12c)]()),logger[_0x3ebe31(0x128)](_0x3ebe31(0x130),_0x3ebe31(0x11d));const {NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE:_0x21017f,RABETBASE_SKILL_SOURCE:_0x2ab00e,runNpxSkillsAddGlobal:_0x3d89bb}=await import('../../skills/npx-skills-add.js'),_0x41885e=_0x57dfdb[_0x3ebe31(0x124)]?_0x3ebe31(0x121):_0x3ebe31(0x120);console[_0x3ebe31(0x122)]('Installing\x20CLI\x20Built-in\x20Skill\x20via\x20npx\x20('+_0x21017f+_0x3ebe31(0x11c));const _0x4f4ebe=_0x3d89bb(process[_0x3ebe31(0x12c)](),_0x2ab00e,{'stdio':_0x41885e});if(_0x4f4ebe['skipped'])console[_0x3ebe31(0x122)](_0x3ebe31(0x114));else{if(_0x4f4ebe['ok'])console[_0x3ebe31(0x122)](_0x3ebe31(0x11f));else throw CliErrors[_0x3ebe31(0x119)](_0x3ebe31(0x123)+(_0x4f4ebe[_0x3ebe31(0x12a)]||'unknown'),_0x3ebe31(0x12e)+_0x21017f);}return{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a41_0x2d8827=a41_0xc831;(function(_0x929836,_0x15f65c){const _0x5432a9=a41_0xc831,_0x316328=_0x929836();while(!![]){try{const _0x32a747=-parseInt(_0x5432a9(0x21f))/0x1+parseInt(_0x5432a9(0x22e))/0x2*(parseInt(_0x5432a9(0x227))/0x3)+parseInt(_0x5432a9(0x213))/0x4*(-parseInt(_0x5432a9(0x20a))/0x5)+parseInt(_0x5432a9(0x1f7))/0x6*(parseInt(_0x5432a9(0x1f3))/0x7)+-parseInt(_0x5432a9(0x1f9))/0x8*(parseInt(_0x5432a9(0x207))/0x9)+-parseInt(_0x5432a9(0x247))/0xa+-parseInt(_0x5432a9(0x1f8))/0xb*(-parseInt(_0x5432a9(0x211))/0xc);if(_0x32a747===_0x15f65c)break;else _0x316328['push'](_0x316328['shift']());}catch(_0x431d1f){_0x316328['push'](_0x316328['shift']());}}}(a41_0x51a6,0x56dac));import a41_0x4e551f from'chalk';import a41_0x2d5313 from'ora';import a41_0x2990dd from'semver';import{execa}from'execa';import{CLI_BIN_NAME,NPM_PACKAGE_NAME}from'../constant/cli.js';import{VERSION,GIT_COMMIT,BUILD_TIME}from'../generated/build-info.js';import{CliErrors}from'../errors.js';import{RABETBASE_SKILL_SOURCE,runNpxSkillsAddGlobal}from'../skills/npx-skills-add.js';import{resolveNpmBin}from'../utils/platform.js';function getCurrentVersion(){const _0x279ae2=a41_0xc831;return GIT_COMMIT!==_0x279ae2(0x215)?VERSION+'\x20('+GIT_COMMIT+',\x20'+BUILD_TIME[_0x279ae2(0x21a)](0x0,0xa)+')':VERSION;}function a41_0xc831(_0x515069,_0x56c0ca){_0x515069=_0x515069-0x1f3;const _0x51a6b2=a41_0x51a6();let _0xc83126=_0x51a6b2[_0x515069];return _0xc83126;}function detectPackageManager(){const _0x2bd960=a41_0xc831,_0x9382de=process[_0x2bd960(0x226)]['toLowerCase']();if(_0x9382de[_0x2bd960(0x202)](_0x2bd960(0x1f5)))return _0x2bd960(0x1f5);return _0x2bd960(0x239);}function a41_0x51a6(){const _0x33c557=['timeout','Checking\x20CLI\x20Built-in\x20Skill...','trim','warn','Update\x20rabetbase\x20CLI\x20to\x20the\x20latest\x20version','pipe','npm','\x20\x20Skipped\x20CLI\x20Built-in\x20Skill\x20install\x20(RABETBASE_SKIP_NPX_SKILLS=1).','Current\x20version:\x20','Invalid\x20version:\x20','valid','write','skipped','Beta\x20version:\x20','skills','Skip\x20CLI\x20Built-in\x20Skill\x20refresh\x20after\x20updating','Unable\x20to\x20check\x20for\x20updates\x20(network\x20error)','Choose\x20either\x20npm\x20beta\x20dist-tag\x20or\x20an\x20exact\x20version.','update','info','756090BKjdzK','98539jxPhKk','\x20\x20Run\x20manually:\x20npm\x20install\x20-g\x20','bun','\x20\x20CLI\x20Built-in\x20Skill\x20update\x20failed:\x20','78detwAH','209IVGFMs','2576104xNCbjH','str','source','beta','succeed','log','error','\x20\x20Restart\x20your\x20terminal\x20to\x20use\x20the\x20new\x20version.','--beta\x20and\x20--version\x20cannot\x20be\x20used\x20together.','includes','gray','inherit','\x20→\x20','...','18pOGTou','nonInteractive','Update\x20available:\x20','3270790tRzDay','Already\x20on\x20requested\x20version\x20(v','\x20\x20Run\x20manually:\x20','length','install','fail','Update\x20failed','622668fpxzLo','bool','4LfjPxr','/dist-tags','unknown','start','Install\x20a\x20specific\x20CLI\x20version','latest','Use\x20a\x20full\x20semver\x20such\x20as\x202.1.6\x20or\x202.1.6-beta.1.','slice','Install\x20the\x20version\x20from\x20npm\x20beta\x20dist-tag','run','filter','\x20\x20Try\x20manually:\x20','58022paMetq','red','message','Already\x20up\x20to\x20date\x20(v','Skipping\x20CLI\x20Built-in\x20Skill\x20refresh\x20(--no-skills).','object','\x20install\x20-g\x20','execPath','3IjIdOf','yellow','Refresh\x20CLI\x20Built-in\x20Skill\x20after\x20updating','no-skills','fromEntries','string','boolean','1237358dZLzoF','Version\x20comparison\x20failed','version','Requested\x20version:\x20','green'];a41_0x51a6=function(){return _0x33c557;};return a41_0x51a6();}const updateFlags=[{'name':a41_0x2d8827(0x1fc),'type':a41_0x2d8827(0x22d),'description':a41_0x2d8827(0x21b),'default':![]},{'name':a41_0x2d8827(0x230),'type':'string','description':a41_0x2d8827(0x217)},{'name':a41_0x2d8827(0x22a),'type':a41_0x2d8827(0x22d),'description':a41_0x2d8827(0x242),'default':![]},{'name':'skills','type':'boolean','description':a41_0x2d8827(0x229),'default':!![],'hidden':!![]}];function getRequestedVersion(_0x3da669){const _0x16e2ef=a41_0x2d8827;return _0x3da669[_0x16e2ef(0x1fa)](_0x16e2ef(0x230))[_0x16e2ef(0x235)]();}function shouldSkipCliSkill(_0xaa150a){const _0xbbc562=a41_0x2d8827;return _0xaa150a[_0xbbc562(0x212)](_0xbbc562(0x22a))||_0xaa150a['flag'](_0xbbc562(0x241))===![];}async function validateUpdateFlags(_0x79ac7b){const _0x4defc9=a41_0x2d8827,_0x51b940=_0x79ac7b[_0x4defc9(0x212)](_0x4defc9(0x1fc)),_0x5b660a=getRequestedVersion(_0x79ac7b);if(_0x51b940&&_0x5b660a)throw CliErrors['validation'](_0x4defc9(0x201),_0x4defc9(0x244));if(_0x5b660a&&!a41_0x2990dd[_0x4defc9(0x23d)](_0x5b660a))throw CliErrors['validation'](_0x4defc9(0x23c)+_0x5b660a,_0x4defc9(0x219));}async function fetchNpmDistTags(){const _0x132321=a41_0x2d8827;try{const _0x5ed2ed=await fetch('https://registry.npmjs.org/-/package/'+encodeURIComponent(NPM_PACKAGE_NAME)+_0x132321(0x214),{'signal':AbortSignal[_0x132321(0x233)](0x2710)});if(!_0x5ed2ed['ok'])return null;const _0x2e38f8=await _0x5ed2ed['json']();if(!_0x2e38f8||typeof _0x2e38f8!==_0x132321(0x224))return null;return Object[_0x132321(0x22b)](Object['entries'](_0x2e38f8)[_0x132321(0x21d)](([,_0x5804d7])=>typeof _0x5804d7===_0x132321(0x22c)&&_0x5804d7[_0x132321(0x235)]()[_0x132321(0x20d)]>0x0)['map'](([_0x47efb9,_0x49bfef])=>[_0x47efb9,String(_0x49bfef)[_0x132321(0x235)]()]));}catch{return null;}}async function fetchNpmDistTagVersion(_0x1c2e3a){const _0x2b72f6=await fetchNpmDistTags();return _0x2b72f6?.[_0x1c2e3a]??null;}async function fetchLatestVersion(){const _0x4a3eb7=a41_0x2d8827;return fetchNpmDistTagVersion(_0x4a3eb7(0x218));}async function resolveTargetVersion(_0x530503){const _0x514145=a41_0x2d8827,_0x16e05a=getRequestedVersion(_0x530503);if(_0x16e05a)return{'version':_0x16e05a,'source':'version'};if(_0x530503[_0x514145(0x212)]('beta')){const _0x3d2084=await fetchNpmDistTagVersion(_0x514145(0x1fc));if(!_0x3d2084)return null;return{'version':_0x3d2084,'source':'beta'};}const _0x513926=await fetchLatestVersion();if(!_0x513926)return null;return{'version':_0x513926,'source':'latest'};}function shouldInstallTarget(_0x3d8f31,_0x1830b7){const _0xae6949=a41_0x2d8827;if(_0x1830b7[_0xae6949(0x1fb)]===_0xae6949(0x230)||_0x1830b7[_0xae6949(0x1fb)]===_0xae6949(0x1fc))return!a41_0x2990dd['eq'](_0x3d8f31,_0x1830b7[_0xae6949(0x230)]);return a41_0x2990dd['lt'](_0x3d8f31,_0x1830b7['version']);}function getInstallPlanLabel(_0x3b9a43,_0x1f8ea6){const _0x56bdf2=a41_0x2d8827;switch(_0x1f8ea6[_0x56bdf2(0x1fb)]){case _0x56bdf2(0x1fc):return _0x56bdf2(0x240)+a41_0x4e551f[_0x56bdf2(0x228)](_0x3b9a43)+_0x56bdf2(0x205)+a41_0x4e551f[_0x56bdf2(0x232)](_0x1f8ea6['version']);case _0x56bdf2(0x230):return _0x56bdf2(0x231)+a41_0x4e551f[_0x56bdf2(0x228)](_0x3b9a43)+_0x56bdf2(0x205)+a41_0x4e551f[_0x56bdf2(0x232)](_0x1f8ea6['version']);case _0x56bdf2(0x218):default:return _0x56bdf2(0x209)+a41_0x4e551f[_0x56bdf2(0x228)](_0x3b9a43)+_0x56bdf2(0x205)+a41_0x4e551f['green'](_0x1f8ea6[_0x56bdf2(0x230)]);}}async function installCliSkill(_0x4245e1){const _0x3a4009=a41_0x2d8827;console[_0x3a4009(0x1fe)](a41_0x4e551f[_0x3a4009(0x203)](_0x3a4009(0x234)));const _0x25f671=runNpxSkillsAddGlobal(process['cwd'](),RABETBASE_SKILL_SOURCE,{'stdio':_0x4245e1?_0x3a4009(0x238):_0x3a4009(0x204)});if(_0x25f671[_0x3a4009(0x23f)]){console[_0x3a4009(0x1fe)](a41_0x4e551f['gray'](_0x3a4009(0x23a)));return;}if(_0x25f671['ok']){console['log'](a41_0x4e551f[_0x3a4009(0x203)]('\x20\x20CLI\x20Built-in\x20Skill\x20is\x20up\x20to\x20date.'));return;}console[_0x3a4009(0x236)](a41_0x4e551f[_0x3a4009(0x228)](_0x3a4009(0x1f6)+(_0x25f671['error']||_0x3a4009(0x215)))),console[_0x3a4009(0x1fe)](a41_0x4e551f[_0x3a4009(0x203)](_0x3a4009(0x20c)+CLI_BIN_NAME+'\x20cli-skill\x20install'));}async function execute(_0x3a6e5b){const _0x128a5d=a41_0x2d8827;await validateUpdateFlags(_0x3a6e5b);const _0x1b6a44=getCurrentVersion();console[_0x128a5d(0x1fe)](_0x128a5d(0x23b)+_0x1b6a44);const _0x1b7549=a41_0x2d5313('Checking\x20for\x20updates...')[_0x128a5d(0x216)](),_0x4c0a92=await resolveTargetVersion(_0x3a6e5b);if(!_0x4c0a92){const _0x50db72=_0x3a6e5b[_0x128a5d(0x212)](_0x128a5d(0x1fc))?'Unable\x20to\x20resolve\x20beta\x20version\x20from\x20npm':_0x128a5d(0x243);return _0x1b7549[_0x128a5d(0x20f)](_0x50db72),console[_0x128a5d(0x1fe)](a41_0x4e551f[_0x128a5d(0x203)](_0x128a5d(0x1f4)+NPM_PACKAGE_NAME+'@latest')),{'ok':![],'message':_0x50db72};}const _0x49bacd=a41_0x2990dd[_0x128a5d(0x23d)](VERSION),_0x3c6f23=a41_0x2990dd[_0x128a5d(0x23d)](_0x4c0a92[_0x128a5d(0x230)]);if(!_0x49bacd||!_0x3c6f23)return _0x1b7549['fail'](_0x128a5d(0x22f)),{'ok':![],'message':_0x128a5d(0x22f)};if(!shouldInstallTarget(_0x49bacd,_0x4c0a92)){const _0x58a4ee=_0x4c0a92[_0x128a5d(0x1fb)]===_0x128a5d(0x230)?_0x128a5d(0x20b)+_0x4c0a92[_0x128a5d(0x230)]+')':_0x128a5d(0x222)+_0x4c0a92[_0x128a5d(0x230)]+')';return _0x1b7549[_0x128a5d(0x1fd)](_0x58a4ee),shouldSkipCliSkill(_0x3a6e5b)?console[_0x128a5d(0x1fe)](a41_0x4e551f[_0x128a5d(0x203)](_0x128a5d(0x223))):await installCliSkill(_0x3a6e5b[_0x128a5d(0x208)]),{'ok':!![]};}_0x1b7549[_0x128a5d(0x246)](getInstallPlanLabel(_0x1b6a44,_0x4c0a92));const _0x1ed00f=detectPackageManager(),_0x14c00e=_0x1ed00f===_0x128a5d(0x239)?resolveNpmBin('npm'):_0x1ed00f,_0x1c234f=a41_0x2d5313('Updating\x20via\x20'+_0x1ed00f+_0x128a5d(0x206))['start']();try{return await execa(_0x14c00e,[_0x128a5d(0x20e),'-g',NPM_PACKAGE_NAME+'@'+_0x4c0a92['version']],{'stdio':'pipe'}),_0x1c234f[_0x128a5d(0x1fd)]('Updated\x20to\x20v'+_0x4c0a92[_0x128a5d(0x230)]),console[_0x128a5d(0x1fe)](a41_0x4e551f['gray'](_0x128a5d(0x200))),shouldSkipCliSkill(_0x3a6e5b)?console[_0x128a5d(0x1fe)](a41_0x4e551f[_0x128a5d(0x203)](_0x128a5d(0x223))):await installCliSkill(_0x3a6e5b[_0x128a5d(0x208)]),{'ok':!![]};}catch(_0x3b1010){return _0x1c234f[_0x128a5d(0x20f)](_0x128a5d(0x210)),console[_0x128a5d(0x1ff)](a41_0x4e551f[_0x128a5d(0x220)]('\x20\x20'+_0x3b1010[_0x128a5d(0x221)])),console[_0x128a5d(0x1fe)](a41_0x4e551f[_0x128a5d(0x203)](_0x128a5d(0x21e)+_0x1ed00f+_0x128a5d(0x225)+NPM_PACKAGE_NAME+'@'+_0x4c0a92[_0x128a5d(0x230)])),{'ok':![],'message':_0x3b1010[_0x128a5d(0x221)]};}}export const updateDefinition={'service':a41_0x2d8827(0x245),'command':a41_0x2d8827(0x21c),'description':a41_0x2d8827(0x237),'risk':a41_0x2d8827(0x23e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':updateFlags,'validate':validateUpdateFlags,'execute':execute};
1
+ const a41_0xc4b0e4=a41_0x5dc5;(function(_0x337f77,_0x55c39e){const _0x54eec6=a41_0x5dc5,_0x1fe716=_0x337f77();while(!![]){try{const _0x1ac2e9=parseInt(_0x54eec6(0x9e))/0x1+parseInt(_0x54eec6(0x90))/0x2*(parseInt(_0x54eec6(0xb8))/0x3)+-parseInt(_0x54eec6(0xa1))/0x4+-parseInt(_0x54eec6(0xca))/0x5+parseInt(_0x54eec6(0xa6))/0x6+parseInt(_0x54eec6(0xbe))/0x7*(-parseInt(_0x54eec6(0xc9))/0x8)+parseInt(_0x54eec6(0xbd))/0x9*(-parseInt(_0x54eec6(0xce))/0xa);if(_0x1ac2e9===_0x55c39e)break;else _0x1fe716['push'](_0x1fe716['shift']());}catch(_0x29913e){_0x1fe716['push'](_0x1fe716['shift']());}}}(a41_0x171e,0x9c0e6));import a41_0xac1cad from'chalk';import a41_0x4d93cf from'ora';import a41_0x5885d6 from'semver';import{execa}from'execa';import{CLI_BIN_NAME,NPM_PACKAGE_NAME}from'../constant/cli.js';import{VERSION,GIT_COMMIT,BUILD_TIME}from'../generated/build-info.js';import{CliErrors}from'../errors.js';import{RABETBASE_SKILL_SOURCE,runNpxSkillsAddGlobal}from'../skills/npx-skills-add.js';import{resolveNpmBin}from'../utils/platform.js';function getCurrentVersion(){const _0x197a66=a41_0x5dc5;return GIT_COMMIT!==_0x197a66(0x97)?VERSION+'\x20('+GIT_COMMIT+',\x20'+BUILD_TIME[_0x197a66(0x99)](0x0,0xa)+')':VERSION;}function detectPackageManager(){const _0x2e8dd0=a41_0x5dc5,_0x23aaa9=process[_0x2e8dd0(0x91)][_0x2e8dd0(0x8b)]();if(_0x23aaa9[_0x2e8dd0(0xb3)]('bun'))return _0x2e8dd0(0xa0);return _0x2e8dd0(0xab);}const updateFlags=[{'name':a41_0xc4b0e4(0xa2),'type':a41_0xc4b0e4(0x94),'description':a41_0xc4b0e4(0x9c),'default':![]},{'name':a41_0xc4b0e4(0x89),'type':a41_0xc4b0e4(0xb1),'description':a41_0xc4b0e4(0xcc)},{'name':'no-skills','type':'boolean','description':'Skip\x20CLI\x20Built-in\x20Skill\x20refresh\x20after\x20updating','default':![]},{'name':a41_0xc4b0e4(0xc4),'type':a41_0xc4b0e4(0x94),'description':'Refresh\x20CLI\x20Built-in\x20Skill\x20after\x20updating','default':!![],'hidden':!![]}];function getRequestedVersion(_0x2fec2c){const _0x5d83ac=a41_0xc4b0e4;return _0x2fec2c[_0x5d83ac(0xc8)](_0x5d83ac(0x89))[_0x5d83ac(0xac)]();}function a41_0x5dc5(_0x94458f,_0x6f9465){_0x94458f=_0x94458f-0x7f;const _0x171efc=a41_0x171e();let _0x5dc503=_0x171efc[_0x94458f];return _0x5dc503;}function a41_0x171e(){const _0x5b6634=['error','npm','trim','log','validation','Already\x20on\x20requested\x20version\x20(v','start','string','inherit','includes','nonInteractive','\x20install\x20-g\x20','map','no-skills','3ICsTYT','Update\x20rabetbase\x20CLI\x20to\x20the\x20latest\x20version','update','Update\x20available:\x20','Unable\x20to\x20resolve\x20beta\x20version\x20from\x20npm','9tQpNHb','804902Oltzus','\x20\x20Skipped\x20CLI\x20Built-in\x20Skill\x20install\x20(RABETBASE_SKIP_NPX_SKILLS=1).','\x20\x20Try\x20manually:\x20','\x20→\x20','pipe','Skipping\x20CLI\x20Built-in\x20Skill\x20refresh\x20(--no-skills).','skills','Choose\x20either\x20npm\x20beta\x20dist-tag\x20or\x20an\x20exact\x20version.','https://registry.npmjs.org/-/package/','length','str','8XEKsbO','3175750qjKbin','gray','Install\x20a\x20specific\x20CLI\x20version','Updated\x20to\x20v','4395570sqJnkC','install','Update\x20failed','latest','skipped','\x20\x20CLI\x20Built-in\x20Skill\x20update\x20failed:\x20','@latest','Already\x20up\x20to\x20date\x20(v','run','green','yellow','Invalid\x20version:\x20','version','valid','toLowerCase','message','Beta\x20version:\x20','Current\x20version:\x20','Checking\x20CLI\x20Built-in\x20Skill...','1006506JSPLQZ','execPath','cwd','json','boolean','Version\x20comparison\x20failed','Requested\x20version:\x20','unknown','fail','slice','bool','Unable\x20to\x20check\x20for\x20updates\x20(network\x20error)','Install\x20the\x20version\x20from\x20npm\x20beta\x20dist-tag','\x20\x20Run\x20manually:\x20npm\x20install\x20-g\x20','926384ATsHEe','succeed','bun','893740DpEBbx','beta','filter','warn','red','3736182nZjqPz','Checking\x20for\x20updates...','object','source'];a41_0x171e=function(){return _0x5b6634;};return a41_0x171e();}function shouldSkipCliSkill(_0x348f26){const _0x6b04d8=a41_0xc4b0e4;return _0x348f26[_0x6b04d8(0x9a)](_0x6b04d8(0xb7))||_0x348f26['flag']('skills')===![];}async function validateUpdateFlags(_0x463022){const _0x2a24b0=a41_0xc4b0e4,_0x38da3f=_0x463022['bool']('beta'),_0x4fb139=getRequestedVersion(_0x463022);if(_0x38da3f&&_0x4fb139)throw CliErrors[_0x2a24b0(0xae)]('--beta\x20and\x20--version\x20cannot\x20be\x20used\x20together.',_0x2a24b0(0xc5));if(_0x4fb139&&!a41_0x5885d6[_0x2a24b0(0x8a)](_0x4fb139))throw CliErrors[_0x2a24b0(0xae)](_0x2a24b0(0x88)+_0x4fb139,'Use\x20a\x20full\x20semver\x20such\x20as\x202.1.6\x20or\x202.1.6-beta.1.');}async function fetchNpmDistTags(){const _0x2d285b=a41_0xc4b0e4;try{const _0x408c25=await fetch(_0x2d285b(0xc6)+encodeURIComponent(NPM_PACKAGE_NAME)+'/dist-tags',{'signal':AbortSignal['timeout'](0x2710)});if(!_0x408c25['ok'])return null;const _0x145366=await _0x408c25[_0x2d285b(0x93)]();if(!_0x145366||typeof _0x145366!==_0x2d285b(0xa8))return null;return Object['fromEntries'](Object['entries'](_0x145366)[_0x2d285b(0xa3)](([,_0x3b4623])=>typeof _0x3b4623===_0x2d285b(0xb1)&&_0x3b4623[_0x2d285b(0xac)]()[_0x2d285b(0xc7)]>0x0)[_0x2d285b(0xb6)](([_0xc38ecf,_0x63aae2])=>[_0xc38ecf,String(_0x63aae2)[_0x2d285b(0xac)]()]));}catch{return null;}}async function fetchNpmDistTagVersion(_0x4b482c){const _0x4f2d41=await fetchNpmDistTags();return _0x4f2d41?.[_0x4b482c]??null;}async function fetchLatestVersion(){const _0x221498=a41_0xc4b0e4;return fetchNpmDistTagVersion(_0x221498(0x80));}async function resolveTargetVersion(_0x37bbad){const _0x293ad8=a41_0xc4b0e4,_0x1f5f1e=getRequestedVersion(_0x37bbad);if(_0x1f5f1e)return{'version':_0x1f5f1e,'source':_0x293ad8(0x89)};if(_0x37bbad['bool'](_0x293ad8(0xa2))){const _0x3bf923=await fetchNpmDistTagVersion(_0x293ad8(0xa2));if(!_0x3bf923)return null;return{'version':_0x3bf923,'source':_0x293ad8(0xa2)};}const _0x56459f=await fetchLatestVersion();if(!_0x56459f)return null;return{'version':_0x56459f,'source':_0x293ad8(0x80)};}function shouldInstallTarget(_0x11e6b6,_0x473ae5){const _0xe3fc57=a41_0xc4b0e4;if(_0x473ae5[_0xe3fc57(0xa9)]===_0xe3fc57(0x89)||_0x473ae5['source']===_0xe3fc57(0xa2))return!a41_0x5885d6['eq'](_0x11e6b6,_0x473ae5[_0xe3fc57(0x89)]);return a41_0x5885d6['lt'](_0x11e6b6,_0x473ae5['version']);}function getInstallPlanLabel(_0x32834f,_0x4a6aa9){const _0x3fdfed=a41_0xc4b0e4;switch(_0x4a6aa9['source']){case _0x3fdfed(0xa2):return _0x3fdfed(0x8d)+a41_0xac1cad['yellow'](_0x32834f)+'\x20→\x20'+a41_0xac1cad[_0x3fdfed(0x86)](_0x4a6aa9[_0x3fdfed(0x89)]);case _0x3fdfed(0x89):return _0x3fdfed(0x96)+a41_0xac1cad[_0x3fdfed(0x87)](_0x32834f)+_0x3fdfed(0xc1)+a41_0xac1cad[_0x3fdfed(0x86)](_0x4a6aa9[_0x3fdfed(0x89)]);case _0x3fdfed(0x80):default:return _0x3fdfed(0xbb)+a41_0xac1cad['yellow'](_0x32834f)+_0x3fdfed(0xc1)+a41_0xac1cad[_0x3fdfed(0x86)](_0x4a6aa9[_0x3fdfed(0x89)]);}}async function installCliSkill(_0x235984){const _0x32b30b=a41_0xc4b0e4;console[_0x32b30b(0xad)](a41_0xac1cad[_0x32b30b(0xcb)](_0x32b30b(0x8f)));const _0x4ef157=runNpxSkillsAddGlobal(process[_0x32b30b(0x92)](),RABETBASE_SKILL_SOURCE,{'stdio':_0x235984?_0x32b30b(0xc2):_0x32b30b(0xb2)});if(_0x4ef157[_0x32b30b(0x81)]){console[_0x32b30b(0xad)](a41_0xac1cad[_0x32b30b(0xcb)](_0x32b30b(0xbf)));return;}if(_0x4ef157['ok']){console[_0x32b30b(0xad)](a41_0xac1cad[_0x32b30b(0xcb)]('\x20\x20CLI\x20Built-in\x20Skill\x20is\x20up\x20to\x20date.'));return;}console[_0x32b30b(0xa4)](a41_0xac1cad['yellow'](_0x32b30b(0x82)+(_0x4ef157['error']||_0x32b30b(0x97)))),console['log'](a41_0xac1cad['gray']('\x20\x20Run\x20manually:\x20'+CLI_BIN_NAME+'\x20cli-skill\x20install'));}async function execute(_0x23bcf1){const _0x5e40d3=a41_0xc4b0e4;await validateUpdateFlags(_0x23bcf1);const _0x208cac=getCurrentVersion();console[_0x5e40d3(0xad)](_0x5e40d3(0x8e)+_0x208cac);const _0x12a1f2=a41_0x4d93cf(_0x5e40d3(0xa7))[_0x5e40d3(0xb0)](),_0x237443=await resolveTargetVersion(_0x23bcf1);if(!_0x237443){const _0x336bd8=_0x23bcf1['bool'](_0x5e40d3(0xa2))?_0x5e40d3(0xbc):_0x5e40d3(0x9b);return _0x12a1f2[_0x5e40d3(0x98)](_0x336bd8),console['log'](a41_0xac1cad[_0x5e40d3(0xcb)](_0x5e40d3(0x9d)+NPM_PACKAGE_NAME+_0x5e40d3(0x83))),{'ok':![],'message':_0x336bd8};}const _0x21c27d=a41_0x5885d6[_0x5e40d3(0x8a)](VERSION),_0x339ac2=a41_0x5885d6[_0x5e40d3(0x8a)](_0x237443[_0x5e40d3(0x89)]);if(!_0x21c27d||!_0x339ac2)return _0x12a1f2[_0x5e40d3(0x98)](_0x5e40d3(0x95)),{'ok':![],'message':_0x5e40d3(0x95)};if(!shouldInstallTarget(_0x21c27d,_0x237443)){const _0x41d49c=_0x237443[_0x5e40d3(0xa9)]==='version'?_0x5e40d3(0xaf)+_0x237443[_0x5e40d3(0x89)]+')':_0x5e40d3(0x84)+_0x237443['version']+')';return _0x12a1f2[_0x5e40d3(0x9f)](_0x41d49c),shouldSkipCliSkill(_0x23bcf1)?console['log'](a41_0xac1cad[_0x5e40d3(0xcb)](_0x5e40d3(0xc3))):await installCliSkill(_0x23bcf1[_0x5e40d3(0xb4)]),{'ok':!![]};}_0x12a1f2['info'](getInstallPlanLabel(_0x208cac,_0x237443));const _0x5590f0=detectPackageManager(),_0x408e2b=_0x5590f0===_0x5e40d3(0xab)?resolveNpmBin(_0x5e40d3(0xab)):_0x5590f0,_0x18876e=a41_0x4d93cf('Updating\x20via\x20'+_0x5590f0+'...')[_0x5e40d3(0xb0)]();try{return await execa(_0x408e2b,[_0x5e40d3(0xcf),'-g',NPM_PACKAGE_NAME+'@'+_0x237443[_0x5e40d3(0x89)]],{'stdio':'pipe'}),_0x18876e[_0x5e40d3(0x9f)](_0x5e40d3(0xcd)+_0x237443['version']),console['log'](a41_0xac1cad[_0x5e40d3(0xcb)]('\x20\x20Restart\x20your\x20terminal\x20to\x20use\x20the\x20new\x20version.')),shouldSkipCliSkill(_0x23bcf1)?console[_0x5e40d3(0xad)](a41_0xac1cad[_0x5e40d3(0xcb)](_0x5e40d3(0xc3))):await installCliSkill(_0x23bcf1['nonInteractive']),{'ok':!![]};}catch(_0x1e2bae){return _0x18876e[_0x5e40d3(0x98)](_0x5e40d3(0x7f)),console[_0x5e40d3(0xaa)](a41_0xac1cad[_0x5e40d3(0xa5)]('\x20\x20'+_0x1e2bae[_0x5e40d3(0x8c)])),console[_0x5e40d3(0xad)](a41_0xac1cad['gray'](_0x5e40d3(0xc0)+_0x5590f0+_0x5e40d3(0xb5)+NPM_PACKAGE_NAME+'@'+_0x237443[_0x5e40d3(0x89)])),{'ok':![],'message':_0x1e2bae[_0x5e40d3(0x8c)]};}}export const updateDefinition={'service':a41_0xc4b0e4(0xba),'command':a41_0xc4b0e4(0x85),'description':a41_0xc4b0e4(0xb9),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':updateFlags,'validate':validateUpdateFlags,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x111b7e,_0x406b2a){const _0x2636d6=a42_0x45b9,_0x3e7852=_0x111b7e();while(!![]){try{const _0x2bc6ea=parseInt(_0x2636d6(0x1b6))/0x1*(-parseInt(_0x2636d6(0x1b8))/0x2)+-parseInt(_0x2636d6(0x1bb))/0x3+parseInt(_0x2636d6(0x1b4))/0x4*(parseInt(_0x2636d6(0x1b5))/0x5)+-parseInt(_0x2636d6(0x1b7))/0x6+parseInt(_0x2636d6(0x1b9))/0x7*(parseInt(_0x2636d6(0x1b3))/0x8)+parseInt(_0x2636d6(0x1b2))/0x9+parseInt(_0x2636d6(0x1ba))/0xa;if(_0x2bc6ea===_0x406b2a)break;else _0x3e7852['push'](_0x3e7852['shift']());}catch(_0x16a367){_0x3e7852['push'](_0x3e7852['shift']());}}}(a42_0x2acd,0x4780a));import{codegenSdk}from'../../commands/codegen/sdk.js';function a42_0x2acd(){const _0x185168=['29074eZKkRN','217OqYZEn','2875620zbTxcm','1102506yfggcQ','3089304XzNFVk','81776HsRwav','8boIRwd','33185YoxZhn','13ZfnLCk','669702BusFKa'];a42_0x2acd=function(){return _0x185168;};return a42_0x2acd();}import{codegenSql}from'../../commands/codegen/sql.js';function a42_0x45b9(_0x11e7e9,_0x557147){_0x11e7e9=_0x11e7e9-0x1b2;const _0x2acd03=a42_0x2acd();let _0x45b9ed=_0x2acd03[_0x11e7e9];return _0x45b9ed;}export const codegenDefinitions=[codegenSdk,codegenSql];
1
+ function a42_0x52c2(){const _0xb2bc74=['7380884heaAUk','5ZmVerp','7622340xhEFBe','261veYoKc','51926kDgsda','170648lziKfg','6059170rCNGpd','1273986VfLKxi','2285ADUjWo','8948SxeVki'];a42_0x52c2=function(){return _0xb2bc74;};return a42_0x52c2();}(function(_0x2186ae,_0x8a9537){const _0x5083a4=a42_0x1f33,_0x2dd0bc=_0x2186ae();while(!![]){try{const _0x73c912=-parseInt(_0x5083a4(0x18c))/0x1*(parseInt(_0x5083a4(0x18f))/0x2)+-parseInt(_0x5083a4(0x192))/0x3+-parseInt(_0x5083a4(0x194))/0x4*(-parseInt(_0x5083a4(0x193))/0x5)+parseInt(_0x5083a4(0x18d))/0x6+-parseInt(_0x5083a4(0x195))/0x7+-parseInt(_0x5083a4(0x190))/0x8*(parseInt(_0x5083a4(0x18e))/0x9)+parseInt(_0x5083a4(0x191))/0xa;if(_0x73c912===_0x8a9537)break;else _0x2dd0bc['push'](_0x2dd0bc['shift']());}catch(_0x3dd5e3){_0x2dd0bc['push'](_0x2dd0bc['shift']());}}}(a42_0x52c2,0xa3d98));import{codegenSdk}from'../../commands/codegen/sdk.js';import{codegenSql}from'../../commands/codegen/sql.js';function a42_0x1f33(_0x2b81e9,_0x229693){_0x2b81e9=_0x2b81e9-0x18c;const _0x52c21f=a42_0x52c2();let _0x1f3348=_0x52c21f[_0x2b81e9];return _0x1f3348;}export const codegenDefinitions=[codegenSdk,codegenSql];
@@ -1 +1 @@
1
- const a43_0x417b1a=a43_0x23e4;(function(_0x5d0c3e,_0x2dbb82){const _0x4040ba=a43_0x23e4,_0x25ba94=_0x5d0c3e();while(!![]){try{const _0x20959f=-parseInt(_0x4040ba(0xb1))/0x1*(parseInt(_0x4040ba(0xa4))/0x2)+-parseInt(_0x4040ba(0xa1))/0x3*(-parseInt(_0x4040ba(0xa9))/0x4)+-parseInt(_0x4040ba(0xb6))/0x5+-parseInt(_0x4040ba(0xb2))/0x6*(-parseInt(_0x4040ba(0xb4))/0x7)+-parseInt(_0x4040ba(0xa7))/0x8+-parseInt(_0x4040ba(0xb8))/0x9+parseInt(_0x4040ba(0xae))/0xa;if(_0x20959f===_0x2dbb82)break;else _0x25ba94['push'](_0x25ba94['shift']());}catch(_0x47306f){_0x25ba94['push'](_0x25ba94['shift']());}}}(a43_0xb375,0xa1156));import{getOperationDetail,generateSdkCode}from'../../core/api-client.js';import{CODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a43_0x23e4(_0x16b045,_0x893c28){_0x16b045=_0x16b045-0x9d;const _0xb375d2=a43_0xb375();let _0x23e443=_0xb375d2[_0x16b045];return _0x23e443;}export const codegenSdk={'service':a43_0x417b1a(0xab),'command':a43_0x417b1a(0xa0),'description':a43_0x417b1a(0xad),'risk':a43_0x417b1a(0xb5),'flags':[CODE_FLAG_OPTIONAL,{'name':a43_0x417b1a(0xac),'type':a43_0x417b1a(0xb0),'description':a43_0x417b1a(0xa8)},{'name':'operation','type':a43_0x417b1a(0xb0),'required':!![],'description':a43_0x417b1a(0xa3)},{'name':a43_0x417b1a(0xb7),'type':a43_0x417b1a(0xaf),'description':a43_0x417b1a(0x9d)}],async 'execute'(_0x5f0f58){const _0x92da9d=a43_0x417b1a,{dataset:_0x4ec713,operation:_0x3d7b43}=await getOperationDetail(_0x5f0f58[_0x92da9d(0xaa)],_0x5f0f58[_0x92da9d(0xa6)](_0x92da9d(0x9e)),_0x5f0f58[_0x92da9d(0xa6)](_0x92da9d(0x9f))),_0x304992=generateSdkCode(_0x4ec713,_0x3d7b43,{'includeImports':!_0x5f0f58[_0x92da9d(0xb3)](_0x92da9d(0xb7))});return{'ok':!![],'data':{'dataset':{'name':_0x4ec713[_0x92da9d(0xa5)],'code':_0x4ec713[_0x92da9d(0x9e)],'tableName':_0x4ec713[_0x92da9d(0xa2)]},'operation':_0x5f0f58[_0x92da9d(0xa6)](_0x92da9d(0x9f)),'code':_0x304992}};}};function a43_0xb375(){const _0x430291=['10002456WOwKYE','Omit\x20import\x20statements\x20from\x20generated\x20code','code','operation','sdk','12QyHEqV','tableName','Operation\x20name\x20(e.g.\x20filter,\x20getOne,\x20create,\x20update)','54244VRxkXV','name','str','9553808cCmFOp','Dataset\x20alias\x20defined\x20in\x20api.ts\x20(e.g.\x20order,\x20coupon)','1076948kTzjgj','appCode','codegen','alias','Generate\x20TypeScript\x20SDK\x20code\x20for\x20a\x20dataset\x20operation','20489380ecKyiI','boolean','string','19ocySUH','7164Jxaohm','bool','5131gQcQIn','read','2601810MIkaSF','skip-imports'];a43_0xb375=function(){return _0x430291;};return a43_0xb375();}
1
+ const a43_0x3df795=a43_0x21f4;(function(_0x506ee7,_0x2abb41){const _0x2dd7a9=a43_0x21f4,_0x1a9853=_0x506ee7();while(!![]){try{const _0x5cf593=parseInt(_0x2dd7a9(0x1ce))/0x1*(-parseInt(_0x2dd7a9(0x1c1))/0x2)+-parseInt(_0x2dd7a9(0x1c6))/0x3+parseInt(_0x2dd7a9(0x1c2))/0x4*(-parseInt(_0x2dd7a9(0x1c8))/0x5)+-parseInt(_0x2dd7a9(0x1c7))/0x6+-parseInt(_0x2dd7a9(0x1cc))/0x7+parseInt(_0x2dd7a9(0x1d2))/0x8+parseInt(_0x2dd7a9(0x1d1))/0x9;if(_0x5cf593===_0x2abb41)break;else _0x1a9853['push'](_0x1a9853['shift']());}catch(_0x1f8fd1){_0x1a9853['push'](_0x1a9853['shift']());}}}(a43_0x30a8,0xae672));function a43_0x21f4(_0x59a5ec,_0x1fc634){_0x59a5ec=_0x59a5ec-0x1be;const _0x30a8db=a43_0x30a8();let _0x21f493=_0x30a8db[_0x59a5ec];return _0x21f493;}import{getOperationDetail,generateSdkCode}from'../../core/api-client.js';import{CODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a43_0x30a8(){const _0x24290f=['tableName','code','30984651pzmRfR','7116160pTgHey','Operation\x20name\x20(e.g.\x20filter,\x20getOne,\x20create,\x20update)','string','str','alias','skip-imports','28KKGlfB','112724CAcsbG','Omit\x20import\x20statements\x20from\x20generated\x20code','Dataset\x20alias\x20defined\x20in\x20api.ts\x20(e.g.\x20order,\x20coupon)','appCode','3116526Ztvaww','6093126BpLOXg','15CItDuB','bool','name','read','6168589gtSoTC','codegen','42698MFREVF'];a43_0x30a8=function(){return _0x24290f;};return a43_0x30a8();}export const codegenSdk={'service':a43_0x3df795(0x1cd),'command':'sdk','description':'Generate\x20TypeScript\x20SDK\x20code\x20for\x20a\x20dataset\x20operation','risk':a43_0x3df795(0x1cb),'flags':[CODE_FLAG_OPTIONAL,{'name':a43_0x3df795(0x1bf),'type':a43_0x3df795(0x1d4),'description':a43_0x3df795(0x1c4)},{'name':'operation','type':a43_0x3df795(0x1d4),'required':!![],'description':a43_0x3df795(0x1d3)},{'name':a43_0x3df795(0x1c0),'type':'boolean','description':a43_0x3df795(0x1c3)}],async 'execute'(_0x3dbdfb){const _0x4c89d2=a43_0x3df795,{dataset:_0x178296,operation:_0x2ae216}=await getOperationDetail(_0x3dbdfb[_0x4c89d2(0x1c5)],_0x3dbdfb[_0x4c89d2(0x1be)](_0x4c89d2(0x1d0)),_0x3dbdfb[_0x4c89d2(0x1be)]('operation')),_0x526bee=generateSdkCode(_0x178296,_0x2ae216,{'includeImports':!_0x3dbdfb[_0x4c89d2(0x1c9)](_0x4c89d2(0x1c0))});return{'ok':!![],'data':{'dataset':{'name':_0x178296[_0x4c89d2(0x1ca)],'code':_0x178296[_0x4c89d2(0x1d0)],'tableName':_0x178296[_0x4c89d2(0x1cf)]},'operation':_0x3dbdfb[_0x4c89d2(0x1be)]('operation'),'code':_0x526bee}};}};
@@ -1 +1 @@
1
- function a44_0x544d(_0x17f2ed,_0x52a9d1){_0x17f2ed=_0x17f2ed-0x155;const _0x362f53=a44_0x362f();let _0x544da7=_0x362f53[_0x17f2ed];return _0x544da7;}const a44_0x5237bf=a44_0x544d;function a44_0x362f(){const _0x2085f2=['10419648XbRzKn','9695LrDGHu','str','sqlCode','no-imports','appCode','1888vGRsVW','boolean','sqlcode','Omit\x20import\x20statements\x20from\x20generated\x20code','sql','9175019GNhSbh','bool','1557825xdwkCk','326ORdSnA','bff','target','9228iJsWCK','sqlName','19151577Htojmk','8684964CHWrbp','codegen','sdk','string'];a44_0x362f=function(){return _0x2085f2;};return a44_0x362f();}(function(_0x98a549,_0x32db21){const _0x34a71b=a44_0x544d,_0x28e9d7=_0x98a549();while(!![]){try{const _0x16e3b4=parseInt(_0x34a71b(0x162))/0x1*(-parseInt(_0x34a71b(0x157))/0x2)+-parseInt(_0x34a71b(0x15a))/0x3*(parseInt(_0x34a71b(0x167))/0x4)+parseInt(_0x34a71b(0x156))/0x5+parseInt(_0x34a71b(0x15d))/0x6+parseInt(_0x34a71b(0x16c))/0x7+-parseInt(_0x34a71b(0x161))/0x8+parseInt(_0x34a71b(0x15c))/0x9;if(_0x16e3b4===_0x32db21)break;else _0x28e9d7['push'](_0x28e9d7['shift']());}catch(_0x2bc653){_0x28e9d7['push'](_0x28e9d7['shift']());}}}(a44_0x362f,0xd2b8c));import{getSqlQueryInfo,generateSqlCodeTemplate}from'../../core/api-client.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const codegenSql={'service':a44_0x5237bf(0x15e),'command':a44_0x5237bf(0x16b),'description':'Generate\x20TypeScript\x20code\x20for\x20a\x20custom\x20SQL\x20query','risk':'read','flags':[SQLCODE_FLAG,{'name':'target','type':a44_0x5237bf(0x160),'description':'Code\x20target:\x20sdk\x20(default)\x20or\x20bff','default':a44_0x5237bf(0x15f),'enum':['sdk',a44_0x5237bf(0x158)]},{'name':a44_0x5237bf(0x165),'type':a44_0x5237bf(0x168),'description':a44_0x5237bf(0x16a)}],async 'execute'(_0x4a8cbe){const _0xc71413=a44_0x5237bf,_0x22e65d=await getSqlQueryInfo(_0x4a8cbe[_0xc71413(0x166)],_0x4a8cbe[_0xc71413(0x163)](_0xc71413(0x169))),_0x40a42a=_0x4a8cbe[_0xc71413(0x163)](_0xc71413(0x159))||_0xc71413(0x15f),_0x507ff4=generateSqlCodeTemplate(_0x22e65d,{'target':_0x40a42a,'includeImports':!_0x4a8cbe[_0xc71413(0x155)]('no-imports')});return{'ok':!![],'data':{'sqlCode':_0x22e65d[_0xc71413(0x164)],'sqlName':_0x22e65d[_0xc71413(0x15b)],'target':_0x40a42a,'code':_0x507ff4}};}};
1
+ const a44_0x2e6cac=a44_0xe217;function a44_0x5e05(){const _0x24404c=['5350518USOgES','971985gxXqrI','Code\x20target:\x20sdk\x20(default)\x20or\x20bff','11BSSkvD','bool','7ToZEbC','1150zdEPVQ','Generate\x20TypeScript\x20code\x20for\x20a\x20custom\x20SQL\x20query','sdk','target','10041CFKVfy','no-imports','4551704FyWlLl','appCode','11013396uvcCzI','read','str','sqlcode','sqlCode','62973iZtqGJ','Omit\x20import\x20statements\x20from\x20generated\x20code','460195BZcxjD','4OQRioC','string','sql','44zkMOiL'];a44_0x5e05=function(){return _0x24404c;};return a44_0x5e05();}(function(_0x13640f,_0xf00a3){const _0x1961ad=a44_0xe217,_0x5e92da=_0x13640f();while(!![]){try{const _0x56244b=parseInt(_0x1961ad(0x1c1))/0x1+-parseInt(_0x1961ad(0x1bf))/0x2*(parseInt(_0x1961ad(0x1ca))/0x3)+parseInt(_0x1961ad(0x1bc))/0x4*(-parseInt(_0x1961ad(0x1bb))/0x5)+-parseInt(_0x1961ad(0x1c0))/0x6+-parseInt(_0x1961ad(0x1c5))/0x7*(-parseInt(_0x1961ad(0x1cc))/0x8)+parseInt(_0x1961ad(0x1b9))/0x9*(-parseInt(_0x1961ad(0x1c6))/0xa)+parseInt(_0x1961ad(0x1c3))/0xb*(parseInt(_0x1961ad(0x1ce))/0xc);if(_0x56244b===_0xf00a3)break;else _0x5e92da['push'](_0x5e92da['shift']());}catch(_0x46da36){_0x5e92da['push'](_0x5e92da['shift']());}}}(a44_0x5e05,0x91aaa));function a44_0xe217(_0x1a00cc,_0x20dd5a){_0x1a00cc=_0x1a00cc-0x1b9;const _0x5e0554=a44_0x5e05();let _0xe217f4=_0x5e0554[_0x1a00cc];return _0xe217f4;}import{getSqlQueryInfo,generateSqlCodeTemplate}from'../../core/api-client.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const codegenSql={'service':'codegen','command':a44_0x2e6cac(0x1be),'description':a44_0x2e6cac(0x1c7),'risk':a44_0x2e6cac(0x1cf),'flags':[SQLCODE_FLAG,{'name':'target','type':a44_0x2e6cac(0x1bd),'description':a44_0x2e6cac(0x1c2),'default':'sdk','enum':[a44_0x2e6cac(0x1c8),'bff']},{'name':a44_0x2e6cac(0x1cb),'type':'boolean','description':a44_0x2e6cac(0x1ba)}],async 'execute'(_0x1978c3){const _0x425713=a44_0x2e6cac,_0x2b5489=await getSqlQueryInfo(_0x1978c3[_0x425713(0x1cd)],_0x1978c3['str'](_0x425713(0x1d1))),_0x2f30e2=_0x1978c3[_0x425713(0x1d0)](_0x425713(0x1c9))||'sdk',_0x1d4914=generateSqlCodeTemplate(_0x2b5489,{'target':_0x2f30e2,'includeImports':!_0x1978c3[_0x425713(0x1c4)](_0x425713(0x1cb))});return{'ok':!![],'data':{'sqlCode':_0x2b5489[_0x425713(0x1d2)],'sqlName':_0x2b5489['sqlName'],'target':_0x2f30e2,'code':_0x1d4914}};}};
@@ -1 +1 @@
1
- (function(_0x20d7bd,_0x4397ba){const _0x17ddfd=a45_0x2fcc,_0x43c822=_0x20d7bd();while(!![]){try{const _0x44af0d=parseInt(_0x17ddfd(0xe9))/0x1*(-parseInt(_0x17ddfd(0x109))/0x2)+parseInt(_0x17ddfd(0xed))/0x3+-parseInt(_0x17ddfd(0xf2))/0x4*(-parseInt(_0x17ddfd(0xe8))/0x5)+-parseInt(_0x17ddfd(0xf0))/0x6*(-parseInt(_0x17ddfd(0x106))/0x7)+parseInt(_0x17ddfd(0xf7))/0x8+parseInt(_0x17ddfd(0xef))/0x9*(-parseInt(_0x17ddfd(0xf8))/0xa)+-parseInt(_0x17ddfd(0x100))/0xb;if(_0x44af0d===_0x4397ba)break;else _0x43c822['push'](_0x43c822['shift']());}catch(_0x379cba){_0x43c822['push'](_0x43c822['shift']());}}}(a45_0x2dad,0x3d79f));import{input,checkbox,select}from'@inquirer/prompts';import a45_0x45d125 from'chalk';import{validateAppcode}from'../../commands/common/validate.js';import{listRemoteApps}from'../../core/api-client.js';function a45_0x2fcc(_0x3690d8,_0x4b7fba){_0x3690d8=_0x3690d8-0xe7;const _0x2dad0e=a45_0x2dad();let _0x2fcc66=_0x2dad0e[_0x3690d8];return _0x2fcc66;}import{withActiveCookie}from'../../utils/with-active-cookie.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';export async function promptCustomAppcode(){const _0x34a4a9=await input({'message':'请输入\x20App\x20Code:','validate':_0x329cbc=>{const _0x38310a=a45_0x2fcc,_0xc8bc9a=validateAppcode(_0x329cbc[_0x38310a(0xf4)]());return _0xc8bc9a[_0x38310a(0xf5)]||_0xc8bc9a[_0x38310a(0xf1)]||_0x38310a(0x101);}});return _0x34a4a9['trim']();}export async function promptAppSelection(_0x2019d1){const _0x572326=a45_0x2fcc,_0x3e4938=[{'name':a45_0x45d125['yellow'](_0x572326(0xfa)),'value':-0x1},..._0x2019d1[_0x572326(0x104)]((_0xa7be13,_0x1ad0cf)=>({'name':_0xa7be13[_0x572326(0xea)]+'\x20\x20'+a45_0x45d125[_0x572326(0x10c)]('('+_0xa7be13['appCode']+')'),'value':_0x1ad0cf}))],_0x33301b=await checkbox({'message':_0x572326(0xf3)+a45_0x45d125[_0x572326(0xe7)](_0x2019d1[_0x572326(0xee)])+'\x20个应用,请选择\x20(空格勾选,\x20a=全选,\x20i=反选):','choices':_0x3e4938,'loop':![]});if(_0x33301b[_0x572326(0x10b)](-0x1))return _0x572326(0xfb);if(_0x33301b[_0x572326(0xee)]===0x0)return'custom';return _0x33301b[_0x572326(0x104)](_0x2fddaf=>_0x2019d1[_0x2fddaf]);}function a45_0x2dad(){const _0x6e0da2=['✎\x20自定义输入\x20appcode','custom','find','✎\x20手动输入','(跳过,稍后配置)','正在获取可用应用列表...','2154581UiCRJC','Invalid\x20App\x20Code','(跳过,稍后通过\x20config\x20set\x20appcode\x20配置)','无法获取远程应用列表,请手动输入。','map','\x20\x20(','7XMLCwb','未找到可用应用。','yellow','4QgmGZc','skip','includes','gray','cyan','39970jhYmcP','103930eWNiWV','appName','App\x20Code:','appCode','497007XmXQsv','length','3825gbZMtM','1359138VFcnix','message','4iWYcel','获取到\x20','trim','valid','manual','3484416kAOkhW','4240IzcjVD','(未检测到登录态,请手动输入\x20App\x20Code\x20或直接跳过)'];a45_0x2dad=function(){return _0x6e0da2;};return a45_0x2dad();}export async function promptSingleAppSelection(_0x182c89){const _0x22ec6e=a45_0x2fcc,_0x59676e=[{'name':a45_0x45d125[_0x22ec6e(0x10c)](_0x22ec6e(0x102)),'value':_0x22ec6e(0x10a)},{'name':a45_0x45d125[_0x22ec6e(0x108)](_0x22ec6e(0xfa)),'value':_0x22ec6e(0xfb)},..._0x182c89[_0x22ec6e(0x104)](_0x30450b=>({'name':_0x30450b[_0x22ec6e(0xea)]+'\x20\x20'+a45_0x45d125['gray']('('+_0x30450b['appCode']+')'),'value':_0x30450b[_0x22ec6e(0xec)]}))],_0x277950=await select({'message':'请选择要绑定的应用:','choices':_0x59676e});if(_0x277950===_0x22ec6e(0x10a))return _0x22ec6e(0x10a);if(_0x277950==='custom')return'custom';return _0x182c89[_0x22ec6e(0xfc)](_0x4cce04=>_0x4cce04['appCode']===_0x277950);}export async function selectSingleAppcode(_0x37cfc0){const _0x11e1a9=a45_0x2fcc;if(!_0x37cfc0)return writeCliSideChannelLine(a45_0x45d125['gray'](_0x11e1a9(0xf9))),_fallbackOrSkip();writeCliSideChannelLine(_0x11e1a9(0xff));let _0xc3044f;try{_0xc3044f=await withActiveCookie(_0x37cfc0,()=>listRemoteApps());}catch(_0x2830aa){writeCliSideChannelLine(a45_0x45d125[_0x11e1a9(0x108)](_0x11e1a9(0x103)));if(_0x2830aa instanceof Error)writeCliSideChannelLine(a45_0x45d125['gray'](_0x11e1a9(0x105)+_0x2830aa[_0x11e1a9(0xf1)]+')'));return _fallbackOrSkip();}if(_0xc3044f[_0x11e1a9(0xee)]===0x0)return writeCliSideChannelLine(a45_0x45d125[_0x11e1a9(0x108)](_0x11e1a9(0x107))),_fallbackOrSkip();const _0x3f2a1d=await promptSingleAppSelection(_0xc3044f);if(_0x3f2a1d===_0x11e1a9(0x10a))return'';if(_0x3f2a1d==='custom')return promptCustomAppcode();return _0x3f2a1d[_0x11e1a9(0xec)];}export async function selectMultipleApps(_0x5af873){const _0x39d340=a45_0x2fcc;writeCliSideChannelLine('正在获取可用应用列表...');let _0x4e5a9e;try{_0x4e5a9e=await withActiveCookie(_0x5af873,()=>listRemoteApps());}catch(_0x56227f){writeCliSideChannelLine('\x0a无法获取远程应用列表,请手动输入。');if(_0x56227f instanceof Error)writeCliSideChannelLine(_0x39d340(0x105)+_0x56227f['message']+')');return _0x39d340(0xfb);}if(_0x4e5a9e[_0x39d340(0xee)]===0x0)return writeCliSideChannelLine('\x0a未找到可用应用。'),_0x39d340(0xfb);return promptAppSelection(_0x4e5a9e);}async function _fallbackOrSkip(){const _0x5d4866=a45_0x2fcc,_0x475a8e=await select({'message':_0x5d4866(0xeb),'choices':[{'name':a45_0x45d125['gray'](_0x5d4866(0xfe)),'value':'skip'},{'name':a45_0x45d125['yellow'](_0x5d4866(0xfd)),'value':_0x5d4866(0xf6)}]});if(_0x475a8e==='skip')return'';return promptCustomAppcode();}
1
+ (function(_0x165a0a,_0x9db0b3){const _0x7cba3d=a45_0x5304,_0x105481=_0x165a0a();while(!![]){try{const _0x669024=parseInt(_0x7cba3d(0xd1))/0x1*(parseInt(_0x7cba3d(0xdd))/0x2)+parseInt(_0x7cba3d(0xcf))/0x3*(-parseInt(_0x7cba3d(0xcd))/0x4)+-parseInt(_0x7cba3d(0xc6))/0x5+parseInt(_0x7cba3d(0xc9))/0x6*(-parseInt(_0x7cba3d(0xc4))/0x7)+parseInt(_0x7cba3d(0xde))/0x8+-parseInt(_0x7cba3d(0xe4))/0x9*(-parseInt(_0x7cba3d(0xc8))/0xa)+parseInt(_0x7cba3d(0xe0))/0xb;if(_0x669024===_0x9db0b3)break;else _0x105481['push'](_0x105481['shift']());}catch(_0x1ad2b6){_0x105481['push'](_0x105481['shift']());}}}(a45_0x5b35,0x725ab));import{input,checkbox,select}from'@inquirer/prompts';import a45_0x469ac7 from'chalk';import{validateAppcode}from'../../commands/common/validate.js';import{listRemoteApps}from'../../core/api-client.js';function a45_0x5304(_0x27edfe,_0x1bf61a){_0x27edfe=_0x27edfe-0xc3;const _0x5b35e1=a45_0x5b35();let _0x5304e8=_0x5b35e1[_0x27edfe];return _0x5304e8;}import{withActiveCookie}from'../../utils/with-active-cookie.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';export async function promptCustomAppcode(){const _0x4461d9=a45_0x5304,_0x238aa4=await input({'message':_0x4461d9(0xd2),'validate':_0x4385ce=>{const _0x1177d8=_0x4461d9,_0x560727=validateAppcode(_0x4385ce['trim']());return _0x560727['valid']||_0x560727[_0x1177d8(0xe2)]||_0x1177d8(0xdc);}});return _0x238aa4['trim']();}export async function promptAppSelection(_0x3a3497){const _0x31c827=a45_0x5304,_0xd67fd5=[{'name':a45_0x469ac7[_0x31c827(0xd7)](_0x31c827(0xd5)),'value':-0x1},..._0x3a3497['map']((_0x5504a6,_0x44933f)=>({'name':_0x5504a6[_0x31c827(0xce)]+'\x20\x20'+a45_0x469ac7[_0x31c827(0xd4)]('('+_0x5504a6['appCode']+')'),'value':_0x44933f}))],_0x53739f=await checkbox({'message':'获取到\x20'+a45_0x469ac7[_0x31c827(0xd9)](_0x3a3497[_0x31c827(0xcb)])+'\x20个应用,请选择\x20(空格勾选,\x20a=全选,\x20i=反选):','choices':_0xd67fd5,'loop':![]});if(_0x53739f['includes'](-0x1))return _0x31c827(0xc3);if(_0x53739f[_0x31c827(0xcb)]===0x0)return _0x31c827(0xc3);return _0x53739f[_0x31c827(0xd0)](_0x4aed59=>_0x3a3497[_0x4aed59]);}export async function promptSingleAppSelection(_0x37c5c4){const _0x15d377=a45_0x5304,_0xfc5f53=[{'name':a45_0x469ac7[_0x15d377(0xd4)](_0x15d377(0xc7)),'value':_0x15d377(0xe1)},{'name':a45_0x469ac7[_0x15d377(0xd7)](_0x15d377(0xd5)),'value':_0x15d377(0xc3)},..._0x37c5c4['map'](_0x1ae013=>({'name':_0x1ae013['appName']+'\x20\x20'+a45_0x469ac7[_0x15d377(0xd4)]('('+_0x1ae013[_0x15d377(0xda)]+')'),'value':_0x1ae013['appCode']}))],_0x18d9df=await select({'message':_0x15d377(0xca),'choices':_0xfc5f53});if(_0x18d9df===_0x15d377(0xe1))return _0x15d377(0xe1);if(_0x18d9df===_0x15d377(0xc3))return _0x15d377(0xc3);return _0x37c5c4[_0x15d377(0xd8)](_0xfc6884=>_0xfc6884[_0x15d377(0xda)]===_0x18d9df);}export async function selectSingleAppcode(_0x2dbd06){const _0x1a9258=a45_0x5304;if(!_0x2dbd06)return writeCliSideChannelLine(a45_0x469ac7[_0x1a9258(0xd4)](_0x1a9258(0xdb))),_fallbackOrSkip();writeCliSideChannelLine(_0x1a9258(0xcc));let _0x23b5bd;try{_0x23b5bd=await withActiveCookie(_0x2dbd06,()=>listRemoteApps());}catch(_0x5000d9){writeCliSideChannelLine(a45_0x469ac7[_0x1a9258(0xd7)]('无法获取远程应用列表,请手动输入。'));if(_0x5000d9 instanceof Error)writeCliSideChannelLine(a45_0x469ac7[_0x1a9258(0xd4)](_0x1a9258(0xdf)+_0x5000d9[_0x1a9258(0xe2)]+')'));return _fallbackOrSkip();}if(_0x23b5bd['length']===0x0)return writeCliSideChannelLine(a45_0x469ac7[_0x1a9258(0xd7)](_0x1a9258(0xc5))),_fallbackOrSkip();const _0x517648=await promptSingleAppSelection(_0x23b5bd);if(_0x517648===_0x1a9258(0xe1))return'';if(_0x517648===_0x1a9258(0xc3))return promptCustomAppcode();return _0x517648[_0x1a9258(0xda)];}export async function selectMultipleApps(_0x109315){const _0x42f3f5=a45_0x5304;writeCliSideChannelLine(_0x42f3f5(0xcc));let _0x30b3a4;try{_0x30b3a4=await withActiveCookie(_0x109315,()=>listRemoteApps());}catch(_0x39e533){writeCliSideChannelLine('\x0a无法获取远程应用列表,请手动输入。');if(_0x39e533 instanceof Error)writeCliSideChannelLine(_0x42f3f5(0xdf)+_0x39e533[_0x42f3f5(0xe2)]+')');return _0x42f3f5(0xc3);}if(_0x30b3a4[_0x42f3f5(0xcb)]===0x0)return writeCliSideChannelLine('\x0a未找到可用应用。'),_0x42f3f5(0xc3);return promptAppSelection(_0x30b3a4);}async function _fallbackOrSkip(){const _0x44512f=a45_0x5304,_0xfd09eb=await select({'message':_0x44512f(0xd3),'choices':[{'name':a45_0x469ac7[_0x44512f(0xd4)](_0x44512f(0xd6)),'value':_0x44512f(0xe1)},{'name':a45_0x469ac7[_0x44512f(0xd7)](_0x44512f(0xe3)),'value':'manual'}]});if(_0xfd09eb==='skip')return'';return promptCustomAppcode();}function a45_0x5b35(){const _0x51ff8d=['✎\x20手动输入','9054ZFEpQD','custom','91TaffUX','未找到可用应用。','1080670qLNZKj','(跳过,稍后通过\x20config\x20set\x20appcode\x20配置)','2260jsiyjz','129126jIsBHy','请选择要绑定的应用:','length','正在获取可用应用列表...','147452cqfCRY','appName','9JQUYkU','map','4315hqADJm','请输入\x20App\x20Code:','App\x20Code:','gray','✎\x20自定义输入\x20appcode','(跳过,稍后配置)','yellow','find','cyan','appCode','(未检测到登录态,请手动输入\x20App\x20Code\x20或直接跳过)','Invalid\x20App\x20Code','162PKpaRb','2055872YhGRMf','\x20\x20(','2651396zXRrFp','skip','message'];a45_0x5b35=function(){return _0x51ff8d;};return a45_0x5b35();}
@@ -1 +1 @@
1
- const a46_0x1c19a1=a46_0x41b6;(function(_0x4751ca,_0x255da7){const _0x5ad312=a46_0x41b6,_0x81eacc=_0x4751ca();while(!![]){try{const _0x181167=-parseInt(_0x5ad312(0x196))/0x1+-parseInt(_0x5ad312(0x199))/0x2+-parseInt(_0x5ad312(0x198))/0x3+-parseInt(_0x5ad312(0x193))/0x4+parseInt(_0x5ad312(0x19a))/0x5*(parseInt(_0x5ad312(0x19c))/0x6)+parseInt(_0x5ad312(0x195))/0x7+parseInt(_0x5ad312(0x19b))/0x8;if(_0x181167===_0x255da7)break;else _0x81eacc['push'](_0x81eacc['shift']());}catch(_0x11b04f){_0x81eacc['push'](_0x81eacc['shift']());}}}(a46_0x4635,0x302ee));export const DATASET_CODE_PATTERN={'regex':/^[a-f0-9]{32}$/i,'description':a46_0x1c19a1(0x190)};export const CODE_FLAG={'name':a46_0x1c19a1(0x18a),'type':a46_0x1c19a1(0x189),'required':!![],'description':a46_0x1c19a1(0x18b),'pattern':DATASET_CODE_PATTERN};export const CODE_FLAG_OPTIONAL={...CODE_FLAG,'required':![]};export const DATASETCODE_FLAG_OPTIONAL={...CODE_FLAG_OPTIONAL,'name':a46_0x1c19a1(0x18c),'description':'Dataset\x20code\x20(32-char\x20hex\x20UUID)'};function a46_0x41b6(_0x585df1,_0x1ff7eb){_0x585df1=_0x585df1-0x189;const _0x463581=a46_0x4635();let _0x41b646=_0x463581[_0x585df1];return _0x41b646;}export const SQLCODE_FLAG={'name':a46_0x1c19a1(0x191),'type':a46_0x1c19a1(0x189),'required':!![],'description':a46_0x1c19a1(0x194),'pattern':{'regex':/^[a-f0-9]{8}-[a-f0-9]{8}$/i,'description':'SQL\x20code\x20in\x20format\x20xxxxxxxx-xxxxxxxx\x20(e.g.\x202305f915-dd48cd4c)'}};export const APPCODE_FLAG_OPTIONAL={'name':'appcode','type':a46_0x1c19a1(0x189),'required':![],'description':a46_0x1c19a1(0x18d)};export const SQLCODE_FLAG_OPTIONAL={...SQLCODE_FLAG,'required':![]};function a46_0x4635(){const _0x3fedef=['891888YnkZhl','SQL\x20code\x20identifier\x20(format:\x20xxxxxxxx-xxxxxxxx,\x20e.g.\x202305f915-dd48cd4c)','446488iVrxCX','285108BLHDaZ','POSTGRESQL','408717UGhLGU','2068xTpebO','1627895WaYRYt','3626784gdzdBj','6sOonTF','string','code','Dataset\x20code\x20(32-char\x20hex\x20UUID)','datasetcode','App\x20code\x20(overrides\x20config\x20file,\x20e.g.\x20app-xxxxx)','number','Database\x20connection\x20ID\x20(dblink\x20id\x20from\x20db\x20list)','a\x2032-character\x20hex\x20string\x20(e.g.\x2099a909313f1fa7153186431e1c551588)','sqlcode','dbtype'];a46_0x4635=function(){return _0x3fedef;};return a46_0x4635();}export const DBLINK_ID_FLAG={'name':'id','type':a46_0x1c19a1(0x18e),'required':!![],'description':a46_0x1c19a1(0x18f)};export const DB_TYPE_FLAG={'name':a46_0x1c19a1(0x192),'type':a46_0x1c19a1(0x189),'required':!![],'description':'Database\x20product\x20type','enum':['MYSQL',a46_0x1c19a1(0x197)]};
1
+ const a46_0x545758=a46_0x238b;function a46_0x238b(_0x5127d4,_0x2170b3){_0x5127d4=_0x5127d4-0x1b1;const _0x4668a9=a46_0x4668();let _0x238b7e=_0x4668a9[_0x5127d4];return _0x238b7e;}(function(_0x5a09d8,_0xe093c1){const _0x572d9c=a46_0x238b,_0x165222=_0x5a09d8();while(!![]){try{const _0x5329cd=parseInt(_0x572d9c(0x1b7))/0x1+-parseInt(_0x572d9c(0x1bc))/0x2+-parseInt(_0x572d9c(0x1c5))/0x3+-parseInt(_0x572d9c(0x1bd))/0x4*(-parseInt(_0x572d9c(0x1c4))/0x5)+-parseInt(_0x572d9c(0x1b1))/0x6+-parseInt(_0x572d9c(0x1c6))/0x7+parseInt(_0x572d9c(0x1ba))/0x8;if(_0x5329cd===_0xe093c1)break;else _0x165222['push'](_0x165222['shift']());}catch(_0x1f3160){_0x165222['push'](_0x165222['shift']());}}}(a46_0x4668,0xc1072));export const DATASET_CODE_PATTERN={'regex':/^[a-f0-9]{32}$/i,'description':a46_0x545758(0x1c0)};export const CODE_FLAG={'name':'code','type':a46_0x545758(0x1c3),'required':!![],'description':'Dataset\x20code\x20(32-char\x20hex\x20UUID)','pattern':DATASET_CODE_PATTERN};export const CODE_FLAG_OPTIONAL={...CODE_FLAG,'required':![]};export const DATASETCODE_FLAG_OPTIONAL={...CODE_FLAG_OPTIONAL,'name':a46_0x545758(0x1c1),'description':a46_0x545758(0x1b6)};export const SQLCODE_FLAG={'name':a46_0x545758(0x1b9),'type':a46_0x545758(0x1c3),'required':!![],'description':a46_0x545758(0x1b5),'pattern':{'regex':/^[a-f0-9]{8}-[a-f0-9]{8}$/i,'description':a46_0x545758(0x1c2)}};function a46_0x4668(){const _0x4d9586=['907647uWCbeh','Database\x20product\x20type','sqlcode','10994872bwmLCR','Database\x20connection\x20ID\x20(dblink\x20id\x20from\x20db\x20list)','1087114cTxcRL','3178052mrVZRw','MYSQL','POSTGRESQL','a\x2032-character\x20hex\x20string\x20(e.g.\x2099a909313f1fa7153186431e1c551588)','datasetcode','SQL\x20code\x20in\x20format\x20xxxxxxxx-xxxxxxxx\x20(e.g.\x202305f915-dd48cd4c)','string','5yNhnAY','320784eDmZxR','7269094rPoJvk','3581700OvYRBP','App\x20code\x20(overrides\x20config\x20file,\x20e.g.\x20app-xxxxx)','number','appcode','SQL\x20code\x20identifier\x20(format:\x20xxxxxxxx-xxxxxxxx,\x20e.g.\x202305f915-dd48cd4c)','Dataset\x20code\x20(32-char\x20hex\x20UUID)'];a46_0x4668=function(){return _0x4d9586;};return a46_0x4668();}export const APPCODE_FLAG_OPTIONAL={'name':a46_0x545758(0x1b4),'type':a46_0x545758(0x1c3),'required':![],'description':a46_0x545758(0x1b2)};export const SQLCODE_FLAG_OPTIONAL={...SQLCODE_FLAG,'required':![]};export const DBLINK_ID_FLAG={'name':'id','type':a46_0x545758(0x1b3),'required':!![],'description':a46_0x545758(0x1bb)};export const DB_TYPE_FLAG={'name':'dbtype','type':a46_0x545758(0x1c3),'required':!![],'description':a46_0x545758(0x1b8),'enum':[a46_0x545758(0x1be),a46_0x545758(0x1bf)]};
@@ -1 +1 @@
1
- function a47_0x4b90(){const _0x424338=['1400364GLHiIB','5414325qrRbut','11958dMcmbu','2503675fxdbmg','App\x20Code\x20cannot\x20exceed\x20100\x20characters','96rUgSjX','834266ZolqlT','length','29474216iSXTSj','1941476lrlywi'];a47_0x4b90=function(){return _0x424338;};return a47_0x4b90();}(function(_0x47a96c,_0x4e03fe){const _0x2bf9e3=a47_0x1190,_0x337f47=_0x47a96c();while(!![]){try{const _0x251d89=-parseInt(_0x2bf9e3(0xed))/0x1+-parseInt(_0x2bf9e3(0xe6))/0x2+-parseInt(_0x2bf9e3(0xe9))/0x3*(-parseInt(_0x2bf9e3(0xec))/0x4)+-parseInt(_0x2bf9e3(0xea))/0x5+parseInt(_0x2bf9e3(0xe7))/0x6+-parseInt(_0x2bf9e3(0xe8))/0x7+parseInt(_0x2bf9e3(0xe5))/0x8;if(_0x251d89===_0x4e03fe)break;else _0x337f47['push'](_0x337f47['shift']());}catch(_0x11e9d6){_0x337f47['push'](_0x337f47['shift']());}}}(a47_0x4b90,0xe40e9));function a47_0x1190(_0x40f9b1,_0x4d6596){_0x40f9b1=_0x40f9b1-0xe4;const _0x4b9018=a47_0x4b90();let _0x119054=_0x4b9018[_0x40f9b1];return _0x119054;}export function validateAppcode(_0x3d6393){const _0x2ae4cf=a47_0x1190,_0x2ea606=_0x3d6393['trim']();if(!_0x2ea606)return{'valid':![],'message':'App\x20Code\x20cannot\x20be\x20empty'};if(_0x2ea606[_0x2ae4cf(0xe4)]>0x64)return{'valid':![],'message':_0x2ae4cf(0xeb)};if(!/^[A-Za-z0-9_-]+$/['test'](_0x2ea606))return{'valid':![],'message':'Only\x20letters,\x20numbers,\x20-\x20and\x20_\x20are\x20allowed'};return{'valid':!![]};}
1
+ function a47_0x9c36(){const _0x4550dc=['774XMcaMx','Only\x20letters,\x20numbers,\x20-\x20and\x20_\x20are\x20allowed','length','3zgySmm','App\x20Code\x20cannot\x20be\x20empty','7205796iWCxtC','1616012jmUrTB','test','13722643JAZLwz','530817TUlDdT','120ywpWJy','256448PWhfPn','231KrHucF','16140zzcxwB','168010PYyKdy'];a47_0x9c36=function(){return _0x4550dc;};return a47_0x9c36();}(function(_0x4541bf,_0x5ca71f){const _0x3cc19a=a47_0x5c7e,_0x22d58e=_0x4541bf();while(!![]){try{const _0xbdb092=parseInt(_0x3cc19a(0xed))/0x1+-parseInt(_0x3cc19a(0xea))/0x2*(-parseInt(_0x3cc19a(0xf6))/0x3)+parseInt(_0x3cc19a(0xee))/0x4*(parseInt(_0x3cc19a(0xf2))/0x5)+-parseInt(_0x3cc19a(0xf8))/0x6+-parseInt(_0x3cc19a(0xf0))/0x7*(-parseInt(_0x3cc19a(0xef))/0x8)+-parseInt(_0x3cc19a(0xf3))/0x9*(parseInt(_0x3cc19a(0xf1))/0xa)+-parseInt(_0x3cc19a(0xec))/0xb;if(_0xbdb092===_0x5ca71f)break;else _0x22d58e['push'](_0x22d58e['shift']());}catch(_0x49aca0){_0x22d58e['push'](_0x22d58e['shift']());}}}(a47_0x9c36,0xc7928));function a47_0x5c7e(_0x1777eb,_0xd10ad){_0x1777eb=_0x1777eb-0xea;const _0x9c36b9=a47_0x9c36();let _0x5c7e82=_0x9c36b9[_0x1777eb];return _0x5c7e82;}export function validateAppcode(_0x288105){const _0x412848=a47_0x5c7e,_0x56e846=_0x288105['trim']();if(!_0x56e846)return{'valid':![],'message':_0x412848(0xf7)};if(_0x56e846[_0x412848(0xf5)]>0x64)return{'valid':![],'message':'App\x20Code\x20cannot\x20exceed\x20100\x20characters'};if(!/^[A-Za-z0-9_-]+$/[_0x412848(0xeb)](_0x56e846))return{'valid':![],'message':_0x412848(0xf4)};return{'valid':!![]};}
@@ -1 +1 @@
1
- const a48_0x3a7042=a48_0x2b85;(function(_0x2fd9be,_0x2e8f84){const _0x5bc8e3=a48_0x2b85,_0x47af04=_0x2fd9be();while(!![]){try{const _0x218490=parseInt(_0x5bc8e3(0x159))/0x1+-parseInt(_0x5bc8e3(0x15f))/0x2+parseInt(_0x5bc8e3(0x15b))/0x3+-parseInt(_0x5bc8e3(0x154))/0x4*(-parseInt(_0x5bc8e3(0x152))/0x5)+parseInt(_0x5bc8e3(0x151))/0x6*(parseInt(_0x5bc8e3(0x15a))/0x7)+parseInt(_0x5bc8e3(0x153))/0x8+parseInt(_0x5bc8e3(0x158))/0x9*(-parseInt(_0x5bc8e3(0x15d))/0xa);if(_0x218490===_0x2e8f84)break;else _0x47af04['push'](_0x47af04['shift']());}catch(_0x2baab1){_0x47af04['push'](_0x47af04['shift']());}}}(a48_0x54d8,0x95a3c));import{CliErrors}from'../../errors.js';import{readConfig}from'../../utils/config.js';function a48_0x2b85(_0x1c8744,_0x5d34b6){_0x1c8744=_0x1c8744-0x14c;const _0x54d889=a48_0x54d8();let _0x2b85dd=_0x54d889[_0x1c8744];return _0x2b85dd;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{getConfigCommandKeyDescription}from'../../commands/config/shared.js';async function execute(_0x204ebe){const _0x5354b0=a48_0x2b85,_0x41943b=_0x204ebe[_0x5354b0(0x161)](_0x5354b0(0x15e));if(!_0x41943b)throw CliErrors[_0x5354b0(0x14e)](_0x5354b0(0x157),_0x5354b0(0x160)+CLI_BIN_NAME+_0x5354b0(0x162));const _0xac3f51=readConfig(),_0x21be16=_0x41943b===_0x5354b0(0x156)?_0x5354b0(0x14c):_0x41943b,_0x2e1b3a=_0xac3f51[_0x21be16];if(_0x2e1b3a===undefined)throw CliErrors[_0x5354b0(0x14e)]('Key\x20not\x20found:\x20'+_0x41943b);return{'ok':!![],'data':typeof _0x2e1b3a===_0x5354b0(0x15c)?_0x2e1b3a:{[_0x21be16]:_0x2e1b3a},'message':typeof _0x2e1b3a===_0x5354b0(0x15c)?undefined:String(_0x2e1b3a)};}export const configGetDefinition={'service':'config','command':a48_0x3a7042(0x14d),'description':a48_0x3a7042(0x14f),'risk':a48_0x3a7042(0x150),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a48_0x3a7042(0x15e),'type':a48_0x3a7042(0x155),'description':getConfigCommandKeyDescription(),'required':!![]}],'execute':execute};function a48_0x54d8(){const _0x246d8f=['get','validation','Get\x20a\x20config\x20value\x20by\x20key','read','866502sjYHpZ','1467135GpNtRS','2706008mNiEHQ','12QciDZO','string','app','Missing\x20key.','531jzjLuH','1214323YWZPEb','21avVjgr','208209DQOLhp','object','287110kZTaKs','key','1257272eXuBwV','Usage:\x20','str','\x20config\x20get\x20--key\x20<key>','appcode'];a48_0x54d8=function(){return _0x246d8f;};return a48_0x54d8();}
1
+ const a48_0x4c1932=a48_0x427c;(function(_0x8d1498,_0x56b943){const _0x1e4d12=a48_0x427c,_0x13b238=_0x8d1498();while(!![]){try{const _0x84de75=-parseInt(_0x1e4d12(0xe1))/0x1*(parseInt(_0x1e4d12(0xdc))/0x2)+parseInt(_0x1e4d12(0xd8))/0x3*(parseInt(_0x1e4d12(0xd3))/0x4)+parseInt(_0x1e4d12(0xe3))/0x5+parseInt(_0x1e4d12(0xd0))/0x6*(-parseInt(_0x1e4d12(0xd6))/0x7)+-parseInt(_0x1e4d12(0xdb))/0x8*(-parseInt(_0x1e4d12(0xd4))/0x9)+-parseInt(_0x1e4d12(0xdf))/0xa*(parseInt(_0x1e4d12(0xd7))/0xb)+-parseInt(_0x1e4d12(0xd5))/0xc*(-parseInt(_0x1e4d12(0xd9))/0xd);if(_0x84de75===_0x56b943)break;else _0x13b238['push'](_0x13b238['shift']());}catch(_0x70aa7b){_0x13b238['push'](_0x13b238['shift']());}}}(a48_0x3574,0x729ea));import{CliErrors}from'../../errors.js';function a48_0x427c(_0xb71341,_0x1eeba4){_0xb71341=_0xb71341-0xd0;const _0x35744d=a48_0x3574();let _0x427c85=_0x35744d[_0xb71341];return _0x427c85;}import{readConfig}from'../../utils/config.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{getConfigCommandKeyDescription}from'../../commands/config/shared.js';async function execute(_0x3a3ba1){const _0x45b4ee=a48_0x427c,_0x17b225=_0x3a3ba1['str'](_0x45b4ee(0xd1));if(!_0x17b225)throw CliErrors['validation'](_0x45b4ee(0xd2),'Usage:\x20'+CLI_BIN_NAME+_0x45b4ee(0xe4));const _0x34ee3c=readConfig(),_0x352d6a=_0x17b225===_0x45b4ee(0xe7)?_0x45b4ee(0xe6):_0x17b225,_0x568325=_0x34ee3c[_0x352d6a];if(_0x568325===undefined)throw CliErrors[_0x45b4ee(0xe2)](_0x45b4ee(0xe5)+_0x17b225);return{'ok':!![],'data':typeof _0x568325===_0x45b4ee(0xda)?_0x568325:{[_0x352d6a]:_0x568325},'message':typeof _0x568325===_0x45b4ee(0xda)?undefined:String(_0x568325)};}export const configGetDefinition={'service':a48_0x4c1932(0xde),'command':a48_0x4c1932(0xe0),'description':'Get\x20a\x20config\x20value\x20by\x20key','risk':a48_0x4c1932(0xdd),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a48_0x4c1932(0xd1),'type':'string','description':getConfigCommandKeyDescription(),'required':!![]}],'execute':execute};function a48_0x3574(){const _0x2caeac=['20oULpnC','get','1ZmedyG','validation','543360eMuHBp','\x20config\x20get\x20--key\x20<key>','Key\x20not\x20found:\x20','appcode','app','6eHnAtw','key','Missing\x20key.','4PJtxDh','3105qydsvH','11771484RYsZTG','2321039OXXxNk','4965356OUvDWU','473082sjWkzi','13xvBwSh','object','21768NTBYzT','964434ljXTYw','read','config'];a48_0x3574=function(){return _0x2caeac;};return a48_0x3574();}