@lovrabet/rabetbase-cli 2.1.13 → 2.1.14-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (202) hide show
  1. package/lib/api/api-doc.js +1 -1
  2. package/lib/api/fetch-model-list.js +1 -1
  3. package/lib/api/generate-api-file.js +1 -1
  4. package/lib/auth/auth-server-ui.js +1 -1
  5. package/lib/auth/auth-server.js +1 -1
  6. package/lib/auth/constant.js +1 -1
  7. package/lib/auth/get-cookie.js +1 -1
  8. package/lib/auth/get-session-user.js +1 -1
  9. package/lib/auth/is-session-valid.js +1 -1
  10. package/lib/auth/login-success-html.js +1 -1
  11. package/lib/auth/logout.js +1 -1
  12. package/lib/cli-flags.js +1 -1
  13. package/lib/cli.js +1 -1
  14. package/lib/commands/api/generate.js +1 -1
  15. package/lib/commands/api/index.js +1 -1
  16. package/lib/commands/api/list.js +1 -1
  17. package/lib/commands/api/pull.js +1 -1
  18. package/lib/commands/api/shared.js +1 -1
  19. package/lib/commands/app/add.js +1 -1
  20. package/lib/commands/app/discover.js +1 -1
  21. package/lib/commands/app/index.js +1 -1
  22. package/lib/commands/app/list.js +1 -1
  23. package/lib/commands/app/remove.js +1 -1
  24. package/lib/commands/app/shared.js +1 -1
  25. package/lib/commands/app/use.js +1 -1
  26. package/lib/commands/auth/index.js +1 -1
  27. package/lib/commands/bff/create.js +1 -1
  28. package/lib/commands/bff/delete.js +1 -1
  29. package/lib/commands/bff/detail.js +1 -1
  30. package/lib/commands/bff/index.js +1 -1
  31. package/lib/commands/bff/list.js +1 -1
  32. package/lib/commands/bff/pull.js +1 -1
  33. package/lib/commands/bff/push.js +1 -1
  34. package/lib/commands/bff/status.js +1 -1
  35. package/lib/commands/cli-update.js +1 -1
  36. package/lib/commands/codegen/index.js +1 -1
  37. package/lib/commands/codegen/sdk.js +1 -1
  38. package/lib/commands/codegen/sql.js +1 -1
  39. package/lib/commands/common/app-selector.js +1 -1
  40. package/lib/commands/common/flags.js +1 -1
  41. package/lib/commands/common/validate.js +1 -1
  42. package/lib/commands/config/get.js +1 -1
  43. package/lib/commands/config/index.js +1 -1
  44. package/lib/commands/config/list.js +1 -1
  45. package/lib/commands/config/set.js +1 -1
  46. package/lib/commands/config/shared.js +1 -1
  47. package/lib/commands/data/filter.js +1 -1
  48. package/lib/commands/data/getOne.js +1 -1
  49. package/lib/commands/data/index.js +1 -1
  50. package/lib/commands/data/shared.js +1 -1
  51. package/lib/commands/dataset/capability.js +1 -1
  52. package/lib/commands/dataset/delete.js +1 -1
  53. package/lib/commands/dataset/detail.js +1 -1
  54. package/lib/commands/dataset/extend-update.js +1 -0
  55. package/lib/commands/dataset/field-update.js +1 -1
  56. package/lib/commands/dataset/index.js +1 -1
  57. package/lib/commands/dataset/link-create.js +1 -1
  58. package/lib/commands/dataset/link-delete.js +1 -1
  59. package/lib/commands/dataset/link-shared.js +1 -1
  60. package/lib/commands/dataset/link-update.js +1 -1
  61. package/lib/commands/dataset/links.js +1 -1
  62. package/lib/commands/dataset/list.js +1 -1
  63. package/lib/commands/dataset/operations.js +1 -1
  64. package/lib/commands/dataset/rename.js +1 -0
  65. package/lib/commands/db/analyze-cancel.js +1 -1
  66. package/lib/commands/db/analyze-start.js +1 -1
  67. package/lib/commands/db/analyze-status.js +1 -1
  68. package/lib/commands/db/create.js +1 -1
  69. package/lib/commands/db/delete.js +1 -1
  70. package/lib/commands/db/detail.js +1 -1
  71. package/lib/commands/db/diff.js +1 -1
  72. package/lib/commands/db/index.js +1 -1
  73. package/lib/commands/db/list.js +1 -1
  74. package/lib/commands/db/shared.js +1 -1
  75. package/lib/commands/db/tables.js +1 -1
  76. package/lib/commands/db/test.js +1 -1
  77. package/lib/commands/db/update.js +1 -1
  78. package/lib/commands/doctor.js +1 -1
  79. package/lib/commands/init/index.js +1 -1
  80. package/lib/commands/issue/index.js +1 -1
  81. package/lib/commands/issue/nudge.js +1 -1
  82. package/lib/commands/issue/report.js +1 -1
  83. package/lib/commands/issue/shared.js +1 -1
  84. package/lib/commands/logs/index.js +1 -1
  85. package/lib/commands/menu/index.js +1 -1
  86. package/lib/commands/menu/shared/compare-table.js +1 -1
  87. package/lib/commands/menu/shared/index.js +1 -1
  88. package/lib/commands/menu/shared/inquirer.js +1 -1
  89. package/lib/commands/menu/shared/local-pages.js +1 -1
  90. package/lib/commands/menu/shared/logic.js +1 -1
  91. package/lib/commands/menu/shared/service.js +1 -1
  92. package/lib/commands/menu/shared/sync-core.js +1 -1
  93. package/lib/commands/menu/shared/update-core.js +1 -1
  94. package/lib/commands/menu/shared/valid-url.js +1 -1
  95. package/lib/commands/menu/sync.js +1 -1
  96. package/lib/commands/menu/update.js +1 -1
  97. package/lib/commands/page/generate-start.js +1 -1
  98. package/lib/commands/page/generate-status.js +1 -1
  99. package/lib/commands/page/index.js +1 -1
  100. package/lib/commands/page/pull.js +1 -1
  101. package/lib/commands/page/push.js +1 -1
  102. package/lib/commands/page/shared.js +1 -1
  103. package/lib/commands/page/standard-page-status.js +1 -1
  104. package/lib/commands/page/sync.js +1 -1
  105. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  106. package/lib/commands/project/create/format-elapsed.js +1 -1
  107. package/lib/commands/project/create/main.js +1 -1
  108. package/lib/commands/project/create/non-interactive.js +1 -1
  109. package/lib/commands/project/create/project-template-path.js +1 -1
  110. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  111. package/lib/commands/project/create/use-format-code.js +1 -1
  112. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  113. package/lib/commands/project/index.js +1 -1
  114. package/lib/commands/project/init.js +1 -1
  115. package/lib/commands/project/upgrade.js +1 -1
  116. package/lib/commands/registry.js +1 -1
  117. package/lib/commands/run/index.js +1 -1
  118. package/lib/commands/schema.js +1 -1
  119. package/lib/commands/skill/index.js +1 -1
  120. package/lib/commands/sql/create.js +1 -1
  121. package/lib/commands/sql/delete.js +1 -1
  122. package/lib/commands/sql/detail.js +1 -1
  123. package/lib/commands/sql/exec.js +1 -1
  124. package/lib/commands/sql/index.js +1 -1
  125. package/lib/commands/sql/list.js +1 -1
  126. package/lib/commands/sql/pull.js +1 -1
  127. package/lib/commands/sql/push.js +1 -1
  128. package/lib/commands/sql/save.js +1 -1
  129. package/lib/commands/sql/shared.js +1 -1
  130. package/lib/commands/sql/status.js +1 -1
  131. package/lib/commands/sql/validate.js +1 -1
  132. package/lib/config/schema.js +1 -1
  133. package/lib/constant/cdn.js +1 -1
  134. package/lib/constant/cli.js +1 -1
  135. package/lib/constant/defaults.js +1 -1
  136. package/lib/constant/domain.js +1 -1
  137. package/lib/constant/env.js +1 -1
  138. package/lib/constant/output.js +1 -1
  139. package/lib/constant/paths.js +1 -1
  140. package/lib/constant/risk.js +1 -1
  141. package/lib/context.js +1 -1
  142. package/lib/core/alias-resolver.js +1 -1
  143. package/lib/core/api-client.js +1 -1
  144. package/lib/core/bff/config.js +1 -1
  145. package/lib/core/bff/file-system.js +1 -1
  146. package/lib/core/bff/hash.js +1 -1
  147. package/lib/core/bff/lock.js +1 -1
  148. package/lib/core/bff/utils.js +1 -1
  149. package/lib/core/db-resolver.js +1 -1
  150. package/lib/core/page/file-system.js +1 -1
  151. package/lib/core/page/hash.js +1 -1
  152. package/lib/core/page/lock.js +1 -1
  153. package/lib/core/sql-sync/config.js +1 -1
  154. package/lib/core/sql-sync/file-system.js +1 -1
  155. package/lib/core/sql-sync/hash.js +1 -1
  156. package/lib/core/sql-sync/lock.js +1 -1
  157. package/lib/core/sql-sync/utils.js +1 -1
  158. package/lib/core/sql-validator.js +1 -1
  159. package/lib/errors.js +1 -1
  160. package/lib/framework/build-all-flags.js +1 -1
  161. package/lib/framework/flags.js +1 -1
  162. package/lib/framework/help.js +1 -1
  163. package/lib/framework/index.js +1 -1
  164. package/lib/framework/output.js +1 -1
  165. package/lib/framework/response.js +1 -1
  166. package/lib/framework/runner-alias.js +1 -1
  167. package/lib/framework/runner.js +1 -1
  168. package/lib/framework/schema-export.js +1 -1
  169. package/lib/framework/types.js +1 -1
  170. package/lib/generated/build-info.js +1 -1
  171. package/lib/help.js +1 -1
  172. package/lib/skills/main.js +1 -1
  173. package/lib/skills/npx-skills-add.js +1 -1
  174. package/lib/telemetry/cli-command-trace.js +1 -1
  175. package/lib/telemetry/cli-help-trace.js +1 -1
  176. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  177. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  178. package/lib/telemetry/send-cli-trace-log.js +1 -1
  179. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  180. package/lib/utils/ai_config.js +1 -1
  181. package/lib/utils/apply-jq-filter.js +1 -1
  182. package/lib/utils/cdn-config.js +1 -1
  183. package/lib/utils/check-sdk-version.js +1 -1
  184. package/lib/utils/cli-version-check.js +1 -1
  185. package/lib/utils/cli-version-policy.js +1 -1
  186. package/lib/utils/config.js +1 -1
  187. package/lib/utils/copy-directory.js +1 -1
  188. package/lib/utils/entity-with-id.js +1 -1
  189. package/lib/utils/file-utils.js +1 -1
  190. package/lib/utils/guides-cdn.js +1 -1
  191. package/lib/utils/http-client.js +1 -1
  192. package/lib/utils/is-non-interactive.js +1 -1
  193. package/lib/utils/logger.js +1 -1
  194. package/lib/utils/params.js +1 -1
  195. package/lib/utils/platform.js +1 -1
  196. package/lib/utils/rules-cdn.js +1 -1
  197. package/lib/utils/sleep.js +1 -1
  198. package/lib/utils/template-replacer.js +1 -1
  199. package/lib/utils/version.js +1 -1
  200. package/lib/utils/with-active-cookie.js +1 -1
  201. package/lib/utils/write-cli-side-channel.js +1 -1
  202. 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_0x3e4b(){const _0x2c953e=['872982oUrOLy','117JtzWho','121fYjzmr','app','map','appDesc','appCode','cookie','List\x20apps\x20available\x20on\x20the\x20platform\x20for\x20the\x20current\x20login','platform','2191925cOlyTO','452912UnmOGh','remote','8OXOJwR','2026780WLZZEi','3EfUzQf','1766138pCNXDz','2430890DGzLzX','appName','1207422ZDgiYP'];a19_0x3e4b=function(){return _0x2c953e;};return a19_0x3e4b();}const a19_0x17f9b3=a19_0x12b9;function a19_0x12b9(_0x1108da,_0x26f2b0){_0x1108da=_0x1108da-0xb1;const _0x3e4b1c=a19_0x3e4b();let _0x12b9f1=_0x3e4b1c[_0x1108da];return _0x12b9f1;}(function(_0x3fc14c,_0x418bf3){const _0x2dd971=a19_0x12b9,_0x93206c=_0x3fc14c();while(!![]){try{const _0x549afb=parseInt(_0x2dd971(0xbd))/0x1+parseInt(_0x2dd971(0xba))/0x2*(parseInt(_0x2dd971(0xb9))/0x3)+parseInt(_0x2dd971(0xb7))/0x4*(parseInt(_0x2dd971(0xb4))/0x5)+parseInt(_0x2dd971(0xbe))/0x6+-parseInt(_0x2dd971(0xb8))/0x7+parseInt(_0x2dd971(0xb5))/0x8*(parseInt(_0x2dd971(0xbf))/0x9)+-parseInt(_0x2dd971(0xbb))/0xa*(parseInt(_0x2dd971(0xc0))/0xb);if(_0x549afb===_0x418bf3)break;else _0x93206c['push'](_0x93206c['shift']());}catch(_0x5c82b3){_0x93206c['push'](_0x93206c['shift']());}}}(a19_0x3e4b,0xd81e5));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x473f4e){const _0x19fa94=a19_0x12b9,{setActiveCookie:_0x2c0852}=await import('../../core/api-client.js');_0x2c0852(_0x473f4e[_0x19fa94(0xb1)]);const _0x2c8a12=await listRemoteApps();return{'ok':!![],'data':{'items':_0x2c8a12[_0x19fa94(0xc2)](_0x3edfd3=>({..._0x3edfd3['id']!=null?{'id':_0x3edfd3['id']}:{},'appCode':_0x3edfd3[_0x19fa94(0xc4)],'appName':_0x3edfd3[_0x19fa94(0xbc)],..._0x3edfd3['appDesc']!=null?{'appDesc':_0x3edfd3[_0x19fa94(0xc3)]}:{}})),'meta':{'source':_0x19fa94(0xb3)}}};}export const appRemoteDefinition={'service':a19_0x17f9b3(0xc1),'command':a19_0x17f9b3(0xb6),'description':a19_0x17f9b3(0xb2),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};
@@ -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_0x55fb(_0xd6176f,_0x1e264a){_0xd6176f=_0xd6176f-0x122;const _0x195804=a20_0x1958();let _0x55fb56=_0x195804[_0xd6176f];return _0x55fb56;}(function(_0x258193,_0x37b0cc){const _0x5bcb7f=a20_0x55fb,_0x241fc6=_0x258193();while(!![]){try{const _0x20c785=parseInt(_0x5bcb7f(0x128))/0x1+-parseInt(_0x5bcb7f(0x122))/0x2+parseInt(_0x5bcb7f(0x12a))/0x3+-parseInt(_0x5bcb7f(0x129))/0x4*(parseInt(_0x5bcb7f(0x123))/0x5)+-parseInt(_0x5bcb7f(0x12b))/0x6*(parseInt(_0x5bcb7f(0x126))/0x7)+parseInt(_0x5bcb7f(0x127))/0x8*(parseInt(_0x5bcb7f(0x12c))/0x9)+-parseInt(_0x5bcb7f(0x125))/0xa*(parseInt(_0x5bcb7f(0x124))/0xb);if(_0x20c785===_0x37b0cc)break;else _0x241fc6['push'](_0x241fc6['shift']());}catch(_0xe8625d){_0x241fc6['push'](_0x241fc6['shift']());}}}(a20_0x1958,0xcc9bd));import{appListDefinition}from'../../commands/app/list.js';import{appRemoteDefinition}from'../../commands/app/discover.js';import{appUseDefinition}from'../../commands/app/use.js';import{appAddDefinition}from'../../commands/app/add.js';function a20_0x1958(){const _0x1504f1=['28156iPdYcT','6395YIdSIk','11WytsoM','4353310VAHXkU','283535zlmfpX','32FKijqr','617688eFCYnp','524iUvqug','1518282fnUjXo','186DohwIZ','3570543UgQmrA'];a20_0x1958=function(){return _0x1504f1;};return a20_0x1958();}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
+ function a21_0x3646(){const _0x290bb8=['entries','object','globalPath','defaultApp','\x20app\x20add\x20<name>\x20--appcode\x20<code>`\x20to\x20add\x20one.','60225831KfNfyc','globalConfig','global','projectConfig','mergedCli','boolean','app','9AHoxkR','14351304yToeqN','apps','8631924KXVDUe','\x20in\x20','.\x20Use\x20`','List\x20all\x20configured\x20apps','map','Show\x20only\x20apps\x20from\x20project\x20.rabetbase.json','83608ZcLzoW','No\x20apps\x20configured','length','merged','read','150915HwYEBd','isCurrent','1968540ALdMVy','projectPath','project','114skOzVG','Show\x20only\x20apps\x20from\x20global\x20~/.rabetbase.json','inherit','bool','appcode','find','\x20config','1540404utUxWl'];a21_0x3646=function(){return _0x290bb8;};return a21_0x3646();}const a21_0x152792=a21_0x3503;(function(_0x41426f,_0xef93de){const _0x3b51c7=a21_0x3503,_0x581e22=_0x41426f();while(!![]){try{const _0x454bfa=-parseInt(_0x3b51c7(0x161))/0x1+-parseInt(_0x3b51c7(0x177))/0x2*(parseInt(_0x3b51c7(0x16e))/0x3)+-parseInt(_0x3b51c7(0x157))/0x4+parseInt(_0x3b51c7(0x155))/0x5*(-parseInt(_0x3b51c7(0x15a))/0x6)+-parseInt(_0x3b51c7(0x171))/0x7+-parseInt(_0x3b51c7(0x16f))/0x8+parseInt(_0x3b51c7(0x167))/0x9;if(_0x454bfa===_0xef93de)break;else _0x581e22['push'](_0x581e22['shift']());}catch(_0x1bc606){_0x581e22['push'](_0x581e22['shift']());}}}(a21_0x3646,0xe3da6));import{readRawConfigWithLayers}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{buildAppProfileListFields}from'../../config/schema.js';import{appDefinedIn,enrichAppListItemsWithMergedSelection,resolveDefaultAppSource}from'../../commands/app/shared.js';function buildItemsFromLayer(_0x1a3d41,_0x52abe9){const _0x420d9e=a21_0x3503,_0x34de87=[],_0x1fa97e=_0x1a3d41[_0x420d9e(0x170)]&&typeof _0x1a3d41['apps']==='object'?_0x1a3d41['apps']:{},_0x519428=_0x1a3d41[_0x420d9e(0x165)]||undefined;for(const [_0x3c6b0f,_0x3c33bc]of Object['entries'](_0x1fa97e)){if(!_0x3c33bc||typeof _0x3c33bc!=='object'||!_0x3c33bc[_0x420d9e(0x15e)])continue;_0x34de87['push']({'name':_0x3c6b0f,'appcode':_0x3c33bc[_0x420d9e(0x15e)],'named':!![],'definedIn':_0x52abe9,'isDefault':_0x3c6b0f===_0x519428,...buildAppProfileListFields(_0x3c33bc)});}return _0x34de87;}function buildMergedItems(_0x3bd24d,_0x56e9c6){const _0xf7a8ea=a21_0x3503,{apps:apps={},defaultApp:_0x4f2731}=_0x3bd24d,_0x4831c7=_0x56e9c6[_0xf7a8ea(0x168)][_0xf7a8ea(0x170)]&&typeof _0x56e9c6[_0xf7a8ea(0x168)]['apps']===_0xf7a8ea(0x163)?_0x56e9c6['globalConfig'][_0xf7a8ea(0x170)]:{},_0xb2b1a2=_0x56e9c6[_0xf7a8ea(0x16a)][_0xf7a8ea(0x170)]&&typeof _0x56e9c6[_0xf7a8ea(0x16a)]['apps']===_0xf7a8ea(0x163)?_0x56e9c6[_0xf7a8ea(0x16a)][_0xf7a8ea(0x170)]:{},_0x49cabb=_0x56e9c6['projectConfig'][_0xf7a8ea(0x15c)]===![],_0x538fbd=Object[_0xf7a8ea(0x162)](apps),_0x5cfcd7=_0x538fbd[_0xf7a8ea(0x175)](([_0xcfa6a2,_0x4e62dc])=>({'name':_0xcfa6a2,'appcode':_0x4e62dc[_0xf7a8ea(0x15e)],'named':!![],'definedIn':appDefinedIn(_0xcfa6a2,_0x4831c7,_0xb2b1a2,_0x49cabb),'isDefault':_0xcfa6a2===_0x4f2731,...buildAppProfileListFields(_0x4e62dc)}));return _0x5cfcd7;}function a21_0x3503(_0x799314,_0x504d73){_0x799314=_0x799314-0x152;const _0x3646e0=a21_0x3646();let _0x35039f=_0x3646e0[_0x799314];return _0x35039f;}async function execute(_0x438524){const _0x314f2d=a21_0x3503,_0x4ba27e=_0x438524[_0x314f2d(0x15d)]('global'),_0x48d730=_0x438524[_0x314f2d(0x15d)]('project'),_0x544fb4=_0x4ba27e?_0x314f2d(0x169):_0x48d730?_0x314f2d(0x159):_0x314f2d(0x153),{config:_0x116853,layers:_0x38735d}=readRawConfigWithLayers(),_0x5cb1e5=resolveDefaultAppSource(_0x38735d),{defaultApp:_0x42daed}=_0x116853;let _0x5d42f8,_0x2f1e1b;switch(_0x544fb4){case _0x314f2d(0x169):_0x5d42f8=buildItemsFromLayer(_0x38735d['globalConfig'],_0x314f2d(0x169)),_0x2f1e1b=_0x38735d[_0x314f2d(0x164)];break;case'project':_0x5d42f8=buildItemsFromLayer(_0x38735d[_0x314f2d(0x16a)],_0x314f2d(0x159)),_0x2f1e1b=_0x38735d[_0x314f2d(0x158)];break;default:_0x5d42f8=buildMergedItems(_0x116853,_0x38735d);break;}enrichAppListItemsWithMergedSelection(_0x5d42f8,_0x438524[_0x314f2d(0x16b)]);if(_0x5d42f8[_0x314f2d(0x152)]===0x0){const _0x4aef45=_0x544fb4===_0x314f2d(0x153)?'':_0x314f2d(0x172)+_0x544fb4+_0x314f2d(0x160);return{'ok':!![],'data':[],'message':_0x314f2d(0x178)+_0x4aef45+_0x314f2d(0x173)+CLI_BIN_NAME+_0x314f2d(0x166)};}const _0x4bd4dd=_0x5d42f8[_0x314f2d(0x15f)](_0x20a88e=>_0x20a88e[_0x314f2d(0x156)]===!![]),_0x4788f1=_0x42daed??_0x4bd4dd?.[_0x314f2d(0x15e)]??null,_0x26ded2=_0x544fb4===_0x314f2d(0x153)?{'globalPath':_0x38735d['globalPath']??null,'projectPath':_0x38735d['projectPath']??null,'defaultApp':_0x4788f1,'defaultAppSource':_0x42daed!=null?_0x5cb1e5:null}:{'scope':_0x544fb4,'configPath':_0x2f1e1b??null};return{'ok':!![],'data':{'items':_0x5d42f8,'meta':_0x26ded2}};}export const appListDefinition={'service':a21_0x152792(0x16d),'command':'list','description':a21_0x152792(0x174),'risk':a21_0x152792(0x154),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a21_0x152792(0x169),'type':a21_0x152792(0x16c),'description':a21_0x152792(0x15b),'default':![]},{'name':a21_0x152792(0x159),'type':a21_0x152792(0x16c),'description':a21_0x152792(0x176),'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_0x13a419=a22_0x4dc0;(function(_0xd475e0,_0x2f7a42){const _0x5bfbeb=a22_0x4dc0,_0x23b3d0=_0xd475e0();while(!![]){try{const _0x2594c9=parseInt(_0x5bfbeb(0x205))/0x1+-parseInt(_0x5bfbeb(0x207))/0x2*(-parseInt(_0x5bfbeb(0x21a))/0x3)+-parseInt(_0x5bfbeb(0x201))/0x4*(-parseInt(_0x5bfbeb(0x20c))/0x5)+parseInt(_0x5bfbeb(0x1fb))/0x6+-parseInt(_0x5bfbeb(0x209))/0x7+-parseInt(_0x5bfbeb(0x208))/0x8*(parseInt(_0x5bfbeb(0x1fc))/0x9)+parseInt(_0x5bfbeb(0x211))/0xa*(-parseInt(_0x5bfbeb(0x1f8))/0xb);if(_0x2594c9===_0x2f7a42)break;else _0x23b3d0['push'](_0x23b3d0['shift']());}catch(_0x2c9e18){_0x23b3d0['push'](_0x23b3d0['shift']());}}}(a22_0xdd77,0x8716b));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{readRawConfigWithLayers}from'../../context.js';function a22_0xdd77(){const _0x416e9f=['high-risk-write','name','786408mGMOcZ','keys','defaultApp','projectConfig','Use\x20global\x20config\x20scope','globalConfig','9967441elVSUe','object','boolean','4340952WFqSyb','5364ehyLTw','App\x20\x22','app','App\x20profile\x20name\x20to\x20remove','Missing\x20app\x20name.','692ojuqsD','global','length','trim','975030nqByde','args','6QanmSl','544TFAbzT','1799350fOmKRt','validation','\x20app\x20remove\x20<name>\x20[--global]','31340nGFBrO','inherit','apps','remove','\x20Default\x20app\x20changed\x20to\x20\x22','30HxpYMJ','Removed\x20app\x20\x22','Usage:\x20','project','\x20config.','Remove\x20an\x20app\x20from\x20config','\x22\x20still\x20defined\x20in\x20'];a22_0xdd77=function(){return _0x416e9f;};return a22_0xdd77();}import{readConfig,writeConfig,scopeLabel,resolveAppScopeForWrite,appDefinedIn}from'../../commands/app/shared.js';async function validateArgs(_0x4fad13){const _0x2b8a80=a22_0x4dc0,_0x336326=_0x4fad13[_0x2b8a80(0x206)][0x0]?.[_0x2b8a80(0x204)]();if(!_0x336326)throw CliErrors[_0x2b8a80(0x20a)](_0x2b8a80(0x200),_0x2b8a80(0x213)+CLI_BIN_NAME+'\x20app\x20remove\x20<name>\x20[--global]');}function a22_0x4dc0(_0x4b971c,_0x366a30){_0x4b971c=_0x4b971c-0x1f3;const _0xdd7739=a22_0xdd77();let _0x4dc083=_0xdd7739[_0x4b971c];return _0x4dc083;}async function execute(_0x323d0f){const _0x5d4bdc=a22_0x4dc0,_0x27996e=_0x323d0f[_0x5d4bdc(0x206)][0x0]?.[_0x5d4bdc(0x204)]();if(!_0x27996e)throw CliErrors[_0x5d4bdc(0x20a)](_0x5d4bdc(0x200),_0x5d4bdc(0x213)+CLI_BIN_NAME+_0x5d4bdc(0x20b));const _0x57f03d=_0x323d0f['bool']('global'),{config:_0x22868c,layers:_0x2f1ea4}=readRawConfigWithLayers(),_0x19fd74=_0x22868c[_0x5d4bdc(0x20e)]??{};if(!_0x19fd74[_0x27996e])throw CliErrors[_0x5d4bdc(0x20a)](_0x5d4bdc(0x1fd)+_0x27996e+'\x22\x20not\x20found.');const _0x49e26f=_0x2f1ea4[_0x5d4bdc(0x1f7)]['apps']&&typeof _0x2f1ea4['globalConfig'][_0x5d4bdc(0x20e)]===_0x5d4bdc(0x1f9)?_0x2f1ea4['globalConfig'][_0x5d4bdc(0x20e)]:{},_0x2501eb=_0x2f1ea4[_0x5d4bdc(0x1f5)][_0x5d4bdc(0x20e)]&&typeof _0x2f1ea4[_0x5d4bdc(0x1f5)]['apps']===_0x5d4bdc(0x1f9)?_0x2f1ea4[_0x5d4bdc(0x1f5)][_0x5d4bdc(0x20e)]:{},_0x8a8251=appDefinedIn(_0x27996e,_0x49e26f,_0x2501eb,_0x2f1ea4['projectConfig'][_0x5d4bdc(0x20d)]===![]),_0x2618d9=resolveAppScopeForWrite(_0x27996e,_0x57f03d,_0x2f1ea4),_0x1fbf71={'global':_0x2618d9==='global'},_0x57abd0=readConfig(_0x1fbf71),_0x49bf6b=_0x57abd0[_0x5d4bdc(0x20e)];if(!_0x49bf6b||!_0x49bf6b[_0x27996e])throw CliErrors[_0x5d4bdc(0x20a)](_0x5d4bdc(0x1fd)+_0x27996e+'\x22\x20not\x20found.');delete _0x49bf6b[_0x27996e];let _0x4a9c02='';if(_0x57abd0[_0x5d4bdc(0x1f4)]===_0x27996e){const _0x2ef93e=Object[_0x5d4bdc(0x1f3)](_0x49bf6b);_0x57abd0['defaultApp']=_0x2ef93e['length']>0x0?_0x2ef93e[0x0]:undefined,_0x57abd0[_0x5d4bdc(0x1f4)]?_0x4a9c02=_0x5d4bdc(0x210)+_0x57abd0[_0x5d4bdc(0x1f4)]+'\x22.':delete _0x57abd0['defaultApp'];}Object[_0x5d4bdc(0x1f3)](_0x49bf6b)[_0x5d4bdc(0x203)]===0x0&&(delete _0x57abd0[_0x5d4bdc(0x20e)],delete _0x57abd0[_0x5d4bdc(0x1f4)]);writeConfig(_0x57abd0,_0x1fbf71);const _0x196b97=_0x8a8251==='both'?'\x20Note:\x20app\x20\x22'+_0x27996e+_0x5d4bdc(0x217)+(_0x2618d9===_0x5d4bdc(0x214)?_0x5d4bdc(0x202):_0x5d4bdc(0x214))+_0x5d4bdc(0x215):'';return{'ok':!![],'message':_0x5d4bdc(0x212)+_0x27996e+'\x22'+scopeLabel(_0x1fbf71)+'.'+_0x4a9c02+_0x196b97};}export const appRemoveDefinition={'service':a22_0x13a419(0x1fe),'command':a22_0x13a419(0x20f),'description':a22_0x13a419(0x216),'risk':a22_0x13a419(0x218),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a22_0x13a419(0x219),'description':a22_0x13a419(0x1ff),'required':!![]}],'flags':[{'name':a22_0x13a419(0x202),'type':a22_0x13a419(0x1fa),'description':a22_0x13a419(0x1f6),'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(_0x2aa9d4,_0x68a14a){const _0x5da2c3=a23_0x2b91,_0x2d7930=_0x2aa9d4();while(!![]){try{const _0x52fff2=parseInt(_0x5da2c3(0xf1))/0x1*(-parseInt(_0x5da2c3(0xf5))/0x2)+-parseInt(_0x5da2c3(0xfd))/0x3*(-parseInt(_0x5da2c3(0xfc))/0x4)+-parseInt(_0x5da2c3(0xe9))/0x5+parseInt(_0x5da2c3(0xe5))/0x6*(parseInt(_0x5da2c3(0xe3))/0x7)+-parseInt(_0x5da2c3(0xe6))/0x8*(parseInt(_0x5da2c3(0xe8))/0x9)+-parseInt(_0x5da2c3(0xed))/0xa+-parseInt(_0x5da2c3(0xe7))/0xb*(-parseInt(_0x5da2c3(0xec))/0xc);if(_0x52fff2===_0x68a14a)break;else _0x2d7930['push'](_0x2d7930['shift']());}catch(_0x28ccfc){_0x2d7930['push'](_0x2d7930['shift']());}}}(a23_0x1efb,0x5ce29));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';function a23_0x1efb(){const _0x51efa5=['currentApp','projectConfig','call','24620dEcUta','312RJbSML','name','hasOwnProperty','\x20(global)','prototype','keys','184289lEqbYm','isCurrent','114TXAkWq','248rvbzYv','8628851MsPiKE','185805CKOwLG','330545GZeLsG','both','length','12NCYrwj','2001310ZQVKQx','defaultApp','appCode','trim','106347bLReBi','appcode','object','apps','12zoqxDW','globalConfig','global','project'];a23_0x1efb=function(){return _0x51efa5;};return a23_0x1efb();}function a23_0x2b91(_0x5f30aa,_0x29768c){_0x5f30aa=_0x5f30aa-0xe0;const _0x1efb4c=a23_0x1efb();let _0x2b91bb=_0x1efb4c[_0x5f30aa];return _0x2b91bb;}export function enrichAppListItemsWithMergedSelection(_0x4bd5c5,_0x1a5960){const _0x4b6989=a23_0x2b91;if(!_0x1a5960)return;const _0x35a1fc=_0x1a5960[_0x4b6989(0xf4)]&&typeof _0x1a5960[_0x4b6989(0xf4)]==='object'?_0x1a5960[_0x4b6989(0xf4)]:{},_0x686c1f=Object[_0x4b6989(0xe2)](_0x35a1fc)[_0x4b6989(0xeb)]>0x0;for(const _0x6db6d2 of _0x4bd5c5){_0x6db6d2['isCurrent']=![];}const _0x1617bd=_0x1a5960[_0x4b6989(0xef)]!=null?String(_0x1a5960['appCode'])[_0x4b6989(0xf0)]():'';if(_0x686c1f){const _0x3b5211=_0x1a5960[_0x4b6989(0xf9)]??_0x1a5960['defaultApp'];if(_0x3b5211)for(const _0x274b5b of _0x4bd5c5){_0x274b5b['named']===!![]&&_0x274b5b[_0x4b6989(0xfe)]===_0x3b5211&&(_0x274b5b[_0x4b6989(0xe4)]=!![]);}for(const _0x5b3a48 of _0x4bd5c5){if(_0x5b3a48['named']!==![])continue;if(_0x1a5960[_0x4b6989(0xee)])continue;_0x1617bd&&String(_0x5b3a48[_0x4b6989(0xf2)]??'')['trim']()===_0x1617bd&&(_0x5b3a48[_0x4b6989(0xe4)]=!![]);}return;}if(!_0x1617bd)return;for(const _0x13af0a of _0x4bd5c5){String(_0x13af0a['appcode']??'')[_0x4b6989(0xf0)]()===_0x1617bd&&(_0x13af0a[_0x4b6989(0xe4)]=!![]);}}export function resolveAppScopeForWrite(_0x392be5,_0x58a051,_0x1ce3cd){const _0x5caf26=a23_0x2b91;if(_0x58a051)return _0x5caf26(0xf7);const _0x3f1191=_0x1ce3cd['projectConfig'][_0x5caf26(0xf4)]&&typeof _0x1ce3cd['projectConfig'][_0x5caf26(0xf4)]===_0x5caf26(0xf3)?_0x1ce3cd[_0x5caf26(0xfa)][_0x5caf26(0xf4)]:{},_0x396240=_0x1ce3cd[_0x5caf26(0xf6)][_0x5caf26(0xf4)]&&typeof _0x1ce3cd[_0x5caf26(0xf6)]['apps']===_0x5caf26(0xf3)?_0x1ce3cd[_0x5caf26(0xf6)][_0x5caf26(0xf4)]:{};if(Object[_0x5caf26(0xe1)][_0x5caf26(0xff)]['call'](_0x3f1191,_0x392be5))return _0x5caf26(0xf8);if(Object[_0x5caf26(0xe1)][_0x5caf26(0xff)][_0x5caf26(0xfb)](_0x396240,_0x392be5))return _0x5caf26(0xf7);return _0x5caf26(0xf8);}export function appDefinedIn(_0x527be7,_0x83ccc2,_0x3a97b6,_0x57e4af){const _0x573781=a23_0x2b91;if(_0x57e4af)return Object[_0x573781(0xe1)][_0x573781(0xff)][_0x573781(0xfb)](_0x3a97b6,_0x527be7)?_0x573781(0xf8):'global';const _0x35c7ee=Object['prototype'][_0x573781(0xff)][_0x573781(0xfb)](_0x83ccc2,_0x527be7),_0x3e9f65=Object[_0x573781(0xe1)][_0x573781(0xff)][_0x573781(0xfb)](_0x3a97b6,_0x527be7);if(_0x35c7ee&&_0x3e9f65)return _0x573781(0xea);if(_0x3e9f65)return'project';return'global';}export function resolveDefaultAppSource(_0x4c40ff){const _0x57ceaa=a23_0x2b91,_0x114654=_0x4c40ff[_0x57ceaa(0xfa)][_0x57ceaa(0xf4)]&&typeof _0x4c40ff[_0x57ceaa(0xfa)][_0x57ceaa(0xf4)]==='object'?_0x4c40ff[_0x57ceaa(0xfa)][_0x57ceaa(0xf4)]:{};if(_0x57ceaa(0xee)in _0x4c40ff['projectConfig'])return _0x57ceaa(0xf8);if(Object[_0x57ceaa(0xe2)](_0x114654)[_0x57ceaa(0xeb)]>0x0)return _0x57ceaa(0xf8);if(_0x4c40ff[_0x57ceaa(0xfa)]['inherit']===![])return null;if(_0x4c40ff[_0x57ceaa(0xf6)][_0x57ceaa(0xee)])return'global';return null;}export function getConfigPath(_0x154483={}){const _0x126d7e=a23_0x2b91,_0x1293a9=_0x154483[_0x126d7e(0xf7)]?_0x126d7e(0xf7):_0x126d7e(0xf8);return resolveWriteConfigPath(_0x1293a9);}export function readConfig(_0x541529={}){return readConfigFile(getConfigPath(_0x541529));}export function writeConfig(_0x23a00e,_0x19cc4b={}){writeConfigFile(getConfigPath(_0x19cc4b),_0x23a00e);}export function scopeLabel(_0x5b1687){const _0x589e68=a23_0x2b91;return _0x5b1687['global']?_0x589e68(0xe0):'';}
@@ -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
+ const a24_0x27bb3b=a24_0x23be;function a24_0x23be(_0x406f4a,_0x1939da){_0x406f4a=_0x406f4a-0x1c3;const _0x2fb529=a24_0x2fb5();let _0x23be7e=_0x2fb529[_0x406f4a];return _0x23be7e;}(function(_0x17063d,_0x2e4031){const _0x1d5cfe=a24_0x23be,_0xded79a=_0x17063d();while(!![]){try{const _0x1fd780=parseInt(_0x1d5cfe(0x1d4))/0x1*(-parseInt(_0x1d5cfe(0x1d6))/0x2)+-parseInt(_0x1d5cfe(0x1dc))/0x3+parseInt(_0x1d5cfe(0x1ca))/0x4*(-parseInt(_0x1d5cfe(0x1d5))/0x5)+-parseInt(_0x1d5cfe(0x1c3))/0x6*(-parseInt(_0x1d5cfe(0x1c5))/0x7)+parseInt(_0x1d5cfe(0x1e5))/0x8+-parseInt(_0x1d5cfe(0x1d0))/0x9*(-parseInt(_0x1d5cfe(0x1e0))/0xa)+parseInt(_0x1d5cfe(0x1c6))/0xb;if(_0x1fd780===_0x2e4031)break;else _0xded79a['push'](_0xded79a['shift']());}catch(_0x1c1c6f){_0xded79a['push'](_0xded79a['shift']());}}}(a24_0x2fb5,0xc499e));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(_0x5dd876){const _0x4754e3=a24_0x23be,_0x21112c=_0x5dd876[_0x4754e3(0x1ea)][0x0]?.[_0x4754e3(0x1de)]();if(!_0x21112c)throw CliErrors[_0x4754e3(0x1e2)]('Missing\x20app\x20name.','Usage:\x20'+CLI_BIN_NAME+_0x4754e3(0x1e4));}function a24_0x2fb5(){const _0x865817=['\x20app\x20add\x20','1974213LLLStl','\x0aNote:\x20\x22','Missing\x20app\x20name.','keys','7903JkxLGA','10HKcXFR','244QCTIQR','App\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.','projectPath','appcode','\x22\x20(appcode:\x20','3731262AGwSiF','globalConfig','trim','name','20uUSaoq','object','validation','apps','\x20app\x20use\x20<name>\x20[--global]','9720152tViqQe','use','\x20--appcode\x20<code>`\x20first.','length','\x22\x20not\x20found.','args','call','6dhiNvp','defaultApp','4509638dtnRxu','11227447fJxsHQ','write','bool','global','610892viKIsi','Default\x20app\x20set\x20to\x20\x22','app','Available:\x20','Use\x20`'];a24_0x2fb5=function(){return _0x865817;};return a24_0x2fb5();}async function execute(_0x541062){const _0x15adb4=a24_0x23be,_0xb9d107=_0x541062[_0x15adb4(0x1ea)][0x0]?.[_0x15adb4(0x1de)]();if(!_0xb9d107)throw CliErrors[_0x15adb4(0x1e2)](_0x15adb4(0x1d2),'Usage:\x20'+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');const _0x57f49d=_0x541062[_0x15adb4(0x1c8)](_0x15adb4(0x1c9)),{config:_0x40603d,layers:_0x237e70}=readRawConfigWithLayers(),_0x53d350=_0x40603d[_0x15adb4(0x1e3)]??{},_0x174287=_0x237e70[_0x15adb4(0x1dd)]['apps']&&typeof _0x237e70[_0x15adb4(0x1dd)][_0x15adb4(0x1e3)]===_0x15adb4(0x1e1)?_0x237e70[_0x15adb4(0x1dd)][_0x15adb4(0x1e3)]:{},_0x3f8cd3={..._0x174287,..._0x53d350};if(!_0x3f8cd3[_0xb9d107]){const _0x48ba39=Object[_0x15adb4(0x1d3)](_0x3f8cd3),_0x2c5c99=_0x48ba39[_0x15adb4(0x1e8)]===0x0?_0x15adb4(0x1ce)+CLI_BIN_NAME+_0x15adb4(0x1cf)+_0xb9d107+_0x15adb4(0x1e7):_0x15adb4(0x1cd)+_0x48ba39['join'](',\x20');throw CliErrors[_0x15adb4(0x1e2)](_0x15adb4(0x1d7)+_0xb9d107+_0x15adb4(0x1e9),_0x2c5c99);}let _0x20e25e,_0x2f2d2a='';if(_0x57f49d)_0x20e25e={'global':!![]};else{const _0x5c4f4f=isInProject()&&!!_0x237e70[_0x15adb4(0x1d9)];_0x20e25e={'global':!_0x5c4f4f};}const _0x4670b5=readConfig(_0x20e25e);_0x4670b5[_0x15adb4(0x1c4)]=_0xb9d107;if(!_0x20e25e['global']){const _0xc584a=_0x4670b5[_0x15adb4(0x1e3)]&&typeof _0x4670b5['apps']===_0x15adb4(0x1e1)?_0x4670b5[_0x15adb4(0x1e3)]:{};!Object['prototype']['hasOwnProperty'][_0x15adb4(0x1eb)](_0xc584a,_0xb9d107)&&(_0x4670b5[_0x15adb4(0x1e3)]={..._0xc584a,[_0xb9d107]:_0x3f8cd3[_0xb9d107]},_0x2f2d2a=_0x15adb4(0x1d1)+_0xb9d107+_0x15adb4(0x1d8));}return writeConfig(_0x4670b5,_0x20e25e),{'ok':!![],'message':_0x15adb4(0x1cb)+_0xb9d107+_0x15adb4(0x1db)+_0x3f8cd3[_0xb9d107][_0x15adb4(0x1da)]+')'+scopeLabel(_0x20e25e)+_0x2f2d2a};}export const appUseDefinition={'service':a24_0x27bb3b(0x1cc),'command':a24_0x27bb3b(0x1e6),'description':'Switch\x20the\x20default\x20app','risk':a24_0x27bb3b(0x1c7),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a24_0x27bb3b(0x1df),'description':'App\x20profile\x20name\x20to\x20activate','required':!![]}],'flags':[{'name':a24_0x27bb3b(0x1c9),'type':'boolean','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_0x5456bc=a25_0x30d8;function a25_0x508b(){const _0x11290d=['boolean','log','yes','12kGzEID','login','Skip\x20login\x20confirmation\x20and\x20start\x20browser\x20auth\x20immediately','read','707AvlejE','!\x20Not\x20logged\x20in','nonInteractive','495589PwlMVa','auth','logout','✓\x20Logged\x20out','../../auth/auth-server-ui.js','765IcVsJX','4146OkjOXe','bool','49360LmhEIK','1977765ftooKt','2488680xiyPUi','2AmEyYv','2367TPXgaF','Clear\x20login\x20session','16142005XFVYCF','196CewHNE'];a25_0x508b=function(){return _0x11290d;};return a25_0x508b();}(function(_0xc95c3a,_0x20451e){const _0x44042f=a25_0x30d8,_0x26e993=_0xc95c3a();while(!![]){try{const _0x2bd332=parseInt(_0x44042f(0x17c))/0x1*(parseInt(_0x44042f(0x16d))/0x2)+parseInt(_0x44042f(0x16e))/0x3*(parseInt(_0x44042f(0x171))/0x4)+parseInt(_0x44042f(0x16b))/0x5+-parseInt(_0x44042f(0x168))/0x6*(-parseInt(_0x44042f(0x179))/0x7)+parseInt(_0x44042f(0x16c))/0x8+parseInt(_0x44042f(0x167))/0x9*(parseInt(_0x44042f(0x16a))/0xa)+-parseInt(_0x44042f(0x170))/0xb*(parseInt(_0x44042f(0x175))/0xc);if(_0x2bd332===_0x20451e)break;else _0x26e993['push'](_0x26e993['shift']());}catch(_0x58e2e6){_0x26e993['push'](_0x26e993['shift']());}}}(a25_0x508b,0x40280));import{unlinkSync,existsSync}from'node:fs';function a25_0x30d8(_0x162228,_0x3a3150){_0x162228=_0x162228-0x163;const _0x508b49=a25_0x508b();let _0x30d881=_0x508b49[_0x162228];return _0x30d881;}import{cookieFile}from'../../auth/constant.js';export const authDefinitions=[{'service':a25_0x5456bc(0x163),'command':a25_0x5456bc(0x176),'description':'Login\x20via\x20browser','risk':a25_0x5456bc(0x178),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a25_0x5456bc(0x174),'type':a25_0x5456bc(0x172),'description':a25_0x5456bc(0x177),'default':![]}],async 'execute'(_0x261df6){const _0x25b0bf=a25_0x5456bc,{runAuthServer:_0x30592d}=await import(_0x25b0bf(0x166));return await _0x30592d({'autoYes':_0x261df6[_0x25b0bf(0x169)](_0x25b0bf(0x174)),'nonInteractive':_0x261df6[_0x25b0bf(0x17b)]}),{'ok':!![]};}},{'service':'auth','command':a25_0x5456bc(0x164),'description':a25_0x5456bc(0x16f),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x12607f){const _0x49d22a=a25_0x5456bc;return existsSync(cookieFile)?(unlinkSync(cookieFile),console[_0x49d22a(0x173)](_0x49d22a(0x165))):console[_0x49d22a(0x173)](_0x49d22a(0x17a)),{'ok':!![]};}}];
@@ -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
+ function a26_0x4445(){const _0x3ad83c=['Available:\x20','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','datasetcode','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','string','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','\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','utf8','\x22\x20not\x20found.\x20','trim','Select\x20operation\x20type:','.js','4802968KTGkND','before','Select\x20dataset:','Created\x20','entries','File\x20already\x20exists:\x20','Alias\x20\x22','description','Operation\x20type\x20(HOOK\x20only)','nonInteractive','No\x20datasets\x20found\x20for\x20this\x20app.','keys','validation','str','HOOK','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','4371669KcuhCp','operationType','No\x20operation\x20types\x20found\x20for\x20dataset\x20','write','length','569JUfPTd','apiDir','appCode','36561120kRXces','\x0a\x20*\x20[脚本名称]\x20','\x0a\x20*\x20[接口路径]\x20POST\x20/api/endpoint/{appCode}/{scriptName}\x0a\x20*\x20[当前示例]\x20POST\x20/api/endpoint/','27lGvyNn','HOOK\x20requires\x20alias/operation/node\x20options.','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','ENDPOINT','find','create','isInteger','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','close','scriptsRootDir','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','Available\x20aliases:\x20','\x0a\x20*\x20[触发节点]\x20','stderr','/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','32QBWeBK','Invalid\x20function\x20name\x20\x22','No\x20DB\x20table\x20datasets\x20found\x20for\x20this\x20app.\x20METADATA\x20datasets\x20cannot\x20be\x20used\x20for\x20BFF\x20HOOK\x20development\x20because\x20the\x20workflow\x20depends\x20on\x20SQL\x20execution.','\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','Trigger\x20node\x20(HOOK\x20only)','\x22.\x20','\x20api\x20pull`\x20to\x20refresh.','bff','includes','739735wjBxxS','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','datasetCode','parseInt','12264434zGRCJi','functionNode','join','function-node','question','COMMON','Invalid\x20dataset\x20selection.','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','stdin','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','alias','Function\x20name\x20(valid\x20JS\x20identifier)','after','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','code','map','type','name','2762ZHlWzZ','operation-type','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','4866222WFHUQx'];a26_0x4445=function(){return _0x3ad83c;};return a26_0x4445();}const a26_0x58be03=a26_0x33e6;(function(_0x33089c,_0x1e8f9c){const _0x54463e=a26_0x33e6,_0x2594de=_0x33089c();while(!![]){try{const _0x4a2624=parseInt(_0x54463e(0x21d))/0x1*(-parseInt(_0x54463e(0x1f7))/0x2)+parseInt(_0x54463e(0x218))/0x3+-parseInt(_0x54463e(0x1d8))/0x4*(-parseInt(_0x54463e(0x1e1))/0x5)+-parseInt(_0x54463e(0x1fa))/0x6+parseInt(_0x54463e(0x1e5))/0x7+-parseInt(_0x54463e(0x208))/0x8*(-parseInt(_0x54463e(0x223))/0x9)+-parseInt(_0x54463e(0x220))/0xa;if(_0x4a2624===_0x1e8f9c)break;else _0x2594de['push'](_0x2594de['shift']());}catch(_0x17a7e1){_0x2594de['push'](_0x2594de['shift']());}}}(a26_0x4445,0xe5bec));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';function a26_0x33e6(_0x34ed94,_0x2365f6){_0x34ed94=_0x34ed94-0x1d0;const _0x44457b=a26_0x4445();let _0x33e6d2=_0x44457b[_0x34ed94];return _0x33e6d2;}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_0x58be03(0x1df),'command':a26_0x58be03(0x228),'description':'Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','risk':a26_0x58be03(0x21b),'flags':[{'name':'type','type':a26_0x58be03(0x200),'required':!![],'enum':[a26_0x58be03(0x1ea),'ENDPOINT','HOOK'],'description':'Script\x20type'},{'name':a26_0x58be03(0x1f6),'type':a26_0x58be03(0x200),'required':!![],'description':a26_0x58be03(0x1f0)},{'name':a26_0x58be03(0x20f),'type':a26_0x58be03(0x200),'description':'Script\x20description'},{'name':'alias','type':'string','description':'Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)'},{'name':a26_0x58be03(0x1fe),'type':a26_0x58be03(0x200),'description':a26_0x58be03(0x1f9)},{'name':a26_0x58be03(0x1f8),'type':a26_0x58be03(0x200),'description':a26_0x58be03(0x210)},{'name':a26_0x58be03(0x1e8),'type':'string','description':a26_0x58be03(0x1dc),'enum':['before',a26_0x58be03(0x1f1)]}],async 'validate'(_0x3e277c){const _0x537dea=a26_0x58be03,_0x3f24a8=_0x3e277c['str'](_0x537dea(0x1f6));if(!isValidBffFunctionName(_0x3f24a8))throw CliErrors[_0x537dea(0x214)](_0x537dea(0x1d9)+_0x3f24a8+_0x537dea(0x1f2));},async 'execute'(_0x3cb47e){const _0xbc04a8=a26_0x58be03,_0xd9b4b7=loadBffProjectConfig(_0x3cb47e[_0xbc04a8(0x21f)]),_0x412718=_0x3cb47e[_0xbc04a8(0x215)](_0xbc04a8(0x1f5)),_0x128f3d=_0x3cb47e[_0xbc04a8(0x215)](_0xbc04a8(0x1f6)),_0x15c3dd=_0x3cb47e[_0xbc04a8(0x215)](_0xbc04a8(0x20f))||undefined,_0x2c1a5d=_0x412718==='HOOK'?await resolveHookOptions(_0xd9b4b7,_0x3cb47e):undefined,_0x4b20ee=buildFilePath(_0xd9b4b7,_0x412718,_0x128f3d,_0x2c1a5d);if(await fileExists(_0x4b20ee))throw CliErrors['validation'](_0xbc04a8(0x20d)+_0x4b20ee);await mkdir(dirname(_0x4b20ee),{'recursive':!![]});const _0x2c9e23=generateTemplate(_0x412718,_0x128f3d,_0x3cb47e[_0xbc04a8(0x21f)],_0x15c3dd,_0x2c1a5d);await writeFile(_0x4b20ee,_0x2c9e23,_0xbc04a8(0x203));const _0x378b88={'type':_0x412718,'name':_0x128f3d,'path':_0x4b20ee};if(_0x15c3dd)_0x378b88[_0xbc04a8(0x20f)]=_0x15c3dd;if(_0x2c1a5d){if(_0x2c1a5d[_0xbc04a8(0x1ef)])_0x378b88[_0xbc04a8(0x1ef)]=_0x2c1a5d[_0xbc04a8(0x1ef)];_0x378b88[_0xbc04a8(0x1e3)]=_0x2c1a5d[_0xbc04a8(0x1e3)],_0x378b88[_0xbc04a8(0x219)]=_0x2c1a5d['operationType'],_0x378b88[_0xbc04a8(0x1e6)]=_0x2c1a5d[_0xbc04a8(0x1e6)];}return{'ok':!![],'data':_0x378b88,'message':_0xbc04a8(0x20b)+_0x412718+'\x20function:\x20'+_0x128f3d};}};async function resolveHookOptions(_0x442824,_0x506898){const _0x1d426d=a26_0x58be03,_0x5f153f=loadAliasMap(_0x506898[_0x1d426d(0x21e)],undefined,resolveApiFilePath(_0x506898['apiDir'],_0x506898[_0x1d426d(0x21f)])),_0x3d9001=_0x5f153f[_0x1d426d(0x21c)]>0x0;let _0x368e4c,_0x1a540a,_0x18db8e;const _0x29236d=_0x506898[_0x1d426d(0x215)](_0x1d426d(0x1ef)),_0x90c470=_0x506898[_0x1d426d(0x215)](_0x1d426d(0x1fe));if(_0x29236d){const _0x549148=resolveAlias(_0x506898[_0x1d426d(0x21e)],_0x29236d,undefined,resolveApiFilePath(_0x506898[_0x1d426d(0x21e)],_0x506898[_0x1d426d(0x21f)]));if(!_0x549148){const _0x32fee0=_0x3d9001?_0x1d426d(0x1d4)+_0x5f153f[_0x1d426d(0x1f4)](_0x4e3a9d=>_0x4e3a9d['alias'])[_0x1d426d(0x1e7)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+_0x1d426d(0x1e2);throw CliErrors[_0x1d426d(0x214)](_0x1d426d(0x20e)+_0x29236d+_0x1d426d(0x204)+_0x32fee0);}_0x368e4c=_0x29236d,_0x1a540a=_0x549148;}else{if(_0x90c470){_0x1a540a=_0x90c470;const _0x88d340=_0x5f153f[_0x1d426d(0x227)](_0x248760=>_0x248760[_0x1d426d(0x1e3)]===_0x90c470);_0x368e4c=_0x88d340?.[_0x1d426d(0x1ef)];}else{if(_0x506898[_0x1d426d(0x211)])throw CliErrors[_0x1d426d(0x214)](_0x1d426d(0x1ff));else{if(_0x3d9001){const _0x3f9082=_0x5f153f['map'](_0x12884f=>_0x12884f[_0x1d426d(0x1ef)]+'\x20('+_0x12884f['tableName']+')'),_0x526caa=await promptSelect(_0x1d426d(0x20a),_0x3f9082),_0x4a4914=_0x5f153f[_0x526caa];if(!_0x4a4914)throw CliErrors[_0x1d426d(0x214)](_0x1d426d(0x1eb));_0x368e4c=_0x4a4914[_0x1d426d(0x1ef)],_0x1a540a=_0x4a4914[_0x1d426d(0x1e3)];}else{const _0x155d36=await listDatasets(_0x506898[_0x1d426d(0x21f)]),_0x32867e=filterDbBackedDatasets(_0x155d36);if(_0x32867e[_0x1d426d(0x21c)]===0x0)throw CliErrors[_0x1d426d(0x214)](_0x155d36[_0x1d426d(0x21c)]===0x0?_0x1d426d(0x212):_0x1d426d(0x1da));const _0x347e7c=_0x32867e['map'](_0x542421=>_0x542421['name']+'\x20('+_0x542421[_0x1d426d(0x1f3)]+')'),_0x2bb3ec=await promptSelect(_0x1d426d(0x20a),_0x347e7c),_0xcf29f5=_0x32867e[_0x2bb3ec];if(!_0xcf29f5)throw CliErrors[_0x1d426d(0x214)](_0x1d426d(0x1eb));_0x1a540a=_0xcf29f5[_0x1d426d(0x1f3)],_0x368e4c=undefined;}}}}const _0x1552ba=await listDatasets(_0x506898[_0x1d426d(0x21f)]),_0x14ce06=_0x1552ba[_0x1d426d(0x227)](_0x1593da=>_0x1593da[_0x1d426d(0x1f3)]===_0x1a540a);if(!_0x14ce06)throw CliErrors[_0x1d426d(0x214)]('Dataset\x20not\x20found\x20for\x20code\x20\x22'+_0x1a540a+_0x1d426d(0x1dd)+(_0x368e4c?_0x1d426d(0x201)+CLI_BIN_NAME+_0x1d426d(0x1de):''));assertDatasetSupportsLocalDevelopment(_0x14ce06,'BFF\x20HOOK'),_0x18db8e=_0x14ce06['id'];const _0x5d1e6d=_0x368e4c??_0x1a540a,_0x282c98=await listBffDatasetOperations(_0x506898[_0x1d426d(0x21f)],_0x18db8e),_0x55a1c5=_0x282c98?Object[_0x1d426d(0x213)](_0x282c98):[];if(_0x55a1c5[_0x1d426d(0x21c)]===0x0)throw CliErrors[_0x1d426d(0x214)](_0x1d426d(0x21a)+_0x5d1e6d+'.');let _0x5deaa1;const _0x50360e=_0x506898[_0x1d426d(0x215)](_0x1d426d(0x1f8));if(_0x50360e){if(!_0x55a1c5[_0x1d426d(0x1e0)](_0x50360e))throw CliErrors[_0x1d426d(0x214)]('Operation\x20type\x20\x22'+_0x50360e+'\x22\x20not\x20found\x20for\x20dataset\x20'+_0x5d1e6d+'.\x20'+(_0x1d426d(0x1fb)+_0x55a1c5['join'](',\x20')));_0x5deaa1=_0x50360e;}else{if(_0x506898[_0x1d426d(0x211)])throw CliErrors[_0x1d426d(0x214)](_0x1d426d(0x1fd));const _0x5e0b5a=await promptSelect(_0x1d426d(0x206),_0x55a1c5);_0x5deaa1=_0x55a1c5[_0x5e0b5a]??_0x55a1c5[0x0];}let _0x2709b8=normalizeHookFunctionNode(_0x506898[_0x1d426d(0x215)](_0x1d426d(0x1e8)));if(!_0x2709b8){if(_0x506898[_0x1d426d(0x215)](_0x1d426d(0x1e8)))throw CliErrors[_0x1d426d(0x214)]('--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.');if(_0x506898[_0x1d426d(0x211)])throw CliErrors['validation'](_0x1d426d(0x1d0));const _0x5d5220=await promptSelect('Select\x20trigger\x20node:',['before',_0x1d426d(0x1f1)]);_0x2709b8=[_0x1d426d(0x209),_0x1d426d(0x1f1)][_0x5d5220]??_0x1d426d(0x209);}return{'alias':_0x368e4c,'datasetCode':_0x1a540a,'datasetId':_0x18db8e,'operationType':_0x5deaa1,'functionNode':_0x2709b8};}async function promptSelect(_0x453bb0,_0x223854){const _0x3a0abd=a26_0x58be03;if(_0x223854[_0x3a0abd(0x21c)]===0x1)return 0x0;for(const [_0x507be9,_0x3e9162]of _0x223854[_0x3a0abd(0x20c)]()){process['stderr'][_0x3a0abd(0x21b)]('\x20\x20'+(_0x507be9+0x1)+'.\x20'+_0x3e9162+'\x0a');}const _0x5c7832=createInterface({'input':process[_0x3a0abd(0x1ed)],'output':process[_0x3a0abd(0x1d6)]});while(!![]){const _0x204e57=await new Promise(_0x12c3b3=>{const _0x5eacd9=_0x3a0abd;_0x5c7832[_0x5eacd9(0x1e9)](_0x453bb0+'\x20',_0x12c3b3);}),_0x3abe3b=Number[_0x3a0abd(0x1e4)](_0x204e57[_0x3a0abd(0x205)](),0xa);if(Number[_0x3a0abd(0x229)](_0x3abe3b)&&_0x3abe3b>=0x1&&_0x3abe3b<=_0x223854[_0x3a0abd(0x21c)])return _0x5c7832[_0x3a0abd(0x1d1)](),_0x3abe3b-0x1;process['stderr'][_0x3a0abd(0x21b)]('\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20'+_0x223854[_0x3a0abd(0x21c)]+'.\x0a');}}function buildFilePath(_0x4b4615,_0x49b169,_0x56045c,_0x56f6f7){const _0x2e01ed=a26_0x58be03;if(_0x49b169===_0x2e01ed(0x216)){if(!_0x56f6f7)throw CliErrors[_0x2e01ed(0x214)](_0x2e01ed(0x224));const _0x30321e=_0x56f6f7[_0x2e01ed(0x1ef)]??_0x56f6f7[_0x2e01ed(0x1e3)];return join(_0x4b4615[_0x2e01ed(0x1d2)],_0x2e01ed(0x216),_0x30321e,_0x56f6f7[_0x2e01ed(0x219)],_0x56f6f7[_0x2e01ed(0x1e6)],_0x56045c+'.js');}return join(_0x4b4615['scriptsRootDir'],_0x49b169,_0x56045c+_0x2e01ed(0x207));}export function generateTemplate(_0x379554,_0x45469c,_0x4641f6,_0x31d3ab,_0x290f58){const _0x4f24ba=a26_0x58be03,_0x1c7597=_0x31d3ab?.[_0x4f24ba(0x205)]()||'TODO:\x20add\x20script\x20description';if(_0x379554===_0x4f24ba(0x1ea))return _0x4f24ba(0x1d7)+_0x1c7597+_0x4f24ba(0x221)+_0x45469c+_0x4f24ba(0x1ee)+_0x45469c+'.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'+_0x45469c+_0x4f24ba(0x225);if(_0x379554===_0x4f24ba(0x226))return _0x4f24ba(0x1ec)+_0x1c7597+_0x4f24ba(0x222)+_0x4641f6+'/'+_0x45469c+_0x4f24ba(0x202)+_0x45469c+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';if(!_0x290f58)throw CliErrors['validation'](_0x4f24ba(0x1fc));return _0x4f24ba(0x1d3)+_0x1c7597+_0x4f24ba(0x217)+_0x4641f6+'/'+_0x290f58[_0x4f24ba(0x1e3)]+'/'+_0x290f58[_0x4f24ba(0x219)]+_0x4f24ba(0x1d5)+_0x290f58[_0x4f24ba(0x1e6)]+_0x4f24ba(0x1db)+_0x45469c+_0x4f24ba(0x225);}
@@ -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_0x15d1a6=a27_0x50eb;(function(_0x270b40,_0x4c4696){const _0x59cd18=a27_0x50eb,_0x2bdab5=_0x270b40();while(!![]){try{const _0x4bdef9=-parseInt(_0x59cd18(0x16d))/0x1*(-parseInt(_0x59cd18(0x160))/0x2)+parseInt(_0x59cd18(0x177))/0x3+-parseInt(_0x59cd18(0x156))/0x4*(parseInt(_0x59cd18(0x159))/0x5)+-parseInt(_0x59cd18(0x17b))/0x6*(parseInt(_0x59cd18(0x14b))/0x7)+-parseInt(_0x59cd18(0x179))/0x8*(-parseInt(_0x59cd18(0x167))/0x9)+parseInt(_0x59cd18(0x14e))/0xa*(-parseInt(_0x59cd18(0x175))/0xb)+-parseInt(_0x59cd18(0x155))/0xc;if(_0x4bdef9===_0x4c4696)break;else _0x2bdab5['push'](_0x2bdab5['shift']());}catch(_0x150b7f){_0x2bdab5['push'](_0x2bdab5['shift']());}}}(a27_0x270e,0x2c004));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_0x15d1a6(0x150),'command':'delete','description':a27_0x15d1a6(0x151),'risk':a27_0x15d1a6(0x146),'flags':[{'name':'target','type':a27_0x15d1a6(0x158),'required':!![],'description':a27_0x15d1a6(0x14f)}],async 'validate'(_0x55f2d9){const _0x2ab5bb=a27_0x15d1a6,_0x4b409e=loadBffProjectConfig(_0x55f2d9[_0x2ab5bb(0x171)]),_0x4a53fd=await readBffLockFile(_0x4b409e['lockFilePath']);if(!_0x4a53fd)throw CliErrors[_0x2ab5bb(0x172)](_0x2ab5bb(0x169));},async 'dryRun'(_0x178750){const _0x14a620=a27_0x15d1a6,_0x2b965b=loadBffProjectConfig(_0x178750[_0x14a620(0x171)]),_0x26c1a6=await readBffLockFile(_0x2b965b[_0x14a620(0x14a)]);if(!_0x26c1a6)throw CliErrors[_0x14a620(0x172)](_0x14a620(0x148));const {appLock:_0x55ddb4}=ensureLockScope(_0x26c1a6,_0x178750[_0x14a620(0x171)],_0x2b965b['scriptsRoot'],'delete'),_0x2fd4b7=_0x178750[_0x14a620(0x157)]('target'),_0x2d36cf=Object[_0x14a620(0x173)](_0x55ddb4[_0x14a620(0x15e)]),_0x4137b5=resolveDeleteTarget(_0x2fd4b7,_0x2d36cf),_0x506441=_0x55ddb4[_0x14a620(0x15e)][_0x4137b5];if(!_0x506441)throw CliErrors[_0x14a620(0x172)](_0x14a620(0x149)+_0x4137b5+'\x22.');const _0x29369e=resolveLocalFilePathFromLockKey(_0x2b965b,_0x4137b5),_0x155772=relative(_0x2b965b[_0x14a620(0x178)],_0x29369e),_0x1b1965=join(_0x2b965b[_0x14a620(0x176)],_0x14a620(0x16b),_0x155772);return{'method':'POST','url':_0x14a620(0x163),'body':{'appCode':_0x178750[_0x14a620(0x171)],'target':_0x4137b5,'remoteId':_0x506441[_0x14a620(0x165)],'localFilePath':_0x29369e,'trashedPath':_0x1b1965},'description':'Would\x20delete\x20'+_0x4137b5+_0x14a620(0x152)};},async 'execute'(_0x3ae805){const _0x1cf444=a27_0x15d1a6,_0x2f41d6=loadBffProjectConfig(_0x3ae805[_0x1cf444(0x171)]),_0x1623f5=await readBffLockFile(_0x2f41d6[_0x1cf444(0x14a)]);if(!_0x1623f5)throw CliErrors[_0x1cf444(0x172)]('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x2e0da7,appLock:_0x24a55e}=ensureLockScope(_0x1623f5,_0x3ae805[_0x1cf444(0x171)],_0x2f41d6[_0x1cf444(0x15f)],_0x1cf444(0x15d)),_0x2a2ad3=JSON['parse'](JSON[_0x1cf444(0x14d)](_0x2e0da7)),_0xf04f3c=_0x2a2ad3[_0x1cf444(0x154)][_0x3ae805[_0x1cf444(0x171)]];if(!_0xf04f3c)throw new Error(_0x1cf444(0x153)+_0x3ae805['appCode']+_0x1cf444(0x161));const _0x6e5719=_0x3ae805[_0x1cf444(0x157)](_0x1cf444(0x16e)),_0x4e5929=Object[_0x1cf444(0x173)](_0xf04f3c[_0x1cf444(0x15e)]),_0x2cf1f6=resolveDeleteTarget(_0x6e5719,_0x4e5929),_0x52cff6=_0xf04f3c[_0x1cf444(0x15e)][_0x2cf1f6];if(!_0x52cff6)throw CliErrors['validation'](_0x1cf444(0x149)+_0x2cf1f6+'\x22.');await deleteBffScript(_0x52cff6[_0x1cf444(0x165)]),delete _0xf04f3c[_0x1cf444(0x15e)][_0x2cf1f6],_0xf04f3c[_0x1cf444(0x17c)]=new Date()[_0x1cf444(0x166)](),await writeBffLockFile(_0x2f41d6['lockFilePath'],_0x2a2ad3);const _0x4a9144=resolveLocalFilePathFromLockKey(_0x2f41d6,_0x2cf1f6);let _0x54926d;await fileExists(_0x4a9144)&&(_0x54926d=await moveToTrash(_0x2f41d6[_0x1cf444(0x178)],_0x2f41d6[_0x1cf444(0x176)],_0x4a9144),await cleanupEmptyDirectories(dirname(_0x4a9144),_0x2f41d6[_0x1cf444(0x16f)]));await waitForDeleteSettlement(_0x2f41d6['lockFilePath'],_0x3ae805[_0x1cf444(0x171)],_0x2cf1f6,_0x4a9144),await sleep(0x96);const _0x38e825={'deleted':_0x2cf1f6,'remoteId':_0x52cff6[_0x1cf444(0x165)]};if(_0x54926d)_0x38e825[_0x1cf444(0x174)]=_0x54926d;return{'ok':!![],'data':_0x38e825,'message':_0x1cf444(0x170)+_0x2cf1f6+(_0x54926d?_0x1cf444(0x162):'')};}};function a27_0x270e(){const _0x52ee07=['map','stringify','10RaRWKS','Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name','bff','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','Lock\x20scope\x20for\x20app\x20\x22','apps','2156676nJaAvj','13512TVsZem','str','string','40YlTJpC','Function\x20not\x20found:\x20','replace','length','delete','functions','scriptsRoot','629138XEtLcc','\x22\x20not\x20found\x20after\x20ensureLockScope.','\x20(local\x20file\x20moved\x20to\x20trash)','/api/management/library/scripts/delete','startsWith','remoteId','toISOString','2458710dOpoPO','filter','BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.','split','<timestamp>','\x20\x20-\x20','1FSahNw','target','scriptsRootDir','Deleted\x20','appCode','validation','keys','trashedTo','2396735ANroYn','trashDir','340560lZauOn','projectRoot','8FTiYEp','Multiple\x20functions\x20match\x20\x22','6ISaGrF','lastSync','find','high-risk-write','includes','BFF\x20lock\x20file\x20not\x20found.','No\x20lock\x20entry\x20found\x20for\x20\x22','lockFilePath','674933jIzCzx'];a27_0x270e=function(){return _0x52ee07;};return a27_0x270e();}function resolveDeleteTarget(_0x22c705,_0x45e8e8){const _0xe93ccd=a27_0x15d1a6;if(_0x22c705[_0xe93ccd(0x147)]('/')){const _0x4d8a7e=_0x45e8e8[_0xe93ccd(0x145)](_0x149264=>_0x149264===_0x22c705);if(!_0x4d8a7e)throw CliErrors[_0xe93ccd(0x172)]('Function\x20not\x20found:\x20'+_0x22c705);return _0x4d8a7e;}const _0x4f5339=_0x45e8e8[_0xe93ccd(0x168)](_0x3552dc=>_0x3552dc[_0xe93ccd(0x16a)]('/')['at'](-0x1)===_0x22c705);if(_0x4f5339[_0xe93ccd(0x15c)]===0x0)throw CliErrors['validation'](_0xe93ccd(0x15a)+_0x22c705);if(_0x4f5339['length']>0x1)throw CliErrors['validation'](_0xe93ccd(0x17a)+_0x22c705+'\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a'+_0x4f5339[_0xe93ccd(0x14c)](_0x2c4d43=>_0xe93ccd(0x16c)+_0x2c4d43)['join']('\x0a'));return _0x4f5339[0x0];}async function moveToTrash(_0x1b82cd,_0x22a284,_0x3018b1){const _0x1c0347=a27_0x15d1a6,_0x52d663=new Date()['toISOString']()[_0x1c0347(0x15b)](/[:.]/g,'-'),_0x16ecae=relative(_0x1b82cd,_0x3018b1),_0x4733fe=join(_0x22a284,_0x52d663,_0x16ecae);return await mkdir(dirname(_0x4733fe),{'recursive':!![]}),await rename(_0x3018b1,_0x4733fe),_0x4733fe;}async function cleanupEmptyDirectories(_0xc06527,_0x109863){const _0x296e5b=a27_0x15d1a6;let _0x1eb4a4=resolve(_0xc06527);const _0x333efa=resolve(_0x109863);while(_0x1eb4a4[_0x296e5b(0x164)](''+_0x333efa+sep)||_0x1eb4a4===_0x333efa){if(_0x1eb4a4===_0x333efa)return;try{const _0x275744=await readdir(_0x1eb4a4);if(_0x275744[_0x296e5b(0x15c)]>0x0)return;await rmdir(_0x1eb4a4);}catch{return;}_0x1eb4a4=dirname(_0x1eb4a4);}}function a27_0x50eb(_0x2cfc37,_0x1073db){_0x2cfc37=_0x2cfc37-0x145;const _0x270e50=a27_0x270e();let _0x50ebbf=_0x270e50[_0x2cfc37];return _0x50ebbf;}const DELETE_SETTLE_RETRY_COUNT=0x14,DELETE_SETTLE_DELAY_MS=0x64;async function waitForDeleteSettlement(_0x1f30f0,_0x50acef,_0x2f57a1,_0x20290e){const _0x174871=a27_0x15d1a6;for(let _0x1fa882=0x0;_0x1fa882<DELETE_SETTLE_RETRY_COUNT;_0x1fa882+=0x1){const _0x1bfec6=await readBffLockFile(_0x1f30f0),_0xfaaf2e=!!_0x1bfec6?.[_0x174871(0x154)]?.[_0x50acef]?.[_0x174871(0x15e)]?.[_0x2f57a1],_0x342d5e=await fileExists(_0x20290e);if(!_0xfaaf2e&&!_0x342d5e)return;await sleep(DELETE_SETTLE_DELAY_MS);}throw new Error('Local\x20delete\x20not\x20settled\x20for\x20'+_0x2f57a1+'.');}
@@ -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
+ function a28_0x45f2(){const _0x340680=['createdTime','3338072ojxNko','read','8WPwKJF','151306XGayqm','(none)','verbose','Script\x20ID','Get\x20BFF\x20script\x20details\x20by\x20ID','14318180CGnJSw','3123281jPbjuv','1031148TLcgkA','updatedTime','scriptContent','num','Return\x20full\x20raw\x20script\x20object','number','5LkPHKv','detail','appCode','bff','4230438PhTsBh','4CZdDNP','7106319pnHgpd'];a28_0x45f2=function(){return _0x340680;};return a28_0x45f2();}const a28_0x59946b=a28_0x5ebf;(function(_0x4bf215,_0x3a835c){const _0x526a40=a28_0x5ebf,_0x173d35=_0x4bf215();while(!![]){try{const _0x44938b=-parseInt(_0x526a40(0xdd))/0x1*(-parseInt(_0x526a40(0xef))/0x2)+parseInt(_0x526a40(0xe4))/0x3+parseInt(_0x526a40(0xda))/0x4+parseInt(_0x526a40(0xea))/0x5*(-parseInt(_0x526a40(0xee))/0x6)+-parseInt(_0x526a40(0xe3))/0x7*(-parseInt(_0x526a40(0xdc))/0x8)+parseInt(_0x526a40(0xf0))/0x9+-parseInt(_0x526a40(0xe2))/0xa;if(_0x44938b===_0x3a835c)break;else _0x173d35['push'](_0x173d35['shift']());}catch(_0x337fd3){_0x173d35['push'](_0x173d35['shift']());}}}(a28_0x45f2,0x8d891));function a28_0x5ebf(_0x288361,_0x60e685){_0x288361=_0x288361-0xda;const _0x45f210=a28_0x45f2();let _0x5ebf75=_0x45f210[_0x288361];return _0x5ebf75;}import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':a28_0x59946b(0xed),'command':a28_0x59946b(0xeb),'description':a28_0x59946b(0xe1),'risk':a28_0x59946b(0xdb),'flags':[{'name':'id','type':a28_0x59946b(0xe9),'required':!![],'description':a28_0x59946b(0xe0)},{'name':a28_0x59946b(0xdf),'type':'boolean','description':a28_0x59946b(0xe8)}],async 'execute'(_0x1e4796){const _0x138b12=a28_0x59946b,_0x3dc7db=await getBffScriptInfo(_0x1e4796[_0x138b12(0xe7)]('id')),_0xca1a5=_0x1e4796['bool'](_0x138b12(0xdf));if(_0xca1a5)return{'ok':!![],'data':_0x3dc7db};return{'ok':!![],'data':{'id':_0x3dc7db['id'],'appCode':_0x3dc7db[_0x138b12(0xec)],'scriptType':_0x3dc7db['scriptType'],'description':_0x3dc7db['description']||_0x138b12(0xde),'createdTime':_0x3dc7db[_0x138b12(0xf1)]??'','updatedTime':_0x3dc7db[_0x138b12(0xe5)]??'','scriptContent':_0x3dc7db[_0x138b12(0xe6)]??''}};}};
@@ -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(_0xe72ea5,_0x5a9351){const _0x2df1d4=a29_0x229a,_0x213bb9=_0xe72ea5();while(!![]){try{const _0x533fa6=parseInt(_0x2df1d4(0x124))/0x1*(parseInt(_0x2df1d4(0x128))/0x2)+parseInt(_0x2df1d4(0x12a))/0x3+-parseInt(_0x2df1d4(0x126))/0x4+parseInt(_0x2df1d4(0x123))/0x5+-parseInt(_0x2df1d4(0x129))/0x6+parseInt(_0x2df1d4(0x127))/0x7*(parseInt(_0x2df1d4(0x125))/0x8)+-parseInt(_0x2df1d4(0x122))/0x9;if(_0x533fa6===_0x5a9351)break;else _0x213bb9['push'](_0x213bb9['shift']());}catch(_0x3914e2){_0x213bb9['push'](_0x213bb9['shift']());}}}(a29_0x4c07,0xe717f));function a29_0x229a(_0x403878,_0x2a553a){_0x403878=_0x403878-0x122;const _0x4c07e4=a29_0x4c07();let _0x229ad6=_0x4c07e4[_0x403878];return _0x229ad6;}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_0x4c07(){const _0x1f6aee=['7132520OhwnSZ','700809ndYpkv','411576iNjdEH','569948fjqlDI','140metXVK','2xopdgr','8219040fOByDp','947169UWgTmm','9117810HOaRct'];a29_0x4c07=function(){return _0x1f6aee;};return a29_0x4c07();}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_0x45d269=a30_0x31f4;(function(_0x56fc7e,_0x17eab2){const _0x224bc0=a30_0x31f4,_0x84de39=_0x56fc7e();while(!![]){try{const _0xe6a926=-parseInt(_0x224bc0(0xff))/0x1+parseInt(_0x224bc0(0xf8))/0x2+-parseInt(_0x224bc0(0x106))/0x3*(-parseInt(_0x224bc0(0xf9))/0x4)+-parseInt(_0x224bc0(0xfe))/0x5*(parseInt(_0x224bc0(0xfd))/0x6)+parseInt(_0x224bc0(0x10a))/0x7+parseInt(_0x224bc0(0x10d))/0x8*(parseInt(_0x224bc0(0x10e))/0x9)+parseInt(_0x224bc0(0xfb))/0xa;if(_0xe6a926===_0x17eab2)break;else _0x84de39['push'](_0x84de39['shift']());}catch(_0x1d2bd7){_0x84de39['push'](_0x84de39['shift']());}}}(a30_0x1de4,0xdaf66));import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a30_0x45d269(0x108),'command':'list','description':'List\x20BFF\x20scripts','risk':a30_0x45d269(0x101),'flags':[{'name':a30_0x45d269(0x10c),'type':a30_0x45d269(0x100),'description':a30_0x45d269(0x109),'default':'ENDPOINT','enum':['ENDPOINT','COMMON']},{'name':a30_0x45d269(0x104),'type':a30_0x45d269(0x100),'description':a30_0x45d269(0xf6)},{'name':a30_0x45d269(0x10b),'type':a30_0x45d269(0xfa),'description':a30_0x45d269(0x105)}],async 'execute'(_0x45217c){const _0x5abd9e=a30_0x45d269,_0x32474b=await listBffScripts(_0x45217c[_0x5abd9e(0x103)],_0x45217c['str']('type'),{'scriptName':_0x45217c[_0x5abd9e(0x107)](_0x5abd9e(0x104))||undefined}),_0x12a93e=_0x45217c[_0x5abd9e(0x110)](_0x5abd9e(0x10b));return{'ok':!![],'data':_0x12a93e?_0x32474b:_0x32474b['map'](_0x3771c6=>({'id':_0x3771c6['id'],'functionName':_0x3771c6['functionName']??'','description':_0x3771c6[_0x5abd9e(0xf5)]||_0x5abd9e(0xf7),'scriptType':_0x3771c6[_0x5abd9e(0x102)]})),'message':_0x32474b[_0x5abd9e(0xfc)]===0x0?_0x5abd9e(0x10f):undefined};}};function a30_0x31f4(_0x3ae7cb,_0x44549f){_0x3ae7cb=_0x3ae7cb-0xf5;const _0x1de408=a30_0x1de4();let _0x31f4c2=_0x1de408[_0x3ae7cb];return _0x31f4c2;}function a30_0x1de4(){const _0x4daaa2=['2768339HIOjql','verbose','type','5491768wpnElA','9dYmCsP','No\x20BFF\x20scripts\x20found.','bool','description','Filter\x20by\x20script\x20name','(unnamed)','1026180rCtBXy','73104xYMlOS','boolean','4199970jBXMHk','length','6UuhULn','8190195zyjprX','722894oPfDJi','string','read','scriptType','appCode','name','Return\x20full\x20script\x20objects','204PhBIMs','str','bff','Script\x20type\x20filter'];a30_0x1de4=function(){return _0x4daaa2;};return a30_0x1de4();}
@@ -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_0xa9ecd8=a31_0x11a2;(function(_0x3fe042,_0x1202f5){const _0x2495e2=a31_0x11a2,_0x252bbe=_0x3fe042();while(!![]){try{const _0x798277=parseInt(_0x2495e2(0x167))/0x1+-parseInt(_0x2495e2(0x17f))/0x2+parseInt(_0x2495e2(0x14c))/0x3*(parseInt(_0x2495e2(0x14a))/0x4)+parseInt(_0x2495e2(0x152))/0x5+parseInt(_0x2495e2(0x184))/0x6+parseInt(_0x2495e2(0x18a))/0x7+-parseInt(_0x2495e2(0x161))/0x8;if(_0x798277===_0x1202f5)break;else _0x252bbe['push'](_0x252bbe['shift']());}catch(_0x2939f4){_0x252bbe['push'](_0x252bbe['shift']());}}}(a31_0x4e46,0x37c8d));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{resolveApiFilePath}from'../../context.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a31_0x4e46(){const _0x4d977f=['yes','bff','HOOK','operationType','163326eIsRUk','Lock\x20scope\x20for\x20app\x20\x22','stderr','Pull\x20complete:\x20','functionName','type','toLowerCase','all','Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20','lockKey','push','version','pull','nonInteractive','alias','str','functions','No\x20remote\x20BFF\x20scripts\x20found.','length','Remote\x20script\x20missing\x20id.','would_pull','\x20pulled,\x20','apiDir','\x22\x20not\x20found\x20after\x20ensureLockScope.','553938LzFRLD','hookLocation','\x20failed','stdin','stringify','338376FkrPVY','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','scriptContent','message','filePath','parse','620228lBFdfY','\x20remote\x20BFF\x20script(s)\x20for\x20pull','boolean','write','question','COMMON','876868yWWzDM','unresolvable\x20target\x20path','6BSAFkW','lockFilePath','Force\x20overwrite\x20local\x20unsynced\x20changes','ENDPOINT','\x20skipped,\x20','&type=','912255EgLlBF','utf8','hash','datasetCode','GET','toISOString','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','appCode','trim','cancelled','functionNode','includes','conflict','Would\x20inspect\x20','Remote\x20script\x20missing\x20content.','3389992ujznla','force'];a31_0x4e46=function(){return _0x4d977f;};return a31_0x4e46();}import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffPull={'service':a31_0xa9ecd8(0x164),'command':a31_0xa9ecd8(0x173),'description':a31_0xa9ecd8(0x158),'risk':a31_0xa9ecd8(0x147),'flags':[{'name':a31_0xa9ecd8(0x16c),'type':'string','description':'Pull\x20only\x20this\x20script\x20type','enum':[a31_0xa9ecd8(0x149),a31_0xa9ecd8(0x14f),a31_0xa9ecd8(0x165)]},{'name':a31_0xa9ecd8(0x162),'type':a31_0xa9ecd8(0x146),'description':a31_0xa9ecd8(0x14e)}],async 'dryRun'(_0x27f174){const _0xa4dc6d=a31_0xa9ecd8,_0xd74af3=loadBffProjectConfig(_0x27f174[_0xa4dc6d(0x159)]),_0x59f450=await readBffLockFile(_0xd74af3[_0xa4dc6d(0x14d)]),{appLock:_0x30116a}=ensureLockScope(_0x59f450??createEmptyBffLock(),_0x27f174[_0xa4dc6d(0x159)],_0xd74af3['scriptsRoot'],_0xa4dc6d(0x173)),_0x132a92=normalizeBffType(_0x27f174[_0xa4dc6d(0x176)](_0xa4dc6d(0x16c)))??undefined,_0x47b29b=buildDatasetCodeToAliasMap(_0x27f174[_0xa4dc6d(0x17d)],_0x27f174[_0xa4dc6d(0x159)]),[_0x1962f9,_0x563396]=await Promise[_0xa4dc6d(0x16e)]([listBffScripts(_0x27f174[_0xa4dc6d(0x159)],_0x132a92),getBffScriptStatistics(_0x27f174[_0xa4dc6d(0x159)])]),_0x433b14=createHookLocationMap(_0x563396),_0x1bfe0a=[];for(const _0x152546 of _0x1962f9){const _0x3ce30f=resolveRemoteScriptTarget(_0xd74af3,_0x152546,_0x433b14,_0x30116a[_0xa4dc6d(0x177)],_0x47b29b);if(!_0x3ce30f){_0x1bfe0a[_0xa4dc6d(0x171)]({'scriptType':_0x152546['scriptType'],'functionName':_0x152546['functionName']??'','status':'skipped','reason':'unresolvable\x20target\x20path'});continue;}const _0x4760c5=_0x30116a['functions'][_0x3ce30f[_0xa4dc6d(0x170)]],_0x5f3c1d=_0x152546[_0xa4dc6d(0x186)]!=null?computeContentHash(_0x152546['scriptContent']):undefined,_0x28623d=await hasUnsyncedLocalChanges(_0x3ce30f[_0xa4dc6d(0x188)],_0x4760c5,_0x5f3c1d);_0x1bfe0a[_0xa4dc6d(0x171)]({'lockKey':_0x3ce30f[_0xa4dc6d(0x170)],'filePath':_0x3ce30f[_0xa4dc6d(0x188)],'remoteId':_0x152546['id']??null,'status':_0x28623d?_0xa4dc6d(0x15e):_0xa4dc6d(0x17b)});}return{'method':_0xa4dc6d(0x156),'url':'/api/management/library/scripts/list?appCode='+_0x27f174[_0xa4dc6d(0x159)]+(_0x132a92?_0xa4dc6d(0x151)+_0x132a92:''),'body':{'appCode':_0x27f174['appCode'],'filterType':_0x132a92??null,'files':_0x1bfe0a},'description':_0xa4dc6d(0x15f)+_0x1bfe0a[_0xa4dc6d(0x179)]+_0xa4dc6d(0x18b)};},async 'execute'(_0x26ec8e){const _0x1ad3e0=a31_0xa9ecd8,_0x571677=loadBffProjectConfig(_0x26ec8e[_0x1ad3e0(0x159)]),_0x392238=await readBffLockFile(_0x571677[_0x1ad3e0(0x14d)]),{lockData:_0x10c6a1,appLock:_0x4c4104}=ensureLockScope(_0x392238??createEmptyBffLock(),_0x26ec8e['appCode'],_0x571677['scriptsRoot'],'pull'),_0x1c215c=normalizeBffType(_0x26ec8e[_0x1ad3e0(0x176)](_0x1ad3e0(0x16c)))??undefined;if(_0x26ec8e[_0x1ad3e0(0x176)]('type')&&!_0x1c215c)throw CliErrors['validation'](_0x1ad3e0(0x185));const [_0x382c1e,_0x63e0cb]=await Promise[_0x1ad3e0(0x16e)]([listBffScripts(_0x26ec8e[_0x1ad3e0(0x159)],_0x1c215c),getBffScriptStatistics(_0x26ec8e['appCode'])]);if(_0x382c1e[_0x1ad3e0(0x179)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x1ad3e0(0x178)};const _0x4cac41=_0x26ec8e['bool']('force');if(_0x4cac41&&!_0x26ec8e[_0x1ad3e0(0x174)]){const _0x2d3fc3=await confirmForce();if(!_0x2d3fc3)throw CliErrors[_0x1ad3e0(0x15b)]('Force\x20pull\x20cancelled.');}if(_0x4cac41&&_0x26ec8e[_0x1ad3e0(0x174)]){}const _0x1bfe5f=buildDatasetCodeToAliasMap(_0x26ec8e[_0x1ad3e0(0x17d)],_0x26ec8e[_0x1ad3e0(0x159)]),_0x451fab=createHookLocationMap(_0x63e0cb),_0x49d083=JSON[_0x1ad3e0(0x189)](JSON[_0x1ad3e0(0x183)](_0x10c6a1)),_0x2c834e=_0x26ec8e[_0x1ad3e0(0x159)],_0x177d54=_0x49d083['apps'][_0x2c834e];if(!_0x177d54)throw new Error(_0x1ad3e0(0x168)+_0x2c834e+_0x1ad3e0(0x17e));const _0x15821e=[],_0x4a2c45=[],_0x7639ca=[];for(const _0x4be80e of _0x382c1e){const _0x24859d=resolveRemoteScriptTarget(_0x571677,_0x4be80e,_0x451fab,_0x4c4104[_0x1ad3e0(0x177)],_0x1bfe5f);if(!_0x24859d){_0x4a2c45[_0x1ad3e0(0x171)]({'lockKey':_0x4be80e['scriptType']+'/'+_0x4be80e[_0x1ad3e0(0x16b)],'reason':_0x1ad3e0(0x14b)});continue;}const _0x1f9b2c=_0x4c4104[_0x1ad3e0(0x177)][_0x24859d[_0x1ad3e0(0x170)]];try{if(!_0x4be80e['id'])throw new Error(_0x1ad3e0(0x17a));if(_0x4be80e['scriptContent']==null)throw new Error(_0x1ad3e0(0x160));const _0x2694e1=_0x4be80e[_0x1ad3e0(0x186)],_0x334982=computeContentHash(_0x2694e1);if(!_0x4cac41){const _0x15999e=await hasUnsyncedLocalChanges(_0x24859d['filePath'],_0x1f9b2c,_0x334982);if(_0x15999e){_0x4a2c45['push']({'lockKey':_0x24859d[_0x1ad3e0(0x170)],'reason':'local\x20unsynced\x20changes'});continue;}}await ensureParentDirectory(_0x24859d[_0x1ad3e0(0x188)]),await writeFile(_0x24859d[_0x1ad3e0(0x188)],_0x2694e1,_0x1ad3e0(0x153));const _0x546dc1={'hash':_0x334982,'remoteId':_0x4be80e['id'],'version':_0x4be80e[_0x1ad3e0(0x172)]};_0x24859d[_0x1ad3e0(0x16c)]===_0x1ad3e0(0x165)&&_0x24859d[_0x1ad3e0(0x180)]&&(_0x546dc1['alias']=_0x24859d[_0x1ad3e0(0x180)][_0x1ad3e0(0x175)],_0x546dc1[_0x1ad3e0(0x155)]=_0x24859d['hookLocation'][_0x1ad3e0(0x155)],_0x546dc1[_0x1ad3e0(0x166)]=_0x24859d[_0x1ad3e0(0x180)]['operationType'],_0x546dc1[_0x1ad3e0(0x15c)]=_0x24859d['hookLocation']['functionNode']),_0x177d54[_0x1ad3e0(0x177)][_0x24859d[_0x1ad3e0(0x170)]]=_0x546dc1,_0x15821e[_0x1ad3e0(0x171)]({'lockKey':_0x24859d[_0x1ad3e0(0x170)],'remoteId':_0x4be80e['id']});}catch(_0x397542){_0x7639ca[_0x1ad3e0(0x171)]({'lockKey':_0x24859d['lockKey'],'error':_0x397542 instanceof Error?_0x397542[_0x1ad3e0(0x187)]:String(_0x397542)});}}return _0x177d54['lastSync']=new Date()[_0x1ad3e0(0x157)](),await writeBffLockFile(_0x571677[_0x1ad3e0(0x14d)],_0x49d083),{'ok':_0x7639ca[_0x1ad3e0(0x179)]===0x0,'data':{'pulled':_0x15821e,'skipped':_0x4a2c45,'failed':_0x7639ca},'message':_0x1ad3e0(0x16a)+_0x15821e['length']+_0x1ad3e0(0x17c)+_0x4a2c45['length']+_0x1ad3e0(0x150)+_0x7639ca['length']+_0x1ad3e0(0x181)};}};function a31_0x11a2(_0x5cf177,_0x2af5ab){_0x5cf177=_0x5cf177-0x146;const _0x4e466f=a31_0x4e46();let _0x11a2fe=_0x4e466f[_0x5cf177];return _0x11a2fe;}async function hasUnsyncedLocalChanges(_0xcbded7,_0x20937c,_0x434deb){const _0x24d1dd=a31_0xa9ecd8;if(!await fileExists(_0xcbded7))return![];const _0xe44d2b=await computeFileHash(_0xcbded7);if(!_0x20937c)return _0x434deb?_0xe44d2b!==_0x434deb:!![];return _0xe44d2b!==_0x20937c[_0x24d1dd(0x154)];}function buildDatasetCodeToAliasMap(_0x4cdd08,_0x10a4f1){const _0x35586c=a31_0xa9ecd8,_0x31e3c3=loadAliasMap(_0x4cdd08,undefined,resolveApiFilePath(_0x4cdd08,_0x10a4f1));return new Map(_0x31e3c3['map'](_0xc385f8=>[_0xc385f8['datasetCode'],_0xc385f8[_0x35586c(0x175)]]));}async function confirmForce(){const _0x336f07=a31_0xa9ecd8,_0x4cacbd=createInterface({'input':process[_0x336f07(0x182)],'output':process[_0x336f07(0x169)]}),_0x2d355d=await new Promise(_0x3749c7=>{const _0x223490=_0x336f07;_0x4cacbd[_0x223490(0x148)](_0x223490(0x16f),_0x3749c7);});return _0x4cacbd['close'](),['y',_0x336f07(0x163)][_0x336f07(0x15d)](_0x2d355d[_0x336f07(0x15a)]()[_0x336f07(0x16d)]());}