@lovrabet/rabetbase-cli 2.1.1 → 2.1.2-beta.0

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 (162) 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 -0
  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 -0
  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 -0
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/delete.js +1 -1
  28. package/lib/commands/bff/detail.js +1 -1
  29. package/lib/commands/bff/index.js +1 -1
  30. package/lib/commands/bff/list.js +1 -1
  31. package/lib/commands/bff/new.js +1 -1
  32. package/lib/commands/bff/pull.js +1 -1
  33. package/lib/commands/bff/push.js +1 -1
  34. package/lib/commands/bff/status.js +1 -1
  35. package/lib/commands/cli-update.js +1 -1
  36. package/lib/commands/codegen/index.js +1 -1
  37. package/lib/commands/codegen/sdk.js +1 -1
  38. package/lib/commands/codegen/sql.js +1 -1
  39. package/lib/commands/common/app-selector.js +1 -1
  40. package/lib/commands/common/flags.js +1 -1
  41. package/lib/commands/common/validate.js +1 -1
  42. package/lib/commands/config/get.js +1 -1
  43. package/lib/commands/config/index.js +1 -1
  44. package/lib/commands/config/list.js +1 -1
  45. package/lib/commands/config/set.js +1 -1
  46. package/lib/commands/config/shared.js +1 -1
  47. package/lib/commands/dataset/detail.js +1 -1
  48. package/lib/commands/dataset/index.js +1 -1
  49. package/lib/commands/dataset/links.js +1 -1
  50. package/lib/commands/dataset/list.js +1 -1
  51. package/lib/commands/dataset/operations.js +1 -1
  52. package/lib/commands/db/analyze-cancel.js +1 -1
  53. package/lib/commands/db/analyze-start.js +1 -1
  54. package/lib/commands/db/analyze-status.js +1 -1
  55. package/lib/commands/db/create.js +1 -1
  56. package/lib/commands/db/delete.js +1 -1
  57. package/lib/commands/db/detail.js +1 -1
  58. package/lib/commands/db/diff.js +1 -1
  59. package/lib/commands/db/index.js +1 -1
  60. package/lib/commands/db/list.js +1 -1
  61. package/lib/commands/db/shared.js +1 -1
  62. package/lib/commands/db/tables.js +1 -1
  63. package/lib/commands/db/test.js +1 -1
  64. package/lib/commands/db/update.js +1 -1
  65. package/lib/commands/doctor.js +1 -1
  66. package/lib/commands/init/index.js +1 -1
  67. package/lib/commands/logs/index.js +1 -1
  68. package/lib/commands/menu/index.js +1 -1
  69. package/lib/commands/menu/shared/compare-table.js +1 -1
  70. package/lib/commands/menu/shared/index.js +1 -1
  71. package/lib/commands/menu/shared/inquirer.js +1 -1
  72. package/lib/commands/menu/shared/local-pages.js +1 -1
  73. package/lib/commands/menu/shared/logic.js +1 -1
  74. package/lib/commands/menu/shared/service.js +1 -1
  75. package/lib/commands/menu/shared/sync-core.js +1 -1
  76. package/lib/commands/menu/shared/update-core.js +1 -1
  77. package/lib/commands/menu/shared/valid-url.js +1 -1
  78. package/lib/commands/menu/sync.js +1 -1
  79. package/lib/commands/menu/update.js +1 -1
  80. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  81. package/lib/commands/project/create/format-elapsed.js +1 -1
  82. package/lib/commands/project/create/main.js +1 -1
  83. package/lib/commands/project/create/non-interactive.js +1 -1
  84. package/lib/commands/project/create/project-template-path.js +1 -1
  85. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  86. package/lib/commands/project/create/use-format-code.js +1 -1
  87. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  88. package/lib/commands/project/index.js +1 -1
  89. package/lib/commands/project/init.js +1 -1
  90. package/lib/commands/project/upgrade.js +1 -1
  91. package/lib/commands/registry.js +1 -1
  92. package/lib/commands/run/index.js +1 -1
  93. package/lib/commands/schema.js +1 -1
  94. package/lib/commands/skill/index.js +1 -1
  95. package/lib/commands/sql/detail.js +1 -1
  96. package/lib/commands/sql/exec.js +1 -1
  97. package/lib/commands/sql/index.js +1 -1
  98. package/lib/commands/sql/list.js +1 -1
  99. package/lib/commands/sql/pull.js +1 -1
  100. package/lib/commands/sql/save.js +1 -1
  101. package/lib/commands/sql/shared.js +1 -1
  102. package/lib/commands/sql/validate.js +1 -1
  103. package/lib/config/schema.js +1 -0
  104. package/lib/constant/cli.js +1 -1
  105. package/lib/constant/defaults.js +1 -0
  106. package/lib/constant/domain.js +1 -1
  107. package/lib/constant/env.js +1 -1
  108. package/lib/constant/output.js +1 -0
  109. package/lib/constant/paths.js +1 -1
  110. package/lib/constant/risk.js +1 -0
  111. package/lib/context.js +1 -1
  112. package/lib/core/alias-resolver.js +1 -1
  113. package/lib/core/api-client.js +1 -1
  114. package/lib/core/bff/config.js +1 -1
  115. package/lib/core/bff/file-system.js +1 -1
  116. package/lib/core/bff/hash.js +1 -1
  117. package/lib/core/bff/lock.js +1 -1
  118. package/lib/core/bff/utils.js +1 -1
  119. package/lib/core/db-resolver.js +1 -1
  120. package/lib/core/sql-validator.js +1 -1
  121. package/lib/errors.js +1 -1
  122. package/lib/framework/build-all-flags.js +1 -1
  123. package/lib/framework/flags.js +1 -1
  124. package/lib/framework/help.js +1 -1
  125. package/lib/framework/index.js +1 -1
  126. package/lib/framework/output.js +1 -1
  127. package/lib/framework/response.js +1 -1
  128. package/lib/framework/runner-alias.js +1 -0
  129. package/lib/framework/runner.js +1 -1
  130. package/lib/framework/schema-export.js +1 -1
  131. package/lib/framework/types.js +1 -1
  132. package/lib/generated/build-info.js +1 -1
  133. package/lib/help.js +1 -1
  134. package/lib/skills/main.js +1 -1
  135. package/lib/skills/npx-skills-add.js +1 -1
  136. package/lib/telemetry/cli-command-trace.js +1 -1
  137. package/lib/telemetry/cli-help-trace.js +1 -1
  138. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  139. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  140. package/lib/telemetry/send-cli-trace-log.js +1 -1
  141. package/lib/utils/ai_config.js +1 -1
  142. package/lib/utils/apply-jq-filter.js +1 -1
  143. package/lib/utils/cdn-config.js +1 -1
  144. package/lib/utils/check-sdk-version.js +1 -1
  145. package/lib/utils/cli-version-check.js +1 -1
  146. package/lib/utils/config.js +1 -1
  147. package/lib/utils/copy-directory.js +1 -1
  148. package/lib/utils/file-utils.js +1 -1
  149. package/lib/utils/guides-cdn.js +1 -1
  150. package/lib/utils/http-client.js +1 -1
  151. package/lib/utils/is-non-interactive.js +1 -1
  152. package/lib/utils/logger.js +1 -1
  153. package/lib/utils/platform.js +1 -1
  154. package/lib/utils/rules-cdn.js +1 -1
  155. package/lib/utils/sleep.js +1 -1
  156. package/lib/utils/template-replacer.js +1 -1
  157. package/lib/utils/version.js +1 -1
  158. package/lib/utils/with-active-cookie.js +1 -1
  159. package/lib/utils/write-cli-side-channel.js +1 -1
  160. package/package.json +3 -2
  161. package/lib/commands/api/doc.js +0 -1
  162. package/lib/commands/app/remote.js +0 -1
@@ -1 +1 @@
1
- const a19_0x249733=a19_0x2d22;(function(_0x1252e5,_0x24540b){const _0x467396=a19_0x2d22,_0x4227b3=_0x1252e5();while(!![]){try{const _0x26b431=-parseInt(_0x467396(0x135))/0x1*(parseInt(_0x467396(0x10d))/0x2)+parseInt(_0x467396(0x115))/0x3*(parseInt(_0x467396(0x109))/0x4)+parseInt(_0x467396(0x10f))/0x5*(-parseInt(_0x467396(0x125))/0x6)+-parseInt(_0x467396(0x11a))/0x7+-parseInt(_0x467396(0x112))/0x8*(parseInt(_0x467396(0x111))/0x9)+parseInt(_0x467396(0x122))/0xa+parseInt(_0x467396(0x134))/0xb;if(_0x26b431===_0x24540b)break;else _0x4227b3['push'](_0x4227b3['shift']());}catch(_0x5a6b78){_0x4227b3['push'](_0x4227b3['shift']());}}}(a19_0x3794,0x74851));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a19_0x3794(){const _0x485bb9=['\x20config','merged','riskLevel','18130464XNttjW','14383vdkloL','length','read','8936nyLmXS','No\x20apps\x20configured','map','pageSize','22PAWggi','find','305EuwIZA','bool','5760yXHzjv','11896rNyBJp','globalConfig','boolean','24LBbVbg','push','cookie','apiDir','format','22680yvUNkH','globalPath','entries','inherit','appcode','\x20in\x20','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','project','7193150piTcyT','accessKey','apps','78198dFkQvu','list','env','isCurrent','object','projectPath','global','keys','app','locale','projectConfig','defaultApp'];a19_0x3794=function(){return _0x485bb9;};return a19_0x3794();}import{appDefinedIn,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x2e9386,_0x1943ff){const _0x519c7b=a19_0x2d22,_0xf536d5=[],_0x13b9ba=_0x2e9386[_0x519c7b(0x124)]&&typeof _0x2e9386['apps']===_0x519c7b(0x129)?_0x2e9386[_0x519c7b(0x124)]:{},_0x319329=_0x2e9386[_0x519c7b(0x130)]||undefined;for(const [_0x5b9198,_0x309893]of Object[_0x519c7b(0x11c)](_0x13b9ba)){if(!_0x309893||typeof _0x309893!=='object'||!_0x309893[_0x519c7b(0x11e)])continue;_0xf536d5[_0x519c7b(0x116)]({'name':_0x5b9198,'appcode':_0x309893[_0x519c7b(0x11e)],'named':!![],'definedIn':_0x1943ff,'isDefault':_0x5b9198===_0x319329,'env':_0x309893[_0x519c7b(0x127)]??null,'apiDir':_0x309893['apiDir']??null,'hasCookie':!!_0x309893[_0x519c7b(0x117)],'hasAccessKey':!!_0x309893[_0x519c7b(0x123)],'format':_0x309893[_0x519c7b(0x119)]??null,'pageSize':_0x309893[_0x519c7b(0x10c)]??null,'riskLevel':_0x309893[_0x519c7b(0x133)]??null,'locale':_0x309893['locale']??null});}const _0x36bc78=Object[_0x519c7b(0x12c)](_0x13b9ba)[_0x519c7b(0x136)]>0x0,_0x2c2485=_0x2e9386[_0x519c7b(0x11e)]||_0x2e9386[_0x519c7b(0x12d)];return _0x2c2485&&!_0x36bc78&&_0xf536d5[_0x519c7b(0x116)]({'name':null,'appcode':String(_0x2c2485),'named':![],'definedIn':_0x1943ff,'isDefault':![],'env':_0x2e9386[_0x519c7b(0x127)]??null,'apiDir':_0x2e9386['apiDir']??null,'hasCookie':!!_0x2e9386[_0x519c7b(0x117)],'hasAccessKey':!!_0x2e9386[_0x519c7b(0x123)],'format':_0x2e9386['format']??null,'pageSize':_0x2e9386[_0x519c7b(0x10c)]??null,'riskLevel':_0x2e9386[_0x519c7b(0x133)]??null,'locale':_0x2e9386[_0x519c7b(0x12e)]??null}),_0xf536d5;}function a19_0x2d22(_0x1c658b,_0x267690){_0x1c658b=_0x1c658b-0x108;const _0x379437=a19_0x3794();let _0x2d229a=_0x379437[_0x1c658b];return _0x2d229a;}function buildMergedItems(_0x3487f0,_0x1b5cff){const _0x373705=a19_0x2d22,{apps:apps={},defaultApp:_0x2db2fc,currentApp:_0x7d91f9}=_0x3487f0,_0x582bf1=_0x1b5cff[_0x373705(0x113)][_0x373705(0x124)]&&typeof _0x1b5cff[_0x373705(0x113)]['apps']==='object'?_0x1b5cff[_0x373705(0x113)][_0x373705(0x124)]:{},_0x59dd3b=_0x1b5cff[_0x373705(0x12f)][_0x373705(0x124)]&&typeof _0x1b5cff[_0x373705(0x12f)]['apps']===_0x373705(0x129)?_0x1b5cff[_0x373705(0x12f)][_0x373705(0x124)]:{},_0xb72e79=_0x1b5cff[_0x373705(0x12f)][_0x373705(0x11d)]===![],_0x498dbe=Object[_0x373705(0x11c)](apps),_0x148cc9=_0x498dbe[_0x373705(0x10b)](([_0x25177e,_0x46920f])=>({'name':_0x25177e,'appcode':_0x46920f[_0x373705(0x11e)],'named':!![],'definedIn':appDefinedIn(_0x25177e,_0x582bf1,_0x59dd3b,_0xb72e79),'isDefault':_0x25177e===_0x2db2fc,'isCurrent':_0x25177e===(_0x7d91f9??_0x2db2fc),'env':_0x46920f[_0x373705(0x127)]??null,'apiDir':_0x46920f['apiDir']??null,'hasCookie':!!_0x46920f[_0x373705(0x117)],'hasAccessKey':!!_0x46920f['accessKey'],'format':_0x46920f[_0x373705(0x119)]??null,'pageSize':_0x46920f[_0x373705(0x10c)]??null,'riskLevel':_0x46920f[_0x373705(0x133)]??null,'locale':_0x46920f[_0x373705(0x12e)]??null})),_0x29396c=(_0x1b5cff[_0x373705(0x12f)]['appcode']||_0x1b5cff[_0x373705(0x12f)][_0x373705(0x12d)])&&(!_0x1b5cff[_0x373705(0x12f)]['apps']||Object['keys'](_0x1b5cff[_0x373705(0x12f)][_0x373705(0x124)])[_0x373705(0x136)]===0x0)?String(_0x1b5cff[_0x373705(0x12f)][_0x373705(0x11e)]||_0x1b5cff[_0x373705(0x12f)][_0x373705(0x12d)]):undefined,_0x1a17fc=(_0x1b5cff[_0x373705(0x113)]['appcode']||_0x1b5cff['globalConfig'][_0x373705(0x12d)])&&(!_0x1b5cff[_0x373705(0x113)][_0x373705(0x124)]||Object['keys'](_0x1b5cff['globalConfig'][_0x373705(0x124)])[_0x373705(0x136)]===0x0)?String(_0x1b5cff[_0x373705(0x113)][_0x373705(0x11e)]||_0x1b5cff[_0x373705(0x113)][_0x373705(0x12d)]):undefined;if(_0x29396c)_0x148cc9[_0x373705(0x116)]({'name':null,'appcode':_0x29396c,'named':![],'definedIn':_0x373705(0x121),'isDefault':![],'isCurrent':!_0x2db2fc,'env':_0x1b5cff[_0x373705(0x12f)][_0x373705(0x127)]??null,'apiDir':_0x1b5cff[_0x373705(0x12f)]['apiDir']??null,'hasCookie':!!_0x1b5cff[_0x373705(0x12f)][_0x373705(0x117)],'hasAccessKey':!!_0x1b5cff[_0x373705(0x12f)][_0x373705(0x123)],'format':_0x1b5cff[_0x373705(0x12f)]['format']??null,'pageSize':_0x1b5cff['projectConfig'][_0x373705(0x10c)]??null,'riskLevel':_0x1b5cff[_0x373705(0x12f)]['riskLevel']??null,'locale':_0x1b5cff[_0x373705(0x12f)]['locale']??null});else _0x1a17fc&&_0x498dbe['length']===0x0&&_0x148cc9[_0x373705(0x116)]({'name':null,'appcode':_0x1a17fc,'named':![],'definedIn':_0x373705(0x12b),'isDefault':![],'isCurrent':!_0x2db2fc,'env':_0x1b5cff[_0x373705(0x113)][_0x373705(0x127)]??null,'apiDir':_0x1b5cff[_0x373705(0x113)][_0x373705(0x118)]??null,'hasCookie':!!_0x1b5cff[_0x373705(0x113)][_0x373705(0x117)],'hasAccessKey':!!_0x1b5cff[_0x373705(0x113)]['accessKey'],'format':_0x1b5cff[_0x373705(0x113)][_0x373705(0x119)]??null,'pageSize':_0x1b5cff['globalConfig'][_0x373705(0x10c)]??null,'riskLevel':_0x1b5cff[_0x373705(0x113)]['riskLevel']??null,'locale':_0x1b5cff['globalConfig'][_0x373705(0x12e)]??null});return _0x148cc9;}async function execute(_0x5add31){const _0x466987=a19_0x2d22,_0x22d2ba=_0x5add31[_0x466987(0x110)](_0x466987(0x12b)),_0x1e4446=_0x5add31[_0x466987(0x110)](_0x466987(0x121)),_0x190b8a=_0x22d2ba?_0x466987(0x12b):_0x1e4446?_0x466987(0x121):_0x466987(0x132),{config:_0x16d330,layers:_0x367b7a}=readRawConfigWithLayers(),_0x1323d9=resolveDefaultAppSource(_0x367b7a),{defaultApp:_0x5ef876}=_0x16d330;let _0x47a0fd,_0x315c38;switch(_0x190b8a){case _0x466987(0x12b):_0x47a0fd=buildItemsFromLayer(_0x367b7a[_0x466987(0x113)],'global'),_0x315c38=_0x367b7a[_0x466987(0x11b)];break;case _0x466987(0x121):_0x47a0fd=buildItemsFromLayer(_0x367b7a[_0x466987(0x12f)],_0x466987(0x121)),_0x315c38=_0x367b7a['projectPath'];break;default:_0x47a0fd=buildMergedItems(_0x16d330,_0x367b7a);break;}if(_0x47a0fd[_0x466987(0x136)]===0x0){const _0x106fe0=_0x190b8a===_0x466987(0x132)?'':_0x466987(0x11f)+_0x190b8a+_0x466987(0x131);return{'ok':!![],'data':[],'message':_0x466987(0x10a)+_0x106fe0+'.\x20Use\x20`'+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x347497=_0x47a0fd[_0x466987(0x10e)](_0x3da525=>_0x3da525[_0x466987(0x128)]===!![]),_0x4ca278=_0x5ef876??_0x347497?.[_0x466987(0x11e)]??null,_0x4c762b=_0x190b8a===_0x466987(0x132)?{'globalPath':_0x367b7a['globalPath']??null,'projectPath':_0x367b7a[_0x466987(0x12a)]??null,'defaultApp':_0x4ca278,'defaultAppSource':_0x5ef876!=null?_0x1323d9:null}:{'scope':_0x190b8a,'configPath':_0x315c38??null};return{'ok':!![],'data':{'items':_0x47a0fd,'meta':_0x4c762b}};}export const appListDefinition={'service':a19_0x249733(0x12d),'command':a19_0x249733(0x126),'description':'List\x20all\x20configured\x20apps','risk':a19_0x249733(0x108),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a19_0x249733(0x12b),'type':a19_0x249733(0x114),'description':'Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','default':![]},{'name':a19_0x249733(0x121),'type':a19_0x249733(0x114),'description':a19_0x249733(0x120),'default':![]}],'execute':execute};
1
+ const a21_0x2976d4=a21_0x5a4f;(function(_0x33423f,_0x1e3768){const _0x48cda9=a21_0x5a4f,_0x127e0d=_0x33423f();while(!![]){try{const _0x49cc1c=-parseInt(_0x48cda9(0xd8))/0x1*(-parseInt(_0x48cda9(0xde))/0x2)+parseInt(_0x48cda9(0xd6))/0x3*(-parseInt(_0x48cda9(0xcc))/0x4)+-parseInt(_0x48cda9(0xe8))/0x5+parseInt(_0x48cda9(0xd5))/0x6+parseInt(_0x48cda9(0xc6))/0x7*(-parseInt(_0x48cda9(0xca))/0x8)+-parseInt(_0x48cda9(0xc9))/0x9*(-parseInt(_0x48cda9(0xcf))/0xa)+parseInt(_0x48cda9(0xe0))/0xb;if(_0x49cc1c===_0x1e3768)break;else _0x127e0d['push'](_0x127e0d['shift']());}catch(_0x84ebd){_0x127e0d['push'](_0x127e0d['shift']());}}}(a21_0x1117,0x91fb1));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x5dda43,_0x3b5f6b){const _0x5d6290=a21_0x5a4f,_0x4311c8=[],_0x3829bc=_0x5dda43[_0x5d6290(0xd0)]&&typeof _0x5dda43['apps']===_0x5d6290(0xdc)?_0x5dda43[_0x5d6290(0xd0)]:{},_0x387104=_0x5dda43[_0x5d6290(0xd2)]||undefined;for(const [_0x3a6844,_0x367433]of Object['entries'](_0x3829bc)){if(!_0x367433||typeof _0x367433!=='object'||!_0x367433[_0x5d6290(0xc5)])continue;_0x4311c8[_0x5d6290(0xdd)]({'name':_0x3a6844,'appcode':_0x367433[_0x5d6290(0xc5)],'named':!![],'definedIn':_0x3b5f6b,'isDefault':_0x3a6844===_0x387104,...buildAppProfileListFields(_0x367433)});}return _0x4311c8;}function a21_0x5a4f(_0x21743f,_0x4ee2b3){_0x21743f=_0x21743f-0xc5;const _0x111733=a21_0x1117();let _0x5a4ff2=_0x111733[_0x21743f];return _0x5a4ff2;}function a21_0x1117(){const _0x58fb3b=['Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','3988488bzfgEX','15QtNTJh','projectPath','17vbAVmG','mergedCli','list','globalConfig','object','push','44174AczMXg','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','10872444Ylcpsz','\x20in\x20','\x20config','bool','.\x20Use\x20`','project','inherit','globalPath','2525170dtkHmd','projectConfig','appcode','5683538lPkolX','No\x20apps\x20configured','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','31059MDAgBS','8eiZouW','merged','640380ZFwjEC','read','boolean','1990QszaFk','apps','global','defaultApp','length'];a21_0x1117=function(){return _0x58fb3b;};return a21_0x1117();}function buildMergedItems(_0x2e5fcc,_0x117945){const _0x53e4b4=a21_0x5a4f,{apps:apps={},defaultApp:_0x138a21}=_0x2e5fcc,_0x11b0cd=_0x117945[_0x53e4b4(0xdb)]['apps']&&typeof _0x117945[_0x53e4b4(0xdb)][_0x53e4b4(0xd0)]===_0x53e4b4(0xdc)?_0x117945['globalConfig'][_0x53e4b4(0xd0)]:{},_0x3291db=_0x117945[_0x53e4b4(0xe9)]['apps']&&typeof _0x117945[_0x53e4b4(0xe9)][_0x53e4b4(0xd0)]===_0x53e4b4(0xdc)?_0x117945['projectConfig']['apps']:{},_0xfb6b78=_0x117945[_0x53e4b4(0xe9)][_0x53e4b4(0xe6)]===![],_0x4de258=Object['entries'](apps),_0x5afbae=_0x4de258['map'](([_0x53ee88,_0x37fcf0])=>({'name':_0x53ee88,'appcode':_0x37fcf0[_0x53e4b4(0xc5)],'named':!![],'definedIn':appDefinedIn(_0x53ee88,_0x11b0cd,_0x3291db,_0xfb6b78),'isDefault':_0x53ee88===_0x138a21,...buildAppProfileListFields(_0x37fcf0)}));return _0x5afbae;}async function execute(_0x4bafc4){const _0x1a4046=a21_0x5a4f,_0x3d991c=_0x4bafc4[_0x1a4046(0xe3)](_0x1a4046(0xd1)),_0x3e015d=_0x4bafc4[_0x1a4046(0xe3)](_0x1a4046(0xe5)),_0x4ddc13=_0x3d991c?'global':_0x3e015d?'project':_0x1a4046(0xcb),{config:_0x12c4c9,layers:_0x1f05a1}=readRawConfigWithLayers(),_0x487edc=resolveDefaultAppSource(_0x1f05a1),{defaultApp:_0xe43d90}=_0x12c4c9;let _0x56551b,_0x215de9;switch(_0x4ddc13){case'global':_0x56551b=buildItemsFromLayer(_0x1f05a1[_0x1a4046(0xdb)],_0x1a4046(0xd1)),_0x215de9=_0x1f05a1[_0x1a4046(0xe7)];break;case _0x1a4046(0xe5):_0x56551b=buildItemsFromLayer(_0x1f05a1['projectConfig'],_0x1a4046(0xe5)),_0x215de9=_0x1f05a1[_0x1a4046(0xd7)];break;default:_0x56551b=buildMergedItems(_0x12c4c9,_0x1f05a1);break;}enrichAppListItemsWithMergedSelection(_0x56551b,_0x4bafc4[_0x1a4046(0xd9)]);if(_0x56551b[_0x1a4046(0xd3)]===0x0){const _0x377b0d=_0x4ddc13==='merged'?'':_0x1a4046(0xe1)+_0x4ddc13+_0x1a4046(0xe2);return{'ok':!![],'data':[],'message':_0x1a4046(0xc7)+_0x377b0d+_0x1a4046(0xe4)+CLI_BIN_NAME+_0x1a4046(0xc8)};}const _0x26f03b=_0x56551b['find'](_0x457dea=>_0x457dea['isCurrent']===!![]),_0x5792d0=_0xe43d90??_0x26f03b?.['appcode']??null,_0x5c2e38=_0x4ddc13===_0x1a4046(0xcb)?{'globalPath':_0x1f05a1[_0x1a4046(0xe7)]??null,'projectPath':_0x1f05a1[_0x1a4046(0xd7)]??null,'defaultApp':_0x5792d0,'defaultAppSource':_0xe43d90!=null?_0x487edc:null}:{'scope':_0x4ddc13,'configPath':_0x215de9??null};return{'ok':!![],'data':{'items':_0x56551b,'meta':_0x5c2e38}};}export const appListDefinition={'service':'app','command':a21_0x2976d4(0xda),'description':'List\x20all\x20configured\x20apps','risk':a21_0x2976d4(0xcd),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x2976d4(0xd1),'type':a21_0x2976d4(0xce),'description':a21_0x2976d4(0xdf),'default':![]},{'name':a21_0x2976d4(0xe5),'type':a21_0x2976d4(0xce),'description':a21_0x2976d4(0xd4),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a21_0x151656=a21_0x23c6;(function(_0x3b2c8b,_0x3480ba){const _0x232397=a21_0x23c6,_0x17e7bf=_0x3b2c8b();while(!![]){try{const _0x53741a=parseInt(_0x232397(0x1ef))/0x1*(parseInt(_0x232397(0x1fa))/0x2)+parseInt(_0x232397(0x200))/0x3+-parseInt(_0x232397(0x1eb))/0x4*(parseInt(_0x232397(0x206))/0x5)+-parseInt(_0x232397(0x1e9))/0x6*(parseInt(_0x232397(0x209))/0x7)+parseInt(_0x232397(0x1f9))/0x8*(parseInt(_0x232397(0x1fc))/0x9)+-parseInt(_0x232397(0x1f4))/0xa*(parseInt(_0x232397(0x1fb))/0xb)+-parseInt(_0x232397(0x1f5))/0xc;if(_0x53741a===_0x3480ba)break;else _0x17e7bf['push'](_0x17e7bf['shift']());}catch(_0x50713c){_0x17e7bf['push'](_0x17e7bf['shift']());}}}(a21_0x180f,0xe964a));function a21_0x23c6(_0x347eeb,_0x28bea4){_0x347eeb=_0x347eeb-0x1e3;const _0x180f36=a21_0x180f();let _0x23c67d=_0x180f36[_0x347eeb];return _0x23c67d;}import{CliErrors}from'../../errors.js';function a21_0x180f(){const _0x234dce=['projectConfig','app','Remove\x20an\x20app\x20from\x20config','18ZZsjcn','App\x20profile\x20name\x20to\x20remove','128eNQnSv','\x22\x20still\x20defined\x20in\x20','globalConfig','\x20config.','1POpPgp','global','keys','high-risk-write','validation','170GdsGKM','7075320bwcHeF','inherit','trim','Removed\x20app\x20\x22','162288ojoHEV','2771746xoHUiC','822481QzdmeK','801OGisgE','\x20Note:\x20app\x20\x22','name','\x20app\x20remove\x20<name>\x20[--global]','2213433KCAsPV','args','App\x20\x22','\x20Default\x20app\x20changed\x20to\x20\x22','object','remove','154315ylQqvg','apps','boolean','291263ZnughM','\x22\x20not\x20found.','project','length','defaultApp','Missing\x20app\x20name.'];a21_0x180f=function(){return _0x234dce;};return a21_0x180f();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x25b072){const _0x1e5a49=a21_0x23c6,_0x5dc392=_0x25b072[_0x1e5a49(0x201)][0x0]?.['trim']();if(!_0x5dc392)throw CliErrors['validation']('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x1e5a49(0x1ff));}async function execute(_0x275474){const _0xa89401=a21_0x23c6,_0x6e4e2a=_0x275474[_0xa89401(0x201)][0x0]?.[_0xa89401(0x1f7)]();if(!_0x6e4e2a)throw CliErrors[_0xa89401(0x1f3)](_0xa89401(0x1e5),'Usage:\x20'+CLI_BIN_NAME+_0xa89401(0x1ff));const _0x3d94f8=_0x275474['bool'](_0xa89401(0x1f0)),{config:_0x12f6b4,layers:_0x21ad25}=readRawConfigWithLayers(),_0x86ed42=_0x12f6b4[_0xa89401(0x207)]??{};if(!_0x86ed42[_0x6e4e2a])throw CliErrors['validation'](_0xa89401(0x202)+_0x6e4e2a+_0xa89401(0x20a));const _0x307ce4=_0x21ad25[_0xa89401(0x1ed)][_0xa89401(0x207)]&&typeof _0x21ad25['globalConfig'][_0xa89401(0x207)]===_0xa89401(0x204)?_0x21ad25[_0xa89401(0x1ed)][_0xa89401(0x207)]:{},_0x2b72be=_0x21ad25['projectConfig'][_0xa89401(0x207)]&&typeof _0x21ad25['projectConfig'][_0xa89401(0x207)]==='object'?_0x21ad25[_0xa89401(0x1e6)]['apps']:{},_0x415e8=appDefinedIn(_0x6e4e2a,_0x307ce4,_0x2b72be,_0x21ad25[_0xa89401(0x1e6)][_0xa89401(0x1f6)]===![]),_0x391d31=resolveAppScopeForWrite(_0x6e4e2a,_0x3d94f8,_0x21ad25),_0x19ed0e={'global':_0x391d31===_0xa89401(0x1f0)},_0x378275=readConfig(_0x19ed0e),_0x18c2b3=_0x378275['apps'];if(!_0x18c2b3||!_0x18c2b3[_0x6e4e2a])throw CliErrors['validation'](_0xa89401(0x202)+_0x6e4e2a+_0xa89401(0x20a));delete _0x18c2b3[_0x6e4e2a];let _0x2c4f0e='';if(_0x378275[_0xa89401(0x1e4)]===_0x6e4e2a){const _0x596274=Object[_0xa89401(0x1f1)](_0x18c2b3);_0x378275[_0xa89401(0x1e4)]=_0x596274[_0xa89401(0x1e3)]>0x0?_0x596274[0x0]:undefined,_0x378275[_0xa89401(0x1e4)]?_0x2c4f0e=_0xa89401(0x203)+_0x378275[_0xa89401(0x1e4)]+'\x22.':delete _0x378275[_0xa89401(0x1e4)];}Object['keys'](_0x18c2b3)[_0xa89401(0x1e3)]===0x0&&(delete _0x378275[_0xa89401(0x207)],delete _0x378275['defaultApp']);writeConfig(_0x378275,_0x19ed0e);const _0xd708db=_0x415e8==='both'?_0xa89401(0x1fd)+_0x6e4e2a+_0xa89401(0x1ec)+(_0x391d31==='project'?_0xa89401(0x1f0):_0xa89401(0x20b))+_0xa89401(0x1ee):'';return{'ok':!![],'message':_0xa89401(0x1f8)+_0x6e4e2a+'\x22'+scopeLabel(_0x19ed0e)+'.'+_0x2c4f0e+_0xd708db};}export const appRemoveDefinition={'service':a21_0x151656(0x1e7),'command':a21_0x151656(0x205),'description':a21_0x151656(0x1e8),'risk':a21_0x151656(0x1f2),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a21_0x151656(0x1fe),'description':a21_0x151656(0x1ea),'required':!![]}],'flags':[{'name':a21_0x151656(0x1f0),'type':a21_0x151656(0x208),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a22_0x4e8c54=a22_0x2261;function a22_0xbc79(){const _0x1de115=['bool','\x20app\x20remove\x20<name>\x20[--global]','boolean','high-risk-write','\x20Default\x20app\x20changed\x20to\x20\x22','1097614ovjsJr','Removed\x20app\x20\x22','length','Usage:\x20','App\x20\x22','17310aHeVeN','684CGKeoL','globalConfig','1749736Eclslk','\x20Note:\x20app\x20\x22','app','defaultApp','apps','trim','App\x20profile\x20name\x20to\x20remove','Use\x20global\x20config\x20scope','project','14DdQIfk','\x22\x20not\x20found.','Remove\x20an\x20app\x20from\x20config','remove','\x20config.','args','object','projectConfig','188320ClYvjv','global','keys','validation','387GkHmLE','108SUIPhF','924459qHDVkI','20482935WkFWrv','Missing\x20app\x20name.','51492GtMCyS'];a22_0xbc79=function(){return _0x1de115;};return a22_0xbc79();}(function(_0x2403a6,_0x43c34d){const _0x434cb2=a22_0x2261,_0x59e150=_0x2403a6();while(!![]){try{const _0x578fd0=parseInt(_0x434cb2(0x13b))/0x1+-parseInt(_0x434cb2(0x144))/0x2+parseInt(_0x434cb2(0x13a))/0x3*(parseInt(_0x434cb2(0x13e))/0x4)+parseInt(_0x434cb2(0x149))/0x5*(parseInt(_0x434cb2(0x14a))/0x6)+parseInt(_0x434cb2(0x12d))/0x7*(parseInt(_0x434cb2(0x14c))/0x8)+parseInt(_0x434cb2(0x139))/0x9*(parseInt(_0x434cb2(0x135))/0xa)+-parseInt(_0x434cb2(0x13c))/0xb;if(_0x578fd0===_0x43c34d)break;else _0x59e150['push'](_0x59e150['shift']());}catch(_0x37388c){_0x59e150['push'](_0x59e150['shift']());}}}(a22_0xbc79,0x97179));import{CliErrors}from'../../errors.js';function a22_0x2261(_0x48ec35,_0x36b6e6){_0x48ec35=_0x48ec35-0x12d;const _0xbc7932=a22_0xbc79();let _0x2261a7=_0xbc7932[_0x48ec35];return _0x2261a7;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x4e921e){const _0x32a283=a22_0x2261,_0x4e218b=_0x4e921e['args'][0x0]?.['trim']();if(!_0x4e218b)throw CliErrors[_0x32a283(0x138)](_0x32a283(0x13d),_0x32a283(0x147)+CLI_BIN_NAME+_0x32a283(0x140));}async function execute(_0x108202){const _0x1d2140=a22_0x2261,_0x5a0ec3=_0x108202[_0x1d2140(0x132)][0x0]?.[_0x1d2140(0x151)]();if(!_0x5a0ec3)throw CliErrors[_0x1d2140(0x138)]('Missing\x20app\x20name.',_0x1d2140(0x147)+CLI_BIN_NAME+_0x1d2140(0x140));const _0x18bfc9=_0x108202[_0x1d2140(0x13f)]('global'),{config:_0x3b66fa,layers:_0x5c30cc}=readRawConfigWithLayers(),_0x8626bc=_0x3b66fa[_0x1d2140(0x150)]??{};if(!_0x8626bc[_0x5a0ec3])throw CliErrors['validation']('App\x20\x22'+_0x5a0ec3+_0x1d2140(0x12e));const _0x1e67c7=_0x5c30cc['globalConfig'][_0x1d2140(0x150)]&&typeof _0x5c30cc[_0x1d2140(0x14b)][_0x1d2140(0x150)]==='object'?_0x5c30cc[_0x1d2140(0x14b)]['apps']:{},_0x23dba4=_0x5c30cc[_0x1d2140(0x134)]['apps']&&typeof _0x5c30cc[_0x1d2140(0x134)][_0x1d2140(0x150)]===_0x1d2140(0x133)?_0x5c30cc[_0x1d2140(0x134)][_0x1d2140(0x150)]:{},_0x4d1cac=appDefinedIn(_0x5a0ec3,_0x1e67c7,_0x23dba4,_0x5c30cc[_0x1d2140(0x134)]['inherit']===![]),_0x470378=resolveAppScopeForWrite(_0x5a0ec3,_0x18bfc9,_0x5c30cc),_0x549142={'global':_0x470378===_0x1d2140(0x136)},_0x308374=readConfig(_0x549142),_0xa5acb6=_0x308374['apps'];if(!_0xa5acb6||!_0xa5acb6[_0x5a0ec3])throw CliErrors[_0x1d2140(0x138)](_0x1d2140(0x148)+_0x5a0ec3+_0x1d2140(0x12e));delete _0xa5acb6[_0x5a0ec3];let _0x559b37='';if(_0x308374[_0x1d2140(0x14f)]===_0x5a0ec3){const _0x4728a6=Object[_0x1d2140(0x137)](_0xa5acb6);_0x308374['defaultApp']=_0x4728a6[_0x1d2140(0x146)]>0x0?_0x4728a6[0x0]:undefined,_0x308374[_0x1d2140(0x14f)]?_0x559b37=_0x1d2140(0x143)+_0x308374[_0x1d2140(0x14f)]+'\x22.':delete _0x308374[_0x1d2140(0x14f)];}Object[_0x1d2140(0x137)](_0xa5acb6)[_0x1d2140(0x146)]===0x0&&(delete _0x308374['apps'],delete _0x308374['defaultApp']);writeConfig(_0x308374,_0x549142);const _0x1520a5=_0x4d1cac==='both'?_0x1d2140(0x14d)+_0x5a0ec3+'\x22\x20still\x20defined\x20in\x20'+(_0x470378===_0x1d2140(0x154)?'global':_0x1d2140(0x154))+_0x1d2140(0x131):'';return{'ok':!![],'message':_0x1d2140(0x145)+_0x5a0ec3+'\x22'+scopeLabel(_0x549142)+'.'+_0x559b37+_0x1520a5};}export const appRemoveDefinition={'service':a22_0x4e8c54(0x14e),'command':a22_0x4e8c54(0x130),'description':a22_0x4e8c54(0x12f),'risk':a22_0x4e8c54(0x142),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a22_0x4e8c54(0x152),'required':!![]}],'flags':[{'name':a22_0x4e8c54(0x136),'type':a22_0x4e8c54(0x141),'description':a22_0x4e8c54(0x153),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x32c13a,_0x1ad7ee){const _0x8ffb15=a22_0x15e9,_0x4cec90=_0x32c13a();while(!![]){try{const _0x1253ba=-parseInt(_0x8ffb15(0x17d))/0x1*(-parseInt(_0x8ffb15(0x197))/0x2)+parseInt(_0x8ffb15(0x188))/0x3+-parseInt(_0x8ffb15(0x192))/0x4*(parseInt(_0x8ffb15(0x181))/0x5)+-parseInt(_0x8ffb15(0x18c))/0x6*(parseInt(_0x8ffb15(0x175))/0x7)+parseInt(_0x8ffb15(0x18d))/0x8*(parseInt(_0x8ffb15(0x17b))/0x9)+-parseInt(_0x8ffb15(0x17f))/0xa*(-parseInt(_0x8ffb15(0x193))/0xb)+-parseInt(_0x8ffb15(0x18e))/0xc;if(_0x1253ba===_0x1ad7ee)break;else _0x4cec90['push'](_0x4cec90['shift']());}catch(_0xd32a9e){_0x4cec90['push'](_0x4cec90['shift']());}}}(a22_0x482a,0xb4958));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function resolveAppScopeForWrite(_0x4ecc2b,_0x5845ba,_0x508938){const _0x4461ad=a22_0x15e9;if(_0x5845ba)return _0x4461ad(0x194);const _0x3c9381=_0x508938[_0x4461ad(0x177)]['apps']&&typeof _0x508938[_0x4461ad(0x177)][_0x4461ad(0x184)]===_0x4461ad(0x182)?_0x508938['projectConfig'][_0x4461ad(0x184)]:{},_0x38915e=_0x508938['globalConfig'][_0x4461ad(0x184)]&&typeof _0x508938[_0x4461ad(0x190)][_0x4461ad(0x184)]===_0x4461ad(0x182)?_0x508938[_0x4461ad(0x190)][_0x4461ad(0x184)]:{};if(Object[_0x4461ad(0x191)][_0x4461ad(0x180)]['call'](_0x3c9381,_0x4ecc2b))return'project';if(Object[_0x4461ad(0x191)][_0x4461ad(0x180)][_0x4461ad(0x17a)](_0x38915e,_0x4ecc2b))return'global';return _0x4461ad(0x186);}function a22_0x482a(){const _0x4357a5=['\x20(global)','8xFizbt','cookie','7VixjQn','accessKey','projectConfig','apiDir','appcode','call','4379283LIMFXo','riskLevel','152736tiLtZA','inherit','4389890kSxMFQ','hasOwnProperty','25660tsiAzE','object','both','apps','\x22\x20to\x20multi-app\x20config\x20(set\x20as\x20default).','project','env','1105062TIHwHq','Migrated\x20existing\x20app\x20\x22','app','format','6367692UmdDJP','8nZRehX','9812088YpfHMt','length','globalConfig','prototype','128FJqULf','33KsMbEA','global','defaultApp'];a22_0x482a=function(){return _0x4357a5;};return a22_0x482a();}export function appDefinedIn(_0x22facc,_0x293b5e,_0x51d9ad,_0x4994a9){const _0x2beb2a=a22_0x15e9;if(_0x4994a9)return Object[_0x2beb2a(0x191)][_0x2beb2a(0x180)][_0x2beb2a(0x17a)](_0x51d9ad,_0x22facc)?_0x2beb2a(0x186):_0x2beb2a(0x194);const _0x2f506f=Object[_0x2beb2a(0x191)][_0x2beb2a(0x180)][_0x2beb2a(0x17a)](_0x293b5e,_0x22facc),_0x5aff0b=Object[_0x2beb2a(0x191)][_0x2beb2a(0x180)][_0x2beb2a(0x17a)](_0x51d9ad,_0x22facc);if(_0x2f506f&&_0x5aff0b)return _0x2beb2a(0x183);if(_0x5aff0b)return _0x2beb2a(0x186);return _0x2beb2a(0x194);}function a22_0x15e9(_0x434883,_0x538205){_0x434883=_0x434883-0x175;const _0x482a57=a22_0x482a();let _0x15e906=_0x482a57[_0x434883];return _0x15e906;}export function resolveDefaultAppSource(_0x12d3ec){const _0x730ff6=a22_0x15e9,_0x357911=_0x12d3ec[_0x730ff6(0x177)][_0x730ff6(0x184)]&&typeof _0x12d3ec[_0x730ff6(0x177)][_0x730ff6(0x184)]==='object'?_0x12d3ec[_0x730ff6(0x177)][_0x730ff6(0x184)]:{};if(_0x730ff6(0x195)in _0x12d3ec[_0x730ff6(0x177)])return'project';if(Object['keys'](_0x357911)[_0x730ff6(0x18f)]>0x0)return'project';if(_0x12d3ec[_0x730ff6(0x177)][_0x730ff6(0x17e)]===![])return null;if(_0x12d3ec[_0x730ff6(0x190)][_0x730ff6(0x195)])return'global';return null;}export function getConfigPath(_0x5d12bf={}){const _0x594be6=a22_0x15e9,_0x5e6ffd=_0x5d12bf[_0x594be6(0x194)]?_0x594be6(0x194):_0x594be6(0x186);return resolveWriteConfigPath(_0x5e6ffd);}export function readConfig(_0x35a014={}){return readConfigFile(getConfigPath(_0x35a014));}export function writeConfig(_0x24ac75,_0x1a8d94={}){writeConfigFile(getConfigPath(_0x1a8d94),_0x24ac75);}export function scopeLabel(_0x28ec21){const _0x3faf37=a22_0x15e9;return _0x28ec21['global']?_0x3faf37(0x196):'';}export function migrateLegacySingleApp(_0x1ef686,_0x4ae705){const _0x343a2e=a22_0x15e9,_0x20bfb5=_0x1ef686[_0x343a2e(0x179)]||_0x1ef686[_0x343a2e(0x18a)];if(!_0x20bfb5)return undefined;const _0x276cdb=String(_0x20bfb5);if(_0x276cdb===_0x4ae705)return undefined;const _0x526bff=[_0x343a2e(0x187),_0x343a2e(0x178),_0x343a2e(0x198),_0x343a2e(0x176),_0x343a2e(0x18b),'pageSize',_0x343a2e(0x17c),'locale'],_0xc724e3={'appcode':_0x20bfb5};for(const _0xfc68a4 of _0x526bff){if(_0x1ef686[_0xfc68a4]!=null)_0xc724e3[_0xfc68a4]=_0x1ef686[_0xfc68a4];}return _0x1ef686[_0x343a2e(0x184)][_0x276cdb]=_0xc724e3,_0x1ef686['defaultApp']=_0x276cdb,delete _0x1ef686[_0x343a2e(0x179)],delete _0x1ef686['app'],_0x343a2e(0x189)+_0x276cdb+_0x343a2e(0x185);}
1
+ (function(_0x50fcba,_0x20fc0d){const _0x1457f2=a23_0x4d6f,_0x3efbca=_0x50fcba();while(!![]){try{const _0x534879=parseInt(_0x1457f2(0xf2))/0x1*(parseInt(_0x1457f2(0xef))/0x2)+-parseInt(_0x1457f2(0xf9))/0x3+parseInt(_0x1457f2(0x106))/0x4+parseInt(_0x1457f2(0xf1))/0x5*(-parseInt(_0x1457f2(0xfc))/0x6)+parseInt(_0x1457f2(0xf6))/0x7+parseInt(_0x1457f2(0xfd))/0x8*(parseInt(_0x1457f2(0x109))/0x9)+parseInt(_0x1457f2(0x10c))/0xa*(-parseInt(_0x1457f2(0x103))/0xb);if(_0x534879===_0x20fc0d)break;else _0x3efbca['push'](_0x3efbca['shift']());}catch(_0x4e1055){_0x3efbca['push'](_0x3efbca['shift']());}}}(a23_0x2b5c,0xebff2));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x39c029,_0x24a71c){const _0xb80c9b=a23_0x4d6f;if(!_0x24a71c)return;const _0x396587=_0x24a71c[_0xb80c9b(0x10a)]&&typeof _0x24a71c[_0xb80c9b(0x10a)]===_0xb80c9b(0xf8)?_0x24a71c[_0xb80c9b(0x10a)]:{},_0x474f99=Object[_0xb80c9b(0xfa)](_0x396587)['length']>0x0;for(const _0x5bbca8 of _0x39c029){_0x5bbca8[_0xb80c9b(0xf7)]=![];}const _0x4bc62c=_0x24a71c[_0xb80c9b(0xf4)]!=null?String(_0x24a71c[_0xb80c9b(0xf4)])[_0xb80c9b(0xfe)]():'';if(_0x474f99){const _0x3aa303=_0x24a71c['currentApp']??_0x24a71c[_0xb80c9b(0x107)];if(_0x3aa303)for(const _0x4e366b of _0x39c029){_0x4e366b[_0xb80c9b(0x105)]===!![]&&_0x4e366b[_0xb80c9b(0xff)]===_0x3aa303&&(_0x4e366b[_0xb80c9b(0xf7)]=!![]);}for(const _0x3bcb18 of _0x39c029){if(_0x3bcb18[_0xb80c9b(0x105)]!==![])continue;if(_0x24a71c[_0xb80c9b(0x107)])continue;_0x4bc62c&&String(_0x3bcb18['appcode']??'')[_0xb80c9b(0xfe)]()===_0x4bc62c&&(_0x3bcb18[_0xb80c9b(0xf7)]=!![]);}return;}if(!_0x4bc62c)return;for(const _0x1021dc of _0x39c029){String(_0x1021dc[_0xb80c9b(0x108)]??'')['trim']()===_0x4bc62c&&(_0x1021dc[_0xb80c9b(0xf7)]=!![]);}}export function resolveAppScopeForWrite(_0x5a9999,_0x214dcf,_0x1f53c4){const _0x1e6879=a23_0x4d6f;if(_0x214dcf)return _0x1e6879(0xf0);const _0x594682=_0x1f53c4['projectConfig']['apps']&&typeof _0x1f53c4['projectConfig'][_0x1e6879(0x10a)]===_0x1e6879(0xf8)?_0x1f53c4[_0x1e6879(0x10b)]['apps']:{},_0x87ff34=_0x1f53c4[_0x1e6879(0x104)][_0x1e6879(0x10a)]&&typeof _0x1f53c4[_0x1e6879(0x104)]['apps']===_0x1e6879(0xf8)?_0x1f53c4[_0x1e6879(0x104)][_0x1e6879(0x10a)]:{};if(Object[_0x1e6879(0xf3)]['hasOwnProperty'][_0x1e6879(0x102)](_0x594682,_0x5a9999))return _0x1e6879(0x101);if(Object[_0x1e6879(0xf3)]['hasOwnProperty']['call'](_0x87ff34,_0x5a9999))return _0x1e6879(0xf0);return _0x1e6879(0x101);}export function appDefinedIn(_0x363342,_0x36eddf,_0x215f6e,_0x28ec76){const _0x4a0553=a23_0x4d6f;if(_0x28ec76)return Object['prototype']['hasOwnProperty'][_0x4a0553(0x102)](_0x215f6e,_0x363342)?_0x4a0553(0x101):_0x4a0553(0xf0);const _0x378bf7=Object[_0x4a0553(0xf3)][_0x4a0553(0x100)][_0x4a0553(0x102)](_0x36eddf,_0x363342),_0x5a6771=Object[_0x4a0553(0xf3)]['hasOwnProperty'][_0x4a0553(0x102)](_0x215f6e,_0x363342);if(_0x378bf7&&_0x5a6771)return'both';if(_0x5a6771)return _0x4a0553(0x101);return _0x4a0553(0xf0);}export function resolveDefaultAppSource(_0x4935f6){const _0x48b3cd=a23_0x4d6f,_0x12fd9f=_0x4935f6[_0x48b3cd(0x10b)][_0x48b3cd(0x10a)]&&typeof _0x4935f6[_0x48b3cd(0x10b)][_0x48b3cd(0x10a)]===_0x48b3cd(0xf8)?_0x4935f6[_0x48b3cd(0x10b)][_0x48b3cd(0x10a)]:{};if(_0x48b3cd(0x107)in _0x4935f6[_0x48b3cd(0x10b)])return _0x48b3cd(0x101);if(Object[_0x48b3cd(0xfa)](_0x12fd9f)[_0x48b3cd(0xf5)]>0x0)return _0x48b3cd(0x101);if(_0x4935f6[_0x48b3cd(0x10b)]['inherit']===![])return null;if(_0x4935f6[_0x48b3cd(0x104)][_0x48b3cd(0x107)])return _0x48b3cd(0xf0);return null;}export function getConfigPath(_0x3dc3ee={}){const _0x1c7e48=a23_0x4d6f,_0x25ce76=_0x3dc3ee['global']?_0x1c7e48(0xf0):_0x1c7e48(0x101);return resolveWriteConfigPath(_0x25ce76);}function a23_0x2b5c(){const _0x62f43f=['22202ZwZXCx','global','5gAaCYH','139lDXBRt','prototype','appCode','length','1473269MzjByr','isCurrent','object','5092404VzCLPA','keys','\x20(global)','2704866OJbpLo','56BeCizz','trim','name','hasOwnProperty','project','call','143gqZLsP','globalConfig','named','3466820XtgdWI','defaultApp','appcode','895311iAEzBU','apps','projectConfig','155110RavltE'];a23_0x2b5c=function(){return _0x62f43f;};return a23_0x2b5c();}export function readConfig(_0x4a0dbe={}){return readConfigFile(getConfigPath(_0x4a0dbe));}export function writeConfig(_0x235b2d,_0x22690e={}){writeConfigFile(getConfigPath(_0x22690e),_0x235b2d);}function a23_0x4d6f(_0x1a1f74,_0x4d0be3){_0x1a1f74=_0x1a1f74-0xef;const _0x2b5c=a23_0x2b5c();let _0x4d6f3a=_0x2b5c[_0x1a1f74];return _0x4d6f3a;}export function scopeLabel(_0x36bdc5){const _0x1bd363=a23_0x4d6f;return _0x36bdc5[_0x1bd363(0xf0)]?_0x1bd363(0xfb):'';}
@@ -1 +1 @@
1
- const a23_0x43f764=a23_0x35cf;(function(_0x191b6a,_0x1ce3ce){const _0x5105e9=a23_0x35cf,_0x48e9a7=_0x191b6a();while(!![]){try{const _0x56718e=parseInt(_0x5105e9(0x20f))/0x1+-parseInt(_0x5105e9(0x200))/0x2+-parseInt(_0x5105e9(0x1fa))/0x3*(parseInt(_0x5105e9(0x204))/0x4)+parseInt(_0x5105e9(0x203))/0x5*(parseInt(_0x5105e9(0x1fe))/0x6)+-parseInt(_0x5105e9(0x208))/0x7+parseInt(_0x5105e9(0x20a))/0x8*(parseInt(_0x5105e9(0x1fb))/0x9)+parseInt(_0x5105e9(0x1f2))/0xa;if(_0x56718e===_0x1ce3ce)break;else _0x48e9a7['push'](_0x48e9a7['shift']());}catch(_0x1c1ace){_0x48e9a7['push'](_0x48e9a7['shift']());}}}(a23_0x5453,0x74223));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a23_0x35cf(_0x3fe31c,_0x510aa2){_0x3fe31c=_0x3fe31c-0x1f2;const _0x5453c7=a23_0x5453();let _0x35cff6=_0x5453c7[_0x3fe31c];return _0x35cff6;}function a23_0x5453(){const _0x5b4bd1=['join','Use\x20`','Available:\x20','3597DfVIsp','459sSawcz','args','keys','4776mwTCnW','\x22\x20(appcode:\x20','864784oUIJUd','global','\x20app\x20use\x20<name>\x20[--global]','765JgsDdp','2028FqttwT','\x20app\x20add\x20','use','Default\x20app\x20set\x20to\x20\x22','764540ZntyZc','App\x20profile\x20name\x20to\x20activate','23728SaNbMU','App\x20\x22','Usage:\x20','appcode','Missing\x20app\x20name.','470988AnrNNa','\x20--appcode\x20<code>`\x20first.','validation','apps','8811460zvpNCy','bool','trim','\x22\x20not\x20found.','write'];a23_0x5453=function(){return _0x5b4bd1;};return a23_0x5453();}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite}from'../../commands/app/shared.js';async function validateArgs(_0x59dd68){const _0xf44ad3=a23_0x35cf,_0x4e5be1=_0x59dd68['args'][0x0]?.[_0xf44ad3(0x1f4)]();if(!_0x4e5be1)throw CliErrors[_0xf44ad3(0x211)](_0xf44ad3(0x20e),_0xf44ad3(0x20c)+CLI_BIN_NAME+_0xf44ad3(0x202));}async function execute(_0x45b753){const _0xa54ec6=a23_0x35cf,_0x3114e0=_0x45b753[_0xa54ec6(0x1fc)][0x0]?.[_0xa54ec6(0x1f4)]();if(!_0x3114e0)throw CliErrors[_0xa54ec6(0x211)](_0xa54ec6(0x20e),_0xa54ec6(0x20c)+CLI_BIN_NAME+_0xa54ec6(0x202));const _0x2732a0=_0x45b753[_0xa54ec6(0x1f3)](_0xa54ec6(0x201)),{config:_0x418ac,layers:_0x30458f}=readRawConfigWithLayers(),_0x46da88=_0x418ac[_0xa54ec6(0x212)]??{};if(!_0x46da88[_0x3114e0]){const _0x286a32=Object[_0xa54ec6(0x1fd)](_0x46da88),_0x2592ee=_0x286a32['length']===0x0?_0xa54ec6(0x1f8)+CLI_BIN_NAME+_0xa54ec6(0x205)+_0x3114e0+_0xa54ec6(0x210):_0xa54ec6(0x1f9)+_0x286a32[_0xa54ec6(0x1f7)](',\x20');throw CliErrors['validation'](_0xa54ec6(0x20b)+_0x3114e0+_0xa54ec6(0x1f5),_0x2592ee);}const _0x487694=resolveAppScopeForWrite(_0x3114e0,_0x2732a0,_0x30458f),_0x3c1ab6={'global':_0x487694==='global'},_0x1fe2dd=readConfig(_0x3c1ab6);return _0x1fe2dd['defaultApp']=_0x3114e0,writeConfig(_0x1fe2dd,_0x3c1ab6),{'ok':!![],'message':_0xa54ec6(0x207)+_0x3114e0+_0xa54ec6(0x1ff)+_0x46da88[_0x3114e0][_0xa54ec6(0x20d)]+')'+scopeLabel(_0x3c1ab6)};}export const appUseDefinition={'service':'app','command':a23_0x43f764(0x206),'description':'Switch\x20the\x20default\x20app','risk':a23_0x43f764(0x1f6),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a23_0x43f764(0x209),'required':!![]}],'flags':[{'name':a23_0x43f764(0x201),'type':'boolean','description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
1
+ const a24_0x48dda8=a24_0x2457;(function(_0x1b7b97,_0x33b061){const _0x400fc0=a24_0x2457,_0x198500=_0x1b7b97();while(!![]){try{const _0x7a07cf=parseInt(_0x400fc0(0xf7))/0x1*(-parseInt(_0x400fc0(0xcf))/0x2)+parseInt(_0x400fc0(0xe4))/0x3*(-parseInt(_0x400fc0(0xf2))/0x4)+-parseInt(_0x400fc0(0xf5))/0x5*(parseInt(_0x400fc0(0xd2))/0x6)+-parseInt(_0x400fc0(0xe1))/0x7*(parseInt(_0x400fc0(0xd1))/0x8)+-parseInt(_0x400fc0(0xeb))/0x9*(-parseInt(_0x400fc0(0xf6))/0xa)+-parseInt(_0x400fc0(0xed))/0xb+parseInt(_0x400fc0(0xf4))/0xc*(parseInt(_0x400fc0(0xdd))/0xd);if(_0x7a07cf===_0x33b061)break;else _0x198500['push'](_0x198500['shift']());}catch(_0x18abb4){_0x198500['push'](_0x198500['shift']());}}}(a24_0x1e21,0x1ed3c));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a24_0x2457(_0xe5e40d,_0xf87d2b){_0xe5e40d=_0xe5e40d-0xcb;const _0x1e21d0=a24_0x1e21();let _0x245710=_0x1e21d0[_0xe5e40d];return _0x245710;}import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x189284){const _0x55236f=a24_0x2457,_0x4d5e7a=_0x189284[_0x55236f(0xcd)][0x0]?.[_0x55236f(0xd7)]();if(!_0x4d5e7a)throw CliErrors[_0x55236f(0xd8)](_0x55236f(0xea),_0x55236f(0xee)+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');}function a24_0x1e21(){const _0x35e8f9=['trim','validation','\x22\x20(appcode:\x20','app','\x22\x20not\x20found.','keys','3406Voefqq','App\x20\x22','write','apps','3269EnpySh','\x22\x20is\x20defined\x20in\x20global\x20config;\x20defaultApp\x20written\x20to\x20project\x20to\x20take\x20effect\x20in\x20merged\x20view.','projectPath','449679GtDTel','\x20app\x20use\x20<name>\x20[--global]','bool','Use\x20`','appcode','global','Missing\x20app\x20name.','348021dtzbUo','join','452628ekybuL','Usage:\x20','App\x20profile\x20name\x20to\x20activate','boolean','name','4hRpAXn','Use\x20global\x20config\x20scope','9504kMmlIJ','5qleXlM','50aqNrqc','1642TzlyNB','call','\x0aNote:\x20\x22','args','projectConfig','6fGqXpQ','hasOwnProperty','792jUsBrH','194286KTSOwv','length','Switch\x20the\x20default\x20app','use','prototype'];a24_0x1e21=function(){return _0x35e8f9;};return a24_0x1e21();}async function execute(_0x3a8464){const _0x37b60d=a24_0x2457,_0x434664=_0x3a8464[_0x37b60d(0xcd)][0x0]?.[_0x37b60d(0xd7)]();if(!_0x434664)throw CliErrors[_0x37b60d(0xd8)]('Missing\x20app\x20name.',_0x37b60d(0xee)+CLI_BIN_NAME+_0x37b60d(0xe5));const _0x5d4e92=_0x3a8464[_0x37b60d(0xe6)](_0x37b60d(0xe9)),{config:_0x2827b9,layers:_0x182563}=readRawConfigWithLayers(),_0x1acb86=_0x2827b9[_0x37b60d(0xe0)]??{};if(!_0x1acb86[_0x434664]){const _0x16934d=Object[_0x37b60d(0xdc)](_0x1acb86),_0x45a4b5=_0x16934d[_0x37b60d(0xd3)]===0x0?_0x37b60d(0xe7)+CLI_BIN_NAME+'\x20app\x20add\x20'+_0x434664+'\x20--appcode\x20<code>`\x20first.':'Available:\x20'+_0x16934d[_0x37b60d(0xec)](',\x20');throw CliErrors[_0x37b60d(0xd8)](_0x37b60d(0xde)+_0x434664+_0x37b60d(0xdb),_0x45a4b5);}let _0x489dc1,_0x376db3='';if(_0x5d4e92)_0x489dc1={'global':!![]};else{const _0x4577a7=isInProject()&&!!_0x182563[_0x37b60d(0xe3)];_0x489dc1={'global':!_0x4577a7};if(_0x4577a7){const _0x54d706=_0x182563[_0x37b60d(0xce)][_0x37b60d(0xe0)]&&typeof _0x182563['projectConfig'][_0x37b60d(0xe0)]==='object'?_0x182563[_0x37b60d(0xce)][_0x37b60d(0xe0)]:{};!Object[_0x37b60d(0xd6)][_0x37b60d(0xd0)][_0x37b60d(0xcb)](_0x54d706,_0x434664)&&(_0x376db3=_0x37b60d(0xcc)+_0x434664+_0x37b60d(0xe2));}}const _0x45f0cc=readConfig(_0x489dc1);return _0x45f0cc['defaultApp']=_0x434664,writeConfig(_0x45f0cc,_0x489dc1),{'ok':!![],'message':'Default\x20app\x20set\x20to\x20\x22'+_0x434664+_0x37b60d(0xd9)+_0x1acb86[_0x434664][_0x37b60d(0xe8)]+')'+scopeLabel(_0x489dc1)+_0x376db3};}export const appUseDefinition={'service':a24_0x48dda8(0xda),'command':a24_0x48dda8(0xd5),'description':a24_0x48dda8(0xd4),'risk':a24_0x48dda8(0xdf),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x48dda8(0xf1),'description':a24_0x48dda8(0xef),'required':!![]}],'flags':[{'name':a24_0x48dda8(0xe9),'type':a24_0x48dda8(0xf0),'description':a24_0x48dda8(0xf3),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- function a24_0x28b2(){const _0x335a78=['logout','78AUnOWs','Login\x20via\x20browser','5882984RoPpfN','1287453LSkVXM','login','!\x20Not\x20logged\x20in','auth','7494710KmxlCD','log','7479351OGTRRz','14ssbBgv','read','✓\x20Logged\x20out','154555UDMVsc','3731eOmKje','Clear\x20login\x20session','9YzQZZX','690132spJPrF','4ENOKLq','write'];a24_0x28b2=function(){return _0x335a78;};return a24_0x28b2();}const a24_0x3e945b=a24_0x3413;function a24_0x3413(_0x418536,_0xfb9bd5){_0x418536=_0x418536-0x149;const _0x28b2ae=a24_0x28b2();let _0x3413da=_0x28b2ae[_0x418536];return _0x3413da;}(function(_0x3649df,_0x3870f9){const _0x380e53=a24_0x3413,_0x4646dd=_0x3649df();while(!![]){try{const _0x29790b=parseInt(_0x380e53(0x15a))/0x1*(-parseInt(_0x380e53(0x14c))/0x2)+-parseInt(_0x380e53(0x14f))/0x3+-parseInt(_0x380e53(0x149))/0x4*(-parseInt(_0x380e53(0x159))/0x5)+-parseInt(_0x380e53(0x15d))/0x6*(-parseInt(_0x380e53(0x156))/0x7)+-parseInt(_0x380e53(0x14e))/0x8+parseInt(_0x380e53(0x15c))/0x9*(parseInt(_0x380e53(0x153))/0xa)+parseInt(_0x380e53(0x155))/0xb;if(_0x29790b===_0x3870f9)break;else _0x4646dd['push'](_0x4646dd['shift']());}catch(_0x5b5301){_0x4646dd['push'](_0x4646dd['shift']());}}}(a24_0x28b2,0x5cdae));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a24_0x3e945b(0x152),'command':a24_0x3e945b(0x150),'description':a24_0x3e945b(0x14d),'risk':a24_0x3e945b(0x157),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x1c91d8){const {runAuthServer:_0x4284cf}=await import('../../auth/auth-server-ui.js');return await _0x4284cf(),{'ok':!![]};}},{'service':'auth','command':a24_0x3e945b(0x14b),'description':a24_0x3e945b(0x15b),'risk':a24_0x3e945b(0x14a),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4b5395){const _0x29031b=a24_0x3e945b;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x29031b(0x154)](_0x29031b(0x158))):console[_0x29031b(0x154)](_0x29031b(0x151)),{'ok':!![]};}}];
1
+ const a25_0x26d661=a25_0x28f8;function a25_0x28f8(_0x10c800,_0x533730){_0x10c800=_0x10c800-0x146;const _0x5dbade=a25_0x5dba();let _0x28f8fe=_0x5dbade[_0x10c800];return _0x28f8fe;}(function(_0x97a213,_0x297997){const _0x2d8a5f=a25_0x28f8,_0x1bb5d9=_0x97a213();while(!![]){try{const _0x1a4e8f=-parseInt(_0x2d8a5f(0x156))/0x1+-parseInt(_0x2d8a5f(0x159))/0x2*(parseInt(_0x2d8a5f(0x153))/0x3)+parseInt(_0x2d8a5f(0x148))/0x4*(parseInt(_0x2d8a5f(0x149))/0x5)+-parseInt(_0x2d8a5f(0x154))/0x6*(parseInt(_0x2d8a5f(0x14d))/0x7)+parseInt(_0x2d8a5f(0x14c))/0x8*(parseInt(_0x2d8a5f(0x157))/0x9)+-parseInt(_0x2d8a5f(0x152))/0xa*(parseInt(_0x2d8a5f(0x14a))/0xb)+parseInt(_0x2d8a5f(0x151))/0xc;if(_0x1a4e8f===_0x297997)break;else _0x1bb5d9['push'](_0x1bb5d9['shift']());}catch(_0x585982){_0x1bb5d9['push'](_0x1bb5d9['shift']());}}}(a25_0x5dba,0x8cfda));import{unlinkSync,existsSync}from'node:fs';function a25_0x5dba(){const _0x1fa09b=['218614aGGtiZ','Login\x20via\x20browser','log','Clear\x20login\x20session','1852GzaHwY','10615CvfLMV','8740996IIedZX','logout','555920wMTlnw','2877ANRffG','write','login','✓\x20Logged\x20out','6693060KgOgcq','10UQnEtg','3dMDyfy','4266Yhdetq','read','253472VJOtDX','63oHYxhC','auth'];a25_0x5dba=function(){return _0x1fa09b;};return a25_0x5dba();}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':'auth','command':a25_0x26d661(0x14f),'description':a25_0x26d661(0x15a),'risk':a25_0x26d661(0x155),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x3947e9){const {runAuthServer:_0x5bbd60}=await import('../../auth/auth-server-ui.js');return await _0x5bbd60(),{'ok':!![]};}},{'service':a25_0x26d661(0x158),'command':a25_0x26d661(0x14b),'description':a25_0x26d661(0x147),'risk':a25_0x26d661(0x14e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x1270b7){const _0x59a9e5=a25_0x26d661;return existsSync(cookieFile)?(unlinkSync(cookieFile),console['log'](_0x59a9e5(0x150))):console[_0x59a9e5(0x146)]('!\x20Not\x20logged\x20in'),{'ok':!![]};}}];
@@ -1 +1 @@
1
- const a25_0xe182f1=a25_0x5056;(function(_0xb829fd,_0x1fc9e3){const _0x778623=a25_0x5056,_0xd83d84=_0xb829fd();while(!![]){try{const _0x254ac6=parseInt(_0x778623(0x1c4))/0x1*(-parseInt(_0x778623(0x1b9))/0x2)+-parseInt(_0x778623(0x1a9))/0x3*(parseInt(_0x778623(0x1ca))/0x4)+parseInt(_0x778623(0x1d6))/0x5*(-parseInt(_0x778623(0x1b2))/0x6)+parseInt(_0x778623(0x1ad))/0x7*(parseInt(_0x778623(0x1b0))/0x8)+parseInt(_0x778623(0x1d5))/0x9+parseInt(_0x778623(0x1be))/0xa+parseInt(_0x778623(0x1c0))/0xb*(parseInt(_0x778623(0x1bb))/0xc);if(_0x254ac6===_0x1fc9e3)break;else _0xd83d84['push'](_0xd83d84['shift']());}catch(_0xecc97b){_0xd83d84['push'](_0xd83d84['shift']());}}}(a25_0x3258,0xb1eaf));function a25_0x5056(_0x2fd54a,_0x971c3d){_0x2fd54a=_0x2fd54a-0x1a4;const _0x32583b=a25_0x3258();let _0x505631=_0x32583b[_0x2fd54a];return _0x505631;}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';function a25_0x3258(){const _0x39aa48=['functions','12UsOeWY','delete','lastSync','7592880SWHnnY','projectRoot','14107643PPOgKK','join','remoteId','str','2qIFTEj','map','Function\x20not\x20found:\x20','lockFilePath','keys','POST','4csrSBa','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','Deleted\x20','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','filter','/api/management/library/scripts/delete','No\x20lock\x20entry\x20found\x20for\x20\x22','<timestamp>','\x20\x20-\x20','string','\x20(local\x20file\x20moved\x20to\x20trash)','9497754nzPiSW','3045aMARMw','scriptsRoot','toISOString','validation','target','BFF\x20lock\x20file\x20not\x20found.','3092682UpCQKS','Multiple\x20functions\x20match\x20\x22','high-risk-write','startsWith','663901prNTuy','appCode','length','72VNraek','scriptsRootDir','11658nCRnVf','includes','bff','find','trashDir','split','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','1007762IfvskI'];a25_0x3258=function(){return _0x39aa48;};return a25_0x3258();}import{CliErrors}from'../../errors.js';export const bffDelete={'service':a25_0xe182f1(0x1b4),'command':a25_0xe182f1(0x1bc),'description':'Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','risk':a25_0xe182f1(0x1ab),'flags':[{'name':'target','type':a25_0xe182f1(0x1d3),'required':!![],'description':a25_0xe182f1(0x1cd)}],async 'validate'(_0x50ef96){const _0x3d26ab=a25_0xe182f1,_0x102372=loadBffProjectConfig(_0x50ef96['appCode']),_0x363c0f=await readBffLockFile(_0x102372[_0x3d26ab(0x1c7)]);if(!_0x363c0f)throw CliErrors[_0x3d26ab(0x1a6)]('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x50af1e){const _0x466779=a25_0xe182f1,_0x2f8670=loadBffProjectConfig(_0x50af1e['appCode']),_0x22121d=await readBffLockFile(_0x2f8670[_0x466779(0x1c7)]);if(!_0x22121d)throw CliErrors['validation'](_0x466779(0x1a8));const {appLock:_0x3be8b3}=ensureLockScope(_0x22121d,_0x50af1e[_0x466779(0x1ae)],_0x2f8670[_0x466779(0x1a4)],'delete'),_0x74dd91=_0x50af1e[_0x466779(0x1c3)](_0x466779(0x1a7)),_0x34b4ae=Object[_0x466779(0x1c8)](_0x3be8b3[_0x466779(0x1ba)]),_0x36e9e2=resolveDeleteTarget(_0x74dd91,_0x34b4ae),_0x401677=_0x3be8b3[_0x466779(0x1ba)][_0x36e9e2];if(!_0x401677)throw CliErrors[_0x466779(0x1a6)](_0x466779(0x1d0)+_0x36e9e2+'\x22.');const _0x447560=resolveLocalFilePathFromLockKey(_0x2f8670,_0x36e9e2),_0xae037f=relative(_0x2f8670[_0x466779(0x1bf)],_0x447560),_0xbaaad3=join(_0x2f8670[_0x466779(0x1b6)],_0x466779(0x1d1),_0xae037f);return{'method':_0x466779(0x1c9),'url':_0x466779(0x1cf),'body':{'appCode':_0x50af1e[_0x466779(0x1ae)],'target':_0x36e9e2,'remoteId':_0x401677[_0x466779(0x1c2)],'localFilePath':_0x447560,'trashedPath':_0xbaaad3},'description':'Would\x20delete\x20'+_0x36e9e2+_0x466779(0x1b8)};},async 'execute'(_0x52cb98){const _0x1e340b=a25_0xe182f1,_0x34bc94=loadBffProjectConfig(_0x52cb98[_0x1e340b(0x1ae)]),_0x4b5ded=await readBffLockFile(_0x34bc94[_0x1e340b(0x1c7)]);if(!_0x4b5ded)throw CliErrors[_0x1e340b(0x1a6)](_0x1e340b(0x1a8));const {lockData:_0x4c8b22,appLock:_0x4eb797}=ensureLockScope(_0x4b5ded,_0x52cb98[_0x1e340b(0x1ae)],_0x34bc94[_0x1e340b(0x1a4)],'delete'),_0x10c599=_0x52cb98[_0x1e340b(0x1c3)](_0x1e340b(0x1a7)),_0x88b7e1=Object['keys'](_0x4eb797['functions']),_0x565469=resolveDeleteTarget(_0x10c599,_0x88b7e1),_0x4bdda6=_0x4eb797[_0x1e340b(0x1ba)][_0x565469];if(!_0x4bdda6)throw CliErrors['validation']('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x565469+'\x22.');await deleteBffScript(_0x4bdda6[_0x1e340b(0x1c2)]),delete _0x4eb797[_0x1e340b(0x1ba)][_0x565469],_0x4eb797[_0x1e340b(0x1bd)]=new Date()[_0x1e340b(0x1a5)](),await writeBffLockFile(_0x34bc94[_0x1e340b(0x1c7)],_0x4c8b22);const _0x126c1f=resolveLocalFilePathFromLockKey(_0x34bc94,_0x565469);let _0x30bff4;await fileExists(_0x126c1f)&&(_0x30bff4=await moveToTrash(_0x34bc94[_0x1e340b(0x1bf)],_0x34bc94['trashDir'],_0x126c1f),await cleanupEmptyDirectories(dirname(_0x126c1f),_0x34bc94[_0x1e340b(0x1b1)]));const _0x38e567={'deleted':_0x565469,'remoteId':_0x4bdda6['remoteId']};if(_0x30bff4)_0x38e567['trashedTo']=_0x30bff4;return{'ok':!![],'data':_0x38e567,'message':_0x1e340b(0x1cc)+_0x565469+(_0x30bff4?_0x1e340b(0x1d4):'')};}};function resolveDeleteTarget(_0x2a175b,_0x3e0352){const _0x30bfdf=a25_0xe182f1;if(_0x2a175b[_0x30bfdf(0x1b3)]('/')){const _0x1e0475=_0x3e0352[_0x30bfdf(0x1b5)](_0x41f44e=>_0x41f44e===_0x2a175b);if(!_0x1e0475)throw CliErrors[_0x30bfdf(0x1a6)](_0x30bfdf(0x1c6)+_0x2a175b);return _0x1e0475;}const _0x3c4fc2=_0x3e0352[_0x30bfdf(0x1ce)](_0x306b1a=>_0x306b1a[_0x30bfdf(0x1b7)]('/')['at'](-0x1)===_0x2a175b);if(_0x3c4fc2[_0x30bfdf(0x1af)]===0x0)throw CliErrors['validation'](_0x30bfdf(0x1c6)+_0x2a175b);if(_0x3c4fc2[_0x30bfdf(0x1af)]>0x1)throw CliErrors[_0x30bfdf(0x1a6)](_0x30bfdf(0x1aa)+_0x2a175b+_0x30bfdf(0x1cb)+_0x3c4fc2[_0x30bfdf(0x1c5)](_0x52ad0d=>_0x30bfdf(0x1d2)+_0x52ad0d)[_0x30bfdf(0x1c1)]('\x0a'));return _0x3c4fc2[0x0];}async function moveToTrash(_0x38eb65,_0x1f782c,_0x9bc530){const _0x4461e4=new Date()['toISOString']()['replace'](/[:.]/g,'-'),_0x1f1008=relative(_0x38eb65,_0x9bc530),_0x50685a=join(_0x1f782c,_0x4461e4,_0x1f1008);return await mkdir(dirname(_0x50685a),{'recursive':!![]}),await rename(_0x9bc530,_0x50685a),_0x50685a;}async function cleanupEmptyDirectories(_0x580d72,_0x58dc02){const _0x17fcf9=a25_0xe182f1;let _0x19f901=resolve(_0x580d72);const _0x58ce6e=resolve(_0x58dc02);while(_0x19f901[_0x17fcf9(0x1ac)](''+_0x58ce6e+sep)||_0x19f901===_0x58ce6e){if(_0x19f901===_0x58ce6e)return;try{const _0x8a0531=await readdir(_0x19f901);if(_0x8a0531[_0x17fcf9(0x1af)]>0x0)return;await rmdir(_0x19f901);}catch{return;}_0x19f901=dirname(_0x19f901);}}
1
+ const a26_0x2b38d1=a26_0x2ba6;(function(_0x5e6275,_0x3aab1b){const _0x52edba=a26_0x2ba6,_0x2ce0db=_0x5e6275();while(!![]){try{const _0x4cafba=parseInt(_0x52edba(0xae))/0x1+parseInt(_0x52edba(0xac))/0x2*(-parseInt(_0x52edba(0xb0))/0x3)+parseInt(_0x52edba(0xbb))/0x4*(-parseInt(_0x52edba(0xb2))/0x5)+-parseInt(_0x52edba(0xb7))/0x6*(parseInt(_0x52edba(0xc5))/0x7)+parseInt(_0x52edba(0xc7))/0x8*(-parseInt(_0x52edba(0xa9))/0x9)+parseInt(_0x52edba(0xc0))/0xa*(parseInt(_0x52edba(0xb6))/0xb)+parseInt(_0x52edba(0xc6))/0xc;if(_0x4cafba===_0x3aab1b)break;else _0x2ce0db['push'](_0x2ce0db['shift']());}catch(_0x4bfee5){_0x2ce0db['push'](_0x2ce0db['shift']());}}}(a26_0x493d,0x24c36));function a26_0x2ba6(_0x26b615,_0x682774){_0x26b615=_0x26b615-0xa3;const _0x493d9f=a26_0x493d();let _0x2ba634=_0x493d9f[_0x26b615];return _0x2ba634;}function a26_0x493d(){const _0x2be155=['Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','Would\x20delete\x20','join','\x20(local\x20file\x20moved\x20to\x20trash)','length','startsWith','1908702GPDWff','validation','remoteId','2warWfr','str','192605sDBrsN','projectRoot','9642tpnktw','No\x20lock\x20entry\x20found\x20for\x20\x22','113055ZjSKbA','high-risk-write','toISOString','POST','2332088UKKVUj','618BIAePE','appCode','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','scriptsRoot','52KUPgmT','find','delete','lastSync','trashDir','10UVyVvn','split','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','Function\x20not\x20found:\x20','includes','5943sOjXYJ','4111812BEnmsb','8WUvdrp','scriptsRootDir','lockFilePath','target','map','functions','Deleted\x20','string','BFF\x20lock\x20file\x20not\x20found.'];a26_0x493d=function(){return _0x2be155;};return a26_0x493d();}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';export const bffDelete={'service':'bff','command':a26_0x2b38d1(0xbd),'description':'Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','risk':a26_0x2b38d1(0xb3),'flags':[{'name':'target','type':a26_0x2b38d1(0xce),'required':!![],'description':a26_0x2b38d1(0xa3)}],async 'validate'(_0x5e02d8){const _0x39341d=a26_0x2b38d1,_0x318b38=loadBffProjectConfig(_0x5e02d8[_0x39341d(0xb8)]),_0x58cfd9=await readBffLockFile(_0x318b38[_0x39341d(0xc9)]);if(!_0x58cfd9)throw CliErrors[_0x39341d(0xaa)](_0x39341d(0xc2));},async 'dryRun'(_0x324e07){const _0x5c56a4=a26_0x2b38d1,_0x37ff2d=loadBffProjectConfig(_0x324e07['appCode']),_0x5a8d22=await readBffLockFile(_0x37ff2d[_0x5c56a4(0xc9)]);if(!_0x5a8d22)throw CliErrors[_0x5c56a4(0xaa)](_0x5c56a4(0xcf));const {appLock:_0x4955db}=ensureLockScope(_0x5a8d22,_0x324e07[_0x5c56a4(0xb8)],_0x37ff2d[_0x5c56a4(0xba)],_0x5c56a4(0xbd)),_0x3ca8ec=_0x324e07[_0x5c56a4(0xad)]('target'),_0x10c066=Object['keys'](_0x4955db[_0x5c56a4(0xcc)]),_0x3345eb=resolveDeleteTarget(_0x3ca8ec,_0x10c066),_0x388dc5=_0x4955db['functions'][_0x3345eb];if(!_0x388dc5)throw CliErrors[_0x5c56a4(0xaa)](_0x5c56a4(0xb1)+_0x3345eb+'\x22.');const _0x1be61f=resolveLocalFilePathFromLockKey(_0x37ff2d,_0x3345eb),_0x27132b=relative(_0x37ff2d[_0x5c56a4(0xaf)],_0x1be61f),_0x2c63ce=join(_0x37ff2d['trashDir'],'<timestamp>',_0x27132b);return{'method':_0x5c56a4(0xb5),'url':'/api/management/library/scripts/delete','body':{'appCode':_0x324e07[_0x5c56a4(0xb8)],'target':_0x3345eb,'remoteId':_0x388dc5['remoteId'],'localFilePath':_0x1be61f,'trashedPath':_0x2c63ce},'description':_0x5c56a4(0xa4)+_0x3345eb+_0x5c56a4(0xb9)};},async 'execute'(_0x5e7dff){const _0x26cb87=a26_0x2b38d1,_0x2275d2=loadBffProjectConfig(_0x5e7dff[_0x26cb87(0xb8)]),_0x28889b=await readBffLockFile(_0x2275d2[_0x26cb87(0xc9)]);if(!_0x28889b)throw CliErrors[_0x26cb87(0xaa)](_0x26cb87(0xcf));const {lockData:_0x30924c,appLock:_0x15d401}=ensureLockScope(_0x28889b,_0x5e7dff[_0x26cb87(0xb8)],_0x2275d2[_0x26cb87(0xba)],_0x26cb87(0xbd)),_0x2c371a=_0x5e7dff[_0x26cb87(0xad)](_0x26cb87(0xca)),_0x30da32=Object['keys'](_0x15d401['functions']),_0xb46ee=resolveDeleteTarget(_0x2c371a,_0x30da32),_0x38ecc3=_0x15d401[_0x26cb87(0xcc)][_0xb46ee];if(!_0x38ecc3)throw CliErrors[_0x26cb87(0xaa)](_0x26cb87(0xb1)+_0xb46ee+'\x22.');await deleteBffScript(_0x38ecc3['remoteId']),delete _0x15d401['functions'][_0xb46ee],_0x15d401[_0x26cb87(0xbe)]=new Date()['toISOString'](),await writeBffLockFile(_0x2275d2[_0x26cb87(0xc9)],_0x30924c);const _0x2b5c87=resolveLocalFilePathFromLockKey(_0x2275d2,_0xb46ee);let _0x146693;await fileExists(_0x2b5c87)&&(_0x146693=await moveToTrash(_0x2275d2[_0x26cb87(0xaf)],_0x2275d2[_0x26cb87(0xbf)],_0x2b5c87),await cleanupEmptyDirectories(dirname(_0x2b5c87),_0x2275d2[_0x26cb87(0xc8)]));const _0xdb28ff={'deleted':_0xb46ee,'remoteId':_0x38ecc3[_0x26cb87(0xab)]};if(_0x146693)_0xdb28ff['trashedTo']=_0x146693;return{'ok':!![],'data':_0xdb28ff,'message':_0x26cb87(0xcd)+_0xb46ee+(_0x146693?_0x26cb87(0xa6):'')};}};function resolveDeleteTarget(_0x54ce44,_0x4a82ad){const _0xe5fca9=a26_0x2b38d1;if(_0x54ce44[_0xe5fca9(0xc4)]('/')){const _0x3c13dd=_0x4a82ad[_0xe5fca9(0xbc)](_0xc875ea=>_0xc875ea===_0x54ce44);if(!_0x3c13dd)throw CliErrors[_0xe5fca9(0xaa)]('Function\x20not\x20found:\x20'+_0x54ce44);return _0x3c13dd;}const _0x1e5958=_0x4a82ad['filter'](_0x49302f=>_0x49302f[_0xe5fca9(0xc1)]('/')['at'](-0x1)===_0x54ce44);if(_0x1e5958[_0xe5fca9(0xa7)]===0x0)throw CliErrors[_0xe5fca9(0xaa)](_0xe5fca9(0xc3)+_0x54ce44);if(_0x1e5958[_0xe5fca9(0xa7)]>0x1)throw CliErrors[_0xe5fca9(0xaa)]('Multiple\x20functions\x20match\x20\x22'+_0x54ce44+'\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'+_0x1e5958[_0xe5fca9(0xcb)](_0x131844=>'\x20\x20-\x20'+_0x131844)[_0xe5fca9(0xa5)]('\x0a'));return _0x1e5958[0x0];}async function moveToTrash(_0x1e2349,_0x407d27,_0x1d7580){const _0x21267b=a26_0x2b38d1,_0x39dda8=new Date()[_0x21267b(0xb4)]()['replace'](/[:.]/g,'-'),_0x374ab9=relative(_0x1e2349,_0x1d7580),_0x10e94d=join(_0x407d27,_0x39dda8,_0x374ab9);return await mkdir(dirname(_0x10e94d),{'recursive':!![]}),await rename(_0x1d7580,_0x10e94d),_0x10e94d;}async function cleanupEmptyDirectories(_0x93f204,_0x586feb){const _0x9490ae=a26_0x2b38d1;let _0x3713b9=resolve(_0x93f204);const _0x1466e1=resolve(_0x586feb);while(_0x3713b9[_0x9490ae(0xa8)](''+_0x1466e1+sep)||_0x3713b9===_0x1466e1){if(_0x3713b9===_0x1466e1)return;try{const _0x180088=await readdir(_0x3713b9);if(_0x180088[_0x9490ae(0xa7)]>0x0)return;await rmdir(_0x3713b9);}catch{return;}_0x3713b9=dirname(_0x3713b9);}}
@@ -1 +1 @@
1
- const a26_0x2ccd32=a26_0x54ed;(function(_0x11caae,_0x5e23a6){const _0x5e9cf2=a26_0x54ed,_0x797497=_0x11caae();while(!![]){try{const _0x4c196a=-parseInt(_0x5e9cf2(0x12e))/0x1*(parseInt(_0x5e9cf2(0x129))/0x2)+parseInt(_0x5e9cf2(0x12a))/0x3*(-parseInt(_0x5e9cf2(0x130))/0x4)+-parseInt(_0x5e9cf2(0x126))/0x5*(-parseInt(_0x5e9cf2(0x121))/0x6)+-parseInt(_0x5e9cf2(0x11c))/0x7+-parseInt(_0x5e9cf2(0x127))/0x8+-parseInt(_0x5e9cf2(0x11a))/0x9*(parseInt(_0x5e9cf2(0x11b))/0xa)+parseInt(_0x5e9cf2(0x117))/0xb*(parseInt(_0x5e9cf2(0x128))/0xc);if(_0x4c196a===_0x5e23a6)break;else _0x797497['push'](_0x797497['shift']());}catch(_0x779a3a){_0x797497['push'](_0x797497['shift']());}}}(a26_0x45d0,0xbe24a));function a26_0x54ed(_0x14807e,_0x5c35ef){_0x14807e=_0x14807e-0x117;const _0x45d0a9=a26_0x45d0();let _0x54eda6=_0x45d0a9[_0x14807e];return _0x54eda6;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a26_0x2ccd32(0x12d),'command':'detail','description':a26_0x2ccd32(0x118),'risk':a26_0x2ccd32(0x125),'flags':[{'name':'id','type':a26_0x2ccd32(0x123),'required':!![],'description':a26_0x2ccd32(0x12c)},{'name':a26_0x2ccd32(0x11d),'type':'boolean','description':a26_0x2ccd32(0x124)}],async 'execute'(_0x42a572){const _0x4c3461=a26_0x2ccd32,_0x5e4e15=await getBffScriptInfo(_0x42a572['num']('id')),_0x158a7c=_0x42a572[_0x4c3461(0x11e)](_0x4c3461(0x11d));if(_0x158a7c)return{'ok':!![],'data':_0x5e4e15};return{'ok':!![],'data':{'id':_0x5e4e15['id'],'appCode':_0x5e4e15[_0x4c3461(0x122)],'scriptType':_0x5e4e15[_0x4c3461(0x119)],'description':_0x5e4e15[_0x4c3461(0x120)]||_0x4c3461(0x12f),'createdTime':_0x5e4e15[_0x4c3461(0x12b)]??'','updatedTime':_0x5e4e15['updatedTime']??'','scriptContent':_0x5e4e15[_0x4c3461(0x11f)]??''}};}};function a26_0x45d0(){const _0x723469=['2778bUKqOB','appCode','number','Return\x20full\x20raw\x20script\x20object','read','11555lUYJRE','1064400nUchjX','11438292IGOHkI','28ZTxYmw','3UoJtyz','createdTime','Script\x20ID','bff','56437MokvHc','(none)','2979404CGvwxL','22OABmIl','Get\x20BFF\x20script\x20details\x20by\x20ID','scriptType','89109UGnqdI','470Xprqhb','449281sPwnsn','verbose','bool','scriptContent','description'];a26_0x45d0=function(){return _0x723469;};return a26_0x45d0();}
1
+ const a27_0x5a63be=a27_0x27bc;function a27_0x1ac3(){const _0x1e4850=['boolean','read','172843Nmhotp','6FJtsnJ','(none)','13uqdQNe','604174fYXBdv','835165OUZupL','scriptContent','verbose','921HxWomx','number','10116yManfQ','10dqwUyj','bool','updatedTime','description','Return\x20full\x20raw\x20script\x20object','598073vyoZro','1DXDAIi','24hzzslT','904zrascB','4082344iAJdnr','324jyAapg','appCode'];a27_0x1ac3=function(){return _0x1e4850;};return a27_0x1ac3();}function a27_0x27bc(_0x5845ff,_0x36b959){_0x5845ff=_0x5845ff-0x17e;const _0x1ac3ab=a27_0x1ac3();let _0x27bca7=_0x1ac3ab[_0x5845ff];return _0x27bca7;}(function(_0x68f166,_0x38e81e){const _0x3ba969=a27_0x27bc,_0x484e95=_0x68f166();while(!![]){try{const _0x577f03=-parseInt(_0x3ba969(0x18f))/0x1*(parseInt(_0x3ba969(0x182))/0x2)+parseInt(_0x3ba969(0x186))/0x3*(-parseInt(_0x3ba969(0x191))/0x4)+-parseInt(_0x3ba969(0x183))/0x5*(-parseInt(_0x3ba969(0x17f))/0x6)+-parseInt(_0x3ba969(0x18e))/0x7*(parseInt(_0x3ba969(0x190))/0x8)+-parseInt(_0x3ba969(0x188))/0x9*(-parseInt(_0x3ba969(0x189))/0xa)+-parseInt(_0x3ba969(0x17e))/0xb*(-parseInt(_0x3ba969(0x193))/0xc)+parseInt(_0x3ba969(0x181))/0xd*(parseInt(_0x3ba969(0x192))/0xe);if(_0x577f03===_0x38e81e)break;else _0x484e95['push'](_0x484e95['shift']());}catch(_0x39818f){_0x484e95['push'](_0x484e95['shift']());}}}(a27_0x1ac3,0x3e8da));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':'bff','command':'detail','description':'Get\x20BFF\x20script\x20details\x20by\x20ID','risk':a27_0x5a63be(0x196),'flags':[{'name':'id','type':a27_0x5a63be(0x187),'required':!![],'description':'Script\x20ID'},{'name':'verbose','type':a27_0x5a63be(0x195),'description':a27_0x5a63be(0x18d)}],async 'execute'(_0x4070ff){const _0x970a74=a27_0x5a63be,_0x5d53d0=await getBffScriptInfo(_0x4070ff['num']('id')),_0x209ec4=_0x4070ff[_0x970a74(0x18a)](_0x970a74(0x185));if(_0x209ec4)return{'ok':!![],'data':_0x5d53d0};return{'ok':!![],'data':{'id':_0x5d53d0['id'],'appCode':_0x5d53d0[_0x970a74(0x194)],'scriptType':_0x5d53d0['scriptType'],'description':_0x5d53d0[_0x970a74(0x18c)]||_0x970a74(0x180),'createdTime':_0x5d53d0['createdTime']??'','updatedTime':_0x5d53d0[_0x970a74(0x18b)]??'','scriptContent':_0x5d53d0[_0x970a74(0x184)]??''}};}};
@@ -1 +1 @@
1
- function a27_0x535c(){const _0x251dac=['822HvylNt','5203247UOmNSj','11LqCvUo','5084325WoTkCE','8TQSNrn','82230UhJIyz','148RDbQzg','438195amsswO','7396722vKCoOR','7461710xzsssD','1412DkavLa'];a27_0x535c=function(){return _0x251dac;};return a27_0x535c();}(function(_0x43afe2,_0x29636e){const _0x1757bc=a27_0x4652,_0x3bfd00=_0x43afe2();while(!![]){try{const _0x1cfc6c=parseInt(_0x1757bc(0x1ea))/0x1+-parseInt(_0x1757bc(0x1ed))/0x2*(-parseInt(_0x1757bc(0x1ee))/0x3)+-parseInt(_0x1757bc(0x1e9))/0x4*(parseInt(_0x1757bc(0x1e8))/0x5)+parseInt(_0x1757bc(0x1eb))/0x6+-parseInt(_0x1757bc(0x1ef))/0x7*(-parseInt(_0x1757bc(0x1e7))/0x8)+-parseInt(_0x1757bc(0x1e6))/0x9+parseInt(_0x1757bc(0x1ec))/0xa*(-parseInt(_0x1757bc(0x1f0))/0xb);if(_0x1cfc6c===_0x29636e)break;else _0x3bfd00['push'](_0x3bfd00['shift']());}catch(_0x4aa28a){_0x3bfd00['push'](_0x3bfd00['shift']());}}}(a27_0x535c,0xa8015));import{bffList}from'../../commands/bff/list.js';function a27_0x4652(_0x2fbced,_0x251b48){_0x2fbced=_0x2fbced-0x1e6;const _0x535cdd=a27_0x535c();let _0x465218=_0x535cdd[_0x2fbced];return _0x465218;}import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffNew}from'../../commands/bff/new.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,bffNew,bffPush,bffPull,bffDelete];
1
+ (function(_0x43efbe,_0x2b3c71){const _0x3572aa=a28_0x1abc,_0x413ce9=_0x43efbe();while(!![]){try{const _0x453a20=parseInt(_0x3572aa(0x15b))/0x1*(-parseInt(_0x3572aa(0x15e))/0x2)+-parseInt(_0x3572aa(0x15d))/0x3+parseInt(_0x3572aa(0x15c))/0x4+parseInt(_0x3572aa(0x15a))/0x5+-parseInt(_0x3572aa(0x160))/0x6+-parseInt(_0x3572aa(0x159))/0x7+parseInt(_0x3572aa(0x15f))/0x8;if(_0x453a20===_0x2b3c71)break;else _0x413ce9['push'](_0x413ce9['shift']());}catch(_0x24b64b){_0x413ce9['push'](_0x413ce9['shift']());}}}(a28_0xe711,0xedacc));function a28_0x1abc(_0x562d8c,_0x24e89a){_0x562d8c=_0x562d8c-0x159;const _0xe71197=a28_0xe711();let _0x1abc1a=_0xe71197[_0x562d8c];return _0x1abc1a;}import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffNew}from'../../commands/bff/new.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,bffNew,bffPush,bffPull,bffDelete];function a28_0xe711(){const _0x4da569=['8763006dvVLcB','7790890kCwZCQ','6746mRxleB','1143888PCmDZl','2082063UuLgao','116LLWqJv','19915424faMAjl','6137490RCoDeG'];a28_0xe711=function(){return _0x4da569;};return a28_0xe711();}
@@ -1 +1 @@
1
- function a28_0x8203(){const _0x2c6af0=['appCode','bool','ENDPOINT','boolean','9694650ImESlZ','list','verbose','bff','str','4PCGpGB','26794581WFDwYZ','186vXfLRU','description','Script\x20type\x20filter','215236UBehTE','functionName','152DsMZMo','name','type','Filter\x20by\x20script\x20name','string','21654HtHIrq','394070yUyIYO','1319400Zzrjdp','315486IvtvGc','scriptType','length','112VAqWjS'];a28_0x8203=function(){return _0x2c6af0;};return a28_0x8203();}const a28_0x3cad6f=a28_0x4749;(function(_0x1dd1c5,_0x19c54e){const _0x717eb=a28_0x4749,_0x313401=_0x1dd1c5();while(!![]){try{const _0x29e691=-parseInt(_0x717eb(0x70))/0x1*(parseInt(_0x717eb(0x7f))/0x2)+-parseInt(_0x717eb(0x6f))/0x3*(parseInt(_0x717eb(0x6a))/0x4)+-parseInt(_0x717eb(0x71))/0x5+-parseInt(_0x717eb(0x65))/0x6*(parseInt(_0x717eb(0x68))/0x7)+-parseInt(_0x717eb(0x75))/0x8*(parseInt(_0x717eb(0x72))/0x9)+parseInt(_0x717eb(0x7a))/0xa+parseInt(_0x717eb(0x80))/0xb;if(_0x29e691===_0x19c54e)break;else _0x313401['push'](_0x313401['shift']());}catch(_0x55c4c2){_0x313401['push'](_0x313401['shift']());}}}(a28_0x8203,0x9b0d0));import{listBffScripts}from'../../core/api-client.js';function a28_0x4749(_0x50da26,_0x40c617){_0x50da26=_0x50da26-0x65;const _0x82030e=a28_0x8203();let _0x47491d=_0x82030e[_0x50da26];return _0x47491d;}export const bffList={'service':a28_0x3cad6f(0x7d),'command':a28_0x3cad6f(0x7b),'description':'List\x20BFF\x20scripts','risk':'read','flags':[{'name':a28_0x3cad6f(0x6c),'type':a28_0x3cad6f(0x6e),'description':a28_0x3cad6f(0x67),'default':a28_0x3cad6f(0x78),'enum':[a28_0x3cad6f(0x78),'COMMON']},{'name':'name','type':a28_0x3cad6f(0x6e),'description':a28_0x3cad6f(0x6d)},{'name':'verbose','type':a28_0x3cad6f(0x79),'description':'Return\x20full\x20script\x20objects'}],async 'execute'(_0xeca713){const _0x460d03=a28_0x3cad6f,_0x2b158e=await listBffScripts(_0xeca713[_0x460d03(0x76)],_0xeca713['str'](_0x460d03(0x6c)),{'scriptName':_0xeca713[_0x460d03(0x7e)](_0x460d03(0x6b))||undefined}),_0x37cd27=_0xeca713[_0x460d03(0x77)](_0x460d03(0x7c));return{'ok':!![],'data':_0x37cd27?_0x2b158e:_0x2b158e['map'](_0x2fb0ab=>({'id':_0x2fb0ab['id'],'functionName':_0x2fb0ab[_0x460d03(0x69)]??'','description':_0x2fb0ab[_0x460d03(0x66)]||'(unnamed)','scriptType':_0x2fb0ab[_0x460d03(0x73)]})),'message':_0x2b158e[_0x460d03(0x74)]===0x0?'No\x20BFF\x20scripts\x20found.':undefined};}};
1
+ const a29_0x1ee724=a29_0x2a9a;(function(_0x5930f6,_0x22bacd){const _0x291aa6=a29_0x2a9a,_0x515f90=_0x5930f6();while(!![]){try{const _0x58a57a=parseInt(_0x291aa6(0xf4))/0x1*(parseInt(_0x291aa6(0xe7))/0x2)+parseInt(_0x291aa6(0xe4))/0x3+-parseInt(_0x291aa6(0xe2))/0x4+-parseInt(_0x291aa6(0xf0))/0x5+parseInt(_0x291aa6(0xdb))/0x6+-parseInt(_0x291aa6(0xf2))/0x7*(parseInt(_0x291aa6(0xda))/0x8)+parseInt(_0x291aa6(0xe6))/0x9;if(_0x58a57a===_0x22bacd)break;else _0x515f90['push'](_0x515f90['shift']());}catch(_0x3490d6){_0x515f90['push'](_0x515f90['shift']());}}}(a29_0x3af4,0xc5b4c));function a29_0x3af4(){const _0x1fd589=['functionName','verbose','string','Return\x20full\x20script\x20objects','bool','list','2304928sPOSWA','description','1400520szZNgR','Script\x20type\x20filter','8505279WTinsc','6luGscO','ENDPOINT','str','appCode','Filter\x20by\x20script\x20name','name','boolean','List\x20BFF\x20scripts','No\x20BFF\x20scripts\x20found.','7484070JmELKZ','(unnamed)','7GaTEQS','scriptType','516707tNuOmA','3400840pynMbC','2075778YLHJdk'];a29_0x3af4=function(){return _0x1fd589;};return a29_0x3af4();}function a29_0x2a9a(_0x2185d6,_0x216dc1){_0x2185d6=_0x2185d6-0xda;const _0x3af43b=a29_0x3af4();let _0x2a9a3d=_0x3af43b[_0x2185d6];return _0x2a9a3d;}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':'bff','command':a29_0x1ee724(0xe1),'description':a29_0x1ee724(0xee),'risk':'read','flags':[{'name':'type','type':'string','description':a29_0x1ee724(0xe5),'default':a29_0x1ee724(0xe8),'enum':[a29_0x1ee724(0xe8),'COMMON']},{'name':a29_0x1ee724(0xec),'type':a29_0x1ee724(0xde),'description':a29_0x1ee724(0xeb)},{'name':'verbose','type':a29_0x1ee724(0xed),'description':a29_0x1ee724(0xdf)}],async 'execute'(_0x1d0bc4){const _0x4381c3=a29_0x1ee724,_0x12ff6c=await listBffScripts(_0x1d0bc4[_0x4381c3(0xea)],_0x1d0bc4['str']('type'),{'scriptName':_0x1d0bc4[_0x4381c3(0xe9)](_0x4381c3(0xec))||undefined}),_0x3a63a2=_0x1d0bc4[_0x4381c3(0xe0)](_0x4381c3(0xdd));return{'ok':!![],'data':_0x3a63a2?_0x12ff6c:_0x12ff6c['map'](_0x53cbd4=>({'id':_0x53cbd4['id'],'functionName':_0x53cbd4[_0x4381c3(0xdc)]??'','description':_0x53cbd4[_0x4381c3(0xe3)]||_0x4381c3(0xf1),'scriptType':_0x53cbd4[_0x4381c3(0xf3)]})),'message':_0x12ff6c['length']===0x0?_0x4381c3(0xef):undefined};}};
@@ -1 +1 @@
1
- const a29_0x4ed9cd=a29_0x3268;(function(_0x4529fa,_0x28e2af){const _0x1ab88b=a29_0x3268,_0x2d6a77=_0x4529fa();while(!![]){try{const _0x3cb990=parseInt(_0x1ab88b(0xe6))/0x1*(-parseInt(_0x1ab88b(0xd5))/0x2)+-parseInt(_0x1ab88b(0xb3))/0x3+-parseInt(_0x1ab88b(0xe9))/0x4*(parseInt(_0x1ab88b(0xd3))/0x5)+-parseInt(_0x1ab88b(0xce))/0x6*(parseInt(_0x1ab88b(0xa7))/0x7)+parseInt(_0x1ab88b(0xa2))/0x8*(parseInt(_0x1ab88b(0xdb))/0x9)+parseInt(_0x1ab88b(0x9f))/0xa*(-parseInt(_0x1ab88b(0xea))/0xb)+-parseInt(_0x1ab88b(0x9b))/0xc*(-parseInt(_0x1ab88b(0xbe))/0xd);if(_0x3cb990===_0x28e2af)break;else _0x2d6a77['push'](_0x2d6a77['shift']());}catch(_0x311df1){_0x2d6a77['push'](_0x2d6a77['shift']());}}}(a29_0x2227,0x7c3e7));function a29_0x2227(){const _0x158447=['\x0a\x20*\x20[触发节点]\x20','operation-type','utf8','stdin','validation','after','parseInt','No\x20api.ts\x20found.\x20Run\x20`','apiDir','\x22\x20not\x20found\x20for\x20dataset\x20','Script\x20type','1798896xeogSC','appCode','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Invalid\x20function\x20name\x20\x22','6590crcQXE','\x22.\x20','No\x20operation\x20types\x20found\x20for\x20dataset\x20','536Yrnkes','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','name','description','1222886sdvTPH','write','Select\x20dataset:','datasetcode','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','keys','Dataset\x20not\x20found\x20for\x20code\x20\x22','Alias\x20\x22','Select\x20trigger\x20node:','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','question','1134000cyhMqJ','Available\x20aliases:\x20','find','str','nonInteractive','Operation\x20type\x20(HOOK\x20only)','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','string','alias','entries','221QNJtHx','bff','No\x20datasets\x20found\x20for\x20this\x20app.','Invalid\x20dataset\x20selection.','type','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','operationType','before','datasetCode','stderr','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','\x22\x20not\x20found.\x20','code','File\x20already\x20exists:\x20','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','12bVEnys','.js','HOOK\x20requires\x20alias/operation/node\x20options.','map','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','40ebPKgt','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','18QTzubF','length','new','ENDPOINT','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','close','119772dVeyYs','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','includes','HOOK','function-node','COMMON','scriptsRootDir','join','Available:\x20','trim','TODO:\x20add\x20script\x20description','37181sJNSbP','Script\x20description','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','496996nPgrdY','14608dvwKJz','tableName','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'];a29_0x2227=function(){return _0x158447;};return a29_0x2227();}import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';function a29_0x3268(_0x3cbf0e,_0x4b992b){_0x3cbf0e=_0x3cbf0e-0x9b;const _0x2227f3=a29_0x2227();let _0x3268b9=_0x2227f3[_0x3cbf0e];return _0x3268b9;}import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffNew={'service':a29_0x4ed9cd(0xbf),'command':a29_0x4ed9cd(0xd7),'description':a29_0x4ed9cd(0xd4),'risk':a29_0x4ed9cd(0xa8),'flags':[{'name':a29_0x4ed9cd(0xc2),'type':a29_0x4ed9cd(0xbb),'required':!![],'enum':[a29_0x4ed9cd(0xe0),'ENDPOINT',a29_0x4ed9cd(0xde)],'description':a29_0x4ed9cd(0xf8)},{'name':a29_0x4ed9cd(0xa5),'type':a29_0x4ed9cd(0xbb),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':'description','type':a29_0x4ed9cd(0xbb),'description':a29_0x4ed9cd(0xe7)},{'name':a29_0x4ed9cd(0xbc),'type':a29_0x4ed9cd(0xbb),'description':a29_0x4ed9cd(0xa3)},{'name':'datasetcode','type':'string','description':a29_0x4ed9cd(0xb9)},{'name':a29_0x4ed9cd(0xef),'type':a29_0x4ed9cd(0xbb),'description':a29_0x4ed9cd(0xb8)},{'name':'function-node','type':a29_0x4ed9cd(0xbb),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':['before',a29_0x4ed9cd(0xf3)]}],async 'validate'(_0x22c12d){const _0x576281=a29_0x4ed9cd,_0x1b3138=_0x22c12d[_0x576281(0xb6)](_0x576281(0xa5));if(!isValidBffFunctionName(_0x1b3138))throw CliErrors['validation'](_0x576281(0x9e)+_0x1b3138+_0x576281(0xb1));},async 'execute'(_0xd36a5){const _0x8051df=a29_0x4ed9cd,_0x574d74=loadBffProjectConfig(_0xd36a5[_0x8051df(0x9c)]),_0x188111=_0xd36a5['str']('type'),_0x4a5b1e=_0xd36a5['str']('name'),_0x4eb9a7=_0xd36a5['str'](_0x8051df(0xa6))||undefined,_0x2af6cd=_0x188111===_0x8051df(0xde)?await resolveHookOptions(_0x574d74,_0xd36a5):undefined,_0x183fb5=buildFilePath(_0x574d74,_0x188111,_0x4a5b1e,_0x2af6cd);if(await fileExists(_0x183fb5))throw CliErrors[_0x8051df(0xf2)](_0x8051df(0xcc)+_0x183fb5);await mkdir(dirname(_0x183fb5),{'recursive':!![]});const _0x3b60b7=generateTemplate(_0x188111,_0x4a5b1e,_0xd36a5[_0x8051df(0x9c)],_0x4eb9a7,_0x2af6cd);await writeFile(_0x183fb5,_0x3b60b7,_0x8051df(0xf0));const _0x28219d={'type':_0x188111,'name':_0x4a5b1e,'path':_0x183fb5};if(_0x4eb9a7)_0x28219d[_0x8051df(0xa6)]=_0x4eb9a7;if(_0x2af6cd){if(_0x2af6cd[_0x8051df(0xbc)])_0x28219d[_0x8051df(0xbc)]=_0x2af6cd['alias'];_0x28219d[_0x8051df(0xc7)]=_0x2af6cd[_0x8051df(0xc7)],_0x28219d['operationType']=_0x2af6cd[_0x8051df(0xc5)],_0x28219d['functionNode']=_0x2af6cd['functionNode'];}return{'ok':!![],'data':_0x28219d,'message':'Created\x20'+_0x188111+'\x20function:\x20'+_0x4a5b1e};}};async function resolveHookOptions(_0x50e374,_0x1284c5){const _0x19b02e=a29_0x4ed9cd,_0x4c57ac=loadAliasMap(_0x1284c5['apiDir'],undefined,resolveApiFilePath(_0x1284c5[_0x19b02e(0xf6)],_0x1284c5[_0x19b02e(0x9c)])),_0x343934=_0x4c57ac[_0x19b02e(0xd6)]>0x0;let _0x3363ae,_0x43bfcb,_0x2f62fd;const _0x22fa28=_0x1284c5['str']('alias'),_0x235e8e=_0x1284c5[_0x19b02e(0xb6)](_0x19b02e(0xaa));if(_0x22fa28){const _0x38d3de=resolveAlias(_0x1284c5[_0x19b02e(0xf6)],_0x22fa28,undefined,resolveApiFilePath(_0x1284c5[_0x19b02e(0xf6)],_0x1284c5['appCode']));if(!_0x38d3de){const _0x173a65=_0x343934?_0x19b02e(0xb4)+_0x4c57ac[_0x19b02e(0xd1)](_0x4e899c=>_0x4e899c['alias'])[_0x19b02e(0xe2)](',\x20'):_0x19b02e(0xf5)+CLI_BIN_NAME+_0x19b02e(0xe8);throw CliErrors[_0x19b02e(0xf2)](_0x19b02e(0xaf)+_0x22fa28+_0x19b02e(0xca)+_0x173a65);}_0x3363ae=_0x22fa28,_0x43bfcb=_0x38d3de;}else{if(_0x235e8e){_0x43bfcb=_0x235e8e;const _0x5a6703=_0x4c57ac[_0x19b02e(0xb5)](_0x3d6ea3=>_0x3d6ea3[_0x19b02e(0xc7)]===_0x235e8e);_0x3363ae=_0x5a6703?.[_0x19b02e(0xbc)];}else{if(_0x1284c5['nonInteractive'])throw CliErrors['validation'](_0x19b02e(0xa4));else{if(_0x343934){const _0x385ec2=_0x4c57ac[_0x19b02e(0xd1)](_0x1e5e58=>_0x1e5e58[_0x19b02e(0xbc)]+'\x20('+_0x1e5e58[_0x19b02e(0xeb)]+')'),_0x1d437f=await promptSelect(_0x19b02e(0xa9),_0x385ec2),_0x4b180=_0x4c57ac[_0x1d437f];if(!_0x4b180)throw CliErrors[_0x19b02e(0xf2)](_0x19b02e(0xc1));_0x3363ae=_0x4b180['alias'],_0x43bfcb=_0x4b180[_0x19b02e(0xc7)];}else{const _0x11241e=await listDatasets(_0x1284c5[_0x19b02e(0x9c)]);if(_0x11241e[_0x19b02e(0xd6)]===0x0)throw CliErrors[_0x19b02e(0xf2)](_0x19b02e(0xc0));const _0x3055e5=_0x11241e[_0x19b02e(0xd1)](_0x36df9b=>_0x36df9b[_0x19b02e(0xa5)]+'\x20('+_0x36df9b['code']+')'),_0x310fa5=await promptSelect('Select\x20dataset:',_0x3055e5),_0x1f7732=_0x11241e[_0x310fa5];if(!_0x1f7732)throw CliErrors[_0x19b02e(0xf2)]('Invalid\x20dataset\x20selection.');_0x43bfcb=_0x1f7732[_0x19b02e(0xcb)],_0x3363ae=undefined;}}}}const _0x347be5=await listDatasets(_0x1284c5[_0x19b02e(0x9c)]),_0x4ade1f=_0x347be5[_0x19b02e(0xb5)](_0x51c1dd=>_0x51c1dd['code']===_0x43bfcb);if(!_0x4ade1f)throw CliErrors[_0x19b02e(0xf2)](_0x19b02e(0xae)+_0x43bfcb+_0x19b02e(0xa0)+(_0x3363ae?_0x19b02e(0xc4)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x2f62fd=_0x4ade1f['id'];const _0x41646b=_0x3363ae??_0x43bfcb,_0x15e0ca=await listBffDatasetOperations(_0x1284c5[_0x19b02e(0x9c)],_0x2f62fd),_0x458db2=_0x15e0ca?Object[_0x19b02e(0xad)](_0x15e0ca):[];if(_0x458db2[_0x19b02e(0xd6)]===0x0)throw CliErrors[_0x19b02e(0xf2)](_0x19b02e(0xa1)+_0x41646b+'.');let _0x4c96b5;const _0x30a80d=_0x1284c5[_0x19b02e(0xb6)]('operation-type');if(_0x30a80d){if(!_0x458db2[_0x19b02e(0xdd)](_0x30a80d))throw CliErrors['validation']('Operation\x20type\x20\x22'+_0x30a80d+_0x19b02e(0xf7)+_0x41646b+'.\x20'+(_0x19b02e(0xe3)+_0x458db2[_0x19b02e(0xe2)](',\x20')));_0x4c96b5=_0x30a80d;}else{if(_0x1284c5[_0x19b02e(0xb7)])throw CliErrors[_0x19b02e(0xf2)](_0x19b02e(0xc9));const _0x16d5a8=await promptSelect('Select\x20operation\x20type:',_0x458db2);_0x4c96b5=_0x458db2[_0x16d5a8]??_0x458db2[0x0];}let _0x4a089a=normalizeHookFunctionNode(_0x1284c5[_0x19b02e(0xb6)](_0x19b02e(0xdf)));if(!_0x4a089a){if(_0x1284c5['str'](_0x19b02e(0xdf)))throw CliErrors[_0x19b02e(0xf2)](_0x19b02e(0xcd));if(_0x1284c5[_0x19b02e(0xb7)])throw CliErrors[_0x19b02e(0xf2)](_0x19b02e(0xd9));const _0x20aa48=await promptSelect(_0x19b02e(0xb0),[_0x19b02e(0xc6),_0x19b02e(0xf3)]);_0x4a089a=[_0x19b02e(0xc6),_0x19b02e(0xf3)][_0x20aa48]??'before';}return{'alias':_0x3363ae,'datasetCode':_0x43bfcb,'datasetId':_0x2f62fd,'operationType':_0x4c96b5,'functionNode':_0x4a089a};}async function promptSelect(_0x58510e,_0x4969bf){const _0x55b434=a29_0x4ed9cd;if(_0x4969bf[_0x55b434(0xd6)]===0x1)return 0x0;for(const [_0x235827,_0x29c650]of _0x4969bf[_0x55b434(0xbd)]()){process[_0x55b434(0xc8)][_0x55b434(0xa8)]('\x20\x20'+(_0x235827+0x1)+'.\x20'+_0x29c650+'\x0a');}const _0x175a38=createInterface({'input':process[_0x55b434(0xf1)],'output':process[_0x55b434(0xc8)]});while(!![]){const _0x55c776=await new Promise(_0x48911b=>{const _0xc81db2=_0x55b434;_0x175a38[_0xc81db2(0xb2)](_0x58510e+'\x20',_0x48911b);}),_0x5d892d=Number[_0x55b434(0xf4)](_0x55c776['trim'](),0xa);if(Number['isInteger'](_0x5d892d)&&_0x5d892d>=0x1&&_0x5d892d<=_0x4969bf[_0x55b434(0xd6)])return _0x175a38[_0x55b434(0xda)](),_0x5d892d-0x1;process['stderr'][_0x55b434(0xa8)](_0x55b434(0xed)+_0x4969bf[_0x55b434(0xd6)]+'.\x0a');}}function buildFilePath(_0x147ad4,_0x5f1b03,_0x37f7e8,_0x3f75e1){const _0xa555af=a29_0x4ed9cd;if(_0x5f1b03===_0xa555af(0xde)){if(!_0x3f75e1)throw CliErrors['validation'](_0xa555af(0xd0));const _0x1cd0a6=_0x3f75e1[_0xa555af(0xbc)]??_0x3f75e1[_0xa555af(0xc7)];return join(_0x147ad4[_0xa555af(0xe1)],_0xa555af(0xde),_0x1cd0a6,_0x3f75e1[_0xa555af(0xc5)],_0x3f75e1['functionNode'],_0x37f7e8+_0xa555af(0xcf));}return join(_0x147ad4['scriptsRootDir'],_0x5f1b03,_0x37f7e8+_0xa555af(0xcf));}export function generateTemplate(_0x1abec7,_0xf81635,_0x43c3f1,_0x597c26,_0x4c1e0d){const _0x294772=a29_0x4ed9cd,_0x2526a0=_0x597c26?.[_0x294772(0xe4)]()||_0x294772(0xe5);if(_0x1abec7===_0x294772(0xe0))return _0x294772(0xec)+_0x2526a0+'\x0a\x20*\x20[脚本名称]\x20'+_0xf81635+_0x294772(0xdc)+_0xf81635+'.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0xf81635+_0x294772(0x9d);if(_0x1abec7===_0x294772(0xd8))return _0x294772(0xab)+_0x2526a0+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/'+_0x43c3f1+'/'+_0xf81635+_0x294772(0xd2)+_0xf81635+_0x294772(0x9d);if(!_0x4c1e0d)throw CliErrors[_0x294772(0xf2)](_0x294772(0xba));return _0x294772(0xac)+_0x2526a0+_0x294772(0xc3)+_0x43c3f1+'/'+_0x4c1e0d[_0x294772(0xc7)]+'/'+_0x4c1e0d[_0x294772(0xc5)]+_0x294772(0xee)+_0x4c1e0d['functionNode']+'\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0xf81635+_0x294772(0x9d);}
1
+ const a30_0x3f3386=a30_0x14b4;function a30_0x4c84(){const _0x2ee11b=['10ntPWlw','new','No\x20api.ts\x20found.\x20Run\x20`','\x0a\x20*\x20[脚本名称]\x20','99GmZEPY','map','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','functionNode','Available:\x20','4AInEFI','code','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','isInteger','find','function-node','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','\x0a\x20*\x20[触发节点]\x20','operation-type','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','14XnQVdC','Dataset\x20not\x20found\x20for\x20code\x20\x22','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','name','string','nonInteractive','parseInt','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','\x22.\x20','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','write','scriptsRootDir','datasetCode','Alias\x20\x22','File\x20already\x20exists:\x20','No\x20datasets\x20found\x20for\x20this\x20app.','.js','18940801cKnXTK','keys','Operation\x20type\x20(HOOK\x20only)','\x20function:\x20','Trigger\x20node\x20(HOOK\x20only)','COMMON','Available\x20aliases:\x20','5109400NFmVAx','str','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','before','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','bff','appCode','type','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','ENDPOINT','close','Created\x20','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','Select\x20operation\x20type:','657656KZwGSD','trim','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','validation','operationType','1008804HhiADY','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','length','alias','Select\x20dataset:','description','tableName','apiDir','Invalid\x20dataset\x20selection.','stderr','includes','\x22\x20not\x20found\x20for\x20dataset\x20','datasetcode','No\x20operation\x20types\x20found\x20for\x20dataset\x20','after','entries','TODO:\x20add\x20script\x20description','2700344NpVfxZ','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','22511tJjYvG','HOOK','\x20api\x20pull`\x20to\x20refresh.','Script\x20type','1074414PKjYYt','question','utf8','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`'];a30_0x4c84=function(){return _0x2ee11b;};return a30_0x4c84();}(function(_0x24e351,_0x415936){const _0x2f2536=a30_0x14b4,_0x1b340f=_0x24e351();while(!![]){try{const _0x13be67=-parseInt(_0x2f2536(0xb8))/0x1+parseInt(_0x2f2536(0x6e))/0x2*(parseInt(_0x2f2536(0xbc))/0x3)+-parseInt(_0x2f2536(0xb6))/0x4+parseInt(_0x2f2536(0x92))/0x5+-parseInt(_0x2f2536(0xa5))/0x6*(-parseInt(_0x2f2536(0x79))/0x7)+parseInt(_0x2f2536(0xa0))/0x8*(parseInt(_0x2f2536(0xc4))/0x9)+parseInt(_0x2f2536(0xc0))/0xa*(-parseInt(_0x2f2536(0x8b))/0xb);if(_0x13be67===_0x415936)break;else _0x1b340f['push'](_0x1b340f['shift']());}catch(_0xd6ff84){_0x1b340f['push'](_0x1b340f['shift']());}}}(a30_0x4c84,0x8886d));function a30_0x14b4(_0x4d22a6,_0x5a58fb){_0x4d22a6=_0x4d22a6-0x6e;const _0x4c84a0=a30_0x4c84();let _0x14b400=_0x4c84a0[_0x4d22a6];return _0x14b400;}import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffNew={'service':a30_0x3f3386(0x97),'command':a30_0x3f3386(0xc1),'description':a30_0x3f3386(0x70),'risk':a30_0x3f3386(0x84),'flags':[{'name':a30_0x3f3386(0x99),'type':'string','required':!![],'enum':[a30_0x3f3386(0x90),a30_0x3f3386(0x9b),a30_0x3f3386(0xb9)],'description':a30_0x3f3386(0xbb)},{'name':a30_0x3f3386(0x7d),'type':'string','required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':a30_0x3f3386(0xaa),'type':a30_0x3f3386(0x7e),'description':'Script\x20description'},{'name':a30_0x3f3386(0xa8),'type':a30_0x3f3386(0x7e),'description':a30_0x3f3386(0xa2)},{'name':'datasetcode','type':a30_0x3f3386(0x7e),'description':a30_0x3f3386(0x96)},{'name':a30_0x3f3386(0x77),'type':a30_0x3f3386(0x7e),'description':a30_0x3f3386(0x8d)},{'name':a30_0x3f3386(0x73),'type':'string','description':a30_0x3f3386(0x8f),'enum':[a30_0x3f3386(0x95),'after']}],async 'validate'(_0x26fa24){const _0x97f98a=a30_0x3f3386,_0x3d2658=_0x26fa24[_0x97f98a(0x93)](_0x97f98a(0x7d));if(!isValidBffFunctionName(_0x3d2658))throw CliErrors['validation']('Invalid\x20function\x20name\x20\x22'+_0x3d2658+_0x97f98a(0x7c));},async 'execute'(_0x503ec8){const _0x294233=a30_0x3f3386,_0x2070b7=loadBffProjectConfig(_0x503ec8[_0x294233(0x98)]),_0x3a0aa4=_0x503ec8[_0x294233(0x93)](_0x294233(0x99)),_0x5cdaba=_0x503ec8[_0x294233(0x93)](_0x294233(0x7d)),_0x380623=_0x503ec8[_0x294233(0x93)](_0x294233(0xaa))||undefined,_0x3deb82=_0x3a0aa4===_0x294233(0xb9)?await resolveHookOptions(_0x2070b7,_0x503ec8):undefined,_0x39156b=buildFilePath(_0x2070b7,_0x3a0aa4,_0x5cdaba,_0x3deb82);if(await fileExists(_0x39156b))throw CliErrors['validation'](_0x294233(0x88)+_0x39156b);await mkdir(dirname(_0x39156b),{'recursive':!![]});const _0x9d9ce8=generateTemplate(_0x3a0aa4,_0x5cdaba,_0x503ec8[_0x294233(0x98)],_0x380623,_0x3deb82);await writeFile(_0x39156b,_0x9d9ce8,_0x294233(0xbe));const _0x7cf484={'type':_0x3a0aa4,'name':_0x5cdaba,'path':_0x39156b};if(_0x380623)_0x7cf484[_0x294233(0xaa)]=_0x380623;if(_0x3deb82){if(_0x3deb82['alias'])_0x7cf484[_0x294233(0xa8)]=_0x3deb82['alias'];_0x7cf484['datasetCode']=_0x3deb82[_0x294233(0x86)],_0x7cf484[_0x294233(0xa4)]=_0x3deb82['operationType'],_0x7cf484['functionNode']=_0x3deb82[_0x294233(0xc7)];}return{'ok':!![],'data':_0x7cf484,'message':_0x294233(0x9d)+_0x3a0aa4+_0x294233(0x8e)+_0x5cdaba};}};async function resolveHookOptions(_0x2f63ce,_0x21c238){const _0x1606db=a30_0x3f3386,_0x2b550a=loadAliasMap(_0x21c238['apiDir'],undefined,resolveApiFilePath(_0x21c238[_0x1606db(0xac)],_0x21c238[_0x1606db(0x98)])),_0x451446=_0x2b550a[_0x1606db(0xa7)]>0x0;let _0x45dd22,_0x59f940,_0xbaf0bf;const _0x3388af=_0x21c238['str']('alias'),_0x225855=_0x21c238['str'](_0x1606db(0xb1));if(_0x3388af){const _0x46061f=resolveAlias(_0x21c238[_0x1606db(0xac)],_0x3388af,undefined,resolveApiFilePath(_0x21c238[_0x1606db(0xac)],_0x21c238[_0x1606db(0x98)]));if(!_0x46061f){const _0x14350f=_0x451446?_0x1606db(0x91)+_0x2b550a[_0x1606db(0xc5)](_0x1b86d8=>_0x1b86d8[_0x1606db(0xa8)])['join'](',\x20'):_0x1606db(0xc2)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x1606db(0xa3)](_0x1606db(0x87)+_0x3388af+'\x22\x20not\x20found.\x20'+_0x14350f);}_0x45dd22=_0x3388af,_0x59f940=_0x46061f;}else{if(_0x225855){_0x59f940=_0x225855;const _0x259ab0=_0x2b550a[_0x1606db(0x72)](_0x2d3ec9=>_0x2d3ec9[_0x1606db(0x86)]===_0x225855);_0x45dd22=_0x259ab0?.[_0x1606db(0xa8)];}else{if(_0x21c238[_0x1606db(0x7f)])throw CliErrors[_0x1606db(0xa3)](_0x1606db(0x83));else{if(_0x451446){const _0xde7258=_0x2b550a[_0x1606db(0xc5)](_0x4f783f=>_0x4f783f['alias']+'\x20('+_0x4f783f[_0x1606db(0xab)]+')'),_0x4cc6cf=await promptSelect(_0x1606db(0xa9),_0xde7258),_0x4e0bd1=_0x2b550a[_0x4cc6cf];if(!_0x4e0bd1)throw CliErrors['validation'](_0x1606db(0xad));_0x45dd22=_0x4e0bd1[_0x1606db(0xa8)],_0x59f940=_0x4e0bd1[_0x1606db(0x86)];}else{const _0xddbb71=await listDatasets(_0x21c238[_0x1606db(0x98)]);if(_0xddbb71[_0x1606db(0xa7)]===0x0)throw CliErrors[_0x1606db(0xa3)](_0x1606db(0x89));const _0x2bd306=_0xddbb71['map'](_0x168fc9=>_0x168fc9[_0x1606db(0x7d)]+'\x20('+_0x168fc9[_0x1606db(0x6f)]+')'),_0xdede99=await promptSelect(_0x1606db(0xa9),_0x2bd306),_0x2c3185=_0xddbb71[_0xdede99];if(!_0x2c3185)throw CliErrors['validation']('Invalid\x20dataset\x20selection.');_0x59f940=_0x2c3185[_0x1606db(0x6f)],_0x45dd22=undefined;}}}}const _0x2a79a2=await listDatasets(_0x21c238[_0x1606db(0x98)]),_0x54935c=_0x2a79a2['find'](_0x368b1e=>_0x368b1e[_0x1606db(0x6f)]===_0x59f940);if(!_0x54935c)throw CliErrors[_0x1606db(0xa3)](_0x1606db(0x7a)+_0x59f940+_0x1606db(0x82)+(_0x45dd22?_0x1606db(0xbf)+CLI_BIN_NAME+_0x1606db(0xba):''));_0xbaf0bf=_0x54935c['id'];const _0x21c339=_0x45dd22??_0x59f940,_0x168ccd=await listBffDatasetOperations(_0x21c238[_0x1606db(0x98)],_0xbaf0bf),_0x130609=_0x168ccd?Object[_0x1606db(0x8c)](_0x168ccd):[];if(_0x130609[_0x1606db(0xa7)]===0x0)throw CliErrors[_0x1606db(0xa3)](_0x1606db(0xb2)+_0x21c339+'.');let _0x4e6d95;const _0x32f39d=_0x21c238[_0x1606db(0x93)](_0x1606db(0x77));if(_0x32f39d){if(!_0x130609[_0x1606db(0xaf)](_0x32f39d))throw CliErrors[_0x1606db(0xa3)]('Operation\x20type\x20\x22'+_0x32f39d+_0x1606db(0xb0)+_0x21c339+'.\x20'+(_0x1606db(0xc8)+_0x130609['join'](',\x20')));_0x4e6d95=_0x32f39d;}else{if(_0x21c238[_0x1606db(0x7f)])throw CliErrors[_0x1606db(0xa3)](_0x1606db(0xa6));const _0x5f40de=await promptSelect(_0x1606db(0x9f),_0x130609);_0x4e6d95=_0x130609[_0x5f40de]??_0x130609[0x0];}let _0x489f1f=normalizeHookFunctionNode(_0x21c238['str']('function-node'));if(!_0x489f1f){if(_0x21c238[_0x1606db(0x93)]('function-node'))throw CliErrors[_0x1606db(0xa3)](_0x1606db(0x74));if(_0x21c238[_0x1606db(0x7f)])throw CliErrors[_0x1606db(0xa3)](_0x1606db(0x75));const _0x482007=await promptSelect('Select\x20trigger\x20node:',['before',_0x1606db(0xb3)]);_0x489f1f=[_0x1606db(0x95),_0x1606db(0xb3)][_0x482007]??_0x1606db(0x95);}return{'alias':_0x45dd22,'datasetCode':_0x59f940,'datasetId':_0xbaf0bf,'operationType':_0x4e6d95,'functionNode':_0x489f1f};}async function promptSelect(_0x51de10,_0x954568){const _0x59ac9c=a30_0x3f3386;if(_0x954568[_0x59ac9c(0xa7)]===0x1)return 0x0;for(const [_0x49ca90,_0x4204ee]of _0x954568[_0x59ac9c(0xb4)]()){process[_0x59ac9c(0xae)][_0x59ac9c(0x84)]('\x20\x20'+(_0x49ca90+0x1)+'.\x20'+_0x4204ee+'\x0a');}const _0x5419a6=createInterface({'input':process['stdin'],'output':process['stderr']});while(!![]){const _0x57a348=await new Promise(_0x45dbb2=>{const _0x520c4e=_0x59ac9c;_0x5419a6[_0x520c4e(0xbd)](_0x51de10+'\x20',_0x45dbb2);}),_0x5a88b7=Number[_0x59ac9c(0x80)](_0x57a348[_0x59ac9c(0xa1)](),0xa);if(Number[_0x59ac9c(0x71)](_0x5a88b7)&&_0x5a88b7>=0x1&&_0x5a88b7<=_0x954568[_0x59ac9c(0xa7)])return _0x5419a6[_0x59ac9c(0x9c)](),_0x5a88b7-0x1;process[_0x59ac9c(0xae)][_0x59ac9c(0x84)](_0x59ac9c(0x9a)+_0x954568[_0x59ac9c(0xa7)]+'.\x0a');}}function buildFilePath(_0x59a855,_0x3f88f3,_0x43c3fd,_0x2fc4d9){const _0x4ffcf8=a30_0x3f3386;if(_0x3f88f3==='HOOK'){if(!_0x2fc4d9)throw CliErrors['validation']('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x203af4=_0x2fc4d9[_0x4ffcf8(0xa8)]??_0x2fc4d9[_0x4ffcf8(0x86)];return join(_0x59a855['scriptsRootDir'],_0x4ffcf8(0xb9),_0x203af4,_0x2fc4d9[_0x4ffcf8(0xa4)],_0x2fc4d9[_0x4ffcf8(0xc7)],_0x43c3fd+_0x4ffcf8(0x8a));}return join(_0x59a855[_0x4ffcf8(0x85)],_0x3f88f3,_0x43c3fd+'.js');}export function generateTemplate(_0x340136,_0x3c4047,_0x253a9c,_0x2f9664,_0x223029){const _0x555235=a30_0x3f3386,_0x2d3cc9=_0x2f9664?.['trim']()||_0x555235(0xb5);if(_0x340136===_0x555235(0x90))return _0x555235(0xc6)+_0x2d3cc9+_0x555235(0xc3)+_0x3c4047+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x3c4047+_0x555235(0xb7)+_0x3c4047+_0x555235(0x9e);if(_0x340136===_0x555235(0x9b))return'/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x2d3cc9+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/'+_0x253a9c+'/'+_0x3c4047+'\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x3c4047+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(!_0x223029)throw CliErrors['validation'](_0x555235(0x7b));return _0x555235(0x78)+_0x2d3cc9+_0x555235(0x81)+_0x253a9c+'/'+_0x223029['datasetCode']+'/'+_0x223029[_0x555235(0xa4)]+_0x555235(0x76)+_0x223029['functionNode']+_0x555235(0x94)+_0x3c4047+_0x555235(0x9e);}
@@ -1 +1 @@
1
- const a30_0x1227c1=a30_0x51fb;(function(_0x2a24cc,_0x2b496e){const _0x1bc683=a30_0x51fb,_0x5afca5=_0x2a24cc();while(!![]){try{const _0x5a34f2=-parseInt(_0x1bc683(0x200))/0x1*(parseInt(_0x1bc683(0x1f1))/0x2)+parseInt(_0x1bc683(0x201))/0x3*(parseInt(_0x1bc683(0x1f5))/0x4)+-parseInt(_0x1bc683(0x1fe))/0x5+-parseInt(_0x1bc683(0x1f8))/0x6+parseInt(_0x1bc683(0x1fd))/0x7*(-parseInt(_0x1bc683(0x216))/0x8)+-parseInt(_0x1bc683(0x1eb))/0x9+parseInt(_0x1bc683(0x1fb))/0xa*(parseInt(_0x1bc683(0x211))/0xb);if(_0x5a34f2===_0x2b496e)break;else _0x5afca5['push'](_0x5afca5['shift']());}catch(_0x49a516){_0x5afca5['push'](_0x5afca5['shift']());}}}(a30_0x1f1d,0x5219c));function a30_0x1f1d(){const _0x3d4baf=['21TpjLij','2079cTjlLo','datasetCode','stderr','operationType','validation','Remote\x20script\x20missing\x20content.','No\x20remote\x20BFF\x20scripts\x20found.','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','hookLocation','write','str','bff','yes','skipped','question','filePath','11OXDIdg','apiDir','hash','stringify','COMMON','114280cedSTC','Force\x20overwrite\x20local\x20unsynced\x20changes','scriptType','conflict','lockKey','Force\x20pull\x20cancelled.','local\x20unsynced\x20changes','functionName','push','Pull\x20complete:\x20','scriptContent','GET','map','\x22\x20not\x20found\x20after\x20ensureLockScope.','bool','close','alias','parse','string','length','all','lockFilePath','includes','force','message','scriptsRoot','pull','nonInteractive','\x20failed','appCode','would_pull','3415383OwAqkP','functionNode','ENDPOINT','Pull\x20only\x20this\x20script\x20type','apps','Lock\x20scope\x20for\x20app\x20\x22','19954pfgkNs','type','functions','cancelled','3020hNuWtm','version','toISOString','1420890KRpGeO','\x20pulled,\x20','lastSync','17621960uhUToV','\x20remote\x20BFF\x20script(s)\x20for\x20pull','238OldMYX','3188090assWAI','stdin'];a30_0x1f1d=function(){return _0x3d4baf;};return a30_0x1f1d();}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 a30_0x51fb(_0x47a872,_0x2a610d){_0x47a872=_0x47a872-0x1ea;const _0x1f1df1=a30_0x1f1d();let _0x51fbfb=_0x1f1df1[_0x47a872];return _0x51fbfb;}import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a30_0x1227c1(0x20c),'command':'pull','description':a30_0x1227c1(0x208),'risk':a30_0x1227c1(0x20a),'flags':[{'name':a30_0x1227c1(0x1f2),'type':a30_0x1227c1(0x228),'description':a30_0x1227c1(0x1ee),'enum':[a30_0x1227c1(0x215),a30_0x1227c1(0x1ed),'HOOK']},{'name':a30_0x1227c1(0x22d),'type':'boolean','description':a30_0x1227c1(0x217)}],async 'dryRun'(_0x485e94){const _0x1b0404=a30_0x1227c1,_0x5aafad=loadBffProjectConfig(_0x485e94['appCode']),_0x3854fb=await readBffLockFile(_0x5aafad[_0x1b0404(0x22b)]),{appLock:_0x101e65}=ensureLockScope(_0x3854fb??createEmptyBffLock(),_0x485e94['appCode'],_0x5aafad[_0x1b0404(0x22f)],_0x1b0404(0x230)),_0x4e1c73=normalizeBffType(_0x485e94[_0x1b0404(0x20b)]('type'))??undefined,_0x4de593=buildDatasetCodeToAliasMap(_0x485e94[_0x1b0404(0x212)],_0x485e94[_0x1b0404(0x233)]),[_0xd06a8c,_0x42385d]=await Promise[_0x1b0404(0x22a)]([listBffScripts(_0x485e94[_0x1b0404(0x233)],_0x4e1c73),getBffScriptStatistics(_0x485e94['appCode'])]),_0x5eca0a=createHookLocationMap(_0x42385d),_0x3a95a8=[];for(const _0x18fa4e of _0xd06a8c){const _0x1cbc3c=resolveRemoteScriptTarget(_0x5aafad,_0x18fa4e,_0x5eca0a,_0x101e65[_0x1b0404(0x1f3)],_0x4de593);if(!_0x1cbc3c){_0x3a95a8[_0x1b0404(0x21e)]({'scriptType':_0x18fa4e[_0x1b0404(0x218)],'functionName':_0x18fa4e[_0x1b0404(0x21d)]??'','status':_0x1b0404(0x20e),'reason':'unresolvable\x20target\x20path'});continue;}const _0x559997=_0x101e65[_0x1b0404(0x1f3)][_0x1cbc3c['lockKey']],_0x595265=_0x18fa4e['scriptContent']!=null?computeContentHash(_0x18fa4e['scriptContent']):undefined,_0xe31f88=await hasUnsyncedLocalChanges(_0x1cbc3c[_0x1b0404(0x210)],_0x559997,_0x595265);_0x3a95a8[_0x1b0404(0x21e)]({'lockKey':_0x1cbc3c[_0x1b0404(0x21a)],'filePath':_0x1cbc3c[_0x1b0404(0x210)],'remoteId':_0x18fa4e['id']??null,'status':_0xe31f88?_0x1b0404(0x219):_0x1b0404(0x1ea)});}return{'method':_0x1b0404(0x221),'url':'/api/management/library/scripts/list?appCode='+_0x485e94[_0x1b0404(0x233)]+(_0x4e1c73?'&type='+_0x4e1c73:''),'body':{'appCode':_0x485e94[_0x1b0404(0x233)],'filterType':_0x4e1c73??null,'files':_0x3a95a8},'description':'Would\x20inspect\x20'+_0x3a95a8[_0x1b0404(0x229)]+_0x1b0404(0x1fc)};},async 'execute'(_0x1a5c12){const _0x110823=a30_0x1227c1,_0x24b5f2=loadBffProjectConfig(_0x1a5c12[_0x110823(0x233)]),_0x51527c=await readBffLockFile(_0x24b5f2[_0x110823(0x22b)]),{lockData:_0x549f37,appLock:_0x48ed2e}=ensureLockScope(_0x51527c??createEmptyBffLock(),_0x1a5c12['appCode'],_0x24b5f2[_0x110823(0x22f)],'pull'),_0x4daa99=normalizeBffType(_0x1a5c12[_0x110823(0x20b)]('type'))??undefined;if(_0x1a5c12[_0x110823(0x20b)]('type')&&!_0x4daa99)throw CliErrors[_0x110823(0x205)]('--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.');const [_0xf03967,_0x131185]=await Promise[_0x110823(0x22a)]([listBffScripts(_0x1a5c12[_0x110823(0x233)],_0x4daa99),getBffScriptStatistics(_0x1a5c12[_0x110823(0x233)])]);if(_0xf03967[_0x110823(0x229)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x110823(0x207)};const _0x5d57b8=_0x1a5c12[_0x110823(0x224)]('force');if(_0x5d57b8&&!_0x1a5c12[_0x110823(0x231)]){const _0x45f146=await confirmForce();if(!_0x45f146)throw CliErrors[_0x110823(0x1f4)](_0x110823(0x21b));}if(_0x5d57b8&&_0x1a5c12[_0x110823(0x231)]){}const _0x36401c=buildDatasetCodeToAliasMap(_0x1a5c12['apiDir'],_0x1a5c12['appCode']),_0x4df1de=createHookLocationMap(_0x131185),_0x47a2b0=JSON[_0x110823(0x227)](JSON[_0x110823(0x214)](_0x549f37)),_0x3c2b7b=_0x1a5c12[_0x110823(0x233)],_0x522fb7=_0x47a2b0[_0x110823(0x1ef)][_0x3c2b7b];if(!_0x522fb7)throw new Error(_0x110823(0x1f0)+_0x3c2b7b+_0x110823(0x223));const _0x1d32c2=[],_0xf82deb=[],_0x596474=[];for(const _0x2d564e of _0xf03967){const _0x355b9b=resolveRemoteScriptTarget(_0x24b5f2,_0x2d564e,_0x4df1de,_0x48ed2e['functions'],_0x36401c);if(!_0x355b9b){_0xf82deb[_0x110823(0x21e)]({'lockKey':_0x2d564e['scriptType']+'/'+_0x2d564e[_0x110823(0x21d)],'reason':'unresolvable\x20target\x20path'});continue;}const _0x6a300e=_0x48ed2e[_0x110823(0x1f3)][_0x355b9b[_0x110823(0x21a)]];try{if(!_0x2d564e['id'])throw new Error('Remote\x20script\x20missing\x20id.');if(_0x2d564e['scriptContent']==null)throw new Error(_0x110823(0x206));const _0x2b4a08=_0x2d564e[_0x110823(0x220)],_0x1f47f5=computeContentHash(_0x2b4a08);if(!_0x5d57b8){const _0x25f3aa=await hasUnsyncedLocalChanges(_0x355b9b[_0x110823(0x210)],_0x6a300e,_0x1f47f5);if(_0x25f3aa){_0xf82deb[_0x110823(0x21e)]({'lockKey':_0x355b9b['lockKey'],'reason':_0x110823(0x21c)});continue;}}await ensureParentDirectory(_0x355b9b[_0x110823(0x210)]),await writeFile(_0x355b9b['filePath'],_0x2b4a08,'utf8');const _0xdd0d={'hash':_0x1f47f5,'remoteId':_0x2d564e['id'],'version':_0x2d564e[_0x110823(0x1f6)]};_0x355b9b['type']==='HOOK'&&_0x355b9b['hookLocation']&&(_0xdd0d[_0x110823(0x226)]=_0x355b9b[_0x110823(0x209)][_0x110823(0x226)],_0xdd0d['datasetCode']=_0x355b9b[_0x110823(0x209)][_0x110823(0x202)],_0xdd0d[_0x110823(0x204)]=_0x355b9b['hookLocation'][_0x110823(0x204)],_0xdd0d[_0x110823(0x1ec)]=_0x355b9b[_0x110823(0x209)][_0x110823(0x1ec)]),_0x522fb7['functions'][_0x355b9b[_0x110823(0x21a)]]=_0xdd0d,_0x1d32c2[_0x110823(0x21e)]({'lockKey':_0x355b9b[_0x110823(0x21a)],'remoteId':_0x2d564e['id']});}catch(_0x51dc2c){_0x596474[_0x110823(0x21e)]({'lockKey':_0x355b9b['lockKey'],'error':_0x51dc2c instanceof Error?_0x51dc2c[_0x110823(0x22e)]:String(_0x51dc2c)});}}return _0x522fb7[_0x110823(0x1fa)]=new Date()[_0x110823(0x1f7)](),await writeBffLockFile(_0x24b5f2[_0x110823(0x22b)],_0x47a2b0),{'ok':_0x596474[_0x110823(0x229)]===0x0,'data':{'pulled':_0x1d32c2,'skipped':_0xf82deb,'failed':_0x596474},'message':_0x110823(0x21f)+_0x1d32c2['length']+_0x110823(0x1f9)+_0xf82deb['length']+'\x20skipped,\x20'+_0x596474[_0x110823(0x229)]+_0x110823(0x232)};}};async function hasUnsyncedLocalChanges(_0x3c9110,_0x59e9d0,_0xedfdaf){const _0x4110a1=a30_0x1227c1;if(!await fileExists(_0x3c9110))return![];const _0x201897=await computeFileHash(_0x3c9110);if(!_0x59e9d0)return _0xedfdaf?_0x201897!==_0xedfdaf:!![];return _0x201897!==_0x59e9d0[_0x4110a1(0x213)];}function buildDatasetCodeToAliasMap(_0x1ef936,_0x306ab4){const _0x1c1382=a30_0x1227c1,_0x2e6321=loadAliasMap(_0x1ef936,undefined,resolveApiFilePath(_0x1ef936,_0x306ab4));return new Map(_0x2e6321[_0x1c1382(0x222)](_0x20bcf7=>[_0x20bcf7[_0x1c1382(0x202)],_0x20bcf7[_0x1c1382(0x226)]]));}async function confirmForce(){const _0x48744c=a30_0x1227c1,_0x10dc4e=createInterface({'input':process[_0x48744c(0x1ff)],'output':process[_0x48744c(0x203)]}),_0x2a7399=await new Promise(_0x290f97=>{const _0x5bf377=_0x48744c;_0x10dc4e[_0x5bf377(0x20f)]('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0x290f97);});return _0x10dc4e[_0x48744c(0x225)](),['y',_0x48744c(0x20d)][_0x48744c(0x22c)](_0x2a7399['trim']()['toLowerCase']());}
1
+ const a31_0x588169=a31_0x30aa;(function(_0x4e628d,_0x3dfe14){const _0x33f88d=a31_0x30aa,_0x451b15=_0x4e628d();while(!![]){try{const _0x30716f=-parseInt(_0x33f88d(0x150))/0x1+-parseInt(_0x33f88d(0x158))/0x2*(-parseInt(_0x33f88d(0x13f))/0x3)+parseInt(_0x33f88d(0x145))/0x4*(-parseInt(_0x33f88d(0x149))/0x5)+-parseInt(_0x33f88d(0x16d))/0x6*(parseInt(_0x33f88d(0x172))/0x7)+parseInt(_0x33f88d(0x162))/0x8*(parseInt(_0x33f88d(0x165))/0x9)+-parseInt(_0x33f88d(0x15b))/0xa+parseInt(_0x33f88d(0x156))/0xb;if(_0x30716f===_0x3dfe14)break;else _0x451b15['push'](_0x451b15['shift']());}catch(_0x544a38){_0x451b15['push'](_0x451b15['shift']());}}}(a31_0x11bb,0xce205));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';function a31_0x11bb(){const _0x494230=['bool','Force\x20pull\x20cancelled.','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','filePath','skipped','stderr','123ZwWriT','close','datasetCode','lastSync','all','conflict','24eGAqBX','scriptsRoot','message','version','564105DHhHEK','scriptContent','pull','parse','\x22\x20not\x20found\x20after\x20ensureLockScope.','push','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','141329GVJKBt','apiDir','hash','COMMON','lockFilePath','type','4550018TqVfCU','string','75938ZSSboS','force','\x20failed','7215440ITxfkb','includes','lockKey','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','toLowerCase','length','/api/management/library/scripts/list?appCode=','16cNrYZC','would_pull','&type=','4325274JjyREH','No\x20remote\x20BFF\x20scripts\x20found.','operationType','map','\x20remote\x20BFF\x20script(s)\x20for\x20pull','trim','appCode','scriptType','3284682vBXEGB','HOOK','functions','local\x20unsynced\x20changes','str','7PiJsxX','boolean','Remote\x20script\x20missing\x20id.','\x20pulled,\x20','hookLocation','functionNode','functionName','Lock\x20scope\x20for\x20app\x20\x22','Would\x20inspect\x20','alias','yes'];a31_0x11bb=function(){return _0x494230;};return a31_0x11bb();}import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':'bff','command':a31_0x588169(0x14b),'description':a31_0x588169(0x14f),'risk':'write','flags':[{'name':a31_0x588169(0x155),'type':a31_0x588169(0x157),'description':'Pull\x20only\x20this\x20script\x20type','enum':[a31_0x588169(0x153),'ENDPOINT',a31_0x588169(0x16e)]},{'name':'force','type':a31_0x588169(0x173),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x4e441d){const _0x55738f=a31_0x588169,_0x57fcaf=loadBffProjectConfig(_0x4e441d[_0x55738f(0x16b)]),_0x58dd51=await readBffLockFile(_0x57fcaf['lockFilePath']),{appLock:_0x228af8}=ensureLockScope(_0x58dd51??createEmptyBffLock(),_0x4e441d[_0x55738f(0x16b)],_0x57fcaf['scriptsRoot'],_0x55738f(0x14b)),_0x3586ec=normalizeBffType(_0x4e441d[_0x55738f(0x171)](_0x55738f(0x155)))??undefined,_0xc40218=buildDatasetCodeToAliasMap(_0x4e441d[_0x55738f(0x151)],_0x4e441d[_0x55738f(0x16b)]),[_0x164fc0,_0x5c1fec]=await Promise['all']([listBffScripts(_0x4e441d['appCode'],_0x3586ec),getBffScriptStatistics(_0x4e441d[_0x55738f(0x16b)])]),_0x4eeace=createHookLocationMap(_0x5c1fec),_0x5d5bc1=[];for(const _0xf55a11 of _0x164fc0){const _0xb9363d=resolveRemoteScriptTarget(_0x57fcaf,_0xf55a11,_0x4eeace,_0x228af8[_0x55738f(0x16f)],_0xc40218);if(!_0xb9363d){_0x5d5bc1['push']({'scriptType':_0xf55a11['scriptType'],'functionName':_0xf55a11[_0x55738f(0x178)]??'','status':_0x55738f(0x13d),'reason':'unresolvable\x20target\x20path'});continue;}const _0x552c42=_0x228af8[_0x55738f(0x16f)][_0xb9363d[_0x55738f(0x15d)]],_0x3d2cff=_0xf55a11[_0x55738f(0x14a)]!=null?computeContentHash(_0xf55a11[_0x55738f(0x14a)]):undefined,_0x539da3=await hasUnsyncedLocalChanges(_0xb9363d[_0x55738f(0x13c)],_0x552c42,_0x3d2cff);_0x5d5bc1[_0x55738f(0x14e)]({'lockKey':_0xb9363d[_0x55738f(0x15d)],'filePath':_0xb9363d['filePath'],'remoteId':_0xf55a11['id']??null,'status':_0x539da3?_0x55738f(0x144):_0x55738f(0x163)});}return{'method':'GET','url':_0x55738f(0x161)+_0x4e441d['appCode']+(_0x3586ec?_0x55738f(0x164)+_0x3586ec:''),'body':{'appCode':_0x4e441d[_0x55738f(0x16b)],'filterType':_0x3586ec??null,'files':_0x5d5bc1},'description':_0x55738f(0x136)+_0x5d5bc1[_0x55738f(0x160)]+_0x55738f(0x169)};},async 'execute'(_0x4b345e){const _0x454c62=a31_0x588169,_0x2ecf4a=loadBffProjectConfig(_0x4b345e[_0x454c62(0x16b)]),_0x141b51=await readBffLockFile(_0x2ecf4a[_0x454c62(0x154)]),{lockData:_0x6e2b11,appLock:_0x14ee8b}=ensureLockScope(_0x141b51??createEmptyBffLock(),_0x4b345e['appCode'],_0x2ecf4a[_0x454c62(0x146)],_0x454c62(0x14b)),_0x3e995c=normalizeBffType(_0x4b345e[_0x454c62(0x171)](_0x454c62(0x155)))??undefined;if(_0x4b345e[_0x454c62(0x171)](_0x454c62(0x155))&&!_0x3e995c)throw CliErrors['validation'](_0x454c62(0x15e));const [_0x530ca5,_0x2e0947]=await Promise[_0x454c62(0x143)]([listBffScripts(_0x4b345e[_0x454c62(0x16b)],_0x3e995c),getBffScriptStatistics(_0x4b345e[_0x454c62(0x16b)])]);if(_0x530ca5[_0x454c62(0x160)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x454c62(0x166)};const _0x2e230c=_0x4b345e[_0x454c62(0x139)](_0x454c62(0x159));if(_0x2e230c&&!_0x4b345e['nonInteractive']){const _0x226895=await confirmForce();if(!_0x226895)throw CliErrors['cancelled'](_0x454c62(0x13a));}if(_0x2e230c&&_0x4b345e['nonInteractive']){}const _0x30b19e=buildDatasetCodeToAliasMap(_0x4b345e[_0x454c62(0x151)],_0x4b345e[_0x454c62(0x16b)]),_0x577445=createHookLocationMap(_0x2e0947),_0x44c897=JSON[_0x454c62(0x14c)](JSON['stringify'](_0x6e2b11)),_0x1bc839=_0x4b345e[_0x454c62(0x16b)],_0x444318=_0x44c897['apps'][_0x1bc839];if(!_0x444318)throw new Error(_0x454c62(0x135)+_0x1bc839+_0x454c62(0x14d));const _0x22e7ea=[],_0xbb90fe=[],_0x7dc2bf=[];for(const _0x20b704 of _0x530ca5){const _0x54c5ab=resolveRemoteScriptTarget(_0x2ecf4a,_0x20b704,_0x577445,_0x14ee8b[_0x454c62(0x16f)],_0x30b19e);if(!_0x54c5ab){_0xbb90fe['push']({'lockKey':_0x20b704[_0x454c62(0x16c)]+'/'+_0x20b704[_0x454c62(0x178)],'reason':'unresolvable\x20target\x20path'});continue;}const _0x2fe894=_0x14ee8b[_0x454c62(0x16f)][_0x54c5ab[_0x454c62(0x15d)]];try{if(!_0x20b704['id'])throw new Error(_0x454c62(0x174));if(_0x20b704[_0x454c62(0x14a)]==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x33566e=_0x20b704['scriptContent'],_0x388fdf=computeContentHash(_0x33566e);if(!_0x2e230c){const _0x4beaf0=await hasUnsyncedLocalChanges(_0x54c5ab['filePath'],_0x2fe894,_0x388fdf);if(_0x4beaf0){_0xbb90fe[_0x454c62(0x14e)]({'lockKey':_0x54c5ab[_0x454c62(0x15d)],'reason':_0x454c62(0x170)});continue;}}await ensureParentDirectory(_0x54c5ab[_0x454c62(0x13c)]),await writeFile(_0x54c5ab[_0x454c62(0x13c)],_0x33566e,'utf8');const _0x253beb={'hash':_0x388fdf,'remoteId':_0x20b704['id'],'version':_0x20b704[_0x454c62(0x148)]};_0x54c5ab['type']===_0x454c62(0x16e)&&_0x54c5ab[_0x454c62(0x176)]&&(_0x253beb['alias']=_0x54c5ab[_0x454c62(0x176)][_0x454c62(0x137)],_0x253beb[_0x454c62(0x141)]=_0x54c5ab[_0x454c62(0x176)][_0x454c62(0x141)],_0x253beb[_0x454c62(0x167)]=_0x54c5ab[_0x454c62(0x176)]['operationType'],_0x253beb['functionNode']=_0x54c5ab[_0x454c62(0x176)][_0x454c62(0x177)]),_0x444318['functions'][_0x54c5ab['lockKey']]=_0x253beb,_0x22e7ea['push']({'lockKey':_0x54c5ab[_0x454c62(0x15d)],'remoteId':_0x20b704['id']});}catch(_0x4bf79b){_0x7dc2bf[_0x454c62(0x14e)]({'lockKey':_0x54c5ab[_0x454c62(0x15d)],'error':_0x4bf79b instanceof Error?_0x4bf79b[_0x454c62(0x147)]:String(_0x4bf79b)});}}return _0x444318[_0x454c62(0x142)]=new Date()['toISOString'](),await writeBffLockFile(_0x2ecf4a[_0x454c62(0x154)],_0x44c897),{'ok':_0x7dc2bf[_0x454c62(0x160)]===0x0,'data':{'pulled':_0x22e7ea,'skipped':_0xbb90fe,'failed':_0x7dc2bf},'message':'Pull\x20complete:\x20'+_0x22e7ea[_0x454c62(0x160)]+_0x454c62(0x175)+_0xbb90fe[_0x454c62(0x160)]+'\x20skipped,\x20'+_0x7dc2bf[_0x454c62(0x160)]+_0x454c62(0x15a)};}};function a31_0x30aa(_0x4c0d18,_0x5a10dc){_0x4c0d18=_0x4c0d18-0x135;const _0x11bb49=a31_0x11bb();let _0x30aa48=_0x11bb49[_0x4c0d18];return _0x30aa48;}async function hasUnsyncedLocalChanges(_0x3b6751,_0x4d9cb3,_0x3e0638){const _0x7069cb=a31_0x588169;if(!await fileExists(_0x3b6751))return![];const _0x4e7d3d=await computeFileHash(_0x3b6751);if(!_0x4d9cb3)return _0x3e0638?_0x4e7d3d!==_0x3e0638:!![];return _0x4e7d3d!==_0x4d9cb3[_0x7069cb(0x152)];}function buildDatasetCodeToAliasMap(_0x585ea3,_0x5cc32f){const _0x3cd9cc=a31_0x588169,_0x5a91fd=loadAliasMap(_0x585ea3,undefined,resolveApiFilePath(_0x585ea3,_0x5cc32f));return new Map(_0x5a91fd[_0x3cd9cc(0x168)](_0x5f3bd8=>[_0x5f3bd8['datasetCode'],_0x5f3bd8[_0x3cd9cc(0x137)]]));}async function confirmForce(){const _0x24cfc5=a31_0x588169,_0x6919da=createInterface({'input':process['stdin'],'output':process[_0x24cfc5(0x13e)]}),_0x1a0375=await new Promise(_0x5f219c=>{const _0x582d24=_0x24cfc5;_0x6919da['question'](_0x582d24(0x13b),_0x5f219c);});return _0x6919da[_0x24cfc5(0x140)](),['y',_0x24cfc5(0x138)][_0x24cfc5(0x15c)](_0x1a0375[_0x24cfc5(0x16a)]()[_0x24cfc5(0x15f)]());}
@@ -1 +1 @@
1
- function a31_0x1d99(){const _0x3d3e21=['Push\x20complete:\x20','would_push','Run\x20`','2mqdJcP','aliasToDatasetCode','/api/management/library/scripts/save','9bvCFTt','HOOK','functionNode','Cannot\x20resolve\x20dataset\x20for\x20\x22','\x22.\x20','set','version','filePath','apiDir','lastSync','appCode','hash','scriptsRoot','boolean','code','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','1769647TVaXUV','type','5931336oTagff','map','\x20local\x20BFF\x20script(s)\x20for\x20push','values','No\x20local\x20BFF\x20functions\x20found.','unchanged','Force\x20push\x20ignoring\x20hash\x20protection','bool','high-risk-write','622861YRRKyq','string','length','toISOString','datasetId','operationType','filter','lockFilePath','180SRVfmu','Local\x20function\x20not\x20found:\x20','4llVrPB','\x20skipped,\x20','datasetCodeToId','update','message',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','create','push','Incomplete\x20HOOK\x20path:\x20','POST','remoteId','5371452GYUirB','lockKey','1861027fouBoJ','str','name','get','validation','datasetCode','functions','3246535JFyELW','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','Push\x20local\x20BFF\x20scripts\x20to\x20remote','utf8','bff','has','alias','description','force','1373103asqYjq'];a31_0x1d99=function(){return _0x3d3e21;};return a31_0x1d99();}const a31_0x3e9e83=a31_0x2084;(function(_0x307df7,_0xa511de){const _0x2d5eb2=a31_0x2084,_0x34d17a=_0x307df7();while(!![]){try{const _0x504298=-parseInt(_0x2d5eb2(0x1da))/0x1*(-parseInt(_0x2d5eb2(0x205))/0x2)+parseInt(_0x2d5eb2(0x201))/0x3*(-parseInt(_0x2d5eb2(0x1e4))/0x4)+-parseInt(_0x2d5eb2(0x1f8))/0x5+-parseInt(_0x2d5eb2(0x1ef))/0x6+-parseInt(_0x2d5eb2(0x1f1))/0x7+-parseInt(_0x2d5eb2(0x1d1))/0x8*(parseInt(_0x2d5eb2(0x208))/0x9)+parseInt(_0x2d5eb2(0x1e2))/0xa*(parseInt(_0x2d5eb2(0x1cf))/0xb);if(_0x504298===_0xa511de)break;else _0x34d17a['push'](_0x34d17a['shift']());}catch(_0x3874c6){_0x34d17a['push'](_0x34d17a['shift']());}}}(a31_0x1d99,0x7c4bf));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}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';function a31_0x2084(_0x4fcbc,_0x7bc853){_0x4fcbc=_0x4fcbc-0x1c2;const _0x1d99b3=a31_0x1d99();let _0x208470=_0x1d99b3[_0x4fcbc];return _0x208470;}import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':a31_0x3e9e83(0x1fc),'command':a31_0x3e9e83(0x1eb),'description':a31_0x3e9e83(0x1fa),'risk':a31_0x3e9e83(0x1d9),'flags':[{'name':a31_0x3e9e83(0x1d0),'type':a31_0x3e9e83(0x1db),'description':'Push\x20only\x20this\x20script\x20type','enum':['COMMON','ENDPOINT','HOOK']},{'name':a31_0x3e9e83(0x1f3),'type':a31_0x3e9e83(0x1db),'description':'Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)'},{'name':a31_0x3e9e83(0x200),'type':a31_0x3e9e83(0x1cc),'description':a31_0x3e9e83(0x1d7)}],async 'dryRun'(_0x55608e){const _0x48f06b=a31_0x3e9e83,_0x320a3d=loadBffProjectConfig(_0x55608e[_0x48f06b(0x1c9)]),_0x30397e=await readBffLockFile(_0x320a3d[_0x48f06b(0x1e1)]),{appLock:_0x59f1da}=ensureLockScope(_0x30397e??createEmptyBffLock(),_0x55608e[_0x48f06b(0x1c9)],_0x320a3d[_0x48f06b(0x1cb)],_0x48f06b(0x1eb)),_0x327a5c=await getTargetFunctions(_0x320a3d,_0x55608e),_0x3c59f8=_0x55608e['bool'](_0x48f06b(0x200)),_0x391c54=[];for(const _0x1409f5 of _0x327a5c){const _0x4ec2cb=await computeFileHash(_0x1409f5[_0x48f06b(0x1c6)]),_0x2aa559=_0x59f1da[_0x48f06b(0x1f7)][_0x1409f5[_0x48f06b(0x1f0)]],_0x377b2c=!!_0x2aa559&&_0x2aa559['hash']===_0x4ec2cb;_0x391c54['push']({'lockKey':_0x1409f5['lockKey'],'filePath':_0x1409f5[_0x48f06b(0x1c6)],'remoteId':_0x2aa559?.[_0x48f06b(0x1ee)]??null,'mode':_0x2aa559?.[_0x48f06b(0x1ee)]?_0x48f06b(0x1e7):_0x48f06b(0x1ea),'status':!_0x3c59f8&&_0x377b2c?'unchanged':_0x48f06b(0x203)});}return{'method':_0x48f06b(0x1ed),'url':_0x48f06b(0x207),'body':{'appCode':_0x55608e[_0x48f06b(0x1c9)],'force':_0x3c59f8,'files':_0x391c54},'description':'Would\x20inspect\x20'+_0x391c54['length']+_0x48f06b(0x1d3)};},async 'execute'(_0x15b7cd){const _0x391697=a31_0x3e9e83,_0x42607c=loadBffProjectConfig(_0x15b7cd[_0x391697(0x1c9)]),_0x5de5d5=await readBffLockFile(_0x42607c[_0x391697(0x1e1)]),{lockData:_0x4f56fc,appLock:_0x36534c}=ensureLockScope(_0x5de5d5??createEmptyBffLock(),_0x15b7cd[_0x391697(0x1c9)],_0x42607c[_0x391697(0x1cb)],'push'),_0x487ecd=await getTargetFunctions(_0x42607c,_0x15b7cd);if(_0x487ecd[_0x391697(0x1dc)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0x391697(0x1d5)};const _0x312b21=_0x15b7cd[_0x391697(0x1d8)](_0x391697(0x200)),_0x470450=await buildHookMaps(_0x15b7cd[_0x391697(0x1c9)],_0x15b7cd[_0x391697(0x1c7)],_0x487ecd,_0x36534c),_0x48125b=[],_0x2dff97=[],_0x409908=[];for(const _0x217e68 of _0x487ecd){const _0x20f991=await computeFileHash(_0x217e68[_0x391697(0x1c6)]),_0x49458f=_0x36534c['functions'][_0x217e68[_0x391697(0x1f0)]];if(!_0x312b21&&_0x49458f&&_0x49458f[_0x391697(0x1ca)]===_0x20f991){_0x2dff97[_0x391697(0x1eb)]({'lockKey':_0x217e68[_0x391697(0x1f0)],'reason':_0x391697(0x1d6)});continue;}try{await uploadSingleFunction(_0x15b7cd[_0x391697(0x1c9)],_0x217e68,_0x36534c,_0x470450);const _0x29b2a6=_0x36534c[_0x391697(0x1f7)][_0x217e68[_0x391697(0x1f0)]];_0x48125b[_0x391697(0x1eb)]({'lockKey':_0x217e68['lockKey'],'remoteId':_0x29b2a6?.[_0x391697(0x1ee)]??0x0});}catch(_0x2203cd){_0x409908[_0x391697(0x1eb)]({'lockKey':_0x217e68['lockKey'],'error':_0x2203cd instanceof Error?_0x2203cd[_0x391697(0x1e8)]:String(_0x2203cd)});}}return _0x36534c[_0x391697(0x1c8)]=new Date()[_0x391697(0x1dd)](),await writeBffLockFile(_0x42607c[_0x391697(0x1e1)],_0x4f56fc),{'ok':_0x409908[_0x391697(0x1dc)]===0x0,'data':{'uploaded':_0x48125b,'skipped':_0x2dff97,'failed':_0x409908},'message':_0x391697(0x202)+_0x48125b[_0x391697(0x1dc)]+'\x20uploaded,\x20'+_0x2dff97[_0x391697(0x1dc)]+_0x391697(0x1e5)+_0x409908[_0x391697(0x1dc)]+'\x20failed'};}};async function getTargetFunctions(_0x58038d,_0xc8a3bf){const _0x13145c=a31_0x3e9e83,_0x46df58=_0xc8a3bf['str'](_0x13145c(0x1d0)),_0x455eb8=_0xc8a3bf[_0x13145c(0x1f2)](_0x13145c(0x1f3)),_0x40c267=normalizeBffType(_0x46df58)??undefined;if(_0x455eb8&&!_0x40c267)throw CliErrors[_0x13145c(0x1f5)](_0x13145c(0x1ce));const _0x56923b=await scanLocalBffFunctions(_0x58038d,_0x40c267);if(_0x455eb8){const _0x3b673d=_0x56923b[_0x13145c(0x1e0)](_0x317a4b=>_0x317a4b[_0x13145c(0x1f3)]===_0x455eb8);if(_0x3b673d[_0x13145c(0x1dc)]===0x0)throw CliErrors[_0x13145c(0x1f5)](_0x13145c(0x1e3)+_0x40c267+'/'+_0x455eb8);return _0x3b673d;}return _0x56923b;}async function buildHookMaps(_0x123ef3,_0xe0cbd7,_0x250a5a,_0x89c682){const _0x5e5fc6=a31_0x3e9e83,_0x444370=_0x250a5a['some'](_0x925b05=>_0x925b05[_0x5e5fc6(0x1d0)]==='HOOK');if(!_0x444370)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x185aad=loadAliasMap(_0xe0cbd7,undefined,resolveApiFilePath(_0xe0cbd7,_0x123ef3)),_0x2bb43e=new Map(_0x185aad[_0x5e5fc6(0x1d2)](_0x13445d=>[_0x13445d['alias'],_0x13445d[_0x5e5fc6(0x1f6)]]));for(const _0x181510 of Object[_0x5e5fc6(0x1d4)](_0x89c682['functions'])){_0x181510[_0x5e5fc6(0x1fe)]&&_0x181510[_0x5e5fc6(0x1f6)]&&!_0x2bb43e['has'](_0x181510[_0x5e5fc6(0x1fe)])&&_0x2bb43e[_0x5e5fc6(0x1c4)](_0x181510[_0x5e5fc6(0x1fe)],_0x181510[_0x5e5fc6(0x1f6)]);}const _0x1b021d=await listDatasets(_0x123ef3),_0x242f06=new Map(_0x1b021d['map'](_0x5041dc=>[_0x5041dc[_0x5e5fc6(0x1cd)],_0x5041dc['id']]));return{'aliasToDatasetCode':_0x2bb43e,'datasetCodeToId':_0x242f06};}async function uploadSingleFunction(_0x4fa96e,_0x41e75e,_0x48a90e,_0x3470e6){const _0x41e06b=a31_0x3e9e83,_0x17e747=await readFile(_0x41e75e[_0x41e06b(0x1c6)],_0x41e06b(0x1fb)),_0x4a428b=await computeFileHash(_0x41e75e[_0x41e06b(0x1c6)]),_0x56f2eb=_0x48a90e['functions'][_0x41e75e[_0x41e06b(0x1f0)]];if(_0x56f2eb?.['remoteId']&&_0x56f2eb[_0x41e06b(0x1c5)]==null)throw CliErrors[_0x41e06b(0x1f5)](_0x41e75e[_0x41e06b(0x1f0)]+_0x41e06b(0x1e9));let _0x283bc2=extractScriptDescription(_0x17e747);if(!_0x283bc2&&_0x56f2eb?.[_0x41e06b(0x1ee)]){const _0x3c502b=await getBffScriptInfo(_0x56f2eb[_0x41e06b(0x1ee)]);_0x283bc2=_0x3c502b[_0x41e06b(0x1ff)]||undefined;}const _0x18c40d={'appCode':_0x4fa96e,'functionName':_0x41e75e[_0x41e06b(0x1f3)],'scriptType':_0x41e75e[_0x41e06b(0x1d0)],'scriptContent':_0x17e747};if(_0x56f2eb?.['remoteId'])_0x18c40d['id']=_0x56f2eb[_0x41e06b(0x1ee)];if(_0x56f2eb?.[_0x41e06b(0x1c5)]!=null)_0x18c40d[_0x41e06b(0x1c5)]=_0x56f2eb[_0x41e06b(0x1c5)];if(_0x283bc2)_0x18c40d['description']=_0x283bc2;if(_0x41e75e[_0x41e06b(0x1d0)]===_0x41e06b(0x209)){const _0x250c02=_0x41e75e[_0x41e06b(0x1fe)];if(!_0x250c02||!_0x41e75e[_0x41e06b(0x1df)]||!_0x41e75e['functionNode'])throw CliErrors[_0x41e06b(0x1f5)](_0x41e06b(0x1ec)+_0x41e75e[_0x41e06b(0x1f0)]);const _0x2a3385=_0x3470e6['aliasToDatasetCode']['get'](_0x250c02)??_0x56f2eb?.[_0x41e06b(0x1f6)]??_0x250c02,_0x50f459=_0x3470e6[_0x41e06b(0x1e6)]['get'](_0x2a3385);if(!_0x50f459)throw CliErrors[_0x41e06b(0x1f5)](_0x41e06b(0x1c2)+_0x250c02+_0x41e06b(0x1c3)+(_0x41e06b(0x204)+CLI_BIN_NAME+_0x41e06b(0x1f9)));_0x18c40d[_0x41e06b(0x1de)]=_0x50f459,_0x18c40d[_0x41e06b(0x1df)]=_0x41e75e[_0x41e06b(0x1df)],_0x18c40d['functionNode']=_0x41e75e['functionNode'];}const _0x357c74=await saveBffScript(_0x18c40d),_0x48428e=await getBffScriptInfo(_0x357c74),_0x4eb957={'hash':_0x4a428b,'remoteId':_0x357c74,'version':_0x48428e[_0x41e06b(0x1c5)]};if(_0x41e75e[_0x41e06b(0x1d0)]===_0x41e06b(0x209)){const _0x3b5ecf=_0x41e75e[_0x41e06b(0x1fe)],_0x21e43d=_0x3470e6[_0x41e06b(0x206)][_0x41e06b(0x1f4)](_0x3b5ecf)??_0x56f2eb?.[_0x41e06b(0x1f6)]??_0x3b5ecf;_0x3470e6[_0x41e06b(0x206)][_0x41e06b(0x1fd)](_0x3b5ecf)?_0x4eb957[_0x41e06b(0x1fe)]=_0x3b5ecf:_0x4eb957[_0x41e06b(0x1fe)]=_0x56f2eb?.[_0x41e06b(0x1fe)],_0x4eb957[_0x41e06b(0x1f6)]=_0x21e43d,_0x4eb957[_0x41e06b(0x1df)]=_0x41e75e[_0x41e06b(0x1df)],_0x4eb957['functionNode']=_0x41e75e[_0x41e06b(0x20a)];}_0x48a90e['functions'][_0x41e75e[_0x41e06b(0x1f0)]]=_0x4eb957;}
1
+ const a32_0x3f979a=a32_0x3ecb;(function(_0x1cf5cb,_0xb18b99){const _0x3a47eb=a32_0x3ecb,_0x252e1c=_0x1cf5cb();while(!![]){try{const _0x3d67ef=parseInt(_0x3a47eb(0x165))/0x1*(parseInt(_0x3a47eb(0x12d))/0x2)+parseInt(_0x3a47eb(0x14b))/0x3+-parseInt(_0x3a47eb(0x150))/0x4*(parseInt(_0x3a47eb(0x13b))/0x5)+parseInt(_0x3a47eb(0x14f))/0x6*(-parseInt(_0x3a47eb(0x159))/0x7)+-parseInt(_0x3a47eb(0x15b))/0x8+-parseInt(_0x3a47eb(0x126))/0x9*(parseInt(_0x3a47eb(0x15c))/0xa)+-parseInt(_0x3a47eb(0x140))/0xb*(-parseInt(_0x3a47eb(0x134))/0xc);if(_0x3d67ef===_0xb18b99)break;else _0x252e1c['push'](_0x252e1c['shift']());}catch(_0x2ff8aa){_0x252e1c['push'](_0x252e1c['shift']());}}}(a32_0x34a1,0x2b6e7));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}from'../../core/api-client.js';function a32_0x3ecb(_0x7732ec,_0x5abb28){_0x7732ec=_0x7732ec-0x11c;const _0x34a19b=a32_0x34a1();let _0x3ecb7f=_0x34a19b[_0x7732ec];return _0x3ecb7f;}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';function a32_0x34a1(){const _0x3f2dfd=['4bOJMii','some','aliasToDatasetCode','datasetCode','update','filter','force','str','COMMON','7yEnWjU','map','286584mAtmre','30DYdQAo','apiDir',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','has','code','Push\x20complete:\x20','lockFilePath','create','operationType','167269cCaRUk','Local\x20function\x20not\x20found:\x20','Push\x20only\x20this\x20script\x20type','Cannot\x20resolve\x20dataset\x20for\x20\x22','string','length','push','description','lastSync','get','remoteId','856332kzcBsk','functions','HOOK','/api/management/library/scripts/save','bool','alias','ENDPOINT','2XSQMAC','toISOString','filePath','high-risk-write','\x20uploaded,\x20','message','Incomplete\x20HOOK\x20path:\x20','278904ulJcGq','bff','set','Push\x20local\x20BFF\x20scripts\x20to\x20remote','--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.','datasetId','validation','564430DEOsER','functionNode','would_push','version','appCode','220admQNq','\x20local\x20BFF\x20script(s)\x20for\x20push','type','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','unchanged','scriptsRoot','\x20failed','lockKey','POST','hash','boolean','94611MaDaTl','utf8','name','Force\x20push\x20ignoring\x20hash\x20protection','309588qsRpLM'];a32_0x34a1=function(){return _0x3f2dfd;};return a32_0x34a1();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':a32_0x3f979a(0x135),'command':'push','description':a32_0x3f979a(0x137),'risk':a32_0x3f979a(0x130),'flags':[{'name':a32_0x3f979a(0x142),'type':a32_0x3f979a(0x11f),'description':a32_0x3f979a(0x11d),'enum':[a32_0x3f979a(0x158),a32_0x3f979a(0x12c),a32_0x3f979a(0x128)]},{'name':a32_0x3f979a(0x14d),'type':a32_0x3f979a(0x11f),'description':'Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)'},{'name':a32_0x3f979a(0x156),'type':a32_0x3f979a(0x14a),'description':a32_0x3f979a(0x14e)}],async 'dryRun'(_0x1b87de){const _0x4932bc=a32_0x3f979a,_0x2ddb73=loadBffProjectConfig(_0x1b87de[_0x4932bc(0x13f)]),_0xbcc0cf=await readBffLockFile(_0x2ddb73[_0x4932bc(0x162)]),{appLock:_0x3a8081}=ensureLockScope(_0xbcc0cf??createEmptyBffLock(),_0x1b87de[_0x4932bc(0x13f)],_0x2ddb73[_0x4932bc(0x145)],_0x4932bc(0x121)),_0x5e570e=await getTargetFunctions(_0x2ddb73,_0x1b87de),_0x146628=_0x1b87de['bool'](_0x4932bc(0x156)),_0x24817c=[];for(const _0x4489b9 of _0x5e570e){const _0x53949c=await computeFileHash(_0x4489b9[_0x4932bc(0x12f)]),_0x2d84c5=_0x3a8081[_0x4932bc(0x127)][_0x4489b9[_0x4932bc(0x147)]],_0x56a115=!!_0x2d84c5&&_0x2d84c5['hash']===_0x53949c;_0x24817c[_0x4932bc(0x121)]({'lockKey':_0x4489b9['lockKey'],'filePath':_0x4489b9['filePath'],'remoteId':_0x2d84c5?.['remoteId']??null,'mode':_0x2d84c5?.[_0x4932bc(0x125)]?_0x4932bc(0x154):_0x4932bc(0x163),'status':!_0x146628&&_0x56a115?_0x4932bc(0x144):_0x4932bc(0x13d)});}return{'method':_0x4932bc(0x148),'url':_0x4932bc(0x129),'body':{'appCode':_0x1b87de[_0x4932bc(0x13f)],'force':_0x146628,'files':_0x24817c},'description':'Would\x20inspect\x20'+_0x24817c['length']+_0x4932bc(0x141)};},async 'execute'(_0x2ab237){const _0x2f1932=a32_0x3f979a,_0x3a5abd=loadBffProjectConfig(_0x2ab237[_0x2f1932(0x13f)]),_0x4348e6=await readBffLockFile(_0x3a5abd['lockFilePath']),{lockData:_0x19b5e9,appLock:_0xa123ad}=ensureLockScope(_0x4348e6??createEmptyBffLock(),_0x2ab237[_0x2f1932(0x13f)],_0x3a5abd[_0x2f1932(0x145)],'push'),_0xe5b2b7=await getTargetFunctions(_0x3a5abd,_0x2ab237);if(_0xe5b2b7[_0x2f1932(0x120)]===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':'No\x20local\x20BFF\x20functions\x20found.'};const _0x3c3c9c=_0x2ab237[_0x2f1932(0x12a)](_0x2f1932(0x156)),_0x1bbed9=await buildHookMaps(_0x2ab237[_0x2f1932(0x13f)],_0x2ab237[_0x2f1932(0x15d)],_0xe5b2b7,_0xa123ad),_0x5ad152=[],_0x176421=[],_0x4e6185=[];for(const _0x5b3d51 of _0xe5b2b7){const _0x26a936=await computeFileHash(_0x5b3d51['filePath']),_0x31f964=_0xa123ad[_0x2f1932(0x127)][_0x5b3d51[_0x2f1932(0x147)]];if(!_0x3c3c9c&&_0x31f964&&_0x31f964[_0x2f1932(0x149)]===_0x26a936){_0x176421[_0x2f1932(0x121)]({'lockKey':_0x5b3d51[_0x2f1932(0x147)],'reason':'unchanged'});continue;}try{await uploadSingleFunction(_0x2ab237[_0x2f1932(0x13f)],_0x5b3d51,_0xa123ad,_0x1bbed9);const _0x8e63bf=_0xa123ad[_0x2f1932(0x127)][_0x5b3d51[_0x2f1932(0x147)]];_0x5ad152[_0x2f1932(0x121)]({'lockKey':_0x5b3d51['lockKey'],'remoteId':_0x8e63bf?.[_0x2f1932(0x125)]??0x0});}catch(_0x26216c){_0x4e6185['push']({'lockKey':_0x5b3d51['lockKey'],'error':_0x26216c instanceof Error?_0x26216c[_0x2f1932(0x132)]:String(_0x26216c)});}}return _0xa123ad[_0x2f1932(0x123)]=new Date()[_0x2f1932(0x12e)](),await writeBffLockFile(_0x3a5abd[_0x2f1932(0x162)],_0x19b5e9),{'ok':_0x4e6185[_0x2f1932(0x120)]===0x0,'data':{'uploaded':_0x5ad152,'skipped':_0x176421,'failed':_0x4e6185},'message':_0x2f1932(0x161)+_0x5ad152[_0x2f1932(0x120)]+_0x2f1932(0x131)+_0x176421[_0x2f1932(0x120)]+'\x20skipped,\x20'+_0x4e6185[_0x2f1932(0x120)]+_0x2f1932(0x146)};}};async function getTargetFunctions(_0x14bb96,_0x4808bd){const _0x3ec63f=a32_0x3f979a,_0x250a17=_0x4808bd[_0x3ec63f(0x157)](_0x3ec63f(0x142)),_0x3b696e=_0x4808bd[_0x3ec63f(0x157)]('name'),_0x48a187=normalizeBffType(_0x250a17)??undefined;if(_0x3b696e&&!_0x48a187)throw CliErrors[_0x3ec63f(0x13a)](_0x3ec63f(0x138));const _0x4cd427=await scanLocalBffFunctions(_0x14bb96,_0x48a187);if(_0x3b696e){const _0x58407c=_0x4cd427[_0x3ec63f(0x155)](_0x2c9fce=>_0x2c9fce['name']===_0x3b696e);if(_0x58407c[_0x3ec63f(0x120)]===0x0)throw CliErrors[_0x3ec63f(0x13a)](_0x3ec63f(0x11c)+_0x48a187+'/'+_0x3b696e);return _0x58407c;}return _0x4cd427;}async function buildHookMaps(_0x2ca5ef,_0xe17aa,_0x4f3a20,_0x517864){const _0x44d422=a32_0x3f979a,_0x46f0e4=_0x4f3a20[_0x44d422(0x151)](_0x50b261=>_0x50b261[_0x44d422(0x142)]==='HOOK');if(!_0x46f0e4)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x50b976=loadAliasMap(_0xe17aa,undefined,resolveApiFilePath(_0xe17aa,_0x2ca5ef)),_0x3b9de6=new Map(_0x50b976[_0x44d422(0x15a)](_0x336fde=>[_0x336fde[_0x44d422(0x12b)],_0x336fde[_0x44d422(0x153)]]));for(const _0x174569 of Object['values'](_0x517864[_0x44d422(0x127)])){_0x174569[_0x44d422(0x12b)]&&_0x174569[_0x44d422(0x153)]&&!_0x3b9de6['has'](_0x174569[_0x44d422(0x12b)])&&_0x3b9de6[_0x44d422(0x136)](_0x174569['alias'],_0x174569['datasetCode']);}const _0x2696d3=await listDatasets(_0x2ca5ef),_0xb20e03=new Map(_0x2696d3[_0x44d422(0x15a)](_0x56bf64=>[_0x56bf64[_0x44d422(0x160)],_0x56bf64['id']]));return{'aliasToDatasetCode':_0x3b9de6,'datasetCodeToId':_0xb20e03};}async function uploadSingleFunction(_0x1f49b0,_0x38a887,_0x1aa0e3,_0x5f270b){const _0x38087d=a32_0x3f979a,_0x4db9f4=await readFile(_0x38a887['filePath'],_0x38087d(0x14c)),_0x5b8cb1=await computeFileHash(_0x38a887[_0x38087d(0x12f)]),_0x516ed1=_0x1aa0e3[_0x38087d(0x127)][_0x38a887[_0x38087d(0x147)]];if(_0x516ed1?.['remoteId']&&_0x516ed1[_0x38087d(0x13e)]==null)throw CliErrors['validation'](_0x38a887[_0x38087d(0x147)]+_0x38087d(0x15e));let _0x2cde62=extractScriptDescription(_0x4db9f4);if(!_0x2cde62&&_0x516ed1?.['remoteId']){const _0x9b5285=await getBffScriptInfo(_0x516ed1[_0x38087d(0x125)]);_0x2cde62=_0x9b5285[_0x38087d(0x122)]||undefined;}const _0x576576={'appCode':_0x1f49b0,'functionName':_0x38a887[_0x38087d(0x14d)],'scriptType':_0x38a887[_0x38087d(0x142)],'scriptContent':_0x4db9f4};if(_0x516ed1?.[_0x38087d(0x125)])_0x576576['id']=_0x516ed1[_0x38087d(0x125)];if(_0x516ed1?.['version']!=null)_0x576576[_0x38087d(0x13e)]=_0x516ed1[_0x38087d(0x13e)];if(_0x2cde62)_0x576576[_0x38087d(0x122)]=_0x2cde62;if(_0x38a887[_0x38087d(0x142)]===_0x38087d(0x128)){const _0x3bdf8d=_0x38a887[_0x38087d(0x12b)];if(!_0x3bdf8d||!_0x38a887[_0x38087d(0x164)]||!_0x38a887[_0x38087d(0x13c)])throw CliErrors[_0x38087d(0x13a)](_0x38087d(0x133)+_0x38a887[_0x38087d(0x147)]);const _0x843a1a=_0x5f270b['aliasToDatasetCode'][_0x38087d(0x124)](_0x3bdf8d)??_0x516ed1?.[_0x38087d(0x153)]??_0x3bdf8d,_0x31200e=_0x5f270b['datasetCodeToId']['get'](_0x843a1a);if(!_0x31200e)throw CliErrors[_0x38087d(0x13a)](_0x38087d(0x11e)+_0x3bdf8d+'\x22.\x20'+('Run\x20`'+CLI_BIN_NAME+_0x38087d(0x143)));_0x576576[_0x38087d(0x139)]=_0x31200e,_0x576576['operationType']=_0x38a887[_0x38087d(0x164)],_0x576576[_0x38087d(0x13c)]=_0x38a887[_0x38087d(0x13c)];}const _0x1680d1=await saveBffScript(_0x576576),_0x4f8728=await getBffScriptInfo(_0x1680d1),_0x5934e7={'hash':_0x5b8cb1,'remoteId':_0x1680d1,'version':_0x4f8728[_0x38087d(0x13e)]};if(_0x38a887[_0x38087d(0x142)]==='HOOK'){const _0x12a4b4=_0x38a887['alias'],_0x3828d4=_0x5f270b['aliasToDatasetCode'][_0x38087d(0x124)](_0x12a4b4)??_0x516ed1?.[_0x38087d(0x153)]??_0x12a4b4;_0x5f270b[_0x38087d(0x152)][_0x38087d(0x15f)](_0x12a4b4)?_0x5934e7[_0x38087d(0x12b)]=_0x12a4b4:_0x5934e7[_0x38087d(0x12b)]=_0x516ed1?.[_0x38087d(0x12b)],_0x5934e7[_0x38087d(0x153)]=_0x3828d4,_0x5934e7[_0x38087d(0x164)]=_0x38a887[_0x38087d(0x164)],_0x5934e7['functionNode']=_0x38a887['functionNode'];}_0x1aa0e3[_0x38087d(0x127)][_0x38a887['lockKey']]=_0x5934e7;}
@@ -1 +1 @@
1
- const a32_0x31212c=a32_0xa125;(function(_0x1d69a3,_0x17ade6){const _0x1e2801=a32_0xa125,_0x130786=_0x1d69a3();while(!![]){try{const _0x53ba49=-parseInt(_0x1e2801(0x19a))/0x1*(parseInt(_0x1e2801(0x196))/0x2)+parseInt(_0x1e2801(0x1ad))/0x3*(parseInt(_0x1e2801(0x1aa))/0x4)+-parseInt(_0x1e2801(0x1b1))/0x5*(-parseInt(_0x1e2801(0x195))/0x6)+parseInt(_0x1e2801(0x1a7))/0x7*(parseInt(_0x1e2801(0x199))/0x8)+-parseInt(_0x1e2801(0x1a9))/0x9*(-parseInt(_0x1e2801(0x1ae))/0xa)+-parseInt(_0x1e2801(0x1a4))/0xb*(-parseInt(_0x1e2801(0x1a1))/0xc)+-parseInt(_0x1e2801(0x193))/0xd;if(_0x53ba49===_0x17ade6)break;else _0x130786['push'](_0x130786['shift']());}catch(_0x25b45f){_0x130786['push'](_0x130786['shift']());}}}(a32_0x4195,0x857c9));import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';function a32_0xa125(_0x32db1d,_0x14dfaf){_0x32db1d=_0x32db1d-0x191;const _0x4195aa=a32_0x4195();let _0xa125e7=_0x4195aa[_0x32db1d];return _0xa125e7;}import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,resolveRemoteScriptTarget,scanLocalBffFunctions}from'../../core/bff/file-system.js';function a32_0x4195(){const _0x575223=['remote','810444HaAUAu','204178SCZbky','functions','\x20added,\x20','4285160DwKoWa','3MWbmgd','all','lockFilePath','length','read','filePath','datasetCode','12bvzJuu','appCode','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','7681861XeiNST','Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally','push','7JuPDXZ','\x20remote-only','60579UGWLAd','52dOlNUy','status','\x20unchanged','145395vvCVHT','240HrNUVe','map','scriptsRoot','35rjGeiL','lockKey','apiDir','bff','hash','boolean','27534975GsVRmK'];a32_0x4195=function(){return _0x575223;};return a32_0x4195();}import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';export const bffStatus={'service':a32_0x31212c(0x1b4),'command':a32_0x31212c(0x1ab),'description':a32_0x31212c(0x1a3),'risk':a32_0x31212c(0x19e),'flags':[{'name':a32_0x31212c(0x194),'type':a32_0x31212c(0x192),'description':a32_0x31212c(0x1a5)}],async 'execute'(_0x2f6acb){const _0x1c5a79=a32_0x31212c,_0x3b032=loadBffProjectConfig(_0x2f6acb[_0x1c5a79(0x1a2)]),_0x42c9e2=await readBffLockFile(_0x3b032[_0x1c5a79(0x19c)]),{appLock:_0x1b8e14}=ensureLockScope(_0x42c9e2??createEmptyBffLock(),_0x2f6acb[_0x1c5a79(0x1a2)],_0x3b032[_0x1c5a79(0x1b0)],'status'),_0x3cd71f=await scanLocalBffFunctions(_0x3b032),_0x2b971a=[],_0x21b601=[],_0x454b96=[];for(const _0x55a676 of _0x3cd71f){const _0x209082=await computeFileHash(_0x55a676[_0x1c5a79(0x19f)]),_0x4a03ab=_0x1b8e14['functions'][_0x55a676[_0x1c5a79(0x1b2)]];if(!_0x4a03ab)_0x2b971a['push'](_0x55a676[_0x1c5a79(0x1b2)]);else _0x4a03ab[_0x1c5a79(0x191)]!==_0x209082?_0x21b601[_0x1c5a79(0x1a6)](_0x55a676[_0x1c5a79(0x1b2)]):_0x454b96['push'](_0x55a676[_0x1c5a79(0x1b2)]);}const _0x57c8c0=[];if(_0x2f6acb['bool'](_0x1c5a79(0x194))){const _0x7c4733=loadAliasMap(_0x2f6acb[_0x1c5a79(0x1b3)],undefined,resolveApiFilePath(_0x2f6acb[_0x1c5a79(0x1b3)],_0x2f6acb[_0x1c5a79(0x1a2)])),_0x1b4ea8=new Map(_0x7c4733[_0x1c5a79(0x1af)](_0x187588=>[_0x187588[_0x1c5a79(0x1a0)],_0x187588['alias']])),[_0x341c7e,_0x13843f]=await Promise[_0x1c5a79(0x19b)]([listBffScripts(_0x2f6acb[_0x1c5a79(0x1a2)]),getBffScriptStatistics(_0x2f6acb[_0x1c5a79(0x1a2)])]),_0x5c5b56=createHookLocationMap(_0x13843f),_0x3ad886=new Set(_0x3cd71f[_0x1c5a79(0x1af)](_0xcdeeec=>_0xcdeeec[_0x1c5a79(0x1b2)]));for(const _0x2fa409 of _0x341c7e){const _0x530db6=resolveRemoteScriptTarget(_0x3b032,_0x2fa409,_0x5c5b56,_0x1b8e14[_0x1c5a79(0x197)],_0x1b4ea8);_0x530db6&&!_0x3ad886['has'](_0x530db6[_0x1c5a79(0x1b2)])&&_0x57c8c0[_0x1c5a79(0x1a6)](_0x530db6[_0x1c5a79(0x1b2)]);}}const _0x49e8ac=_0x2b971a['length']===0x0&&_0x21b601['length']===0x0&&_0x57c8c0[_0x1c5a79(0x19d)]===0x0;return{'ok':!![],'data':{'added':_0x2b971a,'modified':_0x21b601,'unchanged':_0x454b96,'remoteOnly':_0x57c8c0},'message':_0x49e8ac?'All\x20BFF\x20scripts\x20are\x20in\x20sync.':_0x2b971a['length']+_0x1c5a79(0x198)+_0x21b601['length']+'\x20modified,\x20'+_0x454b96[_0x1c5a79(0x19d)]+_0x1c5a79(0x1ac)+(_0x57c8c0['length']>0x0?',\x20'+_0x57c8c0[_0x1c5a79(0x19d)]+_0x1c5a79(0x1a8):'')};}};
1
+ function a33_0xefcb(_0x629d67,_0x11e51c){_0x629d67=_0x629d67-0x125;const _0x2c855d=a33_0x2c85();let _0xefcbe5=_0x2c855d[_0x629d67];return _0xefcbe5;}function a33_0x2c85(){const _0x3ea5b7=['all','bff','\x20added,\x20','appCode','status','alias','remote','functions','4576ftQPGB','1384806lpCHem','datasetCode','10680sCAknE','hash','length','has','361998hEetXY','4ChFywG','4572152XjFfTQ','3830ihdiKN','apiDir','All\x20BFF\x20scripts\x20are\x20in\x20sync.','\x20modified,\x20','1424910VoyFFI','read','lockKey','\x20unchanged','\x20remote-only','scriptsRoot','bool','1061029AoVvaN','filePath','4206wBMJOR','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','lockFilePath','9HkDTGL','boolean','push','map'];a33_0x2c85=function(){return _0x3ea5b7;};return a33_0x2c85();}const a33_0x45822a=a33_0xefcb;(function(_0x17cde2,_0x117704){const _0x3c5e57=a33_0xefcb,_0x315c1a=_0x17cde2();while(!![]){try{const _0x14614b=parseInt(_0x3c5e57(0x144))/0x1+parseInt(_0x3c5e57(0x13d))/0x2+-parseInt(_0x3c5e57(0x130))/0x3*(parseInt(_0x3c5e57(0x137))/0x4)+-parseInt(_0x3c5e57(0x139))/0x5*(parseInt(_0x3c5e57(0x146))/0x6)+-parseInt(_0x3c5e57(0x136))/0x7+-parseInt(_0x3c5e57(0x138))/0x8*(parseInt(_0x3c5e57(0x149))/0x9)+parseInt(_0x3c5e57(0x132))/0xa*(parseInt(_0x3c5e57(0x12f))/0xb);if(_0x14614b===_0x117704)break;else _0x315c1a['push'](_0x315c1a['shift']());}catch(_0x588cd0){_0x315c1a['push'](_0x315c1a['shift']());}}}(a33_0x2c85,0x91803));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,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':a33_0x45822a(0x128),'command':a33_0x45822a(0x12b),'description':a33_0x45822a(0x147),'risk':a33_0x45822a(0x13e),'flags':[{'name':a33_0x45822a(0x12d),'type':a33_0x45822a(0x14a),'description':'Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally'}],async 'execute'(_0x261c71){const _0x17e179=a33_0x45822a,_0x1df76c=loadBffProjectConfig(_0x261c71[_0x17e179(0x12a)]),_0x1f8fa9=await readBffLockFile(_0x1df76c[_0x17e179(0x148)]),{appLock:_0x2b9fbf}=ensureLockScope(_0x1f8fa9??createEmptyBffLock(),_0x261c71[_0x17e179(0x12a)],_0x1df76c[_0x17e179(0x142)],_0x17e179(0x12b)),_0x3e2100=await scanLocalBffFunctions(_0x1df76c),_0x11ae6a=[],_0x20e6b5=[],_0x2844f6=[];for(const _0x10c287 of _0x3e2100){const _0x5bf63d=await computeFileHash(_0x10c287[_0x17e179(0x145)]),_0x3cdd50=_0x2b9fbf[_0x17e179(0x12e)][_0x10c287['lockKey']];if(!_0x3cdd50)_0x11ae6a[_0x17e179(0x125)](_0x10c287[_0x17e179(0x13f)]);else _0x3cdd50[_0x17e179(0x133)]!==_0x5bf63d?_0x20e6b5[_0x17e179(0x125)](_0x10c287[_0x17e179(0x13f)]):_0x2844f6[_0x17e179(0x125)](_0x10c287[_0x17e179(0x13f)]);}const _0x521461=[];if(_0x261c71[_0x17e179(0x143)](_0x17e179(0x12d))){const _0x82f640=loadAliasMap(_0x261c71[_0x17e179(0x13a)],undefined,resolveApiFilePath(_0x261c71[_0x17e179(0x13a)],_0x261c71['appCode'])),_0x59b26b=new Map(_0x82f640[_0x17e179(0x126)](_0x3dd415=>[_0x3dd415[_0x17e179(0x131)],_0x3dd415[_0x17e179(0x12c)]])),[_0xf128e0,_0x31cb78]=await Promise[_0x17e179(0x127)]([listBffScripts(_0x261c71[_0x17e179(0x12a)]),getBffScriptStatistics(_0x261c71[_0x17e179(0x12a)])]),_0x1971a5=createHookLocationMap(_0x31cb78),_0x3dacf6=new Set(_0x3e2100['map'](_0x5773a2=>_0x5773a2['lockKey']));for(const _0x51d05f of _0xf128e0){const _0x4ec92c=resolveRemoteScriptTarget(_0x1df76c,_0x51d05f,_0x1971a5,_0x2b9fbf[_0x17e179(0x12e)],_0x59b26b);_0x4ec92c&&!_0x3dacf6[_0x17e179(0x135)](_0x4ec92c['lockKey'])&&_0x521461[_0x17e179(0x125)](_0x4ec92c[_0x17e179(0x13f)]);}}const _0x36e454=_0x11ae6a[_0x17e179(0x134)]===0x0&&_0x20e6b5[_0x17e179(0x134)]===0x0&&_0x521461[_0x17e179(0x134)]===0x0;return{'ok':!![],'data':{'added':_0x11ae6a,'modified':_0x20e6b5,'unchanged':_0x2844f6,'remoteOnly':_0x521461},'message':_0x36e454?_0x17e179(0x13b):_0x11ae6a['length']+_0x17e179(0x129)+_0x20e6b5[_0x17e179(0x134)]+_0x17e179(0x13c)+_0x2844f6[_0x17e179(0x134)]+_0x17e179(0x140)+(_0x521461[_0x17e179(0x134)]>0x0?',\x20'+_0x521461[_0x17e179(0x134)]+_0x17e179(0x141):'')};}};