@lovrabet/rabetbase-cli 2.1.13 → 2.1.14-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 (201) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/create.js +1 -1
  28. package/lib/commands/bff/delete.js +1 -1
  29. package/lib/commands/bff/detail.js +1 -1
  30. package/lib/commands/bff/index.js +1 -1
  31. package/lib/commands/bff/list.js +1 -1
  32. package/lib/commands/bff/pull.js +1 -1
  33. package/lib/commands/bff/push.js +1 -1
  34. package/lib/commands/bff/status.js +1 -1
  35. package/lib/commands/cli-update.js +1 -1
  36. package/lib/commands/codegen/index.js +1 -1
  37. package/lib/commands/codegen/sdk.js +1 -1
  38. package/lib/commands/codegen/sql.js +1 -1
  39. package/lib/commands/common/app-selector.js +1 -1
  40. package/lib/commands/common/flags.js +1 -1
  41. package/lib/commands/common/validate.js +1 -1
  42. package/lib/commands/config/get.js +1 -1
  43. package/lib/commands/config/index.js +1 -1
  44. package/lib/commands/config/list.js +1 -1
  45. package/lib/commands/config/set.js +1 -1
  46. package/lib/commands/config/shared.js +1 -1
  47. package/lib/commands/data/filter.js +1 -1
  48. package/lib/commands/data/getOne.js +1 -1
  49. package/lib/commands/data/index.js +1 -1
  50. package/lib/commands/data/shared.js +1 -1
  51. package/lib/commands/dataset/capability.js +1 -1
  52. package/lib/commands/dataset/delete.js +1 -1
  53. package/lib/commands/dataset/detail.js +1 -1
  54. package/lib/commands/dataset/field-update.js +1 -1
  55. package/lib/commands/dataset/index.js +1 -1
  56. package/lib/commands/dataset/link-create.js +1 -1
  57. package/lib/commands/dataset/link-delete.js +1 -1
  58. package/lib/commands/dataset/link-shared.js +1 -1
  59. package/lib/commands/dataset/link-update.js +1 -1
  60. package/lib/commands/dataset/links.js +1 -1
  61. package/lib/commands/dataset/list.js +1 -1
  62. package/lib/commands/dataset/operations.js +1 -1
  63. package/lib/commands/dataset/rename.js +1 -0
  64. package/lib/commands/db/analyze-cancel.js +1 -1
  65. package/lib/commands/db/analyze-start.js +1 -1
  66. package/lib/commands/db/analyze-status.js +1 -1
  67. package/lib/commands/db/create.js +1 -1
  68. package/lib/commands/db/delete.js +1 -1
  69. package/lib/commands/db/detail.js +1 -1
  70. package/lib/commands/db/diff.js +1 -1
  71. package/lib/commands/db/index.js +1 -1
  72. package/lib/commands/db/list.js +1 -1
  73. package/lib/commands/db/shared.js +1 -1
  74. package/lib/commands/db/tables.js +1 -1
  75. package/lib/commands/db/test.js +1 -1
  76. package/lib/commands/db/update.js +1 -1
  77. package/lib/commands/doctor.js +1 -1
  78. package/lib/commands/init/index.js +1 -1
  79. package/lib/commands/issue/index.js +1 -1
  80. package/lib/commands/issue/nudge.js +1 -1
  81. package/lib/commands/issue/report.js +1 -1
  82. package/lib/commands/issue/shared.js +1 -1
  83. package/lib/commands/logs/index.js +1 -1
  84. package/lib/commands/menu/index.js +1 -1
  85. package/lib/commands/menu/shared/compare-table.js +1 -1
  86. package/lib/commands/menu/shared/index.js +1 -1
  87. package/lib/commands/menu/shared/inquirer.js +1 -1
  88. package/lib/commands/menu/shared/local-pages.js +1 -1
  89. package/lib/commands/menu/shared/logic.js +1 -1
  90. package/lib/commands/menu/shared/service.js +1 -1
  91. package/lib/commands/menu/shared/sync-core.js +1 -1
  92. package/lib/commands/menu/shared/update-core.js +1 -1
  93. package/lib/commands/menu/shared/valid-url.js +1 -1
  94. package/lib/commands/menu/sync.js +1 -1
  95. package/lib/commands/menu/update.js +1 -1
  96. package/lib/commands/page/generate-start.js +1 -1
  97. package/lib/commands/page/generate-status.js +1 -1
  98. package/lib/commands/page/index.js +1 -1
  99. package/lib/commands/page/pull.js +1 -1
  100. package/lib/commands/page/push.js +1 -1
  101. package/lib/commands/page/shared.js +1 -1
  102. package/lib/commands/page/standard-page-status.js +1 -1
  103. package/lib/commands/page/sync.js +1 -1
  104. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  105. package/lib/commands/project/create/format-elapsed.js +1 -1
  106. package/lib/commands/project/create/main.js +1 -1
  107. package/lib/commands/project/create/non-interactive.js +1 -1
  108. package/lib/commands/project/create/project-template-path.js +1 -1
  109. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  110. package/lib/commands/project/create/use-format-code.js +1 -1
  111. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  112. package/lib/commands/project/index.js +1 -1
  113. package/lib/commands/project/init.js +1 -1
  114. package/lib/commands/project/upgrade.js +1 -1
  115. package/lib/commands/registry.js +1 -1
  116. package/lib/commands/run/index.js +1 -1
  117. package/lib/commands/schema.js +1 -1
  118. package/lib/commands/skill/index.js +1 -1
  119. package/lib/commands/sql/create.js +1 -1
  120. package/lib/commands/sql/delete.js +1 -1
  121. package/lib/commands/sql/detail.js +1 -1
  122. package/lib/commands/sql/exec.js +1 -1
  123. package/lib/commands/sql/index.js +1 -1
  124. package/lib/commands/sql/list.js +1 -1
  125. package/lib/commands/sql/pull.js +1 -1
  126. package/lib/commands/sql/push.js +1 -1
  127. package/lib/commands/sql/save.js +1 -1
  128. package/lib/commands/sql/shared.js +1 -1
  129. package/lib/commands/sql/status.js +1 -1
  130. package/lib/commands/sql/validate.js +1 -1
  131. package/lib/config/schema.js +1 -1
  132. package/lib/constant/cdn.js +1 -1
  133. package/lib/constant/cli.js +1 -1
  134. package/lib/constant/defaults.js +1 -1
  135. package/lib/constant/domain.js +1 -1
  136. package/lib/constant/env.js +1 -1
  137. package/lib/constant/output.js +1 -1
  138. package/lib/constant/paths.js +1 -1
  139. package/lib/constant/risk.js +1 -1
  140. package/lib/context.js +1 -1
  141. package/lib/core/alias-resolver.js +1 -1
  142. package/lib/core/api-client.js +1 -1
  143. package/lib/core/bff/config.js +1 -1
  144. package/lib/core/bff/file-system.js +1 -1
  145. package/lib/core/bff/hash.js +1 -1
  146. package/lib/core/bff/lock.js +1 -1
  147. package/lib/core/bff/utils.js +1 -1
  148. package/lib/core/db-resolver.js +1 -1
  149. package/lib/core/page/file-system.js +1 -1
  150. package/lib/core/page/hash.js +1 -1
  151. package/lib/core/page/lock.js +1 -1
  152. package/lib/core/sql-sync/config.js +1 -1
  153. package/lib/core/sql-sync/file-system.js +1 -1
  154. package/lib/core/sql-sync/hash.js +1 -1
  155. package/lib/core/sql-sync/lock.js +1 -1
  156. package/lib/core/sql-sync/utils.js +1 -1
  157. package/lib/core/sql-validator.js +1 -1
  158. package/lib/errors.js +1 -1
  159. package/lib/framework/build-all-flags.js +1 -1
  160. package/lib/framework/flags.js +1 -1
  161. package/lib/framework/help.js +1 -1
  162. package/lib/framework/index.js +1 -1
  163. package/lib/framework/output.js +1 -1
  164. package/lib/framework/response.js +1 -1
  165. package/lib/framework/runner-alias.js +1 -1
  166. package/lib/framework/runner.js +1 -1
  167. package/lib/framework/schema-export.js +1 -1
  168. package/lib/framework/types.js +1 -1
  169. package/lib/generated/build-info.js +1 -1
  170. package/lib/help.js +1 -1
  171. package/lib/skills/main.js +1 -1
  172. package/lib/skills/npx-skills-add.js +1 -1
  173. package/lib/telemetry/cli-command-trace.js +1 -1
  174. package/lib/telemetry/cli-help-trace.js +1 -1
  175. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  176. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  177. package/lib/telemetry/send-cli-trace-log.js +1 -1
  178. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  179. package/lib/utils/ai_config.js +1 -1
  180. package/lib/utils/apply-jq-filter.js +1 -1
  181. package/lib/utils/cdn-config.js +1 -1
  182. package/lib/utils/check-sdk-version.js +1 -1
  183. package/lib/utils/cli-version-check.js +1 -1
  184. package/lib/utils/cli-version-policy.js +1 -1
  185. package/lib/utils/config.js +1 -1
  186. package/lib/utils/copy-directory.js +1 -1
  187. package/lib/utils/entity-with-id.js +1 -1
  188. package/lib/utils/file-utils.js +1 -1
  189. package/lib/utils/guides-cdn.js +1 -1
  190. package/lib/utils/http-client.js +1 -1
  191. package/lib/utils/is-non-interactive.js +1 -1
  192. package/lib/utils/logger.js +1 -1
  193. package/lib/utils/params.js +1 -1
  194. package/lib/utils/platform.js +1 -1
  195. package/lib/utils/rules-cdn.js +1 -1
  196. package/lib/utils/sleep.js +1 -1
  197. package/lib/utils/template-replacer.js +1 -1
  198. package/lib/utils/version.js +1 -1
  199. package/lib/utils/with-active-cookie.js +1 -1
  200. package/lib/utils/write-cli-side-channel.js +1 -1
  201. package/package.json +1 -1
@@ -1 +1 @@
1
- const a19_0x34433b=a19_0x10ea;(function(_0x31ebf6,_0x5c51fd){const _0x5c44ed=a19_0x10ea,_0x2f1845=_0x31ebf6();while(!![]){try{const _0x710ed7=parseInt(_0x5c44ed(0x1d1))/0x1*(parseInt(_0x5c44ed(0x1d4))/0x2)+-parseInt(_0x5c44ed(0x1d2))/0x3+-parseInt(_0x5c44ed(0x1d8))/0x4+parseInt(_0x5c44ed(0x1d0))/0x5*(-parseInt(_0x5c44ed(0x1d7))/0x6)+-parseInt(_0x5c44ed(0x1cf))/0x7+parseInt(_0x5c44ed(0x1cd))/0x8+parseInt(_0x5c44ed(0x1ca))/0x9*(parseInt(_0x5c44ed(0x1cb))/0xa);if(_0x710ed7===_0x5c51fd)break;else _0x2f1845['push'](_0x2f1845['shift']());}catch(_0x30130b){_0x2f1845['push'](_0x2f1845['shift']());}}}(a19_0x4ad0,0x7dcef));import{listRemoteApps}from'../../core/api-client.js';function a19_0x10ea(_0x5b832b,_0x5315e9){_0x5b832b=_0x5b832b-0x1ca;const _0x4ad00c=a19_0x4ad0();let _0x10eae2=_0x4ad00c[_0x5b832b];return _0x10eae2;}async function execute(_0x40ec0d){const _0x1d5b64=a19_0x10ea,{setActiveCookie:_0x31ed9f}=await import(_0x1d5b64(0x1d3));_0x31ed9f(_0x40ec0d[_0x1d5b64(0x1da)]);const _0x14183f=await listRemoteApps();return{'ok':!![],'data':{'items':_0x14183f['map'](_0x304a72=>({..._0x304a72['id']!=null?{'id':_0x304a72['id']}:{},'appCode':_0x304a72[_0x1d5b64(0x1d5)],'appName':_0x304a72['appName'],..._0x304a72[_0x1d5b64(0x1cc)]!=null?{'appDesc':_0x304a72[_0x1d5b64(0x1cc)]}:{}})),'meta':{'source':'platform'}}};}function a19_0x4ad0(){const _0x31ddc5=['10TOCEdE','appDesc','5144848tYJrke','app','1196573QyktQW','5gSJuPu','1083LHPYqU','508884gLUSTR','../../core/api-client.js','398feqHSJ','appCode','remote','2895996SFRUDZ','1783472yoEQXF','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','cookie','8332101EoHmNh'];a19_0x4ad0=function(){return _0x31ddc5;};return a19_0x4ad0();}export const appRemoteDefinition={'service':a19_0x34433b(0x1ce),'command':a19_0x34433b(0x1d6),'description':a19_0x34433b(0x1d9),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
1
+ function a19_0x4839(_0x4c572b,_0x14b298){_0x4c572b=_0x4c572b-0x7a;const _0x241574=a19_0x2415();let _0x483962=_0x241574[_0x4c572b];return _0x483962;}const a19_0x229e6d=a19_0x4839;(function(_0x187a4e,_0x4db176){const _0x4b4b16=a19_0x4839,_0x11747f=_0x187a4e();while(!![]){try{const _0x5d0b59=-parseInt(_0x4b4b16(0x88))/0x1*(parseInt(_0x4b4b16(0x7c))/0x2)+-parseInt(_0x4b4b16(0x81))/0x3+-parseInt(_0x4b4b16(0x83))/0x4+parseInt(_0x4b4b16(0x7a))/0x5*(-parseInt(_0x4b4b16(0x7e))/0x6)+-parseInt(_0x4b4b16(0x8a))/0x7+parseInt(_0x4b4b16(0x8b))/0x8*(-parseInt(_0x4b4b16(0x86))/0x9)+parseInt(_0x4b4b16(0x7d))/0xa*(parseInt(_0x4b4b16(0x87))/0xb);if(_0x5d0b59===_0x4db176)break;else _0x11747f['push'](_0x11747f['shift']());}catch(_0x4ad2c3){_0x11747f['push'](_0x11747f['shift']());}}}(a19_0x2415,0x44e5d));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x317ffc){const _0x1db66f=a19_0x4839,{setActiveCookie:_0xe80f79}=await import('../../core/api-client.js');_0xe80f79(_0x317ffc['cookie']);const _0x4c772b=await listRemoteApps();return{'ok':!![],'data':{'items':_0x4c772b[_0x1db66f(0x84)](_0xc9fa53=>({..._0xc9fa53['id']!=null?{'id':_0xc9fa53['id']}:{},'appCode':_0xc9fa53[_0x1db66f(0x89)],'appName':_0xc9fa53['appName'],..._0xc9fa53[_0x1db66f(0x7b)]!=null?{'appDesc':_0xc9fa53[_0x1db66f(0x7b)]}:{}})),'meta':{'source':'platform'}}};}export const appRemoteDefinition={'service':a19_0x229e6d(0x7f),'command':a19_0x229e6d(0x85),'description':a19_0x229e6d(0x82),'risk':a19_0x229e6d(0x80),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};function a19_0x2415(){const _0x4f9432=['appDesc','16314gYsRvK','50MkPqhf','916818SrNDkj','app','read','929394EcsfYW','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','2230276hRRHpu','map','remote','2034gzlwpV','5971009dWBIzS','69gTVOTq','appCode','2352651SMVBzx','18152fhokjy','5muGAQB'];a19_0x2415=function(){return _0x4f9432;};return a19_0x2415();}
@@ -1 +1 @@
1
- (function(_0x32afb1,_0x2615e4){const _0x1f13e3=a20_0x4e4c,_0x493282=_0x32afb1();while(!![]){try{const _0x3c39c0=-parseInt(_0x1f13e3(0x11f))/0x1*(-parseInt(_0x1f13e3(0x118))/0x2)+parseInt(_0x1f13e3(0x11c))/0x3+parseInt(_0x1f13e3(0x117))/0x4*(parseInt(_0x1f13e3(0x11e))/0x5)+-parseInt(_0x1f13e3(0x11b))/0x6+parseInt(_0x1f13e3(0x11d))/0x7+parseInt(_0x1f13e3(0x119))/0x8*(parseInt(_0x1f13e3(0x11a))/0x9)+-parseInt(_0x1f13e3(0x121))/0xa*(parseInt(_0x1f13e3(0x120))/0xb);if(_0x3c39c0===_0x2615e4)break;else _0x493282['push'](_0x493282['shift']());}catch(_0x57353e){_0x493282['push'](_0x493282['shift']());}}}(a20_0x4af5,0x9dd92));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';function a20_0x4af5(){const _0x1d9462=['70uepGej','20aCXHOP','38nkFAuL','2080wFrTEl','29106FcvUYV','6142122rEEUXS','1005603KFOUiR','7494501LNVDpx','468345xgAHHl','11587nVliRg','1987777yhsvyf'];a20_0x4af5=function(){return _0x1d9462;};return a20_0x4af5();}function a20_0x4e4c(_0x4dacb8,_0x4af55a){_0x4dacb8=_0x4dacb8-0x117;const _0x4af5d3=a20_0x4af5();let _0x4e4c0f=_0x4af5d3[_0x4dacb8];return _0x4e4c0f;}import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
1
+ function a20_0x3982(_0x1b37b5,_0x187599){_0x1b37b5=_0x1b37b5-0x105;const _0x29b98d=a20_0x29b9();let _0x398233=_0x29b98d[_0x1b37b5];return _0x398233;}(function(_0xeced83,_0x33fb84){const _0x3a18c1=a20_0x3982,_0x2a009e=_0xeced83();while(!![]){try{const _0x162a4d=parseInt(_0x3a18c1(0x10a))/0x1*(-parseInt(_0x3a18c1(0x108))/0x2)+parseInt(_0x3a18c1(0x10d))/0x3+-parseInt(_0x3a18c1(0x107))/0x4+-parseInt(_0x3a18c1(0x105))/0x5*(parseInt(_0x3a18c1(0x109))/0x6)+-parseInt(_0x3a18c1(0x10c))/0x7+-parseInt(_0x3a18c1(0x106))/0x8+parseInt(_0x3a18c1(0x10b))/0x9;if(_0x162a4d===_0x33fb84)break;else _0x2a009e['push'](_0x2a009e['shift']());}catch(_0x2b8d85){_0x2a009e['push'](_0x2a009e['shift']());}}}(a20_0x29b9,0xca330));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';function a20_0x29b9(){const _0x524405=['7919065MgLaDl','4287870BWVFlJ','5LeXfSq','1224160jYpJLu','4972324rsBXyD','1121586EEtPcV','6643506jwgoYu','1CirsJx','32349222xeEEUe'];a20_0x29b9=function(){return _0x524405;};return a20_0x29b9();}import{appAddDefinition}from'../../commands/app/add.js';import{appRemoveDefinition}from'../../commands/app/remove.js';export const appDefinitions=[appListDefinition,appRemoteDefinition,appUseDefinition,appAddDefinition,appRemoveDefinition];
@@ -1 +1 @@
1
- const a21_0x5afff2=a21_0x4749;function a21_0x4749(_0x371c1f,_0x172879){_0x371c1f=_0x371c1f-0x12a;const _0x226484=a21_0x2264();let _0x474908=_0x226484[_0x371c1f];return _0x474908;}(function(_0x477c0d,_0x44370b){const _0x4920f3=a21_0x4749,_0x421787=_0x477c0d();while(!![]){try{const _0x3f749d=-parseInt(_0x4920f3(0x12c))/0x1+parseInt(_0x4920f3(0x130))/0x2+-parseInt(_0x4920f3(0x147))/0x3*(parseInt(_0x4920f3(0x135))/0x4)+parseInt(_0x4920f3(0x142))/0x5*(-parseInt(_0x4920f3(0x150))/0x6)+-parseInt(_0x4920f3(0x143))/0x7*(parseInt(_0x4920f3(0x14a))/0x8)+parseInt(_0x4920f3(0x131))/0x9*(parseInt(_0x4920f3(0x133))/0xa)+parseInt(_0x4920f3(0x12f))/0xb;if(_0x3f749d===_0x44370b)break;else _0x421787['push'](_0x421787['shift']());}catch(_0x598a43){_0x421787['push'](_0x421787['shift']());}}}(a21_0x2264,0x29c5d));import{readRawConfigWithLayers}from'../../context.js';function a21_0x2264(){const _0x52604a=['3461953UWZWGa','509132jAHNLT','2487879AAPigm','mergedCli','10WaiGzT','List\x20all\x20configured\x20apps','148TrlPYd','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','app','global','boolean','projectPath','bool','defaultApp','\x20in\x20','length','apps','push','No\x20apps\x20configured','26555sdHwYL','1276772osKEht','isCurrent','globalPath','appcode','27003AJqVgS','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','object','8tJLidw','entries','merged','list','\x20config','project','162GWUviV','.\x20Use\x20`','inherit','map','15789OiBAdf','globalConfig','projectConfig'];a21_0x2264=function(){return _0x52604a;};return a21_0x2264();}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(_0x47a8c2,_0x43d430){const _0x1b5dfb=a21_0x4749,_0x2fffa8=[],_0x5d02bb=_0x47a8c2[_0x1b5dfb(0x13f)]&&typeof _0x47a8c2[_0x1b5dfb(0x13f)]===_0x1b5dfb(0x149)?_0x47a8c2[_0x1b5dfb(0x13f)]:{},_0x571e77=_0x47a8c2[_0x1b5dfb(0x13c)]||undefined;for(const [_0x29f18f,_0x323385]of Object[_0x1b5dfb(0x14b)](_0x5d02bb)){if(!_0x323385||typeof _0x323385!==_0x1b5dfb(0x149)||!_0x323385[_0x1b5dfb(0x146)])continue;_0x2fffa8[_0x1b5dfb(0x140)]({'name':_0x29f18f,'appcode':_0x323385[_0x1b5dfb(0x146)],'named':!![],'definedIn':_0x43d430,'isDefault':_0x29f18f===_0x571e77,...buildAppProfileListFields(_0x323385)});}return _0x2fffa8;}function buildMergedItems(_0x18f9d7,_0x198427){const _0x3df649=a21_0x4749,{apps:apps={},defaultApp:_0x32a562}=_0x18f9d7,_0x13dd67=_0x198427[_0x3df649(0x12d)][_0x3df649(0x13f)]&&typeof _0x198427[_0x3df649(0x12d)][_0x3df649(0x13f)]===_0x3df649(0x149)?_0x198427[_0x3df649(0x12d)][_0x3df649(0x13f)]:{},_0x52056b=_0x198427[_0x3df649(0x12e)][_0x3df649(0x13f)]&&typeof _0x198427[_0x3df649(0x12e)]['apps']===_0x3df649(0x149)?_0x198427[_0x3df649(0x12e)][_0x3df649(0x13f)]:{},_0x1aafc8=_0x198427[_0x3df649(0x12e)][_0x3df649(0x12a)]===![],_0x5dc173=Object[_0x3df649(0x14b)](apps),_0x3669dd=_0x5dc173[_0x3df649(0x12b)](([_0xf60cb8,_0x1c99f3])=>({'name':_0xf60cb8,'appcode':_0x1c99f3[_0x3df649(0x146)],'named':!![],'definedIn':appDefinedIn(_0xf60cb8,_0x13dd67,_0x52056b,_0x1aafc8),'isDefault':_0xf60cb8===_0x32a562,...buildAppProfileListFields(_0x1c99f3)}));return _0x3669dd;}async function execute(_0x321e9c){const _0xb7c852=a21_0x4749,_0x3f6079=_0x321e9c[_0xb7c852(0x13b)](_0xb7c852(0x138)),_0x2120bf=_0x321e9c[_0xb7c852(0x13b)]('project'),_0x4b1694=_0x3f6079?_0xb7c852(0x138):_0x2120bf?'project':'merged',{config:_0x3d00cc,layers:_0x1f5fc2}=readRawConfigWithLayers(),_0x1a5352=resolveDefaultAppSource(_0x1f5fc2),{defaultApp:_0x26c92d}=_0x3d00cc;let _0x4b8f08,_0x1ca520;switch(_0x4b1694){case _0xb7c852(0x138):_0x4b8f08=buildItemsFromLayer(_0x1f5fc2[_0xb7c852(0x12d)],_0xb7c852(0x138)),_0x1ca520=_0x1f5fc2[_0xb7c852(0x145)];break;case _0xb7c852(0x14f):_0x4b8f08=buildItemsFromLayer(_0x1f5fc2[_0xb7c852(0x12e)],_0xb7c852(0x14f)),_0x1ca520=_0x1f5fc2[_0xb7c852(0x13a)];break;default:_0x4b8f08=buildMergedItems(_0x3d00cc,_0x1f5fc2);break;}enrichAppListItemsWithMergedSelection(_0x4b8f08,_0x321e9c[_0xb7c852(0x132)]);if(_0x4b8f08[_0xb7c852(0x13e)]===0x0){const _0x106d17=_0x4b1694===_0xb7c852(0x14c)?'':_0xb7c852(0x13d)+_0x4b1694+_0xb7c852(0x14e);return{'ok':!![],'data':[],'message':_0xb7c852(0x141)+_0x106d17+_0xb7c852(0x151)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x1850ad=_0x4b8f08['find'](_0x28cd86=>_0x28cd86[_0xb7c852(0x144)]===!![]),_0x1ea5ad=_0x26c92d??_0x1850ad?.[_0xb7c852(0x146)]??null,_0x3acd3d=_0x4b1694==='merged'?{'globalPath':_0x1f5fc2[_0xb7c852(0x145)]??null,'projectPath':_0x1f5fc2[_0xb7c852(0x13a)]??null,'defaultApp':_0x1ea5ad,'defaultAppSource':_0x26c92d!=null?_0x1a5352:null}:{'scope':_0x4b1694,'configPath':_0x1ca520??null};return{'ok':!![],'data':{'items':_0x4b8f08,'meta':_0x3acd3d}};}export const appListDefinition={'service':a21_0x5afff2(0x137),'command':a21_0x5afff2(0x14d),'description':a21_0x5afff2(0x134),'risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[{'name':'global','type':a21_0x5afff2(0x139),'description':a21_0x5afff2(0x148),'default':![]},{'name':a21_0x5afff2(0x14f),'type':a21_0x5afff2(0x139),'description':a21_0x5afff2(0x136),'default':![]}],'execute':execute};
1
+ const a21_0x40cdb0=a21_0x449a;function a21_0x449a(_0x3496f9,_0x3ae65b){_0x3496f9=_0x3496f9-0x16e;const _0x527201=a21_0x5272();let _0x449a1e=_0x527201[_0x3496f9];return _0x449a1e;}(function(_0x2f05d2,_0x5e2a5c){const _0x23d887=a21_0x449a,_0x218120=_0x2f05d2();while(!![]){try{const _0x16b510=parseInt(_0x23d887(0x170))/0x1*(parseInt(_0x23d887(0x17a))/0x2)+-parseInt(_0x23d887(0x189))/0x3*(-parseInt(_0x23d887(0x179))/0x4)+parseInt(_0x23d887(0x190))/0x5+parseInt(_0x23d887(0x178))/0x6*(parseInt(_0x23d887(0x176))/0x7)+-parseInt(_0x23d887(0x17e))/0x8*(-parseInt(_0x23d887(0x173))/0x9)+parseInt(_0x23d887(0x188))/0xa*(parseInt(_0x23d887(0x185))/0xb)+-parseInt(_0x23d887(0x18a))/0xc;if(_0x16b510===_0x5e2a5c)break;else _0x218120['push'](_0x218120['shift']());}catch(_0x2d30ce){_0x218120['push'](_0x218120['shift']());}}}(a21_0x5272,0x63ce8));import{readRawConfigWithLayers}from'../../context.js';function a21_0x5272(){const _0x1a8171=['app','global','appcode','read','232881tlgUIr','No\x20apps\x20configured','list','290hCVfPI','54060PDOPOX','23736672bNlfdx','projectPath','project','\x20config','bool','globalConfig','1937065aJFSuS','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','boolean','21ujTtba','merged','globalPath','9kAhhOm','defaultApp','apps','1112860jxgarV','object','12ZFUEcn','12qtCCzY','40126mvmPvi','projectConfig','push','entries','4737192bEkouH','.\x20Use\x20`','find'];a21_0x5272=function(){return _0x1a8171;};return a21_0x5272();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x1d283a,_0x55339a){const _0x29dfe7=a21_0x449a,_0x4226a2=[],_0x3d5561=_0x1d283a[_0x29dfe7(0x175)]&&typeof _0x1d283a[_0x29dfe7(0x175)]===_0x29dfe7(0x177)?_0x1d283a[_0x29dfe7(0x175)]:{},_0x2aa186=_0x1d283a[_0x29dfe7(0x174)]||undefined;for(const [_0x521eeb,_0x22781b]of Object[_0x29dfe7(0x17d)](_0x3d5561)){if(!_0x22781b||typeof _0x22781b!=='object'||!_0x22781b[_0x29dfe7(0x183)])continue;_0x4226a2[_0x29dfe7(0x17c)]({'name':_0x521eeb,'appcode':_0x22781b[_0x29dfe7(0x183)],'named':!![],'definedIn':_0x55339a,'isDefault':_0x521eeb===_0x2aa186,...buildAppProfileListFields(_0x22781b)});}return _0x4226a2;}function buildMergedItems(_0x3a4cf2,_0x3d67c0){const _0x3f1702=a21_0x449a,{apps:apps={},defaultApp:_0x2d0a10}=_0x3a4cf2,_0x3651c8=_0x3d67c0[_0x3f1702(0x18f)][_0x3f1702(0x175)]&&typeof _0x3d67c0[_0x3f1702(0x18f)][_0x3f1702(0x175)]===_0x3f1702(0x177)?_0x3d67c0[_0x3f1702(0x18f)][_0x3f1702(0x175)]:{},_0x29643e=_0x3d67c0[_0x3f1702(0x17b)][_0x3f1702(0x175)]&&typeof _0x3d67c0[_0x3f1702(0x17b)][_0x3f1702(0x175)]===_0x3f1702(0x177)?_0x3d67c0[_0x3f1702(0x17b)][_0x3f1702(0x175)]:{},_0xa8cd4d=_0x3d67c0['projectConfig']['inherit']===![],_0x171927=Object['entries'](apps),_0x1f2976=_0x171927['map'](([_0x2ba33b,_0x459d81])=>({'name':_0x2ba33b,'appcode':_0x459d81[_0x3f1702(0x183)],'named':!![],'definedIn':appDefinedIn(_0x2ba33b,_0x3651c8,_0x29643e,_0xa8cd4d),'isDefault':_0x2ba33b===_0x2d0a10,...buildAppProfileListFields(_0x459d81)}));return _0x1f2976;}async function execute(_0x50c21a){const _0x42228d=a21_0x449a,_0x2405e7=_0x50c21a[_0x42228d(0x18e)](_0x42228d(0x182)),_0x712856=_0x50c21a['bool']('project'),_0x62b9b6=_0x2405e7?_0x42228d(0x182):_0x712856?_0x42228d(0x18c):_0x42228d(0x171),{config:_0x1c21c6,layers:_0x55645c}=readRawConfigWithLayers(),_0x46acb5=resolveDefaultAppSource(_0x55645c),{defaultApp:_0x166265}=_0x1c21c6;let _0x37bebb,_0x1cd068;switch(_0x62b9b6){case _0x42228d(0x182):_0x37bebb=buildItemsFromLayer(_0x55645c[_0x42228d(0x18f)],_0x42228d(0x182)),_0x1cd068=_0x55645c[_0x42228d(0x172)];break;case _0x42228d(0x18c):_0x37bebb=buildItemsFromLayer(_0x55645c['projectConfig'],'project'),_0x1cd068=_0x55645c[_0x42228d(0x18b)];break;default:_0x37bebb=buildMergedItems(_0x1c21c6,_0x55645c);break;}enrichAppListItemsWithMergedSelection(_0x37bebb,_0x50c21a['mergedCli']);if(_0x37bebb['length']===0x0){const _0x35c131=_0x62b9b6===_0x42228d(0x171)?'':'\x20in\x20'+_0x62b9b6+_0x42228d(0x18d);return{'ok':!![],'data':[],'message':_0x42228d(0x186)+_0x35c131+_0x42228d(0x17f)+CLI_BIN_NAME+'\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.'};}const _0x3ee0d1=_0x37bebb[_0x42228d(0x180)](_0x26cccf=>_0x26cccf['isCurrent']===!![]),_0x1eb99b=_0x166265??_0x3ee0d1?.[_0x42228d(0x183)]??null,_0x5941b3=_0x62b9b6===_0x42228d(0x171)?{'globalPath':_0x55645c[_0x42228d(0x172)]??null,'projectPath':_0x55645c[_0x42228d(0x18b)]??null,'defaultApp':_0x1eb99b,'defaultAppSource':_0x166265!=null?_0x46acb5:null}:{'scope':_0x62b9b6,'configPath':_0x1cd068??null};return{'ok':!![],'data':{'items':_0x37bebb,'meta':_0x5941b3}};}export const appListDefinition={'service':a21_0x40cdb0(0x181),'command':a21_0x40cdb0(0x187),'description':'List\x20all\x20configured\x20apps','risk':a21_0x40cdb0(0x184),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x40cdb0(0x182),'type':a21_0x40cdb0(0x16f),'description':'Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','default':![]},{'name':a21_0x40cdb0(0x18c),'type':'boolean','description':a21_0x40cdb0(0x16e),'default':![]}],'execute':execute};
@@ -1 +1 @@
1
- const a22_0x23e096=a22_0x50ea;function a22_0x50ea(_0x1352b1,_0x324261){_0x1352b1=_0x1352b1-0x1ae;const _0x45b6f8=a22_0x45b6();let _0x50ea33=_0x45b6f8[_0x1352b1];return _0x50ea33;}(function(_0x3401ba,_0x566254){const _0x220967=a22_0x50ea,_0x375e1a=_0x3401ba();while(!![]){try{const _0x50602e=-parseInt(_0x220967(0x1cc))/0x1*(-parseInt(_0x220967(0x1cb))/0x2)+-parseInt(_0x220967(0x1b5))/0x3+-parseInt(_0x220967(0x1d0))/0x4+-parseInt(_0x220967(0x1c1))/0x5*(-parseInt(_0x220967(0x1ce))/0x6)+parseInt(_0x220967(0x1ba))/0x7*(parseInt(_0x220967(0x1be))/0x8)+-parseInt(_0x220967(0x1bc))/0x9*(-parseInt(_0x220967(0x1b0))/0xa)+-parseInt(_0x220967(0x1b7))/0xb;if(_0x50602e===_0x566254)break;else _0x375e1a['push'](_0x375e1a['shift']());}catch(_0x40adfc){_0x375e1a['push'](_0x375e1a['shift']());}}}(a22_0x45b6,0x751b3));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x2da94b){const _0xf6f831=a22_0x50ea,_0x21e5c4=_0x2da94b['args'][0x0]?.[_0xf6f831(0x1c0)]();if(!_0x21e5c4)throw CliErrors[_0xf6f831(0x1cf)]('Missing\x20app\x20name.',_0xf6f831(0x1b2)+CLI_BIN_NAME+_0xf6f831(0x1d5));}async function execute(_0x5072f1){const _0x27a3e5=a22_0x50ea,_0x315dcd=_0x5072f1[_0x27a3e5(0x1c8)][0x0]?.[_0x27a3e5(0x1c0)]();if(!_0x315dcd)throw CliErrors['validation'](_0x27a3e5(0x1d4),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');const _0x25532a=_0x5072f1[_0x27a3e5(0x1c2)](_0x27a3e5(0x1b3)),{config:_0x6c4ce,layers:_0x55147a}=readRawConfigWithLayers(),_0x2a6e3b=_0x6c4ce[_0x27a3e5(0x1d2)]??{};if(!_0x2a6e3b[_0x315dcd])throw CliErrors[_0x27a3e5(0x1cf)](_0x27a3e5(0x1af)+_0x315dcd+_0x27a3e5(0x1d7));const _0x11aa10=_0x55147a[_0x27a3e5(0x1d6)][_0x27a3e5(0x1d2)]&&typeof _0x55147a[_0x27a3e5(0x1d6)][_0x27a3e5(0x1d2)]===_0x27a3e5(0x1b4)?_0x55147a[_0x27a3e5(0x1d6)][_0x27a3e5(0x1d2)]:{},_0x525f56=_0x55147a[_0x27a3e5(0x1c3)]['apps']&&typeof _0x55147a[_0x27a3e5(0x1c3)][_0x27a3e5(0x1d2)]===_0x27a3e5(0x1b4)?_0x55147a[_0x27a3e5(0x1c3)]['apps']:{},_0x7a8be7=appDefinedIn(_0x315dcd,_0x11aa10,_0x525f56,_0x55147a[_0x27a3e5(0x1c3)][_0x27a3e5(0x1bb)]===![]),_0x330885=resolveAppScopeForWrite(_0x315dcd,_0x25532a,_0x55147a),_0x1262d7={'global':_0x330885==='global'},_0x4d9d0f=readConfig(_0x1262d7),_0x4008ac=_0x4d9d0f[_0x27a3e5(0x1d2)];if(!_0x4008ac||!_0x4008ac[_0x315dcd])throw CliErrors[_0x27a3e5(0x1cf)](_0x27a3e5(0x1af)+_0x315dcd+_0x27a3e5(0x1d7));delete _0x4008ac[_0x315dcd];let _0x3213da='';if(_0x4d9d0f[_0x27a3e5(0x1cd)]===_0x315dcd){const _0x4d1dec=Object[_0x27a3e5(0x1b6)](_0x4008ac);_0x4d9d0f[_0x27a3e5(0x1cd)]=_0x4d1dec[_0x27a3e5(0x1bd)]>0x0?_0x4d1dec[0x0]:undefined,_0x4d9d0f[_0x27a3e5(0x1cd)]?_0x3213da=_0x27a3e5(0x1c6)+_0x4d9d0f[_0x27a3e5(0x1cd)]+'\x22.':delete _0x4d9d0f[_0x27a3e5(0x1cd)];}Object[_0x27a3e5(0x1b6)](_0x4008ac)[_0x27a3e5(0x1bd)]===0x0&&(delete _0x4d9d0f['apps'],delete _0x4d9d0f[_0x27a3e5(0x1cd)]);writeConfig(_0x4d9d0f,_0x1262d7);const _0x2b07d6=_0x7a8be7===_0x27a3e5(0x1b9)?_0x27a3e5(0x1c4)+_0x315dcd+_0x27a3e5(0x1b8)+(_0x330885===_0x27a3e5(0x1b1)?_0x27a3e5(0x1b3):'project')+'\x20config.':'';return{'ok':!![],'message':_0x27a3e5(0x1c9)+_0x315dcd+'\x22'+scopeLabel(_0x1262d7)+'.'+_0x3213da+_0x2b07d6};}export const appRemoveDefinition={'service':a22_0x23e096(0x1c5),'command':a22_0x23e096(0x1bf),'description':'Remove\x20an\x20app\x20from\x20config','risk':a22_0x23e096(0x1d3),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x23e096(0x1ae),'description':a22_0x23e096(0x1ca),'required':!![]}],'flags':[{'name':a22_0x23e096(0x1b3),'type':a22_0x23e096(0x1c7),'description':a22_0x23e096(0x1d1),'default':![]}],'validate':validateArgs,'execute':execute};function a22_0x45b6(){const _0xc0982a=['apps','high-risk-write','Missing\x20app\x20name.','\x20app\x20remove\x20<name>\x20[--global]','globalConfig','\x22\x20not\x20found.','name','App\x20\x22','7778930WgIhtY','project','Usage:\x20','global','object','1653003dQNIyR','keys','9826476jptYWm','\x22\x20still\x20defined\x20in\x20','both','323001ZbtfvF','inherit','9Eygmjs','length','144FWXgwp','remove','trim','25NCUcOg','bool','projectConfig','\x20Note:\x20app\x20\x22','app','\x20Default\x20app\x20changed\x20to\x20\x22','boolean','args','Removed\x20app\x20\x22','App\x20profile\x20name\x20to\x20remove','1729228HLUdZb','1IJynNV','defaultApp','245598rfXAni','validation','3015048XGNdgC','Use\x20global\x20config\x20scope'];a22_0x45b6=function(){return _0xc0982a;};return a22_0x45b6();}
1
+ const a22_0xd167a5=a22_0x5ce2;(function(_0x3db799,_0x41e043){const _0x55a35e=a22_0x5ce2,_0xec28b6=_0x3db799();while(!![]){try{const _0x5be0ab=parseInt(_0x55a35e(0xba))/0x1*(-parseInt(_0x55a35e(0xd2))/0x2)+-parseInt(_0x55a35e(0xc0))/0x3*(-parseInt(_0x55a35e(0xc2))/0x4)+-parseInt(_0x55a35e(0xc1))/0x5*(parseInt(_0x55a35e(0xc5))/0x6)+-parseInt(_0x55a35e(0xbf))/0x7*(-parseInt(_0x55a35e(0xaf))/0x8)+parseInt(_0x55a35e(0xb8))/0x9+parseInt(_0x55a35e(0xcd))/0xa+-parseInt(_0x55a35e(0xc7))/0xb*(-parseInt(_0x55a35e(0xc6))/0xc);if(_0x5be0ab===_0x41e043)break;else _0xec28b6['push'](_0xec28b6['shift']());}catch(_0xf060d2){_0xec28b6['push'](_0xec28b6['shift']());}}}(a22_0x3494,0x610b3));import{CliErrors}from'../../errors.js';function a22_0x3494(){const _0x50e616=['remove','\x20app\x20remove\x20<name>\x20[--global]','projectConfig','bool','1767636yQbpUD','App\x20\x22','127376kwNdHo','boolean','global','trim','globalConfig','14LTCiVY','12309aFCejY','5SOedmo','56iogBff','App\x20profile\x20name\x20to\x20remove','validation','4077102EicKsl','4106172XwumZw','11sRsIQS','Removed\x20app\x20\x22','Use\x20global\x20config\x20scope','apps','\x22\x20still\x20defined\x20in\x20','length','6422290wwLpKh','Remove\x20an\x20app\x20from\x20config','object','project','\x20Note:\x20app\x20\x22','4SMjfeX','name','high-risk-write','inherit','defaultApp','Usage:\x20','args','both','374016TYDONd','app','Missing\x20app\x20name.','\x20config.','keys'];a22_0x3494=function(){return _0x50e616;};return a22_0x3494();}import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0xcb87a4){const _0x2c7ce5=a22_0x5ce2,_0x7c129c=_0xcb87a4['args'][0x0]?.[_0x2c7ce5(0xbd)]();if(!_0x7c129c)throw CliErrors['validation'](_0x2c7ce5(0xb1),_0x2c7ce5(0xd7)+CLI_BIN_NAME+_0x2c7ce5(0xb5));}async function execute(_0x19943d){const _0x58f823=a22_0x5ce2,_0x280183=_0x19943d[_0x58f823(0xd8)][0x0]?.[_0x58f823(0xbd)]();if(!_0x280183)throw CliErrors[_0x58f823(0xc4)](_0x58f823(0xb1),_0x58f823(0xd7)+CLI_BIN_NAME+_0x58f823(0xb5));const _0x554da2=_0x19943d[_0x58f823(0xb7)]('global'),{config:_0x533a1e,layers:_0x39de9f}=readRawConfigWithLayers(),_0x2a9cbb=_0x533a1e[_0x58f823(0xca)]??{};if(!_0x2a9cbb[_0x280183])throw CliErrors['validation']('App\x20\x22'+_0x280183+'\x22\x20not\x20found.');const _0x1d5f1d=_0x39de9f[_0x58f823(0xbe)][_0x58f823(0xca)]&&typeof _0x39de9f[_0x58f823(0xbe)][_0x58f823(0xca)]==='object'?_0x39de9f['globalConfig'][_0x58f823(0xca)]:{},_0x557383=_0x39de9f[_0x58f823(0xb6)][_0x58f823(0xca)]&&typeof _0x39de9f[_0x58f823(0xb6)][_0x58f823(0xca)]===_0x58f823(0xcf)?_0x39de9f[_0x58f823(0xb6)][_0x58f823(0xca)]:{},_0x4fafe5=appDefinedIn(_0x280183,_0x1d5f1d,_0x557383,_0x39de9f['projectConfig'][_0x58f823(0xd5)]===![]),_0x1ec728=resolveAppScopeForWrite(_0x280183,_0x554da2,_0x39de9f),_0x3254a4={'global':_0x1ec728===_0x58f823(0xbc)},_0x49ec43=readConfig(_0x3254a4),_0x560e0e=_0x49ec43['apps'];if(!_0x560e0e||!_0x560e0e[_0x280183])throw CliErrors['validation'](_0x58f823(0xb9)+_0x280183+'\x22\x20not\x20found.');delete _0x560e0e[_0x280183];let _0x57d9a3='';if(_0x49ec43[_0x58f823(0xd6)]===_0x280183){const _0x4d6256=Object[_0x58f823(0xb3)](_0x560e0e);_0x49ec43[_0x58f823(0xd6)]=_0x4d6256['length']>0x0?_0x4d6256[0x0]:undefined,_0x49ec43[_0x58f823(0xd6)]?_0x57d9a3='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x49ec43[_0x58f823(0xd6)]+'\x22.':delete _0x49ec43[_0x58f823(0xd6)];}Object[_0x58f823(0xb3)](_0x560e0e)[_0x58f823(0xcc)]===0x0&&(delete _0x49ec43['apps'],delete _0x49ec43['defaultApp']);writeConfig(_0x49ec43,_0x3254a4);const _0x5de24f=_0x4fafe5===_0x58f823(0xae)?_0x58f823(0xd1)+_0x280183+_0x58f823(0xcb)+(_0x1ec728==='project'?_0x58f823(0xbc):_0x58f823(0xd0))+_0x58f823(0xb2):'';return{'ok':!![],'message':_0x58f823(0xc8)+_0x280183+'\x22'+scopeLabel(_0x3254a4)+'.'+_0x57d9a3+_0x5de24f};}function a22_0x5ce2(_0x1600bb,_0x3bb3c2){_0x1600bb=_0x1600bb-0xae;const _0x349441=a22_0x3494();let _0x5ce2ec=_0x349441[_0x1600bb];return _0x5ce2ec;}export const appRemoveDefinition={'service':a22_0xd167a5(0xb0),'command':a22_0xd167a5(0xb4),'description':a22_0xd167a5(0xce),'risk':a22_0xd167a5(0xd4),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0xd167a5(0xd3),'description':a22_0xd167a5(0xc3),'required':!![]}],'flags':[{'name':a22_0xd167a5(0xbc),'type':a22_0xd167a5(0xbb),'description':a22_0xd167a5(0xc9),'default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- (function(_0x37a409,_0x7ca9a6){const _0x12cd14=a23_0x504a,_0x47ffa4=_0x37a409();while(!![]){try{const _0x10236f=parseInt(_0x12cd14(0x1e6))/0x1*(parseInt(_0x12cd14(0x1d1))/0x2)+-parseInt(_0x12cd14(0x1cf))/0x3*(-parseInt(_0x12cd14(0x1d5))/0x4)+parseInt(_0x12cd14(0x1d7))/0x5*(parseInt(_0x12cd14(0x1e0))/0x6)+-parseInt(_0x12cd14(0x1de))/0x7*(-parseInt(_0x12cd14(0x1e1))/0x8)+parseInt(_0x12cd14(0x1e8))/0x9+parseInt(_0x12cd14(0x1eb))/0xa+-parseInt(_0x12cd14(0x1e3))/0xb;if(_0x10236f===_0x7ca9a6)break;else _0x47ffa4['push'](_0x47ffa4['shift']());}catch(_0xe68187){_0x47ffa4['push'](_0x47ffa4['shift']());}}}(a23_0x277c,0xc80a9));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x14d24d,_0x1d9c74){const _0x199e5b=a23_0x504a;if(!_0x1d9c74)return;const _0x1a05b7=_0x1d9c74['apps']&&typeof _0x1d9c74[_0x199e5b(0x1ed)]==='object'?_0x1d9c74[_0x199e5b(0x1ed)]:{},_0x3a5bbf=Object[_0x199e5b(0x1d6)](_0x1a05b7)[_0x199e5b(0x1df)]>0x0;for(const _0x2d6492 of _0x14d24d){_0x2d6492[_0x199e5b(0x1d0)]=![];}const _0x266978=_0x1d9c74[_0x199e5b(0x1d4)]!=null?String(_0x1d9c74[_0x199e5b(0x1d4)])[_0x199e5b(0x1e4)]():'';if(_0x3a5bbf){const _0x20f518=_0x1d9c74[_0x199e5b(0x1d3)]??_0x1d9c74[_0x199e5b(0x1dc)];if(_0x20f518)for(const _0x4c46c7 of _0x14d24d){_0x4c46c7[_0x199e5b(0x1e7)]===!![]&&_0x4c46c7[_0x199e5b(0x1da)]===_0x20f518&&(_0x4c46c7['isCurrent']=!![]);}for(const _0x352dba of _0x14d24d){if(_0x352dba[_0x199e5b(0x1e7)]!==![])continue;if(_0x1d9c74[_0x199e5b(0x1dc)])continue;_0x266978&&String(_0x352dba[_0x199e5b(0x1d8)]??'')['trim']()===_0x266978&&(_0x352dba[_0x199e5b(0x1d0)]=!![]);}return;}if(!_0x266978)return;for(const _0x3d7087 of _0x14d24d){String(_0x3d7087['appcode']??'')[_0x199e5b(0x1e4)]()===_0x266978&&(_0x3d7087[_0x199e5b(0x1d0)]=!![]);}}function a23_0x504a(_0x401b5b,_0x25eb54){_0x401b5b=_0x401b5b-0x1cf;const _0x277c29=a23_0x277c();let _0x504a64=_0x277c29[_0x401b5b];return _0x504a64;}export function resolveAppScopeForWrite(_0x56451f,_0x1babb2,_0x372fc4){const _0x203635=a23_0x504a;if(_0x1babb2)return _0x203635(0x1d2);const _0x36c2fc=_0x372fc4[_0x203635(0x1dd)][_0x203635(0x1ed)]&&typeof _0x372fc4[_0x203635(0x1dd)][_0x203635(0x1ed)]==='object'?_0x372fc4['projectConfig'][_0x203635(0x1ed)]:{},_0x309d6f=_0x372fc4[_0x203635(0x1ea)][_0x203635(0x1ed)]&&typeof _0x372fc4[_0x203635(0x1ea)]['apps']===_0x203635(0x1e5)?_0x372fc4['globalConfig']['apps']:{};if(Object[_0x203635(0x1db)][_0x203635(0x1ec)][_0x203635(0x1e9)](_0x36c2fc,_0x56451f))return'project';if(Object[_0x203635(0x1db)][_0x203635(0x1ec)][_0x203635(0x1e9)](_0x309d6f,_0x56451f))return'global';return'project';}export function appDefinedIn(_0xfb283f,_0x49001a,_0x50e7f2,_0x1776f8){const _0x28944a=a23_0x504a;if(_0x1776f8)return Object[_0x28944a(0x1db)][_0x28944a(0x1ec)][_0x28944a(0x1e9)](_0x50e7f2,_0xfb283f)?_0x28944a(0x1d9):_0x28944a(0x1d2);const _0x3dde5b=Object[_0x28944a(0x1db)][_0x28944a(0x1ec)]['call'](_0x49001a,_0xfb283f),_0x15691d=Object[_0x28944a(0x1db)][_0x28944a(0x1ec)][_0x28944a(0x1e9)](_0x50e7f2,_0xfb283f);if(_0x3dde5b&&_0x15691d)return _0x28944a(0x1e2);if(_0x15691d)return'project';return _0x28944a(0x1d2);}function a23_0x277c(){const _0x5b4885=['projectConfig','7455gATdWZ','length','894HFnTva','5712pCEWia','both','43120121KDpDpX','trim','object','3008YdAYyr','named','4478571GnZTCt','call','globalConfig','8262210UeoPDv','hasOwnProperty','apps','6NlTswR','isCurrent','664TYdtOI','global','currentApp','appCode','494464irRdnH','keys','47290fyvMuU','appcode','project','name','prototype','defaultApp'];a23_0x277c=function(){return _0x5b4885;};return a23_0x277c();}export function resolveDefaultAppSource(_0x2b95f4){const _0x4f2be5=a23_0x504a,_0x289a5c=_0x2b95f4[_0x4f2be5(0x1dd)][_0x4f2be5(0x1ed)]&&typeof _0x2b95f4[_0x4f2be5(0x1dd)]['apps']===_0x4f2be5(0x1e5)?_0x2b95f4[_0x4f2be5(0x1dd)][_0x4f2be5(0x1ed)]:{};if(_0x4f2be5(0x1dc)in _0x2b95f4[_0x4f2be5(0x1dd)])return _0x4f2be5(0x1d9);if(Object['keys'](_0x289a5c)[_0x4f2be5(0x1df)]>0x0)return _0x4f2be5(0x1d9);if(_0x2b95f4[_0x4f2be5(0x1dd)]['inherit']===![])return null;if(_0x2b95f4[_0x4f2be5(0x1ea)][_0x4f2be5(0x1dc)])return'global';return null;}export function getConfigPath(_0x4438b5={}){const _0x12b03d=a23_0x504a,_0x55680f=_0x4438b5[_0x12b03d(0x1d2)]?_0x12b03d(0x1d2):'project';return resolveWriteConfigPath(_0x55680f);}export function readConfig(_0x3f9933={}){return readConfigFile(getConfigPath(_0x3f9933));}export function writeConfig(_0x2de0df,_0x2ee431={}){writeConfigFile(getConfigPath(_0x2ee431),_0x2de0df);}export function scopeLabel(_0xef797a){const _0x255bcc=a23_0x504a;return _0xef797a[_0x255bcc(0x1d2)]?'\x20(global)':'';}
1
+ (function(_0x224996,_0x294379){const _0x4e426f=a23_0x6349,_0x3c575d=_0x224996();while(!![]){try{const _0x2c912=-parseInt(_0x4e426f(0xcb))/0x1*(parseInt(_0x4e426f(0xba))/0x2)+parseInt(_0x4e426f(0xb6))/0x3*(parseInt(_0x4e426f(0xc7))/0x4)+-parseInt(_0x4e426f(0xc4))/0x5*(-parseInt(_0x4e426f(0xc1))/0x6)+parseInt(_0x4e426f(0xd4))/0x7+-parseInt(_0x4e426f(0xcd))/0x8+-parseInt(_0x4e426f(0xbe))/0x9*(parseInt(_0x4e426f(0xd3))/0xa)+parseInt(_0x4e426f(0xbf))/0xb*(parseInt(_0x4e426f(0xc5))/0xc);if(_0x2c912===_0x294379)break;else _0x3c575d['push'](_0x3c575d['shift']());}catch(_0x3d9c53){_0x3c575d['push'](_0x3c575d['shift']());}}}(a23_0x229e,0x357f4));function a23_0x6349(_0x12fd83,_0x4d5374){_0x12fd83=_0x12fd83-0xb6;const _0x229eac=a23_0x229e();let _0x63490=_0x229eac[_0x12fd83];return _0x63490;}import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';export function enrichAppListItemsWithMergedSelection(_0x56e4f9,_0x486740){const _0xf3dcf8=a23_0x6349;if(!_0x486740)return;const _0x19d179=_0x486740[_0xf3dcf8(0xbd)]&&typeof _0x486740['apps']===_0xf3dcf8(0xb8)?_0x486740['apps']:{},_0x2afd61=Object['keys'](_0x19d179)['length']>0x0;for(const _0x40677e of _0x56e4f9){_0x40677e[_0xf3dcf8(0xc2)]=![];}const _0x449900=_0x486740[_0xf3dcf8(0xbb)]!=null?String(_0x486740[_0xf3dcf8(0xbb)])[_0xf3dcf8(0xbc)]():'';if(_0x2afd61){const _0x1fae3d=_0x486740[_0xf3dcf8(0xc6)]??_0x486740['defaultApp'];if(_0x1fae3d)for(const _0x25a458 of _0x56e4f9){_0x25a458[_0xf3dcf8(0xd5)]===!![]&&_0x25a458[_0xf3dcf8(0xd0)]===_0x1fae3d&&(_0x25a458[_0xf3dcf8(0xc2)]=!![]);}for(const _0x9d57a4 of _0x56e4f9){if(_0x9d57a4[_0xf3dcf8(0xd5)]!==![])continue;if(_0x486740[_0xf3dcf8(0xcf)])continue;_0x449900&&String(_0x9d57a4[_0xf3dcf8(0xc0)]??'')[_0xf3dcf8(0xbc)]()===_0x449900&&(_0x9d57a4[_0xf3dcf8(0xc2)]=!![]);}return;}if(!_0x449900)return;for(const _0x3eaa01 of _0x56e4f9){String(_0x3eaa01['appcode']??'')['trim']()===_0x449900&&(_0x3eaa01[_0xf3dcf8(0xc2)]=!![]);}}export function resolveAppScopeForWrite(_0xc95746,_0x225f21,_0x4765d4){const _0xdeb527=a23_0x6349;if(_0x225f21)return _0xdeb527(0xb7);const _0x276602=_0x4765d4[_0xdeb527(0xd2)][_0xdeb527(0xbd)]&&typeof _0x4765d4[_0xdeb527(0xd2)]['apps']==='object'?_0x4765d4[_0xdeb527(0xd2)][_0xdeb527(0xbd)]:{},_0x1b288c=_0x4765d4[_0xdeb527(0xd1)][_0xdeb527(0xbd)]&&typeof _0x4765d4[_0xdeb527(0xd1)][_0xdeb527(0xbd)]===_0xdeb527(0xb8)?_0x4765d4['globalConfig'][_0xdeb527(0xbd)]:{};if(Object[_0xdeb527(0xc3)]['hasOwnProperty'][_0xdeb527(0xd6)](_0x276602,_0xc95746))return _0xdeb527(0xc9);if(Object[_0xdeb527(0xc3)][_0xdeb527(0xb9)][_0xdeb527(0xd6)](_0x1b288c,_0xc95746))return _0xdeb527(0xb7);return _0xdeb527(0xc9);}export function appDefinedIn(_0x2badbc,_0x555b0a,_0x14392f,_0x85e469){const _0x1c7e2c=a23_0x6349;if(_0x85e469)return Object[_0x1c7e2c(0xc3)][_0x1c7e2c(0xb9)][_0x1c7e2c(0xd6)](_0x14392f,_0x2badbc)?_0x1c7e2c(0xc9):_0x1c7e2c(0xb7);const _0x52159c=Object[_0x1c7e2c(0xc3)]['hasOwnProperty']['call'](_0x555b0a,_0x2badbc),_0x5f5de3=Object[_0x1c7e2c(0xc3)][_0x1c7e2c(0xb9)][_0x1c7e2c(0xd6)](_0x14392f,_0x2badbc);if(_0x52159c&&_0x5f5de3)return _0x1c7e2c(0xca);if(_0x5f5de3)return'project';return _0x1c7e2c(0xb7);}export function resolveDefaultAppSource(_0x4926cf){const _0x24aefe=a23_0x6349,_0x21def4=_0x4926cf['projectConfig']['apps']&&typeof _0x4926cf[_0x24aefe(0xd2)]['apps']===_0x24aefe(0xb8)?_0x4926cf[_0x24aefe(0xd2)][_0x24aefe(0xbd)]:{};if(_0x24aefe(0xcf)in _0x4926cf[_0x24aefe(0xd2)])return _0x24aefe(0xc9);if(Object[_0x24aefe(0xce)](_0x21def4)[_0x24aefe(0xcc)]>0x0)return _0x24aefe(0xc9);if(_0x4926cf[_0x24aefe(0xd2)]['inherit']===![])return null;if(_0x4926cf[_0x24aefe(0xd1)][_0x24aefe(0xcf)])return _0x24aefe(0xb7);return null;}export function getConfigPath(_0x13c201={}){const _0x1068b1=a23_0x6349,_0x271482=_0x13c201[_0x1068b1(0xb7)]?_0x1068b1(0xb7):_0x1068b1(0xc9);return resolveWriteConfigPath(_0x271482);}function a23_0x229e(){const _0x2534c3=['keys','defaultApp','name','globalConfig','projectConfig','197040sUCpRb','301966CCSaCZ','named','call','312099fDaVep','global','object','hasOwnProperty','2ZnPdgj','appCode','trim','apps','9JGwoHx','2629KbkXgY','appcode','6OvMvNs','isCurrent','prototype','528455rHpKeZ','2916XZuBLM','currentApp','8SaxJYN','\x20(global)','project','both','98052qhYRdM','length','624736jnyfVe'];a23_0x229e=function(){return _0x2534c3;};return a23_0x229e();}export function readConfig(_0x370abf={}){return readConfigFile(getConfigPath(_0x370abf));}export function writeConfig(_0x557b81,_0x54f19f={}){writeConfigFile(getConfigPath(_0x54f19f),_0x557b81);}export function scopeLabel(_0x42fd85){const _0x4ae3e6=a23_0x6349;return _0x42fd85[_0x4ae3e6(0xb7)]?_0x4ae3e6(0xc8):'';}
@@ -1 +1 @@
1
- function a24_0x168c(_0x59be54,_0x59bea){_0x59be54=_0x59be54-0x1f1;const _0x33b396=a24_0x33b3();let _0x168c70=_0x33b396[_0x59be54];return _0x168c70;}const a24_0x2ffa45=a24_0x168c;(function(_0x171fbe,_0x3fe7e8){const _0x228ba6=a24_0x168c,_0xa76f5d=_0x171fbe();while(!![]){try{const _0x3a72eb=parseInt(_0x228ba6(0x215))/0x1+-parseInt(_0x228ba6(0x1f8))/0x2+-parseInt(_0x228ba6(0x1f9))/0x3+-parseInt(_0x228ba6(0x1fb))/0x4+-parseInt(_0x228ba6(0x214))/0x5+-parseInt(_0x228ba6(0x203))/0x6+parseInt(_0x228ba6(0x20e))/0x7*(parseInt(_0x228ba6(0x206))/0x8);if(_0x3a72eb===_0x3fe7e8)break;else _0xa76f5d['push'](_0xa76f5d['shift']());}catch(_0x21ca8c){_0xa76f5d['push'](_0xa76f5d['shift']());}}}(a24_0x33b3,0xb7e2c));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x1fe84a){const _0x629aeb=a24_0x168c,_0x4b9609=_0x1fe84a[_0x629aeb(0x1f3)][0x0]?.[_0x629aeb(0x20a)]();if(!_0x4b9609)throw CliErrors[_0x629aeb(0x204)](_0x629aeb(0x1fa),_0x629aeb(0x213)+CLI_BIN_NAME+_0x629aeb(0x218));}async function execute(_0x49df4d){const _0x10040d=a24_0x168c,_0x1bdc87=_0x49df4d[_0x10040d(0x1f3)][0x0]?.[_0x10040d(0x20a)]();if(!_0x1bdc87)throw CliErrors[_0x10040d(0x204)]('Missing\x20app\x20name.',_0x10040d(0x213)+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');const _0x195d71=_0x49df4d[_0x10040d(0x202)](_0x10040d(0x209)),{config:_0x3cee92,layers:_0x18bc36}=readRawConfigWithLayers(),_0x9810c8=_0x3cee92[_0x10040d(0x201)]??{},_0x5303df=_0x18bc36[_0x10040d(0x20c)][_0x10040d(0x201)]&&typeof _0x18bc36[_0x10040d(0x20c)][_0x10040d(0x201)]===_0x10040d(0x1f6)?_0x18bc36[_0x10040d(0x20c)]['apps']:{},_0x1487ff={..._0x5303df,..._0x9810c8};if(!_0x1487ff[_0x1bdc87]){const _0x4e099c=Object[_0x10040d(0x1fd)](_0x1487ff),_0xa69478=_0x4e099c[_0x10040d(0x1f7)]===0x0?'Use\x20`'+CLI_BIN_NAME+_0x10040d(0x210)+_0x1bdc87+_0x10040d(0x207):_0x10040d(0x200)+_0x4e099c[_0x10040d(0x1ff)](',\x20');throw CliErrors['validation'](_0x10040d(0x1f1)+_0x1bdc87+_0x10040d(0x1fc),_0xa69478);}let _0x2ccde2,_0x1f8db2='';if(_0x195d71)_0x2ccde2={'global':!![]};else{const _0x13a0aa=isInProject()&&!!_0x18bc36['projectPath'];_0x2ccde2={'global':!_0x13a0aa};}const _0x566fbe=readConfig(_0x2ccde2);_0x566fbe['defaultApp']=_0x1bdc87;if(!_0x2ccde2[_0x10040d(0x209)]){const _0x4499ab=_0x566fbe[_0x10040d(0x201)]&&typeof _0x566fbe[_0x10040d(0x201)]===_0x10040d(0x1f6)?_0x566fbe[_0x10040d(0x201)]:{};!Object[_0x10040d(0x205)]['hasOwnProperty'][_0x10040d(0x1f4)](_0x4499ab,_0x1bdc87)&&(_0x566fbe[_0x10040d(0x201)]={..._0x4499ab,[_0x1bdc87]:_0x1487ff[_0x1bdc87]},_0x1f8db2='\x0aNote:\x20\x22'+_0x1bdc87+_0x10040d(0x212));}return writeConfig(_0x566fbe,_0x2ccde2),{'ok':!![],'message':_0x10040d(0x1f2)+_0x1bdc87+_0x10040d(0x217)+_0x1487ff[_0x1bdc87][_0x10040d(0x216)]+')'+scopeLabel(_0x2ccde2)+_0x1f8db2};}export const appUseDefinition={'service':a24_0x2ffa45(0x211),'command':a24_0x2ffa45(0x20b),'description':a24_0x2ffa45(0x1f5),'risk':a24_0x2ffa45(0x20d),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x2ffa45(0x1fe),'description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':a24_0x2ffa45(0x209),'type':a24_0x2ffa45(0x208),'description':a24_0x2ffa45(0x20f),'default':![]}],'validate':validateArgs,'execute':execute};function a24_0x33b3(){const _0x3da264=['prototype','488pmpMwO','\x20--appcode\x20<code>`\x20first.','boolean','global','trim','use','globalConfig','write','346339bTikAL','Use\x20global\x20config\x20scope','\x20app\x20add\x20','app','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','Usage:\x20','6107505hIXbqm','517071FnJQLw','appcode','\x22\x20(appcode:\x20','\x20app\x20use\x20<name>\x20[--global]','App\x20\x22','Default\x20app\x20set\x20to\x20\x22','args','call','Switch\x20the\x20default\x20app','object','length','1258204HdZnTb','195768ZeQxLO','Missing\x20app\x20name.','2011320qnbuMI','\x22\x20not\x20found.','keys','name','join','Available:\x20','apps','bool','2179698SsXSCo','validation'];a24_0x33b3=function(){return _0x3da264;};return a24_0x33b3();}
1
+ function a24_0x4e4f(){const _0x3426fc=['validation','5083428QkgqNh','boolean','61315DsNOPv','bool','globalConfig','args','\x20app\x20use\x20<name>\x20[--global]','120vASmmi','App\x20\x22','296Ikgqis','\x20--appcode\x20<code>`\x20first.','456gsPKqQ','global','Missing\x20app\x20name.','1863510upEdRH','\x0aNote:\x20\x22','apps','use','projectPath','defaultApp','\x20app\x20add\x20','2aApZaE','Usage:\x20','appcode','65712quHMrC','Switch\x20the\x20default\x20app','app','Default\x20app\x20set\x20to\x20\x22','\x22\x20was\x20defined\x20in\x20global\x20config;\x20profile\x20copied\x20into\x20project\x20so\x20the\x20project\x20config\x20self-resolves\x20under\x20the\x20default\x20project-first\x20inherit\x20policy.','hasOwnProperty','105mueFQq','trim','call','1073871lCNmOS','join','keys','Use\x20`','303427aLeXyI','8397160xwHkWW','object'];a24_0x4e4f=function(){return _0x3426fc;};return a24_0x4e4f();}const a24_0x5d9934=a24_0x12fc;(function(_0x24a1ec,_0x5d2443){const _0x1ad19b=a24_0x12fc,_0x50743e=_0x24a1ec();while(!![]){try{const _0x2d2e61=parseInt(_0x1ad19b(0xaf))/0x1*(-parseInt(_0x1ad19b(0x9f))/0x2)+-parseInt(_0x1ad19b(0xb3))/0x3+-parseInt(_0x1ad19b(0x93))/0x4*(parseInt(_0x1ad19b(0xb5))/0x5)+parseInt(_0x1ad19b(0xa2))/0x6*(-parseInt(_0x1ad19b(0xa8))/0x7)+-parseInt(_0x1ad19b(0xb0))/0x8+parseInt(_0x1ad19b(0xab))/0x9*(-parseInt(_0x1ad19b(0xba))/0xa)+-parseInt(_0x1ad19b(0x98))/0xb*(-parseInt(_0x1ad19b(0x95))/0xc);if(_0x2d2e61===_0x5d2443)break;else _0x50743e['push'](_0x50743e['shift']());}catch(_0x3641cb){_0x50743e['push'](_0x50743e['shift']());}}}(a24_0x4e4f,0xd86be));function a24_0x12fc(_0x276904,_0x46476f){_0x276904=_0x276904-0x93;const _0x4e4f1c=a24_0x4e4f();let _0x12fcd4=_0x4e4f1c[_0x276904];return _0x12fcd4;}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers,isInProject}from'../../context.js';import{readConfig,writeConfig,scopeLabel}from'../../commands/app/shared.js';async function validateArgs(_0x3592e1){const _0x456ce0=a24_0x12fc,_0x50a575=_0x3592e1[_0x456ce0(0xb8)][0x0]?.[_0x456ce0(0xa9)]();if(!_0x50a575)throw CliErrors[_0x456ce0(0xb2)]('Missing\x20app\x20name.',_0x456ce0(0xa0)+CLI_BIN_NAME+_0x456ce0(0xb9));}async function execute(_0x5c55d5){const _0x4c577d=a24_0x12fc,_0x25ef80=_0x5c55d5[_0x4c577d(0xb8)][0x0]?.[_0x4c577d(0xa9)]();if(!_0x25ef80)throw CliErrors[_0x4c577d(0xb2)](_0x4c577d(0x97),_0x4c577d(0xa0)+CLI_BIN_NAME+_0x4c577d(0xb9));const _0x53d49b=_0x5c55d5[_0x4c577d(0xb6)](_0x4c577d(0x96)),{config:_0x3b834b,layers:_0x5500dc}=readRawConfigWithLayers(),_0xd7946e=_0x3b834b['apps']??{},_0x3ec283=_0x5500dc[_0x4c577d(0xb7)]['apps']&&typeof _0x5500dc[_0x4c577d(0xb7)]['apps']==='object'?_0x5500dc[_0x4c577d(0xb7)][_0x4c577d(0x9a)]:{},_0x527fe6={..._0x3ec283,..._0xd7946e};if(!_0x527fe6[_0x25ef80]){const _0x4ca3d6=Object[_0x4c577d(0xad)](_0x527fe6),_0x3e8e90=_0x4ca3d6['length']===0x0?_0x4c577d(0xae)+CLI_BIN_NAME+_0x4c577d(0x9e)+_0x25ef80+_0x4c577d(0x94):'Available:\x20'+_0x4ca3d6[_0x4c577d(0xac)](',\x20');throw CliErrors['validation'](_0x4c577d(0xbb)+_0x25ef80+'\x22\x20not\x20found.',_0x3e8e90);}let _0x74022e,_0x1fb31f='';if(_0x53d49b)_0x74022e={'global':!![]};else{const _0x4913b0=isInProject()&&!!_0x5500dc[_0x4c577d(0x9c)];_0x74022e={'global':!_0x4913b0};}const _0x5eb849=readConfig(_0x74022e);_0x5eb849[_0x4c577d(0x9d)]=_0x25ef80;if(!_0x74022e[_0x4c577d(0x96)]){const _0x56c488=_0x5eb849[_0x4c577d(0x9a)]&&typeof _0x5eb849['apps']===_0x4c577d(0xb1)?_0x5eb849[_0x4c577d(0x9a)]:{};!Object['prototype'][_0x4c577d(0xa7)][_0x4c577d(0xaa)](_0x56c488,_0x25ef80)&&(_0x5eb849[_0x4c577d(0x9a)]={..._0x56c488,[_0x25ef80]:_0x527fe6[_0x25ef80]},_0x1fb31f=_0x4c577d(0x99)+_0x25ef80+_0x4c577d(0xa6));}return writeConfig(_0x5eb849,_0x74022e),{'ok':!![],'message':_0x4c577d(0xa5)+_0x25ef80+'\x22\x20(appcode:\x20'+_0x527fe6[_0x25ef80][_0x4c577d(0xa1)]+')'+scopeLabel(_0x74022e)+_0x1fb31f};}export const appUseDefinition={'service':a24_0x5d9934(0xa4),'command':a24_0x5d9934(0x9b),'description':a24_0x5d9934(0xa3),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':'global','type':a24_0x5d9934(0xb4),'description':'Use\x20global\x20config\x20scope','default':![]}],'validate':validateArgs,'execute':execute};
@@ -1 +1 @@
1
- const a25_0x1c1495=a25_0x40d0;function a25_0x40d0(_0xc1cb4d,_0x1baf00){_0xc1cb4d=_0xc1cb4d-0x117;const _0x16ef05=a25_0x16ef();let _0x40d07f=_0x16ef05[_0xc1cb4d];return _0x40d07f;}(function(_0x1259a5,_0xe4b88f){const _0x2ca1bb=a25_0x40d0,_0x43aa0a=_0x1259a5();while(!![]){try{const _0x4cfcc4=-parseInt(_0x2ca1bb(0x126))/0x1+-parseInt(_0x2ca1bb(0x11d))/0x2+-parseInt(_0x2ca1bb(0x122))/0x3*(-parseInt(_0x2ca1bb(0x127))/0x4)+parseInt(_0x2ca1bb(0x125))/0x5*(parseInt(_0x2ca1bb(0x129))/0x6)+-parseInt(_0x2ca1bb(0x11e))/0x7+-parseInt(_0x2ca1bb(0x123))/0x8+parseInt(_0x2ca1bb(0x118))/0x9;if(_0x4cfcc4===_0xe4b88f)break;else _0x43aa0a['push'](_0x43aa0a['shift']());}catch(_0x1bd370){_0x43aa0a['push'](_0x43aa0a['shift']());}}}(a25_0x16ef,0x49586));import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';function a25_0x16ef(){const _0x51bee5=['1723148LjcFcu','!\x20Not\x20logged\x20in','read','nonInteractive','21IYzQHM','292080jpdPdK','login','20ZJZJrn','191232ybNLBa','181988QOpFkH','auth','617766mDipLj','../../auth/auth-server-ui.js','log','write','672597cVDONh','yes','bool','Login\x20via\x20browser','logout','61456WbnATR'];a25_0x16ef=function(){return _0x51bee5;};return a25_0x16ef();}export const authDefinitions=[{'service':a25_0x1c1495(0x128),'command':a25_0x1c1495(0x124),'description':a25_0x1c1495(0x11b),'risk':a25_0x1c1495(0x120),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x1c1495(0x119),'type':'boolean','description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0x335f5a){const _0x4ea6cf=a25_0x1c1495,{runAuthServer:_0x582d62}=await import(_0x4ea6cf(0x12a));return await _0x582d62({'autoYes':_0x335f5a[_0x4ea6cf(0x11a)](_0x4ea6cf(0x119)),'nonInteractive':_0x335f5a[_0x4ea6cf(0x121)]}),{'ok':!![]};}},{'service':'auth','command':a25_0x1c1495(0x11c),'description':'Clear\x20login\x20session','risk':a25_0x1c1495(0x117),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x34d90e){const _0x9d97f4=a25_0x1c1495;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x9d97f4(0x12b)]('✓\x20Logged\x20out')):console['log'](_0x9d97f4(0x11f)),{'ok':!![]};}}];
1
+ const a25_0x27ade2=a25_0x3b61;(function(_0x4697ba,_0xd7d9ab){const _0x54c763=a25_0x3b61,_0x37099e=_0x4697ba();while(!![]){try{const _0x5e1c9f=-parseInt(_0x54c763(0x7e))/0x1*(-parseInt(_0x54c763(0x77))/0x2)+-parseInt(_0x54c763(0x6c))/0x3+-parseInt(_0x54c763(0x7a))/0x4+-parseInt(_0x54c763(0x6f))/0x5*(parseInt(_0x54c763(0x7c))/0x6)+parseInt(_0x54c763(0x80))/0x7+-parseInt(_0x54c763(0x74))/0x8*(-parseInt(_0x54c763(0x6b))/0x9)+-parseInt(_0x54c763(0x6a))/0xa*(-parseInt(_0x54c763(0x73))/0xb);if(_0x5e1c9f===_0xd7d9ab)break;else _0x37099e['push'](_0x37099e['shift']());}catch(_0x1b7363){_0x37099e['push'](_0x37099e['shift']());}}}(a25_0x416e,0x47df6));function a25_0x3b61(_0x73ad52,_0xb7641d){_0x73ad52=_0x73ad52-0x6a;const _0x416e03=a25_0x416e();let _0x3b6111=_0x416e03[_0x73ad52];return _0x3b6111;}import{unlinkSync,existsSync}from'node:fs';import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x27ade2(0x71),'command':a25_0x27ade2(0x79),'description':a25_0x27ade2(0x75),'risk':a25_0x27ade2(0x6e),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x27ade2(0x7d),'type':a25_0x27ade2(0x7b),'description':'Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','default':![]}],async 'execute'(_0x54373e){const _0x1bb278=a25_0x27ade2,{runAuthServer:_0x1361a3}=await import(_0x1bb278(0x70));return await _0x1361a3({'autoYes':_0x54373e[_0x1bb278(0x78)](_0x1bb278(0x7d)),'nonInteractive':_0x54373e[_0x1bb278(0x76)]}),{'ok':!![]};}},{'service':'auth','command':a25_0x27ade2(0x7f),'description':'Clear\x20login\x20session','risk':a25_0x27ade2(0x72),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x4cc97c){const _0x42cf25=a25_0x27ade2;return existsSync(cookieFile)?(unlinkSync(cookieFile),console['log']('✓\x20Logged\x20out')):console['log'](_0x42cf25(0x6d)),{'ok':!![]};}}];function a25_0x416e(){const _0x3c5995=['4601750gLLKVi','521487mUiaiA','1213482NaJWsz','!\x20Not\x20logged\x20in','read','1317660mFjfyJ','../../auth/auth-server-ui.js','auth','write','11vXRxSH','64mddMrj','Login\x20via\x20browser','nonInteractive','6ZhXNsT','bool','login','2075612yHcdmG','boolean','6RiTvtE','yes','170531GVeREQ','logout','322049jqjRXK'];a25_0x416e=function(){return _0x3c5995;};return a25_0x416e();}
@@ -1 +1 @@
1
- const a26_0x2a8ffb=a26_0x1ef5;(function(_0x3ebffd,_0xf2525c){const _0x367d95=a26_0x1ef5,_0x24d2fb=_0x3ebffd();while(!![]){try{const _0x223f65=-parseInt(_0x367d95(0x1d9))/0x1*(-parseInt(_0x367d95(0x1bb))/0x2)+parseInt(_0x367d95(0x206))/0x3*(-parseInt(_0x367d95(0x203))/0x4)+-parseInt(_0x367d95(0x1f2))/0x5+-parseInt(_0x367d95(0x210))/0x6*(-parseInt(_0x367d95(0x1b5))/0x7)+-parseInt(_0x367d95(0x1db))/0x8+parseInt(_0x367d95(0x1de))/0x9+-parseInt(_0x367d95(0x1d5))/0xa;if(_0x223f65===_0xf2525c)break;else _0x24d2fb['push'](_0x24d2fb['shift']());}catch(_0xd8ac4c){_0x24d2fb['push'](_0x24d2fb['shift']());}}}(a26_0x424c,0xe74d5));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';function a26_0x424c(){const _0x30c736=['validation','entries','alias','stderr','nonInteractive','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','write','ENDPOINT','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','functionNode','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Invalid\x20dataset\x20selection.','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','HOOK','name','includes','7925480CvxsUT','No\x20datasets\x20found\x20for\x20this\x20app.','Alias\x20\x22','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','2UWNSLw','Trigger\x20node\x20(HOOK\x20only)','151440xXcUuf','\x20function:\x20','create','5231052XUwXbi','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','datasetcode','appCode','Operation\x20type\x20(HOOK\x20only)','\x0a\x20*\x20[触发节点]\x20','COMMON','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','parseInt','\x22\x20not\x20found\x20for\x20dataset\x20','No\x20operation\x20types\x20found\x20for\x20dataset\x20','type','Dataset\x20not\x20found\x20for\x20code\x20\x22','apiDir','tableName','Invalid\x20function\x20name\x20\x22','Script\x20description','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','description','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','1704085xeyzDk','close','before','scriptsRootDir','stdin','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','HOOK\x20requires\x20alias/operation/node\x20options.','\x22.\x20','No\x20api.ts\x20found.\x20Run\x20`','Select\x20dataset:','Select\x20operation\x20type:','.js','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','No\x20DB\x20table\x20datasets\x20found\x20for\x20this\x20app.\x20METADATA\x20datasets\x20cannot\x20be\x20used\x20for\x20BFF\x20HOOK\x20development\x20because\x20the\x20workflow\x20depends\x20on\x20SQL\x20execution.','trim','Script\x20type','Available\x20aliases:\x20','8LnqdWU','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','operation-type','672807ktLVkq','length','question','find','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','datasetCode','Available:\x20','\x20api\x20pull`\x20to\x20refresh.','after','join','2652FWkBfP','\x22\x20not\x20found.\x20','\x0a\x20*\x20[脚本名称]\x20','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','10479iKXHUe','BFF\x20HOOK','TODO:\x20add\x20script\x20description','.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','str','operationType','1305344xigCAu','Operation\x20type\x20\x22','function-node','bff','map','Select\x20trigger\x20node:','string'];a26_0x424c=function(){return _0x30c736;};return a26_0x424c();}function a26_0x1ef5(_0xa6baee,_0x3145e2){_0xa6baee=_0xa6baee-0x1b4;const _0x424c11=a26_0x424c();let _0x1ef57b=_0x424c11[_0xa6baee];return _0x1ef57b;}import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{assertDatasetSupportsLocalDevelopment,filterDbBackedDatasets}from'../../commands/dataset/capability.js';export const bffCreate={'service':a26_0x2a8ffb(0x1be),'command':a26_0x2a8ffb(0x1dd),'description':a26_0x2a8ffb(0x1df),'risk':a26_0x2a8ffb(0x1c9),'flags':[{'name':a26_0x2a8ffb(0x1e9),'type':a26_0x2a8ffb(0x1c1),'required':!![],'enum':[a26_0x2a8ffb(0x1e4),'ENDPOINT',a26_0x2a8ffb(0x1d2)],'description':a26_0x2a8ffb(0x201)},{'name':a26_0x2a8ffb(0x1d3),'type':a26_0x2a8ffb(0x1c1),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':'description','type':a26_0x2a8ffb(0x1c1),'description':a26_0x2a8ffb(0x1ee)},{'name':a26_0x2a8ffb(0x1c4),'type':a26_0x2a8ffb(0x1c1),'description':a26_0x2a8ffb(0x1fe)},{'name':a26_0x2a8ffb(0x1e0),'type':'string','description':a26_0x2a8ffb(0x1ce)},{'name':'operation-type','type':'string','description':a26_0x2a8ffb(0x1e2)},{'name':a26_0x2a8ffb(0x1bd),'type':a26_0x2a8ffb(0x1c1),'description':a26_0x2a8ffb(0x1da),'enum':['before','after']}],async 'validate'(_0x5dfbfe){const _0x5eaea9=a26_0x2a8ffb,_0x38a70d=_0x5dfbfe[_0x5eaea9(0x1b9)]('name');if(!isValidBffFunctionName(_0x38a70d))throw CliErrors[_0x5eaea9(0x1c2)](_0x5eaea9(0x1ed)+_0x38a70d+_0x5eaea9(0x204));},async 'execute'(_0x225b2b){const _0x3e2056=a26_0x2a8ffb,_0x54d305=loadBffProjectConfig(_0x225b2b['appCode']),_0x5070c1=_0x225b2b[_0x3e2056(0x1b9)](_0x3e2056(0x1e9)),_0x4722f9=_0x225b2b[_0x3e2056(0x1b9)]('name'),_0x2531e4=_0x225b2b['str'](_0x3e2056(0x1f0))||undefined,_0x392bca=_0x5070c1==='HOOK'?await resolveHookOptions(_0x54d305,_0x225b2b):undefined,_0x3ed328=buildFilePath(_0x54d305,_0x5070c1,_0x4722f9,_0x392bca);if(await fileExists(_0x3ed328))throw CliErrors[_0x3e2056(0x1c2)]('File\x20already\x20exists:\x20'+_0x3ed328);await mkdir(dirname(_0x3ed328),{'recursive':!![]});const _0x5b6d0c=generateTemplate(_0x5070c1,_0x4722f9,_0x225b2b[_0x3e2056(0x1e1)],_0x2531e4,_0x392bca);await writeFile(_0x3ed328,_0x5b6d0c,'utf8');const _0x5d168b={'type':_0x5070c1,'name':_0x4722f9,'path':_0x3ed328};if(_0x2531e4)_0x5d168b[_0x3e2056(0x1f0)]=_0x2531e4;if(_0x392bca){if(_0x392bca[_0x3e2056(0x1c4)])_0x5d168b[_0x3e2056(0x1c4)]=_0x392bca[_0x3e2056(0x1c4)];_0x5d168b[_0x3e2056(0x20b)]=_0x392bca[_0x3e2056(0x20b)],_0x5d168b[_0x3e2056(0x1ba)]=_0x392bca['operationType'],_0x5d168b[_0x3e2056(0x1cd)]=_0x392bca[_0x3e2056(0x1cd)];}return{'ok':!![],'data':_0x5d168b,'message':'Created\x20'+_0x5070c1+_0x3e2056(0x1dc)+_0x4722f9};}};async function resolveHookOptions(_0x736a1e,_0x18c56c){const _0x5df645=a26_0x2a8ffb,_0x3dfcc8=loadAliasMap(_0x18c56c['apiDir'],undefined,resolveApiFilePath(_0x18c56c[_0x5df645(0x1eb)],_0x18c56c[_0x5df645(0x1e1)])),_0x338143=_0x3dfcc8[_0x5df645(0x207)]>0x0;let _0x475210,_0x1151cc,_0x4c4ef1;const _0x3ac672=_0x18c56c[_0x5df645(0x1b9)](_0x5df645(0x1c4)),_0x193916=_0x18c56c['str']('datasetcode');if(_0x3ac672){const _0x273298=resolveAlias(_0x18c56c[_0x5df645(0x1eb)],_0x3ac672,undefined,resolveApiFilePath(_0x18c56c[_0x5df645(0x1eb)],_0x18c56c[_0x5df645(0x1e1)]));if(!_0x273298){const _0x5d917c=_0x338143?_0x5df645(0x202)+_0x3dfcc8[_0x5df645(0x1bf)](_0x63eb81=>_0x63eb81[_0x5df645(0x1c4)])['join'](',\x20'):_0x5df645(0x1fa)+CLI_BIN_NAME+_0x5df645(0x20a);throw CliErrors['validation'](_0x5df645(0x1d7)+_0x3ac672+_0x5df645(0x211)+_0x5d917c);}_0x475210=_0x3ac672,_0x1151cc=_0x273298;}else{if(_0x193916){_0x1151cc=_0x193916;const _0x18ff5d=_0x3dfcc8[_0x5df645(0x209)](_0x5833ca=>_0x5833ca[_0x5df645(0x20b)]===_0x193916);_0x475210=_0x18ff5d?.[_0x5df645(0x1c4)];}else{if(_0x18c56c[_0x5df645(0x1c6)])throw CliErrors[_0x5df645(0x1c2)](_0x5df645(0x1d1));else{if(_0x338143){const _0x1a38ba=_0x3dfcc8['map'](_0x3c5652=>_0x3c5652[_0x5df645(0x1c4)]+'\x20('+_0x3c5652[_0x5df645(0x1ec)]+')'),_0x21583b=await promptSelect(_0x5df645(0x1fb),_0x1a38ba),_0xe42f0f=_0x3dfcc8[_0x21583b];if(!_0xe42f0f)throw CliErrors['validation'](_0x5df645(0x1d0));_0x475210=_0xe42f0f[_0x5df645(0x1c4)],_0x1151cc=_0xe42f0f[_0x5df645(0x20b)];}else{const _0x2d6e75=await listDatasets(_0x18c56c[_0x5df645(0x1e1)]),_0x30a9ba=filterDbBackedDatasets(_0x2d6e75);if(_0x30a9ba['length']===0x0)throw CliErrors[_0x5df645(0x1c2)](_0x2d6e75[_0x5df645(0x207)]===0x0?_0x5df645(0x1d6):_0x5df645(0x1ff));const _0x49d69c=_0x30a9ba['map'](_0x3f59de=>_0x3f59de[_0x5df645(0x1d3)]+'\x20('+_0x3f59de['code']+')'),_0x21bf98=await promptSelect(_0x5df645(0x1fb),_0x49d69c),_0x3f60c4=_0x30a9ba[_0x21bf98];if(!_0x3f60c4)throw CliErrors['validation'](_0x5df645(0x1d0));_0x1151cc=_0x3f60c4['code'],_0x475210=undefined;}}}}const _0x53b645=await listDatasets(_0x18c56c['appCode']),_0x2f6a23=_0x53b645[_0x5df645(0x209)](_0x420697=>_0x420697['code']===_0x1151cc);if(!_0x2f6a23)throw CliErrors[_0x5df645(0x1c2)](_0x5df645(0x1ea)+_0x1151cc+_0x5df645(0x1f9)+(_0x475210?_0x5df645(0x1f1)+CLI_BIN_NAME+_0x5df645(0x20d):''));assertDatasetSupportsLocalDevelopment(_0x2f6a23,_0x5df645(0x1b6)),_0x4c4ef1=_0x2f6a23['id'];const _0x193f31=_0x475210??_0x1151cc,_0x34b3b6=await listBffDatasetOperations(_0x18c56c['appCode'],_0x4c4ef1),_0x12a9a3=_0x34b3b6?Object['keys'](_0x34b3b6):[];if(_0x12a9a3[_0x5df645(0x207)]===0x0)throw CliErrors[_0x5df645(0x1c2)](_0x5df645(0x1e8)+_0x193f31+'.');let _0xf4e907;const _0x2537d3=_0x18c56c['str'](_0x5df645(0x205));if(_0x2537d3){if(!_0x12a9a3[_0x5df645(0x1d4)](_0x2537d3))throw CliErrors[_0x5df645(0x1c2)](_0x5df645(0x1bc)+_0x2537d3+_0x5df645(0x1e7)+_0x193f31+'.\x20'+(_0x5df645(0x20c)+_0x12a9a3[_0x5df645(0x20f)](',\x20')));_0xf4e907=_0x2537d3;}else{if(_0x18c56c[_0x5df645(0x1c6)])throw CliErrors[_0x5df645(0x1c2)](_0x5df645(0x1e5));const _0x6ba40d=await promptSelect(_0x5df645(0x1fc),_0x12a9a3);_0xf4e907=_0x12a9a3[_0x6ba40d]??_0x12a9a3[0x0];}let _0x22c751=normalizeHookFunctionNode(_0x18c56c['str'](_0x5df645(0x1bd)));if(!_0x22c751){if(_0x18c56c[_0x5df645(0x1b9)](_0x5df645(0x1bd)))throw CliErrors['validation'](_0x5df645(0x1b4));if(_0x18c56c[_0x5df645(0x1c6)])throw CliErrors['validation']('--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x291da9=await promptSelect(_0x5df645(0x1c0),[_0x5df645(0x1f4),_0x5df645(0x20e)]);_0x22c751=[_0x5df645(0x1f4),_0x5df645(0x20e)][_0x291da9]??_0x5df645(0x1f4);}return{'alias':_0x475210,'datasetCode':_0x1151cc,'datasetId':_0x4c4ef1,'operationType':_0xf4e907,'functionNode':_0x22c751};}async function promptSelect(_0x580248,_0x4398cf){const _0x3f40b7=a26_0x2a8ffb;if(_0x4398cf['length']===0x1)return 0x0;for(const [_0x417d61,_0x534552]of _0x4398cf[_0x3f40b7(0x1c3)]()){process[_0x3f40b7(0x1c5)][_0x3f40b7(0x1c9)]('\x20\x20'+(_0x417d61+0x1)+'.\x20'+_0x534552+'\x0a');}const _0x59270b=createInterface({'input':process[_0x3f40b7(0x1f6)],'output':process[_0x3f40b7(0x1c5)]});while(!![]){const _0x4e8efb=await new Promise(_0x5306d2=>{const _0x44b2fe=_0x3f40b7;_0x59270b[_0x44b2fe(0x208)](_0x580248+'\x20',_0x5306d2);}),_0x40e522=Number[_0x3f40b7(0x1e6)](_0x4e8efb[_0x3f40b7(0x200)](),0xa);if(Number['isInteger'](_0x40e522)&&_0x40e522>=0x1&&_0x40e522<=_0x4398cf[_0x3f40b7(0x207)])return _0x59270b[_0x3f40b7(0x1f3)](),_0x40e522-0x1;process[_0x3f40b7(0x1c5)][_0x3f40b7(0x1c9)]('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x4398cf[_0x3f40b7(0x207)]+'.\x0a');}}function buildFilePath(_0xcc1d4b,_0x7ebf7d,_0x443adb,_0x7f9550){const _0x213f02=a26_0x2a8ffb;if(_0x7ebf7d==='HOOK'){if(!_0x7f9550)throw CliErrors[_0x213f02(0x1c2)](_0x213f02(0x1f8));const _0x5f127b=_0x7f9550[_0x213f02(0x1c4)]??_0x7f9550[_0x213f02(0x20b)];return join(_0xcc1d4b[_0x213f02(0x1f5)],'HOOK',_0x5f127b,_0x7f9550[_0x213f02(0x1ba)],_0x7f9550[_0x213f02(0x1cd)],_0x443adb+_0x213f02(0x1fd));}return join(_0xcc1d4b[_0x213f02(0x1f5)],_0x7ebf7d,_0x443adb+'.js');}export function generateTemplate(_0x1ec128,_0x160d44,_0x147ec1,_0xb6df2c,_0x5711b8){const _0x2b4468=a26_0x2a8ffb,_0x4aeb87=_0xb6df2c?.['trim']()||_0x2b4468(0x1b7);if(_0x1ec128===_0x2b4468(0x1e4))return _0x2b4468(0x1f7)+_0x4aeb87+_0x2b4468(0x212)+_0x160d44+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x160d44+_0x2b4468(0x1b8)+_0x160d44+_0x2b4468(0x1cb);if(_0x1ec128===_0x2b4468(0x1ca))return _0x2b4468(0x1d8)+_0x4aeb87+_0x2b4468(0x1cc)+_0x147ec1+'/'+_0x160d44+'\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'+_0x160d44+_0x2b4468(0x1cb);if(!_0x5711b8)throw CliErrors[_0x2b4468(0x1c2)](_0x2b4468(0x1ef));return _0x2b4468(0x1cf)+_0x4aeb87+_0x2b4468(0x1c8)+_0x147ec1+'/'+_0x5711b8[_0x2b4468(0x20b)]+'/'+_0x5711b8['operationType']+_0x2b4468(0x1e3)+_0x5711b8[_0x2b4468(0x1cd)]+_0x2b4468(0x1c7)+_0x160d44+_0x2b4468(0x1cb);}
1
+ const a26_0x3656b6=a26_0x5550;function a26_0x5550(_0x1004b3,_0x279c58){_0x1004b3=_0x1004b3-0xfd;const _0xde2227=a26_0xde22();let _0x555026=_0xde2227[_0x1004b3];return _0x555026;}(function(_0x3b3e54,_0x5048b){const _0x47743b=a26_0x5550,_0x9775f4=_0x3b3e54();while(!![]){try{const _0x422b63=parseInt(_0x47743b(0x11f))/0x1*(-parseInt(_0x47743b(0x12b))/0x2)+-parseInt(_0x47743b(0x13f))/0x3+parseInt(_0x47743b(0x12d))/0x4*(parseInt(_0x47743b(0x149))/0x5)+-parseInt(_0x47743b(0x13a))/0x6*(-parseInt(_0x47743b(0x11c))/0x7)+parseInt(_0x47743b(0x12e))/0x8*(parseInt(_0x47743b(0x11d))/0x9)+-parseInt(_0x47743b(0x141))/0xa*(-parseInt(_0x47743b(0x125))/0xb)+parseInt(_0x47743b(0x142))/0xc*(parseInt(_0x47743b(0x116))/0xd);if(_0x422b63===_0x5048b)break;else _0x9775f4['push'](_0x9775f4['shift']());}catch(_0x3ac9d4){_0x9775f4['push'](_0x9775f4['shift']());}}}(a26_0xde22,0xc0863));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{assertDatasetSupportsLocalDevelopment,filterDbBackedDatasets}from'../../commands/dataset/capability.js';export const bffCreate={'service':a26_0x3656b6(0x129),'command':'create','description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':'write','flags':[{'name':a26_0x3656b6(0x145),'type':a26_0x3656b6(0x10d),'required':!![],'enum':[a26_0x3656b6(0x154),a26_0x3656b6(0x109),a26_0x3656b6(0x148)],'description':a26_0x3656b6(0x104)},{'name':a26_0x3656b6(0xff),'type':a26_0x3656b6(0x10d),'required':!![],'description':a26_0x3656b6(0x14d)},{'name':a26_0x3656b6(0x131),'type':'string','description':a26_0x3656b6(0x153)},{'name':'alias','type':a26_0x3656b6(0x10d),'description':a26_0x3656b6(0x150)},{'name':a26_0x3656b6(0x130),'type':a26_0x3656b6(0x10d),'description':a26_0x3656b6(0x155)},{'name':a26_0x3656b6(0x115),'type':a26_0x3656b6(0x10d),'description':a26_0x3656b6(0x12f)},{'name':a26_0x3656b6(0x146),'type':a26_0x3656b6(0x10d),'description':'Trigger\x20node\x20(HOOK\x20only)','enum':[a26_0x3656b6(0x156),a26_0x3656b6(0x117)]}],async 'validate'(_0x2fe5fb){const _0x2d85a4=a26_0x3656b6,_0x391205=_0x2fe5fb[_0x2d85a4(0x151)](_0x2d85a4(0xff));if(!isValidBffFunctionName(_0x391205))throw CliErrors['validation']('Invalid\x20function\x20name\x20\x22'+_0x391205+_0x2d85a4(0x144));},async 'execute'(_0x21c6c6){const _0x112708=a26_0x3656b6,_0x2f6e50=loadBffProjectConfig(_0x21c6c6[_0x112708(0x143)]),_0x258f13=_0x21c6c6['str']('type'),_0x1c37f9=_0x21c6c6['str']('name'),_0xaa1d38=_0x21c6c6[_0x112708(0x151)]('description')||undefined,_0x5ae573=_0x258f13===_0x112708(0x148)?await resolveHookOptions(_0x2f6e50,_0x21c6c6):undefined,_0x25a78d=buildFilePath(_0x2f6e50,_0x258f13,_0x1c37f9,_0x5ae573);if(await fileExists(_0x25a78d))throw CliErrors['validation'](_0x112708(0x110)+_0x25a78d);await mkdir(dirname(_0x25a78d),{'recursive':!![]});const _0x4781e2=generateTemplate(_0x258f13,_0x1c37f9,_0x21c6c6[_0x112708(0x143)],_0xaa1d38,_0x5ae573);await writeFile(_0x25a78d,_0x4781e2,_0x112708(0x100));const _0x93be2c={'type':_0x258f13,'name':_0x1c37f9,'path':_0x25a78d};if(_0xaa1d38)_0x93be2c['description']=_0xaa1d38;if(_0x5ae573){if(_0x5ae573['alias'])_0x93be2c['alias']=_0x5ae573[_0x112708(0x112)];_0x93be2c[_0x112708(0x13e)]=_0x5ae573[_0x112708(0x13e)],_0x93be2c[_0x112708(0x139)]=_0x5ae573['operationType'],_0x93be2c[_0x112708(0x113)]=_0x5ae573['functionNode'];}return{'ok':!![],'data':_0x93be2c,'message':_0x112708(0x133)+_0x258f13+_0x112708(0x147)+_0x1c37f9};}};async function resolveHookOptions(_0x27e2f8,_0x238804){const _0x3835d0=a26_0x3656b6,_0x4cd834=loadAliasMap(_0x238804['apiDir'],undefined,resolveApiFilePath(_0x238804[_0x3835d0(0x12c)],_0x238804[_0x3835d0(0x143)])),_0x1d5920=_0x4cd834[_0x3835d0(0x11a)]>0x0;let _0x5d69fb,_0x18ae7c,_0x20afb0;const _0x39148e=_0x238804[_0x3835d0(0x151)](_0x3835d0(0x112)),_0x49ace0=_0x238804[_0x3835d0(0x151)](_0x3835d0(0x130));if(_0x39148e){const _0x33e085=resolveAlias(_0x238804[_0x3835d0(0x12c)],_0x39148e,undefined,resolveApiFilePath(_0x238804[_0x3835d0(0x12c)],_0x238804['appCode']));if(!_0x33e085){const _0x1c68b3=_0x1d5920?_0x3835d0(0x10f)+_0x4cd834[_0x3835d0(0x128)](_0x238470=>_0x238470[_0x3835d0(0x112)])[_0x3835d0(0x138)](',\x20'):_0x3835d0(0x135)+CLI_BIN_NAME+'\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.';throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x106)+_0x39148e+'\x22\x20not\x20found.\x20'+_0x1c68b3);}_0x5d69fb=_0x39148e,_0x18ae7c=_0x33e085;}else{if(_0x49ace0){_0x18ae7c=_0x49ace0;const _0x424fd2=_0x4cd834['find'](_0xf98d61=>_0xf98d61[_0x3835d0(0x13e)]===_0x49ace0);_0x5d69fb=_0x424fd2?.[_0x3835d0(0x112)];}else{if(_0x238804[_0x3835d0(0x103)])throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x123));else{if(_0x1d5920){const _0x4ab268=_0x4cd834['map'](_0x255de7=>_0x255de7[_0x3835d0(0x112)]+'\x20('+_0x255de7[_0x3835d0(0xfd)]+')'),_0x200eca=await promptSelect(_0x3835d0(0x105),_0x4ab268),_0x1da8a3=_0x4cd834[_0x200eca];if(!_0x1da8a3)throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x14e));_0x5d69fb=_0x1da8a3['alias'],_0x18ae7c=_0x1da8a3['datasetCode'];}else{const _0x56b9ac=await listDatasets(_0x238804[_0x3835d0(0x143)]),_0x3c9977=filterDbBackedDatasets(_0x56b9ac);if(_0x3c9977[_0x3835d0(0x11a)]===0x0)throw CliErrors[_0x3835d0(0x10a)](_0x56b9ac[_0x3835d0(0x11a)]===0x0?_0x3835d0(0x10b):_0x3835d0(0x11b));const _0x15649c=_0x3c9977['map'](_0x10b1c4=>_0x10b1c4[_0x3835d0(0xff)]+'\x20('+_0x10b1c4[_0x3835d0(0x107)]+')'),_0x510449=await promptSelect(_0x3835d0(0x105),_0x15649c),_0xa9f62b=_0x3c9977[_0x510449];if(!_0xa9f62b)throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x14e));_0x18ae7c=_0xa9f62b[_0x3835d0(0x107)],_0x5d69fb=undefined;}}}}const _0x5c6f50=await listDatasets(_0x238804[_0x3835d0(0x143)]),_0x3cf774=_0x5c6f50[_0x3835d0(0x14b)](_0xab83ed=>_0xab83ed[_0x3835d0(0x107)]===_0x18ae7c);if(!_0x3cf774)throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x134)+_0x18ae7c+'\x22.\x20'+(_0x5d69fb?_0x3835d0(0x12a)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));assertDatasetSupportsLocalDevelopment(_0x3cf774,'BFF\x20HOOK'),_0x20afb0=_0x3cf774['id'];const _0x59de10=_0x5d69fb??_0x18ae7c,_0x46077c=await listBffDatasetOperations(_0x238804[_0x3835d0(0x143)],_0x20afb0),_0x213101=_0x46077c?Object['keys'](_0x46077c):[];if(_0x213101[_0x3835d0(0x11a)]===0x0)throw CliErrors[_0x3835d0(0x10a)](_0x3835d0(0x10e)+_0x59de10+'.');let _0x17d44c;const _0x4123f9=_0x238804[_0x3835d0(0x151)](_0x3835d0(0x115));if(_0x4123f9){if(!_0x213101['includes'](_0x4123f9))throw CliErrors['validation'](_0x3835d0(0x111)+_0x4123f9+_0x3835d0(0x102)+_0x59de10+'.\x20'+(_0x3835d0(0x140)+_0x213101[_0x3835d0(0x138)](',\x20')));_0x17d44c=_0x4123f9;}else{if(_0x238804[_0x3835d0(0x103)])throw CliErrors[_0x3835d0(0x10a)]('--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x2f3a41=await promptSelect(_0x3835d0(0x132),_0x213101);_0x17d44c=_0x213101[_0x2f3a41]??_0x213101[0x0];}let _0x24d68d=normalizeHookFunctionNode(_0x238804[_0x3835d0(0x151)]('function-node'));if(!_0x24d68d){if(_0x238804['str'](_0x3835d0(0x146)))throw CliErrors[_0x3835d0(0x10a)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x238804['nonInteractive'])throw CliErrors['validation'](_0x3835d0(0x124));const _0x392b49=await promptSelect('Select\x20trigger\x20node:',[_0x3835d0(0x156),'after']);_0x24d68d=[_0x3835d0(0x156),_0x3835d0(0x117)][_0x392b49]??'before';}return{'alias':_0x5d69fb,'datasetCode':_0x18ae7c,'datasetId':_0x20afb0,'operationType':_0x17d44c,'functionNode':_0x24d68d};}function a26_0xde22(){const _0x402970=['20MuYuci','close','find','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','Function\x20name\x20(valid\x20JS\x20identifier)','Invalid\x20dataset\x20selection.','parseInt','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','str','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Script\x20description','COMMON','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','before','isInteger','tableName','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','name','utf8','scriptsRootDir','\x22\x20not\x20found\x20for\x20dataset\x20','nonInteractive','Script\x20type','Select\x20dataset:','Alias\x20\x22','code','stderr','ENDPOINT','validation','No\x20datasets\x20found\x20for\x20this\x20app.','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','string','No\x20operation\x20types\x20found\x20for\x20dataset\x20','Available\x20aliases:\x20','File\x20already\x20exists:\x20','Operation\x20type\x20\x22','alias','functionNode','stdin','operation-type','10672103KZfUpo','after','write','trim','length','No\x20DB\x20table\x20datasets\x20found\x20for\x20this\x20app.\x20METADATA\x20datasets\x20cannot\x20be\x20used\x20for\x20BFF\x20HOOK\x20development\x20because\x20the\x20workflow\x20depends\x20on\x20SQL\x20execution.','7jZAeCK','45gWAsgq','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','1210813kXlzEV','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','\x0a\x20*\x20[脚本名称]\x20','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','11CNCzsH','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','.js','map','bff','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','2dHQGTv','apiDir','715672UyCDYL','630992kaDPTo','Operation\x20type\x20(HOOK\x20only)','datasetcode','description','Select\x20operation\x20type:','Created\x20','Dataset\x20not\x20found\x20for\x20code\x20\x22','No\x20api.ts\x20found.\x20Run\x20`','TODO:\x20add\x20script\x20description','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','join','operationType','789354qOUowi','\x0a\x20*\x20[触发节点]\x20','question','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','datasetCode','3831105TueoCa','Available:\x20','12138950pDBJvH','12fQWvRQ','appCode','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','type','function-node','\x20function:\x20','HOOK'];a26_0xde22=function(){return _0x402970;};return a26_0xde22();}async function promptSelect(_0x28da6c,_0x18b904){const _0x1ceb44=a26_0x3656b6;if(_0x18b904[_0x1ceb44(0x11a)]===0x1)return 0x0;for(const [_0x324116,_0x35281a]of _0x18b904['entries']()){process[_0x1ceb44(0x108)][_0x1ceb44(0x118)]('\x20\x20'+(_0x324116+0x1)+'.\x20'+_0x35281a+'\x0a');}const _0x16a722=createInterface({'input':process[_0x1ceb44(0x114)],'output':process[_0x1ceb44(0x108)]});while(!![]){const _0x1da22b=await new Promise(_0x56c19f=>{const _0x5660db=_0x1ceb44;_0x16a722[_0x5660db(0x13c)](_0x28da6c+'\x20',_0x56c19f);}),_0x31b3bc=Number[_0x1ceb44(0x14f)](_0x1da22b[_0x1ceb44(0x119)](),0xa);if(Number[_0x1ceb44(0x157)](_0x31b3bc)&&_0x31b3bc>=0x1&&_0x31b3bc<=_0x18b904[_0x1ceb44(0x11a)])return _0x16a722[_0x1ceb44(0x14a)](),_0x31b3bc-0x1;process[_0x1ceb44(0x108)]['write'](_0x1ceb44(0x14c)+_0x18b904[_0x1ceb44(0x11a)]+'.\x0a');}}function buildFilePath(_0x3a4f63,_0x394984,_0x201463,_0x16435a){const _0x2fb1e8=a26_0x3656b6;if(_0x394984===_0x2fb1e8(0x148)){if(!_0x16435a)throw CliErrors[_0x2fb1e8(0x10a)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x3ff5f4=_0x16435a[_0x2fb1e8(0x112)]??_0x16435a[_0x2fb1e8(0x13e)];return join(_0x3a4f63[_0x2fb1e8(0x101)],_0x2fb1e8(0x148),_0x3ff5f4,_0x16435a[_0x2fb1e8(0x139)],_0x16435a[_0x2fb1e8(0x113)],_0x201463+_0x2fb1e8(0x127));}return join(_0x3a4f63['scriptsRootDir'],_0x394984,_0x201463+_0x2fb1e8(0x127));}export function generateTemplate(_0x40ceca,_0x5b534d,_0x2f53e5,_0x233dea,_0x2a2613){const _0x4cff71=a26_0x3656b6,_0x5d8846=_0x233dea?.[_0x4cff71(0x119)]()||_0x4cff71(0x136);if(_0x40ceca===_0x4cff71(0x154))return _0x4cff71(0x152)+_0x5d8846+_0x4cff71(0x121)+_0x5b534d+'\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/'+_0x5b534d+'.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x5b534d+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(_0x40ceca==='ENDPOINT')return _0x4cff71(0x122)+_0x5d8846+_0x4cff71(0x137)+_0x2f53e5+'/'+_0x5b534d+_0x4cff71(0x11e)+_0x5b534d+_0x4cff71(0xfe);if(!_0x2a2613)throw CliErrors[_0x4cff71(0x10a)](_0x4cff71(0x126));return _0x4cff71(0x13d)+_0x5d8846+_0x4cff71(0x10c)+_0x2f53e5+'/'+_0x2a2613[_0x4cff71(0x13e)]+'/'+_0x2a2613[_0x4cff71(0x139)]+_0x4cff71(0x13b)+_0x2a2613[_0x4cff71(0x113)]+_0x4cff71(0x120)+_0x5b534d+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
@@ -1 +1 @@
1
- function a27_0x5245(_0x1b41bc,_0x9c1b7b){_0x1b41bc=_0x1b41bc-0x157;const _0x27a1fe=a27_0x27a1();let _0x524503=_0x27a1fe[_0x1b41bc];return _0x524503;}const a27_0x1887e8=a27_0x5245;(function(_0x44bba3,_0x5ed411){const _0x53b824=a27_0x5245,_0x23bc66=_0x44bba3();while(!![]){try{const _0x4cb746=parseInt(_0x53b824(0x17b))/0x1+parseInt(_0x53b824(0x170))/0x2+-parseInt(_0x53b824(0x15d))/0x3*(-parseInt(_0x53b824(0x15e))/0x4)+parseInt(_0x53b824(0x17c))/0x5*(-parseInt(_0x53b824(0x16c))/0x6)+-parseInt(_0x53b824(0x185))/0x7+parseInt(_0x53b824(0x183))/0x8*(parseInt(_0x53b824(0x15c))/0x9)+-parseInt(_0x53b824(0x161))/0xa*(parseInt(_0x53b824(0x171))/0xb);if(_0x4cb746===_0x5ed411)break;else _0x23bc66['push'](_0x23bc66['shift']());}catch(_0x174665){_0x23bc66['push'](_0x23bc66['shift']());}}}(a27_0x27a1,0x7764b));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';export const bffDelete={'service':a27_0x1887e8(0x15b),'command':a27_0x1887e8(0x181),'description':a27_0x1887e8(0x15a),'risk':a27_0x1887e8(0x188),'flags':[{'name':a27_0x1887e8(0x16e),'type':'string','required':!![],'description':a27_0x1887e8(0x187)}],async 'validate'(_0x581db2){const _0x52127c=a27_0x1887e8,_0x3376d5=loadBffProjectConfig(_0x581db2[_0x52127c(0x18c)]),_0x3a1e8e=await readBffLockFile(_0x3376d5[_0x52127c(0x182)]);if(!_0x3a1e8e)throw CliErrors[_0x52127c(0x165)](_0x52127c(0x174));},async 'dryRun'(_0xfb87ee){const _0x5d615a=a27_0x1887e8,_0x51f905=loadBffProjectConfig(_0xfb87ee[_0x5d615a(0x18c)]),_0x11b982=await readBffLockFile(_0x51f905[_0x5d615a(0x182)]);if(!_0x11b982)throw CliErrors['validation'](_0x5d615a(0x173));const {appLock:_0x3d22e2}=ensureLockScope(_0x11b982,_0xfb87ee[_0x5d615a(0x18c)],_0x51f905[_0x5d615a(0x17d)],_0x5d615a(0x181)),_0x51fd19=_0xfb87ee[_0x5d615a(0x16b)](_0x5d615a(0x16e)),_0x3589a7=Object['keys'](_0x3d22e2[_0x5d615a(0x18b)]),_0x3b5ead=resolveDeleteTarget(_0x51fd19,_0x3589a7),_0x8b1499=_0x3d22e2[_0x5d615a(0x18b)][_0x3b5ead];if(!_0x8b1499)throw CliErrors[_0x5d615a(0x165)]('No\x20lock\x20entry\x20found\x20for\x20\x22'+_0x3b5ead+'\x22.');const _0x203c35=resolveLocalFilePathFromLockKey(_0x51f905,_0x3b5ead),_0x58f204=relative(_0x51f905[_0x5d615a(0x172)],_0x203c35),_0xbddef6=join(_0x51f905[_0x5d615a(0x168)],_0x5d615a(0x18a),_0x58f204);return{'method':_0x5d615a(0x15f),'url':_0x5d615a(0x159),'body':{'appCode':_0xfb87ee[_0x5d615a(0x18c)],'target':_0x3b5ead,'remoteId':_0x8b1499[_0x5d615a(0x175)],'localFilePath':_0x203c35,'trashedPath':_0xbddef6},'description':'Would\x20delete\x20'+_0x3b5ead+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash'};},async 'execute'(_0x577b8f){const _0x7d17b8=a27_0x1887e8,_0x188f31=loadBffProjectConfig(_0x577b8f['appCode']),_0x3bf37e=await readBffLockFile(_0x188f31['lockFilePath']);if(!_0x3bf37e)throw CliErrors[_0x7d17b8(0x165)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x228224,appLock:_0xc5a6c0}=ensureLockScope(_0x3bf37e,_0x577b8f[_0x7d17b8(0x18c)],_0x188f31['scriptsRoot'],_0x7d17b8(0x181)),_0x3cf491=JSON[_0x7d17b8(0x164)](JSON[_0x7d17b8(0x167)](_0x228224)),_0x1d4262=_0x3cf491[_0x7d17b8(0x158)][_0x577b8f[_0x7d17b8(0x18c)]];if(!_0x1d4262)throw new Error(_0x7d17b8(0x186)+_0x577b8f[_0x7d17b8(0x18c)]+_0x7d17b8(0x163));const _0x5b7f3b=_0x577b8f[_0x7d17b8(0x16b)](_0x7d17b8(0x16e)),_0x5263cc=Object[_0x7d17b8(0x176)](_0x1d4262[_0x7d17b8(0x18b)]),_0x3ec113=resolveDeleteTarget(_0x5b7f3b,_0x5263cc),_0x20e8d5=_0x1d4262[_0x7d17b8(0x18b)][_0x3ec113];if(!_0x20e8d5)throw CliErrors[_0x7d17b8(0x165)](_0x7d17b8(0x177)+_0x3ec113+'\x22.');await deleteBffScript(_0x20e8d5['remoteId']),delete _0x1d4262[_0x7d17b8(0x18b)][_0x3ec113],_0x1d4262[_0x7d17b8(0x189)]=new Date()[_0x7d17b8(0x17e)](),await writeBffLockFile(_0x188f31[_0x7d17b8(0x182)],_0x3cf491);const _0x450575=resolveLocalFilePathFromLockKey(_0x188f31,_0x3ec113);let _0x39c396;await fileExists(_0x450575)&&(_0x39c396=await moveToTrash(_0x188f31[_0x7d17b8(0x172)],_0x188f31[_0x7d17b8(0x168)],_0x450575),await cleanupEmptyDirectories(dirname(_0x450575),_0x188f31['scriptsRootDir']));await waitForDeleteSettlement(_0x188f31[_0x7d17b8(0x182)],_0x577b8f[_0x7d17b8(0x18c)],_0x3ec113,_0x450575),await sleep(0x96);const _0x445b8c={'deleted':_0x3ec113,'remoteId':_0x20e8d5['remoteId']};if(_0x39c396)_0x445b8c[_0x7d17b8(0x162)]=_0x39c396;return{'ok':!![],'data':_0x445b8c,'message':_0x7d17b8(0x16d)+_0x3ec113+(_0x39c396?_0x7d17b8(0x157):'')};}};function resolveDeleteTarget(_0x28d9f0,_0x23435b){const _0x1c3f25=a27_0x1887e8;if(_0x28d9f0[_0x1c3f25(0x180)]('/')){const _0x31bacc=_0x23435b[_0x1c3f25(0x16a)](_0x258e4b=>_0x258e4b===_0x28d9f0);if(!_0x31bacc)throw CliErrors[_0x1c3f25(0x165)]('Function\x20not\x20found:\x20'+_0x28d9f0);return _0x31bacc;}const _0x231ecd=_0x23435b[_0x1c3f25(0x184)](_0x29000d=>_0x29000d[_0x1c3f25(0x17f)]('/')['at'](-0x1)===_0x28d9f0);if(_0x231ecd['length']===0x0)throw CliErrors[_0x1c3f25(0x165)]('Function\x20not\x20found:\x20'+_0x28d9f0);if(_0x231ecd[_0x1c3f25(0x160)]>0x1)throw CliErrors[_0x1c3f25(0x165)](_0x1c3f25(0x166)+_0x28d9f0+_0x1c3f25(0x16f)+_0x231ecd['map'](_0x43a148=>_0x1c3f25(0x17a)+_0x43a148)[_0x1c3f25(0x178)]('\x0a'));return _0x231ecd[0x0];}async function moveToTrash(_0x4a27bf,_0x30b0b5,_0x4557eb){const _0x1ed176=a27_0x1887e8,_0x5f2dac=new Date()[_0x1ed176(0x17e)]()[_0x1ed176(0x179)](/[:.]/g,'-'),_0x2cc17d=relative(_0x4a27bf,_0x4557eb),_0x5c6f3f=join(_0x30b0b5,_0x5f2dac,_0x2cc17d);return await mkdir(dirname(_0x5c6f3f),{'recursive':!![]}),await rename(_0x4557eb,_0x5c6f3f),_0x5c6f3f;}async function cleanupEmptyDirectories(_0x182824,_0x3fb286){const _0x5b2d81=a27_0x1887e8;let _0x4fa817=resolve(_0x182824);const _0x4b7ece=resolve(_0x3fb286);while(_0x4fa817['startsWith'](''+_0x4b7ece+sep)||_0x4fa817===_0x4b7ece){if(_0x4fa817===_0x4b7ece)return;try{const _0xf26682=await readdir(_0x4fa817);if(_0xf26682[_0x5b2d81(0x160)]>0x0)return;await rmdir(_0x4fa817);}catch{return;}_0x4fa817=dirname(_0x4fa817);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;function a27_0x27a1(){const _0x53461b=['3757924uJaSWw','POST','length','40goLsDm','trashedTo','\x22\x20not\x20found\x20after\x20ensureLockScope.','parse','validation','Multiple\x20functions\x20match\x20\x22','stringify','trashDir','Local\x20delete\x20not\x20settled\x20for\x20','find','str','210nkETmE','Deleted\x20','target','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','642966PDQhpp','4584261WFNzYK','projectRoot','BFF\x20lock\x20file\x20not\x20found.','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','remoteId','keys','No\x20lock\x20entry\x20found\x20for\x20\x22','join','replace','\x20\x20-\x20','787634rzGNNZ','67990gPowxe','scriptsRoot','toISOString','split','includes','delete','lockFilePath','1352YOIBJF','filter','1503712fUNZKp','Lock\x20scope\x20for\x20app\x20\x22','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','high-risk-write','lastSync','<timestamp>','functions','appCode','\x20(local\x20file\x20moved\x20to\x20trash)','apps','/api/management/library/scripts/delete','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','bff','42507fksQqj','3LiwRPN'];a27_0x27a1=function(){return _0x53461b;};return a27_0x27a1();}async function waitForDeleteSettlement(_0x4a1a1d,_0xe3eecf,_0x55a362,_0x495c62){const _0x1e1f38=a27_0x1887e8;for(let _0x195524=0x0;_0x195524<DELETE_SETTLE_RETRY_COUNT;_0x195524+=0x1){const _0x377424=await readBffLockFile(_0x4a1a1d),_0x103fb5=!!_0x377424?.[_0x1e1f38(0x158)]?.[_0xe3eecf]?.['functions']?.[_0x55a362],_0x177b2a=await fileExists(_0x495c62);if(!_0x103fb5&&!_0x177b2a)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x1e1f38(0x169)+_0x55a362+'.');}
1
+ const a27_0x2b03df=a27_0x9632;function a27_0x9632(_0x17c2ba,_0x4ae134){_0x17c2ba=_0x17c2ba-0x82;const _0x58d52a=a27_0x58d5();let _0x963261=_0x58d52a[_0x17c2ba];return _0x963261;}(function(_0xff1e27,_0x319c32){const _0x4966d1=a27_0x9632,_0x3e515b=_0xff1e27();while(!![]){try{const _0x147f00=-parseInt(_0x4966d1(0x8c))/0x1*(parseInt(_0x4966d1(0x89))/0x2)+parseInt(_0x4966d1(0xa5))/0x3+-parseInt(_0x4966d1(0xb4))/0x4*(parseInt(_0x4966d1(0x8f))/0x5)+parseInt(_0x4966d1(0x93))/0x6*(-parseInt(_0x4966d1(0xa4))/0x7)+-parseInt(_0x4966d1(0xa8))/0x8+-parseInt(_0x4966d1(0xad))/0x9+parseInt(_0x4966d1(0xab))/0xa;if(_0x147f00===_0x319c32)break;else _0x3e515b['push'](_0x3e515b['shift']());}catch(_0x5eb79c){_0x3e515b['push'](_0x3e515b['shift']());}}}(a27_0x58d5,0x8cd85));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';import{sleep}from'../../utils/sleep.js';function a27_0x58d5(){const _0x213e31=['5470216nUzYQP','startsWith','toISOString','18098550kvRfyF','target','1033605VjHrrJ','map','delete','No\x20lock\x20entry\x20found\x20for\x20\x22','\x20\x20-\x20','scriptsRootDir','Multiple\x20functions\x20match\x20\x22','4iHNwmf','scriptsRoot','POST','validation','Deleted\x20','str','functions','lockFilePath','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','Lock\x20scope\x20for\x20app\x20\x22','549664EQBQJp','BFF\x20lock\x20file\x20not\x20found.','high-risk-write','2HgYRzl','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','Function\x20not\x20found:\x20','235715KjhEGg','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','Local\x20delete\x20not\x20settled\x20for\x20','string','5596326dgykwr','split','trashDir','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','/api/management/library/scripts/delete','replace','find','appCode','\x22\x20not\x20found\x20after\x20ensureLockScope.','projectRoot','filter','apps','includes','length','Would\x20delete\x20','bff','\x20(local\x20file\x20moved\x20to\x20trash)','7cczSQs','3285588YHmsYz','remoteId','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'];a27_0x58d5=function(){return _0x213e31;};return a27_0x58d5();}export const bffDelete={'service':a27_0x2b03df(0xa2),'command':a27_0x2b03df(0xaf),'description':a27_0x2b03df(0x96),'risk':a27_0x2b03df(0x8b),'flags':[{'name':a27_0x2b03df(0xac),'type':a27_0x2b03df(0x92),'required':!![],'description':a27_0x2b03df(0x8d)}],async 'validate'(_0x37f911){const _0x21cf81=a27_0x2b03df,_0x1de87b=loadBffProjectConfig(_0x37f911[_0x21cf81(0x9a)]),_0x459e53=await readBffLockFile(_0x1de87b[_0x21cf81(0x86)]);if(!_0x459e53)throw CliErrors[_0x21cf81(0x82)](_0x21cf81(0x90));},async 'dryRun'(_0x5edd2d){const _0x228a72=a27_0x2b03df,_0x1c38e2=loadBffProjectConfig(_0x5edd2d[_0x228a72(0x9a)]),_0x59c60f=await readBffLockFile(_0x1c38e2['lockFilePath']);if(!_0x59c60f)throw CliErrors[_0x228a72(0x82)]('BFF\x20lock\x20file\x20not\x20found.');const {appLock:_0x1678aa}=ensureLockScope(_0x59c60f,_0x5edd2d[_0x228a72(0x9a)],_0x1c38e2['scriptsRoot'],_0x228a72(0xaf)),_0x3b0a8b=_0x5edd2d[_0x228a72(0x84)]('target'),_0x5ee1da=Object['keys'](_0x1678aa[_0x228a72(0x85)]),_0x17c4e9=resolveDeleteTarget(_0x3b0a8b,_0x5ee1da),_0x1c07aa=_0x1678aa['functions'][_0x17c4e9];if(!_0x1c07aa)throw CliErrors['validation'](_0x228a72(0xb0)+_0x17c4e9+'\x22.');const _0x413b21=resolveLocalFilePathFromLockKey(_0x1c38e2,_0x17c4e9),_0x549f7a=relative(_0x1c38e2['projectRoot'],_0x413b21),_0xcf2aa1=join(_0x1c38e2[_0x228a72(0x95)],'<timestamp>',_0x549f7a);return{'method':_0x228a72(0xb6),'url':_0x228a72(0x97),'body':{'appCode':_0x5edd2d[_0x228a72(0x9a)],'target':_0x17c4e9,'remoteId':_0x1c07aa['remoteId'],'localFilePath':_0x413b21,'trashedPath':_0xcf2aa1},'description':_0x228a72(0xa1)+_0x17c4e9+_0x228a72(0x87)};},async 'execute'(_0x2ec8ac){const _0x5e48dc=a27_0x2b03df,_0x1fdf29=loadBffProjectConfig(_0x2ec8ac[_0x5e48dc(0x9a)]),_0x50834c=await readBffLockFile(_0x1fdf29['lockFilePath']);if(!_0x50834c)throw CliErrors[_0x5e48dc(0x82)](_0x5e48dc(0x8a));const {lockData:_0x386553,appLock:_0x16d143}=ensureLockScope(_0x50834c,_0x2ec8ac[_0x5e48dc(0x9a)],_0x1fdf29[_0x5e48dc(0xb5)],_0x5e48dc(0xaf)),_0x2930ad=JSON['parse'](JSON['stringify'](_0x386553)),_0x3fc1dd=_0x2930ad[_0x5e48dc(0x9e)][_0x2ec8ac[_0x5e48dc(0x9a)]];if(!_0x3fc1dd)throw new Error(_0x5e48dc(0x88)+_0x2ec8ac[_0x5e48dc(0x9a)]+_0x5e48dc(0x9b));const _0x160d9d=_0x2ec8ac[_0x5e48dc(0x84)]('target'),_0x11e350=Object['keys'](_0x3fc1dd[_0x5e48dc(0x85)]),_0x248a86=resolveDeleteTarget(_0x160d9d,_0x11e350),_0x2e0048=_0x3fc1dd[_0x5e48dc(0x85)][_0x248a86];if(!_0x2e0048)throw CliErrors[_0x5e48dc(0x82)](_0x5e48dc(0xb0)+_0x248a86+'\x22.');await deleteBffScript(_0x2e0048['remoteId']),delete _0x3fc1dd[_0x5e48dc(0x85)][_0x248a86],_0x3fc1dd['lastSync']=new Date()[_0x5e48dc(0xaa)](),await writeBffLockFile(_0x1fdf29['lockFilePath'],_0x2930ad);const _0x30ac2d=resolveLocalFilePathFromLockKey(_0x1fdf29,_0x248a86);let _0x17dccc;await fileExists(_0x30ac2d)&&(_0x17dccc=await moveToTrash(_0x1fdf29[_0x5e48dc(0x9c)],_0x1fdf29[_0x5e48dc(0x95)],_0x30ac2d),await cleanupEmptyDirectories(dirname(_0x30ac2d),_0x1fdf29[_0x5e48dc(0xb2)]));await waitForDeleteSettlement(_0x1fdf29[_0x5e48dc(0x86)],_0x2ec8ac[_0x5e48dc(0x9a)],_0x248a86,_0x30ac2d),await sleep(0x96);const _0x3e6be5={'deleted':_0x248a86,'remoteId':_0x2e0048[_0x5e48dc(0xa6)]};if(_0x17dccc)_0x3e6be5['trashedTo']=_0x17dccc;return{'ok':!![],'data':_0x3e6be5,'message':_0x5e48dc(0x83)+_0x248a86+(_0x17dccc?_0x5e48dc(0xa3):'')};}};function resolveDeleteTarget(_0x39af81,_0x2acadd){const _0x463445=a27_0x2b03df;if(_0x39af81[_0x463445(0x9f)]('/')){const _0x9e4c60=_0x2acadd[_0x463445(0x99)](_0x259951=>_0x259951===_0x39af81);if(!_0x9e4c60)throw CliErrors[_0x463445(0x82)](_0x463445(0x8e)+_0x39af81);return _0x9e4c60;}const _0xaa089a=_0x2acadd[_0x463445(0x9d)](_0xf1ea44=>_0xf1ea44[_0x463445(0x94)]('/')['at'](-0x1)===_0x39af81);if(_0xaa089a[_0x463445(0xa0)]===0x0)throw CliErrors[_0x463445(0x82)]('Function\x20not\x20found:\x20'+_0x39af81);if(_0xaa089a['length']>0x1)throw CliErrors[_0x463445(0x82)](_0x463445(0xb3)+_0x39af81+_0x463445(0xa7)+_0xaa089a[_0x463445(0xae)](_0x1efc3c=>_0x463445(0xb1)+_0x1efc3c)['join']('\x0a'));return _0xaa089a[0x0];}async function moveToTrash(_0x46d0f0,_0x44ad29,_0x508b44){const _0x37b698=a27_0x2b03df,_0x3041fe=new Date()[_0x37b698(0xaa)]()[_0x37b698(0x98)](/[:.]/g,'-'),_0x3828d7=relative(_0x46d0f0,_0x508b44),_0x3b83f9=join(_0x44ad29,_0x3041fe,_0x3828d7);return await mkdir(dirname(_0x3b83f9),{'recursive':!![]}),await rename(_0x508b44,_0x3b83f9),_0x3b83f9;}async function cleanupEmptyDirectories(_0xa517c3,_0x288408){const _0x500734=a27_0x2b03df;let _0x15465c=resolve(_0xa517c3);const _0x31c4c3=resolve(_0x288408);while(_0x15465c[_0x500734(0xa9)](''+_0x31c4c3+sep)||_0x15465c===_0x31c4c3){if(_0x15465c===_0x31c4c3)return;try{const _0x48c904=await readdir(_0x15465c);if(_0x48c904[_0x500734(0xa0)]>0x0)return;await rmdir(_0x15465c);}catch{return;}_0x15465c=dirname(_0x15465c);}}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x484c87,_0x5056cc,_0x540edd,_0x23561c){const _0x1793e6=a27_0x2b03df;for(let _0x45ea17=0x0;_0x45ea17<DELETE_SETTLE_RETRY_COUNT;_0x45ea17+=0x1){const _0x445256=await readBffLockFile(_0x484c87),_0x265df2=!!_0x445256?.[_0x1793e6(0x9e)]?.[_0x5056cc]?.[_0x1793e6(0x85)]?.[_0x540edd],_0x5a4b5e=await fileExists(_0x23561c);if(!_0x265df2&&!_0x5a4b5e)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error(_0x1793e6(0x91)+_0x540edd+'.');}
@@ -1 +1 @@
1
- const a28_0x2e293b=a28_0x4ca1;function a28_0x4ca1(_0x472732,_0x37f276){_0x472732=_0x472732-0x75;const _0x1cda69=a28_0x1cda();let _0x4ca105=_0x1cda69[_0x472732];return _0x4ca105;}(function(_0x5bc201,_0x5707c5){const _0x51e9c7=a28_0x4ca1,_0x53637b=_0x5bc201();while(!![]){try{const _0x2ca443=-parseInt(_0x51e9c7(0x81))/0x1*(-parseInt(_0x51e9c7(0x7d))/0x2)+parseInt(_0x51e9c7(0x8a))/0x3+parseInt(_0x51e9c7(0x84))/0x4+parseInt(_0x51e9c7(0x88))/0x5+-parseInt(_0x51e9c7(0x85))/0x6+parseInt(_0x51e9c7(0x89))/0x7+-parseInt(_0x51e9c7(0x7f))/0x8;if(_0x2ca443===_0x5707c5)break;else _0x53637b['push'](_0x53637b['shift']());}catch(_0x2467fe){_0x53637b['push'](_0x53637b['shift']());}}}(a28_0x1cda,0x56ddf));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x2e293b(0x7c),'command':a28_0x2e293b(0x77),'description':a28_0x2e293b(0x83),'risk':a28_0x2e293b(0x78),'flags':[{'name':'id','type':a28_0x2e293b(0x76),'required':!![],'description':'Script\x20ID'},{'name':a28_0x2e293b(0x86),'type':a28_0x2e293b(0x82),'description':a28_0x2e293b(0x80)}],async 'execute'(_0x1e542f){const _0x5df00f=a28_0x2e293b,_0x20903a=await getBffScriptInfo(_0x1e542f['num']('id')),_0x45fa03=_0x1e542f[_0x5df00f(0x7a)](_0x5df00f(0x86));if(_0x45fa03)return{'ok':!![],'data':_0x20903a};return{'ok':!![],'data':{'id':_0x20903a['id'],'appCode':_0x20903a[_0x5df00f(0x87)],'scriptType':_0x20903a[_0x5df00f(0x8b)],'description':_0x20903a[_0x5df00f(0x7e)]||_0x5df00f(0x7b),'createdTime':_0x20903a[_0x5df00f(0x75)]??'','updatedTime':_0x20903a[_0x5df00f(0x79)]??'','scriptContent':_0x20903a[_0x5df00f(0x8c)]??''}};}};function a28_0x1cda(){const _0x3d1877=['boolean','Get\x20BFF\x20script\x20details\x20by\x20ID','2810240kNvzPL','1741680IZYVgn','verbose','appCode','1236195yvvapX','2741011fyACwR','326517TDvRfK','scriptType','scriptContent','createdTime','number','detail','read','updatedTime','bool','(none)','bff','2zYfdHG','description','8283272xWccXV','Return\x20full\x20raw\x20script\x20object','231285qWYftZ'];a28_0x1cda=function(){return _0x3d1877;};return a28_0x1cda();}
1
+ const a28_0x38e328=a28_0x107b;(function(_0x3a8f4a,_0x54dd2d){const _0x2ce650=a28_0x107b,_0x235106=_0x3a8f4a();while(!![]){try{const _0x4fd571=parseInt(_0x2ce650(0x127))/0x1+-parseInt(_0x2ce650(0x119))/0x2*(-parseInt(_0x2ce650(0x11e))/0x3)+parseInt(_0x2ce650(0x126))/0x4*(parseInt(_0x2ce650(0x123))/0x5)+parseInt(_0x2ce650(0x11c))/0x6+-parseInt(_0x2ce650(0x12b))/0x7+-parseInt(_0x2ce650(0x11f))/0x8+-parseInt(_0x2ce650(0x120))/0x9;if(_0x4fd571===_0x54dd2d)break;else _0x235106['push'](_0x235106['shift']());}catch(_0x1a429d){_0x235106['push'](_0x235106['shift']());}}}(a28_0x3c43,0xa0fc1));function a28_0x107b(_0x472419,_0x1c01ff){_0x472419=_0x472419-0x116;const _0x3c4387=a28_0x3c43();let _0x107b65=_0x3c4387[_0x472419];return _0x107b65;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x38e328(0x12a),'command':a28_0x38e328(0x116),'description':a28_0x38e328(0x117),'risk':a28_0x38e328(0x11d),'flags':[{'name':'id','type':a28_0x38e328(0x11a),'required':!![],'description':'Script\x20ID'},{'name':a28_0x38e328(0x125),'type':a28_0x38e328(0x121),'description':'Return\x20full\x20raw\x20script\x20object'}],async 'execute'(_0x49b5ae){const _0x453ee4=a28_0x38e328,_0x2be5de=await getBffScriptInfo(_0x49b5ae[_0x453ee4(0x118)]('id')),_0x519578=_0x49b5ae['bool'](_0x453ee4(0x125));if(_0x519578)return{'ok':!![],'data':_0x2be5de};return{'ok':!![],'data':{'id':_0x2be5de['id'],'appCode':_0x2be5de['appCode'],'scriptType':_0x2be5de[_0x453ee4(0x12c)],'description':_0x2be5de[_0x453ee4(0x11b)]||_0x453ee4(0x122),'createdTime':_0x2be5de[_0x453ee4(0x129)]??'','updatedTime':_0x2be5de[_0x453ee4(0x124)]??'','scriptContent':_0x2be5de[_0x453ee4(0x128)]??''}};}};function a28_0x3c43(){const _0x27851a=['4921412sTaYui','218564cPLwxb','scriptContent','createdTime','bff','1440999GElkLj','scriptType','detail','Get\x20BFF\x20script\x20details\x20by\x20ID','num','2vnJBNw','number','description','7303302ntWwaq','read','3086871dHBpFA','5164248Dvcjgy','19658790VbcyaU','boolean','(none)','5zqyMOP','updatedTime','verbose'];a28_0x3c43=function(){return _0x27851a;};return a28_0x3c43();}
@@ -1 +1 @@
1
- (function(_0x35960a,_0x4cbcb5){const _0x15de31=a29_0x3edc,_0x4a4040=_0x35960a();while(!![]){try{const _0x562352=parseInt(_0x15de31(0x6e))/0x1+-parseInt(_0x15de31(0x6c))/0x2+-parseInt(_0x15de31(0x6f))/0x3+-parseInt(_0x15de31(0x71))/0x4+-parseInt(_0x15de31(0x6d))/0x5*(parseInt(_0x15de31(0x6b))/0x6)+-parseInt(_0x15de31(0x70))/0x7+parseInt(_0x15de31(0x72))/0x8;if(_0x562352===_0x4cbcb5)break;else _0x4a4040['push'](_0x4a4040['shift']());}catch(_0x5e0a33){_0x4a4040['push'](_0x4a4040['shift']());}}}(a29_0x48ea,0x81fce));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';function a29_0x48ea(){const _0x48b732=['2042152tWTUpb','22395FjtfFS','306678XhERky','1219242vMXzhD','2675218uTtdAr','48824tXprJD','16416808VwkhWw','6WhcMzj'];a29_0x48ea=function(){return _0x48b732;};return a29_0x48ea();}function a29_0x3edc(_0x5d74f5,_0x282e5d){_0x5d74f5=_0x5d74f5-0x6b;const _0x48ea92=a29_0x48ea();let _0x3edc2c=_0x48ea92[_0x5d74f5];return _0x3edc2c;}import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
1
+ function a29_0x29f7(_0x27ec0b,_0x448f3d){_0x27ec0b=_0x27ec0b-0x83;const _0x54229b=a29_0x5422();let _0x29f727=_0x54229b[_0x27ec0b];return _0x29f727;}(function(_0x20c6d8,_0x31ea12){const _0x2a73f4=a29_0x29f7,_0x389255=_0x20c6d8();while(!![]){try{const _0x592026=-parseInt(_0x2a73f4(0x8e))/0x1*(-parseInt(_0x2a73f4(0x86))/0x2)+parseInt(_0x2a73f4(0x84))/0x3*(-parseInt(_0x2a73f4(0x89))/0x4)+-parseInt(_0x2a73f4(0x8d))/0x5*(parseInt(_0x2a73f4(0x8a))/0x6)+parseInt(_0x2a73f4(0x83))/0x7*(-parseInt(_0x2a73f4(0x87))/0x8)+parseInt(_0x2a73f4(0x8f))/0x9*(-parseInt(_0x2a73f4(0x88))/0xa)+-parseInt(_0x2a73f4(0x85))/0xb+parseInt(_0x2a73f4(0x8c))/0xc*(parseInt(_0x2a73f4(0x8b))/0xd);if(_0x592026===_0x31ea12)break;else _0x389255['push'](_0x389255['shift']());}catch(_0x1a0e90){_0x389255['push'](_0x389255['shift']());}}}(a29_0x5422,0x4120a));import{bffList}from'../../commands/bff/list.js';import{bffDetail}from'../../commands/bff/detail.js';import{bffStatus}from'../../commands/bff/status.js';import{bffCreate}from'../../commands/bff/create.js';function a29_0x5422(){const _0x563bd0=['8YXpsQp','110XDaVOQ','187380tGFJah','52308NZLmoT','13RcvGck','17608308UrNAPe','275qaQUEv','123BBlNiD','301023HvRZyf','2650249gTMZgc','3SFlmNB','3441361rXjhhQ','6262GNnGeG'];a29_0x5422=function(){return _0x563bd0;};return a29_0x5422();}import{bffPush}from'../../commands/bff/push.js';import{bffPull}from'../../commands/bff/pull.js';import{bffDelete}from'../../commands/bff/delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffCreate,bffPush,bffPull,bffDelete];
@@ -1 +1 @@
1
- const a30_0x3122ac=a30_0x476c;(function(_0x5ae35c,_0x131815){const _0x53eab7=a30_0x476c,_0x59d353=_0x5ae35c();while(!![]){try{const _0x41ba43=parseInt(_0x53eab7(0x154))/0x1*(parseInt(_0x53eab7(0x152))/0x2)+-parseInt(_0x53eab7(0x15d))/0x3+-parseInt(_0x53eab7(0x161))/0x4+parseInt(_0x53eab7(0x168))/0x5*(parseInt(_0x53eab7(0x15e))/0x6)+parseInt(_0x53eab7(0x15f))/0x7*(parseInt(_0x53eab7(0x163))/0x8)+-parseInt(_0x53eab7(0x16c))/0x9+-parseInt(_0x53eab7(0x155))/0xa*(-parseInt(_0x53eab7(0x153))/0xb);if(_0x41ba43===_0x131815)break;else _0x59d353['push'](_0x59d353['shift']());}catch(_0x5232a0){_0x59d353['push'](_0x59d353['shift']());}}}(a30_0x3a5f,0x40013));function a30_0x3a5f(){const _0x39bfc0=['name','911236PVoDqX','ENDPOINT','1034056yRKZMI','No\x20BFF\x20scripts\x20found.','description','str','list','889990TlLLkY','functionName','Return\x20full\x20script\x20objects','boolean','2989269RspvOH','type','verbose','bff','2QHtVZD','2505767pWoiNO','120709zlqzhi','10lvCEWO','string','appCode','Filter\x20by\x20script\x20name','List\x20BFF\x20scripts','scriptType','bool','read','276486bdJuUG','6dZdFzD','21hvCrbD'];a30_0x3a5f=function(){return _0x39bfc0;};return a30_0x3a5f();}function a30_0x476c(_0x4c2cfa,_0x49f466){_0x4c2cfa=_0x4c2cfa-0x14f;const _0x3a5f56=a30_0x3a5f();let _0x476c60=_0x3a5f56[_0x4c2cfa];return _0x476c60;}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x3122ac(0x151),'command':a30_0x3122ac(0x167),'description':a30_0x3122ac(0x159),'risk':a30_0x3122ac(0x15c),'flags':[{'name':a30_0x3122ac(0x14f),'type':a30_0x3122ac(0x156),'description':'Script\x20type\x20filter','default':'ENDPOINT','enum':[a30_0x3122ac(0x162),'COMMON']},{'name':a30_0x3122ac(0x160),'type':a30_0x3122ac(0x156),'description':a30_0x3122ac(0x158)},{'name':'verbose','type':a30_0x3122ac(0x16b),'description':a30_0x3122ac(0x16a)}],async 'execute'(_0x3ad901){const _0x5cb1cb=a30_0x3122ac,_0x10f529=await listBffScripts(_0x3ad901[_0x5cb1cb(0x157)],_0x3ad901[_0x5cb1cb(0x166)](_0x5cb1cb(0x14f)),{'scriptName':_0x3ad901[_0x5cb1cb(0x166)]('name')||undefined}),_0x28047b=_0x3ad901[_0x5cb1cb(0x15b)](_0x5cb1cb(0x150));return{'ok':!![],'data':_0x28047b?_0x10f529:_0x10f529['map'](_0x2e1265=>({'id':_0x2e1265['id'],'functionName':_0x2e1265[_0x5cb1cb(0x169)]??'','description':_0x2e1265[_0x5cb1cb(0x165)]||'(unnamed)','scriptType':_0x2e1265[_0x5cb1cb(0x15a)]})),'message':_0x10f529['length']===0x0?_0x5cb1cb(0x164):undefined};}};
1
+ const a30_0x3098c0=a30_0x4d62;function a30_0x4ed6(){const _0x5ceefc=['bool','No\x20BFF\x20scripts\x20found.','str','List\x20BFF\x20scripts','name','402rIlTkm','33430aOOAkn','appCode','Filter\x20by\x20script\x20name','5476getaJw','map','5784571nFDOEW','(unnamed)','read','53823rwBzwu','length','ENDPOINT','3395uOcXGR','list','functionName','string','boolean','COMMON','1234029dcLLSM','Return\x20full\x20script\x20objects','verbose','84MLvFqB','type','517nufIJE','bff','7349432jAXdSu','1ChBGgo','description','2237674hzmaSK','9aYJmrb'];a30_0x4ed6=function(){return _0x5ceefc;};return a30_0x4ed6();}function a30_0x4d62(_0x49df89,_0x1e11d2){_0x49df89=_0x49df89-0xa1;const _0x4ed6cf=a30_0x4ed6();let _0x4d62ab=_0x4ed6cf[_0x49df89];return _0x4d62ab;}(function(_0xac054b,_0x13c930){const _0x381958=a30_0x4d62,_0x10124f=_0xac054b();while(!![]){try{const _0x3eb774=-parseInt(_0x381958(0xb5))/0x1*(-parseInt(_0x381958(0xb7))/0x2)+parseInt(_0x381958(0xad))/0x3+parseInt(_0x381958(0xc2))/0x4*(parseInt(_0x381958(0xa7))/0x5)+parseInt(_0x381958(0xbe))/0x6*(parseInt(_0x381958(0xa4))/0x7)+parseInt(_0x381958(0xb4))/0x8*(parseInt(_0x381958(0xb8))/0x9)+parseInt(_0x381958(0xbf))/0xa*(-parseInt(_0x381958(0xb2))/0xb)+parseInt(_0x381958(0xb0))/0xc*(-parseInt(_0x381958(0xa1))/0xd);if(_0x3eb774===_0x13c930)break;else _0x10124f['push'](_0x10124f['shift']());}catch(_0xf67db6){_0x10124f['push'](_0x10124f['shift']());}}}(a30_0x4ed6,0x97c73));import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x3098c0(0xb3),'command':a30_0x3098c0(0xa8),'description':a30_0x3098c0(0xbc),'risk':a30_0x3098c0(0xa3),'flags':[{'name':a30_0x3098c0(0xb1),'type':a30_0x3098c0(0xaa),'description':'Script\x20type\x20filter','default':'ENDPOINT','enum':[a30_0x3098c0(0xa6),a30_0x3098c0(0xac)]},{'name':a30_0x3098c0(0xbd),'type':a30_0x3098c0(0xaa),'description':a30_0x3098c0(0xc1)},{'name':a30_0x3098c0(0xaf),'type':a30_0x3098c0(0xab),'description':a30_0x3098c0(0xae)}],async 'execute'(_0x2acd5b){const _0x543066=a30_0x3098c0,_0x3a06f0=await listBffScripts(_0x2acd5b[_0x543066(0xc0)],_0x2acd5b[_0x543066(0xbb)](_0x543066(0xb1)),{'scriptName':_0x2acd5b[_0x543066(0xbb)]('name')||undefined}),_0x16980c=_0x2acd5b[_0x543066(0xb9)](_0x543066(0xaf));return{'ok':!![],'data':_0x16980c?_0x3a06f0:_0x3a06f0[_0x543066(0xc3)](_0x4cbc5a=>({'id':_0x4cbc5a['id'],'functionName':_0x4cbc5a[_0x543066(0xa9)]??'','description':_0x4cbc5a[_0x543066(0xb6)]||_0x543066(0xa2),'scriptType':_0x4cbc5a['scriptType']})),'message':_0x3a06f0[_0x543066(0xa5)]===0x0?_0x543066(0xba):undefined};}};
@@ -1 +1 @@
1
- const a31_0x366b94=a31_0x5e28;(function(_0x3f75af,_0x2dc810){const _0x3462e5=a31_0x5e28,_0x1a260c=_0x3f75af();while(!![]){try{const _0x40ee7c=-parseInt(_0x3462e5(0x1cd))/0x1*(-parseInt(_0x3462e5(0x1e6))/0x2)+-parseInt(_0x3462e5(0x1c1))/0x3+parseInt(_0x3462e5(0x1ef))/0x4*(parseInt(_0x3462e5(0x1f7))/0x5)+parseInt(_0x3462e5(0x1f3))/0x6+-parseInt(_0x3462e5(0x206))/0x7*(parseInt(_0x3462e5(0x1f0))/0x8)+parseInt(_0x3462e5(0x1de))/0x9*(-parseInt(_0x3462e5(0x1c0))/0xa)+-parseInt(_0x3462e5(0x1ca))/0xb;if(_0x40ee7c===_0x2dc810)break;else _0x1a260c['push'](_0x1a260c['shift']());}catch(_0x1150eb){_0x1a260c['push'](_0x1a260c['shift']());}}}(a31_0x5651,0x53680));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';function a31_0x5e28(_0x4db989,_0xef6d88){_0x4db989=_0x4db989-0x1bc;const _0x565116=a31_0x5651();let _0x5e2855=_0x565116[_0x4db989];return _0x5e2855;}function a31_0x5651(){const _0x527f0f=['ENDPOINT','parse','would_pull','Pull\x20only\x20this\x20script\x20type','map','Remote\x20script\x20missing\x20content.','&type=','\x22\x20not\x20found\x20after\x20ensureLockScope.','write','message','yes','conflict','lockKey','scriptContent','1043568zFhOAL','local\x20unsynced\x20changes','stdin','apiDir','filePath','cancelled','\x20skipped,\x20','stderr','1059658VmcKFE','\x20pulled,\x20','functionNode','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','\x20failed','apps','nonInteractive','lockFilePath','version','4FmetYT','1351048sqbNFe','utf8','force','3727326ViutbQ','lastSync','all','str','1301035lDzyBG','HOOK','Remote\x20script\x20missing\x20id.','Force\x20overwrite\x20local\x20unsynced\x20changes','COMMON','Lock\x20scope\x20for\x20app\x20\x22','string','scriptType','functions','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','type','GET','Would\x20inspect\x20','push','appCode','7IrmIrr','scriptsRoot','alias','skipped','hookLocation','10nkTQkR','603756jwalLu','pull','functionName','question','stringify','bff','operationType','unresolvable\x20target\x20path','includes','6418940QiILDx','No\x20remote\x20BFF\x20scripts\x20found.','toISOString','1BOIADh','datasetCode','length'];a31_0x5651=function(){return _0x527f0f;};return a31_0x5651();}import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0x366b94(0x1c6),'command':a31_0x366b94(0x1c2),'description':a31_0x366b94(0x200),'risk':a31_0x366b94(0x1d8),'flags':[{'name':a31_0x366b94(0x201),'type':a31_0x366b94(0x1fd),'description':a31_0x366b94(0x1d3),'enum':[a31_0x366b94(0x1fb),a31_0x366b94(0x1d0),a31_0x366b94(0x1f8)]},{'name':'force','type':'boolean','description':a31_0x366b94(0x1fa)}],async 'dryRun'(_0x1b8f3d){const _0x2ee67c=a31_0x366b94,_0x1853fe=loadBffProjectConfig(_0x1b8f3d[_0x2ee67c(0x205)]),_0x5430ae=await readBffLockFile(_0x1853fe[_0x2ee67c(0x1ed)]),{appLock:_0x5a299b}=ensureLockScope(_0x5430ae??createEmptyBffLock(),_0x1b8f3d[_0x2ee67c(0x205)],_0x1853fe[_0x2ee67c(0x1bc)],_0x2ee67c(0x1c2)),_0x16a378=normalizeBffType(_0x1b8f3d[_0x2ee67c(0x1f6)]('type'))??undefined,_0x1b6dc7=buildDatasetCodeToAliasMap(_0x1b8f3d[_0x2ee67c(0x1e1)],_0x1b8f3d['appCode']),[_0x53eea5,_0x4dce69]=await Promise[_0x2ee67c(0x1f5)]([listBffScripts(_0x1b8f3d[_0x2ee67c(0x205)],_0x16a378),getBffScriptStatistics(_0x1b8f3d['appCode'])]),_0x2e4a24=createHookLocationMap(_0x4dce69),_0x44b85b=[];for(const _0x2a1f0d of _0x53eea5){const _0x1fa76f=resolveRemoteScriptTarget(_0x1853fe,_0x2a1f0d,_0x2e4a24,_0x5a299b['functions'],_0x1b6dc7);if(!_0x1fa76f){_0x44b85b[_0x2ee67c(0x204)]({'scriptType':_0x2a1f0d[_0x2ee67c(0x1fe)],'functionName':_0x2a1f0d[_0x2ee67c(0x1c3)]??'','status':_0x2ee67c(0x1be),'reason':_0x2ee67c(0x1c8)});continue;}const _0x2e8d5b=_0x5a299b[_0x2ee67c(0x1ff)][_0x1fa76f[_0x2ee67c(0x1dc)]],_0x26c95f=_0x2a1f0d[_0x2ee67c(0x1dd)]!=null?computeContentHash(_0x2a1f0d[_0x2ee67c(0x1dd)]):undefined,_0x3dfe11=await hasUnsyncedLocalChanges(_0x1fa76f[_0x2ee67c(0x1e2)],_0x2e8d5b,_0x26c95f);_0x44b85b['push']({'lockKey':_0x1fa76f[_0x2ee67c(0x1dc)],'filePath':_0x1fa76f[_0x2ee67c(0x1e2)],'remoteId':_0x2a1f0d['id']??null,'status':_0x3dfe11?_0x2ee67c(0x1db):_0x2ee67c(0x1d2)});}return{'method':_0x2ee67c(0x202),'url':'/api/management/library/scripts/list?appCode='+_0x1b8f3d[_0x2ee67c(0x205)]+(_0x16a378?_0x2ee67c(0x1d6)+_0x16a378:''),'body':{'appCode':_0x1b8f3d[_0x2ee67c(0x205)],'filterType':_0x16a378??null,'files':_0x44b85b},'description':_0x2ee67c(0x203)+_0x44b85b[_0x2ee67c(0x1cf)]+'\x20remote\x20BFF\x20script(s)\x20for\x20pull'};},async 'execute'(_0x9dd3c0){const _0x4a26ff=a31_0x366b94,_0xf9a70e=loadBffProjectConfig(_0x9dd3c0[_0x4a26ff(0x205)]),_0x4e0dd9=await readBffLockFile(_0xf9a70e[_0x4a26ff(0x1ed)]),{lockData:_0x26d190,appLock:_0x52ec41}=ensureLockScope(_0x4e0dd9??createEmptyBffLock(),_0x9dd3c0['appCode'],_0xf9a70e['scriptsRoot'],_0x4a26ff(0x1c2)),_0xba6b99=normalizeBffType(_0x9dd3c0[_0x4a26ff(0x1f6)]('type'))??undefined;if(_0x9dd3c0[_0x4a26ff(0x1f6)](_0x4a26ff(0x201))&&!_0xba6b99)throw CliErrors['validation'](_0x4a26ff(0x1e9));const [_0x5a4b81,_0x4d5397]=await Promise[_0x4a26ff(0x1f5)]([listBffScripts(_0x9dd3c0[_0x4a26ff(0x205)],_0xba6b99),getBffScriptStatistics(_0x9dd3c0[_0x4a26ff(0x205)])]);if(_0x5a4b81[_0x4a26ff(0x1cf)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x4a26ff(0x1cb)};const _0x46bb3e=_0x9dd3c0['bool'](_0x4a26ff(0x1f2));if(_0x46bb3e&&!_0x9dd3c0['nonInteractive']){const _0x114a62=await confirmForce();if(!_0x114a62)throw CliErrors[_0x4a26ff(0x1e3)]('Force\x20pull\x20cancelled.');}if(_0x46bb3e&&_0x9dd3c0[_0x4a26ff(0x1ec)]){}const _0x146daa=buildDatasetCodeToAliasMap(_0x9dd3c0[_0x4a26ff(0x1e1)],_0x9dd3c0[_0x4a26ff(0x205)]),_0x3b773b=createHookLocationMap(_0x4d5397),_0x4405ef=JSON[_0x4a26ff(0x1d1)](JSON[_0x4a26ff(0x1c5)](_0x26d190)),_0x32c2ff=_0x9dd3c0['appCode'],_0x2ad27b=_0x4405ef[_0x4a26ff(0x1eb)][_0x32c2ff];if(!_0x2ad27b)throw new Error(_0x4a26ff(0x1fc)+_0x32c2ff+_0x4a26ff(0x1d7));const _0x34125e=[],_0x2f2203=[],_0x2d0980=[];for(const _0x4dbecf of _0x5a4b81){const _0x975e2f=resolveRemoteScriptTarget(_0xf9a70e,_0x4dbecf,_0x3b773b,_0x52ec41[_0x4a26ff(0x1ff)],_0x146daa);if(!_0x975e2f){_0x2f2203[_0x4a26ff(0x204)]({'lockKey':_0x4dbecf[_0x4a26ff(0x1fe)]+'/'+_0x4dbecf[_0x4a26ff(0x1c3)],'reason':'unresolvable\x20target\x20path'});continue;}const _0x1f77ca=_0x52ec41[_0x4a26ff(0x1ff)][_0x975e2f[_0x4a26ff(0x1dc)]];try{if(!_0x4dbecf['id'])throw new Error(_0x4a26ff(0x1f9));if(_0x4dbecf[_0x4a26ff(0x1dd)]==null)throw new Error(_0x4a26ff(0x1d5));const _0x13a7d0=_0x4dbecf[_0x4a26ff(0x1dd)],_0x32f903=computeContentHash(_0x13a7d0);if(!_0x46bb3e){const _0x4d9bf9=await hasUnsyncedLocalChanges(_0x975e2f[_0x4a26ff(0x1e2)],_0x1f77ca,_0x32f903);if(_0x4d9bf9){_0x2f2203[_0x4a26ff(0x204)]({'lockKey':_0x975e2f['lockKey'],'reason':_0x4a26ff(0x1df)});continue;}}await ensureParentDirectory(_0x975e2f[_0x4a26ff(0x1e2)]),await writeFile(_0x975e2f[_0x4a26ff(0x1e2)],_0x13a7d0,_0x4a26ff(0x1f1));const _0x813e0f={'hash':_0x32f903,'remoteId':_0x4dbecf['id'],'version':_0x4dbecf[_0x4a26ff(0x1ee)]};_0x975e2f[_0x4a26ff(0x201)]===_0x4a26ff(0x1f8)&&_0x975e2f[_0x4a26ff(0x1bf)]&&(_0x813e0f[_0x4a26ff(0x1bd)]=_0x975e2f['hookLocation'][_0x4a26ff(0x1bd)],_0x813e0f[_0x4a26ff(0x1ce)]=_0x975e2f[_0x4a26ff(0x1bf)][_0x4a26ff(0x1ce)],_0x813e0f[_0x4a26ff(0x1c7)]=_0x975e2f['hookLocation'][_0x4a26ff(0x1c7)],_0x813e0f['functionNode']=_0x975e2f[_0x4a26ff(0x1bf)][_0x4a26ff(0x1e8)]),_0x2ad27b[_0x4a26ff(0x1ff)][_0x975e2f[_0x4a26ff(0x1dc)]]=_0x813e0f,_0x34125e['push']({'lockKey':_0x975e2f['lockKey'],'remoteId':_0x4dbecf['id']});}catch(_0x3c883c){_0x2d0980[_0x4a26ff(0x204)]({'lockKey':_0x975e2f['lockKey'],'error':_0x3c883c instanceof Error?_0x3c883c[_0x4a26ff(0x1d9)]:String(_0x3c883c)});}}return _0x2ad27b[_0x4a26ff(0x1f4)]=new Date()[_0x4a26ff(0x1cc)](),await writeBffLockFile(_0xf9a70e[_0x4a26ff(0x1ed)],_0x4405ef),{'ok':_0x2d0980[_0x4a26ff(0x1cf)]===0x0,'data':{'pulled':_0x34125e,'skipped':_0x2f2203,'failed':_0x2d0980},'message':'Pull\x20complete:\x20'+_0x34125e['length']+_0x4a26ff(0x1e7)+_0x2f2203[_0x4a26ff(0x1cf)]+_0x4a26ff(0x1e4)+_0x2d0980['length']+_0x4a26ff(0x1ea)};}};async function hasUnsyncedLocalChanges(_0x448b2e,_0x51979d,_0x2fc9bd){if(!await fileExists(_0x448b2e))return![];const _0x1127af=await computeFileHash(_0x448b2e);if(!_0x51979d)return _0x2fc9bd?_0x1127af!==_0x2fc9bd:!![];return _0x1127af!==_0x51979d['hash'];}function buildDatasetCodeToAliasMap(_0x28cd13,_0x56a2be){const _0x45c0dd=a31_0x366b94,_0x4b0a0f=loadAliasMap(_0x28cd13,undefined,resolveApiFilePath(_0x28cd13,_0x56a2be));return new Map(_0x4b0a0f[_0x45c0dd(0x1d4)](_0x2519b4=>[_0x2519b4[_0x45c0dd(0x1ce)],_0x2519b4[_0x45c0dd(0x1bd)]]));}async function confirmForce(){const _0x58787d=a31_0x366b94,_0xea30ea=createInterface({'input':process[_0x58787d(0x1e0)],'output':process[_0x58787d(0x1e5)]}),_0x505733=await new Promise(_0x33dae2=>{const _0x500cc2=_0x58787d;_0xea30ea[_0x500cc2(0x1c4)]('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0x33dae2);});return _0xea30ea['close'](),['y',_0x58787d(0x1da)][_0x58787d(0x1c9)](_0x505733['trim']()['toLowerCase']());}
1
+ const a31_0x2f3ca9=a31_0x5d77;function a31_0x5d77(_0x43d4b3,_0x45ae92){_0x43d4b3=_0x43d4b3-0x11b;const _0x578f4f=a31_0x578f();let _0x5d77b7=_0x578f4f[_0x43d4b3];return _0x5d77b7;}(function(_0x53f28e,_0x98649b){const _0x127e20=a31_0x5d77,_0x488f30=_0x53f28e();while(!![]){try{const _0x3a7879=parseInt(_0x127e20(0x11d))/0x1+-parseInt(_0x127e20(0x13a))/0x2+-parseInt(_0x127e20(0x145))/0x3*(parseInt(_0x127e20(0x13d))/0x4)+-parseInt(_0x127e20(0x133))/0x5+-parseInt(_0x127e20(0x13b))/0x6*(parseInt(_0x127e20(0x14a))/0x7)+parseInt(_0x127e20(0x146))/0x8*(-parseInt(_0x127e20(0x142))/0x9)+parseInt(_0x127e20(0x150))/0xa;if(_0x3a7879===_0x98649b)break;else _0x488f30['push'](_0x488f30['shift']());}catch(_0x53538b){_0x488f30['push'](_0x488f30['shift']());}}}(a31_0x578f,0x45f94));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';function a31_0x578f(){const _0x38491b=['lockKey','operationType','528865iRftXW','lockFilePath','apps','close','hash','str','conflict','1034666dehSHE','774EhAsxa','length','1017740PgEawz','alias','Remote\x20script\x20missing\x20id.','nonInteractive','type','44136plOumK','push','scriptType','3tTwiYL','608cTzoga','validation','question','boolean','18074fqlfAa','pull','string','stderr','\x20pulled,\x20','\x20remote\x20BFF\x20script(s)\x20for\x20pull','16318240rmhrvW','ENDPOINT','skipped','/api/management/library/scripts/list?appCode=','functions','all','\x22\x20not\x20found\x20after\x20ensureLockScope.','Pull\x20only\x20this\x20script\x20type','functionNode','hookLocation','includes','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','write','trim','cancelled','message','scriptsRoot','apiDir','yes','238111LkNaxq','stdin','utf8','unresolvable\x20target\x20path','map','toLowerCase','COMMON','Force\x20pull\x20cancelled.','filePath','Lock\x20scope\x20for\x20app\x20\x22','scriptContent','stringify','parse','would_pull','Would\x20inspect\x20','datasetCode','functionName','HOOK','appCode','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20'];a31_0x578f=function(){return _0x38491b;};return a31_0x578f();}import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':'bff','command':'pull','description':'Pull\x20remote\x20BFF\x20scripts\x20to\x20local','risk':a31_0x2f3ca9(0x15c),'flags':[{'name':a31_0x2f3ca9(0x141),'type':a31_0x2f3ca9(0x14c),'description':a31_0x2f3ca9(0x157),'enum':[a31_0x2f3ca9(0x123),a31_0x2f3ca9(0x151),'HOOK']},{'name':'force','type':a31_0x2f3ca9(0x149),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x13b6a6){const _0x41cf7c=a31_0x2f3ca9,_0x3759a6=loadBffProjectConfig(_0x13b6a6[_0x41cf7c(0x12f)]),_0x4a4872=await readBffLockFile(_0x3759a6['lockFilePath']),{appLock:_0x55ff57}=ensureLockScope(_0x4a4872??createEmptyBffLock(),_0x13b6a6['appCode'],_0x3759a6[_0x41cf7c(0x160)],_0x41cf7c(0x14b)),_0x562de0=normalizeBffType(_0x13b6a6[_0x41cf7c(0x138)](_0x41cf7c(0x141)))??undefined,_0x426c65=buildDatasetCodeToAliasMap(_0x13b6a6[_0x41cf7c(0x11b)],_0x13b6a6[_0x41cf7c(0x12f)]),[_0x4d45ac,_0x48da11]=await Promise[_0x41cf7c(0x155)]([listBffScripts(_0x13b6a6[_0x41cf7c(0x12f)],_0x562de0),getBffScriptStatistics(_0x13b6a6['appCode'])]),_0x4f30d0=createHookLocationMap(_0x48da11),_0x337045=[];for(const _0x3b4528 of _0x4d45ac){const _0x32c7fb=resolveRemoteScriptTarget(_0x3759a6,_0x3b4528,_0x4f30d0,_0x55ff57[_0x41cf7c(0x154)],_0x426c65);if(!_0x32c7fb){_0x337045[_0x41cf7c(0x143)]({'scriptType':_0x3b4528[_0x41cf7c(0x144)],'functionName':_0x3b4528[_0x41cf7c(0x12d)]??'','status':_0x41cf7c(0x152),'reason':_0x41cf7c(0x120)});continue;}const _0x2c7256=_0x55ff57[_0x41cf7c(0x154)][_0x32c7fb[_0x41cf7c(0x131)]],_0x3e29ca=_0x3b4528['scriptContent']!=null?computeContentHash(_0x3b4528[_0x41cf7c(0x127)]):undefined,_0x4bab3c=await hasUnsyncedLocalChanges(_0x32c7fb[_0x41cf7c(0x125)],_0x2c7256,_0x3e29ca);_0x337045['push']({'lockKey':_0x32c7fb[_0x41cf7c(0x131)],'filePath':_0x32c7fb[_0x41cf7c(0x125)],'remoteId':_0x3b4528['id']??null,'status':_0x4bab3c?_0x41cf7c(0x139):_0x41cf7c(0x12a)});}return{'method':'GET','url':_0x41cf7c(0x153)+_0x13b6a6[_0x41cf7c(0x12f)]+(_0x562de0?'&type='+_0x562de0:''),'body':{'appCode':_0x13b6a6[_0x41cf7c(0x12f)],'filterType':_0x562de0??null,'files':_0x337045},'description':_0x41cf7c(0x12b)+_0x337045['length']+_0x41cf7c(0x14f)};},async 'execute'(_0x130f2e){const _0x49114a=a31_0x2f3ca9,_0x1938d5=loadBffProjectConfig(_0x130f2e[_0x49114a(0x12f)]),_0x49be81=await readBffLockFile(_0x1938d5[_0x49114a(0x134)]),{lockData:_0x5449fe,appLock:_0x23fea7}=ensureLockScope(_0x49be81??createEmptyBffLock(),_0x130f2e[_0x49114a(0x12f)],_0x1938d5[_0x49114a(0x160)],_0x49114a(0x14b)),_0x198a4e=normalizeBffType(_0x130f2e[_0x49114a(0x138)]('type'))??undefined;if(_0x130f2e['str'](_0x49114a(0x141))&&!_0x198a4e)throw CliErrors[_0x49114a(0x147)](_0x49114a(0x15b));const [_0x222ea7,_0x31f12a]=await Promise[_0x49114a(0x155)]([listBffScripts(_0x130f2e[_0x49114a(0x12f)],_0x198a4e),getBffScriptStatistics(_0x130f2e[_0x49114a(0x12f)])]);if(_0x222ea7['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20BFF\x20scripts\x20found.'};const _0x1fbe95=_0x130f2e['bool']('force');if(_0x1fbe95&&!_0x130f2e[_0x49114a(0x140)]){const _0x213433=await confirmForce();if(!_0x213433)throw CliErrors[_0x49114a(0x15e)](_0x49114a(0x124));}if(_0x1fbe95&&_0x130f2e[_0x49114a(0x140)]){}const _0x5831cd=buildDatasetCodeToAliasMap(_0x130f2e[_0x49114a(0x11b)],_0x130f2e[_0x49114a(0x12f)]),_0x516196=createHookLocationMap(_0x31f12a),_0x48cb90=JSON[_0x49114a(0x129)](JSON[_0x49114a(0x128)](_0x5449fe)),_0x361f6e=_0x130f2e[_0x49114a(0x12f)],_0x57f930=_0x48cb90[_0x49114a(0x135)][_0x361f6e];if(!_0x57f930)throw new Error(_0x49114a(0x126)+_0x361f6e+_0x49114a(0x156));const _0x1d1d1b=[],_0x43aec6=[],_0x4cce03=[];for(const _0x4983f7 of _0x222ea7){const _0x1df32e=resolveRemoteScriptTarget(_0x1938d5,_0x4983f7,_0x516196,_0x23fea7[_0x49114a(0x154)],_0x5831cd);if(!_0x1df32e){_0x43aec6[_0x49114a(0x143)]({'lockKey':_0x4983f7['scriptType']+'/'+_0x4983f7[_0x49114a(0x12d)],'reason':_0x49114a(0x120)});continue;}const _0x298437=_0x23fea7[_0x49114a(0x154)][_0x1df32e['lockKey']];try{if(!_0x4983f7['id'])throw new Error(_0x49114a(0x13f));if(_0x4983f7['scriptContent']==null)throw new Error('Remote\x20script\x20missing\x20content.');const _0x14951a=_0x4983f7[_0x49114a(0x127)],_0x4ff6cc=computeContentHash(_0x14951a);if(!_0x1fbe95){const _0x59dcf7=await hasUnsyncedLocalChanges(_0x1df32e[_0x49114a(0x125)],_0x298437,_0x4ff6cc);if(_0x59dcf7){_0x43aec6['push']({'lockKey':_0x1df32e['lockKey'],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x1df32e['filePath']),await writeFile(_0x1df32e[_0x49114a(0x125)],_0x14951a,_0x49114a(0x11f));const _0x564b2d={'hash':_0x4ff6cc,'remoteId':_0x4983f7['id'],'version':_0x4983f7['version']};_0x1df32e[_0x49114a(0x141)]===_0x49114a(0x12e)&&_0x1df32e[_0x49114a(0x159)]&&(_0x564b2d[_0x49114a(0x13e)]=_0x1df32e[_0x49114a(0x159)][_0x49114a(0x13e)],_0x564b2d['datasetCode']=_0x1df32e['hookLocation']['datasetCode'],_0x564b2d['operationType']=_0x1df32e[_0x49114a(0x159)][_0x49114a(0x132)],_0x564b2d[_0x49114a(0x158)]=_0x1df32e[_0x49114a(0x159)]['functionNode']),_0x57f930[_0x49114a(0x154)][_0x1df32e['lockKey']]=_0x564b2d,_0x1d1d1b['push']({'lockKey':_0x1df32e['lockKey'],'remoteId':_0x4983f7['id']});}catch(_0x51a204){_0x4cce03[_0x49114a(0x143)]({'lockKey':_0x1df32e[_0x49114a(0x131)],'error':_0x51a204 instanceof Error?_0x51a204[_0x49114a(0x15f)]:String(_0x51a204)});}}return _0x57f930['lastSync']=new Date()['toISOString'](),await writeBffLockFile(_0x1938d5['lockFilePath'],_0x48cb90),{'ok':_0x4cce03[_0x49114a(0x13c)]===0x0,'data':{'pulled':_0x1d1d1b,'skipped':_0x43aec6,'failed':_0x4cce03},'message':'Pull\x20complete:\x20'+_0x1d1d1b[_0x49114a(0x13c)]+_0x49114a(0x14e)+_0x43aec6[_0x49114a(0x13c)]+'\x20skipped,\x20'+_0x4cce03[_0x49114a(0x13c)]+'\x20failed'};}};async function hasUnsyncedLocalChanges(_0x2c9e15,_0xb18633,_0x46ece5){const _0x3ec4a3=a31_0x2f3ca9;if(!await fileExists(_0x2c9e15))return![];const _0x16081e=await computeFileHash(_0x2c9e15);if(!_0xb18633)return _0x46ece5?_0x16081e!==_0x46ece5:!![];return _0x16081e!==_0xb18633[_0x3ec4a3(0x137)];}function buildDatasetCodeToAliasMap(_0x34a3ed,_0x387fd2){const _0x407345=a31_0x2f3ca9,_0x17d9c6=loadAliasMap(_0x34a3ed,undefined,resolveApiFilePath(_0x34a3ed,_0x387fd2));return new Map(_0x17d9c6[_0x407345(0x121)](_0x4ebd59=>[_0x4ebd59[_0x407345(0x12c)],_0x4ebd59[_0x407345(0x13e)]]));}async function confirmForce(){const _0x257123=a31_0x2f3ca9,_0x5f55e2=createInterface({'input':process[_0x257123(0x11e)],'output':process[_0x257123(0x14d)]}),_0x4bc784=await new Promise(_0x207aab=>{const _0x294a60=_0x257123;_0x5f55e2[_0x294a60(0x148)](_0x294a60(0x130),_0x207aab);});return _0x5f55e2[_0x257123(0x136)](),['y',_0x257123(0x11c)][_0x257123(0x15a)](_0x4bc784[_0x257123(0x15d)]()[_0x257123(0x122)]());}